:root { color-scheme: dark; --bg:#09100f; --panel:#111b18; --line:#2a3833; --text:#f3f7f4; --muted:#92a29c; --accent:#c8f566; --danger:#ff8585; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; font:15px/1.5 Inter, ui-sans-serif, system-ui, -apple-system, sans-serif; color:var(--text); background:radial-gradient(circle at 20% 10%, #1d3327 0, transparent 34%), linear-gradient(145deg, #07100d, #0e1715 60%, #080d0c); }
.auth-shell { min-height:100vh; display:grid; place-items:center; padding:28px 16px; }
.auth-card { width:min(440px,100%); padding:34px; border:1px solid var(--line); border-radius:22px; background:rgba(17,27,24,.96); box-shadow:0 30px 90px rgba(0,0,0,.42); }
.auth-brand { display:flex; align-items:center; gap:12px; margin-bottom:42px; }
.auth-brand > span { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; background:var(--accent); color:#10160e; font-size:21px; font-weight:900; }
.auth-brand div { display:grid; }
.auth-brand strong { font-size:17px; }
.auth-brand small, .eyebrow { color:var(--muted); font-size:10px; letter-spacing:.17em; }
.eyebrow { margin:0 0 7px; color:var(--accent); }
h1 { margin:0; font-size:29px; letter-spacing:-.04em; }
.intro { margin:10px 0 24px; color:var(--muted); }
form { display:grid; gap:16px; }
label { display:grid; gap:7px; color:#bdc9c4; font-size:13px; }
input { width:100%; border:1px solid var(--line); border-radius:10px; background:#0a1210; color:var(--text); padding:13px 14px; outline:none; font:inherit; }
input:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(200,245,102,.12); }
button { border:0; border-radius:10px; padding:13px 16px; margin-top:4px; background:var(--accent); color:#10160e; font:700 14px inherit; cursor:pointer; }
button:disabled { opacity:.55; cursor:wait; }
button.secondary { margin-top:-7px; background:transparent; border:1px solid var(--line); color:var(--muted); }
.status { min-height:23px; margin:17px 0 0; color:var(--danger); }
footer { display:flex; align-items:center; gap:8px; margin-top:28px; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:11px; }
footer span { width:7px; height:7px; border-radius:50%; background:var(--accent); box-shadow:0 0 12px var(--accent); }
.hidden { display:none !important; }
@media (max-width:480px) { .auth-card { padding:25px 20px; border-radius:16px; } .auth-brand { margin-bottom:30px; } }
