:root{--bg:#f2f4f8;--card:#fff;--ink:#13203b;--muted:#59657a;--line:#d8deea;--accent:#c98f24;--accent-ink:#1b1405;--navy:#13274f;--bad:#b3261e}
@media (prefers-color-scheme:dark){:root{--bg:#0d1423;--card:#152035;--ink:#e6ebf5;--muted:#95a3ba;--line:#293757;--accent:#e0ae4a;--navy:#0a1020;--bad:#ff8c84;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--ink);font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;padding:16px}
main{width:100%;max-width:360px}
form{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:28px 24px;display:flex;flex-direction:column;gap:12px}
.logo{width:42px;height:42px;border-radius:12px;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:700;font-size:20px}
h1{margin:4px 0 0;font-size:24px;letter-spacing:-.02em}
.sub{margin:0 0 6px;color:var(--muted)}
.sr{position:absolute;left:-9999px}
input{font:inherit;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink)}
input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
button{font:inherit;font-weight:600;padding:11px 12px;border-radius:10px;border:0;background:var(--accent);color:var(--accent-ink);cursor:pointer}
button[disabled]{opacity:.6;cursor:wait}
.err{margin:0;min-height:1.3em;color:var(--bad);font-size:14px}
