:root {
  --lp-canvas: #031b40;
  --lp-canvas-deep: #02132f;
  --lp-panel: #082e68;
  --lp-panel-raised: #0b3777;
  --lp-panel-soft: #041f49;
  --lp-ink: #f7f9ff;
  --lp-muted: #b9c9e5;
  --lp-line: rgba(127, 176, 255, .26);
  --lp-line-strong: rgba(127, 176, 255, .58);
  --lp-accent: #7fb0ff;
  --lp-orange-red: #ff6b73;
  --lp-accent-ink: #031b40;
  --lp-shadow: rgba(0, 10, 30, .62);
  --lp-gradient: linear-gradient(135deg, #ffffff 0%, #9ac2ff 100%);
  --lp-canvas-background:
    linear-gradient(118deg, rgba(127, 176, 255, .1) 0 16%, transparent 16% 84%, rgba(127, 176, 255, .07) 84%),
    var(--lp-canvas);
}

html.route-liga-portugal-loading,
html.route-liga-portugal-loading body {
  min-height: 100%;
  color-scheme: dark;
  background: var(--lp-canvas-background);
  background-size: auto;
}

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

html.route-liga-portugal-loading #premierLeagueSeasonScreen {
  display: block !important;
  visibility: hidden;
}

html.route-liga-portugal-loading #premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] {
  visibility: visible;
}

.mode-card-liga-portugal .landing-settings,
.mode-card-liga-portugal .mode-card-actions {
  position: relative;
  z-index: 2;
}

.liga-portugal-heading {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 16px;
}

.liga-portugal-heading h3 {
  margin: 0;
  color: var(--lp-ink);
  font-family: "Manrope", sans-serif;
  font-size: clamp(23px, 2.2vw, 31px);
  font-weight: 900;
  letter-spacing: -.045em;
}

.liga-portugal-heading p {
  max-width: 46ch;
  margin: 6px 0 0;
  color: var(--lp-muted);
  font-size: 12px;
  line-height: 1.5;
}

