/* your styles go here */

/* ==========================================
   LIGHT SURFACE NORMALIZATION
   Keep light mode on the enterprise palette instead of the old cream theme.
   ========================================== */
body.theme-light {
  background-color: var(--ent-bg) !important;
}

body.theme-light .card:not([class*="bg-"]),
body.theme-light .bg-white,
body.theme-light .admin-footer {
  background: var(--ent-surface) !important;
  width: 100%;
}

body.theme-light .table {
  background-color: transparent;
}

body.theme-light .modal-content,
body.theme-light .dropdown-menu,
body.theme-light .form-control,
body.theme-light .list-group-item,
body.theme-light .popover {
  background-color: var(--ent-surface);
}

body.theme-light .input-group-text {
  background-color: var(--ent-surface-muted);
}

/* Catch common inline light backgrounds in light mode */
body.theme-light [style*="background: white"],
body.theme-light [style*="background: #fff"],
body.theme-light [style*="background:#fff"],
body.theme-light [style*="background: #ffffff"],
body.theme-light [style*="background:#ffffff"],
body.theme-light [style*="background-color: white"],
body.theme-light [style*="background-color: #fff"],
body.theme-light [style*="background-color:#fff"],
body.theme-light [style*="background-color: #ffffff"],
body.theme-light [style*="background-color:#ffffff"] {
  background: var(--ent-surface) !important;
}

body.theme-light [style*="background: #f8f9fc"],
body.theme-light [style*="background:#f8f9fc"],
body.theme-light [style*="background: #f8f9fa"],
body.theme-light [style*="background:#f8f9fa"],
body.theme-light [style*="background: #f8fafc"],
body.theme-light [style*="background:#f8fafc"] {
  background: var(--ent-surface-muted) !important;
}

/* ==========================================
   Embedded <style> light-mode overrides
   Normalize hardcoded light surfaces
   in PHP page-level <style> blocks
   ========================================== */

/* --- Stat cards & dashboards --- */
body.theme-light .stat-card,
body.theme-light .stat-box {
  background: var(--ent-surface) !important;
}

/* --- Card headers & containers --- */
body.theme-light .card-header:not([style*="background"]) {
  background: var(--ent-surface-muted);
}
body.theme-light .log-card-header,
body.theme-light .admin-card,
body.theme-light .passkey-card,
body.theme-light .settings-card {
  background: var(--ent-surface) !important;
}

/* --- Filters, toolbars & tabs --- */
body.theme-light .filter-section,
body.theme-light .filter-tab,
body.theme-light .filters-card,
body.theme-light .dup-toolbar,
body.theme-light .tool-tab,
body.theme-light .tool-tab.active,
body.theme-light .tool-content,
body.theme-light .modify-form,
body.theme-light .ledger-tab.active {
  background: var(--ent-surface) !important;
}

/* --- Table containers --- */
body.theme-light .table-card,
body.theme-light .sales-table-card,
body.theme-light .ledger-table-card,
body.theme-light .detail-table {
  background: var(--ent-surface) !important;
}

/* --- Table headers & stripes --- */
body.theme-light .log-table thead th,
body.theme-light .booking-subrow td,
body.theme-light #dayModal .booking-table th {
  background-color: var(--ent-surface-muted) !important;
}

/* --- Security alerts page --- */
body.theme-light .alert-card,
body.theme-light .session-card,
body.theme-light .sidebar-panel,
body.theme-light .quick-action-btn,
body.theme-light .security-header .btn-light,
body.theme-light .pagination-modern a:not(.active) {
  background: var(--ent-surface) !important;
}

/* Keep active pagination visibly selected in light mode */
body.theme-light .security-page .pagination-modern a.active,
body.theme-light .security-page .pagination-modern a.active:hover,
body.theme-light .security-page .pagination-modern a.active:focus {
  background: #1e293b !important;
  border-color: #1e293b !important;
  color: #ffffff !important;
}

/* --- Buttons & actions --- */
body.theme-light .period-btn.active,
body.theme-light .period-btn-group .btn,
body.theme-light .quick-filter-btn,
body.theme-light .view-btn.active,
body.theme-light .view-btn-group .btn-outline-success,
body.theme-light .view-btn-group .btn-outline-warning,
body.theme-light .view-btn-group .btn-outline-info,
body.theme-light .export-btn,
body.theme-light .print-btn,
body.theme-light .btn-print-outline,
body.theme-light .btn-dismiss,
body.theme-light #refreshBtn {
  background: var(--ent-surface) !important;
}

/* --- City ledger & duplicates --- */
body.theme-light .company-card,
body.theme-light .aging-item,
body.theme-light .dup-card,
body.theme-light .match-tag,
body.theme-light .empty-box,
body.theme-light .empty-state {
  background: var(--ent-surface) !important;
}

/* --- Calendar & booking modals --- */
body.theme-light .month-nav-btn,
body.theme-light .modal-booking-list li,
body.theme-light .availability-room-item,
body.theme-light .status-menu {
  background: var(--ent-surface) !important;
}

/* --- Check-in & guests --- */
body.theme-light .batch-guest-suggestions,
body.theme-light .guest-dropdown,
body.theme-light .room-no-select,
body.theme-light .room-no-select option {
  background-color: var(--ent-surface) !important;
}

/* --- Rate management --- */
body.theme-light .search-box input,
body.theme-light .history-pagination .page-btn {
  background: var(--ent-surface) !important;
}

/* --- Settings & icons --- */
body.theme-light .admin-card .card-icon,
body.theme-light .key-display,
body.theme-light .preview-navbar,
body.theme-light .order-item,
body.theme-light .auth-method-card,
body.theme-light .user-card {
  background: var(--ent-surface) !important;
}

/* --- Guests page --- */
body.theme-light select.form-control-modern option {
  background: var(--ent-surface) !important;
}

/* --- Additional coverage --- */
body.theme-light .security-page,
body.theme-light .alert-card-header,
body.theme-light .sidebar-panel-header,
body.theme-light .session-table thead th,
body.theme-light .lockout-table thead th,
body.theme-light .attempts-table thead th,
body.theme-light .credits-table thead th,
body.theme-light .detail-content,
body.theme-light .rate-box,
body.theme-light .rate-table thead th,
body.theme-light .history-table thead th,
body.theme-light .room-type-status,
body.theme-light #availabilityResults {
  background: var(--ent-surface) !important;
}

/* ==========================================
   Claude dark shared admin surfaces
   Keep this token-driven and broad so new themes can be added
   by extending the same contract instead of patching page CSS.
   ========================================== */
body.theme-dark {
  background-color: #1f1e1d !important;
  color: #f5f5f4 !important;
  --pms-hover-surface: #2e2d2b;
  --pms-hover-surface-strong: #343331;
  --pms-selected-surface: #383633;
  --pms-chip-surface: #312f2d;
  --pms-stat-icon-surface: #302f2d;
  --pms-modal-surface: #262624;
  --pms-input-surface: #30302e;
  --pms-row-accent: rgba(231, 229, 228, 0.08);
  --pms-shadow-soft: none;
}

body.theme-dark .card:not([class*="bg-"]),
body.theme-dark .bg-white,
body.theme-dark .admin-footer,
body.theme-dark .modal-content,
body.theme-dark .dropdown-menu,
body.theme-dark .form-control,
body.theme-dark .list-group-item,
body.theme-dark .popover,
body.theme-dark .alert-card,
body.theme-dark .session-card,
body.theme-dark .sidebar-panel,
body.theme-dark .quick-action-btn,
body.theme-dark .table-card,
body.theme-dark .sales-table-card,
body.theme-dark .ledger-table-card,
body.theme-dark .detail-table,
body.theme-dark .company-card,
body.theme-dark .aging-item,
body.theme-dark .dup-card,
body.theme-dark .match-tag,
body.theme-dark .empty-box,
body.theme-dark .empty-state,
body.theme-dark .month-nav-btn,
body.theme-dark .modal-booking-list li,
body.theme-dark .availability-room-item,
body.theme-dark .status-menu,
body.theme-dark .batch-guest-suggestions,
body.theme-dark .guest-dropdown,
body.theme-dark .room-no-select,
body.theme-dark .room-no-select option,
body.theme-dark .search-box input,
body.theme-dark .history-pagination .page-btn,
body.theme-dark .admin-card,
body.theme-dark .passkey-card,
body.theme-dark .settings-card,
body.theme-dark .auth-method-card,
body.theme-dark .user-card,
body.theme-dark .detail-content,
body.theme-dark .rate-box,
body.theme-dark #availabilityResults {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .admin-footer,
body.theme-blue .admin-footer {
  box-shadow: none !important;
}

body.theme-blue {
  --pms-hover-surface: #1a2635;
  --pms-hover-surface-strong: #223146;
  --pms-selected-surface: #263a54;
  --pms-chip-surface: #192738;
  --pms-stat-icon-surface: #1e2c3d;
  --pms-modal-surface: #131c28;
  --pms-input-surface: #1b2737;
  --pms-row-accent: rgba(96, 165, 250, 0.1);
  --pms-shadow-soft: none;
}

