:root { --fg: #e8e2d6; --accent: #b3261e; }
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: #101416; color: var(--fg);
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif; }
main { min-height: 100vh; display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 16px; background: radial-gradient(circle, #1b2124, #050607); }
h1 { margin: 0 0 24px; font-size: clamp(32px, 9vw, 60px); letter-spacing: .12em; color: var(--accent); }
form { width: 100%; max-width: 340px; display: flex; flex-direction: column; gap: 14px; }
label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
input { font-size: 16px; padding: 10px 12px; background: #0b0d0e; color: var(--fg);
  border: 1px solid #3a3f42; border-radius: 4px; }
input:focus { outline: 2px solid var(--accent); border-color: transparent; }
button { margin-top: 6px; font-size: 16px; padding: 12px; cursor: pointer; letter-spacing: .08em;
  text-transform: uppercase; color: var(--fg); background: rgba(179,38,30,.3); border: 1px solid var(--accent); }
button:hover { background: rgba(179,38,30,.55); }
.err { margin: 0; padding: 8px 10px; background: rgba(179,38,30,.25); border-left: 3px solid var(--accent); font-size: 14px; }
.note { margin-top: 24px; font-size: 12px; opacity: .55; }