.liga-portugal-brand-mark {
  display: grid;
  width: 62px;
  height: 68px;
  flex: 0 0 62px;
  place-items: center;
  border: 1px solid var(--lp-line-strong);
  border-radius: 14px;
  background: linear-gradient(145deg, #ffffff, #dce9ff);
  box-shadow: 0 12px 30px var(--lp-shadow), inset 0 1px rgba(255, 255, 255, .08);
  pointer-events: none;
}

.liga-portugal-brand-mark img,
.liga-portugal-asset-pack-intro img {
  display: block;
  width: 44px;
  max-height: 52px;
  object-fit: contain;
  filter: drop-shadow(0 7px 14px rgba(0, 10, 30, .38));
}

.competition-folder-liga-portugal .competition-folder-art,
.edition-liga-portugal .competition-edition-art {
  padding: 2px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
}

.competition-folder-liga-portugal .competition-folder-art img,
.edition-liga-portugal .competition-edition-art img {
  filter: brightness(0) invert(1) drop-shadow(0 7px 14px rgba(0, 10, 30, .38));
}

.liga-portugal-asset-pack-intro img,
body.liga-portugal-route-setup-active .domestic-route-setup-intro img {
  box-sizing: border-box;
  padding: 5px;
  border: 1px solid var(--lp-line-strong);
  border-radius: 10px;
  background: #f7f9ff;
}

body.liga-portugal-route-setup-active .pl-season-header {
  border-bottom-color: var(--lp-line-strong) !important;
  color: var(--lp-ink);
  background: linear-gradient(108deg, var(--lp-canvas-deep), var(--lp-canvas) 62%, var(--lp-panel)) !important;
}

body.liga-portugal-route-setup-active .domestic-inline-team-mark .premier-league-club-code {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(145deg, var(--lp-panel-raised), var(--lp-canvas));
}

.mode-card-liga-portugal .landing-setting,
.liga-portugal-route-setup-active .liga-portugal-settings .landing-setting {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: rgba(8, 46, 104, .8);
}

.mode-card-liga-portugal :is(.landing-setting-heading, .landing-setting > span, .landing-team-setting > span),
.liga-portugal-route-setup-active .liga-portugal-settings :is(.landing-setting-heading, .landing-setting > span, .landing-team-setting > span) {
  color: var(--lp-muted) !important;
}

.mode-card-liga-portugal .landing-segmented,
.liga-portugal-route-setup-active .liga-portugal-settings .landing-segmented {
  border-color: var(--lp-line);
  background: var(--lp-panel-soft);
}

.mode-card-liga-portugal .landing-segmented button,
.liga-portugal-route-setup-active .liga-portugal-settings .landing-segmented button {
  color: var(--lp-muted);
}

.mode-card-liga-portugal .landing-segmented button.active,
.liga-portugal-route-setup-active .liga-portugal-settings .landing-segmented button.active,
.liga-portugal-launch-button,
.mode-card-liga-portugal .liga-portugal-install-button.is-installed {
  border-color: transparent !important;
  color: var(--lp-accent-ink) !important;
  background: var(--lp-gradient) !important;
  box-shadow: 0 10px 24px rgba(127, 176, 255, .28);
}

.mode-card-liga-portugal :is(.landing-setting-info summary, .liga-portugal-team-picker) {
  border-color: var(--lp-line) !important;
  color: var(--lp-ink) !important;
  background: var(--lp-panel-raised) !important;
}

.mode-card-liga-portugal .landing-setting-info-panel {
  border-color: var(--lp-line-strong);
  color: var(--lp-muted);
  background: var(--lp-panel-soft);
  box-shadow: 0 18px 44px var(--lp-shadow);
}

.mode-card-liga-portugal .landing-setting-info-panel strong,
.liga-portugal-team-picker .spectate-picker-copy strong {
  color: var(--lp-ink);
}

.liga-portugal-team-picker :is(.spectate-picker-copy small, .spectate-picker-arrow) {
  color: var(--lp-muted);
}

.liga-portugal-team-mark {
  color: var(--lp-accent-ink);
  border-color: var(--lp-line-strong);
  background: var(--lp-gradient);
}

.liga-portugal-team-picker.has-team .liga-portugal-team-mark {
  overflow: visible;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.liga-portugal-team-mark img,
.liga-portugal-club-badge {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.mode-card-liga-portugal .liga-portugal-install-button,
body.before-start:not([data-desktop-mode-setup]) .mode-card-liga-portugal .liga-portugal-install-button,
body.liga-portugal-route-setup-active #premierLeagueRouteSetupControls .liga-portugal-install-button {
  border-color: var(--lp-line-strong) !important;
  color: var(--lp-ink) !important;
  background: rgba(2, 19, 47, .78) !important;
  white-space: nowrap;
}

@media (hover: hover) and (pointer: fine) {
  body.liga-portugal-route-setup-active #premierLeagueRouteSetupControls .liga-portugal-install-button:hover {
    border-color: var(--lp-accent) !important;
    background: var(--lp-panel-raised) !important;
  }
}

.liga-portugal-menu-restart {
  color: var(--lp-accent) !important;
}

.liga-portugal-asset-pack-modal,
.liga-portugal-asset-pack-modal .pl-asset-pack-shell {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-panel-soft);
  box-shadow: 0 28px 90px rgba(0, 10, 30, .76);
}

.liga-portugal-asset-pack-modal::backdrop {
  background: rgba(0, 12, 36, .87);
  backdrop-filter: blur(7px);
}

.liga-portugal-asset-pack-modal :is(.modal-head, .pl-asset-pack-intro, .pl-asset-pack-badge) {
  border-color: var(--lp-line);
}

.liga-portugal-asset-pack-modal .modal-head h2 {
  color: var(--lp-ink);
}

.liga-portugal-asset-pack-modal .pl-asset-pack-intro {
  color: var(--lp-muted);
  background: var(--lp-panel);
}

.liga-portugal-asset-pack-modal .pl-asset-pack-badge {
  background: var(--lp-panel-raised);
}

.liga-portugal-asset-pack-modal .pl-asset-pack-actions .primary-button {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

#spectateModal[data-domestic-league="liga-portugal"] {
  overflow-x: hidden;
  border: 1px solid var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-panel);
  box-shadow: 0 26px 72px rgba(0, 10, 30, .7);
  scrollbar-color: var(--lp-accent) var(--lp-panel-soft);
}

#spectateModal[data-domestic-league="liga-portugal"]::backdrop {
  background: rgba(0, 12, 36, .82);
  backdrop-filter: blur(7px);
}

#spectateModal[data-domestic-league="liga-portugal"] .spectate-list {
  overflow-x: hidden;
  scrollbar-color: var(--lp-accent) var(--lp-panel-soft);
}

#spectateModal[data-domestic-league="liga-portugal"]::-webkit-scrollbar,
#spectateModal[data-domestic-league="liga-portugal"] .spectate-list::-webkit-scrollbar {
  width: 9px;
  height: 9px;
}

