/* Game Centre — public fan-facing page */
[hidden] { display: none !important; }

:root {
  --mc-bg: #f2f4f7;
  --mc-card: #fff;
  --mc-border: rgba(0,0,0,0.08);
  --mc-text: #111;
  --mc-muted: rgba(0,0,0,0.42);
  --mc-faint: rgba(0,0,0,0.28);
  --mc-accent: #0f172a;
  --mc-orange: #f26522;
  --mc-blue: #2563eb;
  --mc-green: #16a34a;
  --mc-red: #b91c1c;
  --mc-amber: #f59e0b;
  --mc-live: #16a34a;
  --mc-upcoming: #2563eb;
  --mc-ft: #b91c1c;
  --mc-bg-subtle: #f7f8fb;
  --mc-hero-bg: linear-gradient(118deg, #0a0c12 0%, #12151f 42%, #1a1510 100%);
  --mc-radius: 10px;
}

*, *::before, *::after { box-sizing: border-box; }

body {
  margin: 0;
  font-family: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  background: var(--mc-bg);
  color: var(--mc-text);
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}

/* ── Page layout ─────────────────────────────────────────────────────────── */
.mc-page {
  max-width: 1200px;
  margin: 0 auto;
  padding: 20px 16px 60px;
}

/* ── Header ──────────────────────────────────────────────────────────────── */
.mc-head {
  margin-bottom: 12px;
}

html.mc-hide-back .mc-head,
.mc-hide-back .mc-head {
  display: none;
}
html.mc-hide-back .mc-page {
  padding-top: 12px;
}

.mc-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid var(--mc-border);
  background: #fff;
  font-size: .8rem;
  font-weight: 600;
  color: var(--mc-text);
  text-decoration: none;
  white-space: nowrap;
  transition: border-color .12s, background .12s;
}
.mc-back:hover {
  border-color: var(--mc-accent);
  color: var(--mc-accent);
}

@media (max-width: 640px) {
  .mc-back {
    font-size: .72rem;
    padding: 6px 10px;
  }
}

/* ── Card ────────────────────────────────────────────────────────────────── */
.mc-card {
  background: var(--mc-card);
  border-radius: var(--mc-radius);
  border: 1px solid var(--mc-border);
  margin-bottom: 12px;
  overflow: hidden;
}
/* Sticky PBP column headers need overflow visible on the card wrapper */
.mc-card.mc-card--pbp {
  overflow: visible;
}

.mc-section-title {
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
  color: var(--mc-muted);
  padding: 14px 18px 10px;
  border-bottom: 1px solid var(--mc-border);
}

/* ── Scoreboard / hero ───────────────────────────────────────────────────── */
.mc-hero.mc-scoreboard {
  margin-bottom: 10px;
  border-radius: var(--mc-radius);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
}
.mc-scoreboard {
  position: relative;
}

/* Compact sticky scoreboard — slides in when the hero scrolls away */
.mc-sticky-score {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  color: #fff;
  background: var(--mc-hero-bg);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.22);
  transform: translateY(-110%);
  opacity: 0;
  pointer-events: none;
  transition: transform 0.22s ease, opacity 0.22s ease;
  padding-top: env(safe-area-inset-top, 0px);
}
.mc-sticky-score.is-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}
.mc-sticky-score.mc-scoreboard--has-team-colors {
  background:
    linear-gradient(
      118deg,
      var(--mc-home-tint, transparent) 0%,
      rgba(8, 10, 16, 0.98) 42%,
      rgba(8, 10, 16, 0.98) 58%,
      var(--mc-away-tint, transparent) 100%
    );
}
.mc-sticky-score-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 8px 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: 10px 14px;
}
.mc-sticky-team {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.mc-sticky-team--home {
  justify-content: flex-end;
}
.mc-sticky-team--away {
  justify-content: flex-start;
}
.mc-sticky-logo {
  width: 32px;
  height: 32px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-sticky-name {
  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mc-sticky-center {
  text-align: center;
  min-width: 120px;
}
.mc-sticky-score-row {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.mc-sticky-score-num {
  font-size: 1.35rem;
  font-weight: 900;
  font-variant-numeric: tabular-nums;
  line-height: 1;
}
.mc-sticky-countdown {
  font-size: 0.95rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  font-variant-numeric: tabular-nums;
}
.mc-sticky-status {
  margin-top: 3px;
  font-size: 0.62rem;
  font-weight: 600;
  line-height: 1.25;
  color: rgba(255, 255, 255, 0.72);
  max-width: min(42vw, 220px);
  margin-left: auto;
  margin-right: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mc-sticky-status.is-live {
  color: #4ade80;
}
.mc-sticky-score .mc-status-chip {
  font-size: 0.52rem;
  padding: 3px 8px;
}
@media (max-width: 640px) {
  .mc-sticky-score-inner {
    padding: 7px 12px;
    gap: 8px 10px;
  }
  .mc-sticky-name {
    font-size: 0.72rem;
    max-width: 22vw;
  }
  .mc-sticky-logo {
    width: 28px;
    height: 28px;
  }
  .mc-sticky-score-num {
    font-size: 1.15rem;
  }
  .mc-sticky-status {
    display: none;
  }
}

.mc-scoreboard-banner {
  position: relative;
  background: var(--mc-hero-bg);
  overflow: hidden;
  color: #fff;
}
.mc-scoreboard-banner--has-match-bg {
  background-color: #0a0c12;
}
.mc-scoreboard--has-match-bg.mc-scoreboard--has-team-colors .mc-scoreboard-banner {
  background: none;
  background-color: #0a0c12;
}
.mc-scoreboard--has-match-bg.mc-scoreboard--has-team-colors .mc-scoreboard-banner::before {
  background: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.08) 0%,
    rgba(0, 0, 0, 0.28) 100%
  );
  opacity: 1;
}
.mc-scoreboard--has-match-bg .mc-scoreboard-watermarks {
  display: none;
}
.mc-scoreboard--has-match-bg .mc-scoreboard-scrim {
  display: block;
  background: rgba(0, 0, 0, 0.18);
}
.mc-scoreboard-watermarks {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}
.mc-scoreboard-scrim {
  display: none;
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background: rgba(6, 8, 14, 0.52);
}
.mc-scoreboard--has-team-colors .mc-scoreboard-scrim {
  display: block;
  background: rgba(0, 0, 0, 0.12);
}
.mc-scoreboard-watermark {
  position: absolute;
  width: min(42vw, 320px);
  height: min(42vw, 320px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.mc-scoreboard-watermark::before {
  content: '';
  position: absolute;
  inset: 8%;
  background: radial-gradient(
    circle at center,
    var(--mc-watermark-color, rgba(255, 255, 255, 0.25)) 0%,
    transparent 68%
  );
  opacity: 0.55;
  pointer-events: none;
}
.mc-scoreboard-watermark img {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 0.12;
  filter: drop-shadow(0 0 20px var(--mc-watermark-color, transparent));
}
.mc-scoreboard-watermark--home {
  left: 2%;
  top: 50%;
  transform: translateY(-50%) rotate(-8deg);
}
.mc-scoreboard-watermark--away {
  right: 2%;
  top: 50%;
  transform: translateY(-50%) rotate(8deg);
}
@media (max-width: 640px) {
  .mc-scoreboard-watermark {
    width: min(40vw, 135px);
    height: min(40vw, 135px);
  }
  .mc-scoreboard-watermark img {
    opacity: 0.22;
  }
}
.mc-scoreboard--has-team-colors .mc-scoreboard-banner {
  background:
    radial-gradient(ellipse 100% 140% at 0% 50%, var(--mc-home-glow, transparent), transparent 68%),
    radial-gradient(ellipse 100% 140% at 100% 50%, var(--mc-away-glow, transparent), transparent 68%),
    linear-gradient(
      118deg,
      var(--mc-home-accent, #303030) 0%,
      var(--mc-home-accent, #303030) 16%,
      rgba(8, 10, 16, 0.94) 34%,
      rgba(8, 10, 16, 0.98) 50%,
      rgba(8, 10, 16, 0.94) 66%,
      var(--mc-away-accent, #303030) 84%,
      var(--mc-away-accent, #303030) 100%
    );
}
.mc-scoreboard--has-team-colors .mc-scoreboard-banner::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background:
    linear-gradient(180deg, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0.18) 100%),
    repeating-linear-gradient(
      -12deg,
      rgba(255, 255, 255, 0.015) 0 2px,
      transparent 2px 6px
    );
  opacity: 0.55;
}
.mc-scoreboard--complete:not(.mc-scoreboard--has-team-colors)::before,
.mc-scoreboard--live:not(.mc-scoreboard--has-team-colors)::before,
.mc-scoreboard--upcoming:not(.mc-scoreboard--has-team-colors)::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
}
.mc-scoreboard--complete:not(.mc-scoreboard--has-team-colors)::before { background: var(--mc-ft); }
.mc-scoreboard--live:not(.mc-scoreboard--has-team-colors)::before     { background: var(--mc-live); }
.mc-scoreboard--upcoming:not(.mc-scoreboard--has-team-colors)::before { background: var(--mc-upcoming); }
.mc-scoreboard--has-team-colors .mc-team--home .mc-team-code {
  color: rgba(255, 255, 255, 0.72);
}
.mc-scoreboard--has-team-colors .mc-team--away .mc-team-code {
  color: rgba(255, 255, 255, 0.72);
}
.mc-scoreboard--has-team-colors .mc-team--home .mc-team-name,
.mc-scoreboard--has-team-colors .mc-team--away .mc-team-name {
  color: #fff;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.45);
}
.mc-scoreboard--has-team-colors .mc-score.mc-score--countdown {
  background: none;
  -webkit-background-clip: unset;
  background-clip: unset;
  color: #fff;
}
.mc-scoreboard--has-team-colors .mc-teams-hero .mc-kicker {
  color: rgba(255, 255, 255, 0.72);
}
.mc-scoreboard--has-team-colors .mc-score {
  color: #fff;
}
.mc-scoreboard--has-team-colors .mc-score .mc-sep {
  color: rgba(255, 255, 255, 0.42);
}
.mc-scoreboard--has-team-colors .mc-meta {
  color: rgba(255, 255, 255, 0.68);
}

.mc-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.mc-scoreboard-layout {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
}
.mc-scoreboard-main {
  min-width: 0;
  width: 100%;
}

.mc-preview-h2h-wrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.mc-preview-h2h-wrap .mc-preview-group {
  margin: 0;
}

.mc-body-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  align-items: start;
}
.mc-body-layout--sidebar {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 340px);
}
.mc-body-main {
  min-width: 0;
}

/* Ad slots — hidden until GAM fills them (add .is-loaded via ad script) */
.mc-ad {
  display: none;
  margin: 0 auto;
  overflow: hidden;
}
.mc-ad.is-loaded {
  display: flex;
  align-items: center;
  justify-content: center;
}
.mc-ad--leaderboard {
  width: 100%;
  max-width: 728px;
  min-height: 90px;
  margin-bottom: 12px;
}
.mc-ad--leaderboard-bottom {
  margin-top: 8px;
  margin-bottom: 0;
}
.mc-ad--mrec {
  width: 300px;
  max-width: 100%;
  min-height: 250px;
  margin: 0 auto 12px;
}
@media (max-width: 900px) {
  .mc-ad--mrec {
    display: none !important;
  }
}
/* News sidebar only on Summary / Play-by-Play / Video (and pregame) */
.mc-body-layout:not(.mc-body-layout--sidebar) > .mc-news-sidebar {
  display: none !important;
}
@media (max-width: 900px) {
  .mc-body-layout--sidebar {
    grid-template-columns: 1fr;
  }
  .mc-body-layout--sidebar > .mc-news-sidebar {
    display: flex !important;
  }
  .mc-body-layout--sidebar.mc-body-layout--live-video {
    display: flex;
    flex-direction: column;
  }
  .mc-body-layout--sidebar.mc-body-layout--live-video > .mc-news-sidebar {
    order: -1;
  }
}

.mc-teams-hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  padding: 24px 24px 12px;
  position: relative;
  z-index: 1;
}

.mc-hero-top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  width: 100%;
}

.mc-competition-brand {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 41px;
}

.mc-competition-logo {
  display: block;
  height: 41px;
  width: auto;
  max-width: min(100%, 320px);
  object-fit: contain;
}

.mc-teams-hero .mc-kicker {
  margin: 0;
  text-align: center;
  font-size: .875rem;
  font-weight: 600;
  letter-spacing: .04em;
  color: rgba(255, 255, 255, 0.72);
}

.mc-meta-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: #e5e5e5;
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.4;
}

.mc-meta-dot {
  color: rgba(229, 229, 229, 0.72);
  user-select: none;
}

.mc-meta-item {
  white-space: nowrap;
}

.mc-teams-board {
  display: grid;
  width: 100%;
  max-width: 1200px;
  --mc-team-logo-w: 103px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  grid-template-areas:
    "home center away"
    "odds-home dabble odds-away";
  column-gap: 20px;
  row-gap: 8px;
  align-items: center;
}

.mc-team--home { grid-area: home; }
.mc-score-center { grid-area: center; }
.mc-team--away { grid-area: away; }

.mc-odds-bar {
  display: contents;
}
.mc-odds-bar[hidden] {
  display: none;
}
.mc-odds-bar-side--home { grid-area: odds-home; justify-self: start; }
.mc-odds-bar-center { grid-area: dabble; }
.mc-odds-bar-side--away { grid-area: odds-away; justify-self: end; }

.mc-odds-bar-side {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--mc-team-logo-w);
  min-height: 28px;
  flex-shrink: 0;
}
.mc-odds-bar-center {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.mc-team {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 20px;
  min-width: 0;
  flex: 1 1 0;
}
.mc-team-odds-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 72px;
  padding: 5px 14px;
  border-radius: 999px;
  background: #7047eb;
  color: #fff;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
  letter-spacing: 0.01em;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.18);
}
a.mc-team-odds-link:hover {
  filter: brightness(1.08);
}

