/* CAF owns its palette; shared competition components own all layout. */
html
  body.caf-champions-league-route-active
  :is(#afcSimulatorScreen, #premierLeagueSeasonScreen) {
  display: none !important;
}
body.caf-champions-league-match-mode-active
  #appShell
  :is(
    .topbar,
    #roundBoard,
    #storyStrip,
    .plot-panel,
    #fieldOverview,
    .page-kicker,
    #uclEngineTablePanel,
    #plEngineTablePanel
  ) {
  display: none !important;
}
html:has(body.caf-champions-league-route-active),
html body.caf-champions-league-route-active,
html
  body
  :is(
    #achievementsScreen,
    #retroAchievementsModal,
    #achievementModal,
    #achievementBanner
  )[data-achievement-theme="caf-champions-league-2026-27"] {
  --bg: #171811;
  --panel: #28291e;
  --panel-2: #353629;
  --panel-3: #44442e;
  --text: #f7f5e9;
  --muted: #c9c7b0;
  --line: #66623c;
  --soft: #fff0c8;
  --lime: #d4be4a;
  --lime-dark: #bba42c;
  --pl-bg: #171811;
  --pl-surface: #28291e;
  --pl-surface-light: #353629;
  --pl-muted: #c9c7b0;
  --pl-line: #66623c;
  --pl-soft: #353629;
  --pl-era-canvas: #171811;
  --pl-era-canvas-rgb: 243 184 68;
  --pl-era-deep: #0b0b0b;
  --pl-era-deep-rgb: 11 11 11;
  --pl-era-surface: #28291e;
  --pl-era-surface-rgb: 24 24 24;
  --pl-era-raised: #353629;
  --pl-era-raised-rgb: 37 37 37;
  --pl-era-accent: #d4be4a;
  --pl-era-accent-rgb: 229 189 88;
  --pl-era-accent-text: #0b0b0b;
  --pl-era-muted: #c9c7b0;
  --pl-era-muted-rgb: 198 198 198;
  --pl-era-white: #f7f5e9;
  --pl-era-white-rgb: 255 255 255;
  --pl-era-ice: #fff0c8;
  --pl-era-ice-rgb: 255 240 200;
  --domestic-setup-accent: #d4be4a;
  --domestic-setup-accent-text: #0b0b0b;
  --achievement-accent: #d4be4a;
  --achievement-accent-text: #0b0b0b;
  --achievement-surface: #28291e;
  --achievement-surface-deep: #0b0b0b;
  --achievement-tab-surface: #353629;
  --achievement-card: #28291e;
  --achievement-card-complete: #44442e;
  --achievement-copy: #f7f5e9;
  --achievement-muted: #c9c7b0;
  --achievement-points: #d4be4a;
  --achievement-shadow: #0008;
  --popup-blue-950: #0b0b0b;
  --popup-blue-900: #28291e;
  --popup-blue-850: #353629;
  --popup-blue-800: #44442e;
  color: #f7f5e9;
  color-scheme: dark;
  background: #171811 !important;
}
html body.caf-champions-league-route-active::before,
html body.caf-champions-league-route-active::after {
  display: none !important;
}
html
  body.caf-champions-league-route-active
  :is(
    #appShell,
    #mainContent,
    #matchStage,
    .ucl-simulator-screen,
    .ucl-simulator-header,
    .mode-route-setup,
    .mode-route-setup-panel,
    .ucl-simulator-main
  ) {
  color: #f7f5e9 !important;
  background: #171811 !important;
  background-image: none !important;
}
html
  body.caf-champions-league-route-active
  :is(.brand-mark, .brand-mark-number, .brand-mark-label) {
  color: #d4be4a !important;
  border-color: #d4be4a !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .panel,
    .ucl-panel,
    .retro-inline-team-option,
    .afc-squad-dialog,
    .ucl-view-tabs,
    .lineups-panel,
    .tactics-panel,
    .snapshot-modal
  ) {
  color: #f7f5e9 !important;
  border-color: #66623c !important;
  background: #28291e !important;
  background-image: none !important;
}
html
  body.caf-champions-league-route-active
  :is(
    button:not(.authored-test-match-timeline-marker),
    select,
    input,
    .utility-button,
    .ucl-back-button
  ) {
  color: #f7f5e9;
  border-color: #66623c;
  background-color: #353629;
}
html
  body.caf-champions-league-route-active
  :is(
    .primary-button,
    #playButton,
    [aria-pressed="true"],
    .retro-inline-team-option.is-selected
  ) {
  color: #0b0b0b !important;
  background: #d4be4a !important;
  border-color: #eed797 !important;
  box-shadow: none !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .retro-inline-team-option.is-selected strong,
    .retro-inline-team-option.is-selected small
  ) {
  color: #0b0b0b !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .text-button,
    .pl-engine-full-table,
    .scorer-minute,
    .player-rating,
    #homeScore,
    #awayScore
  ) {
  color: #d4be4a !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .match-stat-bar-fill,
    .tactic-button.active,
    .formation-button.active,
    .player-rating-badge
  ) {
  color: #0b0b0b !important;
  background: #d4be4a !important;
}
html
  body.caf-champions-league-route-active
  :is(.modal, dialog):not(.afc-squad-dialog) {
  color: #f7f5e9 !important;
  background: #28291e !important;
  border-color: #66623c !important;
}
html body.caf-champions-league-route-active :focus-visible {
  outline: 2px solid #eed797;
  outline-offset: 3px;
}

