/* BI Dashboard — Purple Theme */

.dashboard-container-bi {
  --bi-purple: #800080;
  --bi-purple-dark: #5c0060;
  --bi-purple-deep: #3d0040;
  --bi-purple-light: #b366b3;
  --bi-purple-pale: #f3e8ff;
  --bi-purple-soft: #faf7fd;
  --bi-bg: #f4f6f9;
  --bi-surface: #ffffff;
  --bi-text: #2d1b4e;
  --bi-text-muted: #6b5b7a;
  --bi-border: rgba(128, 0, 128, 0.14);
  --bi-shadow: 0 4px 24px rgba(128, 0, 128, 0.1);
  --bi-shadow-sm: 0 2px 12px rgba(128, 0, 128, 0.08);
  --bi-radius: 12px;
  --bi-radius-lg: 16px;
  --bi-btn-active-bg: #e2e8f0;
  --bi-btn-active-border: #c5ced9;
  --bi-btn-active-text: #1e293b;
  --bi-btn-hover-bg: #f1f5f9;

  background: var(--bi-bg) !important;
  color: var(--bi-text) !important;
  min-height: 100vh !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
}

/* Loader */
.bi-loader-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 320px !important;
  width: 100% !important;
  padding: 2rem !important;
}

.bi-loader-wrap .container {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.bi-loader-wrap .row {
  margin: 0 !important;
  background: var(--bi-surface) !important;
  border-radius: var(--bi-radius-lg) !important;
  padding: 2.5rem 3.5rem !important;
  box-shadow: var(--bi-shadow) !important;
  border: 2px solid var(--bi-border) !important;
  flex-direction: column !important;
  align-items: center !important;
}

.bi-loader-wrap .col-lg-2 {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: none !important;
}

.bi-loader-label {
  margin-top: 1rem !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  color: var(--bi-purple) !important;
  letter-spacing: 0.02em !important;
}

.dashboard-container-bi .bi-loader-wrap {
  min-height: 400px !important;
}

/* Header — title and tabs on one line */
.header-bi {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 1.25rem !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  padding: 0.75rem 1.5rem !important;
  background: #ffffff !important;
  border-bottom: 1px solid #e5e7eb !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.04) !important;
  box-sizing: border-box !important;
}

.header-left-bi {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  flex-shrink: 0 !important;
  padding-bottom: 0 !important;
}

.header-bi > div:empty {
  display: none !important;
}

.logo-bi {
  background: linear-gradient(135deg, var(--bi-purple-dark), var(--bi-purple)) !important;
  color: #fff !important;
  width: 44px !important;
  height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 10px !important;
  font-weight: 700 !important;
  font-size: 1.1rem !important;
  border: none !important;
  box-shadow: 0 2px 8px rgba(128, 0, 128, 0.25) !important;
}

.title-bi {
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: var(--bi-purple-dark) !important;
  letter-spacing: -0.01em !important;
}

/* Tab bar — inline with heading */
.nav-tabs-bi {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0.35rem !important;
  flex-wrap: wrap !important;
  flex: 1 !important;
  min-width: 0 !important;
  background: #f4f6f9 !important;
  padding: 0.4rem 0.6rem !important;
  border-radius: 8px !important;
  border: 1px solid #e5e7eb !important;
  margin: 0 !important;
}

.tab-btn-bi {
  padding: 0.55rem 1.1rem !important;
  background: transparent !important;
  border: none !important;
  color: var(--bi-text-muted) !important;
  cursor: pointer !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  white-space: nowrap !important;
}

.tab-btn-bi:hover {
  background: #e8ecf1 !important;
  color: #334155 !important;
}

.tab-btn-bi.active-bi {
  background: var(--bi-purple) !important;
  color: #fff !important;
  font-weight: 700 !important;
  box-shadow: 0 2px 8px rgba(128, 0, 128, 0.3) !important;
}

/* Page content container */
.bi-page-container {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 0 1.5rem 2rem !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Filters */
.filters-section-bi {
  background: var(--bi-surface) !important;
  border: 1px solid #dde1e8 !important;
  padding: 1.25rem 2rem !important;
  margin: 1rem 0 0 !important;
  border-radius: var(--bi-radius) !important;
  box-shadow: var(--bi-shadow-sm) !important;
}

.filter-row-bi {
  display: flex !important;
  gap: 1.5rem !important;
  margin-bottom: 1rem !important;
  align-items: end !important;
  flex-wrap: wrap !important;
}

.filter-group-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
}

.filter-label-bi {
  font-size: 0.8rem !important;
  color: #000000 !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

.filter-select-bi {
  background: #ffffff !important;
  border: 1px solid #cccccc !important;
  color: #000000 !important;
  padding: 0.5rem 0.85rem !important;
  border-radius: 4px !important;
  font-size: 0.875rem !important;
  min-width: 150px !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}

.filter-select-bi option {
  color: #000000 !important;
  background: #ffffff !important;
}

.filter-select-bi:focus {
  outline: none !important;
  border-color: #999999 !important;
  box-shadow: none !important;
}

.filter-overview-input {
  min-width: 100px !important;
}

.market-flags-bi {
  display: flex !important;
  gap: 0.5rem !important;
  align-items: center !important;
}

.flag-bi {
  border: 2px solid var(--bi-border) !important;
  border-radius: 50% !important;
  width: 34px !important;
  height: 34px !important;
  cursor: pointer !important;
  padding: 3px !important;
  transition: border-color 0.2s, transform 0.2s !important;
  object-fit: cover !important;
}

.flag-bi:hover {
  border-color: #9ca3af !important;
  transform: scale(1.08) !important;
}

.period-filters-bi,
.period-filters-bi-onthebook {
  display: flex !important;
  gap: 0.5rem !important;
  /* margin-bottom: 0.5rem !important; */
  flex-wrap: wrap !important;
}

.period-filters-bi-onthebook {
  justify-content: center !important;
}

.period-filter-btn-bi {
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  color: #4b5563 !important;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.period-filter-btn-bi:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

.period-filter-btn-bi.active-bi,
.metric-filter-btn-bi.active-bi,
.time-filter-btn-bi.active-bi,
.dashboard-container-bi .chart-toggle-btn.active,
.dashboard-container-bi .chart-toggle-btn.active-bi,
.dashboard-container-bi .status-btn.active,
.dashboard-container-bi .year-btn.active,
.dashboard-container-bi .date-btn.active,
.markets-view-btn-bi.active-bi {
  background: var(--bi-btn-active-bg) !important;
  border-color: var(--bi-btn-active-border) !important;
  color: var(--bi-btn-active-text) !important;
  font-weight: 600 !important;
  box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.06) !important;
}

.metric-filters-bi {
  display: flex !important;
  gap: 0.5rem !important;
  flex-wrap: wrap !important;
}

.metric-filter-btn-bi {
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  color: #4b5563 !important;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.metric-filter-btn-bi:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

.filter-icon-bi {
  border: 1px solid #d1d5db !important;
  border-radius: 8px !important;
  padding: 6px 8px !important;
  background: #ffffff !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.filter-icon-bi:hover {
  background: #f1f5f9 !important;
  border-color: #9ca3af !important;
}

/* Metric cards — Overview sidebar */
.metrics-grid-bi {
  gap: 12px !important;
  padding: 1.25rem !important;
  display: grid !important;
}

.metric-card-bi {
  background: var(--bi-surface) !important;
  padding: 1.1rem 1.25rem !important;
  border-radius: var(--bi-radius) !important;
  border: 1px solid var(--bi-border) !important;
  border-left: 4px solid var(--bi-purple) !important;
  box-shadow: var(--bi-shadow-sm) !important;
  color: var(--bi-text) !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
}

.metric-card-bi:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--bi-shadow) !important;
}

.metric-card-bi.bookings-bi,
.metric-card-bi.revenue-bi,
.metric-card-bi.adr-bi {
  background: linear-gradient(135deg, #fff 0%, var(--bi-purple-pale) 100%) !important;
  color: var(--bi-text) !important;
  border-left-color: #10b981 !important;
}

.metric-card-bi.cancellations-bi {
  background: linear-gradient(135deg, #fff 0%, #fce8f0 100%) !important;
  color: var(--bi-text) !important;
  border-left-color: #ef4444 !important;
}

.metric-card-bi.room-nights-bi {
  background: var(--bi-surface) !important;
  border: 1px solid var(--bi-border) !important;
  border-left: 4px solid var(--bi-purple-light) !important;
}

.metric-header-bi {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.metric-title-bi {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: var(--bi-text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
}

.trend-icon-bi.up-bi { color: #10b981 !important; }
.trend-icon-bi.down-bi { color: #ef4444 !important; }
.trend-icon-bi.neutral-bi { color: var(--bi-text-muted) !important; }

.metric-value-bi {
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  margin: 0.35rem 0 !important;
  color: var(--bi-purple-dark) !important;
}

.metric-comparison-bi {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  font-size: 0.82rem !important;
}

.prev-value-bi {
  color: var(--bi-text-muted) !important;
}

.change-positive-bi { color: #059669 !important; font-weight: 600 !important; }
.change-negative-bi { color: #dc2626 !important; font-weight: 600 !important; }
.change-neutral-bi { color: var(--bi-text-muted) !important; font-weight: 600 !important; }

/* Charts */
.charts-section-bi {
  padding: 0.75rem 1.25rem 1.25rem !important;
}

.chart-container-bi {
  background: var(--bi-surface) !important;
  border-radius: var(--bi-radius) !important;
  padding: 1.25rem 1.5rem !important;
  border: 1px solid var(--bi-border) !important;
  box-shadow: var(--bi-shadow-sm) !important;
  width: 100% !important;
}

.chart-header-bi {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 0.75rem !important;
  flex-wrap: wrap !important;
  gap: 0.5rem !important;
}

.chart-title-bi {
  font-size: 1rem !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: var(--bi-purple-dark) !important;
}

.chart-legend-bi {
  display: flex !important;
  gap: 1rem !important;
  font-size: 0.8rem !important;
  color: var(--bi-text-muted) !important;
}

.legend-item-bi {
  display: flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
}

.legend-dot-bi.revenue-bi { background: var(--bi-purple) !important; }
.legend-dot-bi.prev-bi { background: #9ca3af !important; }
.legend-dot-bi.variance-bi { background: #f59e0b !important; }

.time-filters-bi {
  display: flex !important;
  justify-content: center !important;
  gap: 0.5rem !important;
  margin-top: 1rem !important;
  padding-top: 1rem !important;
  border-top: 1px solid var(--bi-border) !important;
  flex-wrap: wrap !important;
}

.time-filter-btn-bi {
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  color: #4b5563 !important;
  padding: 0.45rem 1.25rem !important;
  border-radius: 8px !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
  min-width: 90px !important;
}

.time-filter-btn-bi:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

.chart-toggle-icons-bi {
  display: flex !important;
  gap: 8px !important;
  margin-bottom: 10px !important;
}

.chart-toggle-btn {
  padding: 6px 14px !important;
  border: 1px solid #dde1e8 !important;
  background: #f8f9fb !important;
  color: var(--bi-text-muted) !important;
  cursor: pointer !important;
  border-radius: 8px !important;
  font-weight: 500 !important;
  transition: all 0.2s !important;
}

.dashboard-container-bi .chart-toggle-btn:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

/* Business Results */
.business-results-container,
.monthly-status-container,
.markets-container-bi {
  padding: 1.25rem 0 !important;
  background: transparent !important;
  min-height: auto !important;
}

.business-results-table-container,
.business-results-chart-section,
.monthly-view-section {
  background: var(--bi-surface) !important;
  border-radius: var(--bi-radius) !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  box-shadow: var(--bi-shadow-sm) !important;
  border: 1px solid var(--bi-border) !important;
  margin-bottom: 1.5rem !important;
}

.business-results-chart-section {
  padding: 1.25rem !important;
}

.business-results-table,
.monthly-table {
  min-width: 1000px !important;
  width: 100% !important;
}

.business-results-table th {
  background: linear-gradient(180deg, var(--bi-purple-pale) 0%, #ede0f5 100%) !important;
  color: var(--bi-purple-dark) !important;
  font-weight: 700 !important;
  border-bottom: 2px solid var(--bi-border) !important;
}

.business-results-table td {
  color: var(--bi-text) !important;
  border-bottom: 1px solid #f0eaf5 !important;
}

.business-results-table tbody tr:hover td {
  background: var(--bi-purple-soft) !important;
}

.business-results-table .total-row {
  background: var(--bi-purple-pale) !important;
  border-top: 2px solid var(--bi-purple-light) !important;
}

.business-results-table .positive { color: #059669 !important; }
.business-results-table .negative { color: #dc2626 !important; }

/* Monthly Status */
.monthly-status-header,
.markets-header-controls-bi {
  background: var(--bi-surface) !important;
  padding: 1.1rem 1.25rem !important;
  border-radius: var(--bi-radius) !important;
  margin-bottom: 1.25rem !important;
  box-shadow: var(--bi-shadow-sm) !important;
  border: 1px solid var(--bi-border) !important;
}

.header-controls {
  display: flex !important;
  gap: 1.5rem !important;
  align-items: center !important;
  margin-bottom: 0 !important;
  flex-wrap: wrap !important;
}

.control-group span {
  font-size: 13px !important;
  color: #000000 !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

.dashboard-container-bi .status-buttons span,
.dashboard-container-bi .year-buttons span,
.dashboard-container-bi .date-controls span {
  font-size: 12px !important;
  color: #000000 !important;
  font-weight: 600 !important;
}

.section-header {
  background: linear-gradient(180deg, var(--bi-purple-pale) 0%, #fff 100%) !important;
  padding: 1rem 1.25rem !important;
  border-bottom: 1px solid var(--bi-border) !important;
}

.section-title {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--bi-purple-dark) !important;
  margin: 0 0 0.75rem 0 !important;
}

.status-btn,
.year-btn,
.date-btn {
  padding: 5px 14px !important;
  border: 1px solid #d1d5db !important;
  background: #ffffff !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #4b5563 !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.status-btn:hover,
.year-btn:hover,
.date-btn:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

.monthly-table th {
  background: var(--bi-purple-pale) !important;
  color: var(--bi-purple-dark) !important;
  border-color: var(--bi-border) !important;
}

.monthly-table td {
  color: var(--bi-text) !important;
  border-color: #f0eaf5 !important;
}

.month-header,
.month-cell {
  background: var(--bi-purple-soft) !important;
  color: var(--bi-purple-dark) !important;
  font-weight: 600 !important;
}

/* Filter panel */
.dashboard-container-bi .filters-section-bi[style*="relative"] {
  margin: 1rem 0 !important;
}

.filter_return_arrow {
  border: 1px solid var(--bi-border) !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  cursor: pointer !important;
  position: absolute !important;
  right: 12px !important;
  top: 12px !important;
  font-size: 12px !important;
  background: var(--bi-purple-soft) !important;
  color: var(--bi-purple) !important;
  font-weight: 600 !important;
  display: flex !important;
  align-items: center !important;
}

.filter_return_arrow:hover {
  background: var(--bi-purple-pale) !important;
}

.filter-heading {
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  border-left: 3px solid var(--bi-purple) !important;
  padding-left: 10px !important;
  color: var(--bi-purple-dark) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.btn-apply {
  background: linear-gradient(135deg, var(--bi-purple-dark), var(--bi-purple)) !important;
  color: #fff !important;
  border: none !important;
  padding: 10px 28px !important;
  border-radius: 8px !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  cursor: pointer !important;
  transition: opacity 0.2s, transform 0.2s !important;
  letter-spacing: 0.04em !important;
}

.btn-apply:hover {
  opacity: 0.92 !important;
  transform: translateY(-1px) !important;
}

.btn-clear {
  background: var(--bi-purple-pale) !important;
  color: var(--bi-purple) !important;
  border: 1px solid var(--bi-border) !important;
}

.filter_dropdown_bi,
.filter_dropdown_bi_tab2 {
  color: #000000 !important;
}

/* MultiSelect — only inside BI content areas (not header hotel select) */
.dashboard-container-bi .filters-section-bi .rmsc,
.dashboard-container-bi .filter-rows-wrapper .rmsc,
.dashboard-container-bi .monthly-status-header .rmsc,
.dashboard-container-bi .markets-header-controls-bi .rmsc,
.dashboard-container-bi .rmsc.filter_dropdown_bi,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 {
  --rmsc-main: #333333;
  --rmsc-hover: #f5f5f5;
  --rmsc-selected: #f0f0f0;
  --rmsc-border: #cccccc;
  --rmsc-gray: #000000;
  --rmsc-bg: #ffffff;
  --rmsc-p: 8px;
  --rmsc-radius: 4px;
}

.dashboard-container-bi .filters-section-bi .rmsc .dropdown-heading,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-heading,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-heading,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-heading,
.dashboard-container-bi .rmsc.filter_dropdown_bi .dropdown-heading,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 .dropdown-heading {
  background: #ffffff !important;
  /* border: 1px solid #cccccc !important; */
  color: #000000 !important;
  min-height: 34px !important;
  border-radius: 4px !important;
}

.dashboard-container-bi .filters-section-bi .rmsc .dropdown-heading:hover,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-heading:hover,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-heading:hover,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-heading:hover,
.dashboard-container-bi .rmsc.filter_dropdown_bi .dropdown-heading:hover,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 .dropdown-heading:hover {
  border-color: #999999 !important;
}

.dashboard-container-bi .filters-section-bi .rmsc .dropdown-heading-value,
.dashboard-container-bi .filters-section-bi .rmsc .dropdown-heading-value span,
.dashboard-container-bi .filters-section-bi .rmsc .dropdown-heading .gray,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-heading-value,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-heading-value span,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-heading .gray,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-heading-value,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-heading-value span,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-heading .gray,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-heading-value,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-heading-value span,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-heading .gray,
.dashboard-container-bi .rmsc.filter_dropdown_bi .dropdown-heading-value,
.dashboard-container-bi .rmsc.filter_dropdown_bi .dropdown-heading-value span,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 .dropdown-heading-value,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 .dropdown-heading-value span,
.dashboard-container-bi .filters-section-bi .rmsc .item-renderer,
.dashboard-container-bi .filters-section-bi .rmsc .item-renderer span,
.dashboard-container-bi .filter-rows-wrapper .rmsc .item-renderer,
.dashboard-container-bi .filter-rows-wrapper .rmsc .item-renderer span,
.dashboard-container-bi .monthly-status-header .rmsc .item-renderer,
.dashboard-container-bi .monthly-status-header .rmsc .item-renderer span,
.dashboard-container-bi .markets-header-controls-bi .rmsc .item-renderer,
.dashboard-container-bi .markets-header-controls-bi .rmsc .item-renderer span,
.dashboard-container-bi .rmsc.filter_dropdown_bi .item-renderer,
.dashboard-container-bi .rmsc.filter_dropdown_bi .item-renderer span,
.dashboard-container-bi .filters-section-bi .rmsc .select-item,
.dashboard-container-bi .filters-section-bi .rmsc .select-item span,
.dashboard-container-bi .filter-rows-wrapper .rmsc .select-item,
.dashboard-container-bi .filter-rows-wrapper .rmsc .select-item span,
.dashboard-container-bi .monthly-status-header .rmsc .select-item,
.dashboard-container-bi .monthly-status-header .rmsc .select-item span,
.dashboard-container-bi .markets-header-controls-bi .rmsc .select-item,
.dashboard-container-bi .markets-header-controls-bi .rmsc .select-item span,
.dashboard-container-bi .rmsc.filter_dropdown_bi .select-item,
.dashboard-container-bi .rmsc.filter_dropdown_bi .select-item span {
  color: #000000 !important;
}

.dashboard-container-bi .filters-section-bi .rmsc .dropdown-container,
.dashboard-container-bi .filter-rows-wrapper .rmsc .dropdown-container,
.dashboard-container-bi .monthly-status-header .rmsc .dropdown-container,
.dashboard-container-bi .markets-header-controls-bi .rmsc .dropdown-container,
.dashboard-container-bi .rmsc.filter_dropdown_bi .dropdown-container,
.dashboard-container-bi .rmsc.filter_dropdown_bi_tab2 .dropdown-container {
  background: #ffffff !important;
  /* border: 1px solid #cccccc !important; */
  color: #000000 !important;
}

.dashboard-container-bi .filters-section-bi .rmsc .select-item:hover,
.dashboard-container-bi .filter-rows-wrapper .rmsc .select-item:hover,
.dashboard-container-bi .monthly-status-header .rmsc .select-item:hover,
.dashboard-container-bi .markets-header-controls-bi .rmsc .select-item:hover,
.dashboard-container-bi .rmsc.filter_dropdown_bi .select-item:hover {
  background: #f5f5f5 !important;
}

.dashboard-container-bi .filters-section-bi .rmsc .select-item.selected,
.dashboard-container-bi .filter-rows-wrapper .rmsc .select-item.selected,
.dashboard-container-bi .monthly-status-header .rmsc .select-item.selected,
.dashboard-container-bi .markets-header-controls-bi .rmsc .select-item.selected,
.dashboard-container-bi .rmsc.filter_dropdown_bi .select-item.selected {
  background: #f0f0f0 !important;
}

/* Keep header hotel select purple */
.dashboard-container-bi .choose_hotel .dropdown-container {
  background-color: #9a5f9a !important;
  border: none !important;
  color: #ffffff !important;
}

.dashboard-container-bi .choose_hotel .gray,
.dashboard-container-bi .choose_hotel .dropdown-heading .dropdown-heading-value span {
  color: #ffffff !important;
}

/* Markets */
.markets-content-layout-bi {
  display: flex !important;
  gap: 1rem !important;
  align-items: flex-start !important;
}

.markets-sidebar-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  min-width: 150px !important;
}

.markets-view-btn-bi {
  background: #ffffff !important;
  border: 1px solid #d1d5db !important;
  color: #4b5563 !important;
  padding: 10px 14px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
  text-align: left !important;
  transition: all 0.2s !important;
}

.markets-view-btn-bi:hover {
  background: var(--bi-btn-hover-bg) !important;
  border-color: #cbd5e1 !important;
  color: var(--bi-btn-active-text) !important;
}

.markets-country-cell-bi {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.markets-flag-img-bi {
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid var(--bi-border) !important;
}

.metric-bar-bg-bi {
  background: var(--bi-purple-pale) !important;
}

.metric-bar-fill-bi {
  background: linear-gradient(90deg, var(--bi-purple-light), var(--bi-purple)) !important;
}

.trend-circle-bi.up-bi {
  background: #d1fae5 !important;
  color: #059669 !important;
}

.trend-circle-bi.down-bi {
  background: #fee2e2 !important;
  color: #dc2626 !important;
}

.trend-circle-bi.neutral-bi {
  background: var(--bi-purple-pale) !important;
  color: var(--bi-text-muted) !important;
}

.markets-date-range-bi {
  font-size: 12px !important;
  color: var(--bi-text-muted) !important;
  padding: 0 0.25rem !important;
}

.markets-status-group-bi .status-buttons {
  display: flex !important;
  gap: 8px !important;
}

/* Sales Boost */
.sales-boost-container-bi {
  padding: 1.25rem 0 !important;
}

.sales-boost-date-row-bi {
  display: flex !important;
  gap: 1rem !important;
  flex-wrap: wrap !important;
  margin-bottom: 1rem !important;
}

.sales-boost-date-chip-bi {
  background: var(--bi-surface) !important;
  border: 1px solid var(--bi-border) !important;
  border-radius: var(--bi-radius) !important;
  box-shadow: var(--bi-shadow-sm) !important;
  padding: 0.85rem 1rem !important;
  min-width: 240px !important;
}

.sales-boost-date-label-bi {
  display: block !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: var(--bi-text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.25rem !important;
}

.sales-boost-date-value-bi {
  color: var(--bi-purple-dark) !important;
  font-weight: 600 !important;
}

.sales-boost-grid-bi {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}

.sales-boost-card-bi {
  background: var(--bi-surface) !important;
  border: 1px solid var(--bi-border) !important;
  border-radius: var(--bi-radius) !important;
  box-shadow: var(--bi-shadow-sm) !important;
  padding: 1.1rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 1rem !important;
  min-height: 100% !important;
}

.sales-boost-card-header-bi {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
}

.sales-boost-card-title-bi {
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--bi-purple-dark) !important;
  margin: 0 !important;
}

.sales-boost-card-subtitle-bi {
  color: var(--bi-text-muted) !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
}

.sales-boost-primary-stat-bi,
.sales-boost-stat-box-bi {
  background: linear-gradient(180deg, #ffffff 0%, var(--bi-purple-soft) 100%) !important;
  border: 1px solid #ece2f5 !important;
  border-radius: 12px !important;
  padding: 0.9rem !important;
}

.sales-boost-label-bi {
  display: block !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  color: var(--bi-text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  margin-bottom: 0.3rem !important;
}

.sales-boost-primary-value-bi {
  font-size: 1.75rem !important;
  font-weight: 700 !important;
  color: var(--bi-purple-dark) !important;
  line-height: 1.1 !important;
}

.sales-boost-prev-bi {
  display: block !important;
  margin-top: 0.3rem !important;
  color: var(--bi-text-muted) !important;
  font-size: 0.82rem !important;
}

.sales-boost-change-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 28px !important;
  border-radius: 999px !important;
  padding: 0.3rem 0.7rem !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
}

.sales-boost-change-pill.positive {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.sales-boost-change-pill.negative {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}

.sales-boost-change-pill.neutral {
  background: var(--bi-purple-pale) !important;
  color: var(--bi-text-muted) !important;
}

.sales-boost-stat-grid-bi {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.85rem !important;
}

.sales-boost-stat-box-bi strong {
  display: block !important;
  font-size: 1.1rem !important;
  color: var(--bi-text) !important;
}

.sales-boost-progress-list-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.8rem !important;
}

.sales-boost-progress-item-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.35rem !important;
}

.sales-boost-progress-meta-bi {
  display: flex !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  color: var(--bi-text) !important;
  font-size: 0.86rem !important;
}

.sales-boost-progress-track-bi {
  height: 10px !important;
  background: #ede9f4 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.sales-boost-progress-fill-bi {
  height: 100% !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--bi-purple), #9b59b6) !important;
}

.sales-boost-market-list-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
}

.sales-boost-market-item-bi {
  width: 100% !important;
  background: #ffffff !important;
  border: 1px solid var(--bi-border) !important;
  border-radius: 12px !important;
  padding: 0.8rem 0.9rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.8rem !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  color: var(--bi-text) !important;
}

.sales-boost-market-item-bi:hover,
.sales-boost-market-item-bi.active {
  border-color: var(--bi-purple-light) !important;
  background: var(--bi-purple-soft) !important;
}

.sales-boost-market-info-bi {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
}

.sales-boost-market-info-bi strong {
  display: block !important;
  color: var(--bi-purple-dark) !important;
  line-height: 1.2 !important;
}

.sales-boost-market-info-bi span {
  color: var(--bi-text-muted) !important;
  font-size: 0.78rem !important;
}

.sales-boost-market-flag-bi {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  border: 1px solid #d9d2e6 !important;
}

.sales-boost-empty-bi {
  border: 1px dashed var(--bi-border) !important;
  border-radius: 12px !important;
  padding: 1rem !important;
  color: var(--bi-text-muted) !important;
  text-align: center !important;
}

/* Responsive */
@media (max-width: 1024px) {
  .filter-row-bi {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .header-bi {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0.75rem 1rem 0 !important;
  }

  .header-left-bi {
    padding-bottom: 0.75rem !important;
  }

  .nav-tabs-bi {
    width: 100% !important;
    margin: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    justify-content: center !important;
  }

  .sales-boost-grid-bi {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .filters-section-bi {
    margin: 0.75rem 0 0 !important;
    padding: 1rem !important;
  }

  .tab-btn-bi {
    padding: 0.5rem 0.75rem !important;
    font-size: 0.7rem !important;
  }

  .markets-content-layout-bi {
    flex-direction: column-reverse !important;
  }

  .markets-sidebar-bi {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    width: 100% !important;
  }

  .sales-boost-grid-bi,
  .sales-boost-stat-grid-bi {
    grid-template-columns: 1fr !important;
  }

  .sales-boost-date-chip-bi {
    min-width: 100% !important;
  }
}

/* Sales Boost hard overrides */
.dashboard-container-bi .sales-boost-container-bi {
  width: 100% !important;
  padding: 1rem 0 1.5rem !important;
  overflow-x: auto !important;
}

.dashboard-container-bi .sales-boost-date-row-bi {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  margin-bottom: 1rem !important;
}

.dashboard-container-bi .sales-boost-date-chip-bi {
  background: #ffffff !important;
  border: 1px solid #e5d8ec !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(92, 0, 96, 0.08) !important;
  padding: 0.9rem 1rem !important;
  min-width: 0 !important;
}

.dashboard-container-bi .sales-boost-date-label-bi {
  display: block !important;
  margin-bottom: 0.35rem !important;
  color: #7b6b87 !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.dashboard-container-bi .sales-boost-date-value-bi {
  display: block !important;
  color: #3b2a4e !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

.dashboard-container-bi .sales-boost-grid-bi {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(220px, 1fr)) !important;
  gap: 0.75rem !important;
  align-items: stretch !important;
  min-width: 980px !important;
}

.dashboard-container-bi .sales-boost-card-bi {
  background: #ffffff !important;
  border: 1px solid #e5d8ec !important;
  border-radius: 14px !important;
  box-shadow: 0 2px 12px rgba(92, 0, 96, 0.08) !important;
  padding: 0.85rem !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.7rem !important;
  min-height: 0 !important;
}

.dashboard-container-bi .sales-boost-card-header-bi {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
}

.dashboard-container-bi .sales-boost-card-title-bi {
  margin: 0 !important;
  color: #5c0060 !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
}

.dashboard-container-bi .sales-boost-card-subtitle-bi {
  color: #7b6b87 !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
}

.dashboard-container-bi .sales-boost-primary-stat-bi,
.dashboard-container-bi .sales-boost-stat-box-bi {
  background: #faf7fd !important;
  border: 1px solid #eee3f4 !important;
  border-radius: 12px !important;
  padding: 0.75rem !important;
}

.dashboard-container-bi .sales-boost-label-bi {
  display: block !important;
  margin-bottom: 0.3rem !important;
  color: #7b6b87 !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.dashboard-container-bi .sales-boost-primary-value-bi {
  color: #2d1b4e !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  margin-bottom: 0.2rem !important;
}

.dashboard-container-bi .sales-boost-prev-bi {
  display: block !important;
  color: #7b6b87 !important;
  font-size: 0.84rem !important;
  line-height: 1.35 !important;
  margin-top: 0.25rem !important;
}

.dashboard-container-bi .sales-boost-stat-grid-bi {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.8rem !important;
}

.dashboard-container-bi .sales-boost-stat-box-bi strong {
  display: block !important;
  color: #2d1b4e !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
  margin-bottom: 0.15rem !important;
}

.dashboard-container-bi .sales-boost-change-pill {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0.3rem 0.7rem !important;
  border-radius: 999px !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.dashboard-container-bi .sales-boost-change-pill.positive {
  background: #dcfce7 !important;
  color: #15803d !important;
}

.dashboard-container-bi .sales-boost-change-pill.negative {
  background: #fee2e2 !important;
  color: #b91c1c !important;
}

.dashboard-container-bi .sales-boost-change-pill.neutral {
  background: #f3e8ff !important;
  color: #6b5b7a !important;
}

.dashboard-container-bi .sales-boost-progress-list-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
}

.dashboard-container-bi .sales-boost-progress-item-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.4rem !important;
}

.dashboard-container-bi .sales-boost-progress-meta-bi {
  display: flex !important;
  justify-content: space-between !important;
  gap: 0.75rem !important;
  color: #2d1b4e !important;
  font-size: 0.86rem !important;
  font-weight: 500 !important;
}

.dashboard-container-bi .sales-boost-progress-track-bi {
  height: 8px !important;
  background: #ede4f2 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.dashboard-container-bi .sales-boost-progress-fill-bi {
  height: 100% !important;
  background: linear-gradient(90deg, #800080, #b366b3) !important;
  border-radius: 999px !important;
}

.dashboard-container-bi .sales-boost-market-list-bi {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.75rem !important;
}

.dashboard-container-bi button.sales-boost-market-item-bi {
  width: 100% !important;
  border: 1px solid #e5d8ec !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #2d1b4e !important;
  box-shadow: none !important;
  padding: 0.65rem 0.75rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.6rem !important;
  text-align: left !important;
}

.dashboard-container-bi button.sales-boost-market-item-bi.active,
.dashboard-container-bi button.sales-boost-market-item-bi:hover {
  background: #faf7fd !important;
  border-color: #cfa9da !important;
}

.dashboard-container-bi .sales-boost-market-info-bi {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
}

.dashboard-container-bi .sales-boost-market-info-bi strong {
  display: block !important;
  color: #5c0060 !important;
  font-size: 0.92rem !important;
  line-height: 1.25 !important;
}

.dashboard-container-bi .sales-boost-market-info-bi span {
  display: block !important;
  color: #7b6b87 !important;
  font-size: 0.78rem !important;
  line-height: 1.2 !important;
}

.dashboard-container-bi .sales-boost-market-flag-bi {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  border: 1px solid #dbc8e3 !important;
}

.dashboard-container-bi .sales-boost-empty-bi {
  border: 1px dashed #d8c5e0 !important;
  border-radius: 12px !important;
  padding: 1rem !important;
  color: #7b6b87 !important;
  text-align: center !important;
}

@media (max-width: 1024px) {
  .dashboard-container-bi .sales-boost-date-row-bi {
    grid-template-columns: 1fr !important;
  }

  .dashboard-container-bi .sales-boost-grid-bi {
    grid-template-columns: repeat(4, minmax(220px, 1fr)) !important;
  }
}