.mc-scoreboard:not(.mc-scoreboard--has-odds) .mc-teams-board {
  grid-template-areas: "home center away";
  row-gap: 0;
}

.mc-hero-dabble-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  opacity: 0.95;
}
.mc-hero-dabble-link:hover {
  opacity: 1;
}
.mc-hero-dabble-logo {
  display: block;
  width: auto;
  height: 32px;
  max-width: 96px;
  object-fit: contain;
}
.mc-scoreboard--has-match-bg .mc-hero-dabble-logo {
  filter: brightness(0) invert(1);
}
.mc-scoreboard--has-odds .mc-teams-hero {
  gap: 12px;
}
.mc-team--home {
  justify-content: flex-start;
  text-align: left;
}
.mc-team--away {
  flex-direction: row-reverse;
  justify-content: flex-start;
  text-align: right;
}
.mc-team-info {
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  max-width: 258px;
}
.mc-team--away .mc-team-info {
  align-items: flex-end;
}

.mc-team-logo {
  width: var(--mc-team-logo-w);
  height: var(--mc-team-logo-w);
  object-fit: contain;
  flex-shrink: 0;
}

.mc-team-name {
  font-size: 1.25rem;
  font-weight: 600;
  color: #fff;
  line-height: 1.4;
  overflow-wrap: break-word;
}
.mc-team-record {
  font-size: 1.125rem;
  font-weight: 400;
  letter-spacing: 0;
  color: #e5e5e5;
  line-height: 1.28;
}
.mc-team--home .mc-team-record,
.mc-team--away .mc-team-record {
  text-align: inherit;
}

.mc-team-code {
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
}

.mc-score-center {
  text-align: center;
  flex-shrink: 0;
  min-width: 180px;
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.mc-score-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(16px, 4vw, 48px);
}
.mc-score-num {
  font-size: 3rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.12;
  color: #fff;
  font-variant-numeric: tabular-nums;
  min-width: 1.1em;
}

.mc-score {
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -.02em;
  line-height: 1.1;
  color: #fff;
  white-space: nowrap;
  font-variant-numeric: tabular-nums;
}
.mc-score.mc-score--countdown {
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #fff;
}
.mc-score .mc-sep { color: rgba(255,255,255,.35); font-weight: 300; margin: 0 6px; }

.mc-status-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 4px;
  border-radius: 4px;
  font-size: 1.125rem;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
  flex-shrink: 0;
  background: rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(255, 255, 255, 0.14);
}
.mc-status-chip.is-live {
  background: #093;
  border-color: #093;
  color: #fff;
}
.mc-status-chip.is-final {
  background: rgba(242, 101, 34, 0.92);
  border-color: rgba(242, 101, 34, 0.92);
  color: #fff;
}
.mc-status-chip.is-scheduled {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.72);
  font-size: .875rem;
}

.mc-sticky-status .mc-status-part--clock {
  font-size: inherit;
  opacity: 0.85;
}

.mc-meta {
  text-align: center;
  font-size: .74rem;
  color: rgba(255, 255, 255, 0.58);
  padding: 0 24px 16px;
  position: relative;
  z-index: 1;
}
.mc-hero-watch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px;
  min-height: 45px;
  margin-top: 0;
  cursor: pointer;
}
.mc-hero-watch .mc-meta-broadcast {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: flex-end;
  justify-content: center;
  margin-top: 0;
}
.mc-meta-broadcast {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  justify-content: center;
  align-items: flex-end;
  margin-top: 0;
}
.mc-bc img {
  width: auto;
  height: clamp(27px, 4vw, 41px);
  object-fit: contain;
  flex-shrink: 0;
}
.mc-bc--logo-only img { width: auto; height: clamp(27px, 4vw, 41px); }

.mc-hero-latest-play {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: center;
  gap: 6px;
  margin: 0;
  max-width: min(100%, 520px);
  padding: 0;
  border: none;
  background: transparent;
  box-shadow: none;
  text-align: center;
  line-height: 1.25;
  color: #e5e5e5;
  font-size: 1rem;
}
.mc-hero-latest-play.is-live > div {
  display: inline;
}
.mc-hero-latest-play.is-multiline {
  display: block;
}
.mc-hero-latest-play-label {
  display: none;
}
.mc-hero-latest-play-body {
  display: contents;
}
.mc-hero-latest-play-clock {
  flex: 0 0 auto;
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0;
  color: #fff;
  white-space: nowrap;
}
.mc-hero-latest-play-text {
  font-size: 1rem;
  font-weight: 400;
  color: #e5e5e5;
}
.mc-scoreboard--has-team-colors .mc-hero-latest-play {
  background: transparent;
  border: none;
  box-shadow: none;
}

