body[data-account-flow] { margin: 0; min-height: 100vh; color: #17233c; background: linear-gradient(140deg,#eff7ff,#fffaf0); font: 16px/1.6 system-ui,sans-serif; }
.auth-card { box-sizing: border-box; display: block; overflow-wrap: anywhere; width: min(760px,calc(100% - 32px)); margin: 32px auto; padding: clamp(20px,4vw,40px); background: #fff; border: 1px solid #d9e5f2; border-radius: 20px; box-shadow: 0 12px 40px #17233c0a; }
.auth-card .language-toggle { display: flex; gap: 8px; margin: 0 0 12px; }
.auth-card .language-option { padding: 8px; font-size: 14px; min-height: 44px; border: 1px solid #ccd8e5; background: #f8faff; color: #155bad; }
.auth-card .language-option.active { background: #1267d6; color: #fff; }
.flow-brand-language { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.flow-brand-language .portal-brand { gap:8px; }
.flow-brand-language .language-toggle { gap:4px; margin:0; }
.flow-instructions { margin:12px 0; }
.flow-instructions summary { min-height:44px; cursor:pointer; font-weight:600; padding:8px 0; }
.auth-card > p { margin: 12px 0; }
.auth-card > a:not(.portal-brand) { display: inline-block; margin: 6px 0; }
.auth-card h1 { font-size: clamp(24px,4vw,32px); margin: 20px 0 8px; }
.auth-card h2 { font-size: 20px; margin: 24px 0 12px; }
.auth-card form, .auth-card [data-step] { display: grid; gap: 16px; }
.auth-card label { display: grid; gap: 6px; font-weight: 600; }
.auth-card input, .auth-card select { box-sizing: border-box; width: 100%; min-width: 0; min-height: 48px; padding: 10px 12px; border: 1px solid #ccd8e5; border-radius: 10px; font: inherit; background: #fbfdff; }
.auth-card button { min-height: 48px; padding: 12px 18px; font: inherit; font-weight: 700; border: 0; border-radius: 10px; background: #1267d6; color: #fff; cursor: pointer; }
.auth-card button:disabled { opacity: .55; cursor: wait; }
.auth-card a { color: #155bad; overflow-wrap: anywhere; }
.auth-card [role=status] { padding: 8px 0; min-height: 24px; overflow-wrap: anywhere; }
.auth-card [data-kind=error] { color: #a42124; }
.auth-card [data-kind=success] { color: #176541; }
.candidate-notice { padding: 8px; font-size: 13px; line-height: 1.4; border: 1px solid #e9cf85; border-radius: 10px; background: #fff8e5; }
.auth-card [hidden] { display: none !important; }
.auth-card input:focus-visible, .auth-card select:focus-visible, .auth-card button:focus-visible { outline: 3px solid #82b7f1; outline-offset: 2px; }
.auth-card pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.auth-card input[type=checkbox] { width: 22px; min-height: 22px; height: 22px; margin: 0; flex: 0 0 22px; accent-color: #1267d6; }
.auth-card label:has(>input[type=checkbox]) { display: flex; align-items: center; min-height: 48px; gap: 10px; padding: 8px 0; }
#support-queue, #support-materials { display: grid; gap: 12px; margin-top: 20px; }
.verifier-qr { display: block; width: min(240px,100%); height: auto; margin: 12px auto; padding: 8px; background: #fff; border: 1px solid #d9e5f2; border-radius: 12px; }
@media(max-width:430px) { .auth-card { width: calc(100% - 24px); margin: 12px auto; padding: 20px; } }
