:root{--void:#eceef1;--card:#ffffff;--card-line:#e5e7eb;--panel:#ebedef;--panel-2:#e0e3e6;--bone:#0f1113;--bone-2:#4a5057;--bone-3:#5c636b;--pen:#16365c;--pen-wash:rgba(22,54,92,.08);--link:#1a5fb4;--chalk:#02d1f1;--chalk-wash:rgba(2,209,241,.30);--chalk-ground:rgba(2,209,241,.12);--chalk-ink:#0a6f83;--bar:#006e46;--bar-deep:#00614f;--bar-ink:#005c3a;--bar-wash:rgba(0, 110, 70, .10);--bar-wash-2:rgba(0, 110, 70, .16);--sage:#16365c;--sev-1:#c1272d;--sev-2:#96550a;--sev-3:#6b6820;--sev-4:#5f666c;--hair:rgba(15,17,19,.16);--hair-firm:rgba(15,17,19,.32);--masthead-h:68px;--frame:1080px;--margin:88px;--column:720px;--gutter:clamp(1.25rem, 4vw, 2.75rem);--display:'Montserrat', 'Montserrat Fallback', 'Segoe UI', system-ui, sans-serif;--sans:'Inter', 'Inter Fallback', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;--mono:'IBM Plex Mono', 'IBM Plex Mono Fallback', ui-monospace, 'SFMono-Regular', Menlo, monospace}[hidden]{display:none !important}:root{--bone-hint:#858c93;--pen-deep:#0f2540;--ok:#1f7a4d;--warn:#a85f00;--bad:#c1272d;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s5:1.5rem;--s6:2rem;--s7:3rem;--primary:var(--pen);--text-muted:var(--bone-3);--success:var(--ok);--error:var(--bad)}*, *::before, *::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;background:var(--void);color:var(--bone);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img, svg{display:block;max-width:100%}a{color:inherit}:focus-visible{outline:2px solid var(--pen);outline-offset:3px}::selection{background:var(--chalk);color:var(--bone)}#app-loader{position:fixed;inset:0;z-index:900;display:grid;place-content:center;justify-items:center;gap:1.2rem;background:var(--void)}#app-loader.hidden, #app-loader[hidden]{display:none}.spinner-ring{width:34px;height:34px;border-radius:50%;border:2px solid var(--hair);border-top-color:var(--pen);animation:spin .8s linear infinite}.loader-text{font-family:var(--mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-3)}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner-ring{animation-duration:2.4s}}.auth-container{min-height:100vh;display:grid;align-content:start;justify-items:center;padding:clamp(1.5rem, 4vh, 3rem) clamp(1.25rem, 4vw, 2.5rem)}@media (min-height:56rem){.auth-container{align-content:center}}.auth-box{width:100%;max-width:400px;min-width:0;position:relative;background:var(--panel);border:1px solid var(--hair);border-radius:8px;padding:var(--s6);box-shadow:0 1px 2px rgba(15, 17, 19, .04), 0 8px 24px rgba(15, 17, 19, .05)}@media (max-width:30rem){.auth-box{border:0;border-radius:0;box-shadow:none;padding:var(--s5) var(--s4)}}.auth-box--wide{max-width:560px}.auth-box::before{content:attr(data-note);display:none;position:absolute;top:.35rem;right:calc(100% + 2.5rem);font-family:var(--mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-3);white-space:nowrap}.auth-box--good .auth-header h1{color:var(--ok)}.auth-box--warn .auth-header h1{color:var(--warn)}.auth-box--good::before{color:var(--ok)}.auth-box--warn::before{color:var(--warn)}.auth-header{margin-bottom:var(--s5);text-align:center}.auth-header .outcome, .auth-header .alert{text-align:left}.auth-back-link{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-size:.82rem;letter-spacing:0;text-decoration:none;color:var(--bone-3);margin-bottom:var(--s5);transition:color .16s ease}.auth-back-link:hover{color:var(--pen)}.auth-back-link svg{width:13px;height:13px}.auth-header .logo-icon{margin-bottom:var(--s4)}.auth-header .logo-icon, .auth-header .logo-icon picture{display:block;width:auto;height:24px;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}.auth-header .logo-icon img{height:24px;width:auto;object-fit:contain;margin-inline:auto}.auth-header h1{font-family:var(--display);font-weight:500;font-size:clamp(1.3rem, 2.6vw, 1.5rem);line-height:1.15;letter-spacing:-.012em;margin:0 0 .65rem}.auth-header p{margin:0;font-size:.94rem;color:var(--bone-2)}.btn-link{color:var(--pen);text-decoration:none;border:0;border-bottom:1px solid var(--hair-firm);padding:0 0 1px;background:none;font:inherit;cursor:pointer}.btn-link:hover{border-color:var(--pen)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.skip-link{position:absolute;left:-9999px;top:0;background:var(--pen);color:#fff;padding:.75rem 1.25rem;z-index:300;text-decoration:none}.skip-link:focus{left:0}.btn-link--go{color:var(--pen);font-weight:600;border-bottom-color:var(--pen)}.btn-link--go:hover{border-bottom-width:2px;padding-bottom:0}.auth-language-selector{margin-top:var(--s6);padding-top:var(--s4);border-top:1px solid var(--hair);font-family:var(--sans);font-size:.82rem;letter-spacing:0;text-transform:none;color:var(--bone-3)}.auth-language-selector a{text-decoration:none;color:var(--bone-3)}.auth-language-selector a:hover{color:var(--bone)}.auth-language-selector a.active{color:var(--bone);font-weight:700}.auth-language-selector .separator{margin:0 .5rem;opacity:.5}.auth-language-selector{margin-bottom:.85rem}.magic-intro{font-size:.94rem;line-height:1.6;color:var(--bone-2);margin:0 0 1.75rem;text-align:center}.auth-form{display:none;min-width:0}.auth-form.active{display:block}.form-group{margin-bottom:1.35rem}.form-group>label:not(.checkbox-label){display:block;margin-bottom:var(--s2);font-family:var(--sans);font-size:.84rem;font-weight:600;letter-spacing:0;text-transform:none;color:var(--bone-2)}.input-wrapper{position:relative}.input-wrapper .input-icon{position:absolute;left:.95rem;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--bone-3);pointer-events:none}.input-wrapper input{width:100%;font:inherit;font-size:.97rem;color:var(--bone);background:var(--panel);border:1px solid var(--hair-firm);border-radius:2px;padding:.92rem 1rem .92rem 2.75rem;transition:border-color .16s ease, box-shadow .16s ease}.input-wrapper input::placeholder{color:var(--bone-hint)}.input-wrapper input:focus{outline:none;border-color:var(--pen);box-shadow:0 0 0 3px rgba(22,54,92,.10)}.input-wrapper input:has(~ .toggle-password){padding-right:3rem}.toggle-password{position:absolute;right:.55rem;top:50%;transform:translateY(-50%);background:none;border:0;cursor:pointer;padding:.45rem;color:var(--bone-3);line-height:0}.toggle-password:hover{color:var(--pen)}.toggle-password i{display:block;font-style:normal}.toggle-password svg{width:17px;height:17px}.toggle-password .fa-eye .ico-off, .toggle-password i:not(.fa-eye-slash) .ico-off{display:none}.toggle-password i.fa-eye-slash .ico-off{display:block}.toggle-password i.fa-eye-slash .ico-on{display:none}.password-strength{margin-top:.7rem}.password-strength-fill{height:100%;width:0;border-radius:2px;background:var(--bone-3);transition:width .2s ease, background .2s ease}.password-strength-fill.weak{background:var(--bad)}.password-strength-fill.fair{background:#c47000}.password-strength-fill.good{background:#7d7a2e}.password-strength-fill.strong{background:var(--ok)}.strength-text{display:block;margin-top:.45rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-3)}.password-requirements{margin-top:.85rem}.requirements-title{margin:0 0 .5rem;font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-3)}.requirements-list{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.requirement{display:flex;align-items:center;gap:.5rem;font-size:.84rem;color:var(--bone-2)}.requirement::before{content:"";flex:none;width:5px;height:5px;border-radius:50%;background:var(--bone-3)}.form-group--consent{display:grid;gap:.85rem;margin:1.75rem 0 1.5rem}.checkbox-label{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:start;font-family:var(--sans);font-size:.875rem;letter-spacing:0;text-transform:none;line-height:1.5;color:var(--bone-2);cursor:pointer}.checkbox-label input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:.1rem 0 0;flex:none;background:#ffffff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;transition:background .14s ease, border-color .14s ease, box-shadow .14s ease}.checkbox-label input[type="checkbox"]:hover{border-color:var(--bone-3)}.checkbox-label input[type="checkbox"]:checked{background-color:var(--bar);border-color:var(--bar);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.4l3 3 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:12px 12px}.checkbox-label input[type="checkbox"]:focus-visible{outline:none;border-color:var(--bar);box-shadow:0 0 0 3px rgba(0, 110, 70, .16)}.checkbox-label a{color:var(--pen);text-decoration:underline;text-underline-offset:2px}.form-actions{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;justify-content:space-between;align-items:baseline;margin:-.35rem 0 1.5rem}.link-text{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--bone-3);background:none;border:0;padding:0;cursor:pointer}.link-text:hover{color:var(--pen)}.btn-primary, .btn-google{position:relative;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;font-family:var(--sans);font-size:.9rem;font-weight:600;letter-spacing:0;text-transform:none;padding:.95rem 1.5rem;border-radius:8px;cursor:pointer;transition:background .16s ease, color .16s ease, border-color .16s ease}.btn-primary{background:var(--bar);border:1px solid var(--bar);color:#fff}.btn-primary:hover:not(:disabled){background:var(--bar-deep);border-color:var(--bar-deep)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-google{background:var(--panel);border:1px solid var(--hair-firm);color:var(--bone)}.btn-google:hover:not(:disabled){border-color:var(--pen)}.btn-google svg{flex:none}.btn-primary .spinner, .btn-google .spinner{display:none;width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:spin .7s linear infinite}.btn-google .spinner{border-color:var(--hair);border-top-color:var(--pen)}.btn-primary.loading .spinner, .btn-google.loading .spinner{display:block}.btn-primary.loading .button-text, .btn-google.loading .button-text{display:none}.alert{display:none;padding:.9rem 1.1rem;margin-bottom:1.35rem;background:var(--panel);border-left:2px solid var(--hair-firm);font-size:.92rem;line-height:1.6;color:var(--bone)}.alert.show, .alert.active{display:block}.alert-error{border-left-color:var(--bad)}.alert-success{border-left-color:var(--ok)}.form-group--consent .checkbox-label + .checkbox-label{font-size:.86rem;color:var(--bone-3);margin-top:var(--s3)}.form-group--consent .checkbox-label + .checkbox-label input{width:16px;height:16px;background-size:11px 11px}.wait-sent{margin:0 0 1.9rem;font-size:.97rem;line-height:1.6;color:var(--bone-2)}.wait-sent strong{color:var(--bone);overflow-wrap:anywhere}.wait-label{margin:0 0 .7rem;font-family:var(--mono);font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--bone-3)}.code-boxes{display:flex;gap:var(--s2);margin:0 0 var(--s5)}.code-boxes .code-box:nth-child(4){margin-left:var(--s4)}.code-box{flex:1 1 0;min-width:0;width:100%;padding:var(--s3) 0;border:1px solid var(--hair-firm);background:var(--panel);font-family:var(--mono);font-size:1.25rem;font-weight:500;text-align:center;color:var(--bone);border-radius:2px}.code-box:focus{outline:2px solid var(--pen);outline-offset:1px;border-color:var(--pen)}.code-boxes{position:relative}.code-boxes[data-busy="1"] .code-box{opacity:.3}.code-boxes[data-busy="1"]::after{content:"";position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:2px solid var(--hair);border-top-color:var(--pen);animation:spin .8s linear infinite;pointer-events:none}@media (prefers-reduced-motion:reduce){.code-boxes[data-busy="1"]::after{animation-duration:2.4s}}@keyframes code-refuse{0%, 100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}.code-boxes[data-wrong="1"]{animation:code-refuse .18s ease-in-out 2}.code-boxes[data-wrong="1"] .code-box{border-color:var(--bad)}@media (prefers-reduced-motion:reduce){.code-boxes[data-wrong="1"]{animation:none}}.wait-aside{margin:0 0 1.6rem;font-size:.88rem;line-height:1.7;color:var(--bone-3)}.wait-actions{margin:0;font-size:.88rem;color:var(--bone-3)}.wait-actions .btn-link{color:var(--pen)}.wait-actions .btn-link[aria-disabled="true"]{color:var(--bone-3);pointer-events:none;text-decoration:none}.recaptcha-container{display:flex;justify-content:center;margin-bottom:1.25rem;max-width:100%;overflow:hidden}.recaptcha-container:empty{margin-bottom:0}@media (max-width:400px){.recaptcha-container{justify-content:flex-start;height:66px}.recaptcha-container>div{transform:scale(.86);transform-origin:left top}}.form-footer{margin-top:1.5rem;text-align:center;font-size:.9rem;color:var(--bone-2)}.form-footer p{margin:0}.hidden{display:none !important}.success-icon, .error-icon{width:54px;height:54px;display:grid;place-items:center;border:1px solid var(--hair-firm);border-radius:50%;margin:0 auto}.success-icon{border-color:var(--ok);color:var(--ok)}.error-icon{border-color:var(--bad);color:var(--bad)}.success-icon::before{content:'✓';font-size:1.5rem;line-height:1}.error-icon::before{content:'!';font-size:1.5rem;line-height:1;font-weight:600}.outcome{border:1px solid var(--hair-firm);border-left-width:3px;padding:1.4rem 1.5rem;margin:0 0 1.75rem}.outcome--good{border-left-color:var(--ok)}.outcome--neutral{border-left-color:var(--pen)}.outcome h2{font-family:var(--mono);font-size:.66rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-3);margin:0 0 .7rem}.outcome p{margin:0;font-size:.95rem;line-height:1.65;color:var(--bone-2)}.countdown{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-3)}.countdown span{color:var(--pen)}.auth-container .btn-primary{display:flex;text-decoration:none}#resendEmailBtn{background:transparent;color:var(--pen);border:1px solid var(--hair-firm);box-shadow:none}#resendEmailBtn:hover:not(:disabled){background:var(--pen);color:#fff;border-color:var(--pen)}#resendEmailBtn:disabled{opacity:1;color:var(--bone-2);border-color:var(--hair);cursor:default}#logoutBtn{background:none;border:0;cursor:pointer;padding:.4rem 0;font-size:.9rem;color:var(--bone-2);text-decoration:underline;text-underline-offset:3px}#logoutBtn:hover{color:var(--pen)}.handoff-code{letter-spacing:.2em}.recaptcha-loading{color:#666;font-size:14px}html[data-door="link"] #loginForm{display:none !important}html[data-door="password"] #magicLinkForm{display:none !important}html[data-door="password"] #loginForm{display:block}html[data-door="reset"] #magicLinkForm{display:none !important}html[data-door="reset"] #resetPasswordForm{display:block}html[data-door="confirm"] .auth-form:not(#magicConfirm){display:none !important}.notfound__code{font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--pen);margin-bottom:1.25rem}.notfound__lines{list-style:none;margin:0 0 2rem;padding:0}.notfound__lines li{padding:1rem 0;border-top:1px solid var(--hair);font-size:.95rem;line-height:1.6;color:var(--bone-2)}.notfound__lines li:last-child{border-bottom:1px solid var(--hair)}.notfound__lines b{display:block;color:var(--bone);font-weight:600;margin-bottom:.15rem}.notfound__lines .lang{font-family:var(--mono);font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--bone-3);margin-right:.6rem}.notfound__actions{display:flex;flex-wrap:wrap;gap:.6rem}.notfound__actions a{flex:1 1 auto;justify-content:center}@keyframes slideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
