/* Shared header, menu and accessibility buttons for the standalone pages
   (About, report pages). Matches the header of the main site. */
:root{--forest-dark:#1B4332;--forest-mid:#2D6A4F;--forest-light:#52B788;--amber-bright:#F4A261;--slate-dark:#2B2D42}
/* ── Site header (same as the main site) ─────────────────────────────────── */
.app-header{background:linear-gradient(135deg,var(--forest-dark) 0%,var(--forest-mid) 100%);color:#fff;padding:10px 24px 0;box-shadow:0 8px 24px rgba(0,0,0,.15);position:sticky;top:0;z-index:1000}
.header-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px}
.header-title{display:flex;align-items:center;gap:10px;min-width:0;text-decoration:none;color:#fff}
.header-logo-img{width:44px;height:44px;border-radius:6px;display:block;flex-shrink:0}
.header-text{min-width:0}
.header-text .h{font-family:'Josefin Sans',sans-serif;font-size:19px;font-weight:800;letter-spacing:.6px;line-height:1.15;text-transform:uppercase;margin:0}
.header-text p{font-size:12px;margin:1px 0 0;opacity:.9}
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.header-support{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;color:var(--forest-dark);text-decoration:none;background:var(--amber-bright);padding:6px 12px;border-radius:999px;font-weight:700;white-space:nowrap;box-shadow:0 1px 4px rgba(0,0,0,.15);font-family:'Josefin Sans',sans-serif}
#hc-btn,#at-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:5px 10px;min-height:34px;border-radius:999px;border:2px solid rgba(255,255,255,.5);background:transparent;color:#fff;cursor:pointer;font-family:'Josefin Sans',sans-serif;letter-spacing:.5px;white-space:nowrap}
#hc-btn:hover,#at-btn:hover{background:rgba(255,255,255,.15)}
body.large-text #at-btn{background:#fff;color:var(--forest-dark);border-color:#fff}
#section-nav{border-top:1px solid rgba(255,255,255,.12);overflow-x:auto;scrollbar-width:none;margin:8px -24px 0}
#section-nav::-webkit-scrollbar{display:none}
.snav-inner{display:flex;max-width:1400px;margin:0 auto;padding:0 16px;gap:2px}
.snav-btn{font-family:'Josefin Sans',sans-serif;font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:rgba(255,255,255,.6);border-bottom:3px solid transparent;padding:10px 13px 7px;white-space:nowrap;text-decoration:none;display:inline-flex;align-items:center}
.snav-btn:hover{color:rgba(255,255,255,.9);background:rgba(255,255,255,.07)}
.snav-btn.snav-active{color:var(--amber-bright);border-bottom-color:var(--amber-bright)}
@media (max-width:768px){
  .app-header{padding:8px 12px 0;position:relative}
  .header-logo-img{width:34px;height:34px;border-radius:5px}
  .header-text .h{font-size:15px;letter-spacing:.3px;white-space:nowrap}
  .header-text p{display:none}
  .header-actions{gap:6px}
  #hc-btn .lbl,#at-btn .lbl,.header-support .lbl{display:none}
  #hc-btn,#at-btn{padding:5px 8px}
  .header-support{padding:5px 9px}
  #section-nav{margin:6px -12px 0}
  .snav-inner{padding:0 4px}
  .snav-btn{padding:9px 10px 6px}
}
@media (max-width:360px){.header-text .h{font-size:13.5px}}

/* ── Accessibility modes (same buttons as the main site) ─────────────────── */
body.large-text{zoom:1.25}
@media (max-width:700px){body.large-text .app-header{zoom:.8}}
@supports not (zoom:1){body.large-text{font-size:18px}}
body.high-contrast{background:#fff;color:#000}
body.high-contrast .app-header{background:#000!important;box-shadow:none;border-bottom:3px solid #ffdd00}
body.high-contrast .header-support{background:#ffdd00;color:#000}
body.high-contrast .snav-btn{color:#fff}
body.high-contrast .snav-btn.snav-active{color:#ffdd00;border-bottom-color:#ffdd00}
body.high-contrast #hc-btn{background:#ffdd00;color:#000;border-color:#ffdd00}
body.high-contrast.large-text #at-btn{background:#ffdd00;color:#000;border-color:#ffdd00}
body.high-contrast :focus-visible{outline:3px solid #000;outline-offset:2px;box-shadow:0 0 0 6px #ffdd00}
body.high-contrast .app-header :focus-visible{outline-color:#ffdd00;box-shadow:none}
