/* Shared by the public site and the member portal: fonts, colour tokens
   (light and dark), the status strip, the theme switch and the skip link.
   Both shells load it, so the two always look like one site. */
@font-face{font-family:"Public Sans";font-style:normal;font-weight:400;font-display:swap;src:url(/assets/site/fonts/public-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:500;font-display:swap;src:url(/assets/site/fonts/public-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:600;font-display:swap;src:url(/assets/site/fonts/public-sans-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:800;font-display:swap;src:url(/assets/site/fonts/public-sans-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"Public Sans";font-style:italic;font-weight:400;font-display:swap;src:url(/assets/site/fonts/public-sans-latin-400-italic.woff2) format("woff2")}
:root{
  --navy:#24326e; --navy-deep:#172051; --coalition:#f0672a;
  --ink:#1c2333; --ink-soft:#4b5570; --line:#d8ddeb;
  --bg:#eef1f8; --surface:#ffffff; --surface-2:#f6f7fb;
  --map-fill:#dfe4f2; --map-stroke:#ffffff; --map-impact:#f6c9b6;
  --st-monitoring:#2e7d4f; --st-monitoring-bg:#e3f3ea;
  --st-watch:#b86e00; --st-watch-bg:#fdf0d8;
  --st-activated:#b6312b; --st-activated-bg:#fbe4e2;
  --st-recovery:#2a5db0; --st-recovery-bg:#e2ebfa;
  --bs-body-font-family:"Public Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --bs-body-color:var(--ink); --bs-body-bg:var(--bg);
  --bs-link-color-rgb:36,50,110; --bs-link-hover-color-rgb:23,32,81;
  --bs-border-color:var(--line);
}
[data-bs-theme=dark]{
  --navy:#2f3f86; --navy-deep:#0f1530; --coalition:#ff7d3f;
  --ink:#e9ecf7; --ink-soft:#aab3cf; --line:#2c3663;
  --bg:#0f1530; --surface:#182047; --surface-2:#1e2856;
  --map-fill:#26305f; --map-stroke:#0f1530; --map-impact:#7a3a2a;
  --st-monitoring:#5ec78d; --st-monitoring-bg:#153a2a;
  --st-watch:#ffbd4a; --st-watch-bg:#3f2e0c;
  --st-activated:#ff7b73; --st-activated-bg:#4a1a17;
  --st-recovery:#7fa8f0; --st-recovery-bg:#1a2b55;
  --bs-body-color:var(--ink); --bs-body-bg:var(--bg);
  --bs-link-color-rgb:170,190,255; --bs-link-hover-color-rgb:210,220,255;
  --bs-border-color:var(--line);
}
.status-strip{font-size:.95rem;font-weight:500;padding:.55rem 0;border-bottom:1px solid transparent}
.status-strip .dot{width:.6rem;height:.6rem;border-radius:50%;display:inline-block;margin-right:.5rem;vertical-align:-1px}
.status-strip .stlabel{font-weight:800;letter-spacing:.01em}
.status-strip a{color:inherit;font-weight:600}
[data-status=monitoring] .status-strip{background:var(--st-monitoring-bg);color:var(--st-monitoring)}
[data-status=monitoring] .status-strip .dot{background:var(--st-monitoring)}
[data-status=watch] .status-strip{background:var(--st-watch-bg);color:var(--st-watch)}
[data-status=watch] .status-strip .dot{background:var(--st-watch)}
[data-status=activated] .status-strip{background:var(--st-activated);color:#fff}
[data-status=activated] .status-strip .dot{background:#fff;animation:pulse 1.6s ease-in-out infinite}
[data-status=recovery] .status-strip{background:var(--st-recovery-bg);color:var(--st-recovery)}
[data-status=recovery] .status-strip .dot{background:var(--st-recovery)}
.status-strip .st-when{opacity:.85;font-weight:400}
.theme-toggle{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:.5rem;width:38px;height:38px;display:grid;place-items:center}
.theme-toggle svg{width:18px;height:18px}
.theme-toggle .moon{display:none}
[data-bs-theme=dark] .theme-toggle .sun{display:none}
[data-bs-theme=dark] .theme-toggle .moon{display:block}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.skip-link{position:absolute;left:-9999px;top:0;z-index:2000;background:var(--coalition);color:#fff;padding:.6rem 1rem;font-weight:700;border-radius:0 0 .5rem 0}
.skip-link:focus{left:0}
#main:focus{outline:none}
@media (prefers-reduced-motion:reduce){[data-status=activated] .status-strip .dot{animation:none}}
