:root{color-scheme:dark;--bg:#101210;--panel:#191c19;--raised:#222722;--line:#343c34;--text:#f0f3eb;--muted:#acb5a7;--lime:#c3ef6b;--ink:#18200f;--error:#ffb4ab;font:15px/1.5 "Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg)}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}a{color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.login-page{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:56px 20px;gap:36px;background:radial-gradient(ellipse at 50% 0%,#1d291766,transparent 58%)}
.brand{display:block;text-decoration:none;font-size:32px;font-weight:750;letter-spacing:-1.8px;line-height:1.2}.brand span{display:block;color:var(--lime);font-size:9px;font-weight:500;letter-spacing:1.6px;margin-top:9px}.login-card{width:100%;max-width:420px;padding:34px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 24px 70px #0003}
.eyebrow{font-size:11px;font-weight:600;letter-spacing:1.7px;color:var(--lime)}h1{font-size:30px;line-height:1.2;letter-spacing:-1px;font-weight:600;margin:12px 0}.intro{color:var(--muted);margin:0 0 30px}.field{display:grid;gap:8px;margin-bottom:21px}label{font-size:13px;font-weight:500}input{width:100%;min-width:0;min-height:50px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;color:var(--text);background:var(--bg)}input::placeholder{color:#8f998a}input:focus{border-color:var(--lime)}button{min-height:48px;border-radius:10px;padding:12px 16px;font-weight:600}.primary{width:100%;background:var(--lime);color:var(--ink);border:1px solid var(--lime);display:flex;align-items:center;justify-content:space-between;margin-top:10px}.primary:hover{background:#d0f58d}.tagline{font-size:12px;color:var(--muted);margin:0}.field-error{color:var(--error);font-size:12px}.field-error:empty{display:none}.validation-summary-valid{display:none}.validation-summary-errors{color:var(--error);background:#382724;border:1px solid #68433b;padding:12px;border-radius:10px;margin-bottom:22px;font-size:13px}.validation-summary ul{margin:0;padding-left:18px}.input-validation-error{border-color:var(--error)}
.app-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;border-bottom:1px solid var(--line)}.app-header .brand{font-size:26px}.quiet{background:transparent;color:var(--muted);border:1px solid var(--line);font-size:13px}.quiet:hover{background:var(--raised);color:var(--text)}.empty-page{min-height:calc(100svh - 88px)}
@media(max-width:480px){.login-page{padding:32px 18px;gap:28px}.login-card{padding:28px 24px}h1{font-size:27px}.app-header{padding:0 20px;height:76px}.empty-page{min-height:calc(100svh - 76px)}}
