.approval-pin-dialog {
  width: min(100% - 24px, 480px);
  max-height: calc(100dvh - var(--safe-top, 0px) - 32px);
  overflow-y: auto;
  margin: auto;
  padding: 22px 18px;
  border: 1px solid #34394f;
  border-radius: 24px;
  color: var(--text-primary, #eef2ff);
  background: var(--background, #0a0b1a);
  box-shadow: 0 16px 64px #0008;
  overscroll-behavior: contain;
}
.approval-pin-dialog::backdrop { background: #030411b8; backdrop-filter: blur(8px); }
.approval-pin-form { display: grid; gap: 12px; }
.approval-pin-form h1 { margin: 0 0 6px; font-size: 1.2rem; }
.approval-pin-form .approval-summary { margin: 0; padding: 14px; }
.approval-summary .detail-row { align-items: flex-start; }
.approval-summary .detail-row strong { max-width: 68%; overflow-wrap: anywhere; white-space: normal; text-align: right; }
.approval-pin-form .field { margin: 0; }
.approval-pin-form input { font-size: 16px; letter-spacing: .2em; touch-action: manipulation; }
.approval-pin-form button { width: 100%; min-height: 46px; touch-action: manipulation; }
.approval-pin-form .form-error:empty { display: none; }
.approval-reject { color: #fb8994; }
@media (prefers-reduced-transparency: reduce) { .approval-pin-dialog::backdrop { backdrop-filter: none; background: #030411ed; } }
