/* Nordic steel blue with ice-blue controls; independent of other league palettes. */
html.route-eliteserien-loading,
html.route-eliteserien-loading body,
body.eliteserien-2026-edition,
body[data-desktop-mode-setup="eliteserien"],
#premierLeagueSeasonScreen[data-league-edition="eliteserien-2026"],
html :is(#achievementsScreen, #retroAchievementsModal, #achievementUnlockModal, #achievementUnlockBanner)[data-achievement-theme="eliteserien-2026"],
[data-hub-domestic-league="eliteserien"] {
  --pl-era-deep: #123f59;
  --pl-era-deep-rgb: 18 63 89;
  --pl-era-canvas: #123f59;
  --pl-era-canvas-rgb: 18 63 89;
  --pl-era-surface: #1b506d;
  --pl-era-surface-rgb: 27 80 109;
  --pl-era-raised: #276580;
  --pl-era-raised-rgb: 39 101 128;
  --pl-era-accent: #8cdefa;
  --pl-era-accent-text: #0b2a3c;
  --pl-era-accent-rgb: 140 222 250;
  --pl-era-muted: #bcd9e7;
  --pl-era-muted-rgb: 188 217 231;
  --pl-era-ice: #e0f4fc;
  --pl-era-ice-rgb: 224 244 252;
  --pl-era-white: #f4fbff;
  --pl-era-white-rgb: 244 251 255;
  --pl-bg: var(--pl-era-canvas);
  --pl-surface: var(--pl-era-surface);
  --pl-surface-light: var(--pl-era-raised);
  --pl-muted: var(--pl-era-muted);
  --pl-line: #4f829b;
  --pl-soft: #276580;
  --domestic-setup-border: #4f829b;
  --domestic-setup-panel: #1b506d;
  --domestic-setup-card: #276580;
  --domestic-setup-surface: #1b506d;
  --domestic-setup-text: #f4fbff;
  --domestic-setup-muted: #bcd9e7;
  --domestic-setup-accent: #8cdefa;
  --domestic-setup-accent-text: #0b2a3c;
  --domestic-setup-selected: #8cdefa;
  --domestic-setup-shadow: #0b2a3c;
  --domestic-banner-border: #4f829b;
  --domestic-banner-surface: #174760;
  --domestic-banner-text: #f4fbff;
  --domestic-banner-muted: #bcd9e7;
  --domestic-banner-active-text: #0b2a3c;
  --domestic-banner-active: #8cdefa;
  --domestic-banner-shadow: #0b2a3c;
  --domestic-banner-brand-border: #9be5ff;
  --domestic-banner-brand-text: #0b2a3c;
  --domestic-banner-brand: #8cdefa;
  --domestic-banner-brand-shadow: #1b506d;
  --bg: #123f59;
  --panel: #1b506d;
  --panel-2: #276580;
  --line: #4f829b;
  --text: #f4fbff;
  --muted: #bcd9e7;
  --soft: #e0f4fc;
  --lime: #9be5ff;
  --achievement-accent: #9be5ff;
  --achievement-accent-text: #123f59;
  --achievement-surface: #1b506d;
  --achievement-surface-deep: #123f59;
  --achievement-tab-surface: #276580;
  --achievement-card: #1b506d;
  --achievement-card-complete: #276580;
  --achievement-copy: #f4fbff;
  --achievement-muted: #bcd9e7;
  --achievement-points: #9be5ff;
  --achievement-shadow: rgb(11 42 60 / .5);
  color: #f4fbff;
  color-scheme: dark;
}

html.route-eliteserien-loading,
html.route-eliteserien-loading body,
body.eliteserien-2026-edition,
body[data-desktop-mode-setup="eliteserien"],
body.eliteserien-2026-edition #premierLeagueSeasonScreen,
body.eliteserien-2026-edition #mainContent #matchStage.match-stage {
  background: #123f59 !important;
}

html.route-eliteserien-loading #appShell {
  display: none !important;
}

html.route-eliteserien-loading #premierLeagueSeasonScreen {
  display: block !important;
  background: #123f59;
}

body.eliteserien-2026-edition :is(#appShell, .main, #mainContent, #premierLeagueRouteSetup) {
  background: transparent !important;
}

body.eliteserien-2026-edition .pl-season-header {
  background: #174760 !important;
  border-bottom-color: #4f829b !important;
}

#startEliteserienSeasonButton,
body.eliteserien-2026-edition .pl-route-resume-button {
  color: #0b2a3c !important;
  border-color: #9be5ff !important;
  background: #8cdefa !important;
  box-shadow: 0 8px 18px rgb(11 42 60 / .3) !important;
}

[data-competition-folder="eliteserien"],
[data-hub-domestic-league="eliteserien"],
body[data-desktop-mode-setup="eliteserien"] #eliteserienModeCard {
  color: #f4fbff;
  border-color: #4f829b !important;
  background: #1b506d !important;
}