html body.caf-champions-league-route-active .ucl-simulator-screen {
  --ucl-navy-950: #0b0b0b;
  --ucl-navy-900: #28291e;
  --ucl-navy-850: #353629;
  --ucl-navy-800: #44442e;
  --ucl-blue: #bba42c;
  --ucl-blue-bright: #d4be4a;
  --ucl-gold: #d4be4a;
  --ucl-ink: #f7f5e9;
  --ucl-muted: #c9c7b0;
  --ucl-line: #66623c;
  --ucl-soft: #44442e;
}
html
  body.caf-champions-league-route-active
  :is(.ucl-primary-action, .primary-button) {
  color: #0b0b0b !important;
  background: #d4be4a !important;
  border-color: #eed797 !important;
  box-shadow: none;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-panel,
    .ucl-golden-boot,
    .ucl-group-table,
    .ucl-secondary-action,
    .ucl-bracket-tie,
    .ucl-fixture-row,
    .ucl-opponent-card,
    .ucl-empty-state,
    .afc-squad-dialog
  ) {
  background: #28291e;
  border-color: #66623c;
  color: #f7f5e9;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-panel > header button,
    .ucl-panel-footer button,
    .ucl-fixtures-toolbar button,
    .ucl-matchday-nav button,
    .ucl-bracket-watch
  ) {
  color: #d4be4a;
  background: #353629;
  border-color: #66623c;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-table th,
    .ucl-table td,
    .ucl-fixture-row,
    .ucl-golden-boot-row,
    .ucl-panel > header
  ) {
  border-color: #66623c;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-golden-boot-empty,
    .ucl-fixture-md,
    .ucl-kickoff,
    .ucl-table thead th,
    .ucl-table-legend,
    .ucl-stage-copy p,
    .ucl-opponent-venue-label
  ) {
  color: #c9c7b0;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-table-points,
    .ucl-golden-boot-row i,
    .ucl-score,
    .ucl-view-tabs button.active,
    .ucl-bracket-team.is-winner strong
  ) {
  color: #d4be4a;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-table tr.is-managed,
    .ucl-fixture-row.is-managed,
    .ucl-bracket-team.is-winner
  ) {
  background: #44442e;
}
html body.caf-champions-league-route-active :is(.utility-button, .brand-mark) {
  color: #d4be4a !important;
}
html body.caf-champions-league-route-active .brand-mark {
  background: #44442e !important;
}
html body.caf-champions-league-route-active .news-icon i {
  background: #d4be4a !important;
}
html body.caf-champions-league-route-active .toast {
  background: #353629 !important;
  color: #f7f5e9 !important;
}
html body.caf-champions-league-route-active .ucl-view-tabs button::after {
  background: #d4be4a;
}
#cafChampionsLeagueMatchPanel {
  min-width: 0;
  overflow: hidden;
}
#cafChampionsLeagueMatchPanel .ucl-table {
  min-width: 0;
}
#cafChampionsLeagueMatchPanel .ucl-table :is(td, th) {
  padding: 7px 3px;
}
/* Palette overrides for existing shared competition controls. */
body.caf-champions-league-route-active {
  --uefa-setup-accent: #d4be4a;
  --uefa-setup-accent-strong: #bba42c;
  --uefa-setup-header: #0b0b0b;
  --uefa-setup-header-soft: #44442e;
  --uefa-setup-panel: #0b0b0b;
  --uefa-setup-card: #28291e;
  --uefa-setup-border: #66623c;
  --uefa-setup-muted: #c9c7b0;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-site-brand,
    .ucl-header-left a,
    .ucl-header-actions a,
    .ucl-back-button
  ) {
  text-decoration: none;
}
html body.caf-champions-league-route-active .ucl-back-button {
  background: transparent;
}
html
  body.caf-champions-league-route-active
  :is(.ucl-view-tabs button, .ucl-fixture-row) {
  background-color: transparent;
}
html body.caf-champions-league-route-active .ucl-fixture-row {
  width: 100%;
  color: #f7f5e9;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  font: inherit;
  text-align: left;
}
html body.caf-champions-league-route-active .ucl-view-tabs button.active {
  color: #d4be4a !important;
  background: transparent !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-champion-card p,
    .ucl-golden-boot-row small,
    .ucl-bracket-team strong,
    .standard-tactic-matchup,
    .standard-tactic-opponent
  ) {
  color: #c9c7b0;
}
html
  body.caf-champions-league-route-active
  :is(.ucl-header-left, .ucl-header-actions)
  .utility-button
  > span:first-child {
  color: #d4be4a;
  border-color: #d4be4a;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-panel > header,
    .ucl-panel-heading,
    .ucl-group-table > h3,
    .ucl-golden-boot > header
  ) {
  background: #353629 !important;
  border-color: #66623c !important;
}
html
  body.caf-champions-league-route-active
  .ucl-table
  tr[data-zone="direct"]
  td:first-child {
  color: #d4be4a;
  box-shadow: inset 3px 0 #d4be4a;
}
html
  body.caf-champions-league-route-active
  .ucl-table
  tr[data-zone="playoff"]
  td:first-child {
  color: #c9c7b0;
  box-shadow: inset 3px 0 #8a7951;
}
html
  body.caf-champions-league-route-active
  .ucl-table
  tr[data-zone="out"]
  td:first-child {
  color: #c9c7b0;
  box-shadow: none;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-opponent-number,
    .ucl-opponent-copy small,
    .ucl-opponent-venue,
    .ucl-opponent-venue-label,
    .ucl-champion-awards dt,
    .ucl-champion-awards small
  ) {
  color: #c9c7b0;
}
html
  body.caf-champions-league-route-active
  .ucl-table-legend
  span:nth-child(1) {
  --legend-color: #d4be4a;
}
html
  body.caf-champions-league-route-active
  .ucl-table-legend
  span:nth-child(2) {
  --legend-color: #a99561;
}
html
  body.caf-champions-league-route-active
  .ucl-table-legend
  span:nth-child(3) {
  --legend-color: #756e5f;
}
html body.caf-champions-league-route-active .ucl-champion-awards > div {
  background: #353629;
  border-color: #66623c;
}

