.login-body{margin:0;min-height:100vh;background:var(--bg0);color:var(--med-text);font-family:var(--font-primary);overflow-x:hidden}html.dark .login-body{background:var(--med-viewer)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:48px 20px}.login-pane{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center}.login-card{width:100%;background:var(--page);border:1px solid var(--page-edge);border-radius:3px;box-shadow:0 10px 30px #3c36261f;padding:28px 30px 26px;color:var(--page-ink)}html.dark .login-card{box-shadow:0 16px 48px #00000073}.login-card ::selection{background:#b4a5784d}.login-brand{display:flex;flex-direction:column;align-items:center;text-align:center;margin:0 0 20px;padding-bottom:18px;border-bottom:1px solid var(--page-edge)}.login-mark{width:40px;height:40px;color:var(--page-ink-2);margin-bottom:12px}.login-mark svg{width:100%;height:100%}.login-name{margin:0;font-family:var(--font-serif);font-size:1.8462rem;font-weight:600;letter-spacing:.005em;color:var(--page-ink)}.login-name__ai{color:var(--page-ink-2);font-weight:500}.login-posture{margin:10px 0 0;max-width:300px;font-family:var(--font-mono);font-size:.7692rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;line-height:1.8;color:var(--page-ink-muted)}.login-card h3{margin:0 0 4px;font-family:var(--font-serif);font-size:1.0769rem;font-weight:600;font-variant-caps:all-small-caps;letter-spacing:.14em;color:var(--page-ink-2)}.login-card .hint{margin:0 0 18px;font-size:var(--text-sm);line-height:1.5;color:var(--page-ink-muted)}.login-card form{display:flex;flex-direction:column}.login-card label{font-family:var(--font-mono);font-size:.7692rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--page-ink-muted);margin-bottom:2px}.login-card label+input{margin-bottom:18px}.login-card input[type=text],.login-card input[type=password]{width:100%;box-sizing:border-box;padding:7px 2px 8px;font-size:1.1538rem;font-family:var(--font-ui);color:var(--page-ink);background:transparent;border:0;border-bottom:1px solid var(--page-edge);border-radius:0;outline:none;transition:border-color .15s ease,background .15s ease;caret-color:var(--page-ink)}.login-card input::placeholder{color:var(--page-ink-muted)}.login-card input:focus{border-bottom-color:var(--page-ink-2);background:var(--page-wash);box-shadow:none}.login-card input:focus-visible{outline:2px solid var(--page-ink-2);outline-offset:0}.login-card input:-webkit-autofill{-webkit-text-fill-color:var(--page-ink);-webkit-box-shadow:0 0 0 60px var(--page) inset;transition:background-color 9999s ease-out}.capslock-hint{display:flex;align-items:center;gap:7px;margin:-8px 0 12px;font-family:var(--font-mono);font-size:.7692rem;letter-spacing:.04em;color:var(--warn)}.capslock-hint svg{width:13px;height:13px;flex:none}.login-card button[type=submit]{margin-top:8px;width:100%;height:42px;font-size:var(--text-md);background:var(--page-ink);border-color:var(--page-ink);color:var(--page);letter-spacing:.02em}.login-card button[type=submit]:hover{background:var(--page-ink);border-color:var(--page-ink);filter:brightness(1.08)}.login-card button[type=submit]:focus-visible{outline:2px solid var(--page-ink-2);outline-offset:2px}.login-card button[type=submit].is-authenticating{pointer-events:none;background:color-mix(in srgb,var(--page-ink) 82%,var(--page));border-color:transparent;color:var(--page);filter:none}.login-card button[type=submit].is-authenticating .login-submit__label{display:inline-flex;align-items:center;gap:9px}.login-card button[type=submit].is-authenticating .login-submit__label:before{content:"";width:12px;height:12px;border-radius:var(--radius-pill);border:2px solid color-mix(in srgb,var(--page) 30%,transparent);border-top-color:var(--page);animation:spin .7s linear infinite}.login-card .alert{font-size:var(--text-sm);line-height:1.5;padding:9px 12px;border-radius:3px;margin-bottom:16px;border:1px solid var(--page-edge);background:transparent}.login-card .alert.error{color:var(--stat);border-color:color-mix(in srgb,var(--stat) 45%,transparent);background:transparent}.login-card .alert.notice{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent);background:transparent}.login-card .alert code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--page-ink)}.login-foot{margin-top:20px;display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:.7692rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}@media(max-width:480px){.login-shell{padding:36px 16px;align-items:start}.login-shell{padding-top:12vh}.login-card{padding:24px 20px 22px}}@media(prefers-reduced-motion:reduce){.login-card button[type=submit].is-authenticating .login-submit__label:before{animation:none}}.login-shell{position:relative;isolation:isolate;overflow:hidden}.login-room{position:absolute;inset:0;z-index:-1;pointer-events:none}.login-room__iris{position:absolute;top:50%;left:50%;width:min(1240px,175vmax);height:min(1240px,175vmax);transform:translate(-50%,-50%);color:var(--med-text-muted);opacity:.05;animation:login-iris-turn 240s linear infinite}html.dark .login-room__iris{opacity:.07}.login-room__lamp{position:absolute;top:50%;left:50%;width:720px;height:720px;transform:translate(-50%,-54%);background:radial-gradient(closest-side,rgba(214,197,152,.09),rgba(214,197,152,.03) 55%,transparent 72%)}@keyframes login-iris-turn{to{transform:translate(-50%,-50%) rotate(360deg)}}.login-card{position:relative;box-shadow:inset 0 1px #ffffff59,0 1px 2px #1e1a101a,0 14px 44px #28221429}html.dark .login-card{box-shadow:inset 0 1px #fffcf00f,0 2px 6px #0006,0 24px 70px #0000008c}@media(prefers-reduced-motion:no-preference){.login-card{animation:login-settle .5s cubic-bezier(.22,.7,.3,1) both}.login-brand,.login-card h3,.login-card .hint,.login-card form,.login-card .alert{animation:login-ink .45s cubic-bezier(.22,.7,.3,1) both}.login-brand{animation-delay:.08s}.login-card h3{animation-delay:.16s}.login-card .hint{animation-delay:.2s}.login-card .alert{animation-delay:.22s}.login-card form{animation-delay:.24s}}@keyframes login-settle{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes login-ink{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.login-card .btn--primary{transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}.login-card .btn--primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px #28221438;filter:brightness(1.04)}.login-card .btn--primary:active{transform:translateY(0);box-shadow:0 2px 6px #2822142e;filter:brightness(.99)}.login-body{--lg-card: linear-gradient(178deg, #151b23 0%, #10161d 60%, #0e141a 100%);--lg-edge: rgba(126, 184, 205, .16);--lg-ink: #e9eff3;--lg-ink-2: #c2cfd8;--lg-muted: #8b9aa5;--lg-accent: #6fd3e8;--lg-accent-soft: rgba(111, 211, 232, .14);background:#0a0e13}html.dark .login-body{background:#090d11}.login-card{background:var(--lg-card);border-color:var(--lg-edge);border-radius:10px;color:var(--lg-ink);box-shadow:inset 0 1px #bee1f012,0 2px 6px #0006,0 26px 80px #0000008c}.login-card ::selection{background:var(--lg-accent-soft)}.login-room__iris{color:#9fd2e2;opacity:.06}html.dark .login-room__iris{opacity:.075}.login-room__lamp{background:radial-gradient(closest-side,rgba(111,211,232,.075),rgba(111,211,232,.025) 55%,transparent 72%)}.login-brand{border-bottom-color:#7eb8cd1f}.login-mark{color:var(--lg-accent);opacity:.85}.login-name{font-size:2rem;letter-spacing:0;color:var(--lg-ink)}.login-name__ai{font-family:var(--font-mono);font-size:.58em;font-weight:600;letter-spacing:.1em;color:var(--lg-accent);vertical-align:.16em;margin-left:3px}.login-posture{color:var(--lg-muted)}.login-card h3{color:var(--lg-ink-2)}.login-card .hint{color:var(--lg-muted)}.login-live{display:inline-block;width:6px;height:6px;border-radius:999px;margin-right:7px;vertical-align:1px;background:var(--lg-accent);box-shadow:0 0 6px #6fd3e8b3}@media(prefers-reduced-motion:no-preference){.login-live{animation:login-breathe 2.6s ease-in-out infinite}}@keyframes login-breathe{0%,to{opacity:1;box-shadow:0 0 6px #6fd3e8b3}50%{opacity:.35;box-shadow:0 0 2px #6fd3e840}}.login-card label{color:var(--lg-muted)}.login-card input[type=text],.login-card input[type=password]{color:var(--lg-ink);border-bottom-color:#8b9aa559;caret-color:var(--lg-accent)}.login-card input::placeholder{color:var(--lg-muted)}.login-card input:focus{border-bottom-color:var(--lg-accent);background:#6fd3e80d}.login-card input:focus-visible{outline-color:var(--lg-accent)}.login-card input:-webkit-autofill{-webkit-text-fill-color:var(--lg-ink);-webkit-box-shadow:0 0 0 60px #131920 inset}.login-card button[type=submit].btn--primary{background:linear-gradient(180deg,#d8f1f8,#b3e2ee);border:1px solid rgba(111,211,232,.5);color:#0c1318;font-weight:650}.login-card button[type=submit].btn--primary:hover{box-shadow:0 6px 20px #6fd3e838;filter:none}.login-card button[type=submit].btn--primary:active{box-shadow:0 2px 8px #6fd3e82e}.login-card #login-2fa-code{letter-spacing:.35em;font-variant-numeric:tabular-nums;text-transform:uppercase}.login-2fa-trust{display:flex;align-items:center;gap:8px;margin:14px 0 4px;font-size:.82rem;color:var(--ink-dim, rgba(214, 225, 232, .72));cursor:pointer;user-select:none}.login-2fa-trust input[type=checkbox]{width:15px;height:15px;margin:0;accent-color:var(--accent, #6fd3e8)}.login-2fa-back{margin:14px 0 0;font-size:.8rem;text-align:center}.login-2fa-back a{color:var(--ink-dim, rgba(214, 225, 232, .6));text-decoration:none;border-bottom:1px solid rgba(214,225,232,.25)}.login-2fa-back a:hover{color:var(--accent, #6fd3e8);border-bottom-color:currentColor}
