:root{color-scheme:light;font-family:system-ui,sans-serif;color:#0A1531;background:#F2F6FE}
*{box-sizing:border-box}
body{min-height:100dvh;margin:0;padding:24px;display:grid;place-items:center}
.login-card{background:#fff;border:1px solid #E3E9F5;border-radius:18px;width:min(100%,430px);padding:clamp(22px,6vw,40px)}
.login-card img{display:block;max-width:100%;height:auto}
h1{font-size:1.45rem;letter-spacing:-.03em;margin:24px 0}
form,form p,label{display:grid;gap:8px}
form{gap:16px}form p{margin:0}label{font-size:.9rem;font-weight:650}
input,button{width:100%;min-height:44px;border-radius:9px;padding:10px 12px;font:inherit}
input{background:#fff;color:#0A1531;border:1px solid #CBD7EA}
button{background:#2B7FFE;color:#0A1531;border:0;font-weight:750;cursor:pointer}
:focus-visible{outline:2px solid #183FA4;outline-offset:3px}
[role=alert]{background:#FFF4E5;border:1px solid #F0C551;border-radius:9px;padding:10px 12px;font-size:.9rem}
button{background:#1D55C4;color:white}
.password-field{position:relative;display:block}
.password-field input{padding-right:94px}
.password-field button{position:absolute;right:4px;top:4px;width:auto;min-height:36px;padding:5px 8px;background:#EDF4FF;color:#183FA4}
.forgot-link{display:inline-block;margin-top:14px;color:#183FA4;font-size:.9rem}