/* ── Match news sidebar ──────────────────────────────────────────────────── */
.mc-news-sidebar {
  display: flex;
  flex-direction: column;
  gap: 14px;
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
  position: sticky;
  top: 12px;
  align-self: start;
  height: auto;
  max-height: none;
  overflow: visible;
}
.mc-news-sidebar-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-height: 0;
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: var(--mc-radius);
  padding: 14px;
}
.mc-sidebar-section {
  display: flex;
  flex-direction: column;
}
.mc-sidebar-video-section[hidden],
.mc-sidebar-news-section[hidden] {
  display: none;
}
.mc-sidebar-video-card {
  padding: 14px;
  overflow: hidden;
}
.mc-news-sidebar-body[hidden] { display: none; }
.mc-block-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 10px;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.2;
  color: var(--mc-text);
}
.mc-block-title-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.mc-block-title-row .mc-block-title {
  margin-bottom: 0;
}
.mc-block-title-sub {
  font-size: .75rem;
  font-weight: 500;
  color: var(--mc-muted);
  margin-left: auto;
  text-align: right;
}
.mc-section-block {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 0;
}
.mc-leaders-card {
  padding: 0;
  overflow: hidden;
}
.mc-leaders-card .mc-leaders-grid {
  padding: 12px 14px 16px;
}
.mc-quarters-wrap {
  padding: 4px 0 8px;
}
.mc-quarters-wrap .mc-quarters-table {
  margin: 0;
  width: 100%;
}
.mc-news-block {
  display: flex;
  flex-direction: column;
}
.mc-news-block--team {
  margin-top: 4px;
}
.mc-news-block--team .mc-ai-header {
  padding: 10px 0 8px;
}
.mc-news-featured {
  margin-bottom: 10px;
}
.mc-news-featured[hidden] { display: none; }
.mc-news-featured-card {
  display: block;
  text-decoration: none;
  color: inherit;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid var(--mc-border);
  background: var(--mc-card);
  transition: border-color .12s, box-shadow .12s;
}
.mc-news-featured-card:hover {
  border-color: rgba(0,0,0,.14);
  box-shadow: 0 4px 14px rgba(15,23,42,.08);
}
.mc-news-featured-media {
  aspect-ratio: 16 / 10;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  overflow: hidden;
}
.mc-news-featured-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mc-news-featured-body {
  padding: 10px 12px 12px;
}
.mc-news-featured-tag {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: .52rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: rgba(37, 99, 235, 0.12);
  color: var(--mc-blue);
  margin-bottom: 6px;
}
.mc-news-featured-tag.is-breaking {
  background: #b91c1c;
  color: #fff;
}
.mc-news-featured-tag.is-feature {
  background: rgba(242, 101, 34, 0.14);
  color: var(--mc-orange);
}
.mc-news-featured-tag.is-analysis {
  background: rgba(37, 99, 235, 0.12);
  color: var(--mc-blue);
}
.mc-news-featured-date {
  display: block;
  font-size: .62rem;
  color: var(--mc-muted);
  margin-bottom: 4px;
}
.mc-news-featured-title {
  margin: 0;
  font-size: .88rem;
  font-weight: 800;
  line-height: 1.35;
  color: var(--mc-text);
}
.mc-news-secondary {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 4px;
}
.mc-news-secondary:empty { display: none; }
.mc-news-secondary-card {
  display: flex;
  align-items: stretch;
  gap: 0;
  text-decoration: none;
  color: inherit;
  padding: 0;
  border-radius: 10px;
  border: 1px solid var(--mc-border);
  background: var(--mc-card);
  overflow: hidden;
  transition: border-color .12s;
}
.mc-news-secondary-card:hover {
  border-color: rgba(0,0,0,.14);
}
.mc-news-secondary-thumb {
  flex: 0 0 118px;
  width: 118px;
  height: 74px;
  border-radius: 0;
  overflow: hidden;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
}
.mc-news-secondary-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mc-news-secondary-body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  justify-content: center;
  padding: 8px 12px;
}
.mc-news-secondary-tag {
  display: inline-block;
  align-self: flex-start;
  padding: 1px 5px;
  border-radius: 3px;
  font-size: .5rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: rgba(37, 99, 235, 0.12);
  color: var(--mc-blue);
}
.mc-news-secondary-tag.is-feature {
  background: rgba(242, 101, 34, 0.12);
  color: var(--mc-orange);
}
.mc-news-secondary-tag.is-breaking {
  background: rgba(185, 28, 28, 0.12);
  color: #b91c1c;
}
.mc-news-secondary-tag.is-analysis {
  background: rgba(37, 99, 235, 0.12);
  color: var(--mc-blue);
}
.mc-news-secondary-title {
  margin: 0;
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.35;
  color: var(--mc-text);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Featured live / full-game replay tile (above news) */
.mc-sidebar-video {
  padding: 0;
  flex-shrink: 0;
}
.mc-sidebar-video-label {
  margin: 0 0 8px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--mc-text);
}
.mc-sidebar-video-tile {
  display: block;
  width: 100%;
  padding: 0;
  border: 1px solid rgba(242, 101, 34, 0.28);
  border-radius: 10px;
  overflow: hidden;
  background: var(--mc-card);
  cursor: pointer;
  text-align: left;
  color: inherit;
  box-shadow: 0 4px 18px rgba(15, 23, 42, 0.1);
  transition: border-color .12s, box-shadow .12s;
}
.mc-sidebar-video-tile:hover {
  border-color: rgba(242, 101, 34, 0.45);
  box-shadow: 0 6px 22px rgba(15, 23, 42, 0.14);
}
.mc-sidebar-video-thumb {
  position: relative;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
}
.mc-sidebar-video-live-sub {
  margin: 6px 0 0;
  font-size: .68rem;
  line-height: 1.35;
  color: var(--mc-muted);
  font-weight: 700;
}
.mc-sidebar-video-skel-thumb--compact {
  flex: 0 0 96px;
  width: 96px;
  height: 54px;
  aspect-ratio: unset;
}
.mc-sidebar-video-skel-sub {
  height: 8px;
  width: 88%;
  margin-top: 6px;
  border-radius: 4px;
}
.mc-news-sidebar.mc-news-sidebar--live {
  gap: 8px;
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-list {
  gap: 7px;
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-card {
  min-height: 62px;
  height: auto;
  border-radius: 4px;
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-card-media {
  width: 68px;
  min-height: 62px;
  height: auto;
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-card-body {
  padding: 6px 10px;
  gap: 2px;
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-card-title {
  font-size: .72rem;
  -webkit-line-clamp: 2;
  max-height: calc(0.72rem * 1.35 * 2);
}
.mc-news-sidebar.mc-news-sidebar--live .mc-news-card-date {
  font-size: .58rem;
}
.mc-sidebar-video-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mc-sidebar-video-play {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(15,23,42,.28);
  transition: background .12s;
}
.mc-sidebar-video-tile:hover .mc-sidebar-video-play { background: rgba(15,23,42,.38); }
.mc-sidebar-video-play span {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  color: #0f172a;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.05rem;
  padding-left: 3px;
  box-shadow: 0 2px 10px rgba(0,0,0,.25);
}

.mc-sidebar-video-skel-label {
  height: 10px;
  width: 76px;
  margin: 0 0 8px 2px;
  border-radius: 4px;
}
.mc-sidebar-video-skel-thumb {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 4px;
  border: 1px solid var(--mc-border);
}

/* Pop-out video player */
.mc-video-popout {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.mc-video-popout[hidden] { display: none; }
body.mc-popout-open { overflow: hidden; }
.mc-video-popout-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(15,23,42,.72);
}
.mc-video-popout-dialog {
  position: relative;
  width: min(960px, 100%);
  max-height: calc(100vh - 32px);
  background: #0f172a;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 24px 64px rgba(0,0,0,.45);
  display: flex;
  flex-direction: column;
}
.mc-video-popout-close {
  position: absolute;
  top: 8px;
  right: 8px;
  z-index: 2;
  width: 36px;
  height: 36px;
  border: none;
  border-radius: 50%;
  background: rgba(15,23,42,.65);
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  cursor: pointer;
}
.mc-video-popout-close:hover { background: rgba(15,23,42,.85); }
.mc-video-popout-player {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
}
.mc-video-popout-player iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.mc-video-popout-meta {
  padding: 12px 14px 14px;
  color: #e2e8f0;
}
.mc-video-popout-title {
  font-size: .95rem;
  font-weight: 700;
  line-height: 1.35;
}
.mc-news-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 0;
}
.mc-news-empty {
  margin: 0;
  padding: 12px 4px;
  font-size: .72rem;
  color: var(--mc-muted);
  text-align: center;
  line-height: 1.4;
}
@media (max-width: 679px) {
  .mc-news-sidebar {
    padding: 12px;
  }
  .mc-news-list {
    max-height: 280px;
  }
}
.mc-news-card {
  display: flex;
  flex-direction: row;
  align-items: stretch;
  width: 100%;
  min-height: 74px;
  height: auto;
  background: var(--mc-card);
  border: 1px solid var(--mc-border);
  border-radius: 10px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
  transition: border-color .12s, box-shadow .12s;
  flex-shrink: 0;
}
.mc-news-card:hover {
  border-color: rgba(0,0,0,.14);
  box-shadow: 0 4px 14px rgba(15,23,42,.08);
}
.mc-news-card-media {
  flex-shrink: 0;
  width: 118px;
  min-height: 74px;
  align-self: stretch;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  overflow: hidden;
}
.mc-news-card-media--empty {
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
}
.mc-news-card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mc-news-card-body {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 3px;
  min-width: 0;
  padding: 8px 12px;
  flex: 1;
  overflow: hidden;
}
.mc-news-card-tag {
  display: inline-block;
  align-self: flex-start;
  flex-shrink: 0;
  font-size: .5rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-blue);
  line-height: 1.2;
}
.mc-news-card-title {
  margin: 0;
  font-size: .78rem;
  font-weight: 700;
  line-height: 1.35;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  max-height: calc(0.78rem * 1.35 * 2);
}
.mc-news-card-date {
  font-size: .66rem;
  color: var(--mc-muted);
  line-height: 1.2;
}

.mc-article-card { padding: 20px 22px; }
.mc-article-card + .mc-article-card { margin-top: 12px; }
.mc-article-title {
  margin: 0 0 14px;
  font-size: 1.15rem;
  font-weight: 800;
  line-height: 1.35;
}
.mc-article-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 999px;
  background: var(--mc-blue);
  color: #fff;
  font-size: .85rem;
  font-weight: 700;
  text-decoration: none;
}
.mc-article-link:hover { filter: brightness(1.05); }

/* ── Quarter table ───────────────────────────────────────────────────────── */
.mc-quarters-wrap {
  width: 100%;
  box-sizing: border-box;
  overflow-x: auto;
  padding: 0;
  margin-bottom: 12px;
}

.mc-quarters-table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  font-size: .82rem;
  min-width: 0;
}

.mc-quarters-table th,
.mc-quarters-table td {
  padding: 8px 10px;
  text-align: center;
  border-bottom: 1px solid var(--mc-border);
}
.mc-quarters-table th:first-child,
.mc-quarters-table td:first-child {
  padding-left: 14px;
}
.mc-quarters-table th:last-child,
.mc-quarters-table td:last-child {
  padding-right: 14px;
}
.mc-quarters-table th {
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: #f7f8fb;
}
.mc-quarters-table td:first-child,
.mc-quarters-table th:first-child {
  width: 38%;
  text-align: left;
}
.mc-quarters-table .mc-qrow-team {
  display: flex;
  align-items: center;
  gap: 8px;
}
.mc-quarters-table .mc-qrow-team img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}
.mc-q-total { font-weight: 800; color: var(--mc-text); }
.mc-q-won   { font-weight: 700; }
.mc-q-lost  { color: var(--mc-muted); }

/* ── Page-level tabs ─────────────────────────────────────────────────────── */
.mc-page-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
  background: transparent;
  border: none;
  padding: 0;
}

.mc-page-tab {
  flex: 0 1 auto;
  background: #fff;
  border: 1px solid var(--mc-border);
  border-radius: 999px;
  padding: 8px 16px;
  font-size: .78rem;
  font-weight: 700;
  color: var(--mc-text);
  cursor: pointer;
  transition: background .1s, color .1s, border-color .1s, box-shadow .1s;
  white-space: nowrap;
  font-family: inherit;
  position: relative;
}
.mc-page-tab:hover {
  border-color: rgba(242, 101, 34, 0.35);
}
.mc-page-tab.is-active {
  background: rgba(242, 101, 34, 0.1);
  color: var(--mc-orange);
  border-color: var(--mc-orange);
  box-shadow: 0 0 0 1px rgba(242, 101, 34, 0.12);
}
.mc-page-tab[hidden] { display: none; }
.mc-page-tab[data-panel="channel"] {
  padding-right: 22px;
}
.mc-page-tab-flag {
  position: absolute;
  top: -7px;
  right: -2px;
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 0.52rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  background: var(--mc-orange);
  color: #fff;
  margin-left: 0;
  vertical-align: baseline;
  line-height: 1.2;
  box-shadow: 0 1px 4px rgba(242, 101, 34, 0.35);
}
.mc-page-tab.is-active .mc-page-tab-flag {
  background: var(--mc-orange);
  color: #fff;
}

.mc-panel {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}

/* ── Team stats ──────────────────────────────────────────────────────────── */
.mc-team-stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.mc-team-stats-col { padding: 12px 18px 16px; }
.mc-team-stats-col:first-child { border-right: 1px solid var(--mc-border); }

.mc-team-stats-col-header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
.mc-team-stats-col-header img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.mc-team-stats-col-header span {
  font-size: .75rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--mc-muted);
}

.mc-stat-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 0;
  border-bottom: 1px solid var(--mc-border);
  font-size: .82rem;
}
.mc-stat-row:last-child { border-bottom: none; }
.mc-stat-label { color: var(--mc-muted); }
.mc-stat-val   { font-weight: 700; color: var(--mc-text); }

/* ── Game leaders ────────────────────────────────────────────────────────── */
.mc-leaders-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding: 0 0 2px;
}
.mc-leaders-grid--photos {
  grid-template-columns: 1fr;
  gap: 12px;
  padding: 14px;
}
.mc-leader-stat-card {
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid var(--mc-border);
  background: var(--mc-card);
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.06);
}
.mc-leader-stat-card-halves {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 132px;
}
.mc-leader-stat-half {
  position: relative;
  display: flex;
  align-items: stretch;
  overflow: hidden;
  background: var(--mc-leader-half-bg, #1e293b);
  min-height: 132px;
}
.mc-leader-stat-half--home {
  border-right: 1px solid rgba(255, 255, 255, 0.12);
}
.mc-leader-stat-half-wm {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 6% 0 38%;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}
.mc-leader-stat-half-wm-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46%;
  max-width: 118px;
  aspect-ratio: 1;
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.18);
}
.mc-leader-stat-half-wm img {
  width: 78%;
  max-width: 96px;
  height: auto;
  max-height: 78%;
  object-fit: contain;
  opacity: 0.22;
  filter: none;
}
.mc-leader-stat-half-wm--transparent .mc-leader-stat-half-wm-inner {
  background: rgba(0, 0, 0, 0.22);
}
.mc-leader-stat-half-wm--transparent img {
  width: 82%;
  max-width: 102px;
  max-height: 82%;
  opacity: 0.72;
}
.mc-leader-stat-half-content {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  flex: 1;
  padding: 14px 8px 14px 14px;
}
.mc-leader-stat-half-name {
  font-size: .78rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.25;
  max-width: 58%;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}
.mc-leader-stat-half-value {
  font-size: 1.45rem;
  font-weight: 900;
  color: #fff;
  line-height: 1;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}
.mc-leader-stat-half-unit {
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .06em;
  margin-left: 2px;
}
.mc-leader-stat-half-num {
  margin-top: 2px;
  font-size: .72rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.88);
  line-height: 1.2;
}
.mc-leader-stat-half-photo {
  position: absolute;
  right: -4px;
  bottom: 0;
  width: 46%;
  max-height: 96%;
  object-fit: contain;
  object-position: bottom right;
  pointer-events: none;
  z-index: 3;
}
.mc-leader-stat-card-footer {
  position: relative;
  height: 26px;
  background: #111;
}
.mc-leader-stat-card-label {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  min-width: 108px;
  padding: 5px 18px 4px;
  background: #111;
  color: #fff;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-align: center;
  line-height: 1.2;
  clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 100%, 0 100%);
}