/* Shared match chrome must use the cup palette as well as competition screens. */
html body.caf-champions-league-route-active .utility-button > span:first-child,
html
  body.caf-champions-league-route-active
  .utility-button
  > span:first-child
  :is(svg, path) {
  color: #d4be4a !important;
  border-color: #d4be4a !important;
}
html body.caf-champions-league-route-active .ucl-site-brand {
  color: #d4be4a !important;
}
html body.caf-champions-league-route-active .footer-last-updated > * {
  color: #c9c7b0 !important;
}
html body.caf-champions-league-route-active .toast {
  border-color: #66623c !important;
}
html body.caf-champions-league-route-active .ucl-kickoff.is-watch-action {
  background: #44442e;
  border-color: #66623c;
  color: #d4be4a;
}
html body.caf-champions-league-route-active .match-stat-row {
  color: #c9c7b0 !important;
}
html body.caf-champions-league-route-active .match-stat-track {
  background: #44442e !important;
}
html body.caf-champions-league-route-active #standardTacticFeedback {
  color: #c9c7b0 !important;
}
html body.caf-champions-league-route-active .ucl-score {
  color: #f7f5e9;
  background: #44442e;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-score,
    .ucl-bracket-team > b,
    .ucl-kickoff,
    .ucl-opponent-number,
    .ucl-table td
  ) {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-variant-numeric: tabular-nums;
}
html
  body.caf-champions-league-route-active
  .ucl-fixture-row:is(:hover, :focus-visible) {
  background: #353629;
  border-color: #bba42c;
}
html
  body.caf-champions-league-route-active
  .ucl-fixture-row:is(:hover, :focus-visible)
  :is(.ucl-kickoff.is-watch-action, .ucl-score) {
  color: #f7f5e9;
  background: #4a3c20;
  border-color: #d4be4a;
}
html
  body.caf-champions-league-route-active
  .ucl-bracket-tie:is(.is-playable, .is-watchable, .is-viewable) {
  border-color: #75633b;
  box-shadow: 0 8px 24px #0003;
}
html
  body.caf-champions-league-route-active
  .ucl-bracket-tie:is(:hover, :focus-visible) {
  background: #44442e;
  border-color: #d4be4a;
  box-shadow: 0 8px 24px #0003;
}
html body.caf-champions-league-route-active .ucl-bracket-decider {
  color: #c9c7b0;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-table td,
    .ucl-table-club,
    .ucl-team-mark-small,
    .ucl-table-club img
  ) {
  color: #f7f5e9 !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .golden-boot-empty,
    .golden-boot-empty > *,
    .golden-boot-row small,
    .match-stats-empty,
    .footer-last-updated,
    .live-view-button,
    .standard-tactic-matchup
  ) {
  color: #c9c7b0 !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .match-analysis-heading,
    .match-stat-row,
    .lineup-panel,
    .lineup-bench,
    .team-management-panel,
    .standard-tactic-options,
    .match-analysis
  ) {
  border-color: #66623c !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .lineup-panel,
    .lineup-bench,
    .team-management-panel,
    .standard-tactic-options
  ) {
  background: #28291e !important;
}

