
body:not(.auth-ready)>.app,body:not(.auth-ready)>.test-banner{display:none!important}
.auth-screen{position:fixed;inset:0;z-index:20000;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 80% 15%,rgba(255,212,0,.14),transparent 34%),linear-gradient(145deg,#031a32,#07386d 65%,#052d5b);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
.auth-screen[hidden]{display:none!important}.auth-form[hidden],.auth-loader[hidden],.access-denied[hidden]{display:none!important}.auth-card{width:min(440px,100%);background:#fff;border-radius:24px;padding:30px;box-shadow:0 28px 80px rgba(0,0,0,.35);border:1px solid rgba(255,255,255,.5)}
.auth-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.auth-logo{width:64px;height:64px;object-fit:contain}.auth-brand b{display:block;color:#052d5b;font-size:22px;letter-spacing:.05em}.auth-brand small{color:#68778b}.auth-card h2{margin:0 0 7px;color:#052d5b;font-size:27px}.auth-card>p{margin:0 0 20px;color:#68778b;line-height:1.5}.auth-form{display:grid;gap:14px}.auth-form label span{display:block;margin-bottom:6px;font-size:12px;font-weight:850;color:#46576a}.auth-form input,.auth-form select{width:100%;border:1px solid #cad5e1;border-radius:11px;padding:12px 13px;font-size:16px;outline:none;background:#fff}.auth-form input:focus,.auth-form select:focus{border-color:#0b417d;box-shadow:0 0 0 4px rgba(11,65,125,.1)}.auth-submit{border:0;border-radius:11px;padding:13px 15px;background:#ffd400;color:#052d5b;font-weight:950;font-size:15px}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-error{min-height:19px;margin:0!important;color:#b42318!important;font-size:12px;font-weight:800}.auth-message{min-height:19px;margin:0!important;color:#155e38!important;font-size:12px;font-weight:850;line-height:1.45}.auth-link-row{text-align:center;margin-top:-3px}.auth-link{border:0;background:transparent;color:#0b417d;padding:4px;font-weight:850;text-decoration:underline;text-underline-offset:3px}.auth-link:hover{color:#052d5b}.auth-secondary{border:1px solid #cad5e1;border-radius:11px;padding:11px 14px;background:#fff;color:#052d5b;font-weight:900}.auth-actions{display:grid;gap:9px}.password-rules{margin:0;padding:11px 13px;border-radius:10px;background:#f4f7fa;color:#58687a;font-size:11px;line-height:1.55}.password-rules strong{color:#052d5b}.auth-security{margin-top:18px;padding-top:16px;border-top:1px solid #e1e7ee;color:#68778b;font-size:11px;line-height:1.45}.auth-loader{text-align:center;padding:24px 8px;color:#68778b}.auth-spinner{width:34px;height:34px;border:4px solid #dce6ef;border-top-color:#0b417d;border-radius:50%;margin:0 auto 12px;animation:authSpin .8s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}
.topbar-actions{display:flex;align-items:center;gap:10px}.user-session{display:flex;align-items:center;gap:9px;background:#fff;border:1px solid var(--line);padding:7px 8px 7px 11px;border-radius:11px}.user-session-text{line-height:1.15}.user-session-text strong{display:block;font-size:12px;color:var(--navy)}.user-session-text small{display:block;color:var(--muted);font-size:10px;text-transform:capitalize}.logout-btn{border:1px solid #e5c7c7;background:#fff4f4;color:#a32727;border-radius:8px;padding:7px 9px;font-weight:850;font-size:11px}.access-denied{max-width:520px;text-align:center}.access-denied .auth-submit{width:100%;margin-top:10px}
.mfa-qr-wrap{display:grid;place-items:center;padding:13px;background:#f4f7fa;border:1px solid #d9e2ec;border-radius:14px}.mfa-qr{width:210px;height:210px;max-width:100%;background:#fff;border-radius:10px}.mfa-secret{display:block;padding:10px 12px;border-radius:9px;background:#eef3f8;color:#052d5b;font:800 12px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere;text-align:center}.mfa-instructions{margin:0;color:#58687a;font-size:12px;line-height:1.55}.mfa-status{border:1px solid #cad5e1;background:#f7fafc;color:#0b417d;border-radius:8px;padding:7px 9px;font-weight:900;font-size:11px}.mfa-status.is-active{border-color:#9bd5b0;background:#ecf9f0;color:#155e38}.mfa-enroll-setup[hidden],.mfa-enroll-intro[hidden]{display:none!important}.mfa-enroll-setup{display:grid;gap:13px}
@media(max-width:760px){.auth-card{padding:23px;border-radius:19px}.auth-brand{margin-bottom:18px}.auth-card h2{font-size:23px}.user-session-text{display:none}.topbar-actions{gap:6px}.user-session{padding:6px}.logout-btn{padding:7px}.date-chip{display:none!important}}
