:root{--bg:#faf8f5;--fg:#1f1d1a;--card:#fff;--line:#e4dfd8;--accent:#1f1d1a;--err:#b3261e}
@media(prefers-color-scheme:dark){:root{--bg:#141311;--fg:#f1ede7;--card:#1e1c19;--line:#34302b;--accent:#f1ede7}}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.4 system-ui,sans-serif}
main{max-width:420px;margin:0 auto;padding:12vh 16px 32px;display:grid;gap:16px}
h1{font-size:26px;margin:0}
input,button{font:inherit;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--fg)}
form{display:grid;gap:10px}
button{cursor:pointer}form button{background:var(--accent);color:var(--bg);border:0}
nav{display:grid;gap:10px}nav a{display:block;padding:18px;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--fg);text-decoration:none;font-weight:600}
.err{color:var(--err);margin:0;min-height:1.2em}.link{border:0;background:none;color:inherit;opacity:.6;justify-self:start;padding:0}
.gbtn{display:block;text-align:center;padding:14px;border-radius:12px;background:var(--accent);color:var(--bg);text-decoration:none;font-weight:600}