/* A neutral match has no tactics rail: place summaries below the match, then groups. */
html
  body.caf-champions-league-match-mode-active
  #mainContent.content:has(#standardMatchTactics[hidden]) {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-areas: "stage stage" "stats boot" "groups groups" !important;
  width: min(1100px, calc(100% - 28px)) !important;
  margin-inline: auto !important;
  gap: 16px !important;
}
html
  body.caf-champions-league-match-mode-active
  #mainContent.content:has(#standardMatchTactics[hidden])
  > .stage-column {
  grid-area: stage !important;
  width: 100% !important;
  max-width: 900px;
  justify-self: center;
}
html
  body.caf-champions-league-match-mode-active
  #mainContent.content:has(#standardMatchTactics[hidden])
  > .insight-right {
  grid-area: stats !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  margin: 0 !important;
}
html
  body.caf-champions-league-match-mode-active
  #mainContent.content:has(#standardMatchTactics[hidden])
  > .insight-left {
  grid-area: boot !important;
  margin: 0 !important;
  align-content: stretch;
}
html
  body.caf-champions-league-match-mode-active
  #mainContent
  #cafChampionsLeagueMatchPanel {
  grid-area: auto !important;
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table {
  width: 100%;
  table-layout: fixed;
}
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table
  :is(th, td):nth-child(2) {
  width: 55%;
}
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table
  :is(th, td):nth-child(4),
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table
  :is(th, td):nth-child(5),
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table
  :is(th, td):nth-child(6) {
  display: none;
}
html
  body.caf-champions-league-match-mode-active
  #cafChampionsLeagueMatchPanel
  .ucl-table-club
  strong {
  white-space: normal;
  overflow-wrap: anywhere;
}
@media (min-width: 600px) {
  html
    body.caf-champions-league-match-mode-active
    #mainContent
    #cafChampionsLeagueMatchPanel
    .ucl-groups-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
}
@media (max-width: 599px) {
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics[hidden]) {
    grid-template-areas: "stage stage" "stats stats" "boot boot" "groups groups" !important;
  }
  html
    body.caf-champions-league-match-mode-active
    #cafChampionsLeagueMatchPanel
    .ucl-groups-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
}

