/* ═══════════════════════════════════════════════════════════════
   T31g — OBX Academy dark mode.
   Scoped to html[data-theme="dark"] .academy-stage so ONLY the
   Academy pages go dark; the public site and portal stay light.
   Palette: deep navy #0B1B2B background, ivory text, Bodoni
   headings, brass #C6A664 accents only, hairline borders, same grid.
   Loaded after obx-academy-hs.css so it wins the cascade.
   Light mode = the house design from T31a (this file only acts
   when data-theme="dark" is set on <html>).
   ═══════════════════════════════════════════════════════════════ */

:root {
  --ac-brass: #C6A664;    /* brass accent (spec #C6A664) — defined on :root so it
                             resolves in every component (cards, buttons, fills). */
  --ac-brass-strong: #D8B878; /* brass, brighter for small type on navy (AA) */
  --ac-ivory: #F2EEE3;     /* primary text on navy */
  --ac-ivory-80: rgba(242,238,227,.80);
  --ac-ivory-64: rgba(242,238,227,.64);
  --ac-ivory-48: rgba(242,238,227,.48);
  --ac-navy: #0B1B2B;
  --ac-navy-2: #122438;    /* raised surface (cards, chips) */
  --ac-navy-3: #1B3049;    /* hover / selected fill */
  --ac-line-d: rgba(242,238,227,.16); /* hairline on navy */
  --ac-line-d-strong: rgba(242,238,227,.30);
  --ac-green: #7BC89A;     /* "certified / passed" on navy (AA) */
  --ac-red: #D8917E;       /* fail accent on navy (AA) */
}

html[data-theme="dark"] .academy-stage {
  /* Re-point the house tokens for the stage so any var() consumers flip too. */
  --obx-white: var(--ac-navy);
  --obx-paper: var(--ac-navy-2);
  --obx-hairline: var(--ac-line-d);
  --tc: var(--ac-ivory);
  --ac-ink: var(--ac-ivory);
  --ac-ink-2: var(--ac-ivory-80);
  --ac-ink-3: var(--ac-ivory-64);
  background: var(--ac-navy);
  color: var(--ac-ivory);
}
html[data-theme="dark"] .academy-stage a { color: var(--ac-brass-strong); text-underline-offset: 3px; }
html[data-theme="dark"] .academy-stage a:hover { color: var(--ac-ivory); }

