*{box-sizing:border-box}
body{margin:0;min-height:100vh;font-family:Inter,"Segoe UI",Arial,sans-serif;background:#eef4f8;color:#17243a}
.pa-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}
.pa-brand{padding:8vw;background:linear-gradient(135deg,#08243b,#0f4c5c);color:#fff}
.pa-brand>strong{font-size:24px}.pa-brand>span{display:block;color:#99f6e4;margin-top:4px}
.pa-brand h1{max-width:580px;margin-top:22vh;font-size:42px}.pa-brand p{max-width:520px;color:#cbd5e1;line-height:1.6}
.pa-card{width:min(480px,calc(100% - 30px));margin:auto;padding:30px;border-radius:18px;background:#fff;box-shadow:0 20px 55px rgba(15,23,42,.12)}
.pa-kicker{font-size:10px;font-weight:900;letter-spacing:.12em;color:#0d9488}.pa-card h1,.pa-card h2{margin:7px 0;color:#0b1f35}.pa-card>p,.pa-card>small{color:#64748b}
.pa-card form{display:grid;gap:14px;margin-top:20px}.pa-card label{display:grid;gap:6px;font-size:12px;font-weight:800}.pa-card input{min-height:44px;padding:0 12px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;color:#17243a}.pa-card button{min-height:44px;border:0;border-radius:9px;background:#0d9488;color:#fff;font-weight:900}.pa-check{display:flex!important;align-items:center}.pa-check input{min-height:auto}
.pa-alert{padding:10px 12px;border-radius:8px;margin:12px 0}.pa-alert.error{background:#fee2e2;color:#991b1b}.pa-alert.success{background:#dcfce7;color:#166534}
.pa-activate{min-height:100vh;display:grid;place-items:center;padding:22px}.pa-identity{margin:15px 0;padding:12px;border-radius:10px;background:#f1f5f9}.pa-identity strong,.pa-identity span{display:block}.pa-identity span{margin-top:4px;color:#64748b;font-size:11px}
.pa-theme-toggle{position:fixed;top:18px;right:18px;z-index:20;width:42px;height:42px!important;display:grid;place-items:center;padding:0;border:1px solid #cbd5e1!important;border-radius:50%!important;background:#fff!important;color:#17243a!important;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.12)}
.pa-theme-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#64748b;font-size:11px;font-weight:800}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#cbd5e1}
.pa-card .device-login-button,.pa-card .install-app-button{display:flex;align-items:center;justify-content:center;width:100%;margin-top:10px;border:1px solid #cbd5e1;background:#fff;color:#0b1f35}
[data-pwa-install][hidden],[data-passkey-login][hidden]{display:none!important}
.passkey-status{color:#64748b;font-size:12px;line-height:1.45;text-align:center}.passkey-status:not(:empty){margin-bottom:10px;padding:10px 12px;border-radius:9px;background:#eff6ff;color:#1e40af}.passkey-status.success{background:#dcfce7;color:#166534}.passkey-status.error{background:#fee2e2;color:#991b1b}
.pwa-install-dialog{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px}.pwa-install-dialog[hidden]{display:none}.pwa-install-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.68)}.pwa-install-dialog section{position:relative;width:min(100%,420px);padding:32px;border-radius:22px;background:#fff;color:#17243a;text-align:center}.pwa-install-dialog .pwa-install-close{position:absolute;right:12px;top:10px;width:36px;height:36px;min-height:36px;background:transparent;color:#64748b;font-size:24px}.pwa-install-icon{width:62px;height:62px;margin:auto;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#0b2a66,#2563eb);color:#fff;font-weight:900}.pwa-install-dialog .btn{padding:0 20px}

html[data-theme="dark"]{color-scheme:dark}html[data-theme="dark"] body{background:#07111f;color:#e2e8f0}html[data-theme="dark"] .pa-card{background:#0d1d31;border:1px solid #29415e;box-shadow:0 20px 55px rgba(0,0,0,.35)}html[data-theme="dark"] .pa-card h1,html[data-theme="dark"] .pa-card h2{color:#f8fafc}html[data-theme="dark"] .pa-card>p,html[data-theme="dark"] .pa-card>small{color:#b9c7d9}html[data-theme="dark"] .pa-card label{color:#e2e8f0}html[data-theme="dark"] .pa-card input{background:#071426;color:#f8fafc;border-color:#38536f}html[data-theme="dark"] .pa-card input::placeholder{color:#94a3b8}html[data-theme="dark"] .pa-identity{background:#10233d;border:1px solid #29415e}html[data-theme="dark"] .pa-identity span{color:#b9c7d9}html[data-theme="dark"] .pa-theme-toggle{background:#10233d!important;color:#f8fafc!important;border-color:#38536f!important}
html[data-theme="dark"] .auth-divider:before,html[data-theme="dark"] .auth-divider:after{background:#29415e}html[data-theme="dark"] .pa-card .device-login-button,html[data-theme="dark"] .pa-card .install-app-button{background:#10233d;color:#f8fafc;border-color:#38536f}html[data-theme="dark"] .passkey-status:not(:empty){background:#102b4d;color:#bfdbfe}html[data-theme="dark"] .passkey-status.success{background:#123d2c;color:#d1fae5}html[data-theme="dark"] .passkey-status.error{background:#451a1a;color:#fee2e2}html[data-theme="dark"] .pwa-install-dialog section{background:#0d1d31;color:#d7e1ee;border:1px solid #29415e}

@media(max-width:800px){.pa-shell{grid-template-columns:1fr}.pa-brand{display:none}}
