:root{--bg-top:#0a142d;--bg-bottom:#0e1d3b;--card-bg:#0f203e;--ink:#eef0ff;--muted:#bcc3ff;--brand:#4140d7;--brand-hover:#5554e0;--line:#2b2a90;--focus:#7575f4;color:var(--ink);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Trebuchet MS,Gill Sans,Segoe UI,sans-serif;font-weight:400;line-height:1.45}*{box-sizing:border-box}body{background:linear-gradient(165deg, var(--bg-top) 0%, var(--bg-bottom) 100%);min-height:100vh;margin:0}#root{min-height:100vh}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--card-bg);border:1px solid var(--line);border-radius:18px;width:min(430px,100%);padding:28px;box-shadow:0 20px 40px #00000059}.brand-logo{-o-object-fit:contain;object-fit:contain;width:auto;height:36px;margin-bottom:10px}.eyebrow{color:var(--brand);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:13px;font-weight:700}h1{margin:6px 0;font-size:34px;line-height:1.1}.supporting-text{color:var(--muted);margin:0 0 22px}.login-form{gap:12px;display:grid}.field-label{font-size:14px;font-weight:600}input[type=email],input[type=password]{border:1px solid var(--line);width:100%;color:var(--ink);background:#162040;border-radius:10px;padding:11px 12px;font-size:15px}input::placeholder{color:#9a9ff8}input:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid color-mix(in oklab, var(--focus), white 50%);outline-offset:1px}.form-row{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:4px;font-size:14px;display:flex}.remember{align-items:center;gap:8px;display:inline-flex}.form-row a,.footnote a{color:var(--brand);text-decoration:none}.form-row a:hover,.footnote a:hover{text-decoration:underline}button[type=submit]{color:#fff;background:var(--brand);cursor:pointer;border:none;border-radius:10px;margin-top:8px;padding:12px 14px;font-size:15px;font-weight:700;transition:background-color .12s ease-in-out,transform .12s ease-in-out}button[type=submit]:hover{background:var(--brand-hover);transform:translateY(-1px)}.footnote{color:var(--muted);margin:18px 0 0;font-size:14px}.contact-line{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0 0;font-size:13px;display:flex}.contact-line span{color:#7575f4}.contact-line a{color:#dde2ff;text-decoration:none}.contact-line a:hover{text-decoration:underline}@media (width<=520px){.login-card{border-radius:14px;padding:22px}h1{font-size:30px}.form-row{flex-direction:column;align-items:flex-start}}
