/* Home visual refresh: presentation only. Data, routing and model output stay untouched. */
:root {
  --home-night: #030a12;
  --home-navy: #07182b;
  --home-panel: #0c1728;
  --home-panel-raised: #101d31;
  --home-gold: #e4a51f;
  --home-gold-soft: #f4c969;
  --surface-radius-sm: 8px;
  --surface-radius-md: 13px;
  --surface-radius-lg: 18px;
  --surface-border: rgba(148, 172, 201, 0.14);
}

body.home-mode {
  background: var(--home-night);
}

body.home-mode::before {
  display: none;
}

body.home-mode .home-topbar {
  border-bottom-color: rgba(228, 165, 31, 0.12);
  background: rgba(3, 10, 18, 0.9);
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(18px) saturate(120%);
}

.home-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: clamp(650px, 78vh, 790px);
  padding: clamp(82px, 9vh, 112px) clamp(22px, 7vw, 128px) 74px;
  overflow: hidden;
  background-color: var(--home-night);
  background-image:
    linear-gradient(90deg, rgba(3, 10, 18, 0.99) 0%, rgba(3, 10, 18, 0.93) 31%, rgba(3, 10, 18, 0.58) 57%, rgba(3, 10, 18, 0.14) 100%),
    linear-gradient(180deg, rgba(3, 10, 18, 0.2) 0%, rgba(3, 10, 18, 0.08) 54%, #030a12 100%),
    url("./assets/home-hero-stadium-v1.jpg");
  background-position: center, center, center;
  background-size: cover;
  color: #fff;
}

.home-hero-atmosphere {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    radial-gradient(circle at 78% 28%, rgba(244, 201, 105, 0.12), transparent 20%),
    linear-gradient(115deg, transparent 47%, rgba(255, 255, 255, 0.025) 47.2%, transparent 47.5%);
}

.home-hero-atmosphere::after {
  position: absolute;
  right: clamp(20px, 4vw, 72px);
  bottom: 35px;
  width: clamp(140px, 15vw, 230px);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(244, 201, 105, 0.75));
  content: "";
}

.home-hero-inner {
  grid-template-columns: minmax(0, 0.92fr) minmax(350px, 470px);
  gap: clamp(52px, 8vw, 120px);
  width: min(1380px, 100%);
}

.home-copy {
  gap: 23px;
  max-width: 760px;
}

.home-badge {
  gap: 9px;
  min-height: 32px;
  padding: 0 14px;
  border: 1px solid rgba(228, 165, 31, 0.34);
  background: rgba(20, 20, 14, 0.52);
  color: var(--home-gold-soft);
  letter-spacing: 0.06em;
  backdrop-filter: blur(10px);
}

.home-badge i,
.home-countdown-kicker i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--home-gold);
  box-shadow: 0 0 0 5px rgba(228, 165, 31, 0.1);
}

.home-hero .home-copy h1 {
  max-width: 720px;
  color: #f7f3e9;
  font-family: "Songti SC", "STSong", "Noto Serif SC", serif;
  font-size: clamp(50px, 5.4vw, 82px);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.055em;
  text-wrap: balance;
  text-shadow: 0 10px 38px rgba(0, 0, 0, 0.34);
}

.home-hero .home-copy h1 strong {
  display: block;
  width: max-content;
  max-width: 100%;
  margin-top: 8px;
  color: var(--home-gold-soft);
}

.home-hero .home-copy h1 strong::after {
  bottom: -7px;
  height: 2px;
  background: linear-gradient(90deg, var(--home-gold), transparent);
}

.home-copy p {
  max-width: 670px;
  color: rgba(232, 239, 248, 0.78);
  font-size: clamp(16px, 1.25vw, 18px);
  font-weight: 650;
  line-height: 1.82;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.42);
}

.home-actions {
  gap: 10px;
  margin-top: 3px;
}

.home-actions button {
  min-height: 50px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 7px;
  background: rgba(6, 18, 31, 0.72);
  backdrop-filter: blur(9px);
}

.home-actions button:first-child {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
  box-shadow: 0 13px 34px rgba(228, 165, 31, 0.2);
}

.home-actions button:hover {
  border-color: rgba(244, 201, 105, 0.7);
  transform: translateY(-2px);
}

.home-countdown-card {
  align-self: center;
  display: grid;
  grid-template-areas:
    "kicker"
    "teams"
    "timer";
  grid-template-columns: 1fr;
  row-gap: 10px;
  min-height: 0;
  padding: 14px 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  text-shadow: 0 3px 18px rgba(0, 0, 0, 0.68);
}

.home-countdown-card::before {
  inset: auto 0 0;
  height: 1px;
  border-radius: 0;
  background: linear-gradient(90deg, rgba(228, 165, 31, 0.52), rgba(228, 165, 31, 0.08) 62%, transparent);
}

.home-countdown-card::after {
  display: none;
}

.home-countdown-kicker {
  grid-area: kicker;
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(233, 239, 247, 0.64);
  font-size: 12px;
  letter-spacing: 0.14em;
}

.home-countdown-card strong {
  grid-area: teams;
  color: #f5f7fa;
  font-family: "Songti SC", "STSong", "Noto Serif SC", serif;
  font-size: clamp(25px, 2vw, 32px);
  letter-spacing: -0.03em;
  white-space: nowrap;
}

.home-countdown-card strong span {
  color: inherit;
}

.home-countdown-grid {
  grid-area: timer;
  display: flex;
  align-items: center;
  gap: 0;
  width: max-content;
  padding-right: 0;
}

