/* ============================================================
   BOMBERS THEME — WHITE
   White is the DEFAULT (set in the markup). Bombers Blue = theme.css. White = white / light-gray
   grounds, navy type, blue accents. The header and footer stay navy in
   both modes, and so do the photo-led heroes (white type on photography).
   Loaded LAST on every page (after theme.css, and after inner.css on the
   inner pages), so equal-specificity rules here win.
   ============================================================ */

/* ---- light token set ---------------------------------------------------
   Note: --white is the site's FOREGROUND token (body text), so in White it
   becomes navy. Anything that must stay literally white (text on a blue
   button, on a photo) is restated below. */
[data-theme="white"] {
  color-scheme: light;
  --bg-primary:   #ffffff;
  --bg-secondary: #F3F5F8;
  --bg-deep:      #EEF2F7;
  --bg-card:      #ffffff;
  --bg-surface:   #E6EDF7;

  --white:     #07172F;
  --off-white: #24344F;
  --muted:     #56677F;

  --bomber-blue:        #1E5FCC;
  --bomber-blue-bright: #2E72E6;
  --bomber-blue-glow:   rgba(30,95,204,0.22);
  --accent:     #1E5FCC;
  --accent-mid: #1E5FCC;

  --border:      rgba(7,23,47,0.12);
  --border-blue: rgba(30,95,204,0.32);

  --ev-card-bg:     #ffffff;
  --ev-card-border: rgba(7,23,47,0.12);
  --ev-card-hover:  rgba(30,95,204,0.55);
  --btw-card-bg:      #ffffff;
  --btw-card-border:  rgba(7,23,47,0.14);
  --btw-strip-bg:     #F3F5F8;
  --btw-strip-border: rgba(7,23,47,0.12);

  /* navy header + footer in both modes */
  --bg-mobile-menu:   #ffffff;   /* drawers follow the theme (header stays navy) */
  --nav-gradient-top: linear-gradient(to bottom, rgba(4,13,32,0.97) 0%, rgba(4,13,32,0) 100%);
  --bg-nav-scrolled:  rgba(5,17,42,0.97);
  --bg-mobile-menu:   rgba(4,13,34,0.985);
  --footer-bg:        #050f24;
}

/* ---- dark islands: navy chrome + photo-led sections (hero, About Mississippi,
   final CTA — white type on photography) + the LED scoreboard keep Bombers Blue ---- */
[data-theme="white"] :is(#nav, .site-footer, .sticky-register, .ip-hero, .section-hero, .section-about, .section-register, .scoreboard, .gc-head, .ip-curtain) {
  color-scheme: dark;
  --bg-primary:   #050f24;
  --bg-secondary: #08183a;
  --bg-deep:      #030a1a;
  --bg-card:      #0c2149;
  --bg-surface:   #123063;
  --white:     #ffffff;
  --off-white: #e6eefc;
  --muted:     #8FAAD6;
  --bomber-blue:        #2E86FF;
  --bomber-blue-bright: #57A0FF;
  --bomber-blue-glow:   rgba(70,150,255,0.55);
  --accent:     #6FB3FF;
  --accent-mid: #2E86FF;
  --border:      rgba(140,185,255,0.16);
  --border-blue: rgba(70,150,255,0.45);
  color: var(--white);
}
/* the header is navy from the first pixel, not only once scrolled */
[data-theme="white"] #nav { background: var(--bg-nav-scrolled); }
[data-theme="white"] .site-footer { background: var(--footer-bg); }

/* the floating particle field is white dots — invisible on white grounds */
[data-theme="white"] #particle-canvas { opacity: 0.35; }

