:root{--bg:#f4f4f2;--card:#fcfcfb;--ink:#0b0b0b;--ink2:#52514e;--line:#e2e1dc;--accent:#2a78d6;--bad:#d03b3b;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#111110;--card:#1a1a19;--ink:#fff;--ink2:#c3c2b7;--line:#2e2e2b;--accent:#3987e5;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;min-height:100dvh;display:grid;place-items:center;background:var(--bg);color:var(--ink);
font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(16px,env(safe-area-inset-bottom))}
.card{width:100%;max-width:380px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:28px 24px}
.brand{display:flex;gap:12px;align-items:center;margin-bottom:22px}
.brand h1{font-size:19px;margin:0}.brand p{margin:0;color:var(--ink2);font-size:13px}
label{display:block;font-size:13px;color:var(--ink2);margin:12px 0 6px}
input{width:100%;padding:11px 12px;border-radius:9px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:16px}
input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
button{margin-top:20px;width:100%;padding:12px;border:0;border-radius:9px;background:var(--accent);color:#fff;font-size:16px;font-weight:600;cursor:pointer}
button:disabled{opacity:.6;cursor:wait}
#err{min-height:20px;margin-top:12px;color:var(--bad);font-size:14px}
.note{margin:18px 0 0;font-size:12px;color:var(--ink2);text-align:center}
