*{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:#f6f8fb;color:#202c40;font:16px/1.6 system-ui,sans-serif}
.login-header{width:100%;max-width:1100px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px}
.brand{font-family:"Edgecutting Lite",sans-serif;font-size:30px;color:#202c40;text-decoration:none}.brand span{color:#4568db}
.access-label{font-size:12px;color:#627086}
main{flex:1;display:grid;place-items:center;padding:40px 24px 60px}
.login-card{width:100%;max-width:460px;background:#fff;border:1px solid #e2e7ef;border-radius:18px;padding:36px}
.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:700;color:#4568db}
h1{font-size:30px;line-height:1.2;letter-spacing:-.035em;margin:14px 0}
.intro{color:#627086;font-size:14px;margin:0 0 28px}
label{display:block;font-size:13px;font-weight:600;margin:18px 0 7px}
input{display:block;width:100%;border:1px solid #cbd4e2;border-radius:8px;padding:12px;font:inherit;font-size:14px;background:#fff;color:#202c40}
button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;margin-top:26px;padding:13px 16px;border:0;border-radius:8px;background:#4568db;color:#fff;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
button:hover{background:#3656ad}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #90a9ff;outline-offset:3px}
.support{font-size:12px;color:#627086;margin:24px 0 0}.support a{color:#3656ad;text-decoration:none}
.alert,.field-error{color:#a22b36;font-size:13px}.alert{background:#fff1f1;border-radius:8px;padding:12px}.field-error{margin:6px 0 0}
.help{color:#627086;font-size:12px;margin:7px 0 0}
footer{text-align:center;padding:24px;color:#627086;font-size:12px}
@media(max-width:600px){.login-header{padding:20px}.access-label{font-size:11px}main{padding:24px 20px 40px}.login-card{padding:26px 22px}h1{font-size:27px}}