.home-countdown-grid div {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  min-height: 0;
  padding: 2px 13px 2px 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

.home-countdown-grid div + div {
  position: relative;
  padding-left: 13px;
}

.home-countdown-grid div + div::before {
  position: absolute;
  top: 7px;
  bottom: 7px;
  left: 0;
  width: 1px;
  background: rgba(244, 201, 105, 0.2);
  content: "";
}

.home-countdown-grid b {
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(32px, 2.8vw, 44px);
}

.home-countdown-grid small {
  margin: 0 0 0 5px;
  color: rgba(244, 201, 105, 0.72);
  font-size: 11px;
}

.home-upcoming {
  position: relative;
  padding-top: 72px;
  padding-bottom: 58px;
  background:
    radial-gradient(circle at 84% 0%, rgba(19, 62, 104, 0.2), transparent 29%),
    linear-gradient(180deg, #030a12 0%, #06111f 100%);
}

.home-upcoming::before {
  position: absolute;
  inset: 0 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(228, 165, 31, 0.38), transparent);
  content: "";
}

.home-upcoming .home-section-head span {
  color: var(--home-gold);
}

.home-upcoming .home-section-head h2 {
  color: #f3f6fa;
}

.home-upcoming .home-section-head .home-section-link {
  border-color: rgba(228, 165, 31, 0.22);
  background: rgba(228, 165, 31, 0.07);
  color: var(--home-gold-soft);
  box-shadow: none;
}

.home-upcoming .home-section-head .home-section-link:hover {
  border-color: rgba(228, 165, 31, 0.62);
  background: rgba(228, 165, 31, 0.12);
}

.home-upcoming-grid {
  gap: 14px;
}

.home-match-card {
  min-height: 326px;
  padding: 21px 21px 17px;
  border-color: rgba(148, 172, 201, 0.13);
  border-radius: 13px;
  background:
    radial-gradient(circle at 100% 0%, rgba(41, 81, 126, 0.14), transparent 36%),
    linear-gradient(145deg, var(--home-panel-raised), var(--home-panel));
  color: #eef4fb;
  box-shadow: 0 16px 42px rgba(0, 0, 0, 0.2);
}

.home-match-card::before {
  right: auto;
  width: 34%;
  height: 2px;
  background: linear-gradient(90deg, var(--home-gold), transparent);
}

.home-match-card:hover {
  border-color: rgba(228, 165, 31, 0.38);
  box-shadow: 0 24px 52px rgba(0, 0, 0, 0.34);
}

.home-match-card .home-match-league {
  background: rgba(228, 165, 31, 0.1);
  color: var(--home-gold-soft);
}

.home-match-card .home-match-date {
  color: rgba(205, 218, 234, 0.48);
}

.home-match-card .home-match-team {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #f4f7fb;
  font-family: "Songti SC", "STSong", "Noto Serif SC", serif;
  font-size: clamp(19px, 1.35vw, 25px);
}

.home-match-card .home-match-team-away {
  flex-direction: row-reverse;
}

.home-team-mark {
  display: inline-grid;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid rgba(228, 165, 31, 0.2);
  border-radius: 50%;
  background: linear-gradient(145deg, rgba(228, 165, 31, 0.15), rgba(255, 255, 255, 0.035));
  color: var(--home-gold-soft);
  font-family: "Avenir Next", "PingFang SC", sans-serif;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: -0.04em;
  box-shadow: inset 0 1px rgba(255, 255, 255, 0.07), 0 8px 18px rgba(0, 0, 0, 0.22);
}

.home-team-mark.has-flag { font-size: 22px; }

.home-match-card .home-match-versus {
  border: 1px solid rgba(228, 165, 31, 0.24);
  background: rgba(228, 165, 31, 0.08);
  color: var(--home-gold-soft);
  box-shadow: none;
}

.home-wdl {
  display: grid;
  gap: 7px;
  padding: 0 1px 13px;
}

.home-wdl-labels {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  color: rgba(203, 216, 232, 0.53);
  font-size: 10px;
  font-weight: 800;
}

.home-wdl-labels span:nth-child(2) { text-align: center; }
.home-wdl-labels span:last-child { text-align: right; }
.home-wdl-labels b { color: #e8eef6; font-variant-numeric: tabular-nums; }

.home-wdl-track {
  display: flex;
  width: 100%;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.07);
}

.home-wdl-track i {
  width: var(--wdl-width);
  height: 100%;
  transform-origin: left center;
}

.home-wdl-track.has-data i { animation: homeProbabilityIn 0.7s cubic-bezier(0.22, 1, 0.36, 1) both; }
.home-wdl-home { background: #24b56b; }
.home-wdl-draw { background: #3f79d8; }
.home-wdl-away { background: #d94f5c; }

.home-match-countdown {
  border-color: rgba(139, 164, 194, 0.13);
  background: rgba(3, 10, 18, 0.42);
}

.home-match-countdown small,
.home-match-countdown em {
  color: rgba(203, 216, 232, 0.56);
}

.home-match-countdown strong {
  color: #f0808c;
}

.home-match-card.is-live .home-match-countdown {
  border-color: rgba(232, 75, 94, 0.34);
  background:
    radial-gradient(circle at 82% 18%, rgba(232, 75, 94, 0.11), transparent 34%),
    linear-gradient(90deg, rgba(232, 75, 94, 0.09), rgba(10, 21, 36, 0.96) 52%),
    #0a1524;
  box-shadow: inset 3px 0 0 rgba(232, 75, 94, 0.72);
}

.home-match-card.is-live .home-match-countdown small {
  color: #f2a1ab;
}

.home-match-card.is-live .home-match-countdown strong {
  color: #ff7180;
  text-shadow: 0 0 18px rgba(232, 75, 94, 0.22);
}

.home-match-card.is-live .home-match-countdown em {
  color: rgba(216, 228, 241, 0.76);
}

.home-match-audit {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 11px;
}

.home-match-audit span {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  padding: 0 8px;
  border: 1px solid rgba(148, 172, 201, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.025);
  color: rgba(214, 225, 238, 0.65);
  font-size: 10px;
  font-weight: 850;
}

.home-match-audit span:first-child {
  border-color: rgba(228, 165, 31, 0.2);
  color: var(--home-gold-soft);
}

.home-match-footer {
  border-top: 1px solid rgba(148, 172, 201, 0.09);
}

.home-match-footer b,
.home-match-footer span {
  color: rgba(203, 216, 232, 0.58);
}

.home-match-footer span {
  color: var(--home-gold-soft);
}

.home-products {
  border-top: 1px solid rgba(148, 172, 201, 0.08);
  background: #06111f;
}

.home-products article {
  border-color: rgba(148, 172, 201, 0.12);
  background:
    radial-gradient(circle at 100% 0%, rgba(35, 76, 119, 0.13), transparent 42%),
    #0c1728;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.18);
}

.home-products span {
  color: var(--home-gold);
}

.home-products strong {
  color: #f1f5fa;
}

.home-products em {
  color: rgba(203, 216, 232, 0.58);
}

.home-research-lab {
  border-top: 1px solid rgba(228, 165, 31, 0.1);
  background:
    radial-gradient(circle at 14% 0%, rgba(22, 67, 111, 0.2), transparent 32%),
    #030a12;
}

.home-research-lab .home-section-head span {
  color: var(--home-gold);
}

.home-research-lab .home-section-head h2 {
  color: #f3f6fa;
}

.home-research-lab .home-section-head button {
  border-color: rgba(228, 165, 31, 0.24);
  background: rgba(228, 165, 31, 0.07);
  color: var(--home-gold-soft);
  box-shadow: none;
}

.home-research-lab .home-section-head button:hover {
  border-color: rgba(228, 165, 31, 0.58);
  background: rgba(228, 165, 31, 0.12);
}

.home-research-grid article {
  border-color: rgba(148, 172, 201, 0.12);
  background:
    linear-gradient(145deg, rgba(16, 29, 49, 0.98), rgba(9, 20, 35, 0.98));
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}

.home-research-grid article::before {
  height: 2px;
  background: linear-gradient(90deg, var(--home-gold), rgba(244, 201, 105, 0.2));
}

.home-research-grid span {
  color: rgba(203, 216, 232, 0.58);
}

.home-research-grid strong {
  color: #f1f5fa;
}

.home-research-grid em {
  color: rgba(203, 216, 232, 0.56);
}

body.home-mode .site-footer {
  margin-top: 0;
  border-top: 1px solid rgba(228, 165, 31, 0.46);
  background: var(--home-night);
  color: rgba(221, 231, 243, 0.74);
}

body.home-mode .site-footer-brand strong,
body.home-mode .site-footer h3 {
  color: #f2f6fb;
}

body.home-mode .site-footer h3 {
  color: var(--home-gold-soft);
}

body.home-mode .site-footer p,
body.home-mode .site-footer button {
  color: rgba(203, 216, 232, 0.64);
}

body.home-mode .site-footer button:hover {
  color: #f3f6fa;
  text-decoration-color: var(--home-gold);
}

body.home-mode .site-footer-bottom {
  border-top-color: rgba(148, 172, 201, 0.12);
  color: rgba(181, 197, 216, 0.5);
}

/* Shared dashboard foundation: every non-home route starts from the same night palette. */
body.dashboard-mode {
  background: var(--home-night);
  color: #eef4fb;
}

body.dashboard-mode::before {
  display: none;
}

body.dashboard-mode .home-topbar {
  border-bottom-color: rgba(228, 165, 31, 0.14);
  background: rgba(3, 10, 18, 0.96);
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.24);
}

body.dashboard-mode .home-topbar nav button {
  border-color: rgba(148, 172, 201, 0.14);
  background: rgba(12, 23, 40, 0.88);
  color: rgba(221, 231, 243, 0.72);
  -webkit-text-fill-color: rgba(221, 231, 243, 0.72);
}

body.dashboard-mode .home-topbar nav button.active {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
  -webkit-text-fill-color: #08111d;
  box-shadow: 0 10px 24px rgba(228, 165, 31, 0.18);
}

body.dashboard-mode .dashboard-shell {
  min-height: calc(100vh - 68px);
  background:
    radial-gradient(circle at 86% 0%, rgba(22, 67, 111, 0.18), transparent 28%),
    linear-gradient(180deg, #030a12 0%, #06111f 100%);
}

body.dashboard-mode .dashboard-shell > .panel {
  border-color: rgba(148, 172, 201, 0.14);
  background:
    radial-gradient(circle at 100% 0%, rgba(31, 73, 116, 0.12), transparent 34%),
    #07111f;
  color: #eef4fb;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.26);
}

body.dashboard-mode .dashboard-shell > .panel :where(.section-head, .stat-title-line) {
  border-color: rgba(148, 172, 201, 0.12);
}

body.dashboard-mode .dashboard-shell > .panel :where(.eyebrow, .kicker) {
  color: var(--home-gold);
}

body.dashboard-mode .dashboard-shell > .panel :where(h1, h2, h3, h4) {
  color: #f3f6fa;
}

body.dashboard-mode .dashboard-shell > .panel :where(.section-head h2, .stat-title-line h3) {
  background: none;
  -webkit-text-fill-color: #f3f6fa;
}

body.dashboard-mode .dashboard-shell > .panel :where(p, em, small) {
  color: rgba(203, 216, 232, 0.64);
}

body.dashboard-mode .dashboard-shell > .panel :where(.pill, .mini-pill, .model-chip) {
  border-color: rgba(228, 165, 31, 0.24);
  background: rgba(228, 165, 31, 0.08);
  color: var(--home-gold-soft);
}

body.dashboard-mode .site-footer {
  margin-top: 0;
  border-top: 1px solid rgba(228, 165, 31, 0.28);
  background: var(--home-night);
  color: rgba(221, 231, 243, 0.74);
}

body.dashboard-mode .site-footer-brand strong {
  color: #f2f6fb;
}

body.dashboard-mode .site-footer h3 {
  color: var(--home-gold-soft);
}

body.dashboard-mode .site-footer p,
body.dashboard-mode .site-footer button {
  color: rgba(203, 216, 232, 0.64);
}

body.dashboard-mode .site-footer-bottom {
  border-top-color: rgba(148, 172, 201, 0.12);
  color: rgba(181, 197, 216, 0.5);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .panel-hero,
  .model-intro-hero,
  .model-stats-hero,
  .about-site-hero,
  .odds-map-hero
) {
  background:
    radial-gradient(circle at 88% 12%, rgba(228, 165, 31, 0.12), transparent 30%),
    linear-gradient(135deg, #0b192a 0%, #07111f 100%);
  color: #f3f6fa;
  box-shadow: inset 0 -1px rgba(228, 165, 31, 0.14);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .site-lock-card,
  .review-metric,
  .odds-radar-summary > article,
  .odds-radar-summary > button,
  .odds-spotlight-card,
  .about-mission-card,
  .about-section-band,
  .about-flow article,
  .about-split section,
  .model-flow-grid article,
  .model-evidence-grid article,
  .model-contract-grid section,
  .model-version-timeline,
  .model-update-log
) {
  border-color: rgba(148, 172, 201, 0.13);
  background:
    radial-gradient(circle at 100% 0%, rgba(35, 76, 119, 0.1), transparent 40%),
    linear-gradient(145deg, var(--home-panel-raised), var(--home-panel));
  color: #eef4fb;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.2);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .goal-track-table,
  .trend-wrap,
  .review-record-wrap,
  .odds-map-subnav,
  .model-evidence-stack,
  .model-decision-flow
) {
  border-color: rgba(148, 172, 201, 0.13);
  background: rgba(7, 17, 31, 0.88);
  color: #eef4fb;
  box-shadow: none;
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .site-lock-card,
  .review-metric,
  .odds-radar-summary > *,
  .odds-spotlight-card,
  .about-mission-card,
  .about-section-band,
  .about-flow article,
  .about-split section,
  .model-flow-grid article,
  .model-evidence-grid article,
  .model-contract-grid section,
  .model-version-timeline,
  .model-update-log
) :where(h3, h4, strong, b) {
  color: #f1f5fa;
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .site-lock-card,
  .review-metric,
  .odds-radar-summary > *,
  .odds-spotlight-card,
  .about-mission-card,
  .about-section-band,
  .about-flow article,
  .about-split section,
  .model-flow-grid article,
  .model-evidence-grid article,
  .model-contract-grid section,
  .model-version-timeline,
  .model-update-log
) :where(p, span, em, small) {
  color: rgba(203, 216, 232, 0.62);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .site-lock-picks strong,
  .site-lock-picks span,
  .site-lock-head b,
  .about-mission-card > span,
  .about-split section > span,
  .about-source-list i,
  .about-version-row b
) {
  border-color: rgba(228, 165, 31, 0.2);
  background: rgba(228, 165, 31, 0.08);
  color: var(--home-gold-soft);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .goal-track-view-tabs,
  .about-section-head
) {
  border-color: rgba(148, 172, 201, 0.13);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .goal-track-view-tabs button,
  .pool-view-tabs button,
  .goal-track-month-select,
  .odds-map-subnav button,
  select
) {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
  color: rgba(211, 223, 237, 0.7);
}

body.dashboard-mode .dashboard-shell > .panel :where(
  .goal-track-view-tabs button.active,
  .pool-view-tabs button.active,
  .goal-track-month-select.active,
  .odds-map-subnav button.active
) {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
  box-shadow: none;
}

body.dashboard-mode .dashboard-shell > .panel table {
  border-color: rgba(148, 172, 201, 0.12);
  background: #07111f;
  color: rgba(221, 231, 243, 0.74);
}

body.dashboard-mode .dashboard-shell > .panel table :where(th, td) {
  border-color: rgba(148, 172, 201, 0.1);
}

body.dashboard-mode .dashboard-shell > .panel table th {
  background: #111f33;
  color: var(--home-gold-soft);
}

body.dashboard-mode .dashboard-shell > .panel table td {
  background-color: #0a1626;
  color: rgba(221, 231, 243, 0.72);
}

body.dashboard-mode .dashboard-shell > .panel table tr:nth-child(even) td {
  background-color: #0c192a;
}

body.dashboard-mode .dashboard-shell > .panel :where(.trend-chip, .market-metric) {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: rgba(221, 231, 243, 0.72);
}

body.dashboard-mode #sporttery-goal-track table td.home-cell {
  background: #0c2134 !important;
  color: #b9d9f4;
}

body.dashboard-mode #sporttery-goal-track table td.away-cell {
  background: #0d241e !important;
  color: #b9dfcf;
}

body.dashboard-mode #sporttery-goal-track table td.bucket-cell {
  background-color: #241d0d;
}

body.dashboard-mode #sporttery-goal-track table td.bucket-cell.active-bucket {
  color: #08111d !important;
  -webkit-text-fill-color: #08111d;
  text-shadow: none;
}

body.dashboard-mode #sporttery-goal-track .goal-track-header {
  border-color: rgba(148, 172, 201, 0.13);
  background: #0c1728;
  color: #eef4fb;
}

