:root { color-scheme:dark; font-family:"Segoe UI",Arial,sans-serif; }
* { box-sizing:border-box; }
body { min-height:100vh; margin:0; color:#f1e4c9; background:radial-gradient(circle at top,rgba(194,151,96,.09),transparent 38%),linear-gradient(180deg,#081117,#10171c); }
.auth-shell { width:min(520px,calc(100% - 28px)); margin:0 auto; padding:36px 0; }
.auth-brand { display:flex; align-items:center; gap:9px; margin-bottom:28px; color:#f1e4c9; font-size:13px; font-weight:800; letter-spacing:.13em; text-decoration:none; }
.auth-brand span { display:grid; place-items:center; width:34px; height:34px; border:1px solid #d3b587; font:700 11px monospace; }
.auth-card { padding:clamp(22px,6vw,38px); color:#241d14; border:1px solid rgba(107,72,37,.16); border-radius:14px; background:linear-gradient(180deg,#f5e6cb,#efddbf); }
.eyebrow { margin:0; color:#9c251c; font:700 9px monospace; letter-spacing:.13em; }
h1 { margin:8px 0 12px; font-size:clamp(38px,10vw,62px); line-height:.9; letter-spacing:-.06em; }
p { line-height:1.45; }
form p { display:grid; gap:5px; margin:13px 0; }
label { color:#6d4e2e; font:700 9px monospace; letter-spacing:.08em; text-transform:uppercase; }
input:not([type="checkbox"]) { width:100%; min-height:45px; padding:9px 11px; color:#241d14; border:1px solid rgba(107,72,37,.3); border-radius:9px; background:#fff5e3; font:14px monospace; }
input[type="checkbox"] { appearance:none; display:inline-grid; place-content:center; width:18px; height:18px; margin:2px 0; border:1px solid #8b704d; border-radius:2px; background:#fff5e3; cursor:pointer; }
input[type="checkbox"]::before { content:""; width:8px; height:4px; border:solid #fff5e3; border-width:0 0 2px 2px; transform:rotate(-45deg) scale(0); transform-origin:center; }
input[type="checkbox"]:checked { border-color:#8f1511; background:#8f1511; }
input[type="checkbox"]:checked::before { transform:rotate(-45deg) scale(1); }
.helptext,ul.errorlist { color:#7e211b; font-size:11px; }
ul.errorlist { padding-left:18px; }
button { width:100%; min-height:46px; padding:10px 14px; color:#fff1d4; border:0; border-radius:9px; background:#8f1511; font:800 10px monospace; letter-spacing:.08em; cursor:pointer; }
.google-button { color:#241d14; border:1px solid rgba(107,72,37,.26); background:#fff8ea; }
.auth-divider { display:flex; align-items:center; gap:10px; margin:17px 0; color:#876c4c; font:700 9px monospace; }
.auth-divider::before,.auth-divider::after { content:""; flex:1; height:1px; background:rgba(107,72,37,.2); }
.auth-links { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-top:18px; }
.auth-links a { color:#7e211b; font-size:12px; }
.storage-note { color:#c9b999; font-size:11px; text-align:center; }
.auth-messages p { padding:9px; border-radius:8px; background:#f9efd9; }
.auth-info { margin-top:18px; padding:12px 14px; border:1px solid rgba(107,72,37,.24); border-radius:9px; background:rgba(255,248,234,.55); }
.auth-info strong { color:#7e211b; font:800 9px monospace; letter-spacing:.09em; }
.auth-info p { margin:6px 0 0; font-size:12px; }
.auth-primary-link { display:block; width:100%; padding:13px 14px; color:#fff1d4!important; border-radius:9px; background:#8f1511; font:800 10px monospace; letter-spacing:.08em; text-align:center; text-decoration:none; }