body.theme-dark .admin-footer {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-blue .admin-footer {
  background: #131c28 !important;
  color: #e5edf7 !important;
  border-color: #243347 !important;
}

body .admin-footer {
  border-radius: 12px;
  padding: 16px 24px;
  margin: 24px 15px 0;
  border: 1px solid var(--ent-border);
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

body .admin-footer__copy,
body .admin-footer__meta {
  margin: 0;
}

body .admin-footer__copy {
  font-size: 0.85rem;
}

body .admin-footer__meta {
  font-size: 0.8rem;
}

body .admin-footer__brand {
  font-weight: 600;
}

body.theme-dark .admin-footer *,
body.theme-blue .admin-footer * {
  color: inherit !important;
}

body.theme-dark .admin-footer .text-muted,
body.theme-blue .admin-footer .text-muted {
  color: var(--text-muted) !important;
}

body.theme-dark footer.admin-footer,
body.theme-dark footer.admin-footer[style] {
  background: #262624 !important;
  background-color: #262624 !important;
  border: 1px solid #343432 !important;
}

body.theme-blue footer.admin-footer,
body.theme-blue footer.admin-footer[style] {
  background: #131c28 !important;
  background-color: #131c28 !important;
  border: 1px solid #243347 !important;
}

body.theme-dark footer.admin-footer p,
body.theme-dark footer.admin-footer span,
body.theme-dark footer.admin-footer[style] p,
body.theme-dark footer.admin-footer[style] span,
body.theme-blue footer.admin-footer p,
body.theme-blue footer.admin-footer span,
body.theme-blue footer.admin-footer[style] p,
body.theme-blue footer.admin-footer[style] span {
  color: #bdb9b2 !important;
}

body.theme-dark footer.admin-footer strong,
body.theme-dark footer.admin-footer b,
body.theme-dark footer.admin-footer[style] strong,
body.theme-dark footer.admin-footer[style] b,
body.theme-blue footer.admin-footer strong,
body.theme-blue footer.admin-footer b,
body.theme-blue footer.admin-footer[style] strong,
body.theme-blue footer.admin-footer[style] b {
  color: #f5f5f4 !important;
}

body.theme-blue footer.admin-footer p,
body.theme-blue footer.admin-footer span,
body.theme-blue footer.admin-footer[style] p,
body.theme-blue footer.admin-footer[style] span {
  color: #aebfd4 !important;
}

body.theme-blue footer.admin-footer strong,
body.theme-blue footer.admin-footer b,
body.theme-blue footer.admin-footer[style] strong,
body.theme-blue footer.admin-footer[style] b {
  color: #f8fbff !important;
}

body.theme-dark[data-page="bookGuests"] footer.admin-footer,
body.theme-dark[data-page="reserveGuests"] footer.admin-footer {
  background: #262624 !important;
  background-color: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
}

body.theme-dark[data-page="bookGuests"] footer.admin-footer p,
body.theme-dark[data-page="bookGuests"] footer.admin-footer span,
body.theme-dark[data-page="reserveGuests"] footer.admin-footer p,
body.theme-dark[data-page="reserveGuests"] footer.admin-footer span {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="bookGuests"] footer.admin-footer strong,
body.theme-dark[data-page="bookGuests"] footer.admin-footer b,
body.theme-dark[data-page="reserveGuests"] footer.admin-footer strong,
body.theme-dark[data-page="reserveGuests"] footer.admin-footer b {
  color: #f5f5f4 !important;
}

body.theme-blue[data-page="bookGuests"] footer.admin-footer,
body.theme-blue[data-page="reserveGuests"] footer.admin-footer {
  background: #131c28 !important;
  background-color: #131c28 !important;
  color: #e5edf7 !important;
  border-color: #243347 !important;
}

body.theme-blue[data-page="bookGuests"] footer.admin-footer p,
body.theme-blue[data-page="bookGuests"] footer.admin-footer span,
body.theme-blue[data-page="reserveGuests"] footer.admin-footer p,
body.theme-blue[data-page="reserveGuests"] footer.admin-footer span {
  color: #aebfd4 !important;
}

body.theme-blue[data-page="bookGuests"] footer.admin-footer strong,
body.theme-blue[data-page="bookGuests"] footer.admin-footer b,
body.theme-blue[data-page="reserveGuests"] footer.admin-footer strong,
body.theme-blue[data-page="reserveGuests"] footer.admin-footer b {
  color: #f8fbff !important;
}

body.theme-dark .dropdown-menu .dropdown-item:hover,
body.theme-dark .dropdown-menu .dropdown-item:focus,
body.theme-dark .list-group-item-action:hover,
body.theme-dark .list-group-item-action:focus,
body.theme-dark .page-link:hover,
body.theme-dark .btn:hover,
body.theme-dark .nav-link:hover {
  background: var(--pms-hover-surface) !important;
  box-shadow: var(--pms-shadow-soft) !important;
}

body.theme-blue .dropdown-menu .dropdown-item:hover,
body.theme-blue .dropdown-menu .dropdown-item:focus,
body.theme-blue .list-group-item-action:hover,
body.theme-blue .list-group-item-action:focus,
body.theme-blue .page-link:hover,
body.theme-blue .btn:hover,
body.theme-blue .nav-link:hover {
  background: var(--pms-hover-surface) !important;
  box-shadow: var(--pms-shadow-soft) !important;
}

body.theme-dark[data-page="bookings"] .table tbody tr:hover,
body.theme-dark[data-page="bookingRequests"] .table tbody tr:hover,
body.theme-dark[data-page="reservedGuests"] .table tbody tr:hover,
body.theme-dark[data-page="bookedGuests"] .table tbody tr:hover,
body.theme-dark[data-page="checkedInGuests"] .table tbody tr:hover,
body.theme-dark[data-page="completedStays"] .table tbody tr:hover,
body.theme-dark[data-page="guests"] .modern-table tbody tr:hover,
body.theme-dark[data-page="calendar"] .modal-booking-list li:hover,
body.theme-dark[data-page="calendar"] .room-type-status:hover,
body.theme-dark[data-page="transferRooms"] .modern-table tbody tr:hover,
body.theme-dark[data-page="arrivals"] .table tbody tr:hover,
body.theme-dark[data-page="assignRoom"] .table tbody tr:hover {
  background: var(--pms-hover-surface) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.theme-blue[data-page="bookings"] .table tbody tr:hover,
body.theme-blue[data-page="bookingRequests"] .table tbody tr:hover,
body.theme-blue[data-page="reservedGuests"] .table tbody tr:hover,
body.theme-blue[data-page="bookedGuests"] .table tbody tr:hover,
body.theme-blue[data-page="checkedInGuests"] .table tbody tr:hover,
body.theme-blue[data-page="completedStays"] .table tbody tr:hover,
body.theme-blue[data-page="guests"] .modern-table tbody tr:hover,
body.theme-blue[data-page="calendar"] .modal-booking-list li:hover,
body.theme-blue[data-page="calendar"] .room-type-status:hover,
body.theme-blue[data-page="transferRooms"] .modern-table tbody tr:hover,
body.theme-blue[data-page="arrivals"] .table tbody tr:hover,
body.theme-blue[data-page="assignRoom"] .table tbody tr:hover {
  background: var(--pms-hover-surface) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.theme-dark .input-group-text,
body.theme-dark .card-header:not([style*="background"]),
body.theme-dark .log-table thead th,
body.theme-dark .booking-subrow td,
body.theme-dark #dayModal .booking-table th,
body.theme-dark .alert-card-header,
body.theme-dark .sidebar-panel-header,
body.theme-dark .session-table thead th,
body.theme-dark .lockout-table thead th,
body.theme-dark .attempts-table thead th,
body.theme-dark .credits-table thead th,
body.theme-dark .rate-table thead th,
body.theme-dark .history-table thead th,
body.theme-dark .room-type-status,
body.theme-dark .security-page,
body.theme-dark .tool-tab.active,
body.theme-dark .ledger-tab.active {
  background: var(--bg-tertiary) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .table,
body.theme-dark .table td,
body.theme-dark .table th,
body.theme-dark .table-hover tbody tr:hover,
body.theme-dark .table thead th,
body.theme-dark .table-hover tbody tr:hover > td,
body.theme-dark .table-hover tbody tr:hover > th {
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .table-hover tbody tr:hover {
  background: rgba(255, 255, 255, 0.04) !important;
}

body.theme-dark .text-muted,
body.theme-dark .text-secondary,
body.theme-dark .text-gray,
body.theme-dark small.text-muted,
body.theme-dark .page-subtitle,
body.theme-dark .guest-info-label,
body.theme-dark .credit-label,
body.theme-dark .summary-card .label,
body.theme-dark .stat-card .stat-label {
  color: var(--text-muted) !important;
}

body.theme-dark .border,
body.theme-dark .border-top,
body.theme-dark .border-bottom,
body.theme-dark hr,
body.theme-dark .dropdown-divider,
body.theme-dark .section-divider {
  border-color: var(--border-color) !important;
}

body.theme-dark [style*="background: white"],
body.theme-dark [style*="background: #fff"],
body.theme-dark [style*="background:#fff"],
body.theme-dark [style*="background: #ffffff"],
body.theme-dark [style*="background:#ffffff"],
body.theme-dark [style*="background-color: white"],
body.theme-dark [style*="background-color: #fff"],
body.theme-dark [style*="background-color:#fff"],
body.theme-dark [style*="background-color: #ffffff"],
body.theme-dark [style*="background-color:#ffffff"] {
  background: var(--bg-card) !important;
}

body.theme-dark [style*="color: #1f2937"],
body.theme-dark [style*="color:#1f2937"],
body.theme-dark [style*="color: #374151"],
body.theme-dark [style*="color:#374151"],
body.theme-dark [style*="color: #344054"],
body.theme-dark [style*="color:#344054"] {
  color: var(--text-primary) !important;
}

body.theme-dark .custom-select,
body.theme-dark select.form-control,
body.theme-dark select.form-control-modern option,
body.theme-dark input[type="date"],
body.theme-dark input[type="datetime-local"],
body.theme-dark .form-control[type="date"],
body.theme-dark .form-control[type="datetime-local"],
body.theme-dark .form-control.flatpickr-input,
body.theme-dark input.flatpickr-input,
body.theme-dark input.form-control.input {
  background: var(--bg-input) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .btn-light,
body.theme-dark .btn-outline-light,
body.theme-dark .btn-outline-dark,
body.theme-dark .btn-outline-secondary,
body.theme-dark .btn-secondary {
  background: #30302e !important;
  border-color: #3f3f3d !important;
  color: #f5f5f4 !important;
}

body.theme-dark .btn-light:hover,
body.theme-dark .btn-outline-light:hover,
body.theme-dark .btn-outline-dark:hover,
body.theme-dark .btn-outline-secondary:hover,
body.theme-dark .btn-secondary:hover,
body.theme-dark .btn-light:focus,
body.theme-dark .btn-outline-light:focus,
body.theme-dark .btn-outline-dark:focus,
body.theme-dark .btn-outline-secondary:focus,
body.theme-dark .btn-secondary:focus {
  background: #3a3938 !important;
  border-color: #4a4747 !important;
  color: #ffffff !important;
}

body.theme-dark .page-link,
body.theme-dark .nav-tabs .nav-link,
body.theme-dark .nav-pills .nav-link,
body.theme-dark .dropdown-item,
body.theme-dark .list-group-item,
body.theme-dark .toast,
body.theme-dark .popover,
body.theme-dark .popover-header,
body.theme-dark .toast-header,
body.theme-dark .toast-body,
body.theme-dark .tooltip-inner {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .page-link:hover,
body.theme-dark .nav-tabs .nav-link:hover,
body.theme-dark .nav-pills .nav-link:hover,
body.theme-dark .dropdown-item:hover,
body.theme-dark .dropdown-item:focus,
body.theme-dark .list-group-item:hover {
  background: #2b2b29 !important;
  color: #ffffff !important;
}

body.theme-dark .page-item.active .page-link,
body.theme-dark .nav-tabs .nav-link.active,
body.theme-dark .nav-pills .nav-link.active,
body.theme-dark .dropdown-item.active,
body.theme-dark .list-group-item.active {
  background: #343432 !important;
  border-color: #4a4747 !important;
  color: #ffffff !important;
}

body.theme-dark .badge-light,
body.theme-dark .badge-secondary {
  background: #343432 !important;
  color: #f5f5f4 !important;
}

body.theme-dark .alert-info,
body.theme-dark .alert-warning,
body.theme-dark .alert-danger,
body.theme-dark .alert-success,
body.theme-dark .progress,
body.theme-dark .flatpickr-calendar,
body.theme-dark .select2-dropdown,
body.theme-dark .select2-container--default .select2-selection--single,
body.theme-dark .select2-container--default .select2-selection--multiple,
body.theme-dark .dataTables_wrapper .dataTables_filter input,
body.theme-dark .dataTables_wrapper .dataTables_length select {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

body.theme-dark .flatpickr-months,
body.theme-dark .flatpickr-weekdays,
body.theme-dark .flatpickr-current-month,
body.theme-dark .flatpickr-weekday,
body.theme-dark .flatpickr-day,
body.theme-dark .select2-container--default .select2-results__option,
body.theme-dark .dataTables_wrapper .dataTables_info,
body.theme-dark .dataTables_wrapper .dataTables_paginate .paginate_button {
  color: var(--text-primary) !important;
}

body.theme-dark .flatpickr-day:hover,
body.theme-dark .flatpickr-day.selected,
body.theme-dark .flatpickr-day.startRange,
body.theme-dark .flatpickr-day.endRange,
body.theme-dark .select2-container--default .select2-results__option--highlighted[aria-selected],
body.theme-dark .dataTables_wrapper .dataTables_paginate .paginate_button:hover,
body.theme-dark .dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: #343432 !important;
  color: #ffffff !important;
}

body.theme-dark .flatpickr-calendar,
body.theme-dark .flatpickr-months,
body.theme-dark .flatpickr-weekdays,
body.theme-dark .flatpickr-current-month,
body.theme-dark .flatpickr-time,
body.theme-dark .flatpickr-time input,
body.theme-dark .flatpickr-am-pm,
body.theme-dark .flatpickr-prev-month,
body.theme-dark .flatpickr-next-month,
body.theme-dark .select2-dropdown,
body.theme-dark .select2-results__option,
body.theme-dark #results .list-group-item,
body.theme-dark #guestResults .list-group-item,
body.theme-dark .autocomplete-results .list-group-item,
body.theme-dark .guest-suggestions .list-group-item {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
}

body.theme-dark .flatpickr-day,
body.theme-dark .flatpickr-weekday,
body.theme-dark .flatpickr-current-month input.cur-year,
body.theme-dark .flatpickr-current-month .flatpickr-monthDropdown-months,
body.theme-dark .select2-results__option,
body.theme-dark .guest-suggestions .list-group-item small,
body.theme-dark #results .list-group-item small,
body.theme-dark #guestResults .list-group-item small {
  color: #d6d3d1 !important;
}

body.theme-dark .flatpickr-day:hover,
body.theme-dark .flatpickr-day:focus,
body.theme-dark .flatpickr-prev-month:hover,
body.theme-dark .flatpickr-next-month:hover,
body.theme-dark .select2-results__option--highlighted,
body.theme-dark .autocomplete-results .list-group-item:hover,
body.theme-dark .guest-suggestions .list-group-item:hover,
body.theme-dark #results .list-group-item:hover,
body.theme-dark #guestResults .list-group-item:hover {
  background: #2d2d2b !important;
  color: #f5f5f4 !important;
}

body.theme-dark .flatpickr-day.flatpickr-disabled,
body.theme-dark .flatpickr-day.prevMonthDay,
body.theme-dark .flatpickr-day.nextMonthDay {
  color: #78716c !important;
}

body.theme-dark .flatpickr-day.selected,
body.theme-dark .flatpickr-day.startRange,
body.theme-dark .flatpickr-day.endRange {
  background: #d6d3d1 !important;
  color: #1f1e1d !important;
  border-color: #d6d3d1 !important;
}

body.theme-dark .stat-card,
body.theme-dark .summary-card,
body.theme-dark .credit-card,
body.theme-dark .dashboard-card,
body.theme-dark .overview-card,
body.theme-dark .filters-card,
body.theme-dark .sales-table-card,
body.theme-dark .ledger-card,
body.theme-dark .company-card,
body.theme-dark .guest-list-card,
body.theme-dark .arrivals-card,
body.theme-dark .tool-card,
body.theme-dark .settings-card,
body.theme-dark .legend-card,
body.theme-dark .payment-card,
body.theme-dark .refund-card {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
  box-shadow: none !important;
}

body.theme-dark .stat-card .stat-value,
body.theme-dark .summary-card .value,
body.theme-dark .credit-value,
body.theme-dark .page-title,
body.theme-dark .guest-name-display,
body.theme-dark .room-number,
body.theme-dark .amount-display {
  color: var(--text-primary) !important;
}

body.theme-dark .stat-card .stat-label,
body.theme-dark .summary-card .label,
body.theme-dark .credit-label,
body.theme-dark .page-subtitle,
body.theme-dark .transaction-date,
body.theme-dark .guest-info-label {
  color: var(--text-muted) !important;
}

body.theme-dark .table-primary,
body.theme-dark .table-success,
body.theme-dark .table-warning,
body.theme-dark .table-danger,
body.theme-dark .table-info,
body.theme-dark .table-secondary,
body.theme-dark .table-success-light,
body.theme-dark tr.table-light,
body.theme-dark tr.bg-light,
body.theme-dark .booking-subrow,
body.theme-dark .booking-row,
body.theme-dark .batch-guest-row {
  background: #262624 !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
  box-shadow: none !important;
}

body.theme-dark .booking-row:hover,
body.theme-dark .batch-guest-row:hover,
body.theme-dark .table tbody tr:hover,
body.theme-dark .table-hover tbody tr:hover {
  background: #2b2b29 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="checkin"] .form-shell-card,
body.theme-dark[data-page="bookGuests"] .form-shell-card,
body.theme-dark[data-page="reserveGuests"] .form-shell-card,
body.theme-dark[data-page="rebook"] .form-shell-card {
  border: 1px solid #343432 !important;
  background: var(--bg-card) !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header,
body.theme-dark[data-page="bookGuests"] .form-shell-card > .form-shell-header,
body.theme-dark[data-page="reserveGuests"] .form-shell-card > .form-shell-header,
body.theme-dark[data-page="rebook"] .form-shell-card > .form-shell-header {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-bottom: 1px solid #343432 !important;
}

body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header h3,
body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .h6,
body.theme-dark[data-page="bookGuests"] .form-shell-card > .form-shell-header h3,
body.theme-dark[data-page="bookGuests"] .form-shell-card > .form-shell-header .h6,
body.theme-dark[data-page="reserveGuests"] .form-shell-card > .form-shell-header h3,
body.theme-dark[data-page="reserveGuests"] .form-shell-card > .form-shell-header .h6,
body.theme-dark[data-page="rebook"] .form-shell-card > .form-shell-header h3,
body.theme-dark[data-page="rebook"] .form-shell-card > .form-shell-header .h5 {
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-outline-warning,
body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-outline-info,
body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-info {
  background: #30302e !important;
  border-color: #3f3f3d !important;
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-outline-warning:hover,
body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-outline-info:hover,
body.theme-dark[data-page="checkin"] .form-shell-card > .form-shell-header .btn-info:hover {
  background: #3a3938 !important;
  border-color: #4a4747 !important;
  color: #ffffff !important;
}

body.theme-dark[data-page="bookedGuests"] .card,
body.theme-dark[data-page="checkedInGuests"] .card,
body.theme-dark[data-page="completedStays"] .card,
body.theme-dark[data-page="bookings"] .card,
body.theme-dark[data-page="reservedGuests"] .card,
body.theme-dark[data-page="bookedGuests"] .card-header,
body.theme-dark[data-page="checkedInGuests"] .card-header,
body.theme-dark[data-page="completedStays"] .card-header,
body.theme-dark[data-page="bookings"] .card-header,
body.theme-dark[data-page="reservedGuests"] .card-header,
body.theme-dark[data-page="bookedGuests"] .card-body,
body.theme-dark[data-page="checkedInGuests"] .card-body,
body.theme-dark[data-page="completedStays"] .card-body,
body.theme-dark[data-page="bookings"] .card-body,
body.theme-dark[data-page="reservedGuests"] .card-body,
body.theme-dark[data-page="bookedGuests"] .table thead th,
body.theme-dark[data-page="checkedInGuests"] .table thead th,
body.theme-dark[data-page="completedStays"] .table thead th,
body.theme-dark[data-page="bookings"] .table thead th,
body.theme-dark[data-page="reservedGuests"] .table thead th,
body.theme-dark[data-page="bookedGuests"] .modal-content,
body.theme-dark[data-page="checkedInGuests"] .modal-content,
body.theme-dark[data-page="completedStays"] .modal-content,
body.theme-dark[data-page="bookings"] .modal-content,
body.theme-dark[data-page="reservedGuests"] .modal-content {
  background: var(--bg-card) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="bookedGuests"] .card-header h6,
body.theme-dark[data-page="checkedInGuests"] .card-header h6,
body.theme-dark[data-page="completedStays"] .card-header h6,
body.theme-dark[data-page="bookings"] .card-header h6,
body.theme-dark[data-page="reservedGuests"] .card-header h6,
body.theme-dark[data-page="bookedGuests"] .table thead th,
body.theme-dark[data-page="checkedInGuests"] .table thead th,
body.theme-dark[data-page="completedStays"] .table thead th,
body.theme-dark[data-page="bookings"] .table thead th,
body.theme-dark[data-page="reservedGuests"] .table thead th {
  color: var(--text-primary) !important;
}

body.theme-dark[data-page="bookedGuests"] .modal-header,
body.theme-dark[data-page="checkedInGuests"] .modal-header,
body.theme-dark[data-page="completedStays"] .modal-header,
body.theme-dark[data-page="bookings"] .modal-header,
body.theme-dark[data-page="reservedGuests"] .modal-header {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-bottom: 1px solid #343432 !important;
}

body.theme-dark[data-page="bookedGuests"] .table tbody tr:hover,
body.theme-dark[data-page="checkedInGuests"] .table tbody tr:hover,
body.theme-dark[data-page="completedStays"] .table tbody tr:hover,
body.theme-dark[data-page="bookings"] .table tbody tr:hover,
body.theme-dark[data-page="reservedGuests"] .table tbody tr:hover {
  transform: none !important;
  box-shadow: none !important;
  background: #2b2b29 !important;
}

body.theme-dark[data-page="bookedGuests"] #guestSearch,
body.theme-dark[data-page="checkedInGuests"] #guestSearch,
body.theme-dark[data-page="completedStays"] #guestSearch,
body.theme-dark[data-page="bookings"] #guestSearch,
body.theme-dark[data-page="checkedInGuests"] #checkinDateFilter {
  background: #30302e !important;
  border-color: #3f3f3d !important;
  color: #f5f5f4 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="bookedGuests"] #guestSearch:focus,
body.theme-dark[data-page="checkedInGuests"] #guestSearch:focus,
body.theme-dark[data-page="completedStays"] #guestSearch:focus,
body.theme-dark[data-page="bookings"] #guestSearch:focus,
body.theme-dark[data-page="checkedInGuests"] #checkinDateFilter:focus {
  border-color: #57534e !important;
  box-shadow: 0 0 0 0.2rem rgba(231, 229, 228, 0.12) !important;
}

/* ==========================================
   Confirmation review modals
   ========================================== */
.confirm-review-modal .modal-content {
  border: 1px solid #d9e2ec;
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 14px 28px rgba(15, 23, 42, 0.14);
}

.confirm-review-modal .modal-header {
  border-bottom: 1px solid #dde7f0;
  background: linear-gradient(135deg, #15324d 0%, #214d73 100%);
  padding: 0.82rem 1rem 0.76rem;
}

.confirm-review-modal .modal-title {
  color: #ffffff;
  font-size: 0.95rem;
  font-weight: 700;
  letter-spacing: 0.01em;
}

.confirm-review-modal .close {
  color: #ffffff;
  opacity: 0.88;
  text-shadow: none;
}

.confirm-review-modal .close:hover {
  color: #ffffff;
  opacity: 1;
}

.confirm-review-modal .modal-body {
  padding: 0.8rem 1rem 0.92rem;
}

.confirm-review-modal .modal-footer {
  border-top: 1px solid #dde7f0;
  padding: 0.68rem 1rem 0.82rem;
}

.confirm-review-shell {
  background: #fffdfa;
  border: 1px solid #e4eaf1;
  border-radius: 12px;
  padding: 0.78rem;
}

.confirm-review-top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0.85rem;
  flex-wrap: wrap;
  margin-bottom: 0.82rem;
}

.confirm-review-eyebrow {
  color: #64748b;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  margin-bottom: 0.3rem;
}

.confirm-review-guest {
  color: #0f172a;
  font-size: 1.04rem;
  font-weight: 800;
  line-height: 1.2;
}

.confirm-review-meta {
  color: #475569;
  font-size: 0.84rem;
  font-weight: 500;
  margin-top: 0.28rem;
}

.confirm-review-badges {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.confirm-review-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  border: 1px solid transparent;
  font-size: 0.71rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.42rem 0.68rem;
  white-space: nowrap;
}

.confirm-review-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
  gap: 0.58rem;
}

.confirm-review-card {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 0.68rem 0.78rem;
  min-height: 0;
}

.confirm-review-label {
  color: #64748b;
  font-size: 0.67rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 0.5rem;
  text-transform: uppercase;
}

.confirm-review-value {
  color: #0f172a;
  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.25;
}

.confirm-review-badge.is-neutral,
.confirm-review-value.is-neutral {
  color: #334155;
}

.confirm-review-badge.is-info {
  background: #e8f2ff;
  border-color: #cfe0ff;
  color: #1d4f91;
}

.confirm-review-value.is-info {
  color: #1d4f91;
}

.confirm-review-badge.is-success {
  background: #e8f7ef;
  border-color: #c9ecd7;
  color: #137a43;
}

.confirm-review-value.is-success {
  color: #137a43;
}

.confirm-review-badge.is-warning {
  background: #fff3d6;
  border-color: #ffe0a3;
  color: #9a6400;
}

.confirm-review-value.is-warning {
  color: #9a6400;
}

.confirm-review-badge.is-danger {
  background: #fde8e8;
  border-color: #f6c7c7;
  color: #b42318;
}

.confirm-review-value.is-danger {
  color: #b42318;
}

.confirm-review-value.is-money {
  color: #123c73;
}

.confirm-review-note {
  display: none;
  margin-top: 0.78rem;
  padding: 0.64rem 0.78rem;
  border: 1px solid #dbeafe;
  border-radius: 12px;
  background: #eff6ff;
  color: #1e3a5f;
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1.35;
}

.guest-suggestion-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0.75rem;
}

.guest-suggestion-main {
  min-width: 0;
}

.guest-suggestion-name {
  color: #0f172a;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.2;
}

.guest-suggestion-sub {
  color: #64748b;
  font-size: 0.75rem;
  margin-top: 0.16rem;
}

.guest-suggestion-tags {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.34rem;
}

.guest-suggestion-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 700;
  line-height: 1;
  padding: 0.34rem 0.56rem;
  white-space: nowrap;
}

.guest-suggestion-tag.is-credit {
  background: #eff6ff;
  color: #1d4ed8;
}

.guest-suggestion-tag.is-prepaid-credit {
  background: #ecfdf3;
  color: #166534;
}

.guest-suggestion-tag.is-prepaid-due {
  background: #fef2f2;
  color: #b42318;
}

.guest-suggestion-tag.is-prepaid-zero {
  background: #f8fafc;
  color: #475569;
}

.guest-suggestion-tag.is-alert {
  background: #fff7e6;
  color: #9a6400;
}

.guest-ledger-link,
.prepaid-indicator-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  border: 1px solid #d7e0ea;
  background: #ffffff;
  color: #475569;
  text-decoration: none;
  transition: all 0.18s ease;
}

.guest-ledger-link:hover,
.prepaid-indicator-link:hover {
  text-decoration: none;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(15, 23, 42, 0.12);
}

.guest-ledger-link.is-credit,
.prepaid-indicator-link.is-credit {
  background: #ecfdf3;
  border-color: #ccefd8;
  color: #166534;
}

.guest-ledger-link.is-due,
.prepaid-indicator-link.is-due {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b42318;
}

.guest-ledger-link.is-zero,
.prepaid-indicator-link.is-zero {
  background: #f8fafc;
  border-color: #e2e8f0;
  color: #475569;
}

.booking-legend .legend-prepaid {
  background: rgba(15, 118, 110, 0.12);
}

.booking-legend .legend-prepaid-due {
  background: rgba(185, 28, 28, 0.1);
}

.confirm-review-note.is-neutral {
  background: #f8fafc;
  border-color: #e2e8f0;
  color: #475569;
}

.confirm-review-note.is-info {
  background: #eff6ff;
  border-color: #dbeafe;
  color: #1e3a5f;
}

.confirm-review-note.is-success {
  background: #ecfdf3;
  border-color: #ccefd8;
  color: #166534;
}

.confirm-review-note.is-warning {
  background: #fff7e6;
  border-color: #ffe3ab;
  color: #9a6400;
}

.confirm-review-note.is-danger {
  background: #fef2f2;
  border-color: #fecaca;
  color: #b42318;
}

@media (max-width: 575.98px) {
  .confirm-review-modal .modal-body,
  .confirm-review-modal .modal-header,
  .confirm-review-modal .modal-footer {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .confirm-review-shell {
    padding: 0.9rem;
  }

  .confirm-review-card {
    min-height: 0;
  }
}
body.theme-light .room-badge,
body.theme-light .ai-explanation-row,
body.theme-light .modal-footer-ai,
body.theme-light .form-control-modern {
  background: #faf9f6 !important;
}

/* --- Datepicker & clickable inputs --- */
body.theme-light input[type="date"],
body.theme-light input[type="datetime-local"],
body.theme-light .form-control[type="date"],
body.theme-light .form-control[type="datetime-local"],
body.theme-light .form-control.flatpickr-input,
body.theme-light input.flatpickr-input,
body.theme-light input.form-control.input {
  background-color: #f0ece5 !important;
  border: 2px solid #d4cfc7 !important;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
}

body.theme-light input[type="date"]:hover,
body.theme-light input[type="datetime-local"]:hover,
body.theme-light .form-control[type="date"]:hover,
body.theme-light .form-control[type="datetime-local"]:hover,
body.theme-light .form-control.flatpickr-input:hover,
body.theme-light input.flatpickr-input:hover,
body.theme-light input.form-control.input:hover {
  border-color: #b8a898 !important;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
  background-color: #e9e4dc !important;
}

body.theme-light input[type="date"]:focus,
body.theme-light input[type="datetime-local"]:focus,
body.theme-light .form-control[type="date"]:focus,
body.theme-light .form-control[type="datetime-local"]:focus,
body.theme-light .form-control.flatpickr-input:focus,
body.theme-light input.flatpickr-input:focus,
body.theme-light input.form-control.input:focus {
  border-color: #a89888 !important;
  box-shadow: 0 0 0 3px rgba(168, 152, 136, 0.2);
  background-color: #e9e4dc !important;
}

body.theme-light input.form-control.input.active {
  border-color: #a89888 !important;
  box-shadow: 0 0 0 3px rgba(168, 152, 136, 0.2);
  background-color: #e9e4dc !important;
}

/* --- Select dropdowns clickable --- */
body.theme-light .custom-select,
body.theme-light select.form-control {
  background-color: #f0ece5;
  border: 2px solid #d4cfc7;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
}

body.theme-light .custom-select:hover,
body.theme-light select.form-control:hover {
  border-color: #b8a898;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08);
  background-color: #e9e4dc;
}

/* --- Keyboard Shortcut Hint (global) --- */
.shortcut-hint {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #1e293b;
  color: white;
  padding: 10px 16px;
  border-radius: 10px;
  font-size: 11.5px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
  display: none;
  gap: 14px;
  z-index: 1050;
  flex-wrap: wrap;
  max-width: 420px;
  animation: shortcutSlideIn 0.2s ease-out;
}

.shortcut-hint.show {
  display: flex;
}

.shortcut-hint kbd {
  background: #334155;
  padding: 2px 7px;
  border-radius: 4px;
  font-family: monospace;
  font-size: 11px;
  border: 1px solid #475569;
}

@keyframes shortcutSlideIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* --- Flatpickr calendar popup --- */
body.theme-light .flatpickr-calendar {
  background: #faf9f6;
  border: 1px solid #e0dbd4;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

body.theme-light .flatpickr-months {
  background: #f5f2ed;
  border-radius: 8px 8px 0 0;
}

body.theme-light .flatpickr-weekdays {
  background: #f5f2ed;
}

body.theme-light .flatpickr-day:hover {
  background: #f0ece5;
  border-color: #e0dbd4;
}

body.theme-light .flatpickr-day.selected {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

body.theme-light .flatpickr-day.today {
  border-color: #1f4fd6;
}

/* --- Text contrast improvements --- */
body.theme-light .text-muted {
  color: #64605a !important;
}

body.theme-light .text-secondary {
  color: #5a5650 !important;
}

body.theme-light .text-gray {
  color: #78736c !important;
}

/* --- Table hover on cream --- */
body.theme-light .table-hover tbody tr:hover {
  background-color: #f5f2ed;
}

body.theme-light .table thead th {
  background-color: #f5f2ed;
  color: #3d3a36;
  border-bottom-color: #e0dbd4;
}

/* --- Borders to match cream --- */
body.theme-light .card {
  border-color: #e8e3dc;
}

body.theme-light .border,
body.theme-light .border-top,
body.theme-light .border-bottom {
  border-color: #e8e3dc !important;
}

body.theme-light hr {
  border-top-color: #e8e3dc;
}

/* --- Badge improvements on cream --- */
body.theme-light .badge-light {
  background-color: #f0ece5;
  color: #3d3a36;
}

/* --- Dashboard pulse animations --- */
@keyframes pulse-green-cream {
  0%, 100% { background-color: #faf9f6; }
  50% { background-color: rgba(40, 167, 69, 0.08); }
}
@keyframes pulse-blue-cream {
  0%, 100% { background-color: #faf9f6; }
  50% { background-color: rgba(0, 123, 255, 0.08); }
}
@keyframes pulse-yellow-cream {
  0%, 100% { background-color: #faf9f6; }
  50% { background-color: rgba(255, 193, 7, 0.08); }
}
@keyframes pulse-red-cream {
  0%, 100% { background-color: #faf9f6; }
  50% { background-color: rgba(220, 53, 69, 0.08); }
}

/* ==========================================
   AJAX NAVIGATION - Progress Bar & Transitions
   ========================================== */

/* Progress bar at top of page */
#ajax-progress-bar {
  position: fixed;
  top: 0;
  left: 0;
  height: 3px;
  background: #1f4fd6;
  width: 0;
  z-index: 999999;
  transition: width 0.3s ease;
  opacity: 0;
  pointer-events: none;
}

#ajax-progress-bar.active {
  opacity: 1;
}

/* Content loading transition */
.page-holder {
  transition: opacity 0.15s ease;
}

.page-holder.ajax-loading {
  opacity: 0.6;
  pointer-events: none;
}

/* Smooth content appearance */
@keyframes fadeInContent {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

.ajax-loaded .container-fluid {
  animation: fadeInContent 0.2s ease-out;
}

/* ==========================================
   MODERN SIDEBAR STYLES - Clean & Simple
   ========================================== */

/* Base sidebar styling */
#sidebar.sidebar {
  background: #faf9f6;
  box-shadow: none;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-right: 1px solid #e5e7eb;
}

/* Glass scrollbar */
#sidebar.sidebar::-webkit-scrollbar {
  width: 6px;
}

#sidebar.sidebar::-webkit-scrollbar-track {
  background: transparent;
}

#sidebar.sidebar::-webkit-scrollbar-thumb {
  background: rgba(156, 163, 175, 0.4);
  border-radius: 10px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

#sidebar.sidebar::-webkit-scrollbar-thumb:hover {
  background: rgba(156, 163, 175, 0.6);
}

/* Firefox scrollbar */
#sidebar.sidebar {
  scrollbar-width: thin;
  scrollbar-color: rgba(156, 163, 175, 0.4) transparent;
}

/* Section headers */
#sidebar .text-gray-400 {
  color: #9ca3af !important;
  font-size: 0.65rem;
  letter-spacing: 1.5px;
  padding: 1.25rem 1.25rem 0.5rem !important;
  margin-top: 0.25rem;
}

#sidebar .text-gray-400:first-child {
  margin-top: 0;
}

/* Sidebar menu items */
#sidebar .sidebar-menu {
  padding: 0 0.5rem;
}

#sidebar .sidebar-list-item {
  margin: 1px 0;
  border-radius: 10px;
  overflow: hidden;
}

/* Sidebar links - base state */
#sidebar .sidebar-link {
  color: #4b5563 !important;
  padding: 0.7rem 1rem;
  border-radius: 10px;
  transition: all 0.15s ease;
  position: relative;
  font-weight: 500;
  font-size: 0.875rem;
}

#sidebar .sidebar-link i {
  color: #9ca3af !important;
  font-size: 1.1rem;
  width: 22px;
  text-align: center;
  transition: all 0.15s ease;
}