/* The shared winners ceremony follows the season palette. */
html
  body.caf-champions-league-route-active
  :is(.ucl-champion-overlay, .ucl-champion-overview) {
  background: #171811;
}
html body.caf-champions-league-route-active .ucl-champion-card {
  width: min(780px, 100%);
  gap: 16px;
  padding: 32px 20px;
}
html body.caf-champions-league-route-active .ucl-champion-card .ucl-trophy {
  display: none;
}
html body.caf-champions-league-route-active .ucl-champion-badge {
  width: 112px;
  height: 112px;
  margin: 0;
  filter: drop-shadow(0 4px 16px rgba(216, 184, 102, 0.2));
}
html body.caf-champions-league-route-active .ucl-champion-card h1 {
  margin: 0;
  line-height: 1.08;
  text-shadow: none;
}
html body.caf-champions-league-route-active .ucl-champion-kicker {
  color: #f7f5e9;
  font:
    800 15px/1.5 "Manrope",
    sans-serif;
  letter-spacing: 0;
}
html body.caf-champions-league-route-active .ucl-champion-awards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin: 8px 0;
}
html body.caf-champions-league-route-active .ucl-champion-awards dt {
  font-family: "Manrope", sans-serif;
}
html body.caf-champions-league-route-active .ucl-champion-actions {
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 8px;
}
@media (max-width: 480px) {
  html body.caf-champions-league-route-active .ucl-champion-card {
    gap: 12px;
    padding: 24px 12px;
  }
  html body.caf-champions-league-route-active .ucl-champion-awards {
    grid-template-columns: 1fr;
  }
}

