
:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% 20%,#1b4153,transparent 35%),linear-gradient(140deg,#08111b,#131b2a 60%,#080e16);color:#f1f5f9}
.auth-shell{display:grid;grid-template-columns:minmax(280px,1fr) minmax(310px,420px);gap:clamp(30px,7vw,100px);align-items:center;min-height:100vh;max-width:1250px;margin:auto;padding:clamp(22px,5vw,64px)}
.mark{font-size:clamp(56px,9vw,140px);font-weight:900;letter-spacing:-.1em;line-height:1;color:#bfe8fa}.eyebrow{color:#63c5e5;font-weight:800;font-size:12px;letter-spacing:.15em}
.auth-brand h1{font-size:clamp(28px,4vw,48px);letter-spacing:-.035em;line-height:1.12}.auth-brand p{color:#a8b9c9;font-size:17px;max-width:520px}.secure{display:inline-block;margin-top:25px;font-size:12px;color:#93acc3}
.auth-card{padding:36px 32px;border:1px solid #375067;background:linear-gradient(180deg,#1c2a3b,#111c29);border-radius:22px;box-shadow:0 30px 70px #0007}.app-mark{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:#d0eef6;color:#142b3b;font-weight:900}.app-mark span{color:#42689c}
h2{margin:22px 0 4px;font-size:24px}.subtitle{margin:0 0 24px;color:#9fb5c5}
.tabstrip{display:flex;gap:5px;border-bottom:1px solid #425064;margin-bottom:20px}.tabstrip button{flex:1;padding:10px 4px;border:0;background:transparent;color:#a9bed0;cursor:pointer}.tabstrip button[aria-pressed=true]{color:white;border-bottom:2px solid #73bedc}
form{display:grid;gap:17px}label{display:grid;gap:8px;font-size:13px;font-weight:600;color:#d7e4ee}
input{padding:12px 14px;background:#101a27;color:#fff;border:1px solid #53687b;border-radius:10px;font-size:15px;min-width:0}input:focus{outline:2px solid #70bddf}
button[type=submit]{padding:14px;border:0;border-radius:11px;background:#76d2ed;color:#081822;font-weight:900;cursor:pointer}button:disabled{opacity:.5;cursor:wait}
#auth-feedback{min-height:19px;font-size:13px;color:#ffd4a6}pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#d0effd}
.security-note{border-top:1px solid #435366;padding-top:17px;margin-top:25px;font-size:12px;line-height:1.55;color:#92a9bb}
/* Compact sign-in layout consistent with the AQA interface. */
body{background:#0c1622;color:#e5eef6;min-height:100dvh;display:grid;place-items:center;padding:20px}
.auth-shell{display:grid;grid-template-columns:1fr;gap:0;align-items:stretch;max-width:420px;min-height:initial;width:100%;margin:auto;padding:0}
.auth-brand{display:none}
.auth-card{padding:30px;background:#142331;border:1px solid #33485a;border-radius:14px;box-shadow:0 15px 45px #0007}
.app-mark{width:auto;height:auto;display:block;background:none;font-size:14px;font-weight:800;letter-spacing:.2em;color:#80b7e3}
.app-mark span{color:#80b7e3}
h2{font-size:24px;margin:16px 0 8px}
.subtitle{color:#b9c9d8}
input{background:#09131d;border:1px solid #557189;border-radius:6px;font:inherit;color:#fff}
button[type=submit]{background:#2074a8;color:white;border:0;border-radius:7px;font:inherit;cursor:pointer}
.tabstrip button[aria-pressed=true]{border-bottom-color:#2074a8}
@media(max-width:480px){.auth-card{padding:24px 18px}}