#sidebar .sidebar-link span {
  transition: all 0.15s ease;
}

/* Hover state */
#sidebar .sidebar-link:hover {
  background: #f3f4f6 !important;
  color: #1f2937 !important;
}

#sidebar .sidebar-link:hover i {
  color: #1f4fd6 !important;
}

/* Keep dropdown toggle styled when submenu is open (not blue) */
#sidebar .sidebar-link[data-toggle="collapse"][aria-expanded="true"] {
  background: #f3efe8 !important;
  color: #1f2937 !important;
  box-shadow: none;
  transform: none;
}

#sidebar .sidebar-link[data-toggle="collapse"][aria-expanded="true"] i {
  color: #1f4fd6 !important;
}

/* Active state */
#sidebar .sidebar-link.active {
  background: #1f4fd6 !important;
  color: #fff !important;
  box-shadow: none;
  transform: none;
}

#sidebar .sidebar-link.active i {
  color: #fff !important;
}

#sidebar .sidebar-link.active::before {
  color: #fff !important;
}

/* Collapse arrow styling */
#sidebar .sidebar-link[data-toggle="collapse"]::before {
  color: #9ca3af;
  font-size: 0.7rem;
  right: 0.75rem;
  transition: all 0.2s ease;
}

#sidebar .sidebar-link[data-toggle="collapse"]:hover::before {
  color: #1f4fd6;
}

