:root{color-scheme:light;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#233f52;background:#f0f6fa}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 15% 0%,#d6edf9,transparent 65%)}
.login{width:min(100% - 32px,440px);min-height:100vh;display:grid;align-content:center;gap:18px;margin:auto;padding:32px 0}
.login-card{border:1px solid #d8e5ed;border-radius:16px;background:#fff;padding:clamp(24px,7vw,42px);box-shadow:0 14px 48px #19496812}
.brand{display:flex;align-items:center;gap:15px;margin-bottom:28px;color:#0067a3;font-size:.8rem;font-weight:700;letter-spacing:.13em}
.brand img{display:block;object-fit:contain}
h1{margin:0;font-size:clamp(1.6rem,5vw,2rem);line-height:1.2;letter-spacing:-.035em}
p{color:#506779;margin:12px 0 24px;line-height:1.55}
form{display:grid;gap:10px}
label{font-size:.88rem;font-weight:650}
input:not([type=hidden]),button{border-radius:8px;font:inherit;min-height:46px}
input:not([type=hidden]){min-width:0;border:1px solid #9db6c6;padding:10px 12px;color:#233f52}
button{margin-top:5px;background:#0067a3;color:#fff;border:1px solid #0067a3;font-weight:650;padding:10px 14px;cursor:pointer}
button:hover{background:#005487}
:focus-visible{outline:3px solid #0078b6;outline-offset:3px}
a{display:inline-block;margin-top:18px;color:#0067a3;font-size:.88rem;text-underline-offset:3px}
.error{border-left:3px solid #a03540;background:#fdf1f2;color:#8d2933;padding:10px 12px}
footer{text-align:center;font-size:.78rem;color:#506779}
