* {box-sizing:border-box}
body {margin:0; min-height:100vh; display:grid; place-items:center; background:#f3f6fa; color:#0f172a; font:16px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif}
.login-box {width:min(430px,calc(100% - 32px)); padding:28px; background:#fff; border:1px solid #dbe4f1; border-radius:16px; box-shadow:0 10px 30px rgba(16,42,90,.09)}
h1 {font-size:22px; margin:0 0 14px}
.sub {font-size:13px; color:#526073}
label {display:block; margin:12px 0 4px; font-weight:650}
input {display:block; width:100%; min-height:44px; padding:10px; border:1px solid #b8c6da; border-radius:9px; font:inherit}
button {display:block; width:100%; min-height:44px; margin-top:20px; border:0; border-radius:9px; color:white; background:#174ccc; font:inherit; font-weight:700; cursor:pointer}
button:focus-visible,input:focus-visible,a:focus-visible {outline:3px solid #81a9ff; outline-offset:2px}
.back {display:inline-block; margin-top:16px; color:#174ccc; text-decoration:none; font-size:14px}
.error {padding:12px; margin:12px 0; border:1px solid #ff9eb1; background:#fff1f4; border-radius:8px; color:#97052c}
