:root { color-scheme:dark; --bg:#0b0f0d; --surface:#151c18; --line:#2d3933; --text:#f2f5f3; --muted:#9baba2; --accent:#84efb7; --danger:#ff8b82; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 75% 0,rgba(69,211,140,.14),transparent 30rem),var(--bg); color:var(--text); font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif; }
.auth-shell { display:grid; min-height:100vh; place-items:center; padding:24px; }
.auth-card { width:min(460px,100%); padding:34px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(145deg,#1a231e,var(--surface)); box-shadow:0 28px 80px rgba(0,0,0,.28); }
.eyebrow { margin:0 0 10px; color:var(--accent); font-size:.72rem; font-weight:850; letter-spacing:.15em; }
h1 { margin:0; font-size:2.5rem; letter-spacing:-.05em; }
.subtitle { margin:12px 0 26px; color:var(--muted); line-height:1.55; }
form { display:grid; gap:16px; }
label span { display:block; margin-bottom:7px; color:#bdc9c2; font-size:.78rem; }
input { width:100%; padding:13px 14px; border:1px solid var(--line); border-radius:11px; outline:0; background:#0d1310; color:var(--text); font:inherit; }
input:focus { border-color:var(--accent); box-shadow:0 0 0 3px rgba(132,239,183,.1); }
button { margin-top:5px; padding:13px 18px; border:0; border-radius:999px; background:var(--accent); color:#082116; font-weight:850; cursor:pointer; }
.message { margin-bottom:18px; padding:12px 14px; border:1px solid var(--line); border-radius:10px; }.message.error { color:var(--danger); }
.public-link { display:block; margin-top:20px; color:var(--muted); font-size:.82rem; text-align:center; }
