:root { color-scheme: light dark; --bg:#f4f5f7; --card:#fff; --fg:#1b1f24; --muted:#6b7280; --line:#d5d9df; --accent:#2563eb; --err:#b42318; }
@media (prefers-color-scheme: dark) { :root { --bg:#0f1216; --card:#181c22; --fg:#e6e8eb; --muted:#9aa3af; --line:#2a313a; --accent:#5b8cff; --err:#ff7b72; } }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--bg); color:var(--fg); font:16px/1.4 system-ui, sans-serif; }
form { width:min(360px, 92vw); background:var(--card); border:1px solid var(--line); border-radius:12px; padding:24px; }
h1 { font-size:18px; margin:0 0 16px; }
label { display:block; font-size:13px; color:var(--muted); margin:12px 0 4px; }
input { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:8px; background:transparent; color:inherit; font:inherit; }
button { width:100%; margin-top:18px; padding:11px; border:0; border-radius:8px; background:var(--accent); color:#fff; font:inherit; cursor:pointer; }
.err { margin:12px 0 0; color:var(--err); font-size:14px; }
