:root { color-scheme: light; --bg:#f9f9f7; --card:#fcfcfb; --ink:#0b0b0b; --ink2:#52514e; --line:#e1e0d9; --accent:#2a78d6; --err:#c42b2b; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { color-scheme: dark; --bg:#0d0d0d; --card:#1a1a19; --ink:#f0efec; --ink2:#c3c2b7; --line:#2c2c2a; --accent:#3987e5; --err:#ff6b6b; } }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; display:grid; place-items:center; padding:16px; background:var(--bg); color:var(--ink); font:16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif; }
form { width:100%; max-width:360px; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:28px 24px; }
h1 { margin:0 0 4px; font-size:20px; font-weight:600; }
p { margin:0 0 20px; color:var(--ink2); font-size:14px; }
label { display:block; margin:0 0 6px; font-size:14px; color:var(--ink2); }
input { width:100%; margin:0 0 16px; padding:10px 12px; font:inherit; color:var(--ink); background:transparent; border:1px solid var(--line); border-radius:8px; }
input:focus-visible, button:focus-visible { outline:2px solid var(--accent); outline-offset:1px; }
button { width:100%; padding:11px; font:inherit; font-weight:600; color:#fff; background:var(--accent); border:0; border-radius:8px; cursor:pointer; }
.err { margin:0 0 16px; padding:10px 12px; font-size:14px; color:var(--err); border:1px solid var(--err); border-radius:8px; }
