:root {
  --snooker-ivory: #fff5e3;
  --snooker-gold: #f0cc83;
  --snooker-emerald: #116853;
  --snooker-ink: #173e35;
  --snooker-crimson: #a51e42;
}
:is(#cod-lobby, #farm-overview-ui) {
  color: var(--snooker-ivory);
  background:
    linear-gradient(
      180deg,
      rgba(13, 63, 52, 0.8),
      rgba(20, 76, 65, 0.43) 48%,
      rgba(11, 51, 43, 0.85)
    ),
    url("../../assets/sunny/loader-background.webp?v=color1") center/cover !important;
}
:is(#cod-lobby, #farm-overview-ui) .bp-brand-dock {
  color: var(--snooker-ivory);
}
:is(#cod-lobby, #farm-overview-ui) .brand-ball,
.report-brand .brand-ball {
  color: var(--snooker-gold);
  border-color: var(--snooker-gold);
  background: rgba(17, 104, 83, 0.75);
}
:is(#cod-lobby, #farm-overview-ui) .brand-word b {
  color: var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .bp-quick-dock {
  background: rgba(16, 71, 59, 0.85);
  border: 1px solid #f0cc8340;
}
:is(#cod-lobby, #farm-overview-ui) .bp-header-icon-btn {
  color: #e1e9da;
}
:is(#cod-lobby, #farm-overview-ui) .bp-header-icon-btn.active,
:is(#cod-lobby, #farm-overview-ui) .bp-header-icon-btn:hover {
  background: var(--snooker-gold);
  color: var(--snooker-ink);
}
:is(#cod-lobby, #farm-overview-ui) .bp-header-icon-btn.muted {
  color: #b4c5b9;
  background: transparent;
}
:is(#cod-lobby, #farm-overview-ui) .arena-tabs {
  gap: 4px;
}
:is(#cod-lobby, #farm-overview-ui) .arena-tabs button {
  background: rgba(255, 245, 227, 0.94);
  color: var(--snooker-ink);
  transition:
    background 0.18s,
    color 0.18s;
}
:is(#cod-lobby, #farm-overview-ui) .arena-tabs button.selected,
:is(#cod-lobby, #farm-overview-ui) .arena-tabs button:hover {
  color: var(--snooker-ivory);
  background: var(--snooker-crimson);
  box-shadow: inset 0 -3px var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .lobby-heading .eyebrow,
:is(#cod-lobby, #farm-overview-ui) .setup-heading .eyebrow {
  color: #f2dab0;
}
:is(#cod-lobby, #farm-overview-ui) .lobby-heading h1 em,
:is(#cod-lobby, #farm-overview-ui) .setup-heading h1 em {
  color: var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .arena-grid {
  gap: 10px;
}
:is(#cod-lobby, #farm-overview-ui) .arena-tile {
  border-radius: 5px;
}
:is(#cod-lobby, #farm-overview-ui) .arena-tile:hover {
  box-shadow:
    0 0 0 2px var(--snooker-gold),
    0 12px 32px #103f3460;
}
:is(#cod-lobby, #farm-overview-ui) .tile-controls {
  background: linear-gradient(135deg, #fff6e4, #edce99);
  color: #4c3824;
}
:is(#cod-lobby, #farm-overview-ui) .tile-stats {
  background: linear-gradient(135deg, #218469f5, #145c4df5);
  color: #fff5e3;
  border: 1px solid #c4e4be55;
}
:is(#cod-lobby, #farm-overview-ui) #lobby-record {
  color: #d5e8d7;
}
:is(#cod-lobby, #farm-overview-ui) .tile-ai {
  background: linear-gradient(135deg, #d5f0de, #94cab5);
  color: #174f42;
}
:is(#cod-lobby, #farm-overview-ui) .tile-pass {
  background: linear-gradient(120deg, #b43d59, #862743);
  color: #fff5e3;
}
:is(#cod-lobby, #farm-overview-ui) .tile-rules {
  background: linear-gradient(120deg, #bedbd9, #92bfc7);
  color: #214b53;
}
:is(#cod-lobby, #farm-overview-ui) .tile-hero {
  background:
    linear-gradient(
      180deg,
      rgba(14, 63, 49, 0.05) 20%,
      rgba(73, 12, 33, 0.64) 68%,
      rgba(63, 15, 32, 0.93)
    ),
    url("../../assets/sunny/loader-background.webp?v=color1") 20% center/cover;
  border: 2px solid var(--snooker-gold);
  outline-color: #f0cc8345;
  color: var(--snooker-ivory);
}
:is(#cod-lobby, #farm-overview-ui) .tile-overline {
  color: var(--snooker-ivory);
  background: #116853ee;
  border: 1px solid #f0cc8360;
}
:is(#cod-lobby, #farm-overview-ui) .hero-tile-copy em {
  color: var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .hero-tile-copy {
  text-shadow: 0 2px 14px #46132980;
}
:is(#cod-lobby, #farm-overview-ui) .arena-footer {
  color: #f1e1c6;
}
:is(#cod-lobby, #farm-overview-ui) .arena-footer kbd {
  border-color: #f0cc8380;
}
:is(#cod-lobby, #farm-overview-ui) .setup-panel {
  color: var(--snooker-ink);
  background: linear-gradient(145deg, #fff7e9, #efe6d4);
  border-color: #fff4dc;
  outline-color: #f0cc8366;
}
:is(#cod-lobby, #farm-overview-ui) .setup-panel h2 em {
  color: var(--snooker-emerald);
}
:is(#cod-lobby, #farm-overview-ui) .bp-mode-card,
:is(#cod-lobby, #farm-overview-ui) .bp-diff-pill,
:is(#cod-lobby, #farm-overview-ui) .quality-cards .bp-gfx-card,
:is(#cod-lobby, #farm-overview-ui) .audio-settings button,
:is(#cod-lobby, #farm-overview-ui) .info-tabs button {
  background: #e5ebdb;
  color: var(--snooker-ink);
  border-color: #adc0ad;
}
:is(#cod-lobby, #farm-overview-ui) .bp-mode-card.selected {
  background: var(--snooker-emerald);
  color: var(--snooker-ivory);
  border-color: var(--snooker-emerald);
  box-shadow:
    0 0 0 2px #fff4dc,
    0 0 0 3px var(--snooker-emerald);
}
:is(#cod-lobby, #farm-overview-ui) .bp-mode-card:hover {
  border-color: var(--snooker-emerald);
}
:is(#cod-lobby, #farm-overview-ui) .bp-diff-pill.active,
:is(#cod-lobby, #farm-overview-ui) .bp-diff-pill:hover,
:is(#cod-lobby, #farm-overview-ui) .quality-cards .bp-gfx-card.active,
:is(#cod-lobby, #farm-overview-ui) .quality-cards .bp-gfx-card:hover,
:is(#cod-lobby, #farm-overview-ui) .audio-settings button[aria-pressed="true"],
:is(#cod-lobby, #farm-overview-ui) .info-tabs button.selected,
:is(#cod-lobby, #farm-overview-ui) .info-tabs button:hover {
  background: var(--snooker-emerald);
  border-color: var(--snooker-emerald);
  color: var(--snooker-ivory);
}
:is(#cod-lobby, #farm-overview-ui) .performance-setting input {
  accent-color: var(--snooker-emerald) !important;
}
:is(#cod-lobby, #farm-overview-ui) .snooker-match-format select {
  color: var(--snooker-ink);
  background: #fff8eb;
  border-color: #adc0ad;
}
:is(#cod-lobby, #farm-overview-ui) .setup-poster {
  color: var(--snooker-ivory);
  background:
    linear-gradient(180deg, #164c3880, #145d3d08 30%, #193f2bee 83%),
    url("../../assets/sunny/loader-background.webp?v=color1") 72% center/cover;
  border: 2px solid var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .poster-copy h2 em {
  color: var(--snooker-gold);
}
:is(#cod-lobby, #farm-overview-ui) .poster-copy p,
:is(#cod-lobby, #farm-overview-ui) .poster-copy > small {
  color: #f2e8d3;
}
:is(#cod-lobby, #farm-overview-ui) .bp-deploy-btn {
  background: var(--snooker-gold);
  color: #3f3021;
}
:is(#cod-lobby, #farm-overview-ui) .bp-deploy-btn:hover {
  background: #ffe2a6;
}
:is(#cod-lobby, #farm-overview-ui) .finish-cards .bp-swatch-item {
  background: #174f40dd;
  border-color: #f0cc8360;
}
:is(#cod-lobby, #farm-overview-ui) .finish-cards .bp-swatch-item.active {
  border-color: var(--snooker-gold);
  background: #327c59e6;
}
#title-screen {
  color: var(--snooker-ivory);
  background:
    linear-gradient(
      90deg,
      rgba(13, 63, 52, 0.08) 30%,
      rgba(13, 63, 52, 0.3) 48%,
      rgba(13, 63, 52, 0.9) 66%,
      #0d3f34 78%
    ),
    #0d3f34 url("../../assets/sunny/loader-background.webp?v=color1")
      center/cover;
}
#title-screen .title-copy h1 em,
#title-screen .title-copy .eyebrow,
#title-screen .loading-caption,
#title-screen .title-top > span:last-child {
  color: var(--snooker-gold);
}
#title-screen .title-tagline,
#title-screen .title-footer > span:last-child {
  color: #f1e1c6;
}
#title-screen .title-ball {
  padding: 12px;
  background: #116853;
  border: 1px solid var(--snooker-gold);
  border-radius: 50%;
}
#title-screen .title-ball svg circle:first-child {
  fill: var(--snooker-gold);
}
#title-screen .title-ball svg circle:last-child {
  fill: var(--snooker-ivory);
  opacity: 0.65;
}
#title-screen .loading-track {
  background: #f0cc8333;
}
#title-screen #loading-fill {
  background: var(--snooker-gold);
}
#title-screen .title-copy button {
  color: var(--snooker-gold);
  border-color: #f0cc8370;
}
#title-screen .title-copy button:hover {
  color: var(--snooker-ink);
  background: var(--snooker-gold);
}
#title-screen .title-copy button:focus-visible {
  outline-color: var(--snooker-gold);
}
#title-screen .title-top > span:first-child,
#title-screen .title-footer > span:first-child {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  min-height: 32px;
  padding: 9px 12px;
  border-left: 3px solid var(--snooker-gold);
  background: rgba(9, 38, 31, 0.94);
  color: var(--snooker-ivory);
  font:
    700 clamp(11px, 0.75vw, 14px)/1.7 "Space Grotesk",
    sans-serif;
  letter-spacing: 1px;
  white-space: nowrap;
}
#title-screen .title-footer > span:first-child {
  align-self: flex-end;
}
#match-report {
  background:
    linear-gradient(180deg, #104e42f2, #183f37ed),
    url("../../assets/sunny/loader-background.webp?v=color1") center/cover;
  color: var(--snooker-ivory);
}
#match-report .report-brand,
#match-report .report-scoreboard .eyebrow,
#match-report .report-player .panel-heading {
  color: var(--snooker-gold);
}
#match-report .report-player {
  background: #226b5855;
}
#match-report .report-center {
  background: #75978130;
}
#match-report .report-actions button {
  background: #286a58;
  color: var(--snooker-ivory);
}
#match-report .report-actions button:first-child,
#match-report .report-actions button:nth-child(2) {
  background: var(--snooker-gold);
  color: #3f3021;
}
#match-report .report-actions button:hover {
  background: #ffe2a6;
  color: #3f3021;
}
#lobby-scroll-hint,
#lobby-scroll-hint:hover,
#lobby-scroll-hint:focus-within {
  background: #175b4cf2;
  color: var(--snooker-ivory);
  border-color: var(--snooker-gold);
}
#lobby-scroll-hint small {
  color: #e4d4b3;
}
#lobby-scroll-hint button {
  background: #27745e;
  color: var(--snooker-ivory);
  border-color: #f0cc8370;
}
#lobby-scroll-hint button:hover,
#lobby-scroll-hint button:focus-visible,
#lobby-scroll-hint button:active,
#lobby-scroll-hint button.scrolling {
  background: var(--snooker-gold);
  color: var(--snooker-ink);
}
@media (min-width: 601px) and (max-width: 900px) {
  #title-screen .title-top > span:first-child,
  #title-screen .title-footer > span:first-child {
    font-size: 10px;
  }
}
@media (max-width: 600px) {
  #title-screen {
    background-image:
      linear-gradient(180deg, #0d3f3426, #0d3f3470 40%, #0d3f34eb 78%),
      url("../../assets/sunny/loader-background.webp?v=color1");
    background-position: 20% center;
  }
  #title-screen .title-copy {
    background: #0d3f34e8;
    border-top: 1px solid #f0cc8360;
  }
  #title-screen .title-footer {
    justify-content: space-between;
    align-items: center;
    gap: 10px;
  }
  #title-screen .title-top > span:first-child,
  #title-screen .title-footer > span:first-child {
    font-size: 10px;
  }
  #title-screen .title-footer > span:last-child {
    background: transparent;
    padding: 0;
  }
  :is(#cod-lobby, #farm-overview-ui) .arena-grid {
    gap: 8px;
  }
}
