:root{color-scheme:light;font-family:Roboto,system-ui,-apple-system,"Segoe UI",sans-serif;--primary:#2657a8;--outline:#d7dee7;--ink:#1e2b3e;--muted:#596779}
*{box-sizing:border-box}body{margin:0;background:#f6f8fc;color:var(--ink)}
.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.login-card{background:#fff;border:1px solid var(--outline);border-radius:24px;padding:28px;width:min(100%,420px);box-shadow:0 12px 42px #17385e12}
.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:28px}.login-brand img{border-radius:14px}.login-brand h1{font-size:1.3rem;line-height:1.25;margin:0;font-weight:750}.login-brand p{margin:5px 0 0;font-size:.9rem;color:var(--muted)}
form{display:flex;flex-direction:column;gap:10px}label{font-weight:650;font-size:.92rem;margin-top:4px}
input{width:100%;border:1px solid #aeb9c7;border-radius:12px;min-height:50px;padding:0 14px;font:inherit;background:#fff;color:var(--ink)}
input:focus-visible,button:focus-visible{outline:3px solid #89b3f8;outline-offset:2px}
button{margin-top:12px;min-height:50px;border:0;border-radius:100px;background:var(--primary);color:white;font:inherit;font-weight:700;cursor:pointer}
button:disabled{opacity:.65;cursor:wait}.error{color:#b42335;background:#fff0f2;border-radius:10px;padding:12px;font-size:.9rem;margin:2px 0 0}
.login-note{font-size:.77rem;line-height:1.5;color:var(--muted);text-align:center;margin:24px 0 0}
@media(max-width:375px){.login-card{padding:22px 18px;border-radius:18px}}

.login-remember{display:flex;align-items:center;gap:10px;font-size:.88rem;font-weight:500;line-height:1.4;margin:6px 0 0;cursor:pointer}
.login-remember input{width:20px;min-width:20px;height:20px;min-height:20px;accent-color:var(--primary);margin:0;padding:0;cursor:pointer}
.login-remember span{flex:1}
