:root {color-scheme:light;--bg:#f4f6fb;--surface:#fff;--text:#172d49;--muted:#526681;--line:#d5dfed;--accent:#12748a;--red:#ba2549;--field:#fff}
:root[data-theme="dark"] {color-scheme:dark;--bg:#091310;--surface:#101f1b;--text:#edf6f0;--muted:#a4b9ad;--line:#304b3d;--accent:#ccf54b;--red:#ff879d;--field:#0b1712}
:root[data-theme="abex"] {color-scheme:dark;--bg:#06131d;--surface:#0d2331;--text:#edf7fc;--muted:#aac4d6;--line:#2a546b;--accent:#00bafa;--red:#ff879d;--field:#081b27}
body {background:var(--bg);padding:24px;color:var(--text);font-family:"Segoe UI",Arial,sans-serif;line-height:1.5}
body::before {display:none}
.card {width:min(460px,100%);padding:32px;border-radius:8px;background:var(--surface);border:1px solid var(--line);box-shadow:0 14px 50px #00000008}
.brand {gap:14px;padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.brand img {width:60px;height:60px;border:0;border-radius:6px;background:#142d47;padding:10px}
h1 {font-size:23px;text-transform:none;letter-spacing:0;margin:0;line-height:1.3}
h2 {font-size:21px;line-height:1.3;margin:0 0 6px;letter-spacing:0}
p {color:var(--muted);font-size:14px}
.intro {margin-bottom:24px}
form {gap:18px}
label {font-size:13px;font-weight:600;text-transform:none;color:var(--text);gap:8px}
input {background:var(--field);color:var(--text);border-color:var(--line);border-radius:6px;min-height:46px;font-size:15px;padding:0 12px}
input:focus {border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}
button {min-height:46px;border-radius:6px;background:var(--accent);color:#fff;font-size:14px;font-weight:700;text-transform:none;box-shadow:none}
:root[data-theme="dark"] button,:root[data-theme="abex"] button {color:#071b14}
button:hover {filter:brightness(.95)}
.error {font-size:13px;font-weight:600;color:var(--red);min-height:0}
.error:empty {display:none}
@media(max-width:480px) {.card {padding:24px}body {padding:16px}}
