:root, [data-theme="dark"] {
  --bg: #0f1117;
  --panel: #161b22;
  --panel-2: #21262d;
  --border: #30363d;
  --text: #e0e0e0;
  --text-soft: #c9d1d9;
  --text-muted: #8b949e;
  --table-bg: #0d1117;
  --table-alt: #161b22;
  --header-grad: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
}

[data-theme="light"] {
  --bg: #f6f8fa;
  --panel: #ffffff;
  --panel-2: #eaeef2;
  --border: #d0d7de;
  --text: #1f2328;
  --text-soft: #24292f;
  --text-muted: #656d76;
  --table-bg: #ffffff;
  --table-alt: #f6f8fa;
  --header-grad: linear-gradient(135deg, #e8eefc 0%, #d6e4ff 50%, #b9d3ff 100%);
}

body { margin: 0; background: var(--bg); }

/* ---- Dropdown theming (best effort; selectors differ between Dash versions) ---- */

/* Dash 2.x (react-select) */
.Select-control, .Select-menu-outer, .Select-menu, .VirtualizedSelectOption {
  background-color: var(--panel-2) !important;
  color: var(--text-soft) !important;
  border-color: var(--border) !important;
}
.Select-placeholder, .Select-value-label, .Select--single > .Select-control .Select-value {
  color: var(--text-soft) !important;
}
.VirtualizedSelectFocusedOption { background-color: var(--border) !important; }
.Select--multi .Select-value {
  background-color: var(--panel) !important;
  border-color: var(--border) !important;
  color: var(--text-soft) !important;
}

/* Dash 3.x dropdown */
.dash-dropdown, .dash-dropdown-content, .dash-dropdown-options, .dash-dropdown-search {
  background-color: var(--panel-2) !important;
  color: var(--text-soft) !important;
  border-color: var(--border) !important;
}
.dash-dropdown-option:hover { background-color: var(--border) !important; }
/* ---- Top-fires leaderboard rows ---- */
.top-fire-row {
  display: flex; align-items: center; gap: 10px; width: 100%;
  padding: 7px 8px; margin: 0; border: none; border-radius: 6px;
  border-bottom: 1px solid var(--border);
  background: none; color: var(--text); font: inherit; font-size: 13px;
  text-align: left; cursor: pointer;
}
.top-fire-row:hover { background: var(--panel-2); }
