.erp-login { min-height:100dvh; margin:0; display:grid; place-items:center; padding:24px; color:#20242b; background:#fafbfc; font:600 14px/1.5 Manrope,Arial,sans-serif; }
.erp-login main { box-sizing:border-box; width:min(100%,384px); padding:28px; background:#fff; border:1px solid #d6dae0; border-radius:6px; }
.erp-login h1 { margin:0 0 20px; font-size:22px; font-weight:800; }
.erp-login form,.erp-login label { display:grid; gap:8px; }
.erp-login form { gap:16px; }
.erp-login input,.erp-login button { box-sizing:border-box; min-height:44px; padding:8px 12px; border:1px solid #aeb7c3; border-radius:5px; font:inherit; }
.erp-login input { min-width:0; }
.erp-login button { background:#1746a2; border-color:#1746a2; color:#fff; cursor:pointer; }
.erp-login :is(input,button):focus-visible { outline:2px solid #1746a2; outline-offset:2px; }
.erp-login [role=alert] { color:#a02626; margin:0; }
.erp-login [role=status] { color:#1c6b3a; margin:0; }
.erp-login-link { margin:16px 0 0; }
.erp-login a { color:#1746a2; }