/* Submenu styling */
#sidebar .collapse .sidebar-menu,
#sidebar .collapsing .sidebar-menu {
  background: #f5f2ed;
  border-radius: 10px;
  margin: 0.25rem 0 0.5rem 0.75rem;
  padding: 0.35rem !important;
  border-left: 2px solid #1f4fd6 !important;
}

#sidebar .collapse .sidebar-link,
#sidebar .collapsing .sidebar-link {
  padding: 0.5rem 0.75rem !important;
  font-size: 0.813rem;
  border-radius: 8px;
}

/* Badge styling */
#sidebar .badge {
  font-size: 0.65rem;
  padding: 0.3em 0.55em;
  border-radius: 50px;
  font-weight: 600;
}

#sidebar .badge-warning {
  background: #f59e0b;
  color: #fff;
}

#sidebar .badge-danger {
  background: #ef4444;
  animation: pulse-badge 2s infinite;
}

@keyframes pulse-badge {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}

/* ==========================================
   SHRINK/MINIMIZED SIDEBAR STYLES
   ========================================== */

#sidebar.shrink {
  width: 70px;
}

#sidebar.shrink .text-gray-400 {
  font-size: 0;
  padding: 0.5rem !important;
  text-align: center;
}

#sidebar.shrink .text-gray-400::after {
  content: '•';
  font-size: 1rem;
  color: #d1d5db;
}

#sidebar.shrink .sidebar-menu {
  padding: 0 0.35rem;
}

#sidebar.shrink .sidebar-list-item {
  position: relative;
}

#sidebar.shrink .sidebar-link {
  justify-content: center;
  padding: 0.85rem 0.5rem;
}

#sidebar.shrink .sidebar-link i {
  margin: 0 !important;
  font-size: 1.2rem;
}

#sidebar.shrink .sidebar-link span {
  position: absolute;
  left: 72px;
  background: #faf9f6;
  color: #1f2937 !important;
  padding: 0.5rem 0.9rem;
  border-radius: 8px;
  font-size: 0.813rem;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-8px);
  transition: all 0.15s ease;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
  border: 1px solid #e5e7eb;
  z-index: 1000;
  pointer-events: none;
}

#sidebar.shrink .sidebar-link span::before {
  content: '';
  position: absolute;
  left: -7px;
  top: 50%;
  transform: translateY(-50%);
  border: 7px solid transparent;
  border-right-color: #faf9f6;
  filter: drop-shadow(-2px 0 2px rgba(0, 0, 0, 0.05));
}

#sidebar.shrink .sidebar-link:hover span {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

#sidebar.shrink .sidebar-link[data-toggle="collapse"]::before {
  display: none;
}

/* Hide submenu in shrink mode */
#sidebar.shrink .collapse,
#sidebar.shrink .collapsing {
  display: none !important;
}

/* Badge as dot in shrink mode */
#sidebar.shrink .badge {
  position: absolute;
  top: 6px;
  right: 6px;
  font-size: 0;
  width: 8px;
  height: 8px;
  padding: 0;
  min-width: 8px;
}

/* ==========================================
   MOBILE RESPONSIVE STYLES
   ========================================== */

@media (max-width: 1199.98px) {
  #sidebar.sidebar {
    width: 70px;
    margin-left: -70px;
  }
  
  #sidebar.sidebar.show {
    margin-left: 0;
  }
  
  #sidebar .text-gray-400 {
    font-size: 0;
    padding: 0.5rem !important;
    text-align: center;
  }
  
  #sidebar .text-gray-400::after {
    content: '•';
    font-size: 1rem;
    color: #d1d5db;
  }
  
  #sidebar .sidebar-menu {
    padding: 0 0.35rem;
  }
  
  #sidebar .sidebar-list-item {
    position: relative;
  }
  
  #sidebar .sidebar-link {
    justify-content: center;
    padding: 0.85rem 0.5rem;
  }
  
  #sidebar .sidebar-link i {
    margin: 0 !important;
    font-size: 1.2rem;
  }
  
  #sidebar .sidebar-link span {
    position: absolute;
    left: 72px;
    background: #faf9f6;
    color: #1f2937 !important;
    padding: 0.5rem 0.9rem;
    border-radius: 8px;
    font-size: 0.813rem;
    white-space: nowrap;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-8px);
    transition: all 0.15s ease;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.12);
    border: 1px solid #e5e7eb;
    z-index: 1000;
    pointer-events: none;
  }
  
  #sidebar .sidebar-link span::before {
    content: '';
    position: absolute;
    left: -7px;
    top: 50%;
    transform: translateY(-50%);
    border: 7px solid transparent;
    border-right-color: #faf9f6;
  }
  
  #sidebar .sidebar-link:hover span {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  
  #sidebar .sidebar-link[data-toggle="collapse"]::before {
    display: none;
  }
  
  #sidebar .collapse,
  #sidebar .collapsing {
    display: none !important;
  }
  
  #sidebar .badge {
    position: absolute;
    top: 6px;
    right: 6px;
    font-size: 0;
    width: 8px;
    height: 8px;
    padding: 0;
    min-width: 8px;
  }
}

/* ==========================================
   DARK MODE SIDEBAR
   ========================================== */

body.theme-blue #sidebar.sidebar {
  background: #1f2937;
  border-right-color: #374151;
}

body.theme-blue #sidebar .text-gray-400 {
  color: #6b7280 !important;
}

body.theme-blue #sidebar .sidebar-link {
  color: #d1d5db !important;
}

body.theme-blue #sidebar .sidebar-link i,
body.theme-blue #sidebar .sidebar-link .text-gray,
body.theme-blue #sidebar .sidebar-link [class^="o-"] {
  color: #9ca3af !important;
}

body.theme-blue #sidebar .sidebar-link:hover {
  background: #374151 !important;
  color: #fff !important;
}

body.theme-blue #sidebar .sidebar-link:hover i,
body.theme-blue #sidebar .sidebar-link:hover .text-gray,
body.theme-blue #sidebar .sidebar-link:hover [class^="o-"] {
  color: #9cbaff !important;
}

body.theme-blue #sidebar .sidebar-link.active {
  background: rgba(31, 79, 214, 0.15) !important;
  color: #fff !important;
}

body.theme-blue #sidebar .sidebar-link.active i,
body.theme-blue #sidebar .sidebar-link.active .text-gray,
body.theme-blue #sidebar .sidebar-link.active [class^="o-"] {
  color: #dbe7ff !important;
}

body.theme-blue #sidebar .collapse .sidebar-menu,
body.theme-blue #sidebar .collapsing .sidebar-menu {
  background: #111827;
}

body.theme-blue #sidebar.shrink .sidebar-link span {
  background: #374151;
  color: #fff !important;
  border-color: #4b5563;
}

body.theme-blue #sidebar.shrink .sidebar-link span::before {
  border-right-color: #374151;
}

body.theme-blue #sidebar.sidebar::-webkit-scrollbar-thumb {
  background: rgba(107, 114, 128, 0.5);
}

/* Table row highlight for active sessions - light green background */
.table-success-light,
.table-success-light > th,
.table-success-light > td {
  background-color: rgba(40, 167, 69, 0.1) !important;
}

.table-hover .table-success-light:hover,
.table-hover .table-success-light:hover > td,
.table-hover .table-success-light:hover > th {
  background-color: rgba(40, 167, 69, 0.2) !important;
}

/* Dark mode support for table-success-light */
body.theme-blue .table-success-light,
body.theme-blue .table-success-light > th,
body.theme-blue .table-success-light > td {
  background-color: rgba(81, 207, 102, 0.1) !important;
  color: inherit !important;
}