body.dashboard-mode #sporttery-goal-track #sporttery-goal-track-summary {
  color: var(--home-gold-soft) !important;
  -webkit-text-fill-color: var(--home-gold-soft);
  text-shadow: none;
}

body.dashboard-mode #sporttery-omission-list :where(.omission-scope, .omission-section, .omission-detail) {
  min-width: 0;
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
  color: #eef4fb;
  box-shadow: none;
}

body.dashboard-mode #sporttery-omission-list.sporttery-omission-page {
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
}

body.dashboard-mode #sporttery-omission-list .omission-heatmap-wrap {
  min-width: 0;
  max-width: 100%;
}

body.dashboard-mode #sporttery-omission-list .omission-scope > span,
body.dashboard-mode #sporttery-omission-list :where(.omission-section, .omission-detail) h3 {
  color: #f2f6fb;
  -webkit-text-fill-color: #f2f6fb;
}

body.dashboard-mode #sporttery-omission-list :where(.omission-section, .omission-detail) header em,
body.dashboard-mode #sporttery-omission-list .omission-scope em {
  color: rgba(190, 207, 226, 0.66);
}

body.dashboard-mode #sporttery-omission-list .omission-scope button {
  border-color: rgba(148, 172, 201, 0.18);
  background: #111f33;
  color: rgba(221, 231, 243, 0.72);
}

body.dashboard-mode #sporttery-omission-list .omission-scope button.active {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
}

body.dashboard-mode #sporttery-omission-list .omission-highlights button {
  border-color: rgba(228, 165, 31, 0.24);
  background:
    radial-gradient(circle at 100% 0%, rgba(228, 165, 31, 0.08), transparent 46%),
    #111f33;
  box-shadow: none;
  transition:
    transform 160ms ease-out,
    border-color 160ms ease-out,
    background-color 160ms ease-out;
}

body.dashboard-mode #sporttery-omission-list .omission-highlights button:hover {
  transform: translateY(-2px);
  border-color: rgba(228, 165, 31, 0.56);
  background-color: #14243a;
}

body.dashboard-mode #sporttery-omission-list .omission-highlights span {
  color: #dce9f7;
}

body.dashboard-mode #sporttery-omission-list .omission-highlights strong {
  color: var(--home-gold-soft);
}

body.dashboard-mode #sporttery-omission-list .omission-highlights em {
  color: rgba(190, 207, 226, 0.68);
}

body.dashboard-mode #sporttery-omission-list .omission-heatmap th {
  color: var(--home-gold-soft);
}

body.dashboard-mode #sporttery-omission-list .omission-cell {
  background: #111f33;
  color: #dce9f7;
}

body.dashboard-mode #sporttery-omission-list .omission-cell.raised {
  background: #17291f;
  color: #b9dfcf;
}

body.dashboard-mode #sporttery-omission-list .omission-cell.high {
  background: #33280e;
  color: #f4d47b;
}

body.dashboard-mode #sporttery-omission-list .omission-cell.very-high {
  background: #3a210d;
  color: #f4b77b;
}

body.dashboard-mode #sporttery-omission-list .omission-cell.extreme {
  background: #7b202b;
  color: #fff3f4;
  box-shadow: 0 5px 14px rgba(123, 32, 43, 0.22);
}

body.dashboard-mode #sporttery-omission-list .omission-legend {
  color: rgba(190, 207, 226, 0.66);
}

body.dashboard-mode #sporttery-omission-list .omission-metrics > div,
body.dashboard-mode #sporttery-omission-list .omission-followup :where(h4, div) {
  border: 1px solid rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: #e8f0f8;
}

body.dashboard-mode #sporttery-omission-list .omission-metrics span,
body.dashboard-mode #sporttery-omission-list .omission-history > span,
body.dashboard-mode #sporttery-omission-list .omission-followup :where(span, em),
body.dashboard-mode #sporttery-omission-list .omission-detail > p {
  color: rgba(190, 207, 226, 0.68);
}

body.dashboard-mode #sporttery-omission-list .omission-metrics strong,
body.dashboard-mode #sporttery-omission-list .omission-followup strong {
  color: var(--home-gold-soft);
  -webkit-text-fill-color: var(--home-gold-soft);
}

body.dashboard-mode #sporttery-omission-list .omission-reference {
  border-left-color: var(--home-gold);
  background: #211d14;
  color: #f0cd76;
}

body.dashboard-mode #sporttery-omission-list .omission-history i {
  border: 1px solid rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: rgba(221, 231, 243, 0.76);
}

body.dashboard-mode #sporttery-omission-list .omission-history i.hit {
  border-color: rgba(228, 165, 31, 0.44);
  background: #0f4f9c;
  color: #f3f7fb;
}

body.dashboard-mode #sporttery-omission-list .omission-followup h4 {
  color: #f2f6fb;
}

body.sporttery-mode #sporttery-pool .data-loading-panel {
  border-color: rgba(148, 172, 201, 0.16);
  background:
    radial-gradient(circle at 50% 0%, rgba(228, 165, 31, 0.08), transparent 42%),
    #0c1728;
  color: #f2f6fb;
  box-shadow: inset 0 1px 0 rgba(244, 201, 105, 0.06);
}

body.sporttery-mode #sporttery-pool .data-loading-panel strong {
  color: #f2f6fb;
  -webkit-text-fill-color: #f2f6fb;
}

body.sporttery-mode #sporttery-pool .data-loading-panel p {
  color: rgba(190, 207, 226, 0.7);
}

body.sporttery-mode #sporttery-pool .data-loading-panel span {
  background: var(--home-gold);
  box-shadow: 0 0 12px rgba(228, 165, 31, 0.3);
}

@media (max-width: 640px) {
  body.dashboard-mode #sporttery-omission-list .omission-highlights {
    grid-template-columns: 1fr;
  }
}

body.dashboard-mode #model-intro .model-version-timeline article {
  border-color: rgba(148, 172, 201, 0.13);
  background: linear-gradient(145deg, var(--home-panel-raised), var(--home-panel));
  color: #eef4fb;
  box-shadow: none;
}

body.dashboard-mode #model-intro :where(.model-version-timeline, .model-contract-grid) article > span {
  border-color: rgba(228, 165, 31, 0.2);
  background: rgba(228, 165, 31, 0.08);
  color: var(--home-gold-soft);
}

body.dashboard-mode #model-intro :where(.model-version-timeline, .model-flow-grid, .model-evidence-grid, .model-contract-grid) :where(h3, h4, a) {
  color: #f1f5fa;
  -webkit-text-fill-color: #f1f5fa;
}

