/* =============================================================================
   BTS dark theme — slate + teal (matches Gentelella sidebar #2A3F54 / accent #1ABB9C)
   Applied via html[data-bts-theme="dark"]
   ============================================================================= */

html[data-bts-theme="dark"] {
    --bts-bg: #0f1419;
    --bts-surface: #161b22;
    --bts-surface-raised: #1c2330;
    --bts-surface-overlay: #243044;
    --bts-border: #303847;
    --bts-border-light: #3d4a5c;
    --bts-border-subtle: #252d3a;
    --bts-text: #e6edf3;
    --bts-text-secondary: #adbac7;
    --bts-text-muted: #768390;
    --bts-accent: #3dd6b5;
    --bts-accent-hover: #5eead4;
    --bts-accent-soft: rgba(61, 214, 181, 0.14);
    --bts-link: #56d4bb;
    --bts-danger: #f87171;
    --bts-warning: #fbbf24;
    --bts-success: #4ade80;
    --bts-info: #60a5fa;
    color-scheme: dark;
}

/* --- Base layout --- */
html[data-bts-theme="dark"] body {
    background: var(--bts-bg);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] body .container.body .right_col {
    background: var(--bts-surface);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .nav_menu {
    background: var(--bts-surface-raised);
    border-bottom: 1px solid var(--bts-border);
}

/* --- Top navigation --- */
html[data-bts-theme="dark"] .top_nav a.user-profile,
html[data-bts-theme="dark"] .top_nav .user-profile.dropdown-toggle,
html[data-bts-theme="dark"] .top_nav .nav.toggle a,
html[data-bts-theme="dark"] .top_nav .info-number,
html[data-bts-theme="dark"] .top_nav .info-number i,
html[data-bts-theme="dark"] .top_nav .nav.navbar-nav > li > a {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .top_nav .nav .open > a,
html[data-bts-theme="dark"] .top_nav .nav .open > a:focus,
html[data-bts-theme="dark"] .top_nav .nav .open > a:hover,
html[data-bts-theme="dark"] .top_nav .nav > li > a:hover,
html[data-bts-theme="dark"] .top_nav .nav > li > a:focus {
    background: var(--bts-accent-soft) !important;
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .top_nav .navbar-nav .open .dropdown-menu,
html[data-bts-theme="dark"] .top_nav .dropdown-menu,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu,
html[data-bts-theme="dark"] .dropdown-menu {
    background: var(--bts-surface-overlay) !important;
    border: 1px solid var(--bts-border) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.45);
}

html[data-bts-theme="dark"] .top_nav .dropdown-menu .dropdown-item,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu .dropdown-item,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu a,
html[data-bts-theme="dark"] .top_nav .dropdown-menu li a,
html[data-bts-theme="dark"] .dropdown-menu .dropdown-item,
html[data-bts-theme="dark"] .dropdown-menu > li > a {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .top_nav .dropdown-menu .dropdown-item:hover,
html[data-bts-theme="dark"] .top_nav .dropdown-menu .dropdown-item:focus,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu .dropdown-item:hover,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu .dropdown-item:focus,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu a:hover,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu a:focus,
html[data-bts-theme="dark"] .top_nav .dropdown-menu li a:hover,
html[data-bts-theme="dark"] .top_nav .dropdown-menu li a:focus,
html[data-bts-theme="dark"] .dropdown-menu .dropdown-item:hover,
html[data-bts-theme="dark"] .dropdown-menu .dropdown-item:focus,
html[data-bts-theme="dark"] .dropdown-menu > li > a:hover,
html[data-bts-theme="dark"] .dropdown-menu > li > a:focus {
    background: var(--bts-surface-raised) !important;
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .dropdown-menu .dropdown-item .fa,
html[data-bts-theme="dark"] .dropdown-menu.dropdown-usermenu a .fa {
    color: var(--bts-text-secondary) !important;
}

/* --- Panels & typography --- */
html[data-bts-theme="dark"] .x_panel {
    background: var(--bts-surface-raised);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .x_title {
    border-bottom-color: var(--bts-border);
}

html[data-bts-theme="dark"] .x_title h2,
html[data-bts-theme="dark"] .page-title h3,
html[data-bts-theme="dark"] h1,
html[data-bts-theme="dark"] h2,
html[data-bts-theme="dark"] h3,
html[data-bts-theme="dark"] h4 {
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .x_title span {
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] .right_col a:not(.btn):not(.dropdown-item):not(.site_title) {
    color: var(--bts-link);
}

html[data-bts-theme="dark"] .right_col a:not(.btn):not(.dropdown-item):hover {
    color: var(--bts-accent-hover);
}

html[data-bts-theme="dark"] .text-muted {
    color: var(--bts-text-muted) !important;
}

html[data-bts-theme="dark"] .ln_solid {
    border-top-color: var(--bts-border);
    background-color: transparent;
}

/* --- Dashboard stat tiles --- */
html[data-bts-theme="dark"] .tile_count .tile_stats_count {
    border-bottom-color: var(--bts-border);
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count:before {
    border-left-color: var(--bts-border-light);
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count .count {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count .count_top,
html[data-bts-theme="dark"] .tile_count .tile_stats_count .count_top i,
html[data-bts-theme="dark"] .tile_count .tile_stats_count .count_bottom,
html[data-bts-theme="dark"] .tile_count .tile_stats_count .count_bottom i {
    color: var(--bts-text-secondary) !important;
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count .count.green {
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count .count.red,
html[data-bts-theme="dark"] .count.balance-negative {
    color: var(--bts-danger) !important;
}

html[data-bts-theme="dark"] .tile_count .tile_stats_count span,
html[data-bts-theme="dark"] .count_top,
html[data-bts-theme="dark"] .count_bottom {
    color: var(--bts-text-secondary) !important;
}

html[data-bts-theme="dark"] .count_bottom i.green {
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .count_bottom i.red {
    color: var(--bts-danger) !important;
}

html[data-bts-theme="dark"] .tile-stats,
html[data-bts-theme="dark"] .dashboard-widget,
html[data-bts-theme="dark"] .widget_summary {
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .tile-stats .count,
html[data-bts-theme="dark"] .dashboard-widget .count {
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .dashboard_graph {
    background: var(--bts-surface-raised);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] #chart-restore-bar.alert-info strong {
    color: #dbeafe;
}

/* --- Dept dashboard mini stats --- */
html[data-bts-theme="dark"] .dept-mini-stat {
    background: var(--bts-surface-overlay);
    border-color: var(--bts-border);
}

html[data-bts-theme="dark"] .dept-mini-stat .label-text,
html[data-bts-theme="dark"] .dept-panel-section-title,
html[data-bts-theme="dark"] .bts-dashboard-empty {
    color: var(--bts-text-secondary) !important;
}

html[data-bts-theme="dark"] .dept-mini-stat .value-text {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .dept-mini-stat.balance-negative .value-text,
html[data-bts-theme="dark"] td.balance-negative {
    color: var(--bts-danger) !important;
}

html[data-bts-theme="dark"] .x_content .table.table-striped td {
    color: var(--bts-text) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] footer,
html[data-bts-theme="dark"] footer .pull-right {
    color: var(--bts-text-muted) !important;
}

/* --- Reports --- */
html[data-bts-theme="dark"] .report-stat {
    background: var(--bts-surface-overlay);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .report-stat .label-text,
html[data-bts-theme="dark"] .report-overview-note {
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] .report-stat .value-text {
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .report-stat.balance-negative .value-text {
    color: var(--bts-danger);
}

html[data-bts-theme="dark"] .report-stat.pending .value-text {
    color: var(--bts-warning);
}

html[data-bts-theme="dark"] .report-badge-danger {
    color: var(--bts-danger);
}

html[data-bts-theme="dark"] .report-badge-warn {
    color: var(--bts-warning);
}

html[data-bts-theme="dark"] .report-quicklink {
    background: var(--bts-surface-overlay);
    border-color: var(--bts-border);
    color: var(--bts-text-secondary);
}

html[data-bts-theme="dark"] .report-quicklink:hover {
    background: var(--bts-accent-soft);
    border-color: var(--bts-accent);
    color: var(--bts-accent);
}

html[data-bts-theme="dark"] .report-table td.cell-link a:hover {
    background: var(--bts-surface-overlay);
}

html[data-bts-theme="dark"] .report-stat-link:hover .report-stat {
    border-color: var(--bts-accent);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

/* --- Tables --- */
html[data-bts-theme="dark"] .table,
html[data-bts-theme="dark"] .table > tbody > tr > td,
html[data-bts-theme="dark"] .table > tbody > tr > th,
html[data-bts-theme="dark"] .table > thead > tr > td,
html[data-bts-theme="dark"] .table > thead > tr > th {
    color: var(--bts-text);
    border-color: var(--bts-border);
}

html[data-bts-theme="dark"] .table thead th {
    color: var(--bts-text-secondary);
    background: var(--bts-surface-overlay);
}

html[data-bts-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, 0.02);
}

html[data-bts-theme="dark"] .table-striped > tbody > tr:nth-of-type(even) {
    background-color: rgba(255, 255, 255, 0.045);
}

html[data-bts-theme="dark"] .table-hover > tbody > tr:hover {
    background-color: var(--bts-accent-soft);
    color: var(--bts-text);
}

/* jambo_table — main data lists (expenditure, budget, users, etc.) */
html[data-bts-theme="dark"] table.jambo_table {
    border-color: var(--bts-border);
    background: var(--bts-surface-raised);
}

html[data-bts-theme="dark"] table.jambo_table thead,
html[data-bts-theme="dark"] table.jambo_table thead tr.headings {
    background: var(--bts-surface-overlay) !important;
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] table.jambo_table thead th,
html[data-bts-theme="dark"] table.jambo_table thead .column-title,
html[data-bts-theme="dark"] table.jambo_table tbody th {
    color: var(--bts-text) !important;
    background: var(--bts-surface-overlay) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] table.jambo_table tbody td {
    color: var(--bts-text) !important;
    background-color: var(--bts-surface-raised) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] table.jambo_table.table-striped > tbody > tr:nth-of-type(odd) > td,
html[data-bts-theme="dark"] table.jambo_table.table-striped > tbody > tr:nth-of-type(odd) > th {
    background-color: var(--bts-surface) !important;
}

html[data-bts-theme="dark"] table.jambo_table.table-striped > tbody > tr:nth-of-type(even) > td,
html[data-bts-theme="dark"] table.jambo_table.table-striped > tbody > tr:nth-of-type(even) > th {
    background-color: var(--bts-surface-overlay) !important;
}

html[data-bts-theme="dark"] table.jambo_table tbody tr:hover > td,
html[data-bts-theme="dark"] table.jambo_table tbody tr:hover > th {
    background: var(--bts-accent-soft) !important;
    color: var(--bts-text) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] table.jambo_table tbody tr.selected,
html[data-bts-theme="dark"] table.jambo_table tbody tr.selected td {
    background: rgba(61, 214, 181, 0.18) !important;
    border-color: var(--bts-accent) !important;
    color: var(--bts-text) !important;
}

/* Expandable department expenditure list (section head / FC) */
html[data-bts-theme="dark"] .dept-exp-row td:first-child:before {
    color: var(--bts-text-secondary);
}

html[data-bts-theme="dark"] .dept-exp-detail > td {
    background: var(--bts-surface) !important;
}

html[data-bts-theme="dark"] .dept-exp-detail .sub-table th {
    background: var(--bts-surface-overlay) !important;
    color: var(--bts-text) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .dept-exp-detail .sub-table td {
    background: var(--bts-surface-raised) !important;
    color: var(--bts-text) !important;
    border-top-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .dept-exp-detail .sub-table tbody tr:hover td {
    background: var(--bts-accent-soft) !important;
}

html[data-bts-theme="dark"] .dept-exp-detail .pending-label {
    color: var(--bts-warning);
}

html[data-bts-theme="dark"] .dept-exp-detail .exp-list-meta,
html[data-bts-theme="dark"] .bts-list-empty {
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] .sub-table {
    border-color: var(--bts-border);
    border-top-color: var(--bts-border-light);
}

html[data-bts-theme="dark"] .sub-table th,
html[data-bts-theme="dark"] .sub-table td {
    color: var(--bts-text) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .bts-settings-table th {
    color: var(--bts-text-secondary);
}

/* --- Forms --- */
html[data-bts-theme="dark"] .form-control,
html[data-bts-theme="dark"] select.form-control,
html[data-bts-theme="dark"] textarea.form-control {
    background: var(--bts-bg);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .form-control:focus,
html[data-bts-theme="dark"] select.form-control:focus,
html[data-bts-theme="dark"] textarea.form-control:focus {
    background: var(--bts-bg);
    border-color: var(--bts-accent);
    color: var(--bts-text);
    box-shadow: 0 0 0 0.2rem rgba(61, 214, 181, 0.2);
}

html[data-bts-theme="dark"] .form-control::placeholder {
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] label,
html[data-bts-theme="dark"] .col-form-label,
html[data-bts-theme="dark"] .control-label {
    color: var(--bts-text-secondary);
}

/* --- Buttons --- */
html[data-bts-theme="dark"] .btn-default,
html[data-bts-theme="dark"] .btn-secondary {
    background: var(--bts-surface-overlay);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .btn-default:hover,
html[data-bts-theme="dark"] .btn-secondary:hover {
    background: var(--bts-surface-raised);
    border-color: var(--bts-border-light);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .btn-success {
    background: #1a9b7f;
    border-color: #17896f;
}

html[data-bts-theme="dark"] .btn-success:hover {
    background: var(--bts-accent);
    border-color: var(--bts-accent);
    color: #0f1419;
}

html[data-bts-theme="dark"] .btn-primary {
    background: #2563eb;
    border-color: #1d4ed8;
}

html[data-bts-theme="dark"] .btn-primary:hover {
    background: #3b82f6;
    border-color: #2563eb;
}

/* --- Semantic text colours --- */
html[data-bts-theme="dark"] .green {
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .red {
    color: var(--bts-danger) !important;
}

html[data-bts-theme="dark"] .blue {
    color: var(--bts-info) !important;
}

html[data-bts-theme="dark"] .dark {
    color: var(--bts-text-secondary) !important;
}

/* --- Alerts --- */
html[data-bts-theme="dark"] .alert-info {
    background: rgba(96, 165, 250, 0.12);
    border-color: rgba(96, 165, 250, 0.35);
    color: #bfdbfe;
}

html[data-bts-theme="dark"] .alert-success {
    background: rgba(74, 222, 128, 0.1);
    border-color: rgba(74, 222, 128, 0.35);
    color: #bbf7d0;
}

html[data-bts-theme="dark"] .alert-danger {
    background: rgba(248, 113, 113, 0.12);
    border-color: rgba(248, 113, 113, 0.35);
    color: #fecaca;
}

html[data-bts-theme="dark"] .alert-warning {
    background: rgba(251, 191, 36, 0.1);
    border-color: rgba(251, 191, 36, 0.35);
    color: #fde68a;
}

/* --- Footer & panel tools --- */
html[data-bts-theme="dark"] footer {
    background: var(--bts-surface-raised);
    border-top: 1px solid var(--bts-border);
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] .panel_toolbox > li > a,
html[data-bts-theme="dark"] .collapse-link {
    color: var(--bts-text-muted);
}

html[data-bts-theme="dark"] .panel_toolbox > li > a:hover,
html[data-bts-theme="dark"] .collapse-link:hover {
    color: var(--bts-accent);
    background: var(--bts-accent-soft);
}

/* --- Charts --- */
html[data-bts-theme="dark"] [id*="chart"],
html[data-bts-theme="dark"] [id*="barchart"],
html[data-bts-theme="dark"] [id*="piechart"] {
    background: transparent !important;
}

/* Google Charts renders axis/value labels as SVG text with inline dark fills */
html[data-bts-theme="dark"] .x_content [id*="chart"] svg text,
html[data-bts-theme="dark"] .x_content [id*="barchart"] svg text,
html[data-bts-theme="dark"] .x_content [id*="piechart"] svg text,
html[data-bts-theme="dark"] .right_col [id*="barchart"] svg text,
html[data-bts-theme="dark"] .right_col [id*="piechart"] svg text {
    fill: #e6edf3 !important;
}

html[data-bts-theme="dark"] .x_content [id*="piechart"] svg text[fill="#ffffff"],
html[data-bts-theme="dark"] .x_content [id*="piechart"] svg text[fill="#fff"],
html[data-bts-theme="dark"] .right_col [id*="piechart"] svg text[fill="#ffffff"],
html[data-bts-theme="dark"] .right_col [id*="piechart"] svg text[fill="#fff"] {
    fill: #ffffff !important;
}

/* Google Charts hover tooltips — requires tooltip.isHtml=true (set in bts-charts.js) */
html[data-bts-theme="dark"] .google-visualization-tooltip {
    background-color: #1c2330 !important;
    background: #1c2330 !important;
    border: 1px solid #3d4a5c !important;
    color: #e6edf3 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5) !important;
    padding: 8px 10px !important;
    pointer-events: none !important;
}

html[data-bts-theme="dark"] .google-visualization-tooltip ul,
html[data-bts-theme="dark"] .google-visualization-tooltip li {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    list-style: none !important;
}

html[data-bts-theme="dark"] .google-visualization-tooltip span {
    color: #e6edf3 !important;
}

html[data-bts-theme="dark"] .google-visualization-legend-text {
    fill: #e6edf3 !important;
    color: #e6edf3 !important;
}

html[data-bts-theme="dark"] .google-visualization-tooltip svg text {
    fill: #e6edf3 !important;
}

/* --- DataTables (common pages) --- */
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_length,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_filter,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_info,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate,
html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging {
    color: var(--bts-text-secondary);
}

/* --- Settings theme picker (shared light/dark) --- */
.bts-theme-options {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.bts-theme-option {
    flex: 1 1 140px;
    margin: 0;
    cursor: pointer;
    position: relative;
}

.bts-theme-option input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.bts-theme-option__card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 96px;
    padding: 14px 10px;
    border: 2px solid #d9dee4;
    border-radius: 8px;
    background: #fff;
    color: #2a3f54;
    font-weight: 600;
    text-align: center;
    transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.bts-theme-option__card i {
    font-size: 22px;
}

.bts-theme-option input:checked + .bts-theme-option__card {
    border-color: #1abb9c;
    background: rgba(26, 187, 156, 0.08);
    box-shadow: 0 0 0 1px rgba(26, 187, 156, 0.25);
}

.bts-theme-option__card:hover {
    border-color: #1abb9c;
}

html[data-bts-theme="dark"] .bts-theme-option__card {
    background: var(--bts-surface-overlay);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .bts-theme-option input:checked + .bts-theme-option__card {
    background: var(--bts-accent-soft);
    border-color: var(--bts-accent);
    color: var(--bts-accent);
}

html[data-bts-theme="dark"] .bts-theme-form__label {
    color: var(--bts-text);
}

/* --- Labels & badges --- */
html[data-bts-theme="dark"] .label-success,
html[data-bts-theme="dark"] .badge-success {
    background: rgba(74, 222, 128, 0.18);
    color: #86efac;
}

html[data-bts-theme="dark"] .label-warning,
html[data-bts-theme="dark"] .badge-warning {
    background: rgba(251, 191, 36, 0.18);
    color: #fcd34d;
}

html[data-bts-theme="dark"] .label-danger,
html[data-bts-theme="dark"] .badge-danger {
    background: rgba(248, 113, 113, 0.18);
    color: #fca5a5;
}

html[data-bts-theme="dark"] .label-info,
html[data-bts-theme="dark"] .badge-info {
    background: rgba(96, 165, 250, 0.18);
    color: #93c5fd;
}

html[data-bts-theme="dark"] .label-default {
    background: var(--bts-surface-overlay);
    color: var(--bts-text-secondary);
}

/* --- Modals --- */
html[data-bts-theme="dark"] .modal-content {
    background: var(--bts-surface-raised);
    border-color: var(--bts-border);
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .modal-header,
html[data-bts-theme="dark"] .modal-footer {
    border-color: var(--bts-border);
}

html[data-bts-theme="dark"] .modal-title {
    color: var(--bts-text);
}

html[data-bts-theme="dark"] .close {
    color: var(--bts-text-secondary);
    text-shadow: none;
    opacity: 0.8;
}

html[data-bts-theme="dark"] .close:hover {
    color: var(--bts-text);
    opacity: 1;
}

/* =============================================================================
   Pagination — fix Gentelella custom.min.css (#ddd bg + low-contrast active state)
   ============================================================================= */

.bts-pagination .pagination,
.dataTables_wrapper .dataTables_paginate .pagination,
.exp-list-pagination .pagination,
.exp-list-pending-pagination .pagination {
    margin-bottom: 0;
    gap: 0;
}

.dataTables_paginate.bts-pagination .page-link,
.dataTables_wrapper .dataTables_paginate .pagination .page-link,
.dataTables_wrapper .dataTables_paginate .page-link,
.dataTables_wrapper .dataTables_paginate a.paginate_button,
.exp-list-pagination .page-link,
.exp-list-pending-pagination .page-link {
    min-width: 2.25rem;
    padding: 0.4rem 0.65rem !important;
    text-align: center;
    font-weight: 500;
    line-height: 1.25;
    color: #2a3f54 !important;
    background-color: #fff !important;
    border: 1px solid #c5cdd8 !important;
    box-shadow: none !important;
}

.dataTables_paginate.bts-pagination .page-item:not(.disabled):not(.active) .page-link:hover,
.dataTables_wrapper .dataTables_paginate .page-item:not(.disabled):not(.active) .page-link:hover,
.dataTables_wrapper .dataTables_paginate a.paginate_button:not(.current):hover,
.exp-list-pagination .page-item:not(.disabled):not(.active) .page-link:hover,
.exp-list-pending-pagination .page-item:not(.disabled):not(.active) .page-link:hover {
    color: #1a2f42 !important;
    background-color: #eef2f7 !important;
    border-color: #1abb9c !important;
}

.dataTables_paginate.bts-pagination .page-item.active .page-link,
.dataTables_paginate.bts-pagination .page-item.active .page-link:hover,
.dataTables_paginate.bts-pagination .page-item.active .page-link:focus,
.dataTables_wrapper .dataTables_paginate .page-item.active .page-link,
.dataTables_wrapper .dataTables_paginate .page-item.active .page-link:hover,
.dataTables_wrapper .dataTables_paginate .page-item.active .page-link:focus,
.dataTables_wrapper .dataTables_paginate li.paginate_button.current .page-link,
.dataTables_wrapper .dataTables_paginate li.paginate_button.current .page-link:hover,
.dataTables_wrapper .dataTables_paginate a.paginate_button.current,
.dataTables_wrapper .dataTables_paginate a.paginate_button.current:hover,
.exp-list-pagination .page-item.active .page-link,
.exp-list-pending-pagination .page-item.active .page-link {
    color: #fff !important;
    background-color: #1abb9c !important;
    border-color: #15967d !important;
    font-weight: 700;
    z-index: 2;
}

.dataTables_paginate.bts-pagination .page-item.disabled .page-link,
.dataTables_wrapper .dataTables_paginate .page-item.disabled .page-link,
.exp-list-pagination .page-item.disabled .page-link,
.exp-list-pending-pagination .page-item.disabled .page-link {
    color: #9aa5b5 !important;
    background-color: #f3f5f8 !important;
    border-color: #dde3ea !important;
    opacity: 1;
    pointer-events: none;
}

.dataTables_paginate.bts-pagination .page-item-ellipsis .page-link,
.dataTables_wrapper .dataTables_paginate .page-item-ellipsis .page-link {
    color: #6b7788 !important;
    background-color: transparent !important;
    border-color: transparent !important;
}

/* DataTables 2.x button-style paging */
.dataTables_wrapper .dt-paging .dt-paging-button {
    min-width: 2.25rem;
    padding: 0.4rem 0.65rem !important;
    margin-left: 0.15rem;
    font-weight: 500;
    color: #2a3f54 !important;
    background: #fff !important;
    border: 1px solid #c5cdd8 !important;
    border-radius: 0.25rem;
    box-shadow: none !important;
}

.dataTables_wrapper .dt-paging .dt-paging-button:hover:not(.disabled):not(.current) {
    color: #1a2f42 !important;
    background: #eef2f7 !important;
    border-color: #1abb9c !important;
}

.dataTables_wrapper .dt-paging .dt-paging-button.current,
.dataTables_wrapper .dt-paging .dt-paging-button.current:hover {
    color: #fff !important;
    background: #1abb9c !important;
    border-color: #15967d !important;
    font-weight: 700;
}

.dataTables_wrapper .dt-paging .dt-paging-button.disabled,
.dataTables_wrapper .dt-paging .dt-paging-button.disabled:hover {
    color: #9aa5b5 !important;
    background: #f3f5f8 !important;
    border-color: #dde3ea !important;
    opacity: 1;
}

/* Dark mode pagination */
html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .pagination .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate a.paginate_button,
html[data-bts-theme="dark"] .exp-list-pagination .page-link,
html[data-bts-theme="dark"] .exp-list-pending-pagination .page-link {
    color: var(--bts-text) !important;
    background-color: var(--bts-surface-raised) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item:not(.disabled):not(.active) .page-link:hover,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item:not(.disabled):not(.active) .page-link:hover,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate a.paginate_button:not(.current):hover,
html[data-bts-theme="dark"] .exp-list-pagination .page-item:not(.disabled):not(.active) .page-link:hover,
html[data-bts-theme="dark"] .exp-list-pending-pagination .page-item:not(.disabled):not(.active) .page-link:hover {
    color: var(--bts-text) !important;
    background-color: var(--bts-surface-overlay) !important;
    border-color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item.active .page-link,
html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item.active .page-link:hover,
html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item.active .page-link:focus,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item.active .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item.active .page-link:hover,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item.active .page-link:focus,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate li.paginate_button.current .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate li.paginate_button.current .page-link:hover,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate a.paginate_button.current,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate a.paginate_button.current:hover,
html[data-bts-theme="dark"] .exp-list-pagination .page-item.active .page-link,
html[data-bts-theme="dark"] .exp-list-pending-pagination .page-item.active .page-link {
    color: #0f1419 !important;
    background-color: var(--bts-accent) !important;
    border-color: var(--bts-accent-hover) !important;
    font-weight: 700;
}

html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item.disabled .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item.disabled .page-link,
html[data-bts-theme="dark"] .exp-list-pagination .page-item.disabled .page-link,
html[data-bts-theme="dark"] .exp-list-pending-pagination .page-item.disabled .page-link {
    color: var(--bts-text-muted) !important;
    background-color: var(--bts-surface) !important;
    border-color: var(--bts-border-subtle) !important;
}

html[data-bts-theme="dark"] .dataTables_paginate.bts-pagination .page-item-ellipsis .page-link,
html[data-bts-theme="dark"] .dataTables_wrapper .dataTables_paginate .page-item-ellipsis .page-link {
    color: var(--bts-text-muted) !important;
    background-color: transparent !important;
    border-color: transparent !important;
}

html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button {
    color: var(--bts-text) !important;
    background: var(--bts-surface-raised) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button:hover:not(.disabled):not(.current) {
    color: var(--bts-text) !important;
    background: var(--bts-surface-overlay) !important;
    border-color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button.current,
html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button.current:hover {
    color: #0f1419 !important;
    background: var(--bts-accent) !important;
    border-color: var(--bts-accent-hover) !important;
    font-weight: 700;
}

html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button.disabled,
html[data-bts-theme="dark"] .dataTables_wrapper .dt-paging .dt-paging-button.disabled:hover {
    color: var(--bts-text-muted) !important;
    background: var(--bts-surface) !important;
    border-color: var(--bts-border-subtle) !important;
}

/* Top nav — profile brief dropdown */
html[data-bts-theme="dark"] .bts-profile-brief-menu {
    border-color: var(--bts-border) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

html[data-bts-theme="dark"] .bts-profile-brief {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__header {
    background: var(--bts-surface-raised) !important;
    border-bottom-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__identity strong {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__identity span {
    color: var(--bts-text-muted) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__row {
    border-bottom-color: var(--bts-border-subtle) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__label {
    color: var(--bts-text-muted) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__value {
    color: var(--bts-text) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__footer {
    background: var(--bts-surface) !important;
    border-top-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__link {
    color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .bts-profile-brief__link:hover,
html[data-bts-theme="dark"] .bts-profile-brief__link:focus {
    background: var(--bts-surface-overlay) !important;
    color: var(--bts-accent-hover) !important;
}

html[data-bts-theme="dark"] .bts-pending-uploads__thumb {
    border-color: var(--bts-border) !important;
    background: var(--bts-surface-raised) !important;
}

html[data-bts-theme="dark"] .bts-pending-uploads__file {
    border-color: var(--bts-border) !important;
    background: var(--bts-surface-raised) !important;
    color: var(--bts-text-muted) !important;
}

html[data-bts-theme="dark"] .bts-pending-uploads__file:hover {
    color: var(--bts-accent) !important;
    border-color: var(--bts-accent) !important;
}

html[data-bts-theme="dark"] .bts-pending-uploads__more {
    color: var(--bts-text-muted) !important;
}

html[data-bts-theme="dark"] .bts-approval-history-table tbody tr {
    background: var(--bts-surface-raised) !important;
    border-color: var(--bts-border) !important;
}

html[data-bts-theme="dark"] .bts-approval-history-table tbody td::before {
    color: var(--bts-text-muted) !important;
}
