/* Bandwagon Boys v15.69 — global Dark/Light theme layer.
   Dark is intentionally the existing site with no visual overrides.
   Light keeps the same UI/layout and only changes presentation. */

html{color-scheme:dark}
html[data-theme="light"]{
  color-scheme:light;
  --bg:#e8e3d8;
  --panel:#f8f4ea;
  --panel2:#eee7da;
  --text:#182427;
  --muted:#5d6968;
  --teal:#0f7f77;
  --line:rgba(31,47,47,.18);
  --shadow:0 20px 60px rgba(46,39,28,.15);
}

/* ---------- theme switch ---------- */
.bbw-theme-toggle{
  appearance:none;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:54px;
  height:38px;
  padding:0;
  margin:0;
  border:1px solid rgba(255,255,255,.20);
  background:#0b1719;
  border-radius:999px;
  cursor:pointer;
  position:relative;
  z-index:80;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.bbw-theme-toggle:hover{border-color:rgba(20,184,177,.68);box-shadow:0 0 0 3px rgba(20,184,177,.08)}
.bbw-theme-toggle-track{position:relative;width:44px;height:26px;display:block}
.bbw-theme-toggle-track i{
  position:absolute;
  top:3px;
  left:3px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#eef2ee;
  box-shadow:0 2px 8px rgba(0,0,0,.34);
  transition:transform .2s ease,background .2s ease;
  z-index:2;
}
.bbw-theme-icon{position:absolute;top:50%;transform:translateY(-52%);font:700 12px/1 Arial,sans-serif;z-index:1;pointer-events:none}
.bbw-theme-sun{left:6px;color:#d6a93d}
.bbw-theme-moon{right:6px;color:#b9cdcf}
.bbw-theme-toggle[data-mode="light"] .bbw-theme-toggle-track i{transform:translateX(18px);background:#fff8df}
html[data-theme="light"] .bbw-theme-toggle{background:#f0eadf;border-color:rgba(29,52,52,.24)}
html[data-theme="light"] .bbw-theme-moon{color:#768485}
html[data-theme="light"] .bbw-theme-sun{color:#b78117}

/* ---------- global light shell ---------- */
html[data-theme="light"] body:not(.bbw-gameday-art-light){
  background:#e8e3d8;
  color:#182427;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .shell{
  background:radial-gradient(circle at 20% 0%,rgba(15,127,119,.08),transparent 36%),#e8e3d8;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .topbar,
html[data-theme="light"] body:not(.bbw-gameday-art-light).v11 .topbar,
html[data-theme="light"] body:not(.bbw-gameday-art-light).archive-surface .topbar{
  background:rgba(248,244,234,.96)!important;
  border-bottom-color:rgba(31,47,47,.18)!important;
  box-shadow:0 5px 18px rgba(35,43,41,.07);
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .brand{color:#172326!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .topnav a{color:#586563!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .topnav a:hover,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .topnav a.active,
html[data-theme="light"] body:not(.bbw-gameday-art-light).v11 .topnav a.active{
  color:#0c4945!important;
  border-color:rgba(15,127,119,.38)!important;
  background:rgba(15,127,119,.09)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .nav-badge{box-shadow:0 0 0 2px #f8f4ea}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .office-utility-link{
  color:#26403e!important;
  border-color:rgba(31,47,47,.23)!important;
  background:rgba(255,255,255,.48)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .office-utility-link:hover{background:#e5eee9!important;border-color:#0f7f77!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-menu>summary{
  background:#f8f4ea!important;
  color:#263432!important;
  border-color:rgba(31,47,47,.22)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-menu[open]>summary,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-menu>summary:hover{background:#173e3b!important;color:#fff!important;border-color:#173e3b!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-pop{
  background:#fbf7ee!important;
  color:#1d2b2c!important;
  border-color:rgba(31,47,47,.22)!important;
  box-shadow:0 18px 48px rgba(44,39,28,.18)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-pop>span,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .global-auth-pop .auth-note{color:#62706e!important}

html[data-theme="light"] body:not(.bbw-gameday-art-light) .footer{
  color:#62706e!important;
  border-top-color:rgba(31,47,47,.16)!important;
  background:rgba(244,239,228,.82);
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page-title{border-bottom-color:rgba(31,47,47,.18)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page-title h1,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page h1:not(.gameday-family-hero h1),
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page h2,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page h3{color:#182427}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .page-title p,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .lede,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .note{color:#5c6866!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .kicker,
html[data-theme="light"] body:not(.bbw-gameday-art-light) .tag{color:#0f7f77}

/* ---------- common surfaces ---------- */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(
  .card,.story,.standings,.teamcard,.post,.composer,.stat-box,.h2h,.panel,.rival-cards article,
  .archive-article,.office-story-row,.auth-bar,.trade-row,.champ-card,.lead-story,.lead-story-copy,
  .room-card,.loading-card,.error-card,.empty-state,.modal-x,.password-recovery-card,
  [class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]
){
  background-color:rgba(250,247,239,.95)!important;
  border-color:rgba(42,55,53,.18)!important;
  color:#1c292a;
  box-shadow:0 8px 24px rgba(48,41,29,.09);
}
/* Flatten dark gradients on card/panel components without disturbing image-backed heroes. */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(
  .card,.teamcard,.stat-box,.champ-card,
  [class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]
){background-image:linear-gradient(180deg,rgba(255,253,248,.97),rgba(244,239,228,.97))!important}

html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.card,.story,.teamcard,.post,.panel,.room-card,.stat-box,.trade-row,.champ-card,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]) :is(h1,h2,h3,h4,h5,h6,summary,strong,b){color:#1b292a}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.card,.story,.teamcard,.post,.panel,.room-card,.stat-box,.trade-row,.champ-card,[class$="-card"],[class*="-card "],[class$="-panel"],[class*="-panel "]) :is(p,small){color:#5b6866}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.record,.value,[class*="score"],[class*="record"]){color:#172526}

/* Forms */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(input,textarea,select){
  background:#fffdf8;
  color:#172526;
  border-color:rgba(35,52,51,.22);
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.composer input,.composer textarea,.login-form input,.newsroom-form-panel input,.newsroom-form-panel textarea,.press-publisher-panel input,#v1549-franchise-select,.identity-actions input,.identity-actions select,.v153-franchise-claim-actions input,.v153-franchise-claim-actions select){
  background:#fffdf8!important;
  color:#172526!important;
  border-color:rgba(35,52,51,.22)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) ::placeholder{color:#8c9692}

/* Tables / list rows */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.standings,.profile-table,.nfl-stat-table,.h2h-matrix-v11,.prediction-history-table){background:rgba(250,247,239,.96)!important;color:#22302f!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(th,td){border-color:rgba(38,52,50,.14)}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(th){color:#596764}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.draft-row>div,.extremes>div,.book-sides>section,.book-comments p,.storyline-locked,.v12-total-line,.v1556-sixty article,.v1556-recap-awards article,.survivor-member,.trail-chip,.composer-slot,.weekly-composer-existing,.weekly-take-form,.take-reactions button,.war-state-legend>div,.loadout-pickers details,.loadout-pickers summary){
  background:#f4efe5!important;
  color:#263432!important;
  border-color:rgba(38,52,50,.14)!important;
}

/* Tabs and section selectors */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.year-tab,.v12-week-tabs button,.v12-award-weekbar button,.book-view-tabs button,.prediction-history-tabs button,.nfl-detail-tabs button,.nfl-team-tabs button,.hot-view-toggle button,.war-view-controls button,.v1551-team-picker button){
  background:#f6f1e7!important;
  color:#586663!important;
  border-color:rgba(34,52,50,.20)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.year-tab:hover,.year-tab.active,.v12-week-tabs button.active,.v12-award-weekbar button.active,.book-view-tabs button.active,.prediction-history-tabs button.active,.nfl-detail-tabs button.active,.nfl-team-tabs button.active,.v1551-team-picker button.active){
  background:#176d69!important;
  color:#fff!important;
  border-color:#176d69!important;
}

/* Destination pages: retain their background art, but let content read as Light UI. */
html[data-theme="light"] body:not(.bbw-gameday-art-light).destination-surface:before{background:rgba(244,239,227,.18)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.destination-hero,.room-hero,.storyline-stage,.nfl-score-hero,.book-intro,.bet-stats-hero,.rep-intro .panel,.rep-formula){
  background:rgba(249,246,238,.90)!important;
  border-color:rgba(38,52,50,.20)!important;
  color:#172526!important;
  box-shadow:0 12px 34px rgba(41,36,25,.10)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.destination-hero,.room-hero,.storyline-stage,.nfl-score-hero,.book-intro,.bet-stats-hero) :is(h1,h2,h3,p){color:#20302f!important}
/* GameDay's open stadium hero is intentionally unchanged in both modes. */
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 .gameday-family-hero{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 .gameday-family-hero h1{color:#fbf5e8!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 .gameday-family-hero .kicker{color:#dcebea!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 .gameday-family-hero p{color:#edf3ef!important}

/* GameDay / games */
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 :is(.room-tabs,.gameday-subtabs,.v1532-week-strip,.gameday-brief,.gameday-board,.league-pulse,.reaction-zone,.motw-stage){
  background:rgba(248,244,234,.92)!important;
  border-color:rgba(33,52,49,.20)!important;
  color:#20302f!important;
  box-shadow:0 10px 26px rgba(44,38,27,.10)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 :is(.room-tabs a,.gameday-subtabs a){color:#4e5d5a!important;border-color:rgba(33,52,49,.18)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light).gameday-family-v154 :is(.room-tabs a:hover,.room-tabs a.active,.gameday-subtabs a:hover,.gameday-subtabs a.active){background:#176d69!important;color:#fff!important;border-color:#176d69!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .v1532-week-links a,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .gameday-matchup-card,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .gameday-matchup-card.featured{
  background:linear-gradient(180deg,rgba(255,253,248,.96),rgba(239,234,222,.96))!important;
  color:#20302f!important;
  border-color:rgba(33,52,49,.18)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .v1555-lineup-breakdown,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .v1555-lineup-side,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .intel-dialog,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .intel-kpis>div,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .intel-notes article,
html[data-theme="light"] body:not(.bbw-gameday-art-light).this-week-overview .intel-trades a{
  background:#f8f4ea!important;
  color:#21302f!important;
  border-color:rgba(33,52,49,.18)!important;
}

/* Live video stays a dark screen/hardware surface even in Light mode. */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.gdl-video-stage,.gdl-mini-video-home,.gdl-browse-shell,.gdl-browse-shell iframe){background:#05080b!important;color:#f4f6f4!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.gdl-livebar,.gdl-pin-bar,.gdl-pin-editor,.gdl-scoreboard,.gdl-room-context,.gdl-mini){background:rgba(249,246,238,.95)!important;color:#20302f!important;border-color:rgba(35,52,50,.20)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .gdl-stage-empty :is(h2,p,span){color:#f4f6f4!important}

/* Trade / GM / reputation surfaces */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.trade-shell-v1544,.trade-panel-v1544,.v1559-section-intro,.v1559-kpi-grid article,.v1559-feature-panel,.v1559-subfile,.v1559-position-board,.v1559-core,.v1559-picks,.v1559-roster-group,.rep-card,.rep-profile-hero,.rep-kpi,.rep-panel){
  background:rgba(249,246,238,.94)!important;
  color:#20302f!important;
  border-color:rgba(35,52,50,.18)!important;
}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.trade-tabs-v1544 a,.teams-room-nav a){color:#52615e!important;background:rgba(246,241,231,.86)!important;border-color:rgba(35,52,50,.17)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.trade-tabs-v1544 a.active,.trade-tabs-v1544 a:hover,.teams-room-nav a.active,.teams-room-nav a:hover){background:#176d69!important;color:#fff!important}

/* Forum / archive / office */
html[data-theme="light"] body:not(.bbw-gameday-art-light).surface-forum-v10 :is(.forum-shell-v10,.forum-board-v10,.forum-thread-view),
html[data-theme="light"] body:not(.bbw-gameday-art-light).office-surface-v12 :is(.panel,.legacy-admin-panel,.office-manager-v12,#franchise-claim-admin){background:rgba(249,245,236,.96)!important;color:#20302f!important;border-color:rgba(42,52,48,.20)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .archive-surface .page{background:rgba(244,240,230,.93)}

/* Overlays should remain dimmers; modal content itself becomes light via panel/card rules. */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.modal-shell,.breaking-overlay,.press-overlay,.matchup-intel-modal,.password-recovery-shell){background:rgba(24,31,30,.58)!important}

/* Home page keeps cinematic hero contrast; only its dashboard card switches. */
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero :is(.hero-copy,.menu a,.menu a span,.menu a em,.hero h1){color:inherit}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .hero-copy{color:#d7dfdd!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .menu a{color:#e8efed!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .menu a span:first-child{color:#93a8a4!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .menu a em{color:#8ca09d!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .scorebug{background:rgba(248,244,234,.93)!important;color:#20302f!important;border-color:rgba(255,255,255,.34)!important}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .hero .scorebug :is(h3,p,span){color:#263433!important}

/* Buttons: primary accents stay intentionally strong. */
html[data-theme="light"] body:not(.bbw-gameday-art-light) :is(.btn,button.selected,button.active,[aria-pressed="true"]):not(.bbw-theme-toggle){border-color:rgba(15,127,119,.35)}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .btn{background:#0f7f77;color:#fff}
html[data-theme="light"] body:not(.bbw-gameday-art-light) .btn.ghost{background:#f7f2e8!important;color:#24413e!important;border:1px solid rgba(35,52,50,.20)!important}

@media(max-width:900px){
  .bbw-theme-toggle{width:48px;height:36px}
  .bbw-theme-toggle-track{width:40px}
  .bbw-theme-toggle-track i{width:19px;height:19px;top:3.5px}
  .bbw-theme-toggle[data-mode="light"] .bbw-theme-toggle-track i{transform:translateX(15px)}
}
@media(max-width:620px){
  .bbw-theme-toggle{width:42px;height:34px}
  .bbw-theme-toggle-track{width:36px;height:24px}
  .bbw-theme-toggle-track i{width:18px;height:18px;top:3px}
  .bbw-theme-toggle[data-mode="light"] .bbw-theme-toggle-track i{transform:translateX(12px)}
  .bbw-theme-sun{left:4px;font-size:10px}.bbw-theme-moon{right:4px;font-size:10px}
}