body.dashboard-mode #model-intro :where(.model-version-timeline, .model-flow-grid, .model-evidence-grid, .model-contract-grid) :where(p, li) {
  color: rgba(203, 216, 232, 0.68);
}

body.dashboard-mode #model-intro .model-contract-grid section > span {
  border: 1px solid rgba(228, 165, 31, 0.26);
  background: rgba(228, 165, 31, 0.12);
  color: #f4c969;
  -webkit-text-fill-color: #f4c969;
  box-shadow: inset 0 0 0 1px rgba(244, 201, 105, 0.03);
}

body.dashboard-mode #model-intro .model-update-log {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  margin: 28px 22px 24px;
  padding: 26px 28px 30px;
  overflow: hidden;
}

body.dashboard-mode #model-intro .model-update-log .about-section-head {
  align-items: end;
  margin-bottom: 6px;
  padding: 0 0 22px;
  border-bottom-color: rgba(148, 172, 201, 0.15);
}

body.dashboard-mode #model-intro .model-update-log .about-section-head h3 {
  color: #f2f6fb;
  font-size: clamp(28px, 3vw, 40px);
  letter-spacing: -0.035em;
  -webkit-text-fill-color: #f2f6fb;
}

body.dashboard-mode #model-intro .model-update-log .about-section-head .eyebrow {
  color: #f4c969;
  letter-spacing: 0.18em;
}

body.dashboard-mode #model-intro .model-update-log article {
  position: relative;
  display: grid;
  grid-template-columns: 178px minmax(0, 1fr);
  grid-template-areas:
    "meta title"
    "meta notes";
  column-gap: 28px;
  row-gap: 8px;
  margin: 0;
  padding: 24px 0 24px 28px;
  border: 0;
  border-bottom: 1px solid rgba(148, 172, 201, 0.12);
  background: transparent;
}

body.dashboard-mode #model-intro .model-update-log article::before {
  content: "";
  position: absolute;
  top: 31px;
  bottom: -8px;
  left: 3px;
  width: 1px;
  background: rgba(228, 165, 31, 0.28);
}

body.dashboard-mode #model-intro .model-update-log article::after {
  content: "";
  position: absolute;
  top: 30px;
  left: 0;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #e4a51f;
  box-shadow: 0 0 0 5px rgba(228, 165, 31, 0.1);
}

body.dashboard-mode #model-intro .model-update-log article:last-child {
  border-bottom: 0;
}

body.dashboard-mode #model-intro .model-update-log article:last-child::before {
  bottom: 50%;
}

body.dashboard-mode #model-intro .model-update-log article > span {
  grid-area: meta;
  align-self: start;
  justify-self: start;
  margin: 0;
  border: 1px solid rgba(148, 172, 201, 0.15);
  background: #12243a;
  color: #b9cbe0;
  font-size: 12px;
  line-height: 1.35;
  -webkit-text-fill-color: #b9cbe0;
}

body.dashboard-mode #model-intro .model-update-log article.current > span {
  border-color: rgba(228, 165, 31, 0.28);
  background: rgba(228, 165, 31, 0.12);
  color: #f4c969;
  -webkit-text-fill-color: #f4c969;
}

body.dashboard-mode #model-intro .model-update-log article > strong {
  grid-area: title;
  margin: 0;
  color: #f2f6fb;
  font-size: clamp(19px, 2vw, 25px);
  line-height: 1.35;
  -webkit-text-fill-color: #f2f6fb;
}

body.dashboard-mode #model-intro .model-update-log article > ul {
  grid-area: notes;
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: rgba(203, 216, 232, 0.78);
}

body.dashboard-mode #model-intro .model-update-log article > ul li {
  position: relative;
  padding-left: 16px;
  color: rgba(203, 216, 232, 0.78);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.65;
}

body.dashboard-mode #model-intro .model-update-log article > ul li::before {
  content: "";
  position: absolute;
  top: 0.72em;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(228, 165, 31, 0.8);
}

@media (max-width: 760px) {
  body.dashboard-mode #model-intro .model-update-log {
    margin: 22px 12px 20px;
    padding: 20px 18px 22px;
    border-radius: 14px;
  }

  body.dashboard-mode #model-intro .model-update-log .about-section-head {
    align-items: start;
  }

  body.dashboard-mode #model-intro .model-update-log article {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas:
      "meta"
      "title"
      "notes";
    gap: 10px;
    padding: 22px 0 22px 22px;
  }

  body.dashboard-mode #model-intro .model-update-log article > span {
    font-size: 11px;
  }

  body.dashboard-mode #model-intro .model-update-log article > ul li {
    font-size: 13px;
  }
}

body.dashboard-mode #model-stats .attribution-badge.mid {
  border-color: rgba(228, 165, 31, 0.22);
  background: rgba(228, 165, 31, 0.09);
  color: var(--home-gold-soft);
}

body.dashboard-mode #model-stats .global-stats-table-toolbar {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
}

body.dashboard-mode #model-stats .global-stats-table-toolbar :where(strong, span, em) {
  color: rgba(221, 231, 243, 0.76);
}

body.dashboard-mode #model-stats .global-stats-pagination {
  border-color: rgba(148, 172, 201, 0.14);
  background: linear-gradient(180deg, #111f33, #0c1829);
  box-shadow: 0 16px 34px rgba(0, 5, 14, 0.28);
}

body.dashboard-mode #model-stats .stats-page-range span,
body.dashboard-mode #model-stats .global-stats-pagination > strong {
  color: rgba(226, 235, 246, 0.82);
}

body.dashboard-mode #model-stats .stats-page-range em,
body.dashboard-mode #model-stats .stats-page-gap {
  color: rgba(174, 195, 219, 0.62);
}

body.dashboard-mode #model-stats .global-stats-pagination button {
  border-color: rgba(148, 172, 201, 0.2);
  background: rgba(23, 40, 62, 0.92);
  color: rgba(226, 235, 246, 0.88);
}

body.dashboard-mode #model-stats .global-stats-pagination button:hover:not(:disabled) {
  border-color: rgba(244, 201, 105, 0.68);
  background: rgba(36, 56, 82, 0.96);
}

body.dashboard-mode #model-stats .global-stats-pagination button.is-current {
  border-color: #e4a51f;
  background: #e4a51f;
  color: #102039;
  box-shadow: 0 6px 18px rgba(228, 165, 31, 0.22);
}

body.dashboard-mode #model-stats :where(.data-loading-panel, .quality-loading) {
  border-color: rgba(148, 172, 201, 0.16);
  background:
    radial-gradient(circle at 50% 0%, rgba(228, 165, 31, 0.08), transparent 42%),
    #0c1728;
  color: #f2f6fb;
  box-shadow: inset 0 1px 0 rgba(244, 201, 105, 0.06);
}

body.dashboard-mode #model-stats .data-loading-panel strong,
body.dashboard-mode #model-stats .quality-loading b {
  color: #f2f6fb;
  -webkit-text-fill-color: #f2f6fb;
}

body.dashboard-mode #model-stats :where(.data-loading-panel p, .quality-loading span) {
  color: rgba(190, 207, 226, 0.7);
}

body.dashboard-mode #model-stats .data-loading-panel span {
  background: var(--home-gold);
  box-shadow: 0 0 12px rgba(228, 165, 31, 0.3);
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell {
  border-color: rgba(148, 172, 201, 0.16);
  background: #0c1728;
  color: #e8f0f8;
  box-shadow: none;
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell :where(
  .quality-closure-grid article,
  .quality-market-grid article,
  .quality-opening-coverage,
  .quality-opening-stages article,
  .quality-cohort-panel,
  .quality-track-grid article
) {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: #e8f0f8;
  box-shadow: none;
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell :where(
  .quality-closure-grid article.open,
  .quality-closure-grid article.closed
) {
  background: #111f33;
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell :where(
  .quality-closure-grid,
  .quality-market-grid,
  .quality-opening-coverage,
  .quality-opening-stages,
  .quality-cohort-panel,
  .quality-cohort-panel th,
  .quality-cohort-panel td
) {
  border-color: rgba(148, 172, 201, 0.12);
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell .quality-opening-stages {
  background: rgba(148, 172, 201, 0.12);
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell :where(
  .quality-closure-grid strong,
  .quality-market-grid strong,
  .quality-opening-stages strong,
  .quality-cohort-panel > header strong,
  .quality-track-grid strong
) {
  color: #f2f6fb;
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell :where(
  .quality-closure-grid span,
  .quality-market-grid span,
  .quality-closure-grid em,
  .quality-market-grid em,
  .quality-opening-stages span,
  .quality-opening-coverage > footer,
  .quality-cohort-panel > header em,
  .quality-cohort-panel td small,
  .quality-track-grid em,
  .model-quality-shell > footer
) {
  color: rgba(190, 207, 226, 0.68);
}

body.dashboard-mode :is(#model-stats, .model-quality-modal) .model-quality-shell .quality-cohort-status.observe {
  background: rgba(228, 165, 31, 0.14);
  color: var(--home-gold-soft);
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic {
  border-color: rgba(148, 172, 201, 0.22);
  background: #101e31;
  box-shadow: inset 4px 0 0 #d05a6d;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic.candidate {
  box-shadow: inset 4px 0 0 #35d7b1;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic > header,
body.dashboard-mode #model-stats .quality-shrinkage-summary article,
body.dashboard-mode #model-stats .quality-shrinkage-table {
  border-color: rgba(148, 172, 201, 0.16);
  background: #13243a;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic > header span {
  color: #ff8798;
  -webkit-text-fill-color: #ff8798;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic.candidate > header span {
  color: #6cf0d0;
  -webkit-text-fill-color: #6cf0d0;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic > header strong,
body.dashboard-mode #model-stats .quality-shrinkage-summary strong,
body.dashboard-mode #model-stats .quality-shrinkage-table td strong {
  color: #f2f6fb;
  -webkit-text-fill-color: #f2f6fb;
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic > header em,
body.dashboard-mode #model-stats .quality-shrinkage-summary span,
body.dashboard-mode #model-stats .quality-shrinkage-summary em,
body.dashboard-mode #model-stats .quality-shrinkage-verdict em,
body.dashboard-mode #model-stats .quality-shrinkage-table td small {
  color: rgba(207, 220, 235, 0.78);
  -webkit-text-fill-color: rgba(207, 220, 235, 0.78);
}

body.dashboard-mode #model-stats .quality-shrinkage-equation {
  color: #dce8f5;
  -webkit-text-fill-color: #dce8f5;
}

body.dashboard-mode #model-stats .quality-shrinkage-equation strong {
  color: #08111d;
  background: var(--home-gold);
  -webkit-text-fill-color: #08111d;
}

body.dashboard-mode #model-stats .quality-shrinkage-verdict {
  border-color: rgba(208, 90, 109, 0.38);
  background: rgba(126, 33, 50, 0.22);
}

body.dashboard-mode #model-stats .quality-shrinkage-diagnostic.candidate .quality-shrinkage-verdict {
  border-color: rgba(53, 215, 177, 0.32);
  background: rgba(24, 112, 90, 0.18);
}

body.dashboard-mode #model-stats .quality-shrinkage-verdict b {
  color: #ff9baa;
  -webkit-text-fill-color: #ff9baa;
}

body.dashboard-mode #model-stats .quality-shrinkage-verdict span {
  color: #e4edf7;
  -webkit-text-fill-color: #e4edf7;
}

body.dashboard-mode #model-stats .quality-shrinkage-table th {
  color: var(--home-gold-soft);
  background: #0c192a;
}

