/* NBA Live Today PH v3.14.79 — authoritative sitewide Bootstrap theme controller.
   Dark is the product default; light is an audience option. Load this file LAST. */
:root,
html[data-bs-theme="dark"]{
  color-scheme:dark;
  --nlt-nav-bg:#1b2025;
  --nlt-nav-fg:#f8f9fa;
  --nlt-nav-muted:#d7dde5;
  --nlt-nav-hover:#ffffff;
  --nlt-nav-border:rgba(255,255,255,.12);
}
html[data-bs-theme="light"]{
  color-scheme:light;
  --nlt-nav-bg:#ffffff;
  --nlt-nav-fg:#111827;
  --nlt-nav-muted:#273244;
  --nlt-nav-hover:#0d6efd;
  --nlt-nav-border:#d9e0e8;
}
html,body{background-color:var(--bs-body-bg);color:var(--bs-body-color)}

/* One authoritative header/nav treatment, regardless of legacy navbar-dark/bg-dark classes. */
html[data-bs-theme] body .navbar,
html[data-bs-theme] body header .navbar,
html[data-bs-theme] body .navbar.bg-dark,
html[data-bs-theme] body .navbar.navbar-dark{
  background-color:var(--nlt-nav-bg)!important;
  color:var(--nlt-nav-fg)!important;
  border-color:var(--nlt-nav-border)!important;
  --bs-navbar-color:var(--nlt-nav-muted)!important;
  --bs-navbar-hover-color:var(--nlt-nav-hover)!important;
  --bs-navbar-disabled-color:color-mix(in srgb,var(--nlt-nav-muted) 55%,transparent)!important;
  --bs-navbar-active-color:var(--nlt-nav-fg)!important;
  --bs-navbar-brand-color:var(--nlt-nav-fg)!important;
  --bs-navbar-brand-hover-color:var(--nlt-nav-fg)!important;
  --bs-navbar-toggler-border-color:var(--nlt-nav-border)!important;
}
html[data-bs-theme] body .navbar .navbar-nav .nav-link,
html[data-bs-theme] body .navbar.navbar-dark .navbar-nav .nav-link,
html[data-bs-theme] body .navbar.bg-dark .navbar-nav .nav-link,
html[data-bs-theme] body .navbar a:not(.btn):not(.dropdown-item),
html[data-bs-theme] body .navbar .navbar-text{
  color:var(--nlt-nav-muted)!important;
  -webkit-text-fill-color:currentColor;
  opacity:1!important;
}
html[data-bs-theme] body .navbar .navbar-nav .nav-link.active,
html[data-bs-theme] body .navbar .navbar-nav .nav-link[aria-current="page"]{
  color:var(--nlt-nav-fg)!important;
  font-weight:700;
}
html[data-bs-theme] body .navbar .navbar-nav .nav-link:hover,
html[data-bs-theme] body .navbar .navbar-nav .nav-link:focus-visible,
html[data-bs-theme] body .navbar a:not(.btn):not(.dropdown-item):hover,
html[data-bs-theme] body .navbar a:not(.btn):not(.dropdown-item):focus-visible{
  color:var(--nlt-nav-hover)!important;
}