[data-competition-folder="eliteserien"] :is(small, .competition-folder-hint) {
  color: #bcd9e7;
}

html :is(#achievementsScreen, #retroAchievementsModal, #achievementUnlockModal, #achievementUnlockBanner)[data-achievement-theme="eliteserien-2026"] {
  border-color: #4f829b !important;
  background: #123f59 !important;
}

body.eliteserien-2026-edition .match-stat-track-home .match-stat-fill {
  background: #9be5ff;
}

body.eliteserien-2026-edition .brand-mark {
  background: #8cdefa !important;
  border-color: #9be5ff !important;
  box-shadow: none !important;
}

:is([data-competition-folder="eliteserien"], [data-competition-archive="eliteserien"]) img,
body.eliteserien-2026-edition #domesticRouteSetupIntro > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  box-sizing: border-box;
  padding: 7px;
}

body.eliteserien-2026-edition #domesticRouteSetupIntro > img {
  width: 90px;
  height: 38px;
  flex: 0 0 90px;
}

body[data-desktop-mode-setup="eliteserien"] .premier-league-team-picker {
  display: none !important;
}

/* TV 2 Sport, Brann–Viking highlights (9 October 2026): centre clock,
   pale team panels, end kit bars and a separate white league lion. */
body #mainContent .cb-broadcast[data-mode="eliteserien"] {
  width: min(340px, 100%);
  height: var(--cb-compact-height, 34px);
  margin: 16px auto 22px;
  font-family: Arial, sans-serif;
}

.cb-broadcast[data-mode="eliteserien"] :is(.cb-context, .cb-badge) {
  display: none;
}

.cb-broadcast[data-mode="eliteserien"] .cb-scorebug {
  display: grid;
  grid-template-columns: 40px 104px 92px 104px;
  width: 340px;
  transform: scale(var(--cb-compact-scale, 1));
  transform-origin: top left;
  position: relative;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.cb-broadcast[data-mode="eliteserien"] .cb-logo {
  display: block;
  position: static;
  width: 28px;
  height: 28px;
  margin: 3px 12px 3px 0;
  background: url('./assets/eliteserien-2026/league-logo.svg') center / contain no-repeat;
  filter: brightness(0) invert(1);
}

.cb-broadcast[data-mode="eliteserien"] .cb-team {
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: linear-gradient(110deg, #f3f7fa, #b9dcea);
}

.cb-broadcast[data-mode="eliteserien"] .cb-home {
  grid-column: 2;
  grid-row: 1;
  border-left: 6px solid var(--kit);
}

.cb-broadcast[data-mode="eliteserien"] .cb-away {
  grid-column: 4;
  grid-row: 1;
  flex-direction: row-reverse;
  border-right: 6px solid var(--kit);
}

body #mainContent .cb-broadcast[data-mode="eliteserien"] .cb-code {
  display: grid;
  place-items: center;
  position: relative;
  width: 70px;
  height: 34px;
  padding: 0;
  color: #102332;
  font: 700 17px/1 Arial, sans-serif;
}

.cb-broadcast[data-mode="eliteserien"] .cb-code::before {
  content: none;
}

body #mainContent .cb-broadcast[data-mode="eliteserien"] .cb-score {
  display: grid;
  place-items: center;
  width: 28px;
  height: 34px;
  color: #102332;
  background: transparent;
  font: 700 20px/1 Arial, sans-serif;
}

body #mainContent .cb-broadcast[data-mode="eliteserien"] time {
  display: grid;
  position: relative;
  grid-column: 3;
  grid-row: 1;
  place-items: center;
  width: 92px;
  height: 34px;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #fff;
  background: #d9edf5;
  font: 700 16px/1 Arial, sans-serif;
  font-variant-numeric: tabular-nums;
  isolation: isolate;
}

.cb-broadcast[data-mode="eliteserien"] time::before {
  content: '';
  position: absolute;
  inset: 0 -10px;
  z-index: -1;
  background: linear-gradient(110deg, #00649d, #00b5df);
  clip-path: polygon(22px 0, 100% 0, calc(100% - 22px) 100%, 0 100%);
}

/* Shared dialogs sit outside the league screen. */
html body[data-domestic-league-edition="eliteserien-2026"] dialog[open],
html body[data-domestic-league-edition="eliteserien-2026"] dialog[open] form {
  color: #f4fbff;
  border-color: #4f829b;
  background: #123f59;
}
html body[data-domestic-league-edition="eliteserien-2026"] dialog[open] .section-kicker {
  display: none;
}
html body[data-domestic-league-edition="eliteserien-2026"] dialog[open] button {
  color: #f4fbff;
  border-color: #4f829b;
  background: #276580;
}
html body[data-domestic-league-edition="eliteserien-2026"] dialog[open] .primary-button {
  color: #0b2a3c;
  background: #8cdefa;
}

