/* Festival themes are kept in a separate layer so the light/dark app theme can still own contrast. */

@property --bc-rainbow-hue {
  syntax: "<angle>";
  inherits: true;
  initial-value: 190deg;
}

@keyframes bc-rainbow-hue-cycle {
  from { --bc-rainbow-hue: 190deg; }
  to { --bc-rainbow-hue: 550deg; }
}

@keyframes bc-rainbow-hero-flow {
  from { background-position: center, 0% 50%; }
  to { background-position: center, 200% 50%; }
}

html.table-page.festival-theme-rebirth {
  --bc-festival-ink: #170e4b;
  --bc-festival-deep: #0b0747;
  --bc-festival-soft: #efe7ff;
  --bc-festival-accent: #d21cff;
  --bc-festival-accent-strong: #8f12b7;
  --bc-festival-poster: url("../images/events/rebirth_festival_2026_timetable.jpg");
  --bc-app-bg: #f5efff;
  --bc-app-panel: #fbf8ff;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #170e4b;
  --bc-app-muted: #5e5a78;
  --bc-app-border: rgba(58, 31, 130, 0.2);
  --bc-app-accent: #b51ed2;
  --bc-app-accent-strong: #7f159a;
  --bc-app-warning: #a15c00;
  --bc-selected-outline: rgba(126, 34, 206, 0.95);
  --bc-selected-fill: rgba(217, 70, 239, 0.2);
}

html.table-page.festival-theme-intents {
  --bc-festival-ink: #12374b;
  --bc-festival-deep: #07576b;
  --bc-festival-soft: #e4f8fb;
  --bc-festival-accent: #f26722;
  --bc-festival-accent-strong: #c3470e;
  --bc-festival-poster: url("../images/events/intents_festival_2026_timetable.jpg");
  --bc-app-bg: #effcff;
  --bc-app-panel: #f9feff;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #12374b;
  --bc-app-muted: #4e7180;
  --bc-app-border: rgba(8, 127, 154, 0.23);
  --bc-app-accent: #087f9a;
  --bc-app-accent-strong: #075b70;
  --bc-app-warning: #c3470e;
  --bc-selected-outline: rgba(194, 65, 14, 0.95);
  --bc-selected-fill: rgba(242, 103, 34, 0.2);
}

html.table-page.festival-theme-defqon {
  --bc-festival-ink: #190405;
  --bc-festival-deep: #050303;
  --bc-festival-soft: #fff4ec;
  --bc-festival-accent: #e30613;
  --bc-festival-accent-strong: #ff5a14;
  --bc-festival-poster: url("../images/events/defqon1_2026_timetable.webp");
  --bc-app-bg: #fff4ec;
  --bc-app-panel: #fff9f5;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #190405;
  --bc-app-muted: #6d4f48;
  --bc-app-border: rgba(156, 21, 18, 0.24);
  --bc-app-accent: #e30613;
  --bc-app-accent-strong: #9c1512;
  --bc-app-warning: #ff5a14;
  --bc-selected-outline: rgba(227, 6, 19, 0.95);
  --bc-selected-fill: rgba(255, 90, 20, 0.2);
}

html.table-page.festival-theme-dominator {
  --bc-festival-ink: #2f190b;
  --bc-festival-deep: #2a170b;
  --bc-festival-soft: #fff0dc;
  --bc-festival-accent: #e4a31a;
  --bc-festival-accent-strong: #b94c0a;
  --bc-festival-poster: url("../images/events/dominator_festival_2026_timetable.webp");
  --bc-app-bg: #fff4e3;
  --bc-app-panel: #fffaf2;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #2f190b;
  --bc-app-muted: #765f4a;
  --bc-app-border: rgba(105, 54, 17, 0.22);
  --bc-app-accent: #b94c0a;
  --bc-app-accent-strong: #813205;
  --bc-app-warning: #a76a00;
  --bc-selected-outline: rgba(185, 76, 10, 0.95);
  --bc-selected-fill: rgba(228, 163, 26, 0.22);
}

html.table-page.festival-theme-decibel {
  --bc-festival-ink: #15282b;
  --bc-festival-deep: #0b1516;
  --bc-festival-soft: #e5f5f1;
  --bc-festival-accent: #008f83;
  --bc-festival-accent-strong: #00675f;
  --bc-festival-poster: url("../images/events/decibel_outdoor_2026_lineup.jpg");
  --bc-app-bg: #effbf7;
  --bc-app-panel: #f9fffd;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #15282b;
  --bc-app-muted: #55706e;
  --bc-app-border: rgba(0, 103, 95, 0.22);
  --bc-app-accent: #008f83;
  --bc-app-accent-strong: #00675f;
  --bc-app-warning: #bf3b83;
  --bc-selected-outline: rgba(191, 59, 131, 0.95);
  --bc-selected-fill: rgba(0, 143, 131, 0.2);
}

