.login-page{background:linear-gradient(160deg,#0b1220 0%,#16325c 50%,#1d4ed8 100%);place-items:center;min-height:100vh;padding:2rem 1.25rem;display:grid}.login-card{background:#fff;border-radius:1.5rem;width:min(440px,100%);padding:2rem 1.75rem;box-shadow:0 24px 60px #00000040}.login-card .eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8;margin:0 0 .65rem;font-size:.78rem;font-weight:700}.login-card h1{letter-spacing:-.04em;margin:0 0 .55rem;font-size:1.85rem}.login-card .lead{color:#64748b;margin:0 0 1.5rem;font-size:.95rem;line-height:1.6}.login-form .form-group{margin-bottom:1rem}.login-form label{margin-bottom:.45rem;font-size:.9rem;font-weight:600;display:block}.login-form input{width:100%;font:inherit;border:1px solid #dbe3ec;border-radius:.9rem;outline:none;padding:.9rem 1rem}.login-form input:focus{border-color:#1d4ed8;box-shadow:0 0 0 4px #1d4ed81a}.login-form .submit-btn{color:#fff;width:100%;min-height:3rem;font:inherit;cursor:pointer;background:#0b1220;border:0;border-radius:999px;margin-top:.35rem;font-weight:700}.login-form .submit-btn:disabled{opacity:.7;cursor:wait}.alert-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:.9rem;margin-bottom:1rem;padding:.85rem 1rem;font-size:.9rem}.login-back{text-align:center;margin:1.25rem 0 0}.login-back a{color:#64748b;font-size:.9rem}
