:root{--bg:#090b0f;--panel:#12151b;--line:#292f39;--text:#f4f7fb;--muted:#9099a8;--accent:#e8ff5a;--danger:#ff8b8b}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 70% 10%,rgba(232,255,90,.05),transparent 30%),var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif}
.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-card{width:min(430px,100%);background:linear-gradient(180deg,#14181f,#101319);border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 30px 90px rgba(0,0,0,.35)}
.brand{font-weight:900;font-size:20px;margin-bottom:34px}.brand span{color:var(--accent)}
.eyebrow{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:1.5px}
h1{font-size:34px;letter-spacing:-1px;margin:7px 0 8px}p{color:var(--muted);font-size:13px;line-height:1.55;margin:0 0 28px}
label{display:block;margin:14px 0}label span{display:block;color:var(--muted);font-size:11px;font-weight:700;margin-bottom:7px}
input{width:100%;padding:12px 13px;border:1px solid var(--line);border-radius:11px;background:#0b0e13;color:var(--text);outline:0}
input:focus{border-color:#697421;box-shadow:0 0 0 3px rgba(232,255,90,.06)}
button{width:100%;margin-top:9px;padding:12px;border:0;border-radius:11px;background:var(--accent);color:#111407;font-weight:900;cursor:pointer}
button:disabled{opacity:.55;cursor:not-allowed}.error{margin-top:14px;padding:11px;border:1px solid rgba(255,139,139,.3);background:rgba(255,139,139,.06);border-radius:10px;color:var(--danger);font-size:12px}
