html[data-session]:not([data-session="ready"]) body>:not(.auth-surface):not(.recovery-warning):not(noscript){display:none!important}
.login-page,html[data-session]:not([data-session="ready"]) body{display:flow-root!important;margin:0;min-height:100dvh;background:#edf3f9;color:#182c40;font-family:Inter,system-ui,sans-serif}
:root .auth-surface{box-sizing:border-box;width:min(440px,calc(100% - 32px));margin:8vh auto;padding:32px;background:#fff;border:1px solid #d3dfeb;border-radius:24px;box-shadow:0 20px 60px #173c6510}
html[data-session="ready"] .auth-surface{display:none}
:root .auth-surface .auth-brand{font-size:16px;letter-spacing:.12em;font-weight:650;margin-bottom:24px}:root .auth-surface h1{font-size:27px;line-height:1.2;margin:0 0 18px}:root .auth-surface p{line-height:1.6;font-size:14px}:root .auth-surface form{display:grid;gap:10px}:root .auth-surface label{font-size:14px;font-weight:600}:root .auth-surface input{box-sizing:border-box;font:inherit;width:100%;padding:13px;border:1px solid #9aafc4;border-radius:10px;background:#fff;color:#182c40}:root .auth-surface button,:root .auth-surface a{display:inline-block;box-sizing:border-box;font:inherit;padding:12px 16px;border:1px solid #2458cf;background:#2458cf;color:#fff;border-radius:10px;cursor:pointer;text-decoration:none}:root .auth-surface button:disabled{opacity:.6;cursor:wait}:root .auth-surface :focus-visible{outline:3px solid #80a9ff;outline-offset:3px}:root .auth-surface [hidden]{display:none!important}
@media(prefers-color-scheme:dark){.login-page,html[data-session]:not([data-session="ready"]) body{background:#0c1a2a;color:#eaf1fa}:root .auth-surface{background:#14283c;border-color:#455d74}:root .auth-surface input{background:#0e2033;color:#eaf1fa;border-color:#668099}}

.recovery-warning{padding:16px;margin:0;text-align:center;font:600 15px system-ui;background:#fff0ae;color:#3c2e00}

html[data-session]:not([data-session="ready"]) body::before{display:none}

/* Login shares the accepted workspace palette/scenery, without private navigation. */
.login-page{isolation:isolate;background:var(--ui-base);color:var(--ui-ink)}
.login-page::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--ui-scene) center/cover no-repeat}
:root .login-page .auth-surface{margin:clamp(24px,8vh,96px) auto;padding:36px;background:rgba(var(--ui-panel),.96);border-color:var(--ui-edge);box-shadow:0 20px 60px -18px var(--ui-shadow)}
:root .login-page .auth-brand{margin:14px 0 28px;color:var(--ui-muted);font-size:13px}
:root .login-page #login-status{min-height:44px;color:var(--ui-muted)}
:root .login-page .auth-surface input{min-height:48px;background:var(--ui-solid);color:var(--ui-ink);border-color:var(--ui-line)}
:root .login-page .auth-surface button{min-height:48px;background:var(--ui-action);color:var(--ui-on);border-color:var(--ui-action);margin-top:12px;font-weight:600}
:root .login-page .auth-surface form p{margin:14px 0 0;font-size:12px;color:var(--ui-muted)}
:root .login-page .auth-surface :focus-visible{outline-color:var(--ui-action)}
:root.reduced .login-page::before{display:none}
:root.reduced .login-page .auth-surface{background:var(--ui-solid)}
@media(max-width:440px){:root .login-page .auth-surface{padding:24px}.login-page{font-size:16px}}
@media(prefers-reduced-transparency:reduce){.login-page::before{display:none}:root .login-page .auth-surface{background:var(--ui-solid)}}