.mc-leader-cell {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 14px 8px 16px;
  border-right: 1px solid var(--mc-border);
  text-align: center;
}
.mc-leader-cell:last-child { border-right: none; }

.mc-leader-cat {
  font-size: .6rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--mc-muted);
  margin-bottom: 8px;
}

.mc-leader-photo {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--mc-border);
  margin-bottom: 7px;
  background: #f0f2f5;
}
.mc-leader-photo-placeholder {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #f0f2f5;
  border: 2px solid var(--mc-border);
  margin-bottom: 7px;
  flex-shrink: 0;
}

.mc-leader-val {
  font-size: 1.7rem;
  font-weight: 900;
  line-height: 1;
  color: var(--mc-text);
}
.mc-leader-unit {
  font-size: .62rem;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--mc-muted);
  margin-top: 2px;
  margin-bottom: 5px;
}
.mc-leader-name {
  font-size: .72rem;
  font-weight: 600;
  color: var(--mc-text);
  line-height: 1.3;
  max-width: 90px;
}
.mc-leader-team {
  font-size: .62rem;
  color: var(--mc-muted);
  margin-top: 2px;
}

/* ── Sub-tabs (Home/Away boxscore) ───────────────────────────────────────── */
.mc-tabs {
  display: flex;
  gap: 0;
  border-bottom: 1px solid var(--mc-border);
  padding: 0 14px;
}

.mc-tab {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  padding: 10px 14px;
  font-size: .82rem;
  font-weight: 600;
  color: var(--mc-muted);
  cursor: pointer;
  margin-bottom: -1px;
  transition: color .12s, border-color .12s;
}
.mc-tab:hover { color: var(--mc-text); }
.mc-tab.is-active { color: var(--mc-accent); border-bottom-color: var(--mc-accent); }

/* ── Boxscore table ──────────────────────────────────────────────────────── */
.mc-box-panel {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  overscroll-behavior-x: contain;
}
#mc-boxscore-section,
#mc-live-box-section,
.mc-quarters-wrap {
  overflow: visible;
}
.mc-box-panel--team + .mc-box-panel--team {
  border-top: 1px solid var(--mc-border);
}
.mc-box-team-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--mc-border);
  background: var(--mc-bg-subtle);
}
.mc-box-team-head--home .mc-box-team-name {
  color: var(--mc-home-accent, var(--mc-text));
}
.mc-box-team-head--away .mc-box-team-name {
  color: var(--mc-away-accent, var(--mc-text));
}
.mc-box-team-logo {
  width: 32px;
  height: 32px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-box-team-name {
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-text);
  line-height: 1.2;
}
.mc-box-empty-team-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px 8px;
  border-bottom: 1px solid var(--mc-border);
  background: var(--mc-bg-subtle);
}
.mc-box-empty-team-logo {
  width: 28px;
  height: 28px;
  object-fit: contain;
}
.mc-box-empty-team-name {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-text);
}
.mc-box-empty-msg {
  margin: 0;
  padding: 28px 18px 32px;
  text-align: center;
  color: var(--mc-muted);
  font-size: .84rem;
  line-height: 1.5;
}

.mc-box-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .78rem;
  min-width: 880px;
}
.mc-box-table th {
  padding: 7px 10px;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: #f7f8fb;
  border-bottom: 1px solid var(--mc-border);
  white-space: nowrap;
  text-align: right;
}
.mc-box-table th.mc-box-col-player,
.mc-box-table td.mc-box-col-player {
  text-align: left;
  min-width: 150px;
  width: 28%;
}
.mc-box-table td {
  padding: 8px 10px;
  text-align: right;
  border-bottom: 1px solid var(--mc-border);
  color: var(--mc-text);
  white-space: nowrap;
}
.mc-box-table td.mc-box-col-mark {
  text-align: center !important;
}
.mc-box-table tr:last-child td { border-bottom: none; }
.mc-box-table tfoot td,
.mc-live-box-table tfoot td {
  font-weight: 800;
  border-top: 2px solid var(--mc-border);
  background: #f7f8fb;
  border-bottom: none;
}
.mc-box-total-label {
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--mc-muted);
}
.mc-box-table tr.is-starter td { font-weight: 600; }
.mc-box-table tr.is-dnp td { color: var(--mc-muted); }
.mc-box-on-court-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #16a34a;
  flex-shrink: 0;
  vertical-align: middle;
}
.mc-box-on-court-slot {
  flex: 0 0 14px;
  width: 14px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.mc-box-on-court-dot--legend {
  margin-left: 0;
}
.mc-box-legend-on-court {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--mc-muted);
  font-size: .68rem;
  font-weight: 500;
  letter-spacing: .02em;
  text-transform: none;
  white-space: nowrap;
}
.mc-live-box-header .mc-box-legend-on-court {
  font-size: .62rem;
}
.mc-live-box-player-name,
.mc-player-name-wrap {
  display: flex;
  align-items: center;
  width: 100%;
  min-width: 0;
  gap: 6px;
}
.mc-live-box-player-name .mc-player-name,
.mc-player-name-wrap .mc-player-name {
  flex: 1 1 auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow-wrap: normal;
  word-break: normal;
}
.mc-player-cell .mc-player-name-wrap {
  flex: 1 1 auto;
  min-width: 0;
}
.mc-box-legend.mc-block-title-sub {
  margin-left: auto;
  text-transform: none;
  letter-spacing: .02em;
  font-size: .68rem;
  font-weight: 500;
  white-space: nowrap;
}

.mc-boxscore-header {
  flex-wrap: wrap;
  row-gap: 4px;
}
.mc-live-box-table .mc-box-col-mark {
  width: 22px;
  min-width: 22px;
  padding-left: 4px !important;
  padding-right: 4px !important;
}

.mc-player-cell {
  display: flex;
  align-items: center;
  gap: 8px;
}
.mc-player-photo {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  object-fit: cover;
  background: #f0f2f5;
  flex-shrink: 0;
}
.mc-player-num {
  font-size: .68rem;
  color: var(--mc-muted);
  min-width: 18px;
  text-align: right;
  flex-shrink: 0;
}
.mc-player-name { font-weight: 600; }
.mc-pts-bold    { font-weight: 800; }

/* ── Play-by-Play ────────────────────────────────────────────────────────── */
.mc-pbp-filters {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--mc-border);
  flex-wrap: wrap;
}