#spectateModal[data-domestic-league="liga-portugal"]::-webkit-scrollbar-track,
#spectateModal[data-domestic-league="liga-portugal"] .spectate-list::-webkit-scrollbar-track {
  background: var(--lp-panel-soft);
}

#spectateModal[data-domestic-league="liga-portugal"]::-webkit-scrollbar-thumb,
#spectateModal[data-domestic-league="liga-portugal"] .spectate-list::-webkit-scrollbar-thumb {
  border: 2px solid var(--lp-panel-soft);
  border-radius: 999px;
  background: var(--lp-accent);
}

#spectateModal[data-domestic-league="liga-portugal"] :is(#spectateModalTitle, .prediction-option strong) {
  color: var(--lp-ink);
}

#spectateModal[data-domestic-league="liga-portugal"] :is(.close-modal, .prediction-search, .prediction-option) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel-raised);
}

#spectateModal[data-domestic-league="liga-portugal"] :is(.prediction-option small, .spectate-modal-copy) {
  color: var(--lp-muted);
}

#spectateModal[data-domestic-league="liga-portugal"] .prediction-search input {
  color: var(--lp-ink);
  background: transparent;
}

#spectateModal[data-domestic-league="liga-portugal"] .prediction-search input::placeholder {
  color: var(--lp-muted);
  opacity: .78;
}

#spectateModal[data-domestic-league="liga-portugal"] .prediction-search:focus-within {
  border-color: var(--lp-accent);
  box-shadow: inset 0 0 0 2px var(--lp-accent);
}

#spectateModal[data-domestic-league="liga-portugal"] .spectate-neutral-mark,
#spectateModal[data-domestic-league="liga-portugal"] .prediction-option.selected {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

#spectateModal[data-domestic-league="liga-portugal"] .prediction-option.selected {
  box-shadow: inset 4px 0 0 var(--lp-orange-red);
}

#spectateModal[data-domestic-league="liga-portugal"] .prediction-option.selected :is(strong, small) {
  color: var(--lp-accent-ink);
}