/* Full competition context follows the match and its support rails. */
html
  body.caf-champions-league-match-mode-active
  #mainContent:has(#standardMatchTactics[hidden])
  #cafChampionsLeagueMatchPanel {
  grid-area: groups !important;
}
html body.caf-champions-league-match-mode-active #cafChampionsLeagueMatchPanel {
  order: 100;
  min-width: 0;
}
@media (min-width: 1151px) {
  html
    body.caf-champions-league-match-mode-active
    #mainContent
    #cafChampionsLeagueMatchPanel
    .ucl-groups-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
html
  body.caf-champions-league-route-active
  .authored-action-preview-controls
  .authored-test-match-timeline-marker {
  background: transparent;
  border: 0;
  box-shadow: none;
  pointer-events: auto;
  cursor: help;
}
html
  body.caf-champions-league-route-active
  .authored-action-preview-controls
  .authored-test-match-timeline-marker::after {
  background: #353629;
  border-color: #66623c;
  color: #f7f5e9;
}

html body.caf-champions-league-route-active .ucl-bracket-decider {
  background: #353629;
  color: #d4be4a;
}
/* Screen and match layout are shared; only the tournament scorebug is specific. */
body.caf-champions-league-match-mode-active .match-stats-empty span {
  white-space: normal;
  text-align: center;
}
.competition-folder-caf-champions-league,
.competition-edition-caf-champions-league,
[data-competition-folder="caf-champions-league"],
[data-competition-archive="caf-champions-league"] .competition-edition-tile {
  background: linear-gradient(145deg, #28734b, #175438 64%, #123d2b);
  border-color: #5b9b70;
}
[data-competition-folder="caf-champions-league"] .competition-folder-art,
[data-competition-archive="caf-champions-league"] .competition-edition-art {
  background: #90bd8c;
  border-color: #a7d1a0;
}
.competition-folder-caf-champions-league img,
.competition-edition-caf-champions-league img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body.caf-champions-league-match-mode-active
  #appShell
  :is(
    .topbar,
    #roundBoard,
    #storyStrip,
    .plot-panel,
    #fieldOverview,
    .page-kicker,
    #uclEngineTablePanel,
    #plEngineTablePanel
  ) {
  display: none !important;
}
body.caf-champions-league-route-active
  img[src*="/caf-champions-league-2026-27/badges/111.png"] {
  filter: brightness(0) invert(1);
}

/* Warm canvas, dark controls and light text inside dark surfaces. */
html
  body.caf-champions-league-route-active
  :is(#appShell #mainContent, #uclSimulatorScreen #uclSimulatorContent)
  :is(
    .match-analysis,
    .golden-boot-panel,
    .ucl-group-table,
    .ucl-golden-boot,
    .ucl-panel,
    .ucl-champion-card
  )
  :is(h1, h2, h3, strong, span, b, small, p, dt, dd) {
  color: #f7f5e9 !important;
}
html
  body.caf-champions-league-route-active
  #appShell
  #mainContent
  #standardTacticButtons {
  background: #28291e !important;
  border-color: #66623c !important;
}
html
  body.caf-champions-league-route-active
  #appShell
  #mainContent
  #standardTacticButtons
  button.active,
html
  body.caf-champions-league-route-active
  #uclRouteSetup
  #uclInlineTeamToolbar
  button[data-inline-neutral-choice][aria-pressed="true"] {
  color: #fff1cd !important;
  background: #45474b !important;
}
html
  body.caf-champions-league-route-active
  :is(.ucl-back-button, .mode-route-setup-back) {
  color: #f7f5e9 !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .retro-inline-team-option.is-selected,
    .tactic-button.active,
    button[aria-pressed="true"]
  ) {
  color: #fff1cd !important;
  background-color: #45474b !important;
}
html body.caf-champions-league-route-active .ucl-champion-card {
  color: #f7f5e9 !important;
  background: #28291e !important;
}
html body.caf-champions-league-route-active .ucl-champion-card h1 {
  color: #f7f5e9 !important;
}
html
  body.caf-champions-league-route-active
  .ucl-champion-card
  .ucl-champion-kicker {
  color: #d4be4a !important;
}
html body.caf-champions-league-route-active .ucl-champion-card > p {
  color: #c9c7b0 !important;
}
html
  body.caf-champions-league-route-active
  #appShell
  #mainContent
  #stageRoundLabel,
html body.caf-champions-league-route-active #uclRouteSetup #uclInlineTeamCount {
  color: #c9c7b0 !important;
}
html
  body.caf-champions-league-route-active
  :is(#uclRouteSetup #startUclSimulatorButton, #mainContent #playButton) {
  color: #fff1cd !important;
  background: #45474b !important;
  border: 1px solid #45474b !important;
}
html
  body.caf-champions-league-route-active
  :is(
    #clubCompetitionSetupCopy,
    #uclTeamHint,
    #stageRoundLabel,
    .ucl-header-copy > p
  ) {
  color: #c9c7b0 !important;
}
html body.caf-champions-league-route-active .site-footer {
  color: #f7f5e9;
}
html
  body.caf-champions-league-route-active
  .site-footer
  :is(p, a, small, .footer-last-updated > *) {
  color: #c9c7b0 !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-primary-action,
    .primary-button,
    #playButton,
    #startUclSimulatorButton,
    #uclPrimaryActionButton
  ) {
  color: #fff1cd !important;
  background: #45474b !important;
  border-color: #45474b !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .ucl-primary-action,
    .primary-button,
    #playButton,
    #startUclSimulatorButton,
    #uclPrimaryActionButton
  ):hover {
  background: #56585d !important;
  border-color: #fff1cd !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .match-analysis,
    .golden-boot-panel,
    .ucl-champion-awards > div,
    .ucl-view-tabs,
    #standardMatchTactics
  ) {
  color: #f7f5e9 !important;
  background: #28291e !important;
  border-color: #66623c !important;
}
html
  body.caf-champions-league-route-active
  :is(
    .mode-route-setup h1,
    .mode-route-setup > p,
    .ucl-simulator-header h1,
    .ucl-champion-card h1,
    .ucl-champion-card > p,
    .ucl-champion-subtitle,
    .ucl-stage-copy,
    .match-phase,
    .standard-tactic-opponent,
    .standard-tactic-matchup
  ) {
  color: #f7f5e9 !important;
}
html body.caf-champions-league-route-active .ucl-champion-card {
  color: #f7f5e9;
}
html
  body.caf-champions-league-route-active
  :is(.mode-route-setup-panel, .ucl-simulator-main)
  > :is(p, small) {
  color: #c9c7b0;
}
html body.caf-champions-league-route-active .ucl-champion-card h1 {
  color: #f7f5e9 !important;
}
html body.caf-champions-league-route-active .ucl-champion-card > p {
  color: #c9c7b0 !important;
}
html
  body.caf-champions-league-route-active
  :is(#uclStageKicker, #uclMatchdayDate, #uclProgressLabel) {
  color: #c9c7b0 !important;
}
/* Recreation of CAF's dark scorebug, trophy disc, kit strips and clock below. */
html body #competitionBroadcastScoreboard[data-mode="caf-champions-league"] {
  width: min(100%, 310px) !important;
  margin: 10px auto 20px;
  padding: 0;
  min-height: 72px;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"] .cb-context {
  display: none;
}
html
  body
  #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-scorebug {
  position: relative;
  display: grid;
  grid-template-columns: 54px 1fr 28px 28px 1fr;
  grid-template-rows: 34px 22px;
  gap: 0;
  height: 56px;
  min-height: 56px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"] .cb-team {
  display: contents;
}
html
  body
  #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  :is(.cb-code, .cb-score) {
  display: grid;
  place-items: center;
  grid-row: 1;
  height: 34px;
  min-width: 0;
  position: relative;
  inset: auto;
  transform: none;
  padding: 0;
  color: #fff;
  background: #24251f;
  font:
    800 18px/1 "Scoreboard Sans",
    Arial,
    sans-serif;
  letter-spacing: 0;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-home
  .cb-code {
  grid-column: 2;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-home
  .cb-score {
  grid-column: 3;
  border-right: 1px solid #ddd;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-away
  .cb-score {
  grid-column: 4;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-away
  .cb-code {
  grid-column: 5;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-code::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 55%;
  height: 4px;
  background: var(--kit, #fff);
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"] .cb-badge {
  display: none;
}
html
  body
  #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-logo {
  display: block;
  position: relative;
  inset: auto;
  grid-column: 1;
  grid-row: 1;
  width: 46px;
  height: 46px;
  margin-top: -6px;
  margin-left: 8px;
  border: 1px solid #eee;
  border-radius: 50%;
  background: #24251f
    url("/assets/caf-champions-league-2026-27/scoreboard-mark.svg") center /
    18px 36px no-repeat;
  z-index: 2;
}
#competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-scorebug::before {
  content: "";
  position: absolute;
  width: 54px;
  height: 34px;
  inset: 0 auto auto 0;
  background: repeating-linear-gradient(65deg, #d4be4a 0 7px, #24251f 7px 14px);
}
html
  body
  #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  time {
  display: grid;
  place-items: center;
  position: relative;
  inset: auto;
  grid-row: 2;
  grid-column: 3 / 5;
  height: 22px;
  width: 80px;
  margin-left: -12px;
  color: #111;
  background: #fff;
  border-radius: 0;
  padding: 0;
  font:
    800 16px/1 "Scoreboard Sans",
    Arial,
    sans-serif;
}
html
  body
  #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
  .cb-aggregate {
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: max-content;
  color: #d4be4a;
  background: #24251f;
  font:
    700 12px/1.3 Arial,
    sans-serif;
  padding: 3px 8px;
}
html body.caf-champions-league-route-active .ucl-fixture-grid {
  gap: 12px;
}
html body.caf-champions-league-route-active .ucl-champion-kicker {
  display: none;
}
html body.caf-champions-league-route-active .ucl-champion-trophy {
  opacity: 0.12;
}
html body.caf-champions-league-route-active .ucl-view-tabs {
  overflow-x: auto;
}
@media (max-width: 540px) {
  html body #competitionBroadcastScoreboard[data-mode="caf-champions-league"] {
    width: min(100%, 290px) !important;
  }
  html
    body
    #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
    .cb-scorebug {
    grid-template-columns: 54px 1fr 28px 28px 1fr;
  }
  html
    body
    #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
    :is(.cb-code, .cb-score) {
    font-size: 17px;
  }
  html
    body
    #competitionBroadcastScoreboard[data-mode="caf-champions-league"]
    time {
    margin-left: -12px;
  }
}
@media (min-width: 851px) {
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics:not([hidden])) {
    display: grid !important;
    grid-template-columns: minmax(200px, 0.8fr) minmax(0, 2.5fr) minmax(
        200px,
        0.8fr
      ) !important;
    grid-template-areas: "stats stage boot" "groups groups groups" !important;
    gap: 24px !important;
    align-items: start !important;
  }
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics:not([hidden]))
    > .insight-left {
    grid-area: stats !important;
    display: flex !important;
    flex-direction: column;
    margin: 0 !important;
    gap: 16px;
  }
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics:not([hidden]))
    > .insight-right {
    grid-area: boot !important;
    display: flex !important;
    flex-direction: column;
    margin: 0 !important;
  }
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics:not([hidden]))
    > .stage-column {
    grid-area: stage !important;
    width: 100% !important;
    min-width: 0;
  }
  html
    body.caf-champions-league-match-mode-active
    #mainContent.content:has(#standardMatchTactics:not([hidden]))
    #cafChampionsLeagueMatchPanel {
    grid-area: groups !important;
  }
}
html body.caf-champions-league-route-active .ucl-bracket-stage > header > span {
  display: none;
}

/* Text belongs to the card surface, including hovered and selected cards. */
html body.caf-champions-league-route-active #uclRouteSetup
  .retro-inline-team-option :is(strong, small) {
  color: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.caf-champions-league-route-active #uclRouteSetup
  .retro-inline-team-option:hover {
  color: #171811 !important;
  background: #d4be4a !important;
}
