:root{--bg:#eef1f0;--paper:#fbfcfc;--ink:#13201d;--muted:#5b6b67;--line:#d5dcda;--accent:#0b6e5c;--accent-ink:#fff;--erro:#c2410c;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#0e1514;--paper:#151e1c;--ink:#e4ecea;--muted:#93a39f;--line:#2a3633;--accent:#3fb89c;--accent-ink:#06211b;--erro:#f3824f;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:grid;place-items:center;background:var(--bg);color:var(--ink);font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:14px;padding:16px}
.caixa{width:100%;max-width:380px;background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:28px 24px}
.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
h1{font-family:"IBM Plex Sans Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:30px;margin:6px 0 4px}
p{color:var(--muted);margin:0 0 18px}
form{display:grid;gap:12px}
label{display:grid;gap:4px;font-size:13px;color:var(--muted)}
input{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:9px 10px}
input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
button{font:inherit;font-weight:600;background:var(--accent);color:var(--accent-ink);border:0;border-radius:6px;padding:10px;cursor:pointer}
button:disabled{opacity:.6}
.erro{color:var(--erro);margin:0;min-height:1em;font-size:13px}