/* Preserve branded CTA contrast in both themes. */
html[data-bs-theme] body .navbar .btn-danger,
html[data-bs-theme] body .navbar .bybet-nav-cta{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Theme toggle is always legible and visually belongs to the active shell. */
html[data-bs-theme] body .navbar [data-theme-toggle],
html[data-bs-theme] body .navbar .btn-theme-toggle{
  color:var(--nlt-nav-fg)!important;
  background:color-mix(in srgb,var(--nlt-nav-fg) 7%,transparent)!important;
  border-color:var(--nlt-nav-border)!important;
}
html[data-bs-theme="light"] body .navbar [data-theme-toggle],
html[data-bs-theme="light"] body .navbar .btn-theme-toggle{
  background:#f5f7fa!important;
}

/* Bootstrap mobile collapse/toggler follows active theme rather than navbar-dark legacy markup. */
html[data-bs-theme="dark"] body .navbar-toggler{
  color:#fff!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.34)!important;
}
html[data-bs-theme="dark"] body .navbar-toggler-icon{
  filter:none!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(255,255,255,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.5' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")!important;
}
html[data-bs-theme="light"] body .navbar-toggler{
  color:#111827!important;background:#f8fafc!important;border-color:#94a3b8!important;
}
html[data-bs-theme="light"] body .navbar-toggler-icon{
  filter:none!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='rgba(15,23,42,1)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2.5' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E")!important;
}

/* Dropdowns/offcanvas launched from navigation track the global Bootstrap theme. */
html[data-bs-theme] body .navbar .dropdown-menu,
html[data-bs-theme] body .navbar .offcanvas{
  background-color:var(--bs-body-bg)!important;
  color:var(--bs-body-color)!important;
  border-color:var(--bs-border-color)!important;
}
html[data-bs-theme] body .navbar .dropdown-item{color:var(--bs-body-color)!important}
html[data-bs-theme] body .navbar .dropdown-item:hover,
html[data-bs-theme] body .navbar .dropdown-item:focus{background:var(--bs-tertiary-bg)!important;color:var(--bs-emphasis-color)!important}

/* Dashboard shell uses the exact same theme semantics, including header account text. */
html[data-bs-theme] body .navbar .nlt-dashboard-account,
html[data-bs-theme] body .navbar .nlt-dashboard-account a{color:var(--nlt-nav-fg)!important}

/* Footer and mobile nav remain synchronized with the same audience selection. */
html[data-bs-theme="dark"] body footer.bg-dark{background-color:#1b2025!important;color:#f8f9fa!important}
html[data-bs-theme="light"] body footer.bg-dark{background-color:#f8f9fa!important;color:#172033!important;border-color:#d9e0e8!important}
html[data-bs-theme="dark"] body .mobile-bottom-nav{background:rgba(12,18,30,.97)!important}
html[data-bs-theme="dark"] body .mobile-bottom-nav a{color:#ced4da!important}
html[data-bs-theme="light"] body .mobile-bottom-nav{background:rgba(255,255,255,.97)!important;border-color:#d9e0e8!important}
html[data-bs-theme="light"] body .mobile-bottom-nav a{color:#344054!important}
html[data-bs-theme="light"] body .mobile-bottom-nav a.active,
html[data-bs-theme="light"] body .mobile-bottom-nav a:hover{color:#0d6efd!important}

/* v3.14.81 — unified Bootstrap surface/card contrast.
   Light mode is not a recolored dark skin: every standard content surface inherits
   Bootstrap light tokens; branded CTA/status colors remain explicit. */
html[data-bs-theme="light"]{
  --nlt-surface-bg:var(--bs-body-bg,#fff);
  --nlt-surface-raised:var(--bs-tertiary-bg,#f8f9fa);
  --nlt-surface-card:var(--bs-body-bg,#fff);
  --nlt-surface-fg:var(--bs-body-color,#212529);
  --nlt-surface-heading:var(--bs-emphasis-color,#000);
  --nlt-surface-muted:var(--bs-secondary-color,#6c757d);
  --nlt-surface-border:var(--bs-border-color,#dee2e6);
}
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.value-card,.journey-item,
  .scores-sidebar-card,.scores-month-accordion,.scores-content-accordion,
  .accordion-item,.list-group-item,.dropdown-menu,.modal-content,.offcanvas,
  .news-card,.blog-card,.game-card,.match-card,.schedule-card,.score-card,
  .calendar-card,.data-card,.record-card
){
  background-color:var(--nlt-surface-card)!important;
  color:var(--nlt-surface-fg)!important;
  border-color:var(--nlt-surface-border)!important;
}
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.value-card,.journey-item,
  .scores-sidebar-card,.scores-month-accordion,.scores-content-accordion,
  .accordion-item,.list-group-item,.news-card,.blog-card,.game-card,.match-card,
  .schedule-card,.score-card,.calendar-card,.data-card,.record-card
) :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.card-title,.record-title,strong,.fw-bold,.fw-semibold){
  color:var(--nlt-surface-heading)!important;
  -webkit-text-fill-color:currentColor;
}
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.value-card,.journey-item,
  .scores-sidebar-card,.scores-month-accordion,.scores-content-accordion,
  .accordion-item,.list-group-item,.news-card,.blog-card,.game-card,.match-card,
  .schedule-card,.score-card,.calendar-card,.data-card,.record-card
) :is(p,span,small,time,li,dd,dt,.card-text,.record-date,.record-byline,.record-description){
  color:inherit;
  -webkit-text-fill-color:currentColor;
}
html[data-bs-theme="light"] body :is(.text-body-secondary,.text-secondary,.record-date,.record-byline){color:var(--nlt-surface-muted)!important}
html[data-bs-theme="light"] body :is(.bg-dark,.text-bg-dark):not(.navbar):not(.btn):not(.badge):not(.hero):not(.nlt-hero){
  background-color:var(--nlt-surface-card)!important;
  color:var(--nlt-surface-fg)!important;
  border-color:var(--nlt-surface-border)!important;
}
html[data-bs-theme="light"] body :is(.bg-dark,.text-bg-dark):not(.navbar):not(.btn):not(.badge):not(.hero):not(.nlt-hero) a:not(.btn){color:var(--bs-link-color)!important}

/* Native Bootstrap controls/data structures. */
html[data-bs-theme="light"] body :is(.form-control,.form-select,.form-check-input,.input-group-text){
  background-color:var(--bs-body-bg)!important;color:var(--bs-body-color)!important;border-color:var(--bs-border-color)!important;
}
html[data-bs-theme="light"] body :is(.table,.table > :not(caption) > * > *){--bs-table-color:var(--bs-body-color);--bs-table-bg:transparent;--bs-table-border-color:var(--bs-border-color)}
html[data-bs-theme="light"] body .accordion-button{background-color:var(--bs-tertiary-bg)!important;color:var(--bs-emphasis-color)!important;box-shadow:none!important}
html[data-bs-theme="light"] body .accordion-button:not(.collapsed){background-color:var(--bs-primary-bg-subtle)!important;color:var(--bs-primary-text-emphasis)!important}
html[data-bs-theme="light"] body .accordion-body{background-color:var(--bs-body-bg)!important;color:var(--bs-body-color)!important}
html[data-bs-theme="light"] body .list-group-item-action:hover{background-color:var(--bs-tertiary-bg)!important;color:var(--bs-emphasis-color)!important}

/* API/calendar records and dates: keep status badges colorful, but never dark text on dark inherited cards. */
html[data-bs-theme="light"] body :is(
  [class*="api-"][class*="card"],[class*="score-"][class*="card"],
  [class*="schedule-"][class*="card"],[class*="calendar-"][class*="card"],
  [class*="match-"][class*="card"],[class*="game-"][class*="card"]
){background-color:var(--bs-body-bg)!important;color:var(--bs-body-color)!important;border-color:var(--bs-border-color)!important}
html[data-bs-theme="light"] body :is(.scores-month-accordion__summary,.scores-content-accordion__summary){background-color:var(--bs-tertiary-bg)!important;color:var(--bs-emphasis-color)!important;border-color:var(--bs-border-color)!important}
html[data-bs-theme="light"] body :is(.scores-month-accordion__body,.scores-content-accordion__body){background-color:var(--bs-body-bg)!important;color:var(--bs-body-color)!important}
html[data-bs-theme="light"] body :is(.scores-2026-date-links a,.score-date-event-count){color:var(--bs-link-color)!important}

/* The cards in News/Blogs listings frequently carry old inline/dedicated dark typography. */
html[data-bs-theme="light"] body :is(.api-record-card,.record-action,.record-cover-link,.related-journey-card) a:not(.btn):not(.badge){color:var(--bs-link-color)!important}
html[data-bs-theme="light"] body :is(.api-record-card,.related-journey-card) .link-light{color:var(--bs-link-color)!important}

/* v3.14.82 — final sitewide light-theme contrast hardening.
   Dark/gradient hero bands intentionally remain dark in the light theme, so their
   editorial copy must stay light. Raised guide panels inside those heroes remain
   Bootstrap surfaces and keep normal light-theme dark text. */
html[data-bs-theme="light"] body :is(.live-hero,.schedule-hero,.resource-hero,.news-hero,.blogs-hero) :is(h1,.headline){
  color:#f8f9fa!important;-webkit-text-fill-color:#f8f9fa!important;
}
html[data-bs-theme="light"] body :is(.live-hero,.schedule-hero,.resource-hero,.news-hero,.blogs-hero) :is(.hero-copy,.trust-row,.trust-row span,p.small.text-body-secondary){
  color:#dbe4ee!important;-webkit-text-fill-color:currentColor!important;
}
html[data-bs-theme="light"] body :is(.live-hero,.schedule-hero,.resource-hero,.news-hero,.blogs-hero) .hero-panel{
  background:var(--bs-body-bg)!important;color:var(--bs-body-color)!important;border-color:var(--bs-border-color)!important;
}
html[data-bs-theme="light"] body :is(.live-hero,.schedule-hero,.resource-hero,.news-hero,.blogs-hero) .hero-panel :is(h1,h2,h3,h4,h5,h6,strong){
  color:var(--bs-emphasis-color)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-bs-theme="light"] body :is(.live-hero,.schedule-hero,.resource-hero,.news-hero,.blogs-hero) .hero-panel :is(p,span,small,.text-body-secondary){
  color:var(--bs-body-color)!important;-webkit-text-fill-color:currentColor!important;
}

/* Normal cards/data records must never retain hard-coded dark-theme text in light mode. */
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.journey-item,.value-card,
  .scores-sidebar-card,.scores-calendar-card,.schedule-card,.score-card,
  .game-card,.match-card,.news-card,.blog-card,.data-card,.record-card,
  [class*="card"],[class*="record"]
) :is(.text-white,.text-light,.text-body,.text-body-emphasis,.card-title,.card-text,.small,small,p,span,time,li){
  color:var(--bs-body-color)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.journey-item,.value-card,
  .scores-sidebar-card,.scores-calendar-card,.schedule-card,.score-card,
  .game-card,.match-card,.news-card,.blog-card,.data-card,.record-card,
  [class*="card"],[class*="record"]
) :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,strong,.fw-bold,.fw-semibold){
  color:var(--bs-emphasis-color)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-bs-theme="light"] body :is(
  .card,.api-record-card,.related-journey-card,.journey-item,.value-card,
  .scores-sidebar-card,.scores-calendar-card,.schedule-card,.score-card,
  .game-card,.match-card,.news-card,.blog-card,.data-card,.record-card,
  [class*="card"],[class*="record"]
) :is(.text-secondary,.text-body-secondary,.text-muted){
  color:var(--bs-secondary-color)!important;-webkit-text-fill-color:currentColor!important;
}
/* Links keep Bootstrap link contrast; badges/buttons preserve their own semantic colors. */
html[data-bs-theme="light"] body :is(.card,.api-record-card,.related-journey-card,.journey-item,.value-card,[class*="card"],[class*="record"]) a:not(.btn):not(.badge){
  color:var(--bs-link-color)!important;-webkit-text-fill-color:currentColor!important;
}
html[data-bs-theme="light"] body :is(.card,.api-record-card,.related-journey-card,.journey-item,.value-card,[class*="card"],[class*="record"]) :is(.btn,.badge,[class*="text-bg-"]){
  -webkit-text-fill-color:currentColor!important;
}

/* The journey strip is a branded dark transition band on both themes. */
html[data-bs-theme="light"] body .journey-strip{color:#f8f9fa!important;}
html[data-bs-theme="light"] body .journey-strip .journey-item{background:#fff!important;color:#212529!important;border-color:#dee2e6!important;}
html[data-bs-theme="light"] body .journey-strip .journey-item :is(strong,small,span){color:#212529!important;-webkit-text-fill-color:currentColor!important;}
