body {
    font-family: system-ui, -apple-system, "Segoe UI", Helvetica, sans-serif;
    background: #0d1f3c !important;
    color: #e8edf3 !important;
    margin: 0;
}
/* Force dark background everywhere */
.dash-table-container, ._dash-loading, #react-entry-point, .container-fluid {
    background: #0d1f3c !important;
}
/* Override any white backgrounds from Dash defaults */
div, section, main, aside, article, p, span, label {
    color: #e8edf3;
}
h1, h2, h3, h4, h5, h6 { color: #dbad50 !important; }
/* Table styling */
.dash-table-container .dash-spreadsheet-container .dash-spreadsheet-inner th {
    background-color: #1a3761 !important;
    color: #dbad50 !important;
    border-bottom: 2px solid #dbad50 !important;
}
.dash-table-container .dash-spreadsheet-container .dash-spreadsheet-inner td {
    background-color: rgba(26,55,97,0.3) !important;
    color: #e8edf3 !important;
    border-bottom: 1px solid rgba(130,160,188,0.15) !important;
}
.dash-table-container .dash-spreadsheet-container .dash-spreadsheet-inner tr:hover td {
    background-color: rgba(26,55,97,0.6) !important;
}
/* Dropdown / Select */
.Select-control, .Select-menu-outer, .Select-menu, .Select-option {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
    border-color: rgba(130,160,188,0.25) !important;
}
.Select-value-label, .Select-placeholder, .Select-input input {
    color: #e8edf3 !important;
}
.Select-option.is-focused { background-color: rgba(219,173,80,0.2) !important; }
.Select-option.is-selected { background-color: rgba(219,173,80,0.3) !important; }
/* Date picker */
.DateInput_input, .DateInput {
    background: #1a3761 !important;
    color: #e8edf3 !important;
    border: 1px solid rgba(130,160,188,0.25) !important;
}
.SingleDatePickerInput, .DateRangePickerInput {
    background: #1a3761 !important;
    border: 1px solid rgba(130,160,188,0.25) !important;
}
.DateInput_input__focused { border-color: #dbad50 !important; }
/* Buttons */
button, .btn, input[type="button"] {
    background: #1a3761 !important;
    color: #e8edf3 !important;
    border: 1px solid rgba(130,160,188,0.25) !important;
    border-radius: 4px;
}
button:hover { background: rgba(219,173,80,0.2) !important; }
/* Radio items */
.form-check-label { color: #e8edf3 !important; }
.form-check-input:checked { background-color: #dbad50 !important; border-color: #dbad50 !important; }
/* Slider */
.rc-slider-track { background-color: #dbad50 !important; }
.rc-slider-handle { border-color: #dbad50 !important; background-color: #dbad50 !important; }
.rc-slider-rail { background-color: rgba(130,160,188,0.2) !important; }
.rc-slider-dot-active { border-color: #dbad50 !important; }
.rc-slider-mark-text { color: #82a0bc !important; }
/* Cards with white background - override */
.card, .card-body { background: rgba(26,55,97,0.4) !important; color: #e8edf3 !important; border: none !important; }
/* Override Bootstrap containers */
.container, .container-fluid, .row { background: transparent !important; }
/* Tooltip from slider */
.rc-slider-tooltip-inner { background: #1a3761 !important; color: #dbad50 !important; }

/* Fix dropdown white backgrounds */
.dash-dropdown .Select-control,
.dash-dropdown .Select-multi-value-wrapper,
.VirtualizedSelectOption,
.VirtualizedSelectFocusedOption {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
}
.Select-clear-zone, .Select-arrow-zone { color: #82a0bc !important; }
.Select.is-open > .Select-control { background: #1a3761 !important; }

/* Fix date range picker */
.DateRangePicker, .SingleDatePicker,
.DateRangePickerInput, .SingleDatePickerInput,
.DateInput, .DateInput_input,
.CalendarDay, .DayPicker {
    background: #1a3761 !important;
    color: #e8edf3 !important;
}
.DateInput_input { color: #e8edf3 !important; }
.DateRangePickerInput__withBorder,
.SingleDatePickerInput__withBorder {
    border-color: rgba(130,160,188,0.25) !important;
    background: #1a3761 !important;
}
.DateRangePickerInput_arrow_svg { fill: #82a0bc !important; }

/* Calendar popup dark theme */
.CalendarDay__default { background: #0d1f3c !important; color: #e8edf3 !important; border: 1px solid rgba(130,160,188,0.15) !important; }
.CalendarDay__selected { background: #dbad50 !important; color: #0d1f3c !important; }
.CalendarDay__hovered_span { background: rgba(219,173,80,0.2) !important; }
.CalendarMonth_caption { color: #e8edf3 !important; }
.DayPickerNavigation_button { background: #1a3761 !important; border: 1px solid rgba(130,160,188,0.25) !important; }
.DayPickerNavigation_svg__horizontal { fill: #82a0bc !important; }
.DayPicker__withBorder { background: #0d1f3c !important; border: 1px solid rgba(130,160,188,0.25) !important; box-shadow: 0 4px 20px rgba(0,0,0,0.5) !important; }
.CalendarMonth { background: #0d1f3c !important; }

/* Metric cards - boost contrast */
.card .card-body h4, .card .card-body p { color: #e8edf3 !important; }

/* Filter section background */
.dash-dropdown { background: #1a3761 !important; border-radius: 4px; }

/* Radio/checkbox labels brighter */
.form-check-label, label { color: #e8edf3 !important; font-weight: 500; }

/* Refresh button gold */
#refresh-btn { background: #dbad50 !important; color: #0d1f3c !important; font-weight: 700 !important; }
#refresh-btn:hover { background: #e8bd60 !important; }

/* Plotly chart backgrounds */
.js-plotly-plot .plotly .main-svg { background: transparent !important; }
.js-plotly-plot .plotly .bg { fill: rgba(26,55,97,0.3) !important; }

/* Table at bottom */
.dash-table-container { background: transparent !important; }
.cell-markdown { color: #e8edf3 !important; }

/* Scrollbar dark */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0d1f3c; }
::-webkit-scrollbar-thumb { background: #1a3761; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #dbad50; }

/* Nuclear option for remaining white elements */
input, select, textarea, .form-control {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
    border-color: rgba(130,160,188,0.25) !important;
}
input::placeholder { color: #82a0bc !important; }
/* Dash specific dropdown overrides */
.dash-dropdown .Select-control { background-color: #1a3761 !important; border-color: rgba(130,160,188,0.25) !important; }
.dash-dropdown .Select-value { color: #e8edf3 !important; }
.dash-dropdown .Select-input > input { color: #e8edf3 !important; }
.dash-dropdown .Select-noresults { color: #82a0bc !important; background: #1a3761 !important; }
/* Filter container */
.dash-dropdown, .DateInput_input, .DateRangePickerInput_clearDates {
    background: #1a3761 !important;
}

/* React-Select dropdown menu (portal/overlay) */
.Select-menu-outer, .Select-menu, .Select-option,
.VirtualizedSelectOption, .VirtualizedSelectFocusedOption,
div[class*="menu"], div[class*="option"],
.css-26l3qy-menu, .css-4ljt9a-MenuList,
[class*="-menu"], [class*="-option"], [class*="-MenuList"] {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
}
[class*="-option"]:hover, .Select-option.is-focused,
.VirtualizedSelectFocusedOption {
    background-color: rgba(219,173,80,0.25) !important;
    color: #fff !important;
}
[class*="-option"][class*="selected"], .Select-option.is-selected {
    background-color: rgba(219,173,80,0.4) !important;
}
/* React-Select control */
[class*="-control"], [class*="-ValueContainer"],
[class*="-singleValue"], [class*="-placeholder"],
[class*="-Input"] input, [class*="-indicatorContainer"] {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
}
[class*="-indicatorSeparator"] { background-color: rgba(130,160,188,0.25) !important; }

/* React-dates calendar popup */
.DayPicker, .DayPicker__withBorder,
.CalendarMonthGrid, .CalendarMonth,
.CalendarDay__default,
.DayPickerNavigation,
.DayPickerKeyboardShortcuts_panel {
    background: #0d1f3c !important;
    color: #e8edf3 !important;
}
.CalendarDay__default {
    background: #0d1f3c !important;
    color: #e8edf3 !important;
    border: 1px solid rgba(130,160,188,0.15) !important;
}
.CalendarDay__default:hover {
    background: rgba(219,173,80,0.2) !important;
    color: #fff !important;
}
.CalendarDay__selected, .CalendarDay__selected:hover {
    background: #dbad50 !important;
    color: #0d1f3c !important;
}
.CalendarDay__selected_span {
    background: rgba(219,173,80,0.3) !important;
}
.CalendarDay__blocked_out_of_range {
    background: rgba(26,55,97,0.2) !important;
    color: rgba(130,160,188,0.3) !important;
}
.CalendarMonth_caption strong {
    color: #e8edf3 !important;
}
.DayPickerNavigation_button__default {
    background: #1a3761 !important;
    border: 1px solid rgba(130,160,188,0.25) !important;
}
.DayPickerNavigation_button__default svg {
    fill: #82a0bc !important;
}
.DayPicker_weekHeader_li small {
    color: #82a0bc !important;
}
/* Calendar container shadow */
.DateRangePicker_picker, .SingleDatePicker_picker {
    background-color: #0d1f3c !important;
    border: 1px solid rgba(130,160,188,0.25) !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.6) !important;
}

/* Dash datepicker and input containers - the actual white culprits */
.dash-datepicker,
.dash-datepicker-content,
.dash-input-container,
.dash-input,
.dash-datepicker .calendar-body,
.dash-datepicker .calendar,
[id*="radix"] {
    background-color: #0d1f3c !important;
    color: #e8edf3 !important;
    border-color: rgba(130,160,188,0.25) !important;
}
/* Calendar days grid */
.dash-datepicker button,
.dash-datepicker td,
.dash-datepicker th {
    background-color: #0d1f3c !important;
    color: #e8edf3 !important;
    border-color: rgba(130,160,188,0.15) !important;
}
.dash-datepicker button:hover {
    background-color: rgba(219,173,80,0.2) !important;
}
.dash-datepicker button[data-selected] {
    background-color: #dbad50 !important;
    color: #0d1f3c !important;
}
/* Nuclear: any remaining white */
.dash-datepicker *, .dash-dropdown * {
    background-color: inherit;
}

/* The ACTUAL white culprits */
.dash-dropdown-content,
.dash-dropdown-grid-container,
.dash-dropdown-search-container,
.dash-datepicker {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
}
/* Dropdown list items */
.dash-dropdown-content div,
.dash-dropdown-content span,
.dash-dropdown-grid-container div,
.dash-dropdown-grid-container input {
    background-color: #1a3761 !important;
    color: #e8edf3 !important;
}
/* Hover on dropdown items */
.dash-dropdown-content div:hover {
    background-color: rgba(219,173,80,0.25) !important;
}

/* Slider tooltip */
.dash-slider-tooltip, .dash-slider-tooltip * {
    background-color: #1a3761 !important;
    color: #dbad50 !important;
    border-color: rgba(130,160,188,0.25) !important;
}
