:root{--bg:#f6f7f9;--fg:#1b1f24;--card:#fff;--accent:#0b5d3b;--err:#b00020;--bd:#d8dce1}
@media (prefers-color-scheme:dark){:root{--bg:#14171a;--fg:#e8eaed;--card:#1e2226;--accent:#4cc38a;--err:#ff6b6b;--bd:#343a40}}
*{box-sizing:border-box}body{margin:0;font:16px/1.5 system-ui,sans-serif;background:var(--bg);color:var(--fg);display:grid;place-items:center;min-height:100vh;padding:16px}
main{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:28px;width:100%;max-width:420px}
h1{margin:0 0 8px;font-size:1.4rem}label{display:block;margin:14px 0 4px;font-size:.9rem}
input{width:100%;padding:10px;border:1px solid var(--bd);border-radius:8px;background:var(--bg);color:var(--fg);font:inherit}
button{margin-top:18px;padding:10px 16px;border:0;border-radius:8px;background:var(--accent);color:#fff;font:inherit;cursor:pointer}
.err{color:var(--err);min-height:1.4em;margin-top:10px}.muted{opacity:.7;font-size:.9rem}a{color:var(--accent)}