/* ---- shared: text on blue stays white ---------------------------------- */
[data-theme="white"] .btn-blue,
[data-theme="white"] .btn-blue:hover { color: #ffffff; }
[data-theme="white"] .btn-outline:hover { background: var(--white); color: #ffffff; }

/* =========================================================================
   HOMEPAGE — desktop / tablet sections (≥641px; phones have their own block)
   ========================================================================= */
/* events */
[data-theme="white"] .section-events { background: var(--bg-secondary); }
[data-theme="white"] .events-tagline { color: var(--muted); }
[data-theme="white"] .events-title em,
[data-theme="white"] .ev-name em,
[data-theme="white"] .ev-num { color: var(--accent); text-shadow: none; }
[data-theme="white"] .ev-card { box-shadow: 0 1px 2px rgba(7,23,47,0.06), 0 10px 26px rgba(7,23,47,0.08); }
[data-theme="white"] .ev-name { color: #ffffff; }            /* sits on the card photo */
[data-theme="white"] .ev-num { color: #6FB3FF; }              /* sits on the card photo */
[data-theme="white"] .ev-meta { color: var(--white); }
[data-theme="white"] .ev-ico { color: var(--accent); }
[data-theme="white"] .ev-meta-rule { background: var(--border); }
[data-theme="white"] .ev-tag { color: var(--accent); background: rgba(30,95,204,0.08); border-left-color: var(--accent); }
[data-theme="white"] .ev-btn-ghost,
[data-theme="white"] .ev-btn-outline { color: var(--white); border-color: rgba(7,23,47,0.28); }
[data-theme="white"] .ev-btn-ghost:hover,
[data-theme="white"] .ev-btn-outline:hover { border-color: var(--accent); background: rgba(30,95,204,0.08); }
[data-theme="white"] .why-head h3 { color: var(--accent); }
[data-theme="white"] .why-item { border-left-color: var(--border); }
[data-theme="white"] .why-ico { color: var(--accent); }
[data-theme="white"] .why-body h4 { color: var(--white); }
[data-theme="white"] .why-body p { color: var(--muted); }
[data-theme="white"] .badge-watermark { opacity: 0.06; }

/* built to win */
[data-theme="white"] .section-btw { background: var(--bg-primary); }
[data-theme="white"] .section-btw::before { display: none; }
[data-theme="white"] .btw-eyebrow { color: var(--accent); }
[data-theme="white"] .btw-headline { color: var(--white); background: none; -webkit-text-fill-color: currentColor; }
[data-theme="white"] .btw-copy { color: var(--white); }
[data-theme="white"] .btw-copy em,
[data-theme="white"] .btw-legacy em,
[data-theme="white"] .btw-strip-head h3,
[data-theme="white"] .btw-point-s,
[data-theme="white"] .btw-star,
[data-theme="white"] .btw-point-ico,
[data-theme="white"] .btw-strip-ico { color: var(--accent); }
[data-theme="white"] .btw-point { border-left-color: var(--border); }
[data-theme="white"] .btw-point-t { color: var(--white); }
[data-theme="white"] .btw-rule { background: var(--border-blue); }
[data-theme="white"] .btw-hero, [data-theme="white"] .btw-side-card { box-shadow: 0 1px 2px rgba(7,23,47,0.06), 0 10px 26px rgba(7,23,47,0.08); }
/* main photo is shown whole on the card ground — caption sits on that ground, not on a scrim */
[data-theme="white"] .btw-hero::before { display: none; }
[data-theme="white"] .btw-kicker { color: var(--muted); text-shadow: none; }
[data-theme="white"] .btw-cap-title { color: var(--white); text-shadow: none; }
[data-theme="white"] .btw-cap-title em { color: var(--accent); }
[data-theme="white"] .btw-strip-item { border-left-color: var(--border); }
[data-theme="white"] .btw-strip-item h4 { color: var(--white); }
[data-theme="white"] .btw-strip-item p { color: var(--muted); }
[data-theme="white"] .btw-legacy { color: var(--white); border-top-color: var(--border); }
[data-theme="white"] .btw-legacy-b { color: var(--accent); border-color: var(--accent); }

/* exposure / nation / about */
[data-theme="white"] .section-exposure { background: var(--bg-secondary); }
[data-theme="white"] .section-headline em.blue,
[data-theme="white"] .section-label { color: var(--accent); }
[data-theme="white"] .exp-all { color: var(--accent); }
[data-theme="white"] .college-logo { color: var(--off-white); border-right-color: var(--border); }
[data-theme="white"] .section-nation { background: var(--bg-primary); }
[data-theme="white"] .commit-sub { color: rgba(255,255,255,0.88); }
[data-theme="white"] .tile-commitment { background: #1E5FCC; }
[data-theme="white"] .tile-commitment .commit-text,
[data-theme="white"] .tile-commitment .commit-name { color: #ffffff; }
[data-theme="white"] .social-icon { color: var(--white); border-color: var(--border); }

/* =========================================================================
   HOMEPAGE — phone layout (≤640px). Colour only: no geometry changes here.
   Events + exposure are already light; Built to Win and the gallery turn
   white; the Mississippi story becomes a full-bleed navy band so the neon
   map still reads; the blue invitation and navy header/footer stay.
   ========================================================================= */
@media (max-width: 640px) {
  [data-theme="white"] body.home .section-btw,
  [data-theme="white"] body.home .section-nation { background: #ffffff; color: var(--m-ink); }
  [data-theme="white"] .m-btw .m-eyebrow { color: var(--m-blue-ink); }
  [data-theme="white"] .m-champ figcaption { border-bottom-color: rgba(7,23,47,0.12); }
  [data-theme="white"] .m-champ span { color: var(--m-ink-2); }
  [data-theme="white"] .m-result figcaption { color: var(--m-ink); }
  [data-theme="white"] .m-nation .m-lead { color: var(--m-ink-2); }
  [data-theme="white"] .m-nation .m-h2 em { color: var(--m-blue-ink); }
  [data-theme="white"] .m-gal-grid figcaption { color: var(--m-ink); }
  /* full-bleed navy band without touching layout: paint past the side padding */
  [data-theme="white"] body.home .m-ms {
    background: var(--m-navy); color: #ffffff; border-top-color: transparent;
    box-shadow: 0 0 0 100vmax var(--m-navy); clip-path: inset(0 -100vmax);
  }
}

/* =========================================================================
   INNER PAGES (generated by tools/build_inner.py; styles in inner.css)
   ========================================================================= */
[data-theme="white"] .tb-search { background: #ffffff; }
[data-theme="white"] .fld input,
[data-theme="white"] .fld select,
[data-theme="white"] .fld textarea { color-scheme: light; background: #ffffff; border-color: rgba(7,23,47,0.22); }
[data-theme="white"] .fld input:focus,
[data-theme="white"] .fld select:focus,
[data-theme="white"] .fld textarea:focus { border-color: var(--accent); }
[data-theme="white"] .fld select option { background: #ffffff; color: #07172F; }
[data-theme="white"] .rf-done { color: #1B7A3D; }
/* Game Center section ground follows the page; its panel is white in both themes */
[data-theme="white"] .gc { background: #F3F5F8; }