.mc-pbp-lead-chart {
  padding: 12px 16px 10px;
  border-bottom: 1px solid var(--mc-border);
  background: #fff;
}
.mc-pbp-lead-chart-inner {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: stretch;
  gap: 0;
  min-height: 72px;
  border: 1px solid var(--mc-border);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.mc-pbp-lead-logos {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding: 10px 8px;
  border-right: 1px solid var(--mc-border);
  background: #fafbfc;
}
.mc-pbp-lead-logo {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-pbp-lead-logo--home {
  filter: drop-shadow(0 0 0 var(--mc-pbp-team-accent, transparent));
}
.mc-pbp-lead-graph {
  position: relative;
  min-width: 0;
  min-height: 72px;
}
.mc-pbp-lead-svg {
  display: block;
  width: 100%;
  height: 72px;
}
.mc-pbp-lead-band {
  fill: #fff;
}
.mc-pbp-lead-band.is-alt {
  fill: #f3f5f8;
}
.mc-pbp-lead-baseline {
  stroke: #6b7280;
  stroke-width: 1.25;
  vector-effect: non-scaling-stroke;
}
.mc-pbp-lead-area {
  fill: rgba(55, 65, 81, 0.82);
}
.mc-pbp-lead-line {
  fill: none;
  stroke: rgba(31, 41, 55, 0.95);
  stroke-width: 1.5;
  vector-effect: non-scaling-stroke;
}

.mc-pbp-filter-btn {
  padding: 4px 10px;
  font-size: .75rem;
  font-weight: 600;
  border-radius: 6px;
  border: 1px solid var(--mc-border);
  background: transparent;
  color: var(--mc-muted);
  cursor: pointer;
  transition: background .12s, color .12s, border-color .12s;
}
.mc-pbp-filter-btn:hover { background: rgba(0,0,0,.04); color: var(--mc-text); }
.mc-pbp-filter-btn.is-active {
  background: var(--mc-accent);
  border-color: var(--mc-accent);
  color: #fff;
}

.mc-pbp-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: .82rem;
}
.mc-pbp-table col.col-team { width: 44%; }
.mc-pbp-table col.col-clock { width: 12%; }

.mc-pbp-table th {
  position: sticky;
  top: 0;
  z-index: 18;
  padding: 8px 12px;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: #f7f8fb;
  border-bottom: 1px solid var(--mc-border);
  box-shadow: 0 1px 0 var(--mc-border);
}
.mc-page:has(.mc-sticky-score.is-visible) .mc-pbp-table th {
  top: calc(52px + env(safe-area-inset-top, 0px));
}
.mc-pbp-table th.th-home,
.mc-pbp-table th.th-away {
  box-shadow:
    inset 0 3px 0 var(--mc-pbp-team-accent, var(--mc-border)),
    0 1px 0 var(--mc-border);
  background: color-mix(in srgb, var(--mc-pbp-team-accent, #e5e7eb) 10%, #f7f8fb);
}
.mc-pbp-team-head {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
}
.mc-pbp-team-head--home {
  flex-direction: row-reverse;
}
.mc-pbp-table th.th-home .mc-pbp-team-head {
  justify-content: flex-end;
  margin-left: auto;
}
.mc-pbp-table th.th-away .mc-pbp-team-head {
  justify-content: flex-start;
}
.mc-pbp-team-head-logo {
  width: 22px;
  height: 22px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-pbp-team-head-code {
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-pbp-team-accent, var(--mc-muted));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mc-pbp-table th.th-home { text-align: right; }
.mc-pbp-table th.th-clock { text-align: center; }
.mc-pbp-table th.th-away { text-align: left; }

.mc-pbp-table td {
  padding: 5px 10px;
  border-bottom: 1px solid var(--mc-border);
  vertical-align: middle;
  line-height: 1.35;
}
.mc-pbp-table td.td-home { text-align: right; border-right: 1px solid var(--mc-border); }
.mc-pbp-table td.td-clock { text-align: center; font-size: .72rem; color: var(--mc-faint); font-variant-numeric: tabular-nums; white-space: nowrap; }
.mc-pbp-table td.td-away  { text-align: left;  border-left:  1px solid var(--mc-border); }
.mc-pbp-table td.td-full  { text-align: center; color: var(--mc-muted); font-size: .78rem; }

.mc-pbp-period-hdr td {
  padding: 8px 14px;
  background: #f2f4f7;
  border-top: 2px solid var(--mc-border);
  border-bottom: 1px solid var(--mc-border);
  text-align: center;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.mc-pbp-score-badge {
  display: inline-block;
  margin-left: 6px;
  font-size: .68rem;
  font-weight: 700;
  background: #f0f2f5;
  border-radius: 4px;
  padding: 1px 5px;
  font-variant-numeric: tabular-nums;
  color: var(--mc-text);
}

/* play type colours */
.mc-play-scoring { color: var(--mc-accent); font-weight: 700; }
.mc-play-missed  { color: var(--mc-muted); font-style: italic; }
.mc-play-foul    { color: var(--mc-amber); }
.mc-play-turnover{ color: var(--mc-red); }
.mc-play-steal   { color: var(--mc-green); }
.mc-play-block   { color: var(--mc-green); }
.mc-play-sub     { color: var(--mc-faint); font-size: .75rem; }
.mc-play-timeout { color: var(--mc-muted); font-style: italic; font-size: .78rem; }
.mc-play-period  { color: var(--mc-muted); font-size: .75rem; }

/* ── Shot Chart ──────────────────────────────────────────────────────────── */
.mc-tabs--shotchart { border-bottom: 1px solid var(--mc-border); }

.mc-court-wrap {
  position: relative;
  padding: 16px 16px 4px;
}

.mc-court {
  position: relative;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  background: #c8a96e;
  border-radius: 6px;
  overflow: hidden;
  aspect-ratio: 940 / 500;
  min-height: 200px;
}

.mc-court--half {
  max-width: 400px;
  aspect-ratio: 458 / 493;
}

.mc-court--half .mc-court-img {
  width: 200%;
  max-width: none;
}

.mc-court-img {
  width: 100%;
  height: auto;
  display: block;
  opacity: .9;
}

.mc-shots {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.mc-shot {
  position: absolute;
  transform: translate(-50%, -50%);
  width: 10px;
  height: 10px;
  border-radius: 50%;
  opacity: .82;
  border: 1.5px solid rgba(255,255,255,.5);
  pointer-events: auto;
  cursor: pointer;
  z-index: 2;
  transition: transform .12s ease, opacity .12s ease;
}
.mc-shot:hover,
.mc-shot.is-active,
.mc-shot:focus-visible {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1.35);
  z-index: 3;
  outline: none;
}
.mc-shot:focus-visible {
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(249, 115, 22, .85);
}
.mc-shot--made   { background: var(--mc-green); }
.mc-shot--missed { background: var(--mc-red); opacity: .65; }
.mc-shot--3pt    { border: 2px solid #fbbf24; }

.mc-shot-tooltip {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 20;
  min-width: 148px;
  max-width: min(240px, calc(100% - 16px));
  padding: 8px 10px;
  border-radius: 8px;
  background: rgba(17, 24, 39, .94);
  color: #fff;
  box-shadow: 0 8px 24px rgba(0, 0, 0, .22);
  pointer-events: none;
  text-align: center;
  line-height: 1.35;
  box-sizing: border-box;
}
.mc-shot-tooltip-player {
  font-size: .78rem;
  font-weight: 700;
}
.mc-shot-tooltip-team {
  font-weight: 600;
  color: rgba(255, 255, 255, .72);
}
.mc-shot-tooltip-meta {
  margin-top: 2px;
  font-size: .72rem;
  color: rgba(255, 255, 255, .78);
  font-variant-numeric: tabular-nums;
}
.mc-shot-tooltip-score {
  margin-top: 4px;
  font-size: .74rem;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.mc-court-legend {
  display: flex;
  align-items: center;
  gap: 14px;
  justify-content: center;
  padding: 10px 0 4px;
  font-size: .75rem;
  color: var(--mc-muted);
}

.mc-legend-dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin-right: 4px;
  vertical-align: middle;
  border: 1.5px solid rgba(0,0,0,.15);
}
.mc-legend-dot--made   { background: var(--mc-green); }
.mc-legend-dot--missed { background: var(--mc-red); opacity: .65; }
.mc-legend-dot--3pt    { background: var(--mc-green); border: 2px solid #fbbf24; }

.mc-shotchart-summary {
  padding: 0 16px 16px;
}
.mc-shotchart-summary table {
  width: 100%;
  border-collapse: collapse;
  font-size: .82rem;
}
.mc-shotchart-summary th {
  padding: 7px 10px;
  font-size: .65rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: #f7f8fb;
  border-bottom: 1px solid var(--mc-border);
  text-align: right;
}
.mc-shotchart-summary th:first-child { text-align: left; }
.mc-shotchart-summary td {
  padding: 7px 10px;
  text-align: right;
  border-bottom: 1px solid var(--mc-border);
  font-weight: 600;
}
.mc-shotchart-summary td:first-child { text-align: left; font-weight: 400; color: var(--mc-muted); }
.mc-shotchart-summary tr:last-child td { border-bottom: none; }

/* ── Loading skeletons ───────────────────────────────────────────────────── */
.mc-loading { display: flex; flex-direction: column; gap: 12px; }

.mc-skel {
  background: linear-gradient(90deg, #e8eaf0 25%, #f2f4f7 50%, #e8eaf0 75%);
  background-size: 200% 100%;
  border-radius: var(--mc-radius);
  animation: mc-shimmer 1.4s infinite;
}
.mc-skel--score { height: 200px; }
.mc-skel--table { height: 80px; }
.mc-skel--box   { height: 300px; }

@keyframes mc-shimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* ── Stats Channel (public /stats-channel embed) ─────────────────────────── */
.mc-panel--channel {
  display: flex;
  flex-direction: column;
  min-height: min(88vh, 1100px);
}

.mc-channel-iframe {
  flex: 1;
  width: 100%;
  min-height: 720px;
  border: 0;
  border-radius: var(--mc-radius);
  background: #f3f4f6;
}

/* 16:9 frame — fills available space */
.mc-channel-frame {
  flex: 1;
  min-width: 0;
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border-radius: 10px;
  background: #0f0a08;
  border: 1px solid rgba(255,255,255,.06);
}

/* The 1920×1080 canvas — JS sets transform: scale(n) */
.mc-channel-canvas-1080 {
  position: absolute;
  left: 50%; top: 50%;
  width: 1920px; height: 1080px;
  margin-left: -960px; margin-top: -540px;
  transform-origin: center center;
}

/* Court image fills the full 1920×1080 canvas */
.mc-channel-court-img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
}

.mc-channel-vignette {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg,rgba(0,0,0,.38) 0%,rgba(0,0,0,.04) 22%,rgba(0,0,0,0) 50%,rgba(0,0,0,.04) 78%,rgba(0,0,0,.38) 100%),
    linear-gradient(180deg,rgba(0,0,0,.28) 0%,rgba(0,0,0,.02) 42%,rgba(0,0,0,.12) 100%);
  pointer-events: none;
  z-index: 1;
}

.mc-channel-shots {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.mc-channel-shot {
  position: absolute;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,.9);
}
.mc-channel-shot--made   { background:#22c55e; }
.mc-channel-shot--missed { background:#f97316; opacity:.8; }
.mc-channel-shot--3pt    { border-color:#fbbf24; box-shadow:0 0 0 2px rgba(251,191,36,.35); }

/* ── Scoreboard: position in 1920×1080 space (top:28, centreX:960, width:600) ── */
.mc-channel-scoreboard {
  position: absolute;
  top: 28px;
  left: 660px;   /* 960 - 300 */
  width: 600px;
  z-index: 3;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(0,0,0,.55);
  border: 1px solid rgba(255,255,255,.2);
}
.mc-channel-sb-teams {
  display: flex;
  background: linear-gradient(180deg,#0f172a 0%,#1e293b 100%);
  padding: 18px 24px;
  align-items: center;
  justify-content: space-between;
}
.mc-channel-sb-team {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.mc-channel-sb-logo   { width: 64px; height: 64px; object-fit: contain; }
.mc-channel-sb-score  { font-size: 64px; font-weight: 900; color: #fff; line-height: 1; font-variant-numeric: tabular-nums; }
.mc-channel-sb-fouls  { font-size: 17px; font-weight: 700; color: rgba(255,255,255,.75); font-variant-numeric: tabular-nums; }
.mc-channel-sb-clock-section {
  background: linear-gradient(180deg,#e2e8f0 0%,#f8fafc 100%);
  text-align: center;
}
.mc-channel-sb-clock-line {
  font-size: 32px; font-weight: 900; color: #0f172a;
  letter-spacing: .06em; padding: 14px 20px 0;
}
.mc-channel-sb-lastplay {
  font-size: 15px; font-weight: 700; color: #0f172a;
  padding: 10px 16px 14px;
  border-top: 1px solid rgba(15,23,42,.08);
  min-height: 40px;
  display: flex; align-items: center; justify-content: center;
}

/* ── Team towers: positioned in 1920×1080 space ── */
.mc-channel-tower {
  position: absolute;
  top: 88px;
  width: 348px;
  z-index: 2;
  pointer-events: none;
}
.mc-channel-tower--home { left: 12px; }
.mc-channel-tower--away { right: 12px; text-align: right; }

.mc-channel-tower-label {
  font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
  color: rgba(255,255,255,.75); text-shadow: 0 1px 3px rgba(0,0,0,.8);
  margin-bottom: 6px;
}
.mc-channel-tower-logo {
  width: 58px; height: 58px; object-fit: contain;
  filter: drop-shadow(0 4px 12px rgba(0,0,0,.55));
  margin-bottom: 8px;
}
.mc-channel-tower--away .mc-channel-tower-logo { display: block; margin-left: auto; }

.mc-channel-stat-row {
  display: flex; align-items: center; gap: 8px; margin-bottom: 6px;
}
.mc-channel-tower--away .mc-channel-stat-row { flex-direction: row-reverse; }
.mc-channel-stat-label {
  font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase;
  color: rgba(255,255,255,.55); text-shadow: 0 1px 2px rgba(0,0,0,.8);
  width: 52px; flex-shrink: 0;
}
.mc-channel-tower--away .mc-channel-stat-label { text-align: right; }
.mc-channel-stat-bar-wrap {
  flex: 1; height: 6px; background: rgba(255,255,255,.15); border-radius: 3px; overflow: hidden;
}
.mc-channel-stat-bar-fill { height: 100%; border-radius: 3px; }
.mc-channel-stat-val {
  font-size: 16px; font-weight: 800; color: rgba(255,255,255,.92);
  text-shadow: 0 1px 3px rgba(0,0,0,.7); font-variant-numeric: tabular-nums;
  min-width: 36px; text-align: right;
}
.mc-channel-tower--away .mc-channel-stat-val { text-align: left; }

/* ── Bottom dock: positioned in 1920×1080 space ── */
.mc-channel-dock {
  position: absolute;
  left: 12px; right: 12px; bottom: 20px;
  display: flex; gap: 16px; align-items: stretch; z-index: 5; pointer-events: none;
}
.mc-channel-spotlight {
  flex: 1; display: flex; align-items: center; gap: 14px; overflow: hidden;
  background: rgba(0,0,0,.72); border: 1px solid rgba(255,255,255,.12);
  border-radius: 4px; padding: 10px 16px;
  backdrop-filter: blur(4px);
}
.mc-channel-spotlight-photo {
  width: 56px; height: 56px; border-radius: 50%; object-fit: cover;
  border: 2px solid rgba(255,255,255,.2); flex-shrink: 0;
  background: rgba(255,255,255,.08);
}
.mc-channel-spotlight-info { min-width: 0; flex: 1; }
.mc-channel-spotlight-name {
  font-size: 18px; font-weight: 700; color: #fff;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.mc-channel-spotlight-team {
  font-size: 13px; font-weight: 600; color: rgba(255,255,255,.5);
  letter-spacing: .06em; text-transform: uppercase; margin-top: 2px;
}
.mc-channel-spotlight-stats { display: flex; gap: 16px; flex-shrink: 0; }
.mc-channel-spotlight-stat  { display: flex; flex-direction: column; align-items: center; }
.mc-channel-spotlight-val   { font-size: 28px; font-weight: 900; color: #fff; line-height: 1; font-variant-numeric: tabular-nums; }
.mc-channel-spotlight-unit  { font-size: 11px; font-weight: 700; color: rgba(255,255,255,.45); letter-spacing: .1em; text-transform: uppercase; }

/* ── PBP sidebar (right of frame) ── */
.mc-channel-pbp-sidebar {
  width: 300px;
  flex-shrink: 0;
  background: rgba(0,0,0,.92);
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 10px;
  overflow: hidden;
  align-self: stretch;
  display: flex;
  flex-direction: column;
}
@media (max-width: 640px) {
  .mc-channel-pbp-sidebar { width: 100%; }
}
.mc-channel-pbp-title {
  font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase;
  color: rgba(255,255,255,.5);
  padding: 12px 12px 8px;
  background: rgba(0,0,0,.92);
  position: sticky; top: 0; z-index: 1;
  border-bottom: 1px solid rgba(255,255,255,.06);
}
.mc-channel-plays {
  flex: 1; overflow-y: auto;
  display: flex; flex-direction: column; gap: 6px;
  padding: 8px 10px 12px;
}
.mc-channel-play-item {
  padding: 8px 10px;
  border-radius: 4px;
  border: 1px solid rgba(255,255,255,.06);
  background: rgba(255,255,255,.02);
}
.mc-channel-play-meta {
  font-size: 10px; font-weight: 700; color: rgba(255,255,255,.45);
  letter-spacing: .04em; margin-bottom: 4px; font-variant-numeric: tabular-nums;
}
.mc-channel-play-desc {
  font-size: 13px; font-weight: 600; color: rgba(255,255,255,.82); line-height: 1.35;
}

/* ── Live summary (commentary + trimmed box score) ───────────────────────── */

#mc-panel-summary {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

#mc-panel-summary.mc-summary--live #mc-quarters-section { order: 0; }
#mc-panel-summary.mc-summary--live #mc-ai-section { order: 1; }
#mc-panel-summary.mc-summary--live #mc-commentary-section { order: 2; }
#mc-panel-summary.mc-summary--live #mc-live-summary { order: 3; }
#mc-panel-summary.mc-summary--live #mc-team-stats-section { order: 4; }
#mc-panel-summary.mc-summary--live #mc-leaders-section { order: 5; }

#mc-panel-summary.mc-summary--post #mc-commentary-section { order: 6; }

.mc-live-summary {
  display: contents;
}

.mc-live-box-title-row .mc-live-box-full-link {
  margin-left: auto;
}

#mc-panel-summary.mc-summary--live #mc-commentary-section .mc-live-commentary-card {
  height: min(480px, 55vh);
  max-height: min(480px, 55vh);
  min-height: 280px;
}

#mc-panel-summary.mc-summary--post #mc-commentary-section .mc-live-commentary-card {
  height: auto;
  max-height: min(480px, 55vh);
  min-height: 220px;
}

.mc-summary--post .mc-live-dot {
  display: none;
}

.mc-commentary-title-row .mc-commentary-brand,
.mc-commentary-brand.mc-block-title-sub {
  margin-left: auto;
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .04em;
  color: var(--mc-muted);
  text-transform: none;
}

.mc-commentary-title-row .mc-block-title {
  flex-wrap: wrap;
  row-gap: 4px;
}

.mc-ai-beta-chip {
  display: inline-flex;
  align-items: center;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: .52rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: var(--mc-orange);
  color: #fff;
  line-height: 1.2;
  flex-shrink: 0;
}

.mc-commentary-title-row .mc-ai-beta-chip {
  box-shadow: 0 1px 4px rgba(242, 101, 34, 0.35);
}

.mc-live-commentary-card,
.mc-live-box-card {
  padding: 0;
  overflow: hidden;
  --mc-ai-pad-x: 18px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.mc-live-box-card {
  display: flex;
}
.mc-leaders-grid--live {
  flex: 1;
  min-height: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
  padding: 0;
}
.mc-live-leaders-team {
  display: flex;
  flex-direction: column;
  min-height: 0;
  height: 100%;
  padding: 14px 16px 16px;
  border-right: 1px solid var(--mc-border);
}
.mc-live-leaders-team:last-child { border-right: none; }
.mc-live-leaders-team-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-bottom: 12px;
  margin-bottom: 6px;
  border-bottom: 1px solid var(--mc-border);
  flex-shrink: 0;
}
.mc-live-leaders-team-logo {
  width: 36px;
  height: 36px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-live-leaders-team-name {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-text);
  line-height: 1.2;
  min-width: 0;
}
.mc-live-leaders-team--home .mc-live-leaders-team-name { color: var(--mc-home-accent, var(--mc-text)); }
.mc-live-leaders-team--away .mc-live-leaders-team-name { color: var(--mc-away-accent, var(--mc-text)); }
.mc-live-leaders-stats {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  gap: 10px;
  min-height: 0;
  padding-top: 4px;
}
.mc-live-leaders-stat {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 8px 10px;
  border-radius: 10px;
  background: var(--mc-bg-subtle);
  border: 1px solid var(--mc-border);
}
.mc-live-leaders-stat-cat {
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--mc-muted);
  text-align: center;
  line-height: 1.2;
  padding-top: 12px;
}
.mc-live-leaders-stat-main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.mc-live-leaders-stat-top {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.mc-live-leaders-stat-photo .mc-leader-photo,
.mc-live-leaders-stat-photo .mc-leader-photo-placeholder {
  width: 40px;
  height: 40px;
  margin-bottom: 0;
}
.mc-live-leaders-stat-val {
  font-size: 1.35rem;
  font-weight: 900;
  line-height: 1;
  color: var(--mc-text);
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
}
.mc-live-leaders-stat-name {
  font-size: .72rem;
  font-weight: 600;
  color: var(--mc-text);
  line-height: 1.3;
  word-break: break-word;
}
.mc-live-leaders-empty {
  margin: 0;
  padding: 24px 8px;
  text-align: center;
  color: var(--mc-muted);
  font-size: .84rem;
}
.mc-live-dot {
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-left: 6px;
  border-radius: 50%;
  background: #16a34a;
  box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.45);
  animation: mc-live-pulse 1.6s ease-out infinite;
  vertical-align: middle;
}
@keyframes mc-live-pulse {
  0% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.45); }
  70% { box-shadow: 0 0 0 8px rgba(22, 163, 74, 0); }
  100% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
}
.mc-live-commentary-wrap {
  position: relative;
  flex: 1;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.mc-live-commentary-list {
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 8px 0;
}
.mc-live-pin-latest {
  position: absolute;
  right: 14px;
  top: 12px;
  z-index: 2;
  appearance: none;
  border: 1px solid var(--mc-border);
  background: #111827;
  color: #fff;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 8px 12px;
  border-radius: 999px;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.18);
  transition: opacity .15s ease, transform .15s ease;
}
.mc-live-pin-latest:hover {
  transform: translateY(-1px);
}
.mc-live-pin-latest:focus-visible {
  outline: 2px solid var(--mc-accent, #2563eb);
  outline-offset: 2px;
}
.mc-live-commentary-item {
  display: block;
  padding: 12px var(--mc-ai-pad-x, 18px);
  border-bottom: 1px solid var(--mc-border);
  font-size: .88rem;
  line-height: 1.45;
}
.mc-live-commentary-item:last-child { border-bottom: none; }
.mc-live-commentary-item.is-alert,
.mc-live-commentary-item.is-update {
  border-left: 3px solid var(--mc-orange);
  padding-left: calc(var(--mc-ai-pad-x, 18px) - 3px);
}
.mc-live-commentary-item.is-alert .mc-live-commentary-text,
.mc-live-commentary-item.is-update .mc-live-commentary-text {
  font-style: italic;
}
.mc-live-commentary-item.is-pbp .mc-live-commentary-text {
  font-style: normal;
}
.mc-live-commentary-item.is-scoring .mc-live-commentary-scoring-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  line-height: 0;
}
.mc-live-commentary-scoring-icon-img {
  display: block;
  width: 15px;
  height: 15px;
}
.mc-live-commentary-meta-left .mc-live-commentary-team-logo + .mc-live-commentary-scoring-icon {
  margin-left: -2px;
}
.mc-live-commentary-item.is-new {
  animation: mc-commentary-flash 1.35s ease-out;
}
@keyframes mc-commentary-flash {
  0% {
    background: rgba(249, 115, 22, 0.16);
    box-shadow: inset 3px 0 0 var(--mc-orange, #f97316);
  }
  100% {
    background: transparent;
    box-shadow: inset 3px 0 0 transparent;
  }
}
@media (prefers-reduced-motion: reduce) {
  .mc-live-commentary-item.is-new {
    animation: none;
    background: rgba(249, 115, 22, 0.08);
  }
}
.mc-live-commentary-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 4px;
}
.mc-live-commentary-meta-left {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.mc-live-commentary-team-logo {
  width: 18px;
  height: 18px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-live-box-section-row td,
.mc-box-section-row td {
  padding: 6px 10px 3px;
  font-size: .52rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: rgba(15, 23, 42, 0.03);
  border-bottom: 1px solid var(--mc-border);
  text-align: left !important;
}
.mc-box-table tbody .mc-box-section-row:first-child td,
.mc-box-table tbody .mc-live-box-section-row:first-child td {
  border-top: none;
}
.mc-live-commentary-clock {
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .04em;
  color: var(--mc-orange);
  white-space: nowrap;
}
.mc-live-commentary-score {
  font-size: .68rem;
  font-weight: 600;
  color: var(--mc-muted);
  white-space: nowrap;
  text-align: right;
}
.mc-live-commentary-text {
  color: var(--mc-text);
  min-width: 0;
}
.mc-live-commentary-empty {
  padding: 36px var(--mc-ai-pad-x, 18px);
  text-align: center;
  color: var(--mc-muted);
  font-size: .88rem;
}
.mc-live-box-body {
  padding: 0;
  overflow: hidden;
}
.mc-live-box-title-row {
  flex-wrap: wrap;
  gap: 8px 12px;
}
.mc-live-box-full-link {
  margin-left: auto;
  padding: 0;
  border: none;
  background: none;
  font-size: .72rem;
  font-weight: 600;
  color: var(--mc-accent);
  cursor: pointer;
  white-space: nowrap;
}
.mc-live-box-full-link:hover { text-decoration: underline; }
.mc-live-box-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: stretch;
}
.mc-live-box-team-panel {
  min-width: 0;
  border-right: 1px solid var(--mc-border);
  display: flex;
  flex-direction: column;
}
.mc-live-box-team-panel:last-child { border-right: none; }
.mc-live-box-team-head {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 8px 8px;
  border-bottom: 1px solid var(--mc-border);
}
.mc-live-box-team-panel:first-child .mc-live-box-team-head {
  padding-left: 12px;
}
.mc-live-box-team-panel:last-child .mc-live-box-team-head {
  padding-right: 12px;
}
.mc-live-box-team-logo {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-live-box-team-name {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-text);
  line-height: 1.2;
  min-width: 0;
}
.mc-live-box-team-panel--home .mc-live-box-team-name { color: var(--mc-home-accent, var(--mc-text)); }
.mc-live-box-team-panel--away .mc-live-box-team-name { color: var(--mc-away-accent, var(--mc-text)); }
.mc-live-box-table-wrap {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding: 0 0 10px;
}
.mc-live-box-table-body {
  flex: 1 1 auto;
  min-height: 0;
}
.mc-live-box-table-totals {
  flex: 0 0 auto;
  margin-top: auto;
}
.mc-live-box-table--totals {
  margin-top: 0;
}
.mc-live-box-table--totals tfoot td {
  font-weight: 800;
  border-top: 2px solid var(--mc-border);
  background: #f7f8fb;
  border-bottom: none;
}
.mc-live-box-empty {
  padding: 24px var(--mc-ai-pad-x, 18px);
  text-align: center;
  color: var(--mc-muted);
  font-size: .85rem;
}
.mc-live-box-table {
  width: 100%;
  border-collapse: collapse;
  font-size: .66rem;
  min-width: 0;
  table-layout: fixed;
}
.mc-live-box-table th {
  padding: 4px 3px;
  font-size: .52rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: #f7f8fb;
  border-bottom: 1px solid var(--mc-border);
  text-align: right;
  white-space: nowrap;
}
.mc-live-box-table th:first-child { text-align: left; width: 34%; padding-left: 10px; }
.mc-live-box-table th:not(:first-child),
.mc-live-box-table td:not(:first-child) {
  width: auto;
  min-width: 2.15rem;
  font-variant-numeric: tabular-nums;
}
.mc-live-box-team-panel:last-child .mc-live-box-table th:last-child,
.mc-live-box-team-panel:last-child .mc-live-box-table td:last-child {
  padding-right: 10px;
}
.mc-live-box-table td {
  padding: 4px 3px;
  text-align: right;
  border-bottom: 1px solid var(--mc-border);
  color: var(--mc-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mc-live-box-table td:first-child {
  text-align: left;
  width: 32%;
  white-space: nowrap;
  vertical-align: middle;
  line-height: 1.25;
  padding-left: 10px;
  padding-right: 4px;
}
.mc-live-box-table tr.is-starter td { font-weight: 600; }
.mc-live-box-table tr.is-dnp td { color: var(--mc-muted); }
.mc-live-box-table tfoot td { border-bottom: none; }
.mc-live-box-table .mc-live-box-player-name {
  gap: 4px;
  align-items: center;
}
.mc-live-box-table .mc-player-num {
  font-size: .62rem;
  color: var(--mc-muted);
  min-width: 14px;
  text-align: right;
  flex-shrink: 0;
  font-weight: 500;
}
.mc-live-box-table .mc-box-on-court-slot {
  flex: 0 0 10px;
  width: 10px;
  align-self: center;
}
.mc-live-box-table .mc-player-name {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  overflow-wrap: normal;
  word-break: normal;
  line-height: 1.25;
  font-size: .66rem;
}
.mc-live-box-table .mc-box-total-label {
  font-size: .52rem;
}
@media (max-width: 768px) {
  .mc-live-box-grid {
    grid-template-columns: 1fr;
  }
  .mc-live-box-team-panel {
    border-right: none;
    border-bottom: 1px solid var(--mc-border);
  }
  .mc-live-box-team-panel:last-child { border-bottom: none; }
}
@media (max-width: 1024px) {
  #mc-panel-summary.mc-summary--live #mc-commentary-section .mc-live-commentary-card {
    height: min(420px, 52vh);
    max-height: min(420px, 52vh);
    min-height: 0;
  }
  .mc-leaders-grid--live {
    min-height: min(320px, 42vh);
  }
}
@media (max-width: 640px) {
  #mc-panel-summary.mc-summary--live #mc-commentary-section .mc-live-commentary-card {
    height: min(320px, 45vh);
    max-height: min(320px, 45vh);
  }
  .mc-leaders-grid--live {
    min-height: 0;
    grid-template-columns: 1fr;
  }
  .mc-live-leaders-team {
    border-right: none;
    border-bottom: 1px solid var(--mc-border);
  }
  .mc-live-leaders-team:last-child {
    border-bottom: none;
  }
  .mc-live-leaders-stat {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 8px;
    padding: 7px 8px;
  }
}

/* ── AI Insights (summary tab + shared card styles) ──────────────────────── */

.mc-ai-card {
  padding: 0;
  overflow: hidden;
  --mc-ai-pad-x: 18px;
}

.mc-ai-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px var(--mc-ai-pad-x, 18px);
  background: var(--mc-bg-subtle);
  border-bottom: 1px solid var(--mc-border);
}
.mc-ai-header-title {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--mc-text);
}
.mc-ai-icon {
  flex-shrink: 0;
  opacity: 0.42;
  color: #6366f1;
}
.mc-ai-header-sub {
  font-size: .7rem;
  color: var(--mc-muted);
  margin-left: 4px;
}
.mc-ai-updated {
  font-size: .68rem;
  color: var(--mc-faint);
  padding: 12px var(--mc-ai-pad-x, 18px) 0;
}
.mc-ai-body {
  padding: 12px var(--mc-ai-pad-x, 18px);
  font-size: .93rem;
  line-height: 1.65;
  color: var(--mc-text);
  white-space: pre-wrap;
}
.mc-ai-body:last-child {
  padding-bottom: 16px;
}
.mc-ai-updated + .mc-ai-body {
  padding-top: 8px;
}
.mc-ai-empty {
  padding: 40px var(--mc-ai-pad-x, 18px);
  text-align: center;
  color: var(--mc-muted);
  font-size: .88rem;
}
.mc-ai-empty-icon { font-size: 2rem; display: block; margin-bottom: 10px; }
.mc-ai-pending {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px var(--mc-ai-pad-x, 18px) 22px;
  color: var(--mc-muted);
}
.mc-ai-pending-icon {
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: rgba(242, 101, 34, 0.12);
  color: var(--mc-accent, #f26522);
  font-size: 1rem;
  line-height: 1;
}
.mc-ai-pending-copy {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}
.mc-ai-pending-copy strong {
  color: var(--mc-text, #111);
  font-size: .95rem;
  font-weight: 700;
}
.mc-ai-pending-copy span {
  font-size: .88rem;
  line-height: 1.5;
}
.mc-preview-insight-body .mc-ai-pending {
  padding-left: var(--mc-ai-pad-x, 18px);
  padding-right: var(--mc-ai-pad-x, 18px);
}
.mc-ai-disclaimer {
  display: flex;
  align-items: center;
  gap: 5px;
  margin: 0;
  padding: 12px var(--mc-ai-pad-x, 18px) 16px;
  border: none;
  border-top: 1px solid var(--mc-border);
  background: none;
  font-size: .68rem;
  color: var(--mc-muted);
  line-height: 1.45;
}
.mc-ai-disclaimer .mc-ai-icon {
  flex-shrink: 0;
  opacity: 0.85;
}

/* ── Video tab ───────────────────────────────────────────────────────────── */
.mc-video-layout {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 12px;
  align-items: start;
}
.mc-body-layout--sidebar .mc-video-layout {
  grid-template-columns: 1fr;
}
.mc-body-layout--sidebar .mc-video-sidebar {
  display: none;
}
@media (max-width: 700px) {
  .mc-video-layout {
    grid-template-columns: 1fr;
  }
}

.mc-video-player-pane { padding: 0; overflow: hidden; }

.mc-video-player-wrap {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  background: #000;
}
.mc-video-player-wrap iframe,
.mc-video-player-wrap .mc-video-embed-shell,
.mc-video-player-wrap .mc-video-placeholder {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.mc-video-embed-shell iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: none;
}
.mc-video-poster-btn {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  border: none;
  cursor: pointer;
  background: #0f0f0f;
}
.mc-video-poster-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mc-video-poster-play {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.92);
  color: #111;
  font-size: 1.25rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 4px;
  line-height: 1;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
  pointer-events: none;
}
.mc-video-poster-btn:hover .mc-video-poster-play {
  transform: translate(-50%, -50%) scale(1.05);
}
.mc-video-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #0f0f0f;
  gap: 10px;
  color: rgba(255,255,255,.5);
  font-size: .85rem;
  font-weight: 600;
}
.mc-video-placeholder-icon { font-size: 2.5rem; }

.mc-video-nowplaying {
  padding: 14px 16px;
}
.mc-video-nowplaying-badges {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 6px;
}
.mc-video-badge {
  font-size: .62rem;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: #fff;
}
.mc-video-badge--live     { background: #ef4444; }
.mc-video-badge--replay   { background: #3b82f6; }
.mc-video-badge--condensed{ background: #8b5cf6; }
.mc-video-badge--highlights{ background: #f59e0b; }
.mc-video-badge--preview  { background: #0ea5e9; }
.mc-video-badge--press    { background: #6b7280; }
.mc-video-badge--default  { background: #94a3b8; }
.mc-video-badge--free     { background: #10b981; }

.mc-video-title {
  font-size: .95rem;
  font-weight: 700;
  color: var(--mc-text);
  line-height: 1.4;
  margin-bottom: 4px;
}
.mc-video-duration {
  font-size: .75rem;
  color: var(--mc-muted);
}
.mc-video-watch-btn {
  display: inline-block;
  margin-top: 10px;
  padding: 6px 14px;
  border: 1px solid var(--mc-accent);
  border-radius: 6px;
  font-size: .78rem;
  font-weight: 600;
  color: var(--mc-accent);
  text-decoration: none;
}
.mc-video-watch-btn:hover { background: var(--mc-accent); color: #fff; }

/* Sidebar playlist */
.mc-video-sidebar { padding: 0; overflow: hidden; }
.mc-video-sidebar-title {
  padding: 14px 14px 10px;
}
.mc-video-list {
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  max-height: 480px;
}
.mc-video-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 14px;
  cursor: pointer;
  border-top: 1px solid var(--mc-border);
  transition: background .15s;
}
.mc-video-item:hover { background: #f5f7fa; }
.mc-video-item.is-active { background: #eef3ff; }

.mc-video-thumb-wrap {
  position: relative;
  flex-shrink: 0;
  width: 88px;
  aspect-ratio: 16/9;
  border-radius: 5px;
  overflow: hidden;
  background: #e8eaed;
}
.mc-video-thumb-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.mc-video-thumb-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, #dfe3ea 0%, #c8ced8 100%);
}
.mc-video-thumb-play {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.45);
  color: #fff;
  font-size: .55rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-left: 2px;
  line-height: 1;
}
.mc-video-thumb-live {
  position: absolute;
  top: 3px;
  left: 3px;
  background: #ef4444;
  color: #fff;
  font-size: .5rem;
  font-weight: 800;
  padding: 1px 4px;
  border-radius: 3px;
  letter-spacing: .04em;
}
.mc-video-item-info { flex: 1; min-width: 0; }
.mc-video-item-type {
  font-size: .62rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--mc-faint);
  margin-bottom: 3px;
}
.mc-video-item-title {
  font-size: .78rem;
  font-weight: 600;
  color: var(--mc-text);
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.mc-video-item-dur {
  font-size: .68rem;
  color: var(--mc-muted);
  margin-top: 3px;
}

/* ── Error ───────────────────────────────────────────────────────────────── */
.mc-error {
  text-align: center;
  padding: 60px 20px;
  color: var(--mc-muted);
  font-size: .95rem;
}

/* ── Blank slate ─────────────────────────────────────────────────────────── */
.mc-blank {
  text-align: center;
  padding: 40px 20px;
  color: var(--mc-muted);
  font-size: .88rem;
}
.mc-blank-icon { font-size: 2rem; display: block; margin-bottom: 8px; }

/* ── Match preview (scheduled fixtures) ──────────────────────────────────── */
.mc-preview-layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  gap: 16px;
  align-items: start;
  margin-bottom: 12px;
}

.mc-preview-layout[hidden] {
  display: none !important;
}

.mc-preview-layout--solo {
  grid-template-columns: 1fr;
}

.mc-preview-layout--solo .mc-preview-right-col {
  display: none;
}

.mc-preview-left-col {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}

.mc-preview-right-col {
  min-width: 0;
}

.mc-preview-stack {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.mc-preview-form-group {
  margin: 0;
}

.mc-preview-h2h-record.mc-block-title-sub {
  margin-left: auto;
  text-align: right;
  text-transform: none;
  letter-spacing: normal;
  font-size: .74rem;
  font-weight: 500;
  color: var(--mc-text);
  line-height: 1.35;
  max-width: min(100%, 34rem);
}

.mc-preview-h2h-header {
  flex-wrap: wrap;
  row-gap: 4px;
}

.mc-preview-video-section {
  overflow: hidden;
  padding: 14px;
}

.mc-preview-video-player {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #0b1220;
  border-radius: 12px;
  overflow: hidden;
}

.mc-preview-video-player .mc-video-embed-shell,
.mc-preview-video-player iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.mc-preview-video-meta {
  margin-top: 14px;
  padding: 0 16px 18px;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.35;
  color: var(--mc-text, #111827);
}

.mc-preview-insight {
  display: flex;
  flex-direction: column;
  height: 100%;
  --mc-ai-pad-x: 18px;
}

.mc-preview-insight-body {
  flex: 1;
}

.mc-preview-insight-text {
  font-size: .92rem;
  line-height: 1.65;
}

.mc-preview-news-panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  position: sticky;
  top: 12px;
  max-height: calc(100vh - 24px);
}

.mc-preview-news-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: 12px;
}

.mc-preview-news-story {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  width: 100%;
  background: var(--mc-bg-subtle, #f8f9fb);
  border: 1px solid var(--mc-border);
  border-radius: 4px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  transition: border-color .12s, background .12s;
  flex-shrink: 0;
}

.mc-preview-news-story:hover {
  border-color: rgba(0, 0, 0, .14);
  background: #fff;
}

.mc-preview-news-story-logo {
  flex-shrink: 0;
  width: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 6px;
}

.mc-preview-news-story-logo-img {
  width: 22px;
  height: 22px;
  object-fit: contain;
  display: block;
}

.mc-preview-news-story-logo--conf {
  width: 32px;
  margin-left: 4px;
}

.mc-preview-news-story-conf-code {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 20px;
  padding: 0 4px;
  border-radius: 4px;
  background: rgba(37, 99, 235, 0.12);
  color: #2563eb;
  font-size: .58rem;
  font-weight: 800;
  letter-spacing: .04em;
  line-height: 1;
}

.mc-preview-news-story-media {
  flex-shrink: 0;
  width: 72px;
  aspect-ratio: 16 / 9;
  margin: 5px 0;
  border-radius: 4px;
  background: linear-gradient(135deg, #1e293b 0%, #334155 100%);
  overflow: hidden;
}

.mc-preview-news-story-media--empty {
  background: linear-gradient(135deg, #e2e8f0 0%, #cbd5e1 100%);
}

.mc-preview-news-story-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.mc-preview-news-story-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  padding: 6px 8px 6px 0;
  flex: 1;
}

.mc-preview-news-story-title {
  margin: 0;
  font-size: .72rem;
  font-weight: 700;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.mc-preview-news-story-date {
  font-size: .64rem;
  color: var(--mc-muted);
  line-height: 1.2;
}

@media (max-width: 900px) {
  .mc-preview-layout {
    grid-template-columns: 1fr;
  }

  .mc-preview-right-col {
    order: -1;
  }

  .mc-preview-news-panel {
    position: static;
    max-height: none;
  }

  .mc-preview-news-list {
    max-height: 320px;
  }
}

.mc-preview-surface {
  background: var(--mc-card);
  border-radius: var(--mc-radius);
  border: 1px solid var(--mc-border);
  overflow: hidden;
}

.mc-preview-surface > .mc-preview-h2h {
  padding: 8px 8px 12px;
}

.mc-preview-footnotes {
  padding: 0 var(--mc-ai-pad-x, 18px) 14px;
}

.mc-preview-footnote {
  margin: 0.35rem 0 0;
  font-size: .68rem;
  line-height: 1.45;
  color: var(--mc-muted);
}

.mc-preview-footnote:first-child {
  margin-top: 0.5rem;
}

.mc-preview-h2h-count {
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--mc-upcoming);
  background: rgba(37, 99, 235, 0.1);
  padding: 3px 8px;
  border-radius: 999px;
}

.mc-preview-h2h-count.mc-block-title-sub,
.mc-preview-news-window.mc-block-title-sub {
  margin-left: auto;
}

.mc-preview-loading,
.mc-preview-empty {
  margin: 0;
  padding: 14px 18px;
  color: var(--mc-muted);
  font-size: .88rem;
}
.mc-preview-insight-body .mc-preview-loading,
.mc-preview-insight-body .mc-preview-empty {
  padding-left: var(--mc-ai-pad-x, 18px);
  padding-right: var(--mc-ai-pad-x, 18px);
}
.mc-preview-empty--h2h {
  padding: 14px 18px;
}
.mc-preview-empty--news {
  padding: 8px 6px 0;
}

.mc-preview-news-window {
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--mc-muted);
  background: rgba(0, 0, 0, 0.05);
  padding: 3px 8px;
  border-radius: 999px;
}

.mc-preview-form-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0;
}
.mc-preview-form-col {
  padding: 14px 16px 16px;
  min-width: 0;
}
.mc-preview-form-col--home {
  border-right: 1px solid var(--mc-border);
}
.mc-preview-team-head {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
}
.mc-preview-team-head--away {
  flex-direction: row;
  justify-content: flex-end;
}
.mc-preview-team-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.mc-preview-team-head--away .mc-preview-team-meta {
  align-items: flex-end;
}
.mc-preview-form-season-note {
  font-size: .62rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--mc-muted);
}
.mc-preview-team-logo {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
}
.mc-preview-team-code {
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mc-muted);
}
.mc-preview-form-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.mc-preview-form-row {
  display: grid;
  align-items: center;
  column-gap: 8px;
  width: 100%;
  font-size: .82rem;
}
.mc-preview-form-row--home {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
}
.mc-preview-form-row--away {
  grid-template-columns: auto auto auto minmax(0, 1fr);
}
.mc-preview-form-date {
  color: var(--mc-muted);
  font-size: .76rem;
  white-space: nowrap;
  min-width: 0;
}
.mc-preview-form-row--home .mc-preview-form-date {
  justify-self: start;
}
.mc-preview-form-row--away .mc-preview-form-date {
  justify-self: end;
  text-align: right;
}
.mc-preview-form-score {
  font-weight: 700;
  color: var(--mc-text);
  white-space: nowrap;
  text-align: center;
  justify-self: center;
}
.mc-preview-form-opp {
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;
  width: var(--mc-form-icon);
  height: var(--mc-form-icon);
}
.mc-preview-form-opp-logo {
  width: 22px;
  height: 22px;
  object-fit: contain;
  display: block;
}
.mc-form-outcome {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  font-size: .68rem;
  font-weight: 800;
  flex-shrink: 0;
  justify-self: center;
}
.mc-form-outcome--win {
  background: rgba(22, 163, 74, 0.14);
  color: var(--mc-green);
}
.mc-form-outcome--loss {
  background: rgba(185, 28, 28, 0.12);
  color: var(--mc-red);
}
.mc-form-outcome--draw {
  background: rgba(0, 0, 0, 0.06);
  color: var(--mc-muted);
}

.mc-preview-h2h {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-family: 'Inter', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --sch-bg: var(--mc-bg);
  --sch-card: var(--mc-card);
  --sch-border: var(--mc-border);
  --sch-text: var(--mc-text);
  --sch-muted: var(--mc-muted);
  --sch-live: var(--mc-green);
  --sch-row-accent: #f47c31;
  --sch-radius: var(--mc-radius);
}

/* Head-to-head uses schedule-v2 card styles + h2h-schedule-scope.css */

/* ── Responsive ──────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
  .mc-page {
    padding: 16px 12px 48px;
  }

  .mc-page-tabs {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 6px;
    margin-bottom: 12px;
    padding-bottom: 2px;
  }

  .mc-page-tabs::-webkit-scrollbar {
    display: none;
  }

  .mc-page-tab {
    flex: 0 0 auto;
    padding: 8px 14px;
    font-size: .75rem;
  }

  .mc-teams-hero {
    padding: 16px 12px 10px;
    gap: 16px;
  }

  .mc-meta-row {
    font-size: .75rem;
    font-weight: 500;
    gap: 6px;
  }

  .mc-competition-logo {
    height: 32px;
  }

  .mc-teams-board {
    column-gap: 8px;
    row-gap: 6px;
  }

  .mc-team {
    flex-direction: column;
    align-items: center;
    gap: 6px;
    flex: initial;
  }

  .mc-team--away {
    flex-direction: column;
  }

  .mc-team--home,
  .mc-team--away {
    text-align: center;
  }

  .mc-team-info {
    align-items: center;
    width: 100%;
    max-width: none;
  }

  .mc-team--away .mc-team-info {
    align-items: center;
  }

  .mc-team-logo {
    width: 80px;
    height: 80px;
  }

  .mc-teams-board {
    --mc-team-logo-w: 80px;
  }

  .mc-odds-bar-side--home,
  .mc-odds-bar-side--away {
    justify-content: center;
    justify-self: center;
    width: var(--mc-team-logo-w);
    margin-left: 0;
  }

  .mc-team-name {
    font-size: .875rem;
    line-height: 1.15;
    overflow-wrap: normal;
    word-break: normal;
    hyphens: manual;
  }

  .mc-team-record {
    font-size: .75rem;
  }

  .mc-score-center {
    min-width: 0;
    padding: 0 2px;
    align-self: center;
  }

  .mc-score-row {
    gap: 8px;
  }

  .mc-score-num {
    font-size: 2rem;
  }

  .mc-score {
    font-size: 1.25rem;
  }

  .mc-score.mc-score--countdown {
    font-size: 1.05rem;
  }

  .mc-status-chip {
    padding: 2px 4px;
    font-size: .75rem;
  }

  .mc-hero-latest-play {
    margin-top: 4px;
  }

  .mc-hero-latest-play-clock,
  .mc-hero-latest-play-text {
    font-size: .75rem;
  }

  .mc-meta {
    padding: 0 12px 12px;
  }

  .mc-box-table {
    min-width: 520px;
    font-size: .72rem;
  }

  .mc-box-table th.mc-box-col-player,
  .mc-box-table td.mc-box-col-player {
    min-width: 118px;
    width: 30%;
  }

  .mc-box-table th,
  .mc-box-table td {
    padding: 7px 6px;
  }

  .mc-box-team-head {
    padding: 10px 12px;
  }
}

@media (max-width: 560px) {
  .mc-teams-hero  { padding: 12px 10px 8px; gap: 12px; }
  .mc-teams-board { --mc-team-logo-w: 64px; }
  .mc-team-logo   { width: 64px; height: 64px; }
  .mc-team-name   { font-size: .75rem; }
  .mc-score-num   { font-size: 1.75rem; }
  .mc-score       { font-size: 1.15rem; }
  .mc-score.mc-score--countdown { font-size: .95rem; }
  .mc-score-row   { gap: 6px; }
  .mc-status-chip { padding: 2px 4px; font-size: .68rem; }
  .mc-hero-latest-play-clock,
  .mc-hero-latest-play-text { font-size: .68rem; }
  .mc-hero-watch .mc-meta-broadcast {
    justify-content: center;
    gap: 6px;
  }
  .mc-bc img,
  .mc-bc--logo-only img {
    width: auto;
    height: clamp(22px, 5vw, 26px);
  }
  .mc-leaders-grid:not(.mc-leaders-grid--photos) {
    grid-template-columns: repeat(3, 1fr);
  }
  .mc-leaders-grid--photos {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 10px;
  }
  .mc-leader-stat-card-halves,
  .mc-leader-stat-half { min-height: 118px; }
  .mc-leader-stat-half-name { font-size: .72rem; max-width: 58%; }
  .mc-leader-stat-half-value { font-size: 1.25rem; }
  .mc-leader-val  { font-size: 1.4rem; }
  .mc-team-stats-grid  { grid-template-columns: 1fr; }
  .mc-team-stats-col:first-child { border-right: none; border-bottom: 1px solid var(--mc-border); }
  .mc-quarters-wrap { padding: 0 0 14px; }
  .mc-page-tabs { gap: 2px; padding: 4px; }
  .mc-page-tab  { font-size: .75rem; padding: 8px 6px; }
  .mc-preview-form-grid { grid-template-columns: 1fr; }
  .mc-preview-form-col--home { border-right: none; border-bottom: 1px solid var(--mc-border); }
  .mc-preview-form-row {
    --mc-form-date: 5rem;
    --mc-form-score: 4.25rem;
  }
}
