*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#f3f6fb;color:#1d2a40;font:14px Inter,system-ui,sans-serif}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 15% 5%,#e5ecff 0,transparent 45%),#f3f6fb}.login-card{width:min(420px,100%);padding:38px;background:#fff;border:1px solid #e1e7f0;border-radius:18px;box-shadow:0 20px 60px #1b2c4d12}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#315ee8;color:#fff;font-size:24px;font-weight:800;box-shadow:0 8px 18px #315ee833}.eyebrow{margin:25px 0 8px;color:#7d8ba3;font-size:9px;font-weight:800;letter-spacing:1.8px}.login-card h1{margin:0;font-size:27px;letter-spacing:-.8px}.subtitle{margin:10px 0 27px;color:#7b879a;font-size:12px;line-height:1.6}.login-card form{display:grid;gap:9px}.login-card label{margin-top:7px;font-size:11px;font-weight:700;color:#46556d}.login-card input{width:100%;height:43px;padding:0 12px;border:1px solid #dce3ee;border-radius:8px;background:#fff;color:#1d2a40;font:inherit;outline:0}.login-card input:focus{border-color:#7793f1;box-shadow:0 0 0 3px #315ee815}.login-card button{height:44px;margin-top:10px;border:0;border-radius:8px;background:#315ee8;color:#fff;font-weight:800;cursor:pointer}.login-card button:disabled{opacity:.6;cursor:wait}.security-note{margin:22px 0 0;color:#9aa5b5;font-size:10px;text-align:center}.error{margin:5px 0 0;padding:10px 12px;border:1px solid #f0d0d0;border-radius:7px;background:#fff2f2;color:#a33131;font-size:11px;line-height:1.5}.error[hidden]{display:none}@media(max-width:480px){.login-card{padding:28px 22px}}