html.table-page.festival-theme-rainbow {
  --bc-rainbow-hue: 190deg;
  --bc-rainbow-accent: hsl(var(--bc-rainbow-hue) 86% 42%);
  --bc-rainbow-accent-strong: hsl(calc(var(--bc-rainbow-hue) + 105deg) 86% 44%);
  --bc-festival-ink: #111827;
  --bc-festival-deep: #07111f;
  --bc-festival-soft: hsl(var(--bc-rainbow-hue) 88% 95%);
  --bc-festival-accent: var(--bc-rainbow-accent);
  --bc-festival-accent-strong: var(--bc-rainbow-accent-strong);
  --bc-festival-poster: linear-gradient(135deg, #ef4444 0%, #f59e0b 18%, #22c55e 38%, #06b6d4 58%, #6366f1 78%, #d946ef 100%);
  --bc-app-bg: hsl(var(--bc-rainbow-hue) 88% 98%);
  --bc-app-panel: #ffffff;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #111827;
  --bc-app-muted: #52616d;
  --bc-app-border: hsl(var(--bc-rainbow-hue) 78% 45% / 0.22);
  --bc-app-accent: var(--bc-rainbow-accent);
  --bc-app-accent-strong: var(--bc-rainbow-accent-strong);
  --bc-app-warning: #f59e0b;
  --bc-selected-outline: hsl(calc(var(--bc-rainbow-hue) + 105deg) 86% 45% / 0.95);
  --bc-selected-fill: hsl(var(--bc-rainbow-hue) 88% 52% / 0.18);
  animation: bc-rainbow-hue-cycle 18s linear infinite;
}

html.table-page.festival-theme-lowlands {
  --bc-festival-ink: #35135d;
  --bc-festival-deep: #211151;
  --bc-festival-soft: #fff0e9;
  --bc-festival-accent: #ff3b24;
  --bc-festival-accent-strong: #6b22c9;
  --bc-festival-poster: url("../images/social/lowlands_2026_timetable.png");
  --bc-app-bg: #fff4ef;
  --bc-app-panel: #fff9f5;
  --bc-app-panel-strong: #ffffff;
  --bc-app-text: #35135d;
  --bc-app-muted: #765d86;
  --bc-app-border: rgba(255, 59, 36, 0.26);
  --bc-app-accent: #ff3b24;
  --bc-app-accent-strong: #d52f1b;
  --bc-app-warning: #049964;
  --bc-selected-outline: rgba(107, 34, 201, 0.95);
  --bc-selected-fill: rgba(255, 59, 36, 0.18);
}

html.table-page.festival-theme-rainbow .hero {
  background-size: cover, 240% 240% !important;
  animation: bc-rainbow-hero-flow 14s linear infinite;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-dock-bg: color-mix(in srgb, var(--bc-app-panel-strong) 92%, var(--bc-festival-accent) 8%);
  --bc-dock-border: var(--bc-app-border);
  --bc-dock-control-bg: var(--bc-festival-soft);
  --bc-dock-control-border: var(--bc-app-border);
  --bc-dock-control-text: var(--bc-app-text);
  --bc-dock-control-hover-bg: color-mix(in srgb, var(--bc-festival-soft) 72%, var(--bc-festival-accent) 28%);
  --bc-dock-control-active-bg: var(--bc-app-accent);
  --bc-dock-control-active-text: #ffffff;
  --bc-dock-primary-bg: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%);
  --bc-dock-primary-text: var(--bc-app-accent-strong);
  --bc-popup-bg: var(--bc-app-panel-strong);
  --bc-popup-border: var(--bc-app-border);
  --bc-popup-text: var(--bc-app-text);
  --bc-popup-muted: var(--bc-app-muted);
  --bc-popup-control-bg: color-mix(in srgb, var(--bc-app-panel-strong) 88%, var(--bc-festival-accent) 12%);
  --bc-popup-control-hover-bg: color-mix(in srgb, var(--bc-festival-soft) 70%, var(--bc-festival-accent) 30%);
  --bc-popup-control-border: color-mix(in srgb, var(--bc-festival-accent) 26%, var(--bc-app-border));
  --bc-popup-input-bg: var(--bc-app-panel-strong);
  --bc-popup-placeholder: color-mix(in srgb, var(--bc-app-muted) 74%, transparent);
  --bc-popup-primary-bg: var(--bc-app-accent);
  --bc-popup-primary-text: #ffffff;
  color-scheme: light;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) body {
  background: var(--bc-app-bg) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero {
  min-height: 150px;
  overflow: hidden;
  border-color: color-mix(in srgb, var(--bc-festival-accent) 60%, transparent) !important;
  background-image:
    linear-gradient(110deg, rgba(7, 12, 26, 0.9) 0%, rgba(7, 12, 26, 0.62) 48%, rgba(7, 12, 26, 0.22) 100%),
    var(--bc-festival-poster) !important;
  background-position: center;
  background-size: cover;
  color: #ffffff !important;
  box-shadow: 0 12px 28px rgba(7, 12, 26, 0.16) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero h1,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero p {
  color: #ffffff !important;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.55);
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero p {
  border: 1px solid rgba(255, 255, 255, 0.24) !important;
  border-left: 3px solid var(--bc-festival-accent) !important;
  border-radius: 8px !important;
  background: rgba(7, 12, 26, 0.55) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.panel, .countdown-card, .time-mode-card, .summary-card, .clash-box, .schedule-wrap, .table-wrap, .artist-list, .export-plan-actions, .bc-account-save-card, .bc-feedback-flow, .room-shell, .room-panel, .room-settings-panel, .room-profile-panel, .room-custom-stage-group, .room-custom-slot-item, .room-activity, .share-tools, .artist-search-section) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.panel-head, .schedule-table thead th, .timetable-grid thead th, .bc-schedule-preview-row td) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(h2, h3, .panel-head h2, .summary-card h3, .subhead, .time-mode-card strong, .room-shell__title, .room-section-title, .room-custom-stage-title, .bc-toolbar-title) {
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.panel-head p, .summary-card p, .time-mode-card span, .countdown-label-top, .countdown-status, .countdown-meta, .countdown-unit, .hint, .room-help, .room-shell__hint, .room-status, .room-meta-line, #mobileSwipeHint) {
  color: var(--bc-app-muted) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.btn, .btn-light, .tab, .tabs button, .bc-stage-day-btn, .bc-toolbar-layout-switcher, .bc-toolbar-layout-switcher button, .bc-stage-expand-btn, .bc-stage-filter-menu summary, .room-privacy-btn, .bc-room-member-chip, .room-indicator-chip, .mobile-toggle) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-festival-soft) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.btn:hover, .btn:focus-visible, .btn-light:hover, .btn-light:focus-visible, .tab:hover, .tabs button:hover, .bc-stage-day-btn:hover, .bc-stage-expand-btn:hover) {
  border-color: var(--bc-festival-accent) !important;
  background: color-mix(in srgb, var(--bc-festival-soft) 72%, var(--bc-festival-accent) 28%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.btn-dark, .tab.active, .tabs button.active, .tabs button.is-active, .bc-stage-day-btn.is-active, .bc-toolbar-layout-switcher button.is-active, .bc-stage-expand-btn.is-active) {
  border-color: var(--bc-festival-accent-strong) !important;
  background: var(--bc-app-accent) !important;
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(input, select, textarea, .search, .select, .room-input, .room-select) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item {
  border: 1px solid color-mix(in srgb, var(--bc-festival-accent) 20%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-app-panel-strong) 88%, var(--bc-festival-accent) 12%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item:hover,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item:focus-within,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item:has(input[type="checkbox"]:checked) {
  border-color: var(--bc-festival-accent) !important;
  background: color-mix(in srgb, var(--bc-festival-soft) 70%, var(--bc-festival-accent) 30%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item input[type="checkbox"] {
  accent-color: var(--bc-app-accent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover, .bc-mobile-room-menu, .bc-mobile-export-menu, .bc-dock-action-menu, .bc-room-selection-popover) {
  border-color: var(--bc-popup-border) !important;
  background: var(--bc-popup-bg) !important;
  color: var(--bc-popup-text) !important;
  box-shadow: 0 18px 42px rgba(7, 12, 26, 0.24) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-meta,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-export-menu__field span, .bc-mobile-export-menu__head span, .bc-mobile-export-menu__empty, .bc-mobile-room-menu__status, .bc-dock-action-menu__head span, .bc-dock-action-menu__loading, .bc-dock-picks-menu__stats span, .bc-dock-reminders-menu #reminderStatus, .bc-dock-feedback-menu .saved-plan-status, .bc-room-selection-popover__title) {
  color: var(--bc-popup-muted) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-export-menu__head strong, .bc-dock-action-menu__head strong, .bc-dock-picks-menu__stats strong, .bc-room-selection-popover__member, .bc-mobile-room-menu label, .bc-dock-feedback-menu .bc-feedback-form label) {
  color: var(--bc-popup-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-option {
  border: 1px solid var(--bc-popup-control-border) !important;
  background: var(--bc-popup-control-bg) !important;
  color: var(--bc-popup-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-option span {
  color: inherit !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-option:hover,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-option:focus-within {
  border-color: var(--bc-festival-accent) !important;
  background: var(--bc-popup-control-hover-bg) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-option input[type="checkbox"] {
  accent-color: var(--bc-app-accent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-action,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-room-menu button, .bc-mobile-export-menu button, .bc-mobile-export-menu select, .bc-dock-action-menu button, .bc-dock-reminders-menu .btn, .bc-dock-feedback-menu .btn) {
  border-color: var(--bc-popup-control-border) !important;
  background: var(--bc-popup-control-bg) !important;
  color: var(--bc-popup-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-filter-popover, .bc-mobile-stage-filter-popover) .bc-stage-filter-action.is-primary,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-mobile-room-menu__form button {
  border-color: var(--bc-app-accent-strong) !important;
  background: var(--bc-popup-primary-bg) !important;
  color: var(--bc-popup-primary-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.timetable-grid, .schedule-table) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.timetable-grid th, .timetable-grid td, .schedule-table th, .schedule-table td) {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 24%, var(--bc-app-border)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.timetable-grid .time-head, .timetable-grid .time-cell, .timetable-grid .sticky-time, .schedule-table .time-head) {
  background: var(--bc-festival-deep) !important;
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) #tableWrap .set-cell:not(.room-custom-stack-cell) .cell-inner {
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--bc-festival-accent) 28%, transparent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-grid-stage-host-row .time-cell, .bc-grid-stage-host-cell) {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 34%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-festival-deep) 84%, var(--bc-festival-accent) 16%) !important;
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-grid-stage-hosts {
  border: 1px solid color-mix(in srgb, var(--bc-festival-accent) 44%, rgba(255, 255, 255, 0.18)) !important;
  border-radius: 8px !important;
  background: color-mix(in srgb, var(--bc-festival-deep) 64%, var(--bc-festival-accent) 36%) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--bc-festival-accent) 16%, transparent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-grid-stage-host-label {
  color: #ffffff !important;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.44);
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-row__head {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 46%, rgba(255, 255, 255, 0.24)) !important;
  background: color-mix(in srgb, var(--bc-festival-deep) 72%, var(--bc-festival-accent) 28%) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px color-mix(in srgb, var(--bc-festival-accent) 26%, rgba(7, 12, 26, 0.22)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-row__hosts {
  margin-top: 2px !important;
  width: fit-content !important;
  padding: 2px 6px !important;
  border: 1px solid color-mix(in srgb, var(--bc-festival-accent) 50%, rgba(255, 255, 255, 0.24)) !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--bc-festival-deep) 58%, var(--bc-festival-accent) 42%) !important;
  color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--bc-festival-accent) 18%, transparent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-card {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 28%, rgba(15, 23, 42, 0.16)) !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--bc-festival-accent) 16%, transparent),
    0 6px 16px rgba(7, 12, 26, 0.16) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .timetable-grid .set-cell.selected,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .timetable-grid .room-custom-stack-cell.room-custom-stack-selected,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-card.is-selected {
  box-shadow:
    inset 0 0 0 2px var(--bc-selected-outline),
    inset 0 0 0 9999px var(--bc-selected-fill) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-action-dock, .bc-desktop-action-bar, .bc-action-bar, .planner-dock) {
  border-color: var(--bc-app-border) !important;
  background: color-mix(in srgb, var(--bc-app-panel-strong) 92%, var(--bc-festival-accent) 8%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-action-btn, .bc-desktop-action-btn, .bc-action-btn, .planner-dock button) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-festival-soft) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-mobile-action-btn:hover, .bc-mobile-action-btn:focus-visible, .bc-desktop-action-btn:hover, .bc-desktop-action-btn:focus-visible, .bc-action-btn:hover, .bc-action-btn:focus-visible, .planner-dock button:hover) {
  border-color: var(--bc-festival-accent) !important;
  color: var(--bc-festival-accent-strong) !important;
}

html.table-page[data-bc-theme="dark"].festival-theme-rebirth {
  --bc-app-bg: #09062f;
  --bc-app-panel: #171044;
  --bc-app-panel-strong: #211656;
  --bc-app-text: #fbf7ff;
  --bc-app-muted: #d3c9e8;
  --bc-app-border: rgba(224, 179, 255, 0.28);
  --bc-app-accent: #d946ef;
  --bc-app-accent-strong: #f0abff;
  --bc-festival-soft: #251358;
}

html.table-page[data-bc-theme="dark"].festival-theme-intents {
  --bc-app-bg: #06252e;
  --bc-app-panel: #0d3b47;
  --bc-app-panel-strong: #124d5c;
  --bc-app-text: #f2fdff;
  --bc-app-muted: #b7dbe0;
  --bc-app-border: rgba(134, 230, 238, 0.3);
  --bc-app-accent: #18b8cc;
  --bc-app-accent-strong: #9beaf0;
  --bc-festival-soft: #124653;
}

html.table-page[data-bc-theme="dark"].festival-theme-defqon {
  --bc-app-bg: #050303;
  --bc-app-panel: #190405;
  --bc-app-panel-strong: #2a0707;
  --bc-app-text: #f7f2ef;
  --bc-app-muted: #c9b7ad;
  --bc-app-border: rgba(255, 90, 20, 0.3);
  --bc-app-accent: #e30613;
  --bc-app-accent-strong: #ff7a1a;
  --bc-festival-soft: #2a0707;
}

html.table-page[data-bc-theme="dark"].festival-theme-dominator {
  --bc-app-bg: #1b0d07;
  --bc-app-panel: #32180d;
  --bc-app-panel-strong: #48220e;
  --bc-app-text: #fff7e8;
  --bc-app-muted: #e4c8a4;
  --bc-app-border: rgba(245, 184, 79, 0.32);
  --bc-app-accent: #ec7b1e;
  --bc-app-accent-strong: #ffd27a;
  --bc-festival-soft: #4c2712;
}

html.table-page[data-bc-theme="dark"].festival-theme-decibel {
  --bc-app-bg: #071211;
  --bc-app-panel: #102725;
  --bc-app-panel-strong: #173b37;
  --bc-app-text: #f1fffb;
  --bc-app-muted: #b9d8d1;
  --bc-app-border: rgba(108, 224, 203, 0.3);
  --bc-app-accent: #16b5a2;
  --bc-app-accent-strong: #8cebdc;
  --bc-festival-soft: #174944;
}

html.table-page[data-bc-theme="dark"].festival-theme-rainbow {
  --bc-app-bg: #07111f;
  --bc-app-panel: #111827;
  --bc-app-panel-strong: #172033;
  --bc-app-text: #f8fafc;
  --bc-app-muted: #cbd5e1;
  --bc-app-border: hsl(var(--bc-rainbow-hue) 88% 72% / 0.3);
  --bc-app-accent: hsl(var(--bc-rainbow-hue) 86% 48%);
  --bc-app-accent-strong: hsl(calc(var(--bc-rainbow-hue) + 105deg) 86% 66%);
  --bc-festival-soft: hsl(var(--bc-rainbow-hue) 42% 16%);
}

html.table-page[data-bc-theme="dark"].festival-theme-lowlands {
  --bc-app-bg: #16072d;
  --bc-app-panel: #24104a;
  --bc-app-panel-strong: #32145d;
  --bc-app-text: #fff7ff;
  --bc-app-muted: #e4ccef;
  --bc-app-border: rgba(255, 116, 84, 0.34);
  --bc-app-accent: #ff5636;
  --bc-app-accent-strong: #90f2b5;
  --bc-festival-soft: #32145d;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  color-scheme: dark;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) body {
  background: var(--bc-app-bg) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.panel, .countdown-card, .time-mode-card, .summary-card, .clash-box, .schedule-wrap, .table-wrap, .artist-list, .export-plan-actions, .bc-account-save-card, .bc-feedback-flow, .room-shell, .room-panel, .room-settings-panel, .room-profile-panel, .room-custom-stage-group, .room-custom-slot-item, .room-activity, .share-tools, .artist-search-section) {
  background: var(--bc-app-panel) !important;
  color: var(--bc-app-text) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.panel-head, .schedule-table thead th, .timetable-grid thead th, .bc-schedule-preview-row td) {
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(input, select, textarea, .search, .select, .room-input, .room-select) {
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.btn, .btn-light, .tab, .tabs button, .bc-stage-day-btn, .bc-toolbar-layout-switcher, .bc-toolbar-layout-switcher button, .bc-stage-expand-btn, .bc-stage-filter-menu summary, .room-privacy-btn, .bc-room-member-chip, .room-indicator-chip, .mobile-toggle, .bc-mobile-action-btn, .bc-desktop-action-btn, .bc-action-btn, .planner-dock button) {
  background: var(--bc-festival-soft) !important;
  color: var(--bc-app-text) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.btn-dark, .tab.active, .tabs button.active, .tabs button.is-active, .bc-stage-day-btn.is-active, .bc-toolbar-layout-switcher button.is-active, .bc-stage-expand-btn.is-active) {
  background: var(--bc-app-accent) !important;
  color: #ffffff !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.timetable-grid, .schedule-table) {
  background: var(--bc-festival-deep) !important;
  color: var(--bc-app-text) !important;
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.timetable-grid th, .timetable-grid td, .schedule-table th, .schedule-table td) {
  border-color: var(--bc-app-border) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-stage-filter-control-border: var(--bc-app-border);
  --bc-stage-filter-control-bg: var(--bc-festival-soft);
  --bc-stage-filter-control-text: var(--bc-app-text);
  --bc-stage-filter-control-active-bg: var(--bc-app-accent);
  --bc-stage-filter-control-active-text: #ffffff;
  --bc-stage-filter-popover-border: var(--bc-popup-border);
  --bc-stage-filter-popover-bg: var(--bc-popup-bg);
  --bc-stage-filter-meta-text: var(--bc-popup-muted);
  --bc-stage-filter-option-text: var(--bc-popup-text);
  --bc-stage-filter-option-hover-bg: var(--bc-popup-control-hover-bg);
  --bc-stage-filter-accent: var(--bc-app-accent);
  --bc-stage-filter-action-border: var(--bc-popup-control-border);
  --bc-stage-filter-action-bg: var(--bc-popup-control-bg);
  --bc-stage-filter-action-text: var(--bc-popup-text);
  --bc-stage-filter-primary-bg: var(--bc-app-accent);
  --bc-stage-day-border: var(--bc-app-border);
  --bc-stage-day-bg: var(--bc-festival-soft);
  --bc-stage-day-text: var(--bc-app-text);
  --bc-stage-day-active-bg: var(--bc-app-accent);
  --bc-stage-day-active-text: #ffffff;
  --bc-stage-day-active-border: var(--bc-app-accent-strong);
  --bc-stage-layout-switcher-border: var(--bc-app-border);
  --bc-stage-layout-switcher-bg: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%);
  --bc-stage-layout-switcher-text: var(--bc-app-text);
  --bc-stage-layout-switcher-active-bg: var(--bc-app-accent);
  --bc-stage-layout-switcher-active-text: #ffffff;
  --bc-stage-expand-border: var(--bc-app-border);
  --bc-stage-expand-bg: var(--bc-festival-soft);
  --bc-stage-expand-text: var(--bc-app-text);
  --bc-stage-expand-active-bg: var(--bc-app-accent);
  --bc-stage-expand-active-text: #ffffff;
  --bc-stage-timeline-border: var(--bc-app-border);
  --bc-stage-timeline-bg: var(--bc-app-panel);
  --bc-stage-time-row-bg: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%);
  --bc-stage-time-row-border: var(--bc-app-border);
  --bc-stage-time-tick-bg: color-mix(in srgb, var(--bc-festival-accent) 32%, var(--bc-app-border));
  --bc-stage-time-tick-text: var(--bc-app-text);
  --bc-stage-grid-line-bg: color-mix(in srgb, var(--bc-festival-accent) 18%, transparent);
  --bc-stage-row-border: var(--bc-app-border);
  --bc-stage-row-header-border: color-mix(in srgb, var(--bc-festival-accent) 50%, rgba(255, 255, 255, 0.26));
  --bc-stage-row-header-shadow: 0 4px 14px color-mix(in srgb, var(--bc-festival-accent) 24%, rgba(7, 12, 26, 0.22));
  --bc-stage-card-border: color-mix(in srgb, var(--bc-festival-accent) 28%, var(--bc-app-border));
  --bc-stage-card-bg: color-mix(in srgb, var(--stage-bg, var(--bc-app-panel-strong)) 68%, var(--bc-festival-soft) 32%);
  --bc-stage-card-text: var(--bc-app-text);
  --bc-stage-card-meta-text: var(--bc-app-muted);
  --bc-stage-card-selected-outline: var(--bc-selected-outline);
  --bc-stage-card-selected-shadow: inset 0 0 0 2px var(--bc-selected-outline), inset 0 0 0 9999px var(--bc-selected-fill);
  --bc-stage-card-now-outline: var(--bc-app-warning);
  --bc-stage-card-now-shadow: inset 0 0 0 9999px color-mix(in srgb, var(--bc-app-warning) 18%, transparent), 0 0 0 2px color-mix(in srgb, var(--bc-app-warning) 36%, transparent);
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-card, .bc-group-schedule-panel, .countdown-card, .bc-countdown-time-strip, .schedule-wrap, .bc-stage-timeline) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-card__heading, .bc-planner-card__summary, .panel-head, .schedule-table thead th, .bc-schedule-preview-row td) {
  border-color: var(--bc-app-border) !important;
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.countdown-cell, .bc-live-overview-stat) {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 28%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.countdown-value, .schedule-table strong, .bc-planner-card__heading, .bc-planner-card__summary) {
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.countdown-label-top, .countdown-status, .countdown-meta, .countdown-unit, .schedule-table td, .bc-stage-card__meta, .bc-planner-card__content) {
  color: var(--bc-app-muted) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.schedule-table, .schedule-table tbody td) {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 24%, var(--bc-app-border)) !important;
  background: var(--bc-app-panel-strong) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .schedule-table tbody tr:nth-child(even) td {
  background: color-mix(in srgb, var(--bc-app-panel-strong) 88%, var(--bc-festival-accent) 12%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-themed-schedule-panel-bg: linear-gradient(180deg,
    color-mix(in srgb, var(--bc-app-panel-strong) 84%, var(--bc-festival-accent) 16%) 0%,
    color-mix(in srgb, var(--bc-app-panel) 90%, var(--bc-festival-accent) 10%) 100%);
  --bc-themed-schedule-panel-border: color-mix(in srgb, var(--bc-festival-accent) 38%, var(--bc-app-border));
  --bc-themed-schedule-head-bg: linear-gradient(135deg,
    color-mix(in srgb, var(--bc-festival-deep) 78%, var(--bc-festival-accent) 22%) 0%,
    color-mix(in srgb, var(--bc-festival-deep) 56%, var(--bc-festival-accent) 44%) 100%);
  --bc-themed-schedule-head-text: #ffffff;
  --bc-themed-schedule-row-odd: color-mix(in srgb, var(--bc-app-panel-strong) 92%, var(--bc-festival-accent) 8%);
  --bc-themed-schedule-row-even: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%);
  --bc-themed-schedule-row-shared: color-mix(in srgb, var(--bc-app-panel-strong) 72%, var(--bc-festival-accent) 28%);
  --bc-themed-schedule-row-clash: color-mix(in srgb, #fee2e2 62%, var(--bc-pick-red, #ef4444) 38%);
  --bc-themed-schedule-muted: color-mix(in srgb, var(--bc-app-text) 62%, var(--bc-app-muted) 38%);
  --bc-themed-schedule-shadow: 0 12px 28px color-mix(in srgb, var(--bc-festival-accent) 16%, rgba(15, 23, 42, 0.12));
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-themed-schedule-panel-bg: linear-gradient(180deg,
    color-mix(in srgb, var(--bc-app-panel-strong) 74%, var(--bc-festival-accent) 26%) 0%,
    color-mix(in srgb, var(--bc-app-panel) 84%, var(--bc-festival-accent) 16%) 100%);
  --bc-themed-schedule-panel-border: color-mix(in srgb, var(--bc-festival-accent) 48%, var(--bc-app-border));
  --bc-themed-schedule-row-odd: color-mix(in srgb, var(--bc-app-panel-strong) 86%, var(--bc-festival-accent) 14%);
  --bc-themed-schedule-row-even: color-mix(in srgb, var(--bc-app-panel-strong) 76%, var(--bc-festival-accent) 24%);
  --bc-themed-schedule-row-shared: color-mix(in srgb, var(--bc-app-panel-strong) 66%, var(--bc-festival-accent) 34%);
  --bc-themed-schedule-row-clash: color-mix(in srgb, #7f1d1d 58%, var(--bc-app-panel-strong) 42%);
  --bc-themed-schedule-muted: color-mix(in srgb, var(--bc-app-text) 68%, var(--bc-app-muted) 32%);
  --bc-themed-schedule-shadow: 0 14px 30px rgba(0, 0, 0, 0.28);
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-pick-card, .bc-planner-schedule-card, .bc-group-schedule-panel) {
  border-color: var(--bc-themed-schedule-panel-border) !important;
  background: var(--bc-themed-schedule-panel-bg) !important;
  color: var(--bc-app-text) !important;
  box-shadow: var(--bc-themed-schedule-shadow) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-pick-card, .bc-planner-schedule-card) > :is(.bc-planner-card__heading, .bc-planner-card__summary),
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-group-schedule-panel .bc-group-schedule-toolbar,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-group-schedule-panel.bc-schedule-fullscreen .bc-group-schedule-toolbar {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 44%, rgba(255, 255, 255, 0.22)) !important;
  background: var(--bc-themed-schedule-head-bg) !important;
  color: var(--bc-themed-schedule-head-text) !important;
  box-shadow: inset 0 -1px 0 color-mix(in srgb, #ffffff 12%, transparent) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-pick-card, .bc-planner-schedule-card) > .bc-planner-card__summary::after {
  background: color-mix(in srgb, #ffffff 18%, var(--bc-festival-accent) 82%) !important;
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-group-schedule-toolbar .subhead,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-group-schedule-panel.bc-schedule-fullscreen .subhead {
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-wrap {
  border-color: var(--bc-themed-schedule-panel-border) !important;
  background: var(--bc-themed-schedule-panel-bg) !important;
  color: var(--bc-app-text) !important;
  scrollbar-color: var(--bc-themed-field-thumb, var(--bc-festival-accent)) var(--bc-themed-field-track, var(--bc-app-panel)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-wrap::-webkit-scrollbar-track {
  background: var(--bc-themed-field-track, var(--bc-app-panel)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-wrap::-webkit-scrollbar-thumb {
  border-color: var(--bc-themed-field-track, var(--bc-app-panel)) !important;
  background: var(--bc-themed-field-thumb, var(--bc-festival-accent)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-table {
  border-color: var(--bc-themed-schedule-panel-border) !important;
  background: transparent !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-table thead th {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 48%, rgba(255, 255, 255, 0.20)) !important;
  background: var(--bc-themed-schedule-head-bg) !important;
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-table tbody tr:nth-child(odd) td {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 26%, var(--bc-app-border)) !important;
  background: var(--bc-themed-schedule-row-odd) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-table tbody tr:nth-child(even) td {
  background: var(--bc-themed-schedule-row-even) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-room-summary-row.is-shared, .bc-personal-summary-row.is-picked, .bc-room-summary-row.is-picked) > td {
  background: var(--bc-themed-schedule-row-shared) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-room-summary-row[data-bc-preference="not"]:not(.has-clash), .bc-room-summary-row[data-bc-preference="maybe"]:not(.has-clash), .bc-room-summary-row[data-bc-preference="must"]:not(.has-clash), .bc-personal-summary-row[data-bc-preference="not"]:not(.has-clash), .bc-personal-summary-row[data-bc-preference="maybe"]:not(.has-clash), .bc-personal-summary-row[data-bc-preference="must"]:not(.has-clash)) > td {
  background: color-mix(in srgb, var(--bc-schedule-preference-color, var(--bc-festival-accent)) var(--bc-schedule-preference-mix, 18%), var(--bc-themed-schedule-row-shared)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-room-summary-row.has-clash, .bc-personal-summary-row.has-clash, .clash-row) > td {
  background: var(--bc-themed-schedule-row-clash) !important;
  color: var(--bc-app-text) !important;
  box-shadow: inset 3px 0 0 var(--bc-pick-red, #ef4444) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-planner-schedule-card, .bc-group-schedule-panel) .schedule-table td[style*="color:#64748b"],
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-clash-with-cell, .bc-schedule-preview-note, .bc-schedule-preview-row td) {
  color: var(--bc-themed-schedule-muted) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.clash-pill, .bc-personal-summary-status, .bc-room-summary-status, .bc-schedule-preview-btn) {
  border: 1px solid color-mix(in srgb, var(--bc-festival-accent) 42%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-festival-accent) 18%, var(--bc-app-panel-strong) 82%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.clash-pill.bad, .bc-personal-summary-status.has-clash, .bc-room-summary-status.has-clash) {
  border-color: color-mix(in srgb, var(--bc-pick-red, #ef4444) 56%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-pick-red, #ef4444) 20%, var(--bc-app-panel-strong) 80%) !important;
  color: var(--bc-pick-red-strong, #b91c1c) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-personal-summary-status.is-picked, .bc-room-summary-status.is-picked, .bc-room-summary-status.is-shared) {
  border-color: color-mix(in srgb, var(--bc-pick-green, #22c55e) 48%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-pick-green, #22c55e) 16%, var(--bc-app-panel-strong) 84%) !important;
  color: var(--bc-pick-green-strong, #15803d) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-group-schedule-members, .bc-group-schedule-reopen) {
  border-color: var(--bc-themed-schedule-panel-border) !important;
  background: color-mix(in srgb, var(--bc-app-panel-strong) 80%, var(--bc-festival-accent) 20%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-group-schedule-members, .bc-room-summary-members) .bc-room-member-chip,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-personal-member-chip, .bc-personal-summary-status, .bc-room-summary-status) {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 42%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-app-panel-strong) 72%, var(--bc-festival-accent) 28%) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow).bc-group-schedule-expanded .bc-group-schedule-panel,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-group-schedule-panel.bc-schedule-fullscreen {
  background:
    radial-gradient(circle at 18% 12%, color-mix(in srgb, var(--bc-festival-accent) 24%, transparent), transparent 34%),
    radial-gradient(circle at 86% 18%, color-mix(in srgb, var(--bc-festival-deep) 52%, transparent), transparent 36%),
    linear-gradient(135deg,
      color-mix(in srgb, var(--bc-festival-deep) 86%, var(--bc-festival-accent) 14%) 0%,
      color-mix(in srgb, var(--bc-festival-deep) 64%, var(--bc-festival-accent) 36%) 100%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-card {
  border-color: var(--bc-stage-card-border) !important;
  border-left-color: var(--bc-stage-card-accent, var(--stage-accent, var(--bc-app-accent))) !important;
  background: var(--bc-stage-card-bg) !important;
  color: var(--bc-stage-card-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(.bc-stage-time-row, .bc-stage-row) {
  background: color-mix(in srgb, var(--bc-app-panel) 88%, var(--bc-festival-accent) 12%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-stage-row:nth-child(even) {
  background: color-mix(in srgb, var(--bc-app-panel) 94%, var(--bc-festival-accent) 6%) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-themed-field-bg: color-mix(in srgb, var(--bc-app-panel) 86%, var(--bc-festival-accent) 14%);
  --bc-themed-field-bg-strong: color-mix(in srgb, var(--bc-app-panel-strong) 82%, var(--bc-festival-accent) 18%);
  --bc-themed-field-border: color-mix(in srgb, var(--bc-festival-accent) 36%, var(--bc-app-border));
  --bc-themed-field-track: color-mix(in srgb, var(--bc-app-panel) 74%, var(--bc-festival-accent) 26%);
  --bc-themed-field-thumb: color-mix(in srgb, var(--bc-festival-accent) 58%, var(--bc-app-muted));
}

html.table-page[data-bc-theme="dark"]:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) {
  --bc-themed-field-bg: color-mix(in srgb, var(--bc-app-panel) 82%, var(--bc-festival-accent) 18%);
  --bc-themed-field-bg-strong: color-mix(in srgb, var(--bc-app-panel-strong) 76%, var(--bc-festival-accent) 24%);
  --bc-themed-field-border: color-mix(in srgb, var(--bc-festival-accent) 46%, var(--bc-app-border));
  --bc-themed-field-track: color-mix(in srgb, var(--bc-app-panel) 68%, var(--bc-festival-accent) 32%);
  --bc-themed-field-thumb: color-mix(in srgb, var(--bc-festival-accent) 64%, var(--bc-app-muted));
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero p {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 42%, rgba(255, 255, 255, 0.24)) !important;
  border-left-color: var(--bc-festival-accent) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--bc-festival-deep) 72%, var(--bc-festival-accent) 28%) 0%,
      color-mix(in srgb, var(--bc-festival-deep) 52%, var(--bc-festival-accent) 48%) 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--bc-festival-accent) 22%, rgba(7, 12, 26, 0.22)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-event-changelog {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 48%, rgba(255, 255, 255, 0.26)) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--bc-festival-deep) 66%, var(--bc-festival-accent) 34%) 0%,
      color-mix(in srgb, var(--bc-festival-deep) 44%, var(--bc-festival-accent) 56%) 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--bc-festival-accent) 24%, rgba(7, 12, 26, 0.22)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-event-changelog span,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-event-changelog strong {
  color: #ffffff !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .bc-event-changelog span {
  opacity: 0.82;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(#tableWrap.table-wrap, .table-wrap, .artist-list) {
  border-color: var(--bc-themed-field-border) !important;
  background:
    linear-gradient(180deg, var(--bc-themed-field-bg-strong) 0%, var(--bc-themed-field-bg) 100%) !important;
  color: var(--bc-app-text) !important;
  scrollbar-color: var(--bc-themed-field-thumb) var(--bc-themed-field-track);
  box-shadow:
    0 1px 0 color-mix(in srgb, var(--bc-app-panel-strong) 70%, transparent) inset,
    0 12px 28px color-mix(in srgb, var(--bc-festival-accent) 14%, rgba(15, 23, 42, 0.10)) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(#tableWrap.table-wrap, .artist-list)::-webkit-scrollbar-track {
  background: var(--bc-themed-field-track) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) :is(#tableWrap.table-wrap, .artist-list)::-webkit-scrollbar-thumb {
  border-color: var(--bc-themed-field-track) !important;
  background: var(--bc-themed-field-thumb) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) #tableWrap .timetable-grid {
  background: var(--bc-themed-field-bg) !important;
  color: var(--bc-app-text) !important;
}

html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) #tableWrap .timetable-grid tbody td:not(.set-cell):not(.time-cell),
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) #tableWrap .timetable-grid tbody td.empty {
  border-color: color-mix(in srgb, var(--bc-festival-accent) 22%, var(--bc-app-border)) !important;
  background: color-mix(in srgb, var(--bc-themed-field-bg) 84%, var(--bc-app-panel-strong) 16%) !important;
  color: var(--bc-app-muted) !important;
}

html.table-page .artist-item input[type="checkbox"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  box-sizing: border-box !important;
  display: grid !important;
  place-content: center !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  flex: 0 0 24px !important;
  margin: 0 !important;
  border: 1px solid color-mix(in srgb, var(--bc-app-accent, #0f766e) 46%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 20%, transparent), transparent 54%),
    color-mix(in srgb, var(--bc-app-panel-strong, #ffffff) 62%, var(--bc-app-accent, #0f766e) 38%) !important;
  color: color-mix(in srgb, var(--bc-app-text, #0f172a) 74%, #ffffff 26%) !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, #ffffff 26%, transparent),
    0 2px 7px color-mix(in srgb, var(--bc-app-accent, #0f766e) 22%, rgba(15, 23, 42, 0.14)) !important;
  cursor: pointer !important;
}

html.table-page .artist-item input[type="checkbox"]::before {
  content: "\2605";
  font-size: 14px;
  font-weight: 900;
  line-height: 1;
  opacity: 0.84;
  transform: translateY(-0.5px) scale(0.92);
}

html.table-page .artist-item input[type="checkbox"]:hover {
  border-color: var(--bc-app-accent, #0f766e) !important;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 26%, transparent), transparent 54%),
    color-mix(in srgb, var(--bc-app-panel-strong, #ffffff) 48%, var(--bc-app-accent, #0f766e) 52%) !important;
}

html.table-page .artist-item input[type="checkbox"]:checked {
  border-color: var(--bc-app-accent-strong, var(--bc-app-accent, #0f766e)) !important;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 32%, transparent), transparent 54%),
    linear-gradient(135deg, var(--bc-app-accent, #0f766e), var(--bc-app-accent-strong, #115e59)) !important;
  color: #ffffff !important;
  box-shadow:
    inset 0 0 0 2px color-mix(in srgb, #ffffff 24%, transparent),
    0 0 0 3px color-mix(in srgb, var(--bc-app-accent, #0f766e) 22%, transparent),
    0 3px 9px color-mix(in srgb, var(--bc-app-accent, #0f766e) 30%, rgba(15, 23, 42, 0.18)) !important;
}

html.table-page .artist-item input[type="checkbox"]:checked::before {
  opacity: 1;
  transform: translateY(-0.5px) scale(1);
  text-shadow: 0 1px 6px rgba(15, 23, 42, 0.28);
}

html.table-page .artist-item input[type="checkbox"]:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--bc-app-accent, #0f766e) 72%, #ffffff 28%) !important;
  outline-offset: 3px !important;
}

html.table-page[data-bc-theme="dark"] .artist-item input[type="checkbox"] {
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 14%, transparent), transparent 54%),
    color-mix(in srgb, var(--bc-app-panel-strong, #172f37) 46%, var(--bc-app-accent, #0f766e) 54%) !important;
  color: color-mix(in srgb, #ffffff 86%, var(--bc-app-accent-strong, #5eead4) 14%) !important;
}

html.table-page {
  --bc-pick-red: #ef4444;
  --bc-pick-red-strong: #b91c1c;
  --bc-pick-yellow: #f59e0b;
  --bc-pick-yellow-strong: #b45309;
  --bc-pick-green: #22c55e;
  --bc-pick-green-strong: #15803d;
}

html.table-page[data-bc-theme="dark"] {
  --bc-pick-red: #f87171;
  --bc-pick-red-strong: #ef4444;
  --bc-pick-yellow: #facc15;
  --bc-pick-yellow-strong: #eab308;
  --bc-pick-green: #4ade80;
  --bc-pick-green-strong: #22c55e;
}

html.table-page .artist-list .artist-item:nth-child(odd) {
  --bc-artist-row-bg: color-mix(in srgb, var(--bc-app-panel, #f8fafc) 92%, var(--bc-themed-field-bg, var(--bc-app-accent, #0f766e)) 8%);
  --bc-artist-row-bg-strong: color-mix(in srgb, var(--bc-app-panel-strong, #ffffff) 94%, var(--bc-themed-field-bg-strong, var(--bc-app-accent, #0f766e)) 6%);
}

html.table-page .artist-list .artist-item:nth-child(even) {
  --bc-artist-row-bg: color-mix(in srgb, var(--bc-themed-field-bg, var(--bc-app-panel, #f8fafc)) 74%, var(--bc-app-panel-strong, #ffffff) 26%);
  --bc-artist-row-bg-strong: color-mix(in srgb, var(--bc-themed-field-bg-strong, var(--bc-app-panel-strong, #ffffff)) 88%, var(--bc-festival-accent, var(--bc-app-accent, #0f766e)) 12%);
}

html.table-page[data-bc-theme="dark"] .artist-list .artist-item:nth-child(odd) {
  --bc-artist-row-bg: color-mix(in srgb, var(--bc-app-panel, #12262d) 88%, var(--bc-themed-field-bg, var(--bc-app-accent, #0f766e)) 12%);
  --bc-artist-row-bg-strong: color-mix(in srgb, var(--bc-app-panel-strong, #172f37) 90%, var(--bc-themed-field-bg-strong, var(--bc-app-accent, #0f766e)) 10%);
}

html.table-page[data-bc-theme="dark"] .artist-list .artist-item:nth-child(even) {
  --bc-artist-row-bg: color-mix(in srgb, var(--bc-themed-field-bg, var(--bc-app-panel, #12262d)) 80%, var(--bc-app-panel-strong, #172f37) 20%);
  --bc-artist-row-bg-strong: color-mix(in srgb, var(--bc-themed-field-bg-strong, var(--bc-app-panel-strong, #172f37)) 82%, var(--bc-festival-accent, var(--bc-app-accent, #0f766e)) 18%);
}

html.table-page .artist-item,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference] {
  --bc-pick-state: var(--bc-app-accent, #0f766e);
  --bc-pick-state-strong: var(--bc-app-accent-strong, #115e59);
  --bc-pick-state-row-base: 92%;
  --bc-pick-state-row-mix: 8%;
  --bc-pick-state-edge-mix: 38%;
  border-color: color-mix(in srgb, var(--bc-pick-state) 30%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--bc-artist-row-bg-strong, var(--bc-app-panel-strong, #ffffff)) var(--bc-pick-state-row-base), var(--bc-pick-state) var(--bc-pick-state-row-mix)) 0%,
      color-mix(in srgb, var(--bc-artist-row-bg, var(--bc-app-panel, #f8fafc)) 90%, var(--bc-pick-state) 10%) 100%) !important;
  box-shadow: inset 3px 0 0 color-mix(in srgb, var(--bc-pick-state) var(--bc-pick-state-edge-mix), transparent) !important;
}

html.table-page .artist-item[data-bc-preference="not"],
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference="not"] {
  --bc-pick-state: var(--bc-pick-red);
  --bc-pick-state-strong: var(--bc-pick-red-strong);
  --bc-pick-state-row-base: 78%;
  --bc-pick-state-row-mix: 22%;
  --bc-pick-state-edge-mix: 100%;
}

html.table-page .artist-item[data-bc-preference="maybe"],
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference="maybe"] {
  --bc-pick-state: var(--bc-pick-yellow);
  --bc-pick-state-strong: var(--bc-pick-yellow-strong);
  --bc-pick-state-row-base: 80%;
  --bc-pick-state-row-mix: 20%;
  --bc-pick-state-edge-mix: 100%;
}

html.table-page .artist-item[data-bc-preference="must"],
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference="must"] {
  --bc-pick-state: var(--bc-pick-green);
  --bc-pick-state-strong: var(--bc-pick-green-strong);
  --bc-pick-state-row-base: 76%;
  --bc-pick-state-row-mix: 24%;
  --bc-pick-state-edge-mix: 100%;
}

html.table-page .artist-item[data-bc-preference="not"],
html.table-page .artist-item[data-bc-preference="maybe"],
html.table-page .artist-item[data-bc-preference="must"] {
  border-color: color-mix(in srgb, var(--bc-pick-state) 62%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  box-shadow:
    inset 4px 0 0 var(--bc-pick-state),
    0 0 0 1px color-mix(in srgb, var(--bc-pick-state) 16%, transparent) !important;
}

html.table-page .artist-item:hover,
html.table-page .artist-item:focus-within,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference]:hover,
html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .artist-item[data-bc-preference]:focus-within {
  border-color: color-mix(in srgb, var(--bc-pick-state) 58%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background:
    linear-gradient(135deg,
      color-mix(in srgb, var(--bc-artist-row-bg-strong, var(--bc-app-panel-strong, #ffffff)) 82%, var(--bc-pick-state) 18%) 0%,
      color-mix(in srgb, var(--bc-artist-row-bg, var(--bc-app-panel, #f8fafc)) 76%, var(--bc-pick-state) 24%) 100%) !important;
}

html.table-page .artist-item input[type="checkbox"] {
  border-color: color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 58%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 26%, transparent), transparent 54%),
    linear-gradient(135deg, var(--bc-pick-state, var(--bc-app-accent, #0f766e)), var(--bc-pick-state-strong, var(--bc-app-accent-strong, #115e59))) !important;
  color: #ffffff !important;
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, #ffffff 28%, transparent),
    0 2px 7px color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 26%, rgba(15, 23, 42, 0.16)) !important;
}

html.table-page .artist-item input[type="checkbox"]::before {
  content: "\2606";
}

html.table-page .artist-item[data-bc-preference="not"] input[type="checkbox"]::before,
html.table-page .artist-item[data-bc-preference="maybe"] input[type="checkbox"]::before,
html.table-page .artist-item[data-bc-preference="must"] input[type="checkbox"]::before {
  content: "\2605";
  opacity: 1;
  transform: translateY(-0.5px) scale(1);
  text-shadow: 0 1px 6px rgba(15, 23, 42, 0.28);
}

html.table-page .artist-item input[type="checkbox"]:checked,
html.table-page .artist-item input[type="checkbox"]:not(:checked):hover,
html.table-page .artist-item:hover input[type="checkbox"],
html.table-page .artist-item:focus-within input[type="checkbox"] {
  border-color: color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 70%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background:
    radial-gradient(circle at 35% 28%, color-mix(in srgb, #ffffff 34%, transparent), transparent 54%),
    linear-gradient(135deg, var(--bc-pick-state, var(--bc-app-accent, #0f766e)), var(--bc-pick-state-strong, var(--bc-app-accent-strong, #115e59))) !important;
}

html.table-page .artist-item input[type="checkbox"]:checked {
  box-shadow:
    inset 0 0 0 2px color-mix(in srgb, #ffffff 24%, transparent),
    0 0 0 3px color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 22%, transparent),
    0 3px 9px color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 32%, rgba(15, 23, 42, 0.18)) !important;
}

html.table-page .artist-item input[type="checkbox"]:focus-visible {
  outline-color: color-mix(in srgb, var(--bc-pick-state, var(--bc-app-accent, #0f766e)) 76%, #ffffff 24%) !important;
}

html.table-page :is(#tableWrap .set-cell[data-bc-preference="maybe"], .bc-stage-card[data-bc-preference="maybe"]) {
  --bc-selection-priority: var(--bc-pick-yellow);
}

html.table-page :is(#tableWrap .set-cell[data-bc-preference="must"], .bc-stage-card[data-bc-preference="must"]) {
  --bc-selection-priority: var(--bc-pick-green);
}

html.table-page :is(#tableWrap .set-cell[data-bc-preference="not"], .bc-stage-card[data-bc-preference="not"]) {
  --bc-selection-priority: var(--bc-pick-red);
}

html.table-page #tableWrap .set-cell[data-bc-preference="maybe"].selected,
html.table-page #tableWrap .set-cell[data-bc-preference="must"].selected,
html.table-page #tableWrap .set-cell[data-bc-preference="not"],
html.table-page .bc-stage-card[data-bc-preference="maybe"].is-selected,
html.table-page .bc-stage-card[data-bc-preference="must"].is-selected,
html.table-page .bc-stage-card[data-bc-preference="not"] {
  box-shadow:
    inset 0 0 0 2px color-mix(in srgb, var(--bc-selection-priority) 78%, #ffffff 22%),
    inset 0 0 0 9999px color-mix(in srgb, var(--bc-selection-priority) 22%, transparent),
    0 0 0 1px color-mix(in srgb, var(--bc-selection-priority) 28%, transparent) !important;
}

html.table-page .bc-must-see-star[data-bc-preference="maybe"] {
  border-color: color-mix(in srgb, var(--bc-pick-yellow) 68%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background: color-mix(in srgb, var(--bc-pick-yellow) 18%, var(--bc-app-panel-strong, #ffffff) 82%) !important;
  color: var(--bc-pick-yellow-strong) !important;
}

html.table-page .bc-must-see-star[data-bc-preference="must"] {
  border-color: color-mix(in srgb, var(--bc-pick-green) 72%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background: color-mix(in srgb, var(--bc-pick-green) 22%, var(--bc-app-panel-strong, #ffffff) 78%) !important;
  color: var(--bc-pick-green-strong) !important;
}

html.table-page .bc-must-see-star[data-bc-preference="not"] {
  border-color: color-mix(in srgb, var(--bc-pick-red) 72%, var(--bc-app-border, rgba(15, 23, 42, 0.18))) !important;
  background: color-mix(in srgb, var(--bc-pick-red) 22%, var(--bc-app-panel-strong, #ffffff) 78%) !important;
  color: var(--bc-pick-red-strong) !important;
}

/* The event directory keeps its own page background; these accents follow the same poster identities. */
html:not(.table-page) .event-card-rebirth { --event-card-theme-accent: #d21cff; border-color: rgba(210, 28, 255, 0.48); background: linear-gradient(180deg, rgba(210, 28, 255, 0.18), rgba(255, 255, 255, 0.06)); }
html:not(.table-page) .event-card-rebirth::before { background: linear-gradient(90deg, #d21cff, #51ff55, #22d3ee); }
html:not(.table-page) .event-card-intents { --event-card-theme-accent: #f26722; border-color: rgba(242, 103, 34, 0.5); background: linear-gradient(180deg, rgba(8, 127, 154, 0.2), rgba(242, 103, 34, 0.12)); }
html:not(.table-page) .event-card-intents::before { background: linear-gradient(90deg, #08a7c4, #f26722, #4f46e5); }
html:not(.table-page) .event-card-defqon { --event-card-theme-accent: #e30613; border-color: rgba(227, 6, 19, 0.55); background: linear-gradient(180deg, rgba(5, 3, 3, 0.24), rgba(227, 6, 19, 0.16), rgba(255, 90, 20, 0.12)); }
html:not(.table-page) .event-card-defqon::before { background: linear-gradient(90deg, #050303, #e30613, #ff5a14, #f7f2ef); }
html:not(.table-page) .event-card-dominator { --event-card-theme-accent: #e4a31a; border-color: rgba(228, 163, 26, 0.5); background: linear-gradient(180deg, rgba(185, 76, 10, 0.2), rgba(228, 163, 26, 0.12)); }
html:not(.table-page) .event-card-dominator::before { background: linear-gradient(90deg, #0b5660, #b94c0a, #e4a31a); }
html:not(.table-page) .event-card-decibel { --event-card-theme-accent: #008f83; border-color: rgba(0, 143, 131, 0.5); background: linear-gradient(180deg, rgba(0, 143, 131, 0.2), rgba(191, 59, 131, 0.1)); }
html:not(.table-page) .event-card-decibel::before { background: linear-gradient(90deg, #008f83, #7bcf69, #bf3b83); }
html:not(.table-page) .event-card-lowlands { --event-card-theme-accent: #ff3b24; border-color: rgba(255, 59, 36, 0.52); background: linear-gradient(180deg, rgba(255, 59, 36, 0.18), rgba(107, 34, 201, 0.12)); }
html:not(.table-page) .event-card-lowlands::before { background: linear-gradient(90deg, #ff3b24, #6b22c9, #04a66a); }
html:not(.table-page) .event-card-rainbow { --event-card-theme-accent: #06b6d4; border-color: rgba(14, 165, 233, 0.5); background: linear-gradient(180deg, rgba(14, 165, 233, 0.16), rgba(225, 29, 72, 0.1)); }
html:not(.table-page) .event-card-rainbow::before { background: linear-gradient(90deg, #ef4444, #f59e0b, #22c55e, #06b6d4, #6366f1, #d946ef); }

html:not(.table-page) :is(.event-card-rebirth, .event-card-intents, .event-card-defqon, .event-card-dominator, .event-card-decibel, .event-card-lowlands, .event-card-rainbow):hover {
  border-color: var(--event-card-theme-accent, rgba(255, 255, 255, 0.42));
}

@media (max-width: 700px) {
  html.table-page:is(.festival-theme-rebirth, .festival-theme-intents, .festival-theme-defqon, .festival-theme-dominator, .festival-theme-decibel, .festival-theme-lowlands, .festival-theme-rainbow) .hero {
    min-height: 130px;
    background-position: 58% center;
  }
}
