:root { --ink: #292524; --soft: #78716c; --line: #d6d3d1; --paper: #fafaf9; --card: #fff; --accent: #7c2d12; --error: #b91c1c; }
@media (prefers-color-scheme: dark) { :root { --ink: #f5f5f4; --soft: #a8a29e; --line: #44403c; --paper: #1c1917; --card: #292524; --accent: #fdba74; --error: #fca5a5; } }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100dvh; display: grid; place-items: center; padding: 16px; background: var(--paper); color: var(--ink); font: 16px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif; }
.card { width: 100%; max-width: 420px; padding: 24px; background: var(--card); border: 1px solid var(--line); border-radius: 16px; }
h1 { margin: 0 0 4px; font-size: 26px; line-height: 1.2; }
p { margin: 0 0 16px; color: var(--soft); }
label { display: block; margin-bottom: 14px; font-weight: 600; }
input, select { display: block; width: 100%; min-height: 48px; margin-top: 6px; padding: 10px 12px; color: inherit; background: transparent; border: 1px solid var(--line); border-radius: 10px; font: inherit; }
button { display: block; width: 100%; min-height: 48px; margin-top: 8px; padding: 10px 14px; color: var(--card); background: var(--accent); border: 0; border-radius: 10px; font: inherit; font-weight: 600; cursor: pointer; }
button:disabled { opacity: .6; }
button.quiet { color: var(--accent); background: transparent; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
#notice { color: var(--ink); }
#notice.error { color: var(--error); }
[hidden] { display: none !important; }