body.theme-blue .table-hover .table-success-light:hover,
body.theme-blue .table-hover .table-success-light:hover > td,
body.theme-blue .table-hover .table-success-light:hover > th {
  background-color: rgba(81, 207, 102, 0.2) !important;
}

/* ==========================================
   DARK MODE - SALES REPORT
   ========================================== */

body.theme-blue .stat-card {
  background: #1f2937;
  border-color: #374151;
}

body.theme-blue .stat-card .stat-label {
  color: #9ca3af;
}

body.theme-blue .stat-card .stat-value {
  color: #f3f4f6;
}

body.theme-blue .stat-card.revenue .stat-icon { background: rgba(16, 185, 129, 0.15); }
body.theme-blue .stat-card.checked-in .stat-icon { background: rgba(59, 130, 246, 0.15); }
body.theme-blue .stat-card.guests .stat-icon { background: rgba(118, 75, 162, 0.15); }
body.theme-blue .stat-card.reservations .stat-icon { background: rgba(245, 158, 11, 0.15); }

body.theme-blue .period-toggle {
  background: #374151;
}

body.theme-blue .period-btn {
  color: #9ca3af;
}

body.theme-blue .period-btn:hover {
  color: #9cbaff;
}

body.theme-blue .period-btn.active {
  background: #1f2937;
  color: #9cbaff;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

body.theme-blue .filters-card {
  background: #1f2937;
  border-color: #374151;
}

body.theme-blue .quick-filter-btn {
  background: #374151;
  border-color: #4b5563;
  color: #d1d5db;
}

body.theme-blue .quick-filter-btn:hover {
  border-color: #818cf8;
  color: #9cbaff;
  background: rgba(31, 79, 214, 0.15);
}

body.theme-blue .quick-filter-btn.active {
  background: #1f4fd6;
  color: white;
  border-color: #1f4fd6;
}

body.theme-blue .sales-table-card {
  background: #1f2937;
  border-color: #374151;
}

body.theme-blue .table-header {
  border-bottom-color: #374151;
}

body.theme-blue .table-header h5 {
  color: #f3f4f6;
}

body.theme-blue .sales-table th {
  background: #111827;
  color: #9ca3af;
  border-bottom-color: #374151;
}

body.theme-blue .sales-table td {
  color: #e5e7eb;
  border-bottom-color: #374151;
}

body.theme-blue .sales-table tbody tr:hover {
  background: #374151;
}

body.theme-blue .guest-name {
  color: #f3f4f6;
}

body.theme-blue .room-type-tag {
  background: linear-gradient(135deg, rgba(14, 165, 233, 0.15) 0%, rgba(6, 182, 212, 0.15) 100%);
  color: #67e8f9;
  border-color: rgba(6, 182, 212, 0.3);
}

body.theme-blue .room-badge {
  background: #374151;
  color: #e5e7eb;
}

body.theme-blue .date-info .date {
  color: #e5e7eb;
}

body.theme-blue .amount-cell {
  color: #f3f4f6;
}

body.theme-blue .btn-print-outline {
  background: #374151;
  border-color: #4b5563;
  color: #e5e7eb;
}

body.theme-blue .btn-print-outline:hover {
  border-color: #818cf8;
  color: #9cbaff;
  background: rgba(31, 79, 214, 0.15);
}

body.theme-blue .print-btn-group {
  border-top-color: #374151;
}

body.theme-blue .empty-state {
  color: #6b7280;
}

/* ==========================================
   DARK MODE - COMMON PMS ELEMENTS
   ========================================== */

/* Cards with white backgrounds */
body.theme-blue .card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .card-header {
  background: #111827 !important;
  border-bottom-color: #374151 !important;
  color: #f3f4f6;
}

body.theme-blue .card-body {
  background: #1f2937 !important;
}

body.theme-blue .card-footer {
  background: #111827 !important;
  border-top-color: #374151 !important;
}

/* Form controls */
body.theme-blue .form-control {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .form-control:focus {
  background: #374151 !important;
  border-color: #1f4fd6 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .form-control::placeholder {
  color: #9ca3af !important;
}

body.theme-blue select.form-control {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%239ca3af' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e") !important;
}

body.theme-blue .input-group-text {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #d1d5db !important;
}

/* Tables */
body.theme-blue .table {
  color: #e5e7eb;
}

body.theme-blue .table thead th {
  background: #111827 !important;
  color: #9ca3af !important;
  border-color: #374151 !important;
}

body.theme-blue .table td,
body.theme-blue .table th {
  border-color: #374151 !important;
}

body.theme-blue .table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.02) !important;
}

body.theme-blue .table-hover tbody tr:hover {
  background-color: rgba(255, 255, 255, 0.05) !important;
}

body.theme-blue .table-primary {
  background-color: rgba(59, 130, 246, 0.15) !important;
}

body.theme-blue .table-success {
  background-color: rgba(34, 197, 94, 0.15) !important;
}

body.theme-blue .table-warning {
  background-color: rgba(245, 158, 11, 0.15) !important;
}

body.theme-blue .table-danger {
  background-color: rgba(239, 68, 68, 0.15) !important;
}

body.theme-blue .table-info {
  background-color: rgba(31, 79, 214, 0.15) !important;
}

body.theme-blue .table-secondary {
  background-color: rgba(107, 114, 128, 0.15) !important;
}