body.dashboard-mode #model-stats .quality-shrinkage-table td {
  border-color: rgba(148, 172, 201, 0.11);
  color: #dbe7f4;
}

body.dashboard-mode .global-stats-modal {
  background: rgba(1, 7, 14, 0.82);
  backdrop-filter: blur(4px);
}

body.dashboard-mode .global-stats-market-modal {
  background: rgba(1, 7, 14, 0.82);
}

body.dashboard-mode .global-stats-market-dialog {
  border-color: rgba(148, 172, 201, 0.18);
  background: #07111f;
  color: #e8f0f8;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.54);
}

body.dashboard-mode .global-stats-market-dialog-body {
  background: #07111f;
}

body.dashboard-mode .global-stats-market-intro {
  border-color: rgba(53, 215, 177, 0.24);
  color: rgba(221, 231, 243, 0.76);
  background: rgba(24, 112, 90, 0.16);
}

body.dashboard-mode .global-stats-market-panel,
body.dashboard-mode .global-stats-market-facts div {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
}

body.dashboard-mode .global-stats-market-panel > header {
  border-bottom-color: rgba(148, 172, 201, 0.12);
  background: #101d31;
}

body.dashboard-mode .global-stats-market-panel > header strong,
body.dashboard-mode .global-stats-market-outcome strong,
body.dashboard-mode .global-stats-market-metrics strong,
body.dashboard-mode .global-stats-market-facts dd {
  color: #f1f5fa;
}

body.dashboard-mode .global-stats-market-panel > header em,
body.dashboard-mode .global-stats-market-outcome span,
body.dashboard-mode .global-stats-market-metrics span,
body.dashboard-mode .global-stats-market-facts dt {
  color: rgba(203, 216, 232, 0.62);
}

body.dashboard-mode .global-stats-market-outcome,
body.dashboard-mode .global-stats-market-metrics article {
  background: #0a1626;
}

body.dashboard-mode .global-stats-market-outcome em,
body.dashboard-mode .global-stats-market-metrics em,
body.dashboard-mode .global-stats-market-note,
body.dashboard-mode .global-stats-market-empty {
  color: rgba(190, 207, 226, 0.58);
}

body.dashboard-mode .r15-backtest-dialog {
  border-color: rgba(148, 172, 201, 0.18);
  background: #07111f;
  color: #e8f0f8;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.54);
}

body.dashboard-mode .model-quality-dialog {
  border-color: rgba(148, 172, 201, 0.18);
  background: #07111f;
  color: #e8f0f8;
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.54);
}

body.dashboard-mode .model-quality-dialog .model-quality-dialog-body {
  background: #07111f;
}

body.dashboard-mode .model-quality-ledger-loading.is-error i {
  border-color: rgba(208, 90, 109, 0.3);
  border-top-color: #ff8798;
  color: #ff9baa;
}

body.dashboard-mode .model-quality-ledger-loading button {
  border-color: rgba(148, 172, 201, 0.24);
  color: #f2f6fb;
  background: #13243a;
}

body.dashboard-mode .r15-ledger-loading {
  background:
    radial-gradient(circle at 50% 0%, rgba(31, 209, 154, 0.08), transparent 42%),
    #0c1728;
  color: rgba(190, 207, 226, 0.7);
}

body.dashboard-mode .r15-ledger-loading b {
  color: #f2f6fb;
}

body.dashboard-mode .r15-ledger-loading i {
  border-color: rgba(148, 172, 201, 0.2);
  border-top-color: #1fd19a;
}

body.dashboard-mode .r15-backtest-dialog .global-stats-dialog-body,
body.dashboard-mode .r15-backtest-dialog .r15-backtest-body {
  background: #07111f;
  color: #e8f0f8;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-sample-ledger,
  .r15-comparison-panel,
  .r15-league-breakdown,
  .r15-scope-note,
  .r15-comparison-card,
  .r15-ledger-scroll
) {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
  color: #e8f0f8;
  box-shadow: none;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-sample-ledger dl > div,
  .r15-summary-grid > div,
  .r15-comparison-card.available,
  .r15-comparison-card.missing
) {
  border-color: rgba(148, 172, 201, 0.12);
  background: #111f33;
  color: #e8f0f8;
}

body.dashboard-mode .r15-backtest-dialog :where(h2, h3, strong, th) {
  color: #f2f6fb;
}

body.dashboard-mode .r15-backtest-dialog :where(p, small, em, .r15-scope-note) {
  color: rgba(190, 207, 226, 0.72);
}

body.dashboard-mode .r15-backtest-dialog .review-record-table {
  border-color: rgba(148, 172, 201, 0.12);
  background: #0c1728;
}

body.dashboard-mode .r15-backtest-dialog .review-record-table :where(th, td) {
  border-color: rgba(148, 172, 201, 0.12);
  background: #0c1728;
  color: rgba(222, 232, 244, 0.82);
}

body.dashboard-mode .r15-backtest-dialog .review-record-table tbody tr:nth-child(even) td {
  background: #0f1d30;
}

body.dashboard-mode .r15-backtest-dialog .review-record-table tbody tr:hover td {
  background: #172b43;
  color: #ffffff;
}

body.dashboard-mode .r15-backtest-dialog .review-record-table td.is-unreleased,
body.dashboard-mode .r15-backtest-dialog .review-record-table td.pending-cell {
  background: #211d14;
  color: #e8d49b;
}

/* Lock audit owns a dense semantic palette; keep every nested surface legible at night. */
body.dashboard-mode .r15-backtest-dialog .r15-sample-ledger dl div,
body.dashboard-mode .r15-backtest-dialog .r15-audit-metric,
body.dashboard-mode .r15-backtest-dialog .r15-league-card {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: #e8f0f8;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-sample-ledger dd,
  .r15-audit-metric > strong,
  .r15-audit-metric > b,
  .r15-league-card b,
  .r15-market-result b,
  .review-match-link
) {
  color: #f2f6fb;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-sample-ledger dt,
  .r15-audit-metric > span,
  .r15-audit-metric > em,
  .r15-scope-note span
) {
  color: rgba(190, 207, 226, 0.72);
}

body.dashboard-mode .r15-backtest-dialog :where(
  .version-badge,
  .r15-release-flag,
  .r15-sample-status,
  .r15-market-result em,
  .r15-mini-verdict
) {
  border: 1px solid rgba(148, 172, 201, 0.14);
  background: #162941;
  color: rgba(216, 228, 241, 0.82);
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-release-flag,
  .r15-market-result.hit em,
  .r15-sample-status.counted,
  .r15-mini-verdict.promising
) {
  border-color: rgba(31, 209, 154, 0.24);
  background: rgba(31, 209, 154, 0.12);
  color: #76e5bd;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-market-result.miss em,
  .r15-mini-verdict.frozen
) {
  border-color: rgba(228, 94, 111, 0.24);
  background: rgba(228, 94, 111, 0.12);
  color: #f19aa6;
}

body.dashboard-mode .r15-backtest-dialog :where(
  .r15-mini-verdict,
  .r15-verdict b
) {
  color: var(--home-gold-soft);
}

body.dashboard-mode .r15-backtest-dialog .r15-scope-note b {
  color: #76e5bd;
}

body.dashboard-mode .r15-backtest-dialog .r15-league-breakdown td > b,
body.dashboard-mode .r15-backtest-dialog .r15-backtest-table .review-match-link {
  color: #f2f6fb;
}

body.dashboard-mode .r15-backtest-dialog .r15-backtest-table tbody tr:hover > td,
body.dashboard-mode .r15-backtest-dialog .r15-backtest-table tbody tr.r15-row-released:hover > td {
  background: #172b43 !important;
  color: #ffffff;
}