@media (hover: hover) and (pointer: fine) {
  #spectateModal[data-domestic-league="liga-portugal"] .prediction-option:hover:not(.selected) {
    background: color-mix(in srgb, var(--lp-panel-raised) 82%, var(--lp-accent));
  }

  #spectateModal[data-domestic-league="liga-portugal"] .prediction-option.selected:hover {
    background: var(--lp-gradient);
  }
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] {
  --pl-canvas: var(--lp-canvas);
  --pl-panel: var(--lp-panel);
  --pl-panel-raised: var(--lp-panel-raised);
  --pl-text: var(--lp-ink);
  --pl-muted: var(--lp-muted);
  --pl-border: var(--lp-line);
  --pl-accent: var(--lp-accent);
  min-height: 100vh;
  color: var(--lp-ink);
  color-scheme: dark;
  background: var(--lp-canvas-background);
  background-size: auto, auto, 32px 32px, 32px 32px, auto;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-header {
  border-bottom-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: rgba(2, 19, 47, .94);
  box-shadow: 0 14px 42px rgba(0, 10, 30, .36);
  backdrop-filter: blur(16px);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-header :is(.utility-button, .pl-season-restart-button, #plSeasonAccountLabel) {
  color: var(--lp-ink);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-header :is(.utility-button, .pl-season-restart-button) {
  border-color: var(--lp-line);
  background: transparent;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-header :is(.utility-button, .pl-season-restart-button) :is(span, svg) {
  color: inherit !important;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-utility-actions .account-avatar-icon svg {
  stroke: var(--lp-ink);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-utility-actions .header-donate-link {
  border-color: var(--lp-line-strong);
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

@media (hover: hover) and (pointer: fine) {
  #premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-header :is(.utility-button, .pl-season-restart-button):hover {
    border-color: var(--lp-line-strong);
    color: var(--lp-ink);
    background: rgba(127, 176, 255, .14);
  }
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-site-brand .brand-mark,
body[data-domestic-league-edition^="liga-portugal-"] .sidebar .brand-mark {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-site-brand .brand-mark > *,
body[data-domestic-league-edition^="liga-portugal-"] .sidebar .brand-mark > * {
  color: #000 !important;
}

body.liga-portugal-route-setup-active #premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-site-brand .brand-mark {
  border: 1px solid rgba(247, 249, 255, .68);
  color: var(--lp-accent-ink);
  background: var(--lp-gradient) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .42), 0 3px 0 #315f9c !important;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-season-main, .mode-route-setup) {
  color: var(--lp-ink);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .mode-route-setup {
  background: var(--lp-canvas-background);
  background-size: auto, auto, 32px 32px, 32px 32px, auto;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(
  .mode-route-setup-panel,
  .pl-panel,
  .pl-season-progress-card,
  .pl-overview-panel,
  .pl-matches-panel,
  .pl-table-panel,
  .pl-squads-panel,
  .pl-club-card,
  .pl-story-card,
  .pl-squad-card,
  .pl-transfer-panel,
  .pl-finale-award,
  .pl-finale-place
) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: rgba(8, 46, 104, .92);
  box-shadow: 0 18px 46px rgba(0, 10, 30, .3);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.premier-league-club-code, .pl-club-code) {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(145deg, var(--lp-panel-raised), var(--lp-canvas));
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-season-action-row, .pl-season-tabs) {
  border-color: var(--lp-line);
  background: rgba(4, 31, 73, .9);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(
  .pl-primary-button,
  .pl-finale-actions .is-primary,
  .pl-season-tabs button.active,
  .pl-matchweek-nav button.active,
  .pl-fixture-play:not(:disabled)
) {
  border-color: transparent;
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
  box-shadow: 0 8px 22px rgba(127, 176, 255, .22);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-season-tabs button, .pl-back-button, .mode-route-setup-back, .pl-matchweek-nav button) {
  color: var(--lp-muted);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-season-date span, .pl-panel-kicker, .pl-stat-label, .pl-squad-meta, .pl-transfer-row time, small) {
  color: var(--lp-muted);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-fixture-row, .pl-table-head, .pl-table-row, .pl-transfer-row, .pl-player-list span) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: rgba(4, 31, 73, .74);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-table-head {
  color: var(--lp-muted);
  background: var(--lp-canvas-deep);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(
  .pl-panel-heading button,
  .pl-panel-heading a,
  .pl-panel-footer button
) {
  color: var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-transfer-row time {
  border-color: var(--lp-line);
  color: var(--lp-ink);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-transfer-row time span, .pl-transfer-route > b) {
  color: var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-table-row.is-selected, .pl-fixture-row.is-managed-match) {
  box-shadow: inset 4px 0 var(--lp-accent);
  background: rgba(11, 55, 119, .94);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-table-row.is-champions-league {
  box-shadow: inset 3px 0 var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-table-row.is-champions-league::before {
  background: var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-table-row.is-europe-secondary {
  box-shadow: inset 3px 0 var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-table-row.is-relegation {
  box-shadow: inset 3px 0 var(--lp-orange-red);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-squad-arrivals span, .pl-finale-award-mark, .pl-squad-rating, .pl-transfer-monogram) {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-squad-card .pl-squad-rating {
  color: var(--lp-accent);
  background: transparent;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-squad-card .pl-squad-rating :is(span, strong) {
  color: inherit;
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-season-finale {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-canvas-background);
  box-shadow: 0 22px 60px rgba(0, 10, 30, .46);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-hero {
  border-color: var(--lp-line-strong);
  background:
    radial-gradient(circle at 86% 10%, rgba(255, 255, 255, .26), transparent 38%),
    linear-gradient(145deg, #0b3777, #031b40 72%);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-body {
  background:
    linear-gradient(118deg, rgba(127, 176, 255, .07) 0 8%, transparent 8% 92%, rgba(127, 176, 255, .05) 92%),
    var(--lp-canvas-deep);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(
  .pl-finale-section-title,
  .pl-finale-place > b,
  .pl-finale-award-copy > span
) {
  color: var(--lp-accent);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-hero p {
  color: var(--lp-muted);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(
  .pl-finale-hero h1,
  .pl-finale-hero p strong,
  .pl-finale-place strong,
  .pl-finale-award-copy strong
) {
  color: var(--lp-ink);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-finale-place, .pl-finale-award) {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(145deg, rgba(11, 55, 119, .96), rgba(4, 31, 73, .98));
  box-shadow: inset 3px 0 0 var(--lp-accent), 0 10px 24px rgba(0, 10, 30, .28);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :is(.pl-finale-place small, .pl-finale-award-copy small) {
  color: var(--lp-muted);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-award-mark {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
  box-shadow: inset 0 1px rgba(255, 255, 255, .5);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-actions button {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-panel-raised);
  box-shadow: 0 7px 18px rgba(0, 10, 30, .25);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-actions .is-primary {
  border-color: transparent;
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-actions button:focus-visible {
  border-color: var(--lp-accent);
  outline-color: var(--lp-accent);
}

@media (hover: hover) and (pointer: fine) {
  #premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-actions button:hover:not(:disabled) {
    border-color: var(--lp-accent);
    color: var(--lp-ink);
    background: color-mix(in srgb, var(--lp-panel-raised) 76%, var(--lp-accent));
  }

  #premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] .pl-finale-actions .is-primary:hover:not(:disabled) {
    color: var(--lp-accent-ink);
    background: linear-gradient(135deg, #ffffff, #b9d2ff);
  }
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active {
  color: var(--lp-ink);
  background: var(--lp-canvas-background);
  background-size: auto, auto, 32px 32px, 32px 32px, auto;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.main, .content) {
  background: var(--lp-canvas-background) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .snapshot-modal .section-kicker {
  display: none;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.sidebar, .site-header, .top-bar) {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(108deg, var(--lp-canvas-deep), var(--lp-canvas) 62%, var(--lp-panel));
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .sidebar .brand-mark,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .top-actions :is(#settingsButton, .header-donate-link) {
  border-color: var(--lp-line);
  color: var(--lp-ink) !important;
  background: var(--lp-panel-raised);
  box-shadow: 0 8px 20px rgba(0, 10, 30, .3);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .top-actions .utility-button,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .top-actions .utility-button > span,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #mainAccountLabel {
  color: var(--lp-ink) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .panel,
  .match-stage,
  .match-detail-panel,
  .fixture,
  .round-link,
  .match-queue-item,
  #retroMatchLineupsPanel,
  #matchAnalysis,
  .pl-engine-table-panel
) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel);
  box-shadow: 0 14px 38px rgba(0, 10, 30, .38);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #matchAnalysis {
  background: var(--lp-panel-raised);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-analysis-heading {
  border-bottom-color: var(--lp-line-strong);
  background: linear-gradient(105deg, var(--lp-canvas-deep), var(--lp-panel));
  box-shadow: inset 4px 0 0 var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-stage {
  background:
    linear-gradient(rgba(127, 176, 255, .038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(127, 176, 255, .038) 1px, transparent 1px),
    radial-gradient(circle at 50% 18%, rgba(127, 176, 255, .17), transparent 21rem),
    radial-gradient(circle at 88% 88%, rgba(255, 255, 255, .1), transparent 22rem),
    var(--lp-panel);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed {
  --goal-flash-color: var(--lp-accent);
  --goal-flash-text-color: var(--lp-accent-ink);
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(105deg, var(--lp-panel-soft), var(--lp-panel-raised));
  box-shadow: inset 3px 0 0 var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed :is(.commentary-line, .commentary-line span, .commentary-line.heading span) {
  color: var(--lp-ink);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed.is-major {
  border-color: var(--lp-accent);
  background: linear-gradient(105deg, var(--lp-canvas-deep), var(--lp-panel-raised));
  box-shadow: inset 4px 0 0 var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed:is(.is-goal, .is-goal-flash, .is-goal-flashing) {
  border-color: var(--lp-accent);
  background: linear-gradient(105deg, var(--lp-canvas-deep), var(--lp-panel-raised));
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .event-live-clock > span,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .team-match-events .timeline-event b,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.match-score.score-pop, .team-score.score-pop, .score span.score-pop) {
  color: var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .event-live-clock > span i {
  background: var(--lp-accent);
  box-shadow: 0 0 0 3px rgba(127, 176, 255, .18), 0 0 12px rgba(127, 176, 255, .34);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .event-live-clock strong, .team-match-events .timeline-event, .match-stat-row b,
  .match-lineup-head strong, .match-lineup-side li, .match-lineup-side li > small,
  .team-name, .score, .match-timer, .panel-heading strong, .fixture-team,
  .commentary-event strong, .match-analysis-heading strong
) {
  color: var(--lp-ink);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .event-live-clock small, .match-stat-row, .match-lineup-head small,
  .match-lineup-side li > span, .panel-heading span, .match-stage .stage-label,
  .fixture small, .commentary-event time, .match-stat-row span
) {
  color: var(--lp-muted);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.match-stats-grid, .match-lineup-side + .match-lineup-side) {
  border-color: var(--lp-line);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-stats-grid {
  color: var(--lp-ink);
  background: var(--lp-panel-raised);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.standard-match-tactics, .pl-watch-tactics) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-match-tactics > span {
  border-bottom-color: var(--lp-line);
  color: var(--lp-ink);
  background: linear-gradient(90deg, var(--lp-canvas-deep), var(--lp-panel));
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-match-tactics > small {
  border-top-color: var(--lp-line);
  color: var(--lp-muted);
  background: var(--lp-panel-raised);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .pl-watch-tactics-copy strong { color: var(--lp-ink); }
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .pl-watch-tactics-copy span { color: var(--lp-muted); }

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-tactic-buttons {
  border-color: var(--lp-line);
  background: var(--lp-panel-soft);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-tactic-buttons button { color: var(--lp-muted); }

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-tactic-buttons button.active,
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.live-control, .primary-button, .play-button, .round-link.active) {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
  box-shadow: 0 6px 18px rgba(127, 176, 255, .24);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.secondary-button, .utility-button, .pl-live-back-button, .skip-control) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel-raised);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .pl-live-back-button {
  border-color: var(--lp-line-strong);
  background: var(--lp-panel);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.pl-engine-table-head, .pl-engine-table-row) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.pl-engine-table-head, .pl-engine-table-row i) { color: var(--lp-muted); }

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .pl-engine-table-row.is-selected {
  background: linear-gradient(90deg, rgba(127, 176, 255, .18), rgba(255, 255, 255, .06));
  box-shadow: inset 3px 0 0 var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.snapshot-modal, .confirm-modal, .settings-modal),
body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .snapshot-modal form {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-panel-soft);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.snapshot-modal, .confirm-modal, .settings-modal)::backdrop {
  background: rgba(0, 12, 36, .87);
  backdrop-filter: blur(7px);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #snapshotButton {
  border-color: var(--lp-line-strong);
  color: var(--lp-accent);
  background: var(--lp-panel-raised);
  box-shadow: 0 10px 24px rgba(0, 10, 30, .4);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .snapshot-preview {
  border-color: var(--lp-line);
  background: var(--lp-canvas);
  box-shadow: 0 18px 50px rgba(0, 10, 30, .58);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .snapshot-actions button {
  border-color: var(--lp-line-strong);
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal {
  width: min(940px, calc(100vw - 28px));
  border: 1px solid var(--lp-line-strong) !important;
  border-radius: 20px;
  color: var(--lp-ink) !important;
  background: var(--lp-canvas-deep) !important;
  box-shadow: 0 30px 90px rgba(0, 10, 30, .72) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal::backdrop {
  background: rgba(0, 12, 36, .86) !important;
  backdrop-filter: blur(7px);
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal form {
  border: 0 !important;
  color: var(--lp-ink) !important;
  background: transparent !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal .section-kicker {
  display: none;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal-head h2 {
  margin: 0;
  color: var(--lp-ink) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-modal .close-modal {
  border-color: var(--lp-line) !important;
  color: var(--lp-ink) !important;
  background: var(--lp-panel-raised) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-preview {
  border-color: var(--lp-line-strong) !important;
  background: var(--lp-canvas) !important;
  box-shadow: 0 18px 50px rgba(0, 10, 30, .58) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-actions .primary-button {
  border-color: transparent !important;
  color: var(--lp-accent-ink) !important;
  background: var(--lp-gradient) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-actions .secondary-button {
  border-color: var(--lp-line-strong) !important;
  color: var(--lp-accent) !important;
  background: var(--lp-panel-raised) !important;
}

body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) :is(
  .snapshot-actions button,
  .snapshot-modal .close-modal
):focus-visible {
  outline: 3px solid var(--lp-accent) !important;
  outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
  body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) .snapshot-actions .primary-button:hover:not(:disabled) {
    background: linear-gradient(135deg, #ffffff, #b9d2ff) !important;
  }

  body[data-domestic-league-edition^="liga-portugal-"]:is(.pl-season-open, .pl-match-mode-active) :is(
    .snapshot-actions .secondary-button,
    .snapshot-modal .close-modal
  ):hover:not(:disabled) {
    border-color: var(--lp-accent) !important;
    color: var(--lp-ink) !important;
    background: color-mix(in srgb, var(--lp-panel-raised) 76%, var(--lp-accent)) !important;
  }
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.round-board, .pl-watch-tactics) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: rgba(4, 31, 73, .96);
  box-shadow: 0 18px 46px rgba(0, 10, 30, .44);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .fixture {
  border-color: var(--lp-line);
  background: var(--lp-panel-soft);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .fixture.selected {
  border-color: var(--lp-accent);
  background: linear-gradient(105deg, rgba(127, 176, 255, .17), rgba(255, 255, 255, .06));
  box-shadow: inset 3px 0 0 var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard :is(
  .team-filter-search, .history-round-button, #newerRoundButton,
  #simulateRoundButton, #unresolvedFilter, .team-filter-chip
) {
  border: 1px solid var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel-soft);
  box-shadow: none;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .team-filter-search:focus-within {
  border-color: var(--lp-accent);
  box-shadow: 0 0 0 3px rgba(127, 176, 255, .14);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .team-filter-search input {
  color: var(--lp-ink);
  background: transparent;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .team-filter-search input::placeholder {
  color: var(--lp-muted);
  opacity: .76;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard :is(#unresolvedFilter.active, .team-filter-chip:not([hidden])) {
  border-color: transparent;
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard #teamFilterControl .search-result-popover {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: var(--lp-canvas);
  box-shadow: 0 18px 44px rgba(0, 10, 30, .66);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard #teamFilterControl .search-result {
  border-bottom-color: var(--lp-line);
  color: var(--lp-ink);
  background: transparent;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard #teamFilterControl :is(.search-result small, .team-filter-clear, .search-result-popover .empty-story) {
  color: var(--lp-muted);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard #teamFilterControl .team-filter-check {
  color: var(--lp-accent-ink);
  background: var(--lp-accent);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .retro-manager-pitch {
  border-color: var(--lp-line-strong);
  background:
    linear-gradient(90deg, transparent 49.75%, rgba(127, 176, 255, .18) 49.75% 50.25%, transparent 50.25%),
    repeating-linear-gradient(90deg, rgba(127, 176, 255, .045) 0 12.5%, rgba(2, 19, 47, .16) 12.5% 25%),
    linear-gradient(135deg, var(--lp-panel-raised), var(--lp-panel-soft));
  box-shadow: inset 0 0 42px rgba(0, 10, 30, .46);
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.match-pitch-canvas, .match-2d-pitch) {
  border-color: var(--lp-line-strong) !important;
  background-color: var(--lp-panel-soft) !important;
  box-shadow: inset 0 0 0 1px rgba(127, 176, 255, .2), 0 12px 28px rgba(0, 10, 30, .4) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-pitch-shell {
  --match-pitch-border: var(--lp-line);
  --match-pitch-muted: var(--lp-muted);
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: radial-gradient(circle at 50% -30%, rgba(127, 176, 255, .2), transparent 52%), linear-gradient(180deg, var(--lp-panel), var(--lp-canvas-deep));
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.match-pitch-toggle, .match-highlight-mode, .match-pitch-playback) {
  border-color: var(--lp-line) !important;
  color: var(--lp-ink) !important;
  background: var(--lp-panel-raised) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .match-pitch-shell-title > span, .match-2d-toolbar > span,
  .match-pitch-playback > span:first-child, .match-pitch-pause-label,
  .match-highlight-mode button, .match-pitch-speed button
) { color: var(--lp-muted) !important; }

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .match-highlight-mode button[aria-pressed="true"], .match-highlight-mode button.active,
  .match-pitch-speed button[aria-pressed="true"]
) {
  border-color: var(--lp-line-strong) !important;
  color: var(--lp-accent-ink) !important;
  background: var(--lp-accent) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-2d-event {
  border-color: var(--lp-line) !important;
  color: var(--lp-ink) !important;
  background: rgba(8, 46, 104, .96) !important;
}

body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-2d-event[data-type="goal"] {
  border-color: var(--lp-accent) !important;
  background: var(--lp-panel-raised) !important;
}

/* The Liga Portugal broadcast skin is edition-owned, so it stays dark when the global site theme is light. */
html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active {
  color: var(--lp-ink);
  background: var(--lp-canvas-background);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.sidebar, .site-header, .top-bar) {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(108deg, var(--lp-canvas-deep), var(--lp-canvas) 62%, var(--lp-panel));
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .panel, .match-stage, .match-detail-panel, .fixture, .round-link,
  .match-queue-item, #retroMatchLineupsPanel, #matchAnalysis,
  .pl-engine-table-panel, .round-board, .pl-watch-tactics, .standard-match-tactics
) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background-color: var(--lp-panel);
  box-shadow: 0 14px 38px rgba(0, 10, 30, .38);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-stage {
  background:
    linear-gradient(rgba(127, 176, 255, .038) 1px, transparent 1px),
    linear-gradient(90deg, rgba(127, 176, 255, .038) 1px, transparent 1px),
    radial-gradient(circle at 50% 18%, rgba(127, 176, 255, .17), transparent 21rem),
    radial-gradient(circle at 88% 88%, rgba(255, 255, 255, .1), transparent 22rem),
    var(--lp-panel);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(105deg, var(--lp-panel-soft), var(--lp-panel-raised));
  box-shadow: inset 3px 0 0 var(--lp-accent);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-commentary-feed :is(.commentary-line, .commentary-line span, .commentary-line.heading span),
html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
  .team-name, .score, .match-timer, .panel-heading strong,
  .fixture-team, .commentary-event strong, .match-analysis-heading strong
) {
  color: var(--lp-ink);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .match-stats-grid {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel-raised);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-match-tactics > span {
  border-bottom-color: var(--lp-line);
  color: var(--lp-ink);
  background: linear-gradient(90deg, var(--lp-canvas-deep), var(--lp-panel));
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active .standard-match-tactics > small {
  border-top-color: var(--lp-line);
  color: var(--lp-muted);
  background: var(--lp-panel-raised);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(.standard-tactic-buttons, #roundBoard .team-filter-search) {
  border-color: var(--lp-line);
  color: var(--lp-ink);
  background: var(--lp-panel-soft);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .team-filter-search input {
  color: var(--lp-ink);
  background: transparent;
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard .team-filter-search input::placeholder {
  color: var(--lp-muted);
}

html.light-mode body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #snapshotButton {
  border-color: var(--lp-line-strong);
  color: var(--lp-accent);
  background: var(--lp-panel-raised);
  box-shadow: 0 10px 24px rgba(0, 10, 30, .4);
}

body[data-domestic-league-edition^="liga-portugal-"] :focus-visible,
#premierLeagueSeasonScreen[data-league-edition^="liga-portugal-"] :focus-visible,
.mode-card-liga-portugal :focus-visible,
.liga-portugal-asset-pack-modal :focus-visible {
  outline: 3px solid var(--lp-accent);
  outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
  body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active :is(
    .secondary-button, .pl-live-back-button, .standard-tactic-buttons button,
    #snapshotButton
  ):hover:not(:disabled):not(.active),
  body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard :is(
    .history-round-button, #newerRoundButton, #simulateRoundButton,
    #unresolvedFilter, .team-filter-chip
  ):hover:not(:disabled) {
    border-color: var(--lp-accent);
    color: var(--lp-ink);
    background: var(--lp-panel-raised);
  }

  body[data-domestic-league-edition^="liga-portugal-"].pl-match-mode-active #roundBoard #teamFilterControl .search-result:hover {
    color: var(--lp-ink);
    background: rgba(127, 176, 255, .12);
  }
}

[data-achievement-theme="liga-portugal-2026-27"] {
  --achievement-accent: var(--lp-accent);
  --achievement-accent-text: var(--lp-accent-ink);
  --achievement-surface: var(--lp-panel);
  --achievement-surface-deep: var(--lp-canvas-deep);
  --achievement-tab-surface: rgba(2, 19, 47, .86);
  --achievement-card: rgba(11, 55, 119, .9);
  --achievement-card-complete: #0c4d91;
  --achievement-copy: var(--lp-ink);
  --achievement-muted: var(--lp-muted);
  --achievement-points: #9ac2ff;
  --achievement-shadow: var(--lp-shadow);
  color: var(--lp-ink);
  background: var(--lp-canvas-background);
}

.achievement-unlock-banner[data-achievement-theme="liga-portugal-2026-27"],
.achievement-unlock-modal[data-achievement-theme="liga-portugal-2026-27"] {
  border-color: var(--lp-line-strong);
  color: var(--lp-ink);
  background: linear-gradient(145deg, var(--lp-panel-raised), var(--lp-canvas));
}

.achievement-unlock-modal[data-achievement-theme="liga-portugal-2026-27"] .achievement-unlock-action {
  color: var(--lp-accent-ink);
  background: var(--lp-gradient);
}

@media (max-width: 720px) {
  .liga-portugal-heading {
    gap: 12px;
  }

  .liga-portugal-brand-mark {
    width: 56px;
    height: 56px;
    flex-basis: 56px;
    border-radius: 14px;
  }

  .liga-portugal-brand-mark img {
    width: 42px;
    max-height: 46px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .mode-card-liga-portugal button,
  [data-league-edition^="liga-portugal-"] button {
    transition: none !important;
  }
}

