@font-face{font-family:"Host Grotesk";src:url("/assets/fonts/host-grotesk-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:300 800;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("/assets/fonts/space-grotesk-latin-wght-normal.woff2") format("woff2");font-style:normal;font-weight:300 700;font-display:swap}

:root{--site-ink:#17212b;--site-slate:#506070;--site-muted:#73808d;--site-paper:#fff;--site-line:#d8d6cf;--site-line-dark:#b6babd;--site-navy:#1b3547;--site-teal:#2f6b68;--site-sage:#dce6df;--site-white:#fff;--site-font-main:"Host Grotesk",Arial,sans-serif;--site-font-display:"Space Grotesk","Host Grotesk",Arial,sans-serif}
.login-shell,.login-shell *,.secure-session-toolbar,.secure-session-toolbar *{box-sizing:border-box}
.login-shell{background:#fff;color:var(--site-ink);font-family:var(--site-font-main);margin:0;min-height:100vh}
.login-shell button,.login-shell input,.secure-session-toolbar button{font:inherit}
.login-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh}
.login-brand{background:#fff;border-right:1px solid var(--site-line);color:var(--site-ink);display:flex;flex-direction:column;justify-content:space-between;padding:48px clamp(36px,6vw,92px)}
.login-brand__logo{display:block;height:auto;width:250px}
.login-brand__copy{max-width:660px;padding:72px 0}
.site-eyebrow{color:var(--site-teal);font-size:12px;font-weight:700;letter-spacing:.16em;margin:0 0 18px;text-transform:uppercase}
.login-brand h1{font-family:var(--site-font-display);font-size:clamp(46px,6vw,82px);font-weight:430;letter-spacing:-.045em;line-height:.98;margin:0}
.login-brand__copy>p:last-child{color:var(--site-slate);font-size:18px;line-height:1.55;max-width:570px}
.login-brand__security{align-items:center;color:var(--site-slate);display:flex;font-size:12px;gap:12px;letter-spacing:.07em;text-transform:uppercase}
.secure-dot{background:#3d8378;border-radius:50%;box-shadow:0 0 0 4px rgba(61,131,120,.12);display:inline-block;height:7px;width:7px}
.login-panel{background:var(--site-paper);display:flex;flex-direction:column;justify-content:center;padding:54px clamp(34px,6vw,86px)}
.login-panel__header{margin-bottom:28px}
.login-panel__kicker{color:var(--site-teal);font-size:11px;font-weight:700;letter-spacing:.13em;margin:0 0 12px;text-transform:uppercase}
.login-panel h2{font-family:var(--site-font-display);font-size:38px;font-weight:480;letter-spacing:-.035em;margin:0}
.login-panel__header>p:last-child,.login-panel__help{color:var(--site-muted);font-size:14px;line-height:1.5}
.auth-form{display:grid;gap:9px}
.auth-form label{font-size:12px;font-weight:650;margin-top:8px}
.auth-form input{background:#fff;border:1px solid var(--site-line-dark);border-radius:2px;color:var(--site-ink);font-size:15px;outline:none;padding:13px 14px;width:100%}
.auth-form input:focus{border-color:var(--site-teal);box-shadow:0 0 0 3px rgba(47,107,104,.12)}
.auth-button{background:var(--site-navy);border:1px solid var(--site-navy);color:#fff;cursor:pointer;font-weight:700;margin-top:16px;padding:14px 18px;transition:background .2s ease}
.auth-button:hover,.auth-button:focus-visible{background:var(--site-teal);border-color:var(--site-teal)}
.auth-button:disabled{cursor:wait;opacity:.62}
.auth-message{background:var(--site-sage);border-left:3px solid var(--site-teal);font-size:13px;line-height:1.5;margin-bottom:20px;padding:12px 14px}
.auth-message[data-state="error"]{background:#f5e2dc;border-color:#a64b32;color:#713421}
.login-panel__help{border-top:1px solid var(--site-line);margin:32px 0 0;padding-top:22px}

.report-header-meta{align-items:flex-end;display:flex;flex-direction:column;gap:7px}
.secure-session-toolbar{align-items:center;background:rgba(255,255,255,.97);border:1px solid rgba(27,53,71,.2);border-radius:8px;color:var(--site-navy);display:flex;font-family:var(--site-font-main);font-size:10px;gap:9px;letter-spacing:.02em;margin:0;max-width:100%;padding:6px 7px 6px 10px;width:max-content}
.secure-session-toolbar__status{align-items:center;display:flex;gap:7px;white-space:nowrap}
.secure-session-toolbar button{appearance:none;background:transparent;border:1px solid var(--site-navy);border-radius:5px;color:var(--site-navy);cursor:pointer;font-size:10px;font-weight:700;line-height:1;padding:6px 8px;transition:background .16s ease,color .16s ease;white-space:nowrap}
.secure-session-toolbar button:hover,.secure-session-toolbar button:focus-visible{background:var(--site-navy);color:#fff;outline:none}
.status-page{margin:0 auto;max-width:720px;padding:80px 32px}.status-page img{height:auto;margin-bottom:80px;width:230px}.status-page h1{font-family:var(--site-font-display);font-size:clamp(44px,8vw,74px);font-weight:430;letter-spacing:-.045em;line-height:1;margin:14px 0}.status-page p:not(.site-eyebrow){color:var(--site-slate);font-size:18px}.status-page a{color:var(--site-teal);font-weight:700;text-underline-offset:3px}

@media(max-width:900px){.login-layout{grid-template-columns:1fr}.login-brand{border-bottom:1px solid var(--site-line);border-right:0;min-height:44vh;padding:34px}.login-brand__copy{padding:60px 0 32px}.login-panel{min-height:56vh;padding:48px 34px}}
@media(max-width:620px){.login-brand{min-height:40vh;padding:26px 24px}.login-brand__logo{width:210px}.login-brand__copy{padding:48px 0 20px}.login-brand h1{font-size:44px}.login-panel{min-height:60vh;padding:42px 24px}.secure-session-toolbar__status{display:none}}
