:root{color-scheme:light dark;--bg:#f5f4f1;--card:#fff;--ink:#171717;--muted:#6f6c66;--line:#ddd9d2;--accent:#8f5d28;--bad:#b42318}
*{box-sizing:border-box}
body{min-height:100vh;margin:0;display:grid;place-items:center;padding:24px;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif}
.login-card{width:min(100%,420px);padding:34px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:0 18px 60px rgba(0,0,0,.08)}
.brand{color:var(--accent);font-size:13px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
h1{margin:8px 0 6px;font-size:29px;line-height:1.15}
p,.note{color:var(--muted)}
form{display:grid;gap:10px;margin-top:24px}
label{font-weight:650}
input,button{min-height:48px;border-radius:10px;font:inherit}
input{width:100%;border:1px solid var(--line);padding:0 14px;background:var(--card);color:var(--ink)}
input:focus{outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent);border-color:var(--accent)}
button{border:0;padding:0 18px;background:var(--ink);color:var(--card);font-weight:750;cursor:pointer}
button:disabled{cursor:wait;opacity:.65}
.message{min-height:24px;color:var(--bad);font-size:13px}
.note{margin-top:18px;font-size:12px;text-align:center}
@media(prefers-color-scheme:dark){:root{--bg:#111;--card:#1a1a1a;--ink:#f4f2ed;--muted:#aaa59d;--line:#37342f;--accent:#e0aa71}}