/* Dense audit tables: high-contrast type and stable, non-jumping row focus. */
body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .odds-map-record-table,
  .global-stats-record-table
) tbody td {
  color: rgba(231, 239, 248, 0.82);
  transition:
    background-color 160ms ease-out,
    color 160ms ease-out,
    box-shadow 160ms ease-out;
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .odds-map-record-table,
  .global-stats-record-table
) tbody tr {
  transform: none;
  filter: none;
  box-shadow: none;
  transition: none;
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .odds-map-record-table,
  .global-stats-record-table
) tbody tr:hover {
  transform: none;
  filter: none;
  box-shadow: none;
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .odds-map-record-table,
  .global-stats-record-table
) tbody tr:hover td {
  background: #14243a !important;
  color: #f3f7fb;
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .odds-map-record-table,
  .global-stats-record-table
) tbody tr:hover td:first-child {
  box-shadow: inset 3px 0 0 var(--home-gold);
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .review-match-link,
  .odds-map-match-link
) {
  color: #b9d9f4;
  -webkit-text-fill-color: #b9d9f4;
  transition: color 160ms ease-out;
}

body.dashboard-mode :is(#odds-map, #model-stats) :where(
  .review-match-link,
  .odds-map-match-link
):hover {
  color: var(--home-gold-soft);
  -webkit-text-fill-color: var(--home-gold-soft);
}

body.dashboard-mode #model-stats .stats-kickoff-cell strong {
  color: #dce9f7;
}

body.dashboard-mode #model-stats .stats-kickoff-cell small {
  color: rgba(190, 207, 226, 0.72);
}

body.dashboard-mode #model-stats .global-stats-record-table .bad {
  color: #ff7d89;
}

body.dashboard-mode #model-stats .global-stats-record-table .gate-badge.watch {
  border-color: rgba(228, 165, 31, 0.3);
  background: rgba(228, 165, 31, 0.1);
  color: var(--home-gold-soft);
}

body.dashboard-mode #about-site :where(.about-note, .about-disclaimer) {
  border-color: rgba(228, 165, 31, 0.24);
  background: linear-gradient(145deg, #111f33, #0c1728);
  color: #eef4fb;
  box-shadow: none;
}

body.dashboard-mode #about-site :where(.about-note, .about-disclaimer) :where(strong, p) {
  color: rgba(221, 231, 243, 0.76);
}

body.is-detail-page .dashboard-shell > .detail-panel :where(
  .match-page-toolbar,
  .match-page-summary,
  .match-mode-switch,
  .match-page-section,
  .match-page-tile,
  .sporttery-model-panel
) {
  border-color: rgba(148, 172, 201, 0.13);
  background:
    radial-gradient(circle at 100% 0%, rgba(35, 76, 119, 0.1), transparent 40%),
    #0c1728;
  color: #eef4fb;
  box-shadow: none;
}

body.is-detail-page .dashboard-shell > .detail-panel .match-page-summary > div {
  border-color: rgba(148, 172, 201, 0.12);
  background: #111f33;
  color: #eef4fb;
}

body.is-detail-page .dashboard-shell > .detail-panel .match-page-summary .summary-grid > div {
  border-color: rgba(148, 172, 201, 0.12);
  background: #111f33;
  color: #eef4fb;
}

body.is-detail-page .dashboard-shell > .detail-panel :where(
  .match-page-toolbar,
  .match-page-summary,
  .match-mode-switch,
  .match-page-section,
  .match-page-tile,
  .sporttery-model-panel
) :where(h2, h3, h4, strong, b) {
  color: #f1f5fa;
}

body.is-detail-page .dashboard-shell > .detail-panel :where(
  .match-page-toolbar,
  .match-page-summary,
  .match-mode-switch,
  .match-page-section,
  .match-page-tile,
  .sporttery-model-panel
) :where(p, span, em, small) {
  color: rgba(203, 216, 232, 0.64);
}

body.is-detail-page .dashboard-shell > .detail-panel :where(button, .secondary) {
  border-color: rgba(148, 172, 201, 0.16);
  background: #111f33;
  color: rgba(221, 231, 243, 0.78);
}

body.is-detail-page .dashboard-shell > .detail-panel :where(button.active, button.primary) {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
}

body.is-detail-page .dashboard-shell > .detail-panel .data-loading-panel {
  border-color: rgba(148, 172, 201, 0.14);
  background: linear-gradient(145deg, #111f33, #0c1728);
  color: rgba(221, 231, 243, 0.72);
}

/* Match detail modes: one legible night palette for quick reading and full audit. */
body.is-detail-page .match-mode-panel {
  color: #e8f0f8;
  font-family: "Avenir Next", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body.is-detail-page .match-mode-panel :where(h2, h3, h4, dt) {
  color: #f3f7fb;
  -webkit-text-fill-color: #f3f7fb;
}

body.is-detail-page .match-mode-panel :where(p, li, dd) {
  color: rgba(211, 223, 237, 0.76);
}

body.is-detail-page [data-match-mode-panel="quick"] .quick-decision-board article,
body.is-detail-page [data-match-mode-panel="quick"] :where(
  .similar-case-summary,
  .similar-case-distribution,
  .similar-case-practical
) article,
body.is-detail-page [data-match-mode-panel="full"] :where(
  .similar-case-summary,
  .similar-case-distribution,
  .similar-case-practical
) article {
  border-color: rgba(148, 172, 201, 0.15);
  background: #111f33;
  color: #e8f0f8;
  box-shadow: none;
}

body.is-detail-page [data-match-mode-panel="quick"] .quick-decision-board article.quick-main-card {
  border-color: rgba(228, 165, 31, 0.34);
  background:
    radial-gradient(circle at 100% 0%, rgba(228, 165, 31, 0.1), transparent 44%),
    #111f33;
}

body.is-detail-page :where([data-match-mode-panel="quick"], [data-match-mode-panel="full"]) :where(
  .similar-case-summary,
  .similar-case-distribution,
  .similar-case-practical
) article small {
  color: rgba(190, 207, 226, 0.66);
}

body.is-detail-page :where([data-match-mode-panel="quick"], [data-match-mode-panel="full"]) :where(
  .similar-case-summary,
  .similar-case-distribution,
  .similar-case-practical
) article strong {
  color: #dce9f7;
}

body.is-detail-page [data-match-mode-panel="quick"] .similar-case-distribution article,
body.is-detail-page [data-match-mode-panel="full"] .similar-case-distribution article {
  border-color: rgba(228, 165, 31, 0.22);
  background: #211d14;
}

body.is-detail-page [data-match-mode-panel="quick"] .similar-case-distribution article small,
body.is-detail-page [data-match-mode-panel="full"] .similar-case-distribution article small {
  color: var(--home-gold-soft);
}

body.is-detail-page [data-match-mode-panel="quick"] .sporttery-detail-odds article {
  border-color: rgba(148, 172, 201, 0.15);
  background: #111f33;
  color: #e8f0f8;
  transition:
    border-color 160ms ease-out,
    background-color 160ms ease-out,
    transform 160ms ease-out;
}

body.is-detail-page [data-match-mode-panel="quick"] .sporttery-detail-odds article:hover {
  transform: translateY(-2px);
  border-color: rgba(228, 165, 31, 0.44);
  background-color: #14243a;
}

body.is-detail-page [data-match-mode-panel="quick"] .sporttery-detail-odds article small {
  color: rgba(190, 207, 226, 0.66);
}

body.is-detail-page [data-match-mode-panel="quick"] .sporttery-detail-odds article strong {
  color: var(--home-gold-soft);
  -webkit-text-fill-color: var(--home-gold-soft);
}

body.is-detail-page [data-match-mode-panel="full"] .decision-gate-panel :where(.decision-gate-notes span, .gate-badge) {
  border-color: rgba(148, 172, 201, 0.16);
  background: #111f33;
  color: rgba(221, 231, 243, 0.78);
}

body.is-detail-page [data-match-mode-panel="full"] .decision-gate-head strong {
  color: #f3f7fb;
}

body.is-detail-page [data-match-mode-panel="full"] .decision-gate-head b {
  color: rgba(190, 207, 226, 0.7);
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-narrative {
  border-color: rgba(148, 172, 201, 0.14);
  background:
    radial-gradient(circle at 90% 0%, rgba(228, 165, 31, 0.08), transparent 30%),
    #0c1728;
  color: #e8f0f8;
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-lead > p,
body.is-detail-page [data-match-mode-panel="full"] .match-editorial-lead em,
body.is-detail-page [data-match-mode-panel="full"] .match-editorial-sources {
  color: rgba(203, 216, 232, 0.7);
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-sections section {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
  color: #e8f0f8;
  box-shadow: none;
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-counter {
  border-left-color: #d64a61;
  background: #25151d;
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-flow {
  border-left-color: var(--home-gold);
  background: #211d14;
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-model {
  border-left-color: #36a58d;
  background: #10231f;
}

body.is-detail-page [data-match-mode-panel="full"] .match-editorial-narrative footer {
  border: 1px solid rgba(228, 165, 31, 0.22);
  background: #102642;
}

body.is-detail-page [data-match-mode-panel="full"] .similar-case-table tbody td {
  color: rgba(231, 239, 248, 0.82);
  transition:
    background-color 160ms ease-out,
    color 160ms ease-out,
    box-shadow 160ms ease-out;
}

body.is-detail-page [data-match-mode-panel="full"] .similar-case-table tbody tr {
  transform: none;
  filter: none;
  transition: none;
}

body.is-detail-page [data-match-mode-panel="full"] .similar-case-table tbody tr:hover td {
  background: #14243a !important;
  color: #f3f7fb;
}

body.is-detail-page [data-match-mode-panel="full"] .similar-case-table tbody tr:hover td:first-child {
  box-shadow: inset 3px 0 0 var(--home-gold);
}

/* Sporttery pool: inherit the homepage night-stadium visual language. */
body.sporttery-mode {
  background: var(--home-night);
  color: #eef4fb;
}

body.sporttery-mode::before {
  display: none;
}

body.sporttery-mode .home-topbar {
  border-bottom-color: rgba(228, 165, 31, 0.14);
  background: rgba(3, 10, 18, 0.96);
  box-shadow: 0 12px 34px rgba(0, 0, 0, 0.24);
}

body.sporttery-mode .home-topbar nav button {
  border-color: rgba(148, 172, 201, 0.14);
  background: rgba(12, 23, 40, 0.88);
  color: rgba(221, 231, 243, 0.72);
  -webkit-text-fill-color: rgba(221, 231, 243, 0.72);
}

body.sporttery-mode .home-topbar nav button.active {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
  -webkit-text-fill-color: #08111d;
  box-shadow: 0 10px 24px rgba(228, 165, 31, 0.18);
}

body.sporttery-mode .dashboard-shell {
  min-height: calc(100vh - 68px);
  background:
    radial-gradient(circle at 86% 0%, rgba(22, 67, 111, 0.18), transparent 28%),
    linear-gradient(180deg, #030a12 0%, #06111f 100%);
}

body.sporttery-mode #sporttery-pool {
  border-color: rgba(148, 172, 201, 0.14);
  background:
    radial-gradient(circle at 100% 0%, rgba(31, 73, 116, 0.12), transparent 34%),
    #07111f;
  color: #eef4fb;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.26);
}

body.sporttery-mode #sporttery-pool .section-head {
  border-bottom-color: rgba(148, 172, 201, 0.12);
}

body.sporttery-mode #sporttery-pool .eyebrow {
  color: var(--home-gold);
}

body.sporttery-mode #sporttery-pool .section-head h2,
body.sporttery-mode #sporttery-pool .day-lane-head strong {
  color: #f3f6fa;
}

body.sporttery-mode #sporttery-pool .section-head h2 {
  background: none;
  -webkit-text-fill-color: #f3f6fa;
}

body.sporttery-mode #sporttery-pool .pill,
body.sporttery-mode #sporttery-pool .day-lane-head em {
  border-color: rgba(228, 165, 31, 0.24);
  background: rgba(228, 165, 31, 0.08);
  color: var(--home-gold-soft);
}

body.sporttery-mode #sporttery-pool .pool-toolbar {
  border-color: rgba(148, 172, 201, 0.13);
  background: rgba(12, 23, 40, 0.88);
  box-shadow: none;
}

body.sporttery-mode #sporttery-pool .pool-toolbar span {
  color: rgba(203, 216, 232, 0.58);
}

body.sporttery-mode #sporttery-pool .pool-toolbar strong {
  color: var(--home-gold-soft);
}

