.os-login{width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 32px);padding:30px;border:1px solid #dbe3ef;border-radius:22px;background:#f8fbff;color:#203651;box-shadow:0 24px 100px #07193355;font:15px/1.55 system-ui,sans-serif;overscroll-behavior:contain}
.os-login::backdrop{background:#101b3566;backdrop-filter:blur(5px)}
.os-login-close{position:absolute;right:12px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#e7edf5;color:#304766;font-size:25px;cursor:pointer}
.os-login .auth-shell,.os-login .auth-card{padding:0;margin:0;border:0;box-shadow:none;background:transparent;width:auto;max-width:none}
.os-login h1{font-size:26px;line-height:1.3;margin:8px 0 14px}.os-login p{margin:10px 0}.os-login .eyebrow{font-size:12px;color:#647b98}.os-login .muted,.os-login .foot-note{color:#637791;font-size:13px}
.os-login form{display:grid;gap:14px;margin:20px 0}.os-login label{display:grid;gap:6px}.os-login input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #cbd7e7;border-radius:9px;background:white;color:#152d4e;font:inherit}.os-login input:focus{outline:2px solid #4989ef;outline-offset:2px}.os-login label.check{display:flex;align-items:center;gap:8px;font-size:13px}
.os-login button[type=submit]{padding:11px 15px;border:0;border-radius:10px;background:#2763de;color:white;font:inherit;cursor:pointer}.os-login button:disabled{opacity:.5;cursor:wait}.os-login a{color:#245bc4}.os-login .auth-methods{display:flex;gap:10px;flex-wrap:wrap}.os-login .auth-methods a{padding:6px 10px;border:1px solid #ccd9ed;border-radius:8px;font-size:13px}.os-login .auth-methods [aria-current]{background:#e1ebfd}
.os-login .inline-error,.os-login [role=alert]{color:#a52330;background:#ffeef0;padding:10px;border-radius:8px}.os-login .flash{padding:10px;border-radius:8px;background:#e4edf9}.os-login .auth-qr{text-align:center}.os-login canvas{max-width:100%;height:auto}.os-login .authenticator-setup>div{display:grid;gap:3px;margin:12px 0}.os-login code,.os-login .break-link{overflow-wrap:anywhere}.os-login .recovery-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.os-login .recovery-grid code{padding:8px;background:#e5edf7;border-radius:6px}
@media(max-width:480px){.os-login{padding:28px 18px 20px;border-radius:16px}}
.browser-install-extension{display:inline-block;padding:6px 12px;margin:4px 8px;border-radius:7px;background:#2864dd;color:#fff;text-decoration:none;font-weight:600}