/* ── Section heads ───────────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .ac-num {
  color: var(--ac-brass-strong);
  border-color: var(--ac-line-d);
  background: transparent;
}
html[data-theme="dark"] .academy-stage .ac-h2 { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-h2-sub { color: var(--ac-ivory-80); }

/* ── Track cards (home) ──────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .ac-track-card {
  background: var(--ac-navy-2);
  border-color: var(--ac-line-d);
}
html[data-theme="dark"] .academy-stage .ac-track-card:hover { border-color: var(--ac-brass); }
html[data-theme="dark"] .academy-stage .ac-track-icon {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-brass-strong);
}
html[data-theme="dark"] .academy-stage .ac-track-icon svg { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-track-arrow { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-track-card:hover .ac-track-arrow { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-track-name { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-track-tag { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-track-counts { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-track-counts .dot { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-track-pill { background: var(--ac-brass); color: #0B1B2B; }
html[data-theme="dark"] .academy-stage .ac-track-progress { background: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-track-progress .fill { background: var(--ac-brass); }

/* ── Track overview (home) ───────────────────────────────────── */
html[data-theme="dark"] .academy-stage .ac-track-banner {
  background: var(--ac-navy-2); border-color: var(--ac-line-d); border-left-color: var(--ac-brass);
}
html[data-theme="dark"] .academy-stage .ac-track-banner-icon {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-brass-strong);
}
html[data-theme="dark"] .academy-stage .ac-track-banner-icon svg { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-track-banner-name { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-track-banner-tag { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-track-banner-meta { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-teaser-course { border-bottom-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-teaser-course:hover { background: rgba(242,238,227,.05); }
html[data-theme="dark"] .academy-stage .ac-teaser-num { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-teaser-title { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-teaser-desc { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-teaser-course .chip {
  color: var(--ac-ivory-80); border-color: var(--ac-line-d); background: var(--ac-navy-3);
}
html[data-theme="dark"] .academy-stage .ac-teaser-arrow { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-teaser-lock {
  border-color: var(--ac-line-d); color: var(--ac-ivory-80);
}
html[data-theme="dark"] .academy-stage .ac-teaser-lock svg { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-teaser-lock-link { color: var(--ac-brass-strong); }

/* ── CTA band: already ink/white, keep; brass focus states ───── */
html[data-theme="dark"] .academy-stage .ac-cta .btn:hover { border-color: var(--ac-brass); }

/* ── Track page ──────────────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .ac-back-link { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-back-link:hover { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-eyebrow { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-title-sm { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-lead-sm { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-track-page-meta { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-track-page-meta .dot { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-track-page-meta span {
  border-color: var(--ac-line-d) !important; color: var(--ac-ivory-80);
}

html[data-theme="dark"] .academy-stage .ac-tier-chip {
  background: var(--ac-navy-2); border-color: var(--ac-line-d);
}
html[data-theme="dark"] .academy-stage .ac-tier-chip:hover {
  background: var(--ac-navy-3); border-color: var(--ac-brass);
}
html[data-theme="dark"] .academy-stage .tc-num { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-tier-chip .tc-name,
html[data-theme="dark"] .academy-stage .ac-tier-nav .tc-name { color: var(--ac-ivory) !important; }
html[data-theme="dark"] .academy-stage .ac-tier-chip .tc-count,
html[data-theme="dark"] .academy-stage .ac-tier-nav .tc-count { color: var(--ac-ivory-64); }

html[data-theme="dark"] .academy-stage .ac-tier-block { border-top-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-tier-icon {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-brass-strong);
}
html[data-theme="dark"] .academy-stage .ac-tier-icon svg { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-tier-label,
html[data-theme="dark"] .academy-stage .ac-tier-block .ac-tier-label { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-tier-name { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-tier-desc { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-tier-meta { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-tier-meta .dot { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-tier-cert { border-top-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-tier-cert-head { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-tier-cert-count { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-tier-progress { background: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-tier-progress .fill { background: var(--ac-brass); }
html[data-theme="dark"] .academy-stage .ac-tier-done { color: var(--ac-green); }

html[data-theme="dark"] .academy-stage .ac-course-row { border-bottom-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-course-row:hover { background: rgba(242,238,227,.05); }
html[data-theme="dark"] .academy-stage .ac-course-num { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-course-title { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .ac-badge-green { color: var(--ac-green); background: rgba(123,200,154,.12); }
html[data-theme="dark"] .academy-stage .ac-badge-muted { color: var(--ac-ivory-48); border-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .ac-course-sub { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .ac-course-meta { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .ac-course-meta .dot { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-course-chev { color: var(--ac-ivory-48); }
html[data-theme="dark"] .academy-stage .ac-tier-empty { border-color: var(--ac-line-d); color: var(--ac-ivory-80); }

/* ── Course page ─────────────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .cp-header {
  background: var(--ac-navy-2); border-color: var(--ac-line-d);
}
html[data-theme="dark"] .academy-stage .cp-header-icon {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-brass-strong);
}
html[data-theme="dark"] .academy-stage .cp-header-icon svg { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .cp-breadcrumb { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .cp-title { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-chip {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-ivory-80);
}
html[data-theme="dark"] .academy-stage .cp-chip-level { color: var(--ac-ivory); border-color: var(--ac-brass); }
html[data-theme="dark"] .academy-stage .cp-meta-line { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .cp-meta-line .dot { color: var(--ac-ivory-48); }

html[data-theme="dark"] .academy-stage .cp-toc-item { border-bottom-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-toc-item:hover { background: rgba(242,238,227,.05); }
html[data-theme="dark"] .academy-stage .cp-toc-num { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .cp-toc-label { color: var(--ac-ivory); }

html[data-theme="dark"] .academy-stage .cp-section-num {
  color: var(--ac-brass-strong); border-color: var(--ac-line-d); background: transparent;
}
html[data-theme="dark"] .academy-stage .cp-section-num-quiz {
  background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B;
}
html[data-theme="dark"] .academy-stage .cp-section-title { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-section-body p { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-section-body strong { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-section-body li { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-section-body h3,
html[data-theme="dark"] .academy-stage .cp-section-body h4 { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-section-body code { background: rgba(242,238,227,.12); color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-section-body blockquote {
  background: var(--ac-navy-2); border-left-color: var(--ac-brass); color: var(--ac-ivory);
}
/* callout (styles.css .cp-callout) */
html[data-theme="dark"] .academy-stage .cp-callout {
  background: var(--ac-navy-2); border: 1px solid var(--ac-line-d); border-left: 3px solid var(--ac-brass);
}
html[data-theme="dark"] .academy-stage .cp-callout .cp-callout-label { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .cp-callout p { color: var(--ac-ivory); }

html[data-theme="dark"] .academy-stage .cp-section-complete {
  color: var(--ac-ivory); border-color: var(--ac-line-d-strong);
}
html[data-theme="dark"] .academy-stage .cp-section-complete:hover { background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B; }
html[data-theme="dark"] .academy-stage .cp-section-complete:hover .cp-complete-check { color: #0B1B2B; }
html[data-theme="dark"] .academy-stage .cp-complete-check { color: var(--ac-brass-strong); }

html[data-theme="dark"] .academy-stage .cp-quiz-card {
  background: var(--ac-navy-2); border-color: var(--ac-line-d);
}
html[data-theme="dark"] .academy-stage .cp-quiz-card p { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-quiz-card .cp-quiz-sub { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .cp-quiz-card .btn {
  background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B;
}
html[data-theme="dark"] .academy-stage .cp-quiz-card .btn:hover { background: var(--ac-brass-strong); }

/* ── Quiz page ───────────────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .cp-quiz-progress-head { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .cp-quiz-progress-bar { background: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-quiz-progress-bar .fill { background: var(--ac-brass); }
html[data-theme="dark"] .academy-stage .qcard { background: var(--ac-navy-2); border-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-quiz-q { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-opt {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-ivory-80);
}
html[data-theme="dark"] .academy-stage .cp-opt:hover { border-color: var(--ac-brass); color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-opt-sel { border-color: var(--ac-brass); background: rgba(198,166,100,.14); color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-opt-sel .cp-opt-letter {
  background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B;
}
html[data-theme="dark"] .academy-stage .cp-opt-letter {
  background: var(--ac-navy-2); border-color: var(--ac-line-d); color: var(--ac-ivory-64);
}
html[data-theme="dark"] .academy-stage .cp-quiz-nav .btn {
  background: transparent; color: var(--ac-ivory); border-color: var(--ac-line-d-strong);
}
html[data-theme="dark"] .academy-stage .cp-quiz-nav .btn:hover { background: rgba(242,238,227,.08); }
html[data-theme="dark"] .academy-stage .cp-quiz-nav .btn--gold {
  background: var(--ac-brass) !important; border-color: var(--ac-brass) !important; color: #0B1B2B !important;
}
html[data-theme="dark"] .academy-stage .cp-quiz-nav .btn--gold:hover { background: var(--ac-brass-strong) !important; }

html[data-theme="dark"] .academy-stage .cp-result { background: var(--ac-navy-2); border-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-result-score { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-result-score.cp-pass { color: var(--ac-green); }
html[data-theme="dark"] .academy-stage .cp-result-score.cp-fail { color: var(--ac-red); }
html[data-theme="dark"] .academy-stage .cp-result-verdict { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-result-actions .btn {
  background: transparent; color: var(--ac-ivory); border-color: var(--ac-line-d-strong);
}
html[data-theme="dark"] .academy-stage .cp-result-actions .btn:hover { background: rgba(242,238,227,.08); }
html[data-theme="dark"] .academy-stage .cp-result-actions .btn--solid {
  background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B;
}
html[data-theme="dark"] .academy-stage .cp-result-actions .btn--solid:hover { background: var(--ac-brass-strong); }

html[data-theme="dark"] .academy-stage .cp-gate { background: var(--ac-navy-2); border-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-gate-icon {
  background: var(--ac-navy-3); border-color: var(--ac-line-d); color: var(--ac-brass-strong);
}
html[data-theme="dark"] .academy-stage .cp-gate-title { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-gate-copy { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-gate-actions .btn {
  background: transparent; color: var(--ac-ivory); border-color: var(--ac-line-d-strong);
}
html[data-theme="dark"] .academy-stage .cp-gate-actions .btn:hover { background: rgba(242,238,227,.08); }
html[data-theme="dark"] .academy-stage .cp-gate-actions .btn--solid {
  background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B;
}
html[data-theme="dark"] .academy-stage .cp-gate-actions .btn--solid:hover { background: var(--ac-brass-strong); }

html[data-theme="dark"] .academy-stage .cp-flash {
  background: rgba(198,166,100,.12); border-color: rgba(198,166,100,.45); color: var(--ac-brass-strong);
}

/* ── T31f progress box ───────────────────────────────────────── */
html[data-theme="dark"] .academy-stage .cp-progress {
  background: var(--ac-navy-2); border-color: var(--ac-line-d);
}
html[data-theme="dark"] .academy-stage .cp-progress__state { color: var(--ac-ivory-80); }
html[data-theme="dark"] .academy-stage .cp-progress__num { color: var(--ac-ivory); }
html[data-theme="dark"] .academy-stage .cp-progress__label { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .cp-progress__badge {
  border-color: var(--ac-line-d); color: var(--ac-ivory-64);
}
html[data-theme="dark"] .academy-stage .cp-progress__badge--pass {
  color: #0B1B2B; background: var(--ac-brass); border-color: var(--ac-brass);
}
html[data-theme="dark"] .academy-stage .cp-progress__badge--fail {
  color: var(--ac-red); border-color: rgba(216,145,126,.45);
}
html[data-theme="dark"] .academy-stage .cp-progress__badge--none { color: var(--ac-ivory-64); }
html[data-theme="dark"] .academy-stage .cp-progress__cta { border-top-color: var(--ac-line-d); }
html[data-theme="dark"] .academy-stage .cp-progress__hint { color: var(--ac-ivory-80); }

/* ── Hero stats card (over the page hero image) ──────────────── */
html[data-theme="dark"] .academy-stage .ac-hero-stats {
  background: rgba(11,27,43,.78); border-color: rgba(198,166,100,.4);
  backdrop-filter: blur(6px);
}
html[data-theme="dark"] .academy-stage .ac-stat { border-left-color: rgba(198,166,100,.35); }
html[data-theme="dark"] .academy-stage .ac-stat-n { color: var(--ac-brass-strong); }
html[data-theme="dark"] .academy-stage .ac-stat-l { color: var(--ac-ivory-80); }

/* ═══════════════════════════════════════════════════════════════
   Header in dark mode (Academy pages only — the header sits
   outside .academy-stage, so target it via the same html flag).
   The public site never sets data-theme="dark" outside Academy.
   ═══════════════════════════════════════════════════════════════ */
html[data-theme="dark"] .site-header {
  background: var(--ac-navy) !important;
  border-bottom-color: var(--ac-line-d);
  box-shadow: 0 1px 0 rgba(0,0,0,.3);
}
html[data-theme="dark"] .site-header .brand { color: var(--ac-ivory); }
html[data-theme="dark"] .site-header .brand__logo--dark { display: none; }
html[data-theme="dark"] .site-header .brand__logo--pearl { display: block; }
html[data-theme="dark"] .site-header nav a { color: var(--ac-ivory-80) !important; }
html[data-theme="dark"] .site-header nav a::after { background: var(--ac-brass-strong); }
html[data-theme="dark"] .site-header nav a:hover { color: var(--ac-brass-strong) !important; }
html[data-theme="dark"] .site-header .portal-link { color: var(--ac-ivory-80) !important; }
html[data-theme="dark"] .site-header .portal-link:hover { color: var(--ac-brass-strong) !important; }
html[data-theme="dark"] .site-header .btn-header-book {
  color: var(--ac-ivory) !important; border-color: var(--ac-line-d-strong);
}
html[data-theme="dark"] .site-header .btn-header-book:hover { background: var(--ac-brass); border-color: var(--ac-brass); color: #0B1B2B !important; }
html[data-theme="dark"] .site-header .nav-toggle svg { stroke: var(--ac-ivory); }
/* mobile dropdown */
html[data-theme="dark"] .site-header nav {
  background: var(--ac-navy); border-bottom-color: var(--ac-line-d);
  box-shadow: 0 12px 30px -18px rgba(0,0,0,.6);
}
html[data-theme="dark"] .site-header nav a { color: var(--ac-ivory-80) !important; }
html[data-theme="dark"] .site-header nav a.portal-link { color: var(--ac-brass-strong) !important; }

/* ── Sun/moon switch ─────────────────────────────────────────── */
.ac-theme-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; padding: 0; flex-shrink: 0;
  background: transparent; border: 1px solid var(--ac-line-d-strong); border-radius: 2px;
  color: var(--ac-ivory-80); cursor: pointer; line-height: 0;
  transition: border-color .2s var(--obx-ease, ease), color .2s, background .2s;
}
.ac-theme-toggle:hover { border-color: var(--ac-brass); color: var(--ac-brass-strong); background: rgba(198,166,100,.1); }
.ac-theme-toggle:focus-visible { outline: 2px solid var(--ac-brass); outline-offset: 2px; }
.ac-theme-toggle svg { width: 19px; height: 19px; display: none; }
/* Show the icon of the mode you would switch TO. */
html[data-theme="dark"] .ac-theme-toggle .ac-tt__sun { display: block; }  /* dark on → offer light (sun) */
html[data-theme="light"] .ac-theme-toggle .ac-tt__moon { display: block; } /* light on → offer dark (moon) */
/* T30y — the toggle is defined with dark-mode colors (ivory on navy), so in the
   LIGHT theme (white header) the moon was near-invisible (1.16:1). Force the
   light theme to ink with a solid border so it passes AA in both themes. */
html[data-theme="light"] .ac-theme-toggle {
  color: #0B1B2B !important;
  border-color: rgba(11,27,43,.35) !important;
  background: #fff !important;
}
html[data-theme="light"] .ac-theme-toggle:hover { border-color: #0B1B2B !important; background: rgba(11,27,43,.06) !important; }
@media (max-width: 900px) {
  .ac-theme-toggle { width: 44px; height: 44px; }
  .ac-theme-toggle svg { width: 20px; height: 20px; }
}

/* ── Reduced motion: no transitions ──────────────────────────── */
@media (prefers-reduced-motion: reduce) {
  .ac-theme-toggle { transition: none; }
}