body.sporttery-mode #sporttery-pool .pool-view-tabs button {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
  color: rgba(211, 223, 237, 0.68);
}

body.sporttery-mode #sporttery-pool .pool-view-tabs button.active {
  border-color: var(--home-gold);
  background: var(--home-gold);
  color: #08111d;
  box-shadow: 0 8px 20px rgba(228, 165, 31, 0.16);
}

body.sporttery-mode #sporttery-pool .day-lane-head span {
  color: var(--home-gold);
}

body.sporttery-mode #sporttery-pool .day-lane + .day-lane {
  border-top-color: rgba(148, 172, 201, 0.12);
}

body.sporttery-mode #sporttery-pool .match-card {
  border-color: rgba(148, 172, 201, 0.13);
  background:
    radial-gradient(circle at 100% 0%, rgba(35, 76, 119, 0.12), transparent 38%),
    linear-gradient(145deg, var(--home-panel-raised), var(--home-panel));
  color: #eef4fb;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.22);
}

body.sporttery-mode #sporttery-pool .match-card::before {
  height: 2px;
  background: linear-gradient(90deg, var(--home-gold), transparent 44%);
}

body.sporttery-mode #sporttery-pool .match-card::after {
  background: linear-gradient(90deg, rgba(228, 165, 31, 0.13), transparent 62%);
}

body.sporttery-mode #sporttery-pool .match-card:hover {
  border-color: rgba(228, 165, 31, 0.38);
  box-shadow: 0 22px 48px rgba(0, 0, 0, 0.32);
}

body.sporttery-mode #sporttery-pool .match-meta,
body.sporttery-mode #sporttery-pool .card-foot {
  color: rgba(203, 216, 232, 0.54);
}

body.sporttery-mode #sporttery-pool .teams strong {
  color: #f3f6fa;
}

body.sporttery-mode #sporttery-pool .teams b {
  border: 1px solid rgba(228, 165, 31, 0.22);
  background: rgba(228, 165, 31, 0.09);
  color: var(--home-gold-soft);
  box-shadow: none;
}

body.sporttery-mode #sporttery-pool .match-card-insight {
  border-color: rgba(148, 172, 201, 0.13);
  background: rgba(3, 10, 18, 0.46);
}

body.sporttery-mode #sporttery-pool .match-card-insight strong {
  color: #e8eef6;
}

body.sporttery-mode #sporttery-pool .match-card-insight em {
  color: rgba(203, 216, 232, 0.58);
}

body.sporttery-mode #sporttery-pool .sporttery-detail-link {
  color: var(--home-gold-soft);
}

body.sporttery-mode .site-footer {
  margin-top: 0;
  border-top: 1px solid rgba(228, 165, 31, 0.28);
  background: var(--home-night);
  color: rgba(221, 231, 243, 0.74);
}

body.sporttery-mode .site-footer-brand strong {
  color: #f2f6fb;
}

body.sporttery-mode .site-footer h3 {
  color: var(--home-gold-soft);
}

body.sporttery-mode .site-footer p,
body.sporttery-mode .site-footer button {
  color: rgba(203, 216, 232, 0.64);
}

body.sporttery-mode .site-footer-bottom {
  border-top-color: rgba(148, 172, 201, 0.12);
  color: rgba(181, 197, 216, 0.5);
}

/* Shared visual rhythm for home, event-pool and detail surfaces. */
body.home-mode :where(.panel, .match-card, .detail-card),
body.dashboard-mode :where(.panel, .match-card, .detail-card),
body.is-detail-page :where(.panel, .match-card, .detail-card) {
  border-radius: var(--surface-radius-md);
}

body.dashboard-mode .match-card,
body.is-detail-page .panel {
  border-color: var(--surface-border);
}

