/* Signer surface (M6 E1, SI-1..SI-3). Surface-local layout only; every
   token comes from style.css. Mobile first: the audience is recipients on
   phones, so the portal's 44px floor applies here too (M4-8). */
.signer-header { display: flex; align-items: center; padding: 0.9rem 1rem; border-bottom: 1px solid var(--line); background: var(--surface); }
.signer-brand { font-weight: 700; font-size: 1.1rem; color: var(--ink); }
.signer-main { max-width: 520px; margin: 1.5rem auto; padding: 0 1rem; }
.signer-main .card { padding: 1.25rem; }
.signer-main h1 { font-size: 1.4rem; line-height: 1.3; margin: 0 0 0.75rem; }
.signer-main p { line-height: 1.5; }
.signer-main input[type="email"], .signer-main input[type="password"] { width: 100%; padding: 0.65rem 0.7rem; min-height: 44px; border: 1px solid var(--line); border-radius: var(--radius); font-size: 1rem; font-family: inherit; color: var(--ink); background: var(--surface); }
.signer-main button { width: 100%; min-height: 44px; }
.signer-main button.link { width: auto; min-height: 44px; padding: 0 0.35rem; white-space: nowrap; }
.signer-signed-in { display: flex; align-items: center; justify-content: space-between; gap: 0.6rem; margin: 0 0 1rem; }
.signer-emails { list-style: none; margin: 0.75rem 0; padding: 0; }
.signer-emails li { display: flex; align-items: center; justify-content: space-between; gap: 0.6rem; padding: 0.5rem 0; border-bottom: 1px solid var(--line); min-height: 44px; }
.signer-email-address { overflow-wrap: anywhere; min-width: 0; }
.signer-add-email { margin-top: 1rem; }