/* Modals */
body.theme-blue .modal-content {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .modal-header {
  background: #111827 !important;
  border-bottom-color: #374151 !important;
}

body.theme-blue .modal-header .modal-title {
  color: #f3f4f6 !important;
}

body.theme-blue .modal-header .close {
  color: #9ca3af !important;
}

body.theme-blue .modal-body {
  color: #e5e7eb !important;
}

body.theme-blue .modal-footer {
  background: #111827 !important;
  border-top-color: #374151 !important;
}

/* Dropdowns */
body.theme-blue .dropdown-menu {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .dropdown-item {
  color: #e5e7eb !important;
}

body.theme-blue .dropdown-item:hover,
body.theme-blue .dropdown-item:focus {
  background: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .dropdown-divider {
  border-color: #374151 !important;
}

/* Alerts */
body.theme-blue .alert-info {
  background: rgba(59, 130, 246, 0.15) !important;
  border-color: rgba(59, 130, 246, 0.3) !important;
  color: #93c5fd !important;
}

body.theme-blue .alert-warning {
  background: rgba(245, 158, 11, 0.15) !important;
  border-color: rgba(245, 158, 11, 0.3) !important;
  color: #fcd34d !important;
}

body.theme-blue .alert-danger {
  background: rgba(239, 68, 68, 0.15) !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
  color: #fca5a5 !important;
}

body.theme-blue .alert-success {
  background: rgba(34, 197, 94, 0.15) !important;
  border-color: rgba(34, 197, 94, 0.3) !important;
  color: #86efac !important;
}

/* List groups */
body.theme-blue .list-group-item {
  background: #1f2937 !important;
  border-color: #374151 !important;
  color: #e5e7eb !important;
}

body.theme-blue .list-group-item:hover {
  background: #374151 !important;
}

body.theme-blue .list-group-item.active {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* Buttons - outline variants */
body.theme-blue .btn-outline-secondary {
  color: #d1d5db !important;
  border-color: #4b5563 !important;
}

body.theme-blue .btn-outline-secondary:hover {
  background: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .btn-outline-primary {
  color: #9cbaff !important;
  border-color: #1f4fd6 !important;
}

body.theme-blue .btn-outline-primary:hover {
  background: rgba(31, 79, 214, 0.2) !important;
  color: #c7d2fe !important;
}

/* Text colors */
body.theme-blue .text-muted {
  color: #9ca3af !important;
}

body.theme-blue .text-dark {
  color: #f3f4f6 !important;
}

body.theme-blue h1, body.theme-blue h2, body.theme-blue h3,
body.theme-blue h4, body.theme-blue h5, body.theme-blue h6 {
  color: #f3f4f6;
}

body.theme-blue label {
  color: #d1d5db !important;
}

body.theme-blue p {
  color: #e5e7eb;
}

/* Page header */
body.theme-blue .page-header {
  color: #f3f4f6 !important;
}

/* Pagination */
body.theme-blue .page-link {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #d1d5db !important;
}

body.theme-blue .page-link:hover {
  background: #4b5563 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .page-item.active .page-link {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

body.theme-blue .page-item.disabled .page-link {
  background: #1f2937 !important;
  color: #6b7280 !important;
}

/* Calendar specific */
body.theme-blue .fc-theme-standard td,
body.theme-blue .fc-theme-standard th {
  border-color: #374151 !important;
}

body.theme-blue .fc-theme-standard .fc-scrollgrid {
  border-color: #374151 !important;
}

body.theme-blue .fc-col-header-cell {
  background: #111827 !important;
}

body.theme-blue .fc-daygrid-day {
  background: #1f2937 !important;
}

body.theme-blue .fc-daygrid-day:hover {
  background: #374151 !important;
}

body.theme-blue .fc-daygrid-day-number {
  color: #e5e7eb !important;
}

/* Card encoder specific */
body.theme-blue .encoder-card {
  background: #1f2937 !important;
}

body.theme-blue .encoder-card.pending {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, #1f2937 100%) !important;
}

body.theme-blue .encoder-card.launched {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, #1f2937 100%) !important;
}

/* Booking filters */
body.theme-blue .filter-row {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .booking-legend {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .booking-legend span {
  color: #d1d5db !important;
}

/* Guest bills, city ledger specific */
body.theme-blue .nav-tabs {
  border-color: #374151 !important;
}

body.theme-blue .nav-tabs .nav-link {
  color: #9ca3af !important;
}

body.theme-blue .nav-tabs .nav-link:hover {
  border-color: #374151 !important;
}

body.theme-blue .nav-tabs .nav-link.active {
  background: #1f2937 !important;
  border-color: #374151 #374151 #1f2937 !important;
  color: #f3f4f6 !important;
}

/* Badges in dark mode - keep vibrant */
body.theme-blue .badge-warning {
  background: #f59e0b !important;
  color: #000 !important;
}

body.theme-blue .badge-danger {
  background: #ef4444 !important;
}

body.theme-blue .badge-success {
  background: #22c55e !important;
}

body.theme-blue .badge-info {
  background: #3b82f6 !important;
}

body.theme-blue .badge-secondary {
  background: #6b7280 !important;
}

/* Borders */
body.theme-blue hr {
  border-color: #374151 !important;
}

body.theme-blue .border {
  border-color: #374151 !important;
}

body.theme-blue .border-top {
  border-top-color: #374151 !important;
}

body.theme-blue .border-bottom {
  border-bottom-color: #374151 !important;
}

/* Backgrounds */
body.theme-blue .bg-white {
  background: #1f2937 !important;
}

body.theme-blue .bg-light {
  background: #111827 !important;
}

/* Links */
body.theme-blue a:not(.btn):not(.nav-link):not(.dropdown-item):not(.list-group-item) {
  color: #93c5fd;
}

body.theme-blue a:not(.btn):not(.nav-link):not(.dropdown-item):not(.list-group-item):hover {
  color: #bfdbfe;
}

/* ==========================================
   DARK MODE - CHECKIN, BOOKGUESTS, RESERVEGUESTS
   Modern form pages with gradient headers
   ========================================== */

body.theme-blue .modern-card-header {
  background: #1f4fd6 !important;
}

body.theme-blue .section-divider {
  background: #374151 !important;
  color: #e5e7eb !important;
}

body.theme-blue .section-divider i {
  color: #9cbaff !important;
}

body.theme-blue .line {
  background: #374151 !important;
  border-color: #374151 !important;
}

/* Guest autocomplete dropdown */
body.theme-blue .list-group {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - BOOKINGS.PHP
   All guests table view
   ========================================== */

body.theme-blue .filter-row {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .filter-row label {
  color: #d1d5db !important;
}

body.theme-blue .booking-legend {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .booking-legend span {
  color: #d1d5db !important;
}

/* Payment badges in bookings */
body.theme-blue .payment-badge-link {
  box-shadow: 0 1px 3px rgba(0,0,0,0.3) !important;
}

/* ==========================================
   DARK MODE - ARRIVALS.PHP, BOOKED/RESERVED/CHECKEDIN GUESTS
   Guest list tables
   ========================================== */

body.theme-blue .arrivals-card,
body.theme-blue .guest-list-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .arrivals-card .card-header,
body.theme-blue .guest-list-card .card-header {
  background: #111827 !important;
}

/* ==========================================
   DARK MODE - PAYMENTS.PHP, GUESTCREDITS.PHP
   Financial pages with stat cards
   ========================================== */

body.theme-blue .stat-card,
body.theme-blue .summary-card,
body.theme-blue .credit-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .stat-card .stat-value,
body.theme-blue .summary-card .value,
body.theme-blue .credit-value {
  color: #f3f4f6 !important;
}

body.theme-blue .stat-card .stat-label,
body.theme-blue .summary-card .label,
body.theme-blue .credit-label {
  color: #9ca3af !important;
}

body.theme-blue .stat-icon,
body.theme-blue .summary-icon {
  background: rgba(31, 79, 214, 0.15) !important;
}

body.theme-blue .stat-card.revenue .stat-icon,
body.theme-blue .stat-card.income .stat-icon {
  background: rgba(34, 197, 94, 0.15) !important;
}

body.theme-blue .stat-card.expense .stat-icon,
body.theme-blue .stat-card.refunds .stat-icon {
  background: rgba(239, 68, 68, 0.15) !important;
}

/* Icon backgrounds for different types */
body.theme-blue [class*="stat-icon"][style*="background: #ecfdf5"],
body.theme-blue [class*="stat-icon"][style*="background: #fef2f2"],
body.theme-blue [class*="stat-icon"][style*="background: #eff6ff"],
body.theme-blue [class*="stat-icon"][style*="background: #fefce8"],
body.theme-blue [class*="stat-icon"][style*="background: #f5f3ff"] {
  background: rgba(31, 79, 214, 0.15) !important;
}

/* ==========================================
   DARK MODE - CITYLEDGER.PHP
   Company accounts ledger
   ========================================== */

body.theme-blue .ledger-card,
body.theme-blue .company-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .ledger-header {
  background: linear-gradient(135deg, #1f2937 0%, #111827 100%) !important;
  border-bottom-color: #374151 !important;
}

body.theme-blue .balance-display {
  color: #f3f4f6 !important;
}

body.theme-blue .transaction-row {
  border-bottom-color: #374151 !important;
}

body.theme-blue .transaction-row:hover {
  background: #374151 !important;
}

/* ==========================================
   DARK MODE - GUESTBILLS.PHP
   Guest folio/bills page
   ========================================== */

body.theme-blue .bill-card,
body.theme-blue .folio-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .bill-header,
body.theme-blue .folio-header {
  background: #111827 !important;
  border-bottom-color: #374151 !important;
}

body.theme-blue .bill-item,
body.theme-blue .charge-item {
  border-bottom-color: #374151 !important;
}

body.theme-blue .bill-total,
body.theme-blue .folio-total {
  background: #111827 !important;
  border-top-color: #374151 !important;
}

/* ==========================================
   DARK MODE - ADMINTOOLS.PHP
   Admin tools and settings
   ========================================== */

body.theme-blue .tool-card,
body.theme-blue .settings-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .tool-card:hover {
  background: #374151 !important;
}

body.theme-blue .danger-zone {
  background: rgba(239, 68, 68, 0.1) !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
}

body.theme-blue .info-box,
body.theme-blue .help-box {
  background: rgba(59, 130, 246, 0.1) !important;
  border-color: rgba(59, 130, 246, 0.3) !important;
  color: #93c5fd !important;
}

body.theme-blue .warning-box {
  background: rgba(245, 158, 11, 0.1) !important;
  border-color: rgba(245, 158, 11, 0.3) !important;
  color: #fcd34d !important;
}

/* ==========================================
   DARK MODE - ACTIVITY_LOG.PHP
   Activity/audit log page
   ========================================== */

body.theme-blue .log-entry,
body.theme-blue .activity-item {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .log-entry:hover,
body.theme-blue .activity-item:hover {
  background: #374151 !important;
}

body.theme-blue .log-action {
  color: #e5e7eb !important;
}

body.theme-blue .log-timestamp {
  color: #9ca3af !important;
}

body.theme-blue .log-details {
  background: #111827 !important;
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - USERS.PHP
   User management page
   ========================================== */

body.theme-blue .user-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .user-avatar {
  background: #1f4fd6 !important;
}

body.theme-blue .role-badge {
  background: rgba(31, 79, 214, 0.15) !important;
  color: #9cbaff !important;
  border-color: rgba(31, 79, 214, 0.3) !important;
}

/* ==========================================
   DARK MODE - ROOMCATALOG.PHP
   Room inventory page
   ========================================== */

body.theme-blue .room-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .room-card:hover {
  background: #374151 !important;
}

body.theme-blue .room-status {
  border-color: #374151 !important;
}

body.theme-blue .room-number {
  color: #f3f4f6 !important;
}

body.theme-blue .room-type {
  color: #9ca3af !important;
}

body.theme-blue .room-price {
  color: #9cbaff !important;
}

/* ==========================================
   DARK MODE - INDEX.PHP (DASHBOARD)
   Main dashboard page
   ========================================== */

body.theme-blue .dashboard-card,
body.theme-blue .overview-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .occupancy-card {
  background: #1f2937 !important;
}

/* Occupancy state backgrounds */
body.theme-blue .occupancy-full {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.15) 0%, #1f2937 100%) !important;
}

body.theme-blue .occupancy-high {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.15) 0%, #1f2937 100%) !important;
}

body.theme-blue .occupancy-medium {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.15) 0%, #1f2937 100%) !important;
}

body.theme-blue .occupancy-low {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.15) 0%, #1f2937 100%) !important;
}

body.theme-blue .quick-action-btn {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #e5e7eb !important;
}

body.theme-blue .quick-action-btn:hover {
  background: #4b5563 !important;
  color: #f3f4f6 !important;
}

/* ==========================================
   DARK MODE - GUESTS.PHP
   Guest directory page
   ========================================== */

body.theme-blue .guest-card,
body.theme-blue .guest-profile {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .guest-name-display {
  color: #f3f4f6 !important;
}

body.theme-blue .guest-info-label {
  color: #9ca3af !important;
}

body.theme-blue .guest-info-value {
  color: #e5e7eb !important;
}

body.theme-blue .guest-history-item {
  background: #111827 !important;
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - CARD_ENCODER.PHP
   Card encoding page
   ========================================== */

body.theme-blue .encoder-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .encoder-card.pending {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, #1f2937 100%) !important;
  border-left-color: #f59e0b !important;
}

body.theme-blue .encoder-card.launched {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, #1f2937 100%) !important;
  border-left-color: #3b82f6 !important;
}

body.theme-blue .card-type-badge.card-type-guest {
  background: rgba(59, 130, 246, 0.15) !important;
  color: #93c5fd !important;
}

body.theme-blue .card-type-badge.card-type-master {
  background: rgba(236, 72, 153, 0.15) !important;
  color: #f9a8d4 !important;
}

body.theme-blue .card-type-badge.card-type-staff {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #d8b4fe !important;
}

body.theme-blue .key-display {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue #room-search-results {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue #room-search-results .list-group-item {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue #room-search-results .list-group-item:hover {
  background: #374151 !important;
}

/* ==========================================
   DARK MODE - RESTAURANT MODULE
   Restaurant pages
   ========================================== */

body.theme-blue .order-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .order-item {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .menu-item-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .menu-item-card:hover {
  background: #374151 !important;
}

body.theme-blue .section-header {
  background: #111827 !important;
  color: #f3f4f6 !important;
}

/* ==========================================
   DARK MODE - LOADING OVERLAYS
   ========================================== */

body.theme-blue .loading-overlay {
  background: rgba(17, 24, 39, 0.8) !important;
}

body.theme-blue .search-highlight {
  background: rgba(245, 158, 11, 0.3) !important;
}

/* ==========================================
   DARK MODE - COMPLETEDSTAYS.PHP, EARLYCHECKOUT.PHP
   ========================================== */

body.theme-blue .booking-subrow {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .booking-subrow:hover {
  background: rgba(31, 79, 214, 0.1) !important;
}

/* ==========================================
   DARK MODE - FLASH ANIMATIONS
   ========================================== */

body.theme-blue .flash-success {
  animation: flash-dark-success 0.5s ease !important;
}

@keyframes flash-dark-success {
  0%, 100% { background-color: transparent; }
  50% { background-color: rgba(34, 197, 94, 0.2); }
}

body.theme-blue .flash-warning {
  animation: flash-dark-warning 0.5s ease !important;
}

@keyframes flash-dark-warning {
  0%, 100% { background-color: transparent; }
  50% { background-color: rgba(245, 158, 11, 0.2); }
}

body.theme-blue .flash-danger {
  animation: flash-dark-danger 0.5s ease !important;
}

@keyframes flash-dark-danger {
  0%, 100% { background-color: transparent; }
  50% { background-color: rgba(239, 68, 68, 0.2); }
}

/* ==========================================
   DARK MODE - INLINE STYLE OVERRIDES
   Force override common hardcoded colors
   ========================================== */

body.theme-blue [style*="background: white"],
body.theme-blue [style*="background: #fff"],
body.theme-blue [style*="background:#fff"],
body.theme-blue [style*="background: #ffffff"],
body.theme-blue [style*="background:#ffffff"],
body.theme-blue [style*="background-color: white"],
body.theme-blue [style*="background-color: #fff"],
body.theme-blue [style*="background-color:#fff"],
body.theme-blue [style*="background-color: #ffffff"],
body.theme-blue [style*="background-color:#ffffff"] {
  background: #1f2937 !important;
}

body.theme-blue [style*="background: #f8f9fa"],
body.theme-blue [style*="background:#f8f9fa"],
body.theme-blue [style*="background-color: #f8f9fa"],
body.theme-blue [style*="background-color:#f8f9fa"],
body.theme-blue [style*="background: #f8fafc"],
body.theme-blue [style*="background:#f8fafc"],
body.theme-blue [style*="background: #f1f5f9"],
body.theme-blue [style*="background:#f1f5f9"],
body.theme-blue [style*="background: #f3f4f6"],
body.theme-blue [style*="background:#f3f4f6"],
body.theme-blue [style*="background: #faf9f6"],
body.theme-blue [style*="background:#faf9f6"] {
  background: #111827 !important;
}

body.theme-blue [style*="color: #1f2937"],
body.theme-blue [style*="color:#1f2937"],
body.theme-blue [style*="color: #374151"],
body.theme-blue [style*="color:#374151"],
body.theme-blue [style*="color: #344054"],
body.theme-blue [style*="color:#344054"] {
  color: #e5e7eb !important;
}

body.theme-blue [style*="border-color: #e5e7eb"],
body.theme-blue [style*="border-color:#e5e7eb"],
body.theme-blue [style*="border: 1px solid #e5e7eb"],
body.theme-blue [style*="border: 1px solid #e2e8f0"],
body.theme-blue [style*="border: 1px solid #dee2e6"],
body.theme-blue [style*="border: 1px solid #d0d5dd"] {
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - MISC COMMON ELEMENTS
   ========================================== */

body.theme-blue .breadcrumb {
  background: #111827 !important;
}

body.theme-blue .breadcrumb-item a {
  color: #93c5fd !important;
}

body.theme-blue .breadcrumb-item.active {
  color: #9ca3af !important;
}

body.theme-blue .progress {
  background: #374151 !important;
}

body.theme-blue .toast {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .toast-header {
  background: #111827 !important;
  border-bottom-color: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .toast-body {
  color: #e5e7eb !important;
}

body.theme-blue .popover {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .popover-header {
  background: #111827 !important;
  border-bottom-color: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .popover-body {
  color: #e5e7eb !important;
}

body.theme-blue .tooltip-inner {
  background: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .custom-select {
  background-color: #374151 !important;
  border-color: #4b5563 !important;
  color: #f3f4f6 !important;
  /* Don't set background or background-image here - let dark-mode.css handle the arrow */
}

body.theme-blue .custom-control-label::before {
  background: #374151 !important;
  border-color: #4b5563 !important;
}

body.theme-blue .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* DataTables dark mode */
body.theme-blue .dataTables_wrapper .dataTables_length select,
body.theme-blue .dataTables_wrapper .dataTables_filter input {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .dataTables_wrapper .dataTables_info {
  color: #9ca3af !important;
}

body.theme-blue .dataTables_wrapper .dataTables_paginate .paginate_button {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #d1d5db !important;
}

body.theme-blue .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: #4b5563 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .dataTables_wrapper .dataTables_paginate .paginate_button.current {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
  color: #fff !important;
}

/* Flatpickr dark mode */
body.theme-blue .flatpickr-calendar {
  background: #1f2937 !important;
  border-color: #374151 !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.4) !important;
}

body.theme-blue .flatpickr-months {
  background: #111827 !important;
}

body.theme-blue .flatpickr-month {
  color: #f3f4f6 !important;
}

body.theme-blue .flatpickr-weekdays {
  background: #111827 !important;
}

body.theme-blue .flatpickr-weekday {
  color: #9ca3af !important;
}

body.theme-blue .flatpickr-day {
  color: #e5e7eb !important;
}

body.theme-blue .flatpickr-day:hover {
  background: #374151 !important;
}

body.theme-blue .flatpickr-day.selected {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

body.theme-blue .flatpickr-day.today {
  border-color: #1f4fd6 !important;
}

body.theme-blue .flatpickr-day.disabled {
  color: #4b5563 !important;
}

body.theme-blue .flatpickr-current-month input.cur-year,
body.theme-blue .flatpickr-current-month .flatpickr-monthDropdown-months {
  background: transparent !important;
  color: #f3f4f6 !important;
}

body.theme-blue .numInputWrapper:hover {
  background: #374151 !important;
}

/* ==========================================
   DARK MODE - CHECKIN/BOOKGUESTS/RESERVEGUESTS SPECIFIC
   Override inline styles defined in <style> blocks
   ========================================== */

/* Section dividers */
body.theme-blue .section-divider {
  background: linear-gradient(90deg, #374151 0%, #4b5563 50%, #374151 100%) !important;
  color: #d1d5db !important;
}

body.theme-blue .section-divider span {
  background: #1f2937 !important;
}

/* Booking rows (checkin.php) */
body.theme-blue .booking-row {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .booking-row:hover {
  background: #374151 !important;
  border-color: #1f4fd6 !important;
}

/* Form sections */
body.theme-blue .form-section {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

/* Button secondary (used in checkin forms) */
body.theme-blue .btn-secondary {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #e5e7eb !important;
}

body.theme-blue .btn-secondary:hover {
  background: #4b5563 !important;
  border-color: #6b7280 !important;
  color: #f3f4f6 !important;
}

/* Modal footer */
body.theme-blue .modal-footer {
  background: #111827 !important;
  border-top-color: #374151 !important;
}

/* Line divider */
body.theme-blue .line {
  background: linear-gradient(90deg, transparent, #374151, transparent) !important;
}

/* Small text and labels */
body.theme-blue small.text-muted,
body.theme-blue .text-muted {
  color: #9ca3af !important;
}

/* Result list items (autocomplete dropdowns) */
body.theme-blue #results .list-group-item,
body.theme-blue #guestResults .list-group-item,
body.theme-blue .autocomplete-results .list-group-item {
  background: #1f2937 !important;
  border-color: #374151 !important;
  color: #e5e7eb !important;
}

body.theme-blue #results .list-group-item:hover,
body.theme-blue #guestResults .list-group-item:hover,
body.theme-blue .autocomplete-results .list-group-item:hover {
  background: #374151 !important;
}

body.theme-blue #results .list-group-item small,
body.theme-blue #guestResults .list-group-item small {
  color: #9ca3af !important;
}

/* Alert boxes */
body.theme-blue .alert-success {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.15), rgba(22, 163, 74, 0.2)) !important;
  color: #86efac !important;
  border-color: rgba(34, 197, 94, 0.3) !important;
}

body.theme-blue .alert-danger {
  background: linear-gradient(135deg, rgba(239, 68, 68, 0.15), rgba(220, 38, 38, 0.2)) !important;
  color: #fca5a5 !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
}

body.theme-blue .alert-warning {
  background: linear-gradient(135deg, rgba(245, 158, 11, 0.15), rgba(217, 119, 6, 0.2)) !important;
  color: #fcd34d !important;
  border-color: rgba(245, 158, 11, 0.3) !important;
}

body.theme-blue .alert-info {
  background: linear-gradient(135deg, rgba(59, 130, 246, 0.15), rgba(37, 99, 235, 0.2)) !important;
  color: #93c5fd !important;
  border-color: rgba(59, 130, 246, 0.3) !important;
}

/* ==========================================
   DARK MODE - ARRIVALS / GUEST LIST PAGES
   Override specific inline styles
   ========================================== */

/* Legend card style */
body.theme-blue .legend-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

/* Payment badges */
body.theme-blue .badge-paid {
  background: linear-gradient(145deg, #22c55e 0%, #16a34a 100%) !important;
}

body.theme-blue .badge-unpaid {
  background: linear-gradient(145deg, #ef4444 0%, #dc2626 100%) !important;
}

body.theme-blue .badge-partial {
  background: linear-gradient(145deg, #f59e0b 0%, #d97706 100%) !important;
}

/* Guest count badges */
body.theme-blue .guest-count-badge {
  background: rgba(31, 79, 214, 0.15) !important;
  color: #9cbaff !important;
}

/* ==========================================
   DARK MODE - PAYMENTS/REFUNDS PAGE
   ========================================== */

body.theme-blue .payment-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .refund-card {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .payment-method-icon {
  background: rgba(31, 79, 214, 0.15) !important;
}

body.theme-blue .amount-display {
  color: #f3f4f6 !important;
}

body.theme-blue .transaction-date {
  color: #9ca3af !important;
}

/* ==========================================
   DARK MODE - CALENDAR PAGE
   ========================================== */

body.theme-blue .fc-theme-standard td,
body.theme-blue .fc-theme-standard th {
  border-color: #374151 !important;
}

body.theme-blue .fc-theme-standard .fc-scrollgrid {
  border-color: #374151 !important;
}

body.theme-blue .fc-col-header-cell {
  background: #111827 !important;
}

body.theme-blue .fc-col-header-cell-cushion {
  color: #e5e7eb !important;
}

body.theme-blue .fc-daygrid-day {
  background: #1f2937 !important;
}

body.theme-blue .fc-daygrid-day:hover {
  background: #374151 !important;
}

body.theme-blue .fc-day-today {
  background: rgba(31, 79, 214, 0.1) !important;
}

body.theme-blue .fc-daygrid-day-number {
  color: #e5e7eb !important;
}

body.theme-blue .fc-daygrid-day-top {
  color: #e5e7eb !important;
}

body.theme-blue .fc-event {
  border-color: transparent !important;
}

body.theme-blue .fc-toolbar-title {
  color: #f3f4f6 !important;
}

body.theme-blue .fc-button-primary {
  background: #374151 !important;
  border-color: #4b5563 !important;
}

body.theme-blue .fc-button-primary:hover {
  background: #4b5563 !important;
}

body.theme-blue .fc-button-primary:not(:disabled).fc-button-active {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* ==========================================
   DARK MODE - FORM INPUT SPECIFIC OVERRIDES
   ========================================== */

/* Input group text */
body.theme-blue .input-group-text {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #d1d5db !important;
}

/* Read-only inputs */
body.theme-blue input[readonly],
body.theme-blue .form-control[readonly] {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #d1d5db !important;
}

/* Disabled inputs */
body.theme-blue input:disabled,
body.theme-blue .form-control:disabled,
body.theme-blue select:disabled {
  background: #1f2937 !important;
  border-color: #374151 !important;
  color: #6b7280 !important;
}

/* ==========================================
   DARK MODE - SPECIAL TABLE ROWS
   ========================================== */

body.theme-blue tr.table-light {
  background: #1f2937 !important;
}

body.theme-blue tr.table-light td {
  background: inherit !important;
  color: #e5e7eb !important;
}

body.theme-blue tr.bg-light {
  background: #1f2937 !important;
}

body.theme-blue tr.bg-light td {
  background: inherit !important;
}

/* Detail/sub rows */
body.theme-blue tr.detail-row td {
  background: #111827 !important;
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - SELECT2 PLUGIN
   ========================================== */

body.theme-blue .select2-container--default .select2-selection--single {
  background: #374151 !important;
  border-color: #4b5563 !important;
}

body.theme-blue .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #f3f4f6 !important;
}

body.theme-blue .select2-dropdown {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

body.theme-blue .select2-search--dropdown .select2-search__field {
  background: #374151 !important;
  border-color: #4b5563 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .select2-results__option {
  background: #1f2937 !important;
  color: #e5e7eb !important;
}

body.theme-blue .select2-results__option--highlighted {
  background: #374151 !important;
  color: #f3f4f6 !important;
}

body.theme-blue .select2-container--default .select2-results__option--selected {
  background: #4b5563 !important;
}

/* ==========================================
   DARK MODE - SUMMARY/TOTALS SECTIONS
   ========================================== */

body.theme-blue .summary-section,
body.theme-blue .totals-section {
  background: #111827 !important;
  border-color: #374151 !important;
}

body.theme-blue .total-label {
  color: #9ca3af !important;
}

body.theme-blue .total-value {
  color: #f3f4f6 !important;
}

body.theme-blue .grand-total {
  background: rgba(31, 79, 214, 0.12) !important;
  border-color: rgba(31, 79, 214, 0.3) !important;
}

/* ==========================================
   DARK MODE - HEADER/TITLE AREAS
   ========================================== */

body.theme-blue .page-header {
  background: #1f2937 !important;
  border-bottom-color: #374151 !important;
}

body.theme-blue .page-title {
  color: #f3f4f6 !important;
}

body.theme-blue .page-subtitle {
  color: #9ca3af !important;
}

/* Filter/toolbar sections */
body.theme-blue .filter-toolbar,
body.theme-blue .search-toolbar {
  background: #1f2937 !important;
  border-color: #374151 !important;
}

/* ==========================================
   DARK MODE - STATUS INDICATORS
   ========================================== */

body.theme-blue .status-dot {
  box-shadow: 0 0 0 2px #1f2937 !important;
}

body.theme-blue .status-available {
  background: #22c55e !important;
}

body.theme-blue .status-occupied {
  background: #3b82f6 !important;
}

body.theme-blue .status-blocked {
  background: #ef4444 !important;
}

body.theme-blue .status-maintenance {
  background: #f59e0b !important;
}

/* ==========================================
   DARK MODE - EMPTY STATE
   ========================================== */

body.theme-blue .empty-state {
  color: #6b7280 !important;
}

body.theme-blue .empty-state-icon {
  color: #4b5563 !important;
}

body.theme-blue .empty-state-text {
  color: #9ca3af !important;
}

/* ==========================================
   GLOBAL TOAST NOTIFICATIONS
   ========================================== */

.toast-container {
  position: fixed;
  top: 20px;
  right: 20px;
  z-index: 9999;
}

.toast-notification {
  min-width: 280px;
  padding: 12px 16px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  animation: slideIn 0.3s ease-out;
}

.toast-notification.success {
  background: #28a745;
  border-left: 4px solid #1f8a39;
  color: #ffffff;
}

.toast-notification.error {
  background: #f8d7da;
  border-left: 4px solid #dc3545;
  color: #721c24;
}

.toast-notification.info {
  background: #d1ecf1;
  border-left: 4px solid #17a2b8;
  color: #0c5460;
}

.toast-notification.warning {
  background: #fff3cd;
  border-left: 4px solid #ffc107;
  color: #856404;
}

.toast-notification i {
  margin-right: 10px;
  font-size: 16px;
}

.toast-notification .close-toast {
  margin-left: auto;
  cursor: pointer;
  opacity: 0.7;
}

.toast-notification .close-toast:hover {
  opacity: 1;
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideOut {
  from {
    transform: translateX(0);
    opacity: 1;
  }
  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

/* Dark mode toast notifications */
body.theme-blue .toast-notification.success {
  background: #2ea44f;
  border-left-color: #1f7a38;
  color: #ffffff;
}

body.theme-blue .toast-notification.error {
  background: rgba(220, 53, 69, 0.2);
  border-left-color: #dc3545;
  color: #f5a6ae;
}

body.theme-blue .toast-notification.info {
  background: rgba(23, 162, 184, 0.2);
  border-left-color: #17a2b8;
  color: #7ddbe8;
}

body.theme-blue .toast-notification.warning {
  background: rgba(255, 193, 7, 0.2);
  border-left-color: #ffc107;
  color: #ffe083;
}

/* ==========================================
   DARK THEME - MAIN PMS PAGE FAMILY HARDENING
   ========================================== */

body.theme-dark[data-page="index"] .card,
body.theme-dark[data-page="index"] .card-body,
body.theme-dark[data-page="index"] .chart-card,
body.theme-dark[data-page="index"] .dashboard-card,
body.theme-dark[data-page="index"] .analytics-card,
body.theme-dark[data-page="index"] .kpi-card,
body.theme-dark[data-page="index"] .overview-card,
body.theme-dark[data-page="index"] .summary-card,
body.theme-dark[data-page="index"] .stat-card {
  background: #262624 !important;
  border-color: #343432 !important;
  color: #f5f5f4 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="index"] .card-header,
body.theme-dark[data-page="index"] .section-header,
body.theme-dark[data-page="index"] .chart-header,
body.theme-dark[data-page="index"] .analytics-header {
  background: #2d2d2b !important;
  border-color: #343432 !important;
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="index"] .text-muted,
body.theme-dark[data-page="index"] .small,
body.theme-dark[data-page="index"] .card-subtitle {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="index"] #analyticsChart {
  filter: saturate(0.9) brightness(0.92);
}

body.theme-dark[data-page="index"] .stat-card,
body.theme-dark[data-page="index"] .summary-card {
  background: linear-gradient(180deg, #262624 0%, #222220 100%) !important;
  border: 1px solid #353531 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="index"] .stat-card:hover,
body.theme-dark[data-page="index"] .summary-card:hover {
  transform: none !important;
  box-shadow: none !important;
  border-color: #464540 !important;
}

body.theme-dark[data-page="index"] .stat-card .stat-icon,
body.theme-dark[data-page="index"] .summary-card .icon,
body.theme-dark[data-page="index"] .summary-card .stat-icon {
  background: #2f2f2c !important;
  color: #f5f5f4 !important;
  border: 1px solid #3b3a36 !important;
}

body.theme-dark[data-page="index"] .stat-card.revenue .stat-icon,
body.theme-dark[data-page="index"] .stat-card.checked-in .stat-icon,
body.theme-dark[data-page="index"] .stat-card.guests .stat-icon,
body.theme-dark[data-page="index"] .stat-card.reservations .stat-icon {
  background: #2f2f2c !important;
}

body.theme-dark[data-page="index"] #periodToggle {
  background: #1f1e1d !important;
  border: 1px solid #353531 !important;
  border-radius: 999px !important;
  padding: 4px !important;
}

body.theme-dark[data-page="index"] #periodToggle .period-btn {
  background: transparent !important;
  color: #c9c5be !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="index"] #periodToggle .period-btn:hover,
body.theme-dark[data-page="index"] #periodToggle .period-btn:focus {
  background: #2c2b29 !important;
  color: #f5f5f4 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="index"] #periodToggle .period-btn.active {
  background: #343432 !important;
  color: #ffffff !important;
  box-shadow: inset 0 0 0 1px #44423d !important;
}

body.theme-dark[data-page="index"] #chartSubtitle {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection .card,
body.theme-dark[data-page="index"] #dashboardActivitySection .card-body {
  background: linear-gradient(180deg, #262624 0%, #222220 100%) !important;
  border: 1px solid #353531 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection .card:hover {
  transform: none !important;
  box-shadow: none !important;
  border-color: #464540 !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection .rounded-circle.bg-light,
body.theme-dark[data-page="index"] #dashboardActivitySection .dashboard-overdue-icon.bg-light {
  background: #2f2f2c !important;
  border: 1px solid #3b3a36 !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection .text-muted,
body.theme-dark[data-page="index"] #dashboardActivitySection .small,
body.theme-dark[data-page="index"] #dashboardActivitySection .dashboard-overdue-label,
body.theme-dark[data-page="index"] #dashboardActivitySection .fa-chevron-right {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection h4,
body.theme-dark[data-page="index"] #dashboardActivitySection h4.text-dark,
body.theme-dark[data-page="index"] #dashboardActivitySection .dashboard-overdue-value,
body.theme-dark[data-page="index"] #dashboardActivitySection .card-body .font-weight-bold {
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="index"] #dashboardActivitySection .text-decoration-none:hover .card,
body.theme-dark[data-page="index"] #dashboardActivitySection .text-decoration-none:focus .card {
  background: linear-gradient(180deg, #2a2a28 0%, #242422 100%) !important;
}

body.theme-dark[data-page="bookings"] .card,
body.theme-dark[data-page="reservedGuests"] .card,
body.theme-dark[data-page="bookedGuests"] .card,
body.theme-dark[data-page="checkedInGuests"] .card,
body.theme-dark[data-page="completedStays"] .card,
body.theme-dark[data-page="arrivals"] .card,
body.theme-dark[data-page="guests"] .card,
body.theme-dark[data-page="guestBills"] .card,
body.theme-dark[data-page="guestCredits"] .card,
body.theme-dark[data-page="refunds"] .card,
body.theme-dark[data-page="payments"] .card,
body.theme-dark[data-page="cityLedger"] .card,
body.theme-dark[data-page="rateManagement"] .card,
body.theme-dark[data-page="roomCatalog"] .card,
body.theme-dark[data-page="calendar"] .card,
body.theme-dark[data-page="salesReport"] .card,
body.theme-dark[data-page="cardEncoder"] .card,
body.theme-dark[data-page="administration"] .card,
body.theme-dark[data-page="adminTools"] .card,
body.theme-dark[data-page="activity_log"] .card,
body.theme-dark[data-page="users"] .card,
body.theme-dark[data-page="security_alerts"] .card,
body.theme-dark[data-page="emailNotifications"] .card,
body.theme-dark[data-page="emailMarketing"] .card,
body.theme-dark[data-page="frontendSettings"] .card,
body.theme-dark[data-page="pmsSettings"] .card,
body.theme-dark[data-page="channelManager"] .card,
body.theme-dark .modal-content,
body.theme-dark .dropdown-menu,
body.theme-dark .list-group-item,
body.theme-dark .popover,
body.theme-dark .toast,
body.theme-dark .swal2-popup {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-dark .card-header,
body.theme-dark .modal-header,
body.theme-dark .dropdown-header,
body.theme-dark .popover-header,
body.theme-dark .toast-header,
body.theme-dark .list-group-item.active,
body.theme-dark .table thead th {
  background: #2d2d2b !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
}

body.theme-dark .table,
body.theme-dark .table tbody td,
body.theme-dark .table tbody th,
body.theme-dark .table-striped tbody tr,
body.theme-dark .dataTables_wrapper .dataTables_scrollBody,
body.theme-dark .table-responsive {
  background: #262624 !important;
  color: #e7e5e4 !important;
  border-color: #343432 !important;
}

body.theme-dark .table-hover tbody tr:hover,
body.theme-dark .table tbody tr:hover,
body.theme-dark .booking-row:hover,
body.theme-dark .batch-guest-row:hover {
  background: #2a2a28 !important;
  box-shadow: none !important;
  transform: none !important;
}

body.theme-dark .form-control,
body.theme-dark .custom-select,
body.theme-dark .input-group-text,
body.theme-dark .form-select,
body.theme-dark .select2-container--default .select2-selection--single,
body.theme-dark .select2-container--default .select2-selection--multiple,
body.theme-dark .flatpickr-calendar,
body.theme-dark .daterangepicker,
body.theme-dark .dropdown-item,
body.theme-dark .page-link {
  background: #1f1e1d !important;
  color: #f5f5f4 !important;
  border-color: #3a3936 !important;
}

body.theme-dark .dropdown-item:hover,
body.theme-dark .dropdown-item:focus,
body.theme-dark .page-link:hover,
body.theme-dark .page-link:focus,
body.theme-dark .select2-results__option--highlighted {
  background: #2d2d2b !important;
  color: #f5f5f4 !important;
}

body.theme-dark .form-control::placeholder,
body.theme-dark input::placeholder,
body.theme-dark textarea::placeholder,
body.theme-dark .text-muted,
body.theme-dark small,
body.theme-dark .small,
body.theme-dark .page-subtitle,
body.theme-dark .subtitle,
body.theme-dark .helper-text {
  color: #bdb9b2 !important;
}

body.theme-dark .btn-outline-secondary,
body.theme-dark .btn-outline-dark,
body.theme-dark .btn-light,
body.theme-dark .btn-secondary {
  background: #2a2a28 !important;
  color: #f5f5f4 !important;
  border-color: #3a3936 !important;
}

body.theme-dark .btn-primary,
body.theme-dark .btn-info,
body.theme-dark .btn-success {
  box-shadow: none !important;
}

body.theme-dark[data-page="arrivals"] .card,
body.theme-dark[data-page="arrivals"] .card-body,
body.theme-dark[data-page="arrivals"] .card-header,
body.theme-dark[data-page="arrivals"] .table thead th,
body.theme-dark[data-page="arrivals"] .table-responsive,
body.theme-dark[data-page="arrivals"] .modal-content,
body.theme-dark[data-page="arrivals"] .modal-body,
body.theme-dark[data-page="arrivals"] .modal-footer {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="arrivals"] .card-header,
body.theme-dark[data-page="arrivals"] .modal-header {
  background: #2d2d2b !important;
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="arrivals"] .status-filter.btn-primary,
body.theme-dark[data-page="arrivals"] .status-filter.btn-info,
body.theme-dark[data-page="arrivals"] .status-filter.btn-warning,
body.theme-dark[data-page="arrivals"] .status-filter.btn-secondary,
body.theme-dark[data-page="arrivals"] #refreshArrivalsBtn,
body.theme-dark[data-page="arrivals"] .btn-outline-secondary,
body.theme-dark[data-page="arrivals"] .checkin-btn {
  box-shadow: none !important;
}

body.theme-dark[data-page="arrivals"] .btn-outline-secondary,
body.theme-dark[data-page="arrivals"] #refreshArrivalsBtn {
  background: #2a2a28 !important;
  color: #f5f5f4 !important;
  border-color: #3a3936 !important;
}

body.theme-dark[data-page="arrivals"] #arrivalDateFilter,
body.theme-dark[data-page="arrivals"] #arrivalSearch,
body.theme-dark[data-page="arrivals"] .form-control,
body.theme-dark[data-page="arrivals"] #checkinComplexModal .form-control,
body.theme-dark[data-page="arrivals"] #checkinSimpleModal .form-control,
body.theme-dark[data-page="arrivals"] #checkinComplexModal select,
body.theme-dark[data-page="arrivals"] #checkinSimpleModal select {
  background: #1f1e1d !important;
  color: #f5f5f4 !important;
  border-color: #3a3936 !important;
}

body.theme-dark[data-page="arrivals"] .table tbody td,
body.theme-dark[data-page="arrivals"] .table tbody tr {
  background: #262624 !important;
  color: #e7e5e4 !important;
  border-color: #343432 !important;
}

body.theme-dark[data-page="arrivals"] .table tbody tr:hover {
  background: #2a2a28 !important;
}

body.theme-dark[data-page="arrivals"] .reserved-row {
  background: rgba(95, 84, 151, 0.22) !important;
}

body.theme-dark[data-page="arrivals"] .text-muted,
body.theme-dark[data-page="arrivals"] .small,
body.theme-dark[data-page="arrivals"] [style*="color: #666"],
body.theme-dark[data-page="arrivals"] [style*="color:#666"] {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="earlyCheckout"] .card,
body.theme-dark[data-page="earlyCheckout"] .card-body,
body.theme-dark[data-page="earlyCheckout"] .card-header,
body.theme-dark[data-page="earlyCheckout"] .modal-content,
body.theme-dark[data-page="earlyCheckout"] .modal-body,
body.theme-dark[data-page="earlyCheckout"] .modal-footer,
body.theme-dark[data-page="earlyCheckout"] .alert,
body.theme-dark[data-page="earlyCheckout"] #calculationPreview,
body.theme-dark[data-page="earlyCheckout"] .select2-container--default .select2-selection--single {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="earlyCheckout"] .card-header,
body.theme-dark[data-page="earlyCheckout"] .modal-header {
  background: #2d2d2b !important;
  color: #f5f5f4 !important;
}

body.theme-dark[data-page="earlyCheckout"] .form-control,
body.theme-dark[data-page="earlyCheckout"] .custom-select,
body.theme-dark[data-page="earlyCheckout"] select,
body.theme-dark[data-page="earlyCheckout"] textarea,
body.theme-dark[data-page="earlyCheckout"] input {
  background: #1f1e1d !important;
  color: #f5f5f4 !important;
  border-color: #3a3936 !important;
}

body.theme-dark[data-page="earlyCheckout"] .text-muted,
body.theme-dark[data-page="earlyCheckout"] .small,
body.theme-dark[data-page="earlyCheckout"] small,
body.theme-dark[data-page="earlyCheckout"] .form-text {
  color: #bdb9b2 !important;
}

body.theme-dark[data-page="earlyCheckout"] .btn-warning {
  background: #a16207 !important;
  border-color: #a16207 !important;
  color: #fff8eb !important;
}

body.theme-dark[data-page="earlyCheckout"] .btn-primary {
  background: #3a5fb3 !important;
  border-color: #3a5fb3 !important;
}

body.theme-dark[data-page="transferRooms"] .card,
body.theme-dark[data-page="transferRooms"] .card-body,
body.theme-dark[data-page="transferRooms"] .card-header,
body.theme-dark[data-page="transferRooms"] .modern-table,
body.theme-dark[data-page="transferRooms"] .modern-table thead th,
body.theme-dark[data-page="transferRooms"] .modern-table tbody td,
body.theme-dark[data-page="transferRooms"] .modal-content,
body.theme-dark[data-page="transferRooms"] .popover,
body.theme-dark[data-page="transferRooms"] .dropdown-menu,
body.theme-dark[data-page="transferRooms"] .form-control,
body.theme-dark[data-page="transferRooms"] .custom-select {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="transferRooms"] .card-header,
body.theme-dark[data-page="transferRooms"] .modern-table thead th,
body.theme-dark[data-page="transferRooms"] .modal-header {
  background: #2d2d2b !important;
}

body.theme-dark[data-page="transferRooms"] .modern-table tbody tr:hover,
body.theme-dark[data-page="transferRooms"] .transfer-btn:hover,
body.theme-dark[data-page="transferRooms"] .btn-transfer-modern:hover {
  box-shadow: none !important;
}

body.theme-dark[data-page="transferRooms"] .modern-table tbody tr:hover {
  background: #2a2a28 !important;
}

body.theme-dark[data-page="transferRooms"] .room-badge,
body.theme-dark[data-page="transferRooms"] .transfer-count,
body.theme-dark[data-page="transferRooms"] .stay-info .progress-mini {
  background: #1f1e1d !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
}

body.theme-dark[data-page="assignRoom"] .card,
body.theme-dark[data-page="assignRoom"] .card-body,
body.theme-dark[data-page="assignRoom"] .card-header,
body.theme-dark[data-page="assignRoom"] .table thead th,
body.theme-dark[data-page="assignRoom"] .table tbody td,
body.theme-dark[data-page="assignRoom"] .form-control,
body.theme-dark[data-page="assignRoom"] .custom-select,
body.theme-dark[data-page="assignRoom"] .modal-content,
body.theme-dark[data-page="assignRoom"] .modal-body,
body.theme-dark[data-page="assignRoom"] .modal-footer {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
  box-shadow: none !important;
}

body.theme-dark[data-page="assignRoom"] .card-header,
body.theme-dark[data-page="assignRoom"] .modal-header,
body.theme-dark[data-page="assignRoom"] .table thead th {
  background: #2d2d2b !important;
}

body.theme-dark[data-page="assignRoom"] .table tbody tr:hover {
  background: #2a2a28 !important;
}

body.theme-dark[data-page="calendar"] .calendar-container,
body.theme-dark[data-page="calendar"] .calendar-card,
body.theme-dark[data-page="calendar"] .day-modal-footer,
body.theme-dark[data-page="calendar"] #availabilityModal .modal-footer {
  background: #262624 !important;
  color: #f5f5f4 !important;
  border-color: #343432 !important;
}

body.theme-dark[data-page="salesReport"] .stat-card .stat-icon,
body.theme-dark[data-page="guests"] .stat-card .stat-icon,
body.theme-dark[data-page="rateManagement"] .summary-card,
body.theme-dark[data-page="guestBills"] .summary-card,
body.theme-dark[data-page="guestCredits"] .summary-card,
body.theme-dark[data-page="payments"] .summary-card,
body.theme-dark[data-page="refunds"] .summary-card,
body.theme-dark[data-page="cityLedger"] .summary-card {
  box-shadow: none !important;
}

body.theme-blue[data-page="arrivals"] .card,
body.theme-blue[data-page="arrivals"] .card-body,
body.theme-blue[data-page="arrivals"] .card-header,
body.theme-blue[data-page="arrivals"] .table thead th,
body.theme-blue[data-page="arrivals"] .table-responsive,
body.theme-blue[data-page="arrivals"] .modal-content,
body.theme-blue[data-page="arrivals"] .modal-body,
body.theme-blue[data-page="arrivals"] .modal-footer,
body.theme-blue[data-page="earlyCheckout"] .card,
body.theme-blue[data-page="earlyCheckout"] .card-body,
body.theme-blue[data-page="earlyCheckout"] .card-header,
body.theme-blue[data-page="earlyCheckout"] .modal-content,
body.theme-blue[data-page="earlyCheckout"] .modal-body,
body.theme-blue[data-page="earlyCheckout"] .modal-footer,
body.theme-blue[data-page="earlyCheckout"] .alert,
body.theme-blue[data-page="earlyCheckout"] #calculationPreview {
  background: #131c28 !important;
  color: #e5edf7 !important;
  border-color: #243347 !important;
  box-shadow: none !important;
}

body.theme-blue[data-page="arrivals"] .card-header,
body.theme-blue[data-page="arrivals"] .modal-header,
body.theme-blue[data-page="earlyCheckout"] .card-header,
body.theme-blue[data-page="earlyCheckout"] .modal-header {
  background: #182434 !important;
  color: #f8fbff !important;
}

body.theme-blue[data-page="arrivals"] #arrivalDateFilter,
body.theme-blue[data-page="arrivals"] #arrivalSearch,
body.theme-blue[data-page="earlyCheckout"] .form-control,
body.theme-blue[data-page="earlyCheckout"] .custom-select,
body.theme-blue[data-page="earlyCheckout"] select,
body.theme-blue[data-page="earlyCheckout"] textarea,
body.theme-blue[data-page="earlyCheckout"] input {
  background: #0f172a !important;
  color: #e5edf7 !important;
  border-color: #243347 !important;
}