@keyframes homeHeroEnter {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes homeProbabilityIn {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

.home-hero .home-copy,
.home-hero .home-countdown-card {
  animation: homeHeroEnter 0.65s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.home-hero .home-countdown-card { animation-delay: 0.12s; }
.home-screen .home-match-card { animation-name: homeHeroEnter; animation-duration: 0.45s; animation-timing-function: ease-out; animation-fill-mode: both; }
.home-match-card.is-live .home-match-footer b i { animation: none; }

@media (max-width: 1099px) {
  .home-hero {
    min-height: 0;
    background-position: center, center, 62% center;
  }

  .home-hero-inner {
    grid-template-columns: 1fr;
  }

  .home-countdown-card {
    width: min(680px, 100%);
  }
}

@media (max-width: 640px) {
  .home-screen {
    padding-bottom: 0;
    background: var(--home-night);
  }

  .home-hero {
    padding: 24px 16px 22px;
    border-radius: 0;
    background-image:
      linear-gradient(90deg, rgba(3, 10, 18, 0.97) 0%, rgba(3, 10, 18, 0.78) 48%, rgba(3, 10, 18, 0.2) 100%),
      linear-gradient(180deg, rgba(3, 10, 18, 0.1), rgba(3, 10, 18, 0.32) 58%, #030a12 100%),
      url("./assets/home-hero-stadium-v1.jpg");
    background-position: center, center, 84% 54%;
    background-size: cover, cover, auto 118%;
  }

  .home-hero-inner {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }

  .home-copy {
    display: contents;
  }

  .home-badge {
    order: 1;
    min-height: 27px;
    padding: 0 11px;
    font-size: 10px;
  }

  .home-hero .home-copy h1 {
    order: 2;
    max-width: 100%;
    font-size: clamp(28px, 8.1vw, 31px);
    line-height: 1.08;
    letter-spacing: -0.045em;
    white-space: nowrap;
  }

  .home-hero .home-copy h1 strong {
    margin-top: 7px;
    font-size: 1.18em;
    white-space: nowrap;
  }

  .home-hero .home-copy h1::before {
    display: none;
  }

  .home-copy p {
    font-size: 15px;
    line-height: 1.72;
  }

  .home-actions {
    order: 4;
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .home-actions button {
    min-width: 0;
    min-height: 44px;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 11px;
    line-height: 1.2;
    white-space: nowrap;
  }

  .home-actions button:first-child {
    min-height: 44px;
    font-size: 11px;
  }

  .home-countdown-card {
    order: 3;
    width: 100%;
    grid-template-areas:
      "kicker timer"
      "teams timer";
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    row-gap: 5px;
    margin-top: -2px;
    padding: 12px 0 14px;
    border-top: 1px solid rgba(244, 201, 105, 0.16);
    text-shadow: none;
  }

  .home-countdown-kicker {
    gap: 7px;
    font-size: 9px;
    letter-spacing: 0.1em;
  }

  .home-countdown-kicker i {
    width: 5px;
    height: 5px;
    box-shadow: 0 0 0 3px rgba(228, 165, 31, 0.1);
  }

  .home-countdown-card strong {
    gap: 7px;
    color: #f5f7fa !important;
    font-size: clamp(16px, 4.4vw, 19px);
    font-weight: 900;
    white-space: nowrap;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.42);
    -webkit-text-fill-color: #f5f7fa;
  }

  .home-countdown-card strong span {
    color: #f5f7fa !important;
    -webkit-text-fill-color: #f5f7fa;
  }

  .home-countdown-card strong small { font-size: 12px; }
  .home-countdown-card .team-flag { display: none; }
  .home-countdown-grid div { padding-right: 6px; }
  .home-countdown-grid div + div { padding-left: 6px; }
  .home-countdown-grid div + div::before { top: 5px; bottom: 5px; }
  .home-countdown-grid b { font-size: clamp(22px, 6.5vw, 27px); }
  .home-countdown-grid small { margin-left: 2px; font-size: 8px; }

  #home-countdown-hour,
  #home-countdown-minute,
  #home-countdown-second {
    animation: none;
  }

  .home-upcoming {
    padding-top: 42px;
    padding-bottom: 34px;
  }

  .home-match-card {
    min-height: 0;
  }

  .home-team-mark {
    flex-basis: 32px;
    width: 32px;
    height: 32px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .home-hero .home-copy,
  .home-hero .home-countdown-card,
  .home-screen .home-match-card {
    animation: none;
  }
}

/* Market structure research follows the night palette as one surface. */
body.dashboard-mode .quality-market-structure {
  border-color: rgba(148, 172, 201, 0.16);
  background: #07111f;
  color: #eef4fb;
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.24);
}

body.dashboard-mode .quality-market-structure .market-structure-notice {
  border-bottom-color: rgba(148, 172, 201, 0.14);
  color: rgba(203, 216, 232, 0.72);
  background: #0c1728;
}

body.dashboard-mode .quality-market-structure .market-structure-notice b {
  color: #65efd0;
}

body.dashboard-mode .quality-market-structure .market-structure-notice strong {
  color: #08111d;
  background: #f4c969;
}

body.dashboard-mode .quality-market-structure .market-structure-sources {
  background: rgba(148, 172, 201, 0.14);
}

body.dashboard-mode .quality-market-structure .market-structure-source-card {
  background: linear-gradient(145deg, #101d31, #0c1728);
}

body.dashboard-mode .quality-market-structure .market-structure-source-card span {
  color: rgba(203, 216, 232, 0.64);
}

body.dashboard-mode .quality-market-structure .market-structure-source-card strong {
  color: #eef4fb;
}

body.dashboard-mode .quality-market-structure .market-structure-source-card b {
  color: #b9cbe0;
}

body.dashboard-mode .quality-market-structure .market-structure-source-card em {
  color: rgba(203, 216, 232, 0.54);
}

body.dashboard-mode .quality-market-structure .market-structure-counts {
  background: #0a1626;
}

body.dashboard-mode .quality-market-structure .market-structure-counts article {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
}

body.dashboard-mode .quality-market-structure .market-structure-counts span,
body.dashboard-mode .quality-market-structure .market-structure-counts em {
  color: rgba(203, 216, 232, 0.62);
}

body.dashboard-mode .quality-market-structure .market-structure-counts strong {
  color: #f1f5fa;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal,
body.dashboard-mode .quality-market-structure .market-structure-temporal-grid > section,
body.dashboard-mode .quality-market-structure .market-structure-temporal-scale,
body.dashboard-mode .quality-market-structure .market-structure-temporal-ledger {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal > header,
body.dashboard-mode .quality-market-structure .market-structure-temporal-grid > section > header,
body.dashboard-mode .quality-market-structure .market-structure-temporal-scale > header,
body.dashboard-mode .quality-market-structure .market-structure-temporal-ledger > header {
  border-bottom-color: rgba(148, 172, 201, 0.12);
  background: #101d31;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal > header strong,
body.dashboard-mode .quality-market-structure .market-structure-temporal-grid > section > header strong,
body.dashboard-mode .quality-market-structure .market-structure-temporal-scale > header strong,
body.dashboard-mode .quality-market-structure .market-structure-temporal-ledger > header strong {
  color: #f1f5fa;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal > header em,
body.dashboard-mode .quality-market-structure .market-structure-temporal-grid > section > header em,
body.dashboard-mode .quality-market-structure .market-structure-temporal-scale > header em,
body.dashboard-mode .quality-market-structure .market-structure-temporal-ledger > header em {
  color: rgba(203, 216, 232, 0.58);
}

body.dashboard-mode .quality-market-structure .market-structure-temporal-cards article,
body.dashboard-mode .quality-market-structure .market-structure-temporal-timeline article {
  border-color: rgba(148, 172, 201, 0.14);
  background: #111f33;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal-cards span,
body.dashboard-mode .quality-market-structure .market-structure-temporal-cards em,
body.dashboard-mode .quality-market-structure .market-structure-temporal-timeline span,
body.dashboard-mode .quality-market-structure .market-structure-temporal-timeline em,
body.dashboard-mode .quality-market-structure .market-structure-temporal-timeline time,
body.dashboard-mode .quality-market-structure .market-structure-temporal-timeline strong {
  color: rgba(203, 216, 232, 0.68);
}

body.dashboard-mode .quality-market-structure .market-structure-temporal-cards strong {
  color: #f1f5fa;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal > footer {
  border-top-color: rgba(148, 172, 201, 0.12);
  color: rgba(203, 216, 232, 0.68);
  background: #101d31;
}

body.dashboard-mode .quality-market-structure .market-structure-paper-ledger > footer {
  border-top-color: rgba(148, 172, 201, 0.12);
  color: rgba(203, 216, 232, 0.68);
  background: #101d31;
}

body.dashboard-mode .quality-market-structure .paper-ledger-pagination {
  border-color: rgba(148, 172, 201, 0.16);
  background: #101d31;
}

body.dashboard-mode .quality-market-structure .paper-ledger-pagination > strong,
body.dashboard-mode .quality-market-structure .paper-ledger-pagination .stats-page-range em {
  color: rgba(203, 216, 232, 0.68);
}

body.dashboard-mode .quality-market-structure .paper-ledger-pagination button:not(.is-current) {
  border-color: rgba(148, 172, 201, 0.28);
  color: #d6e2ef;
  background: #16263b;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal-loading {
  border-color: rgba(148, 172, 201, 0.24);
  color: #cbd8e8;
  background: #111f33;
}

body.dashboard-mode .quality-market-structure .market-structure-temporal-loading.is-error {
  color: #ffc3ca;
  background: #2a1721;
}

body.dashboard-mode .quality-market-structure .market-structure-research-grid > section,
body.dashboard-mode .quality-market-structure .market-structure-volume,
body.dashboard-mode .quality-market-structure .market-structure-ledger {
  border-color: rgba(148, 172, 201, 0.14);
  background: #0c1728;
}

body.dashboard-mode .quality-market-structure .market-structure-research-grid > section > header,
body.dashboard-mode .quality-market-structure .market-structure-volume > header,
body.dashboard-mode .quality-market-structure .market-structure-ledger > header,
body.dashboard-mode .quality-market-structure .market-structure-volume-grid > section > header {
  border-bottom-color: rgba(148, 172, 201, 0.12);
  background: #101d31;
}

body.dashboard-mode .quality-market-structure .market-structure-research-grid > section > header strong,
body.dashboard-mode .quality-market-structure .market-structure-volume > header strong,
body.dashboard-mode .quality-market-structure .market-structure-ledger > header strong,
body.dashboard-mode .quality-market-structure .market-structure-volume-grid > section > header strong {
  color: #f1f5fa;
}

body.dashboard-mode .quality-market-structure .market-structure-research-grid > section > header em,
body.dashboard-mode .quality-market-structure .market-structure-volume > header em,
body.dashboard-mode .quality-market-structure .market-structure-ledger > header em,
body.dashboard-mode .quality-market-structure .market-structure-volume-grid > section > header em {
  color: rgba(203, 216, 232, 0.58);
}

body.dashboard-mode .quality-market-structure .market-structure-volume-grid > section {
  border-color: rgba(148, 172, 201, 0.14);
}

body.dashboard-mode .quality-market-structure .market-structure-table table {
  background: #07111f;
  color: rgba(221, 231, 243, 0.74);
}

body.dashboard-mode .quality-market-structure .market-structure-table th,
body.dashboard-mode .quality-market-structure .market-structure-table td {
  border-bottom-color: rgba(148, 172, 201, 0.1);
}

body.dashboard-mode .quality-market-structure .market-structure-table th {
  background: #111f33;
  color: var(--home-gold-soft);
}

body.dashboard-mode .quality-market-structure .market-structure-table td {
  background: #0a1626;
  color: rgba(221, 231, 243, 0.72);
}

body.dashboard-mode .quality-market-structure .market-structure-table tr:nth-child(even) td {
  background: #0c192a;
}

body.dashboard-mode .quality-market-structure .market-structure-table td strong {
  color: #dce9f7;
}

body.dashboard-mode .quality-market-structure .market-structure-table td small {
  color: rgba(190, 207, 226, 0.58);
}

body.dashboard-mode .quality-market-structure .market-structure-volume-foot {
  border-left-color: var(--home-gold);
  color: rgba(203, 216, 232, 0.7);
  background: #211d14;
}

body.dashboard-mode .quality-market-structure .market-structure-volume-foot b {
  color: var(--home-gold-soft);
}

body.dashboard-mode .quality-market-structure .market-structure-gate {
  border-top-color: rgba(228, 165, 31, 0.24);
  color: #f0c875;
  background: #211d14;
}

body.dashboard-mode .quality-market-structure .market-structure-gate span,
body.dashboard-mode .quality-market-structure .market-structure-gate em {
  color: rgba(240, 220, 168, 0.72);
}
