/* =============================================
   DARK MODE THEME OVERRIDES
   Applied via body[data-theme="dark"]
   ============================================= */

body[data-theme="dark"] {
  --bg: #0F172A;
  --surface: #1E293B;
  --surface-alt: #334155;
  --text: #E2E8F0;
  --muted: #94A3B8;
  --border: #334155;
  --primary-light: rgba(59,130,246,.15);
  --shadow-sm: 0 1px 3px rgba(0,0,0,.3), 0 1px 2px rgba(0,0,0,.2);
  --shadow: 0 10px 30px rgba(0,0,0,.3), 0 1px 3px rgba(0,0,0,.2);
  --shadow-lg: 0 20px 50px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.3);
  color-scheme: dark;
}

/* Body background */
body[data-theme="dark"] {
  background: #0F172A;
  color: #E2E8F0;
}

/* Cards */
body[data-theme="dark"] .card {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}

/* Section backgrounds */
body[data-theme="dark"] .section,
body[data-theme="dark"] main {
  background: transparent;
}

/* Text overrides */
body[data-theme="dark"] h1,
body[data-theme="dark"] h2,
body[data-theme="dark"] h3,
body[data-theme="dark"] h4,
body[data-theme="dark"] h5,
body[data-theme="dark"] h6 {
  color: #F1F5F9;
}

body[data-theme="dark"] p,
body[data-theme="dark"] span,
body[data-theme="dark"] li,
body[data-theme="dark"] label,
body[data-theme="dark"] a {
  color: #CBD5E1;
}

body[data-theme="dark"] .muted { color: #94A3B8; }

/* Inputs / form elements */
body[data-theme="dark"] input,
body[data-theme="dark"] select,
body[data-theme="dark"] textarea {
  background: #1E293B !important;
  border-color: #475569 !important;
  color: #E2E8F0 !important;
}
body[data-theme="dark"] input::placeholder,
body[data-theme="dark"] textarea::placeholder {
  color: #64748B !important;
}
body[data-theme="dark"] input:focus,
body[data-theme="dark"] select:focus,
body[data-theme="dark"] textarea:focus {
  border-color: #3B82F6 !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.2) !important;
}

/* Field labels */
body[data-theme="dark"] .field label {
  color: #CBD5E1;
}

/* Buttons */
body[data-theme="dark"] .btn {
  border-color: #475569;
  background: #1E293B;
  color: #E2E8F0;
}
body[data-theme="dark"] .btn:hover {
  background: #334155;
}
body[data-theme="dark"] .btn-ghost {
  background: transparent;
  color: #CBD5E1;
}
body[data-theme="dark"] .btn-ghost:hover {
  background: rgba(255,255,255,.06);
  color: #F1F5F9;
}
body[data-theme="dark"] .btn-primary {
  color: #fff;
}

/* Page back button */
body[data-theme="dark"] .page-back-btn {
  background: #1E293B;
  border-color: #475569;
  color: #94A3B8;
}
body[data-theme="dark"] .page-back-btn:hover {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
}

/* Tables */
body[data-theme="dark"] table {
  border-color: #334155;
}
body[data-theme="dark"] th {
  background: #1E293B;
  color: #94A3B8;
  border-color: #334155;
}
body[data-theme="dark"] td {
  border-color: #334155;
  color: #CBD5E1;
}
body[data-theme="dark"] tr:hover td {
  background: rgba(255,255,255,.03);
}
body[data-theme="dark"] .table-wrap {
  background: #1E293B !important;
  border-color: #334155;
}
body[data-theme="dark"] .table {
  background: #1E293B !important;
}
body[data-theme="dark"] .table thead {
  background: #334155 !important;
}
body[data-theme="dark"] .table tbody tr {
  background: #1E293B !important;
}
body[data-theme="dark"] .table tbody tr:hover,
body[data-theme="dark"] .table tbody tr:hover td {
  background: rgba(59,130,246,.08) !important;
}

/* Alert overrides */
body[data-theme="dark"] .alert {
  background: rgba(220,38,38,.15);
  border-color: rgba(220,38,38,.3);
  color: #FCA5A5;
}
body[data-theme="dark"] .alert-success {
  background: rgba(22,163,74,.15);
  border-color: rgba(22,163,74,.3);
  color: #86EFAC;
}

/* Divider */
body[data-theme="dark"] .divider {
  background: #334155;
}

/* Pills */
body[data-theme="dark"] .pill {
  background: rgba(59,130,246,.12);
  border-color: rgba(59,130,246,.25);
  color: #93C5FD;
}

/* Card typography */
body[data-theme="dark"] .card-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .card-subtitle,
body[data-theme="dark"] .card-text {
  color: #94A3B8;
}

/* ====== ADMIN DARK MODE ====== */

/* Admin layout (admin-modern.css) */
body[data-theme="dark"] .admin-layout {
  background: #0F172A;
}

/* Admin sidebar (admin-modern.css) */
body[data-theme="dark"] .admin-sidebar {
  background: #0F172A;
  border-right-color: #1E293B;
}
body[data-theme="dark"] .sidebar-header {
  border-bottom-color: #1E293B;
}
body[data-theme="dark"] .sidebar-brand-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .sidebar-brand-subtitle {
  color: #64748B;
}
body[data-theme="dark"] .sidebar-section-title {
  color: #64748B;
}
body[data-theme="dark"] .sidebar-link {
  color: #94A3B8;
}
body[data-theme="dark"] .sidebar-link:hover {
  background: rgba(255,255,255,.06);
  color: #E2E8F0;
}
body[data-theme="dark"] .sidebar-link.active {
  background: rgba(59,130,246,.12);
  color: #93C5FD;
}
body[data-theme="dark"] .sidebar-footer {
  border-top-color: #1E293B;
}
body[data-theme="dark"] .sidebar-user:hover {
  background: rgba(255,255,255,.06);
}
body[data-theme="dark"] .sidebar-user-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .sidebar-user-role {
  color: #64748B;
}

/* Admin sidebar links (dashboard.css) */
body[data-theme="dark"] .asb-link {
  color: #94A3B8;
}
body[data-theme="dark"] .asb-link:hover {
  background: rgba(255,255,255,.06);
  color: #E2E8F0;
}
body[data-theme="dark"] .asb-link.active {
  background: rgba(212,175,55,.12);
  color: #D4AF37;
}
body[data-theme="dark"] .asb-group-toggle {
  color: #CBD5E1;
}
body[data-theme="dark"] .asb-group-toggle:hover {
  background: rgba(255,255,255,.06);
  color: #E2E8F0;
}
body[data-theme="dark"] .asb-divider {
  background: #1E293B;
}
body[data-theme="dark"] .asb-section-label {
  color: #475569;
}

/* Admin topbar */
body[data-theme="dark"] .admin-topbar {
  background: #0F172A;
  border-bottom-color: #1E293B;
}
body[data-theme="dark"] .admin-topbar-title h1 {
  color: #F1F5F9 !important;
}
body[data-theme="dark"] .admin-topbar-title p {
  color: #94A3B8 !important;
}

/* Topbar toggle & buttons (admin-modern.css) */
body[data-theme="dark"] .topbar-toggle {
  background: #1E293B;
  border-color: #475569;
  color: #CBD5E1;
}
body[data-theme="dark"] .topbar-toggle:hover {
  background: #334155;
}
body[data-theme="dark"] .topbar-title h1 {
  color: #F1F5F9;
}
body[data-theme="dark"] .topbar-title p {
  color: #94A3B8;
}
body[data-theme="dark"] .topbar-btn {
  background: #1E293B;
  border-color: #475569;
}
body[data-theme="dark"] .topbar-btn:hover {
  background: #334155;
}
body[data-theme="dark"] .topbar-btn svg {
  color: #94A3B8;
}

/* Admin user section */
body[data-theme="dark"] .asb-user {
  background: rgba(255,255,255,.04);
}
body[data-theme="dark"] .asb-user-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .asb-user-role {
  color: #64748B;
}
body[data-theme="dark"] .asb-user-menu {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .asb-user-menu-item {
  color: #CBD5E1;
}
body[data-theme="dark"] .asb-user-menu-item:hover {
  background: rgba(255,255,255,.06);
}
body[data-theme="dark"] .asb-user-menu-divider {
  background: #334155;
}

/* Admin brand logo */
body[data-theme="dark"] .asb-brand {
  border-bottom-color: #1E293B;
}
body[data-theme="dark"] .asb-brand-name {
  color: #D4AF37;
}

/* ====== SUMMARY CARDS (admin-modern.css) ====== */
body[data-theme="dark"] .summary-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .summary-card:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,.3);
}
body[data-theme="dark"] .summary-card-value {
  color: #F1F5F9;
}
body[data-theme="dark"] .summary-card-label {
  color: #94A3B8;
}
body[data-theme="dark"] .summary-card-icon.blue {
  background: rgba(30,64,175,.2);
}
body[data-theme="dark"] .summary-card-icon.green {
  background: rgba(22,163,74,.2);
}
body[data-theme="dark"] .summary-card-icon.yellow {
  background: rgba(217,119,6,.2);
}
body[data-theme="dark"] .summary-card-icon.purple {
  background: rgba(124,58,237,.2);
}

/* ====== QUICK ACTIONS (admin-modern.css) ====== */
body[data-theme="dark"] .quick-actions {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .quick-actions-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .quick-actions-subtitle {
  color: #94A3B8;
}
body[data-theme="dark"] .quick-action-btn {
  background: #1E293B;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .quick-action-btn:hover {
  background: #334155;
  border-color: #3B82F6;
}
body[data-theme="dark"] .quick-action-btn:not(.primary) .quick-action-icon {
  background: #334155;
}

/* ====== MODERN TABLE (admin-modern.css) ====== */
body[data-theme="dark"] .modern-table-container {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .modern-table-header {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .modern-table-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .modern-table thead {
  background: #334155;
  border-bottom-color: #475569;
}
body[data-theme="dark"] .modern-table th {
  color: #94A3B8;
}
body[data-theme="dark"] .modern-table tbody tr {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .modern-table tbody tr:hover {
  background: rgba(255,255,255,.03);
}
body[data-theme="dark"] .modern-table td {
  color: #CBD5E1;
}
body[data-theme="dark"] .filter-input {
  background: #334155;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .filter-input:focus {
  background: #1E293B;
  border-color: #3B82F6;
}
body[data-theme="dark"] .filter-select {
  background: #1E293B;
  border-color: #475569;
  color: #E2E8F0;
}

/* ====== ACTION BUTTONS (admin-modern.css) ====== */
body[data-theme="dark"] .action-btn {
  background: #1E293B;
  border-color: #475569;
  color: #94A3B8;
}
body[data-theme="dark"] .action-btn:hover {
  background: #334155;
  border-color: #64748B;
}

/* ====== PAGINATION (admin-modern.css) ====== */
body[data-theme="dark"] .modern-pagination {
  border-top-color: #334155;
}
body[data-theme="dark"] .pagination-info {
  color: #94A3B8;
}
body[data-theme="dark"] .pagination-btn {
  background: #1E293B;
  border-color: #475569;
  color: #94A3B8;
}
body[data-theme="dark"] .pagination-btn:hover:not(:disabled) {
  background: #334155;
  color: #F1F5F9;
}
body[data-theme="dark"] .pagination-btn.active {
  background: #1E40AF;
  color: #fff;
  border-color: #1E40AF;
}

/* ====== SETTINGS CARDS (admin-modern.css) ====== */
body[data-theme="dark"] .setting-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .setting-card-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .setting-card-desc {
  color: #94A3B8;
}
body[data-theme="dark"] .setting-card-icon {
  background: rgba(30,64,175,.2);
}
body[data-theme="dark"] .setting-item {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .setting-label {
  color: #E2E8F0;
}
body[data-theme="dark"] .setting-helper {
  color: #94A3B8;
}
body[data-theme="dark"] .toggle-slider {
  background-color: #475569;
}

/* ====== EMPTY STATE (admin-modern.css) ====== */
body[data-theme="dark"] .empty-state-icon {
  background: #334155;
  color: #64748B;
}
body[data-theme="dark"] .empty-state-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .empty-state-desc {
  color: #94A3B8;
}

/* ====== SKELETON LOADING (admin-modern.css) ====== */
body[data-theme="dark"] .skeleton {
  background: linear-gradient(90deg, #1E293B 25%, #334155 50%, #1E293B 75%);
  background-size: 200% 100%;
}

/* ====== STATUS BADGES (admin-modern.css) ====== */
body[data-theme="dark"] .status-badge.pending {
  background: rgba(234,179,8,.15);
  color: #FBBF24;
}
body[data-theme="dark"] .status-badge.confirmed {
  background: rgba(59,130,246,.15);
  color: #93C5FD;
}
body[data-theme="dark"] .status-badge.paid {
  background: rgba(34,197,94,.15);
  color: #86EFAC;
}
body[data-theme="dark"] .status-badge.cancelled {
  background: rgba(239,68,68,.15);
  color: #FCA5A5;
}

/* Admin table styles (dashboard.css) */
body[data-theme="dark"] .admin-table th {
  background: #1E293B;
  color: #94A3B8;
}
body[data-theme="dark"] .admin-table td {
  background: transparent;
}
body[data-theme="dark"] .admin-table tbody tr:hover td {
  background: rgba(255,255,255,.03) !important;
}

/* Notification dropdown */
body[data-theme="dark"] .notif-dropdown {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .notif-dropdown-header {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .notif-item {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .notif-item:hover {
  background: rgba(255,255,255,.04);
}
body[data-theme="dark"] .notif-unread {
  background: rgba(30,64,175,.1);
}
body[data-theme="dark"] .notif-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .notif-msg {
  color: #94A3B8;
}

/* Search box */
body[data-theme="dark"] .admin-search-input,
body[data-theme="dark"] .topbar-search-input {
  background: #1E293B !important;
  color: #E2E8F0 !important;
  border-color: #334155 !important;
}
body[data-theme="dark"] .admin-search-results,
body[data-theme="dark"] .topbar-search-results {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .topbar-search-box {
  background: #1E293B;
}
body[data-theme="dark"] .admin-search-box {
  background: #1E293B;
}

/* ====== CALENDAR (dashboard.css) ====== */
body[data-theme="dark"] .month-grid {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .month-header-row {
  background: linear-gradient(135deg, #1E293B, #334155);
  border-bottom-color: #334155;
}
body[data-theme="dark"] .month-cell {
  background: #0F172A;
  border-right-color: #334155;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .month-cell:hover {
  background: #1E293B;
}
body[data-theme="dark"] .month-cell.mc-empty {
  background: #0B1120;
}
body[data-theme="dark"] .month-cell.mc-past {
  background: rgba(15,23,42,.7);
}
body[data-theme="dark"] .month-cell.mc-past .mc-day {
  color: #64748B;
}
body[data-theme="dark"] .month-cell.mc-today {
  background: rgba(212,175,55,.06);
}
body[data-theme="dark"] .mc-day {
  color: #F1F5F9;
}
body[data-theme="dark"] .mc-slots {
  color: #64748B;
  border-top-color: #334155;
}
body[data-theme="dark"] .mc-more {
  color: #64748B;
}
body[data-theme="dark"] .cal-count {
  background: rgba(59,130,246,.2);
  color: #93C5FD;
}
body[data-theme="dark"] .cal-scroll-wrap::-webkit-scrollbar-track {
  background: #0F172A;
}
body[data-theme="dark"] .cal-scroll-wrap::-webkit-scrollbar-thumb {
  background: #475569;
}
body[data-theme="dark"] .dash-calendar-month {
  color: #F1F5F9;
}

/* Client dashboard calendar */
body[data-theme="dark"] .dash-calendar {
  border-color: #334155;
  background: #1E293B;
}
body[data-theme="dark"] .cal-header-cell {
  color: #94A3B8;
  background: #334155;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .cal-cell {
  background: #1E293B;
  border-right-color: #334155;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .cal-empty {
  background: #0F172A;
}
body[data-theme="dark"] .cal-day {
  color: #F1F5F9;
}

/* ====== DASHBOARD BOOKINGS (dashboard.css) ====== */
body[data-theme="dark"] .dash-booking-item {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .dash-booking-item:hover {
  border-color: rgba(59,130,246,.3);
}
body[data-theme="dark"] .dash-service-tag {
  background: rgba(59,130,246,.12);
}

/* ====== CHAT (dashboard.css) ====== */
body[data-theme="dark"] .dash-chat-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .chat-messages-client {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] .chat-composer {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] .chat-composer #clientChatInput {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .chat-bubble {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .chat-bubble.theirs {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .chat-bubble.mine {
  background: rgba(30,64,175,.2);
  border-color: rgba(30,64,175,.35);
}
body[data-theme="dark"] .chat-text {
  color: #E2E8F0;
}
body[data-theme="dark"] .dash-chat-status {
  background: rgba(255,255,255,.06);
  border-color: #334155;
  color: #94A3B8;
}

/* ====== MODALS (dashboard.css) ====== */
body[data-theme="dark"] .modal-overlay {
  background: rgba(0,0,0,.7);
}
body[data-theme="dark"] .modal-box {
  background: #1E293B;
}
body[data-theme="dark"] .modal-header h3 {
  color: #F1F5F9;
}
body[data-theme="dark"] .modal-footer {
  border-top-color: #334155;
}
body[data-theme="dark"] .modal-close {
  color: #64748B;
}
body[data-theme="dark"] .modal-close:hover {
  color: #F1F5F9;
}

/* Modal (styles.css) */
body[data-theme="dark"] .modal {
  background: rgba(0,0,0,.7);
}
body[data-theme="dark"] .modal-content {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .modal h2 {
  color: #F1F5F9;
}
body[data-theme="dark"] .close-button {
  color: #64748B;
}
body[data-theme="dark"] .close-button:hover {
  color: #F1F5F9;
}
body[data-theme="dark"] .modal-breakdown {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] .modal-breakdown-title {
  color: #F1F5F9;
}

/* ====== CONTENT CARDS (dashboard.css) ====== */
body[data-theme="dark"] .content-card {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .content-card-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .content-card-desc {
  color: #94A3B8;
}

/* ====== PHOTO MANAGEMENT (dashboard.css) ====== */
body[data-theme="dark"] .photo-dropzone {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .photo-dropzone:hover,
body[data-theme="dark"] .photo-dropzone.dragover {
  border-color: var(--primary);
  background: rgba(30,64,175,.1);
}
body[data-theme="dark"] .photo-card {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .photo-card-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .photo-preview-item {
  background: #1E293B;
  border-color: #334155;
}

/* ====== CLIENT DARK MODE (styles.css) ====== */

/* Site sidebar */
body[data-theme="dark"] .site-sidebar {
  background: #0F172A;
}

/* Site topbar */
body[data-theme="dark"] .site-topbar {
  background: #0F172A;
  border-bottom-color: #1E293B;
}
body[data-theme="dark"] .site-topbar-brand {
  color: #F1F5F9;
}

/* Cart dropdown */
body[data-theme="dark"] .cart-dropdown {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .cart-dropdown-header {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .cart-dropdown-footer {
  background: #334155;
  border-top-color: #334155;
}
body[data-theme="dark"] .cart-item {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .cart-item-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .cart-qty-btn {
  background: #334155;
  border-color: #475569;
  color: #E2E8F0;
}

/* Client notification dropdown */
body[data-theme="dark"] .client-notif-dropdown {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .client-notif-header {
  border-bottom-color: #334155;
  color: #F1F5F9;
}
body[data-theme="dark"] .client-notif-item {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .client-notif-item:hover {
  background: rgba(255,255,255,.04);
}
body[data-theme="dark"] .client-notif-item.unread {
  background: rgba(184,134,11,.06);
}
body[data-theme="dark"] .client-notif-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .client-notif-msg {
  color: #94A3B8;
}
body[data-theme="dark"] .client-notif-time {
  color: #64748B;
}

/* ====== SEARCH RESULTS (styles.css) ====== */
body[data-theme="dark"] .booking-search-result {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .search-result-item {
  color: #E2E8F0;
}
body[data-theme="dark"] .search-result-item:hover {
  background: #334155;
}
body[data-theme="dark"] .search-result-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .search-result-desc {
  color: #94A3B8;
}
body[data-theme="dark"] .search-result-icon {
  background: rgba(184,134,11,.15);
}

/* ====== SERVICE WIZARD (styles.css) ====== */
body[data-theme="dark"] .service-wizard {
  background: #1E293B;
}
body[data-theme="dark"] .service-card-wizard {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .service-card-wizard:hover {
  border-color: #3B82F6;
}
body[data-theme="dark"] .type-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .type-card:hover {
  border-color: #3B82F6;
}
body[data-theme="dark"] .spec-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .spec-card:hover {
  border-color: #3B82F6;
}
body[data-theme="dark"] .summary-content {
  background: #1E293B;
}

/* ====== BOOKING WIZARD (styles.css) ====== */
body[data-theme="dark"] .bw-step-num {
  background: #1E293B;
  border-color: #475569;
  color: #94A3B8;
}
body[data-theme="dark"] .bw-step-label {
  color: #94A3B8;
}
body[data-theme="dark"] .bw-progress-track {
  background: #334155;
}
body[data-theme="dark"] .bw-mini-breakdown {
  background: rgba(59,130,246,.06);
  border-color: rgba(59,130,246,.15);
}
body[data-theme="dark"] .bw-mini-row {
  color: #E2E8F0;
  border-bottom-color: rgba(59,130,246,.1);
}

/* ====== PRODUCT CARDS (styles.css) ====== */
body[data-theme="dark"] .product-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .product-card:hover {
  border-color: rgba(59,130,246,.3);
}
body[data-theme="dark"] .product-title {
  color: var(--primary);
}
body[data-theme="dark"] .product-description {
  color: #94A3B8;
}
body[data-theme="dark"] .spec-item {
  background: rgba(59,130,246,.08);
  border-color: rgba(59,130,246,.15);
  color: #CBD5E1;
}

/* ====== PAYMENT CARDS (styles.css) ====== */
body[data-theme="dark"] .payment-card {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .payment-card span {
  color: #E2E8F0;
}

/* ====== FEEDBACK (styles.css) ====== */
body[data-theme="dark"] .feedback-item {
  background: #1E293B;
  border-left-color: #3B82F6;
}
body[data-theme="dark"] .feedback-item:hover {
  background: #334155;
}
body[data-theme="dark"] .feedback-header strong {
  color: #F1F5F9;
}

/* ====== CLIENT LOGOS (styles.css) ====== */
body[data-theme="dark"] .client-logo {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .client-logo:hover {
  border-color: rgba(59,130,246,.3);
}

/* ====== FLATPICKR CALENDAR (styles.css) ====== */
body[data-theme="dark"] .flatpickr-calendar {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .flatpickr-months .flatpickr-month {
  color: #F1F5F9;
  fill: #F1F5F9;
}
body[data-theme="dark"] .flatpickr-current-month .flatpickr-monthDropdown-months,
body[data-theme="dark"] .flatpickr-current-month input.cur-year {
  color: #F1F5F9;
}
body[data-theme="dark"] .flatpickr-day {
  color: #CBD5E1;
}
body[data-theme="dark"] .flatpickr-day:hover {
  background: #334155;
  border-color: #334155;
}
body[data-theme="dark"] .flatpickr-day.today {
  border-color: #3B82F6;
}
body[data-theme="dark"] .span.flatpickr-weekday {
  color: #94A3B8;
}

/* ====== SERVICE INFO GRID (styles.css) ====== */
body[data-theme="dark"] .service-info-item {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .service-info-item:hover {
  background: rgba(59,130,246,.06);
}

/* ====== CERTIFICATION (styles.css) ====== */
body[data-theme="dark"] .certification-category {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .certification-header h3 {
  color: #F1F5F9;
}

/* ====== ADMIN UPLOAD (styles.css) ====== */
body[data-theme="dark"] .admin-upload-section {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .form-group input,
body[data-theme="dark"] .form-group select {
  background: #334155 !important;
}

/* ====== BOOKING SEARCH BAR (styles.css) ====== */
body[data-theme="dark"] .booking-search-bar {
  background: #334155;
}
body[data-theme="dark"] .booking-search-bar input[type="search"] {
  background: #1E293B;
  color: #E2E8F0;
}

/* ====== AUTH TABS (dashboard.css) ====== */
body[data-theme="dark"] .auth-tabs {
  background: #334155;
  border-bottom-color: #475569;
}
body[data-theme="dark"] .auth-tab {
  color: #94A3B8;
}
body[data-theme="dark"] .auth-tab:hover {
  color: #F1F5F9;
  background: rgba(255,255,255,.04);
}
body[data-theme="dark"] .auth-tab.active {
  background: #1E293B;
  color: #3B82F6;
}

/* ====== THEME TOGGLE BUTTON ====== */
.theme-toggle-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 10px 18px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
  font-family: inherit;
  color: #64748B;
  transition: all .15s;
  border-radius: 8px;
}
.theme-toggle-btn:hover {
  background: rgba(0,0,0,.04);
  color: #1E293B;
}
body[data-theme="dark"] .theme-toggle-btn {
  color: #94A3B8;
}
body[data-theme="dark"] .theme-toggle-btn:hover {
  background: rgba(255,255,255,.1);
  color: #FFFFFF;
}
/* Ensure toggle label text visible in dark sidebar */
body[data-theme="dark"] .ssb-theme-toggle .theme-toggle-btn,
body[data-theme="dark"] .asb-theme-toggle .theme-toggle-btn {
  color: rgba(255,255,255,.7);
}
body[data-theme="dark"] .ssb-theme-toggle .theme-toggle-btn:hover,
body[data-theme="dark"] .asb-theme-toggle .theme-toggle-btn:hover {
  color: #FFFFFF;
  background: rgba(255,255,255,.1);
}
/* Light mode — sidebar is always dark bg, so toggle text must be light */
.ssb-theme-toggle .theme-toggle-btn {
  color: rgba(255,255,255,.7);
}
.ssb-theme-toggle .theme-toggle-btn:hover {
  color: #FFFFFF;
  background: rgba(255,255,255,.1);
}

/* Theme icon visibility */
.theme-icon-light { display: block; }
.theme-icon-dark { display: none; }
body[data-theme="dark"] .theme-icon-light { display: none; }
body[data-theme="dark"] .theme-icon-dark { display: block; }

/* Toggle switch */
.theme-switch {
  position: relative;
  width: 40px;
  height: 22px;
  background: #CBD5E1;
  border-radius: 11px;
  transition: background .3s;
  flex-shrink: 0;
  margin-left: auto;
}
.theme-switch::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  background: #fff;
  border-radius: 50%;
  transition: transform .3s;
  box-shadow: 0 1px 3px rgba(0,0,0,.2);
}
body[data-theme="dark"] .theme-switch {
  background: #3B82F6;
}
body[data-theme="dark"] .theme-switch::after {
  transform: translateX(18px);
}

/* Admin sidebar theme toggle */
.asb-theme-toggle {
  padding: 8px 14px;
  border-top: 1px solid #E2E8F0;
  margin-top: 4px;
}
body[data-theme="dark"] .asb-theme-toggle {
  border-top-color: #1E293B;
}

/* Client sidebar theme toggle */
.ssb-theme-toggle {
  padding: 8px 12px;
  border-top: 1px solid rgba(255,255,255,.08);
  margin-top: 4px;
}
/* Smooth transition for theme changes */
body,
body * {
  transition-property: background-color, border-color, color, box-shadow;
  transition-duration: 0s;
}
body.theme-transitioning,
body.theme-transitioning * {
  transition-duration: 0.3s !important;
}

/* ====== ADDITIONAL DARK OVERRIDES ====== */

/* Analytics period strip */
body[data-theme="dark"] .analytics-period-strip {
  background: #1E293B !important;
  border-color: #334155 !important;
}
body[data-theme="dark"] .analytics-period-strip a {
  background: #1E293B !important;
}
body[data-theme="dark"] .analytics-period-strip a:hover {
  background: #334155 !important;
}

/* Payment grid */
body[data-theme="dark"] .analytics-payment-grid > div {
  background: #1E293B !important;
  border-color: #334155 !important;
}

/* Select elements */
body[data-theme="dark"] select {
  background: #1E293B !important;
  color: #E2E8F0 !important;
  border-color: #475569 !important;
}

/* Modal/dialog */
body[data-theme="dark"] .modal,
body[data-theme="dark"] .dialog {
  background: #1E293B;
  border-color: #334155;
}

/* Scrollbar for dark mode */
body[data-theme="dark"] ::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
body[data-theme="dark"] ::-webkit-scrollbar-track {
  background: #0F172A;
}
body[data-theme="dark"] ::-webkit-scrollbar-thumb {
  background: #334155;
  border-radius: 4px;
}
body[data-theme="dark"] ::-webkit-scrollbar-thumb:hover {
  background: #475569;
}

/* ====== CHATBOT (chatbot.css) ====== */
body[data-theme="dark"] .chatbot-window {
  background: #1E293B;
  box-shadow: 0 12px 48px rgba(0,0,0,.4), 0 0 0 1px rgba(255,255,255,.06);
}
body[data-theme="dark"] .chatbot-messages {
  background: #0F172A;
}
body[data-theme="dark"] .chatbot-messages::-webkit-scrollbar-thumb {
  background: #475569;
}
body[data-theme="dark"] .chatbot-msg.bot .chatbot-bubble {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .chatbot-msg.user .chatbot-msg-avatar {
  background: #334155;
  color: #94A3B8;
}
body[data-theme="dark"] .chatbot-chip {
  background: rgba(30,64,175,.15);
  border-color: rgba(59,130,246,.3);
  color: #93C5FD;
}
body[data-theme="dark"] .chatbot-chip:hover {
  background: #1E40AF;
  color: #fff;
}
body[data-theme="dark"] .chatbot-typing {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .chatbot-input-area {
  border-top-color: #334155;
  background: #1E293B;
}
body[data-theme="dark"] .chatbot-input {
  background: #0F172A !important;
  border-color: #334155 !important;
  color: #E2E8F0 !important;
}
body[data-theme="dark"] .chatbot-input:focus {
  border-color: #3B82F6 !important;
  background: #1E293B !important;
}
body[data-theme="dark"] .chatbot-bubble a {
  color: #93C5FD;
}

/* Social login buttons */
body[data-theme="dark"] .social-login-btn {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .social-login-btn:hover {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .social-login-divider {
  color: #64748B;
}
body[data-theme="dark"] .social-login-divider::before,
body[data-theme="dark"] .social-login-divider::after {
  background: #334155;
}

/* ====== CONTACT PAGE (contact.css) ====== */
body[data-theme="dark"] .contact-card {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
}
body[data-theme="dark"] .contact-form .field label {
  color: #CBD5E1;
}
body[data-theme="dark"] .contact-form input,
body[data-theme="dark"] .contact-form textarea {
  background: #334155 !important;
  border-color: #475569 !important;
  color: #E2E8F0 !important;
}

/* ====== PRICING CALCULATOR (pricing-calculator.css) ====== */
body[data-theme="dark"] .pricing-form {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .pricing-select {
  background: #334155;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .pricing-select option {
  background: #1E293B;
  color: #E2E8F0;
}
body[data-theme="dark"] .pricing-result {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .pricing-result-price-row {
  background: linear-gradient(135deg, #334155, #1E293B);
  border-color: rgba(59,130,246,.2);
}
body[data-theme="dark"] .pricing-result-label {
  color: #94A3B8;
}
body[data-theme="dark"] .pricing-result-details {
  background: rgba(59,130,246,.06);
  border-color: rgba(59,130,246,.12);
}
body[data-theme="dark"] .pricing-section-title {
  color: #F1F5F9;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .pricing-tag {
  color: #93C5FD;
  background: rgba(59,130,246,.12);
  border-color: rgba(59,130,246,.25);
}

/* ====== HOMEPAGE MODERN (homepage-modern.css) ====== */
body[data-theme="dark"] .why-card {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .why-card:hover {
  border-color: rgba(59,130,246,.4);
  box-shadow: 0 16px 40px rgba(0,0,0,.3);
}
body[data-theme="dark"] .why-card h3 {
  color: #F1F5F9;
}
body[data-theme="dark"] .why-card p {
  color: #94A3B8;
}
body[data-theme="dark"] .why-icon {
  background: rgba(30,64,175,.15);
}

/* ====== BUY WIZARD (buy-wizard.css) ====== */
body[data-theme="dark"] .buy-products {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] .buy-product-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .buy-product-card:hover {
  border-color: rgba(59,130,246,.4);
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
body[data-theme="dark"] .buy-brand-card {
  background: #FFFFFF;
  border-color: #E2E8F0;
}
body[data-theme="dark"] .buy-brand-img-wrap {
  background: #fff;
}
body[data-theme="dark"] .buy-type-select {
  background: #1E293B;
  border-color: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] .buy-no-results h3 {
  color: #F1F5F9;
}
body[data-theme="dark"] .buy-no-results p {
  color: #94A3B8;
}

/* ====== BOOKING WIZARD (booking-wizard.css) ====== */
body[data-theme="dark"] .wizard-main {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .step-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .service-option {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .service-option:hover {
  border-color: rgba(59,130,246,.3);
}
body[data-theme="dark"] .service-option.selected {
  border-color: var(--primary);
  background: rgba(30,64,175,.12);
}

/* ====== TRANSACTION STATUS (dashboard.css) ====== */
body[data-theme="dark"] .txn-status-not_paid {
  background: rgba(239,68,68,.15);
  color: #FCA5A5;
}
body[data-theme="dark"] .txn-status-reserved {
  background: rgba(234,179,8,.15);
  color: #FBBF24;
}
body[data-theme="dark"] .txn-status-paid {
  background: rgba(34,197,94,.15);
  color: #86EFAC;
}
body[data-theme="dark"] .txn-status-refunded {
  background: rgba(107,114,128,.15);
  color: #9CA3AF;
}

/* ====== DASHBOARD STATUS (dashboard.css) ====== */
body[data-theme="dark"] .dash-status-pending {
  background: rgba(234,179,8,.15);
  color: #FBBF24;
}
body[data-theme="dark"] .dash-status-confirmed {
  background: rgba(59,130,246,.15);
  color: #93C5FD;
}
body[data-theme="dark"] .dash-status-paid {
  background: rgba(34,197,94,.15);
  color: #86EFAC;
}
body[data-theme="dark"] .dash-status-cancelled {
  background: rgba(239,68,68,.15);
  color: #FCA5A5;
}

/* ====== CALENDAR BOOKING STATUS (dashboard.css) ====== */
body[data-theme="dark"] .mc-booking-pending {
  background: rgba(234,179,8,.15);
  color: #FBBF24;
}
body[data-theme="dark"] .mc-booking-confirmed {
  background: rgba(59,130,246,.15);
  color: #93C5FD;
}
body[data-theme="dark"] .mc-booking-paid {
  background: rgba(34,197,94,.15);
  color: #86EFAC;
}
body[data-theme="dark"] .mc-booking-done {
  background: rgba(5,150,105,.15);
  color: #6EE7B7;
}
body[data-theme="dark"] .mc-booking-cancelled {
  background: rgba(239,68,68,.12);
  color: #FCA5A5;
}
body[data-theme="dark"] .mc-booking-refunded {
  background: rgba(124,58,237,.12);
  color: #C4B5FD;
}
body[data-theme="dark"] .mc-booking-rescheduled {
  background: rgba(139,92,246,.12);
  color: #C4B5FD;
}

/* ====== MC STATUS BADGES ====== */
body[data-theme="dark"] .mc-status-available {
  background: rgba(34,197,94,.15);
  color: #86EFAC;
}
body[data-theme="dark"] .mc-status-limited {
  background: rgba(234,179,8,.18);
  color: #FBBF24;
}
body[data-theme="dark"] .mc-status-full {
  background: rgba(239,68,68,.15);
  color: #FCA5A5;
}

/* ====== NAV DRAWER (styles.css) ====== */
body[data-theme="dark"] .nav-drawer {
  background: #0F172A;
  border-right-color: #1E293B;
}
body[data-theme="dark"] .nav-drawer a {
  color: #CBD5E1;
}
body[data-theme="dark"] .nav-drawer a:hover {
  background: rgba(255,255,255,.06);
  color: #F1F5F9;
}

/* ====== USER MENU DROPDOWN (styles.css) ====== */
body[data-theme="dark"] .user-menu-dropdown {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .user-menu-dropdown a {
  color: #CBD5E1;
}
body[data-theme="dark"] .user-menu-dropdown a:hover {
  background: rgba(255,255,255,.06);
  color: #F1F5F9;
}

/* ====== SSB SIDEBAR OVERRIDES ====== */
body[data-theme="dark"] .ssb-brand-text {
  color: #F1F5F9;
}
body[data-theme="dark"] .ssb-nav .ssb-link {
  color: #94A3B8;
}
body[data-theme="dark"] .ssb-nav .ssb-link:hover {
  background: rgba(255,255,255,.06);
  color: #E2E8F0;
}
body[data-theme="dark"] .ssb-nav .ssb-link.active {
  background: rgba(184,134,11,.12);
  color: #D4AF37;
}
body[data-theme="dark"] .ssb-login-btn {
  background: rgba(255,255,255,.06);
  color: #E2E8F0;
}
body[data-theme="dark"] .ssb-login-btn:hover {
  background: var(--primary);
  color: #fff;
}

/* ====== GENERAL OVERRIDES ====== */
body[data-theme="dark"] hr {
  border-color: #334155;
}
body[data-theme="dark"] code {
  background: #334155;
  color: #E2E8F0;
}
body[data-theme="dark"] pre {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] blockquote {
  border-left-color: #3B82F6;
  background: rgba(59,130,246,.06);
  color: #CBD5E1;
}

/* ====== LINKS ====== */
body[data-theme="dark"] a:not(.btn):not(.ssb-link):not(.asb-link):not(.sidebar-link):not(.social-login-btn) {
  color: #93C5FD;
}
body[data-theme="dark"] a:not(.btn):hover {
  color: #BFDBFE;
}

/* ====== SECTION HEADER (styles.css) ====== */
body[data-theme="dark"] .section-header h1 {
  color: #F1F5F9;
}
body[data-theme="dark"] .section-header .muted {
  color: #94A3B8;
}

/* ====== GRID CARDS (styles.css) ====== */
body[data-theme="dark"] .grid .card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .service-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .service-card:hover {
  border-color: rgba(59,130,246,.3);
}

/* ====== ADMIN MAIN CONTENT AREA ====== */
body[data-theme="dark"] .admin-content {
  background: transparent;
}
body[data-theme="dark"] .admin-main-content {
  background: #0F172A;
}

/* ====== PRICING INPUT (dashboard.css) ====== */
body[data-theme="dark"] .price-input {
  background: #334155 !important;
  border-color: #475569 !important;
  color: #E2E8F0 !important;
}

/* ====== HERO SECTION TEXT (styles.css) ====== */
body[data-theme="dark"] .hero h1,
body[data-theme="dark"] .hero p,
body[data-theme="dark"] .hero span,
body[data-theme="dark"] .hero a {
  color: #fff;
}

/* ====== FOOTER (styles.css) ====== */
body[data-theme="dark"] .site-footer {
  background: #0B1120;
}

/* ====== LOGIN PAGE PRESERVATION ====== */
/* Login page is already dark-themed; prevent global dark mode overrides from breaking it */
body[data-theme="dark"][data-page="login"] .lp-input-wrap input {
  background: transparent !important;
  border: none !important;
  color: #fff !important;
  box-shadow: none !important;
}
body[data-theme="dark"][data-page="login"] .lp-input-wrap input::placeholder {
  color: rgba(255,255,255,.2) !important;
}
body[data-theme="dark"][data-page="login"] .lp-field label {
  color: rgba(255,255,255,.55);
}
body[data-theme="dark"][data-page="login"] .lp-subtitle a,
body[data-theme="dark"][data-page="login"] .lp-forgot a,
body[data-theme="dark"][data-page="login"] .lp-footer-text a,
body[data-theme="dark"][data-page="login"] .lp-privacy-check a {
  color: #D4AF37;
}
body[data-theme="dark"][data-page="login"] .lp-back-link {
  color: rgba(255,255,255,.45);
}
body[data-theme="dark"][data-page="login"] .lp-back-link:hover {
  color: #D4AF37;
}
body[data-theme="dark"][data-page="login"] .lp-trust-text p,
body[data-theme="dark"][data-page="login"] .lp-testimonial-quote p,
body[data-theme="dark"][data-page="login"] .lp-testimonial-author,
body[data-theme="dark"][data-page="login"] .lp-privacy-check {
  color: rgba(255,255,255,.45);
}
body[data-theme="dark"][data-page="login"] .lp-social-btn {
  background: rgba(255,255,255,.03);
  border-color: rgba(255,255,255,.1);
  color: #fff;
}

/* ====== HOMEPAGE REDESIGN (homepage-redesign.css) ====== */
/* Override --hp-* CSS variables for dark mode */
body[data-theme="dark"] {
  --hp-text: #E2E8F0;
  --hp-text-secondary: #94A3B8;
  --hp-muted: #94A3B8;
  --hp-light: #94A3B8;
  --hp-lighter: #CBD5E1;
  --hp-bg: #0F172A;
  --hp-bg-alt: #0B1120;
  --hp-bg-soft: #1E293B;
  --hp-border: #334155;
  --hp-border-light: #1E293B;
  --hp-blue-pale: rgba(30,64,175,.15);
}

/* Trust strip */
body[data-theme="dark"] .trust-strip {
  background: #0F172A;
  border-bottom-color: #1E293B;
}
body[data-theme="dark"] .trust-divider {
  background: #334155;
}

/* Services section */
body[data-theme="dark"] #services {
  background: #0B1120;
}
body[data-theme="dark"] .service-card-new {
  background: #1E293B;
  border-color: #334155;
  box-shadow: 0 2px 8px rgba(0,0,0,.15);
}
body[data-theme="dark"] .service-card-new:hover {
  border-color: rgba(59,130,246,.25);
  background: #1E293B;
  box-shadow: 0 24px 64px rgba(0,0,0,.4);
}
body[data-theme="dark"] .service-card-new h4 {
  color: #F1F5F9;
}
body[data-theme="dark"] .service-card-new p {
  color: #94A3B8;
}
body[data-theme="dark"] .service-card-icon {
  background: rgba(30,64,175,.15);
}

/* About section */
body[data-theme="dark"] .about-text {
  color: #94A3B8;
}
body[data-theme="dark"] .about-highlight-text {
  color: #E2E8F0;
}
body[data-theme="dark"] .about-highlight-icon {
  background: rgba(30,64,175,.15);
}
body[data-theme="dark"] .about-badge {
  background: rgba(212,175,55,.08);
  border-color: rgba(212,175,55,.2);
  color: #E2E8F0;
}

/* Section headers */
body[data-theme="dark"] .hp-section-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .hp-section-subtitle {
  color: #94A3B8;
}
body[data-theme="dark"] .hp-section-alt {
  background: #0B1120;
}

/* ====== SERVICE WIZARD ENHANCED (service-wizard-enhanced.css) ====== */
body[data-theme="dark"] .service-wizard {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .wizard-progress {
  background: rgba(30,64,175,.1);
  border-color: rgba(30,64,175,.2);
}
body[data-theme="dark"] .step-header {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .service-card-wizard {
  background: linear-gradient(145deg, #1E293B 0%, #0F172A 100%);
  border-color: #334155;
  box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
body[data-theme="dark"] .service-card-wizard:hover {
  border-color: var(--primary);
  box-shadow: 0 24px 60px rgba(30,64,175,.25);
}
body[data-theme="dark"] .service-card-wizard.selected {
  background: linear-gradient(145deg, rgba(30,64,175,.12) 0%, #0F172A 100%);
}
body[data-theme="dark"] .type-card {
  background: linear-gradient(145deg, #1E293B 0%, #0F172A 100%);
  border-color: #334155;
}
body[data-theme="dark"] .type-card:hover {
  border-color: rgba(59,130,246,.3);
  box-shadow: 0 16px 40px rgba(0,0,0,.3);
}
body[data-theme="dark"] .type-card.selected {
  background: linear-gradient(145deg, rgba(30,64,175,.1) 0%, #0F172A 100%);
}
body[data-theme="dark"] .spec-card {
  background: linear-gradient(145deg, #1E293B 0%, #0F172A 100%);
  border-color: #334155;
}
body[data-theme="dark"] .spec-card:hover {
  border-color: rgba(59,130,246,.3);
  box-shadow: 0 12px 35px rgba(0,0,0,.25);
}
body[data-theme="dark"] .summary-content {
  background: linear-gradient(145deg, #1E293B 0%, #0F172A 100%);
  border-color: #334155;
}
body[data-theme="dark"] .selected-service {
  background: rgba(30,64,175,.08);
  border-color: rgba(30,64,175,.15);
}
body[data-theme="dark"] .payment-notice {
  background: rgba(30,64,175,.08);
  border-color: rgba(30,64,175,.2);
}
body[data-theme="dark"] .payment-notice p {
  color: #CBD5E1;
  border-left-color: rgba(30,64,175,.3);
}
body[data-theme="dark"] .special-note {
  color: #CBD5E1;
  background: linear-gradient(135deg, rgba(231,76,60,.12) 0%, rgba(231,76,60,.06) 100%);
}

/* Service hero */
body[data-theme="dark"] .svc-hero {
  background: #060918;
}
body[data-theme="dark"] .svc-trust {
  background: #060918;
}

/* Trust cards */
body[data-theme="dark"] .svc-trust-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .svc-trust-card:hover {
  border-color: rgba(184,134,11,.3);
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
}
body[data-theme="dark"] .svc-trust-card h3 {
  color: #F1F5F9;
}
body[data-theme="dark"] .svc-trust-card p {
  color: #94A3B8;
}
body[data-theme="dark"] .svc-trust-icon {
  background: rgba(184,134,11,.15);
  border-color: rgba(184,134,11,.25);
}

/* Catalog tabs wrapper */
body[data-theme="dark"] .catalog-tabs-wrapper {
  background: linear-gradient(to bottom, #060918 0%, #0B1120 45%, #0F172A 100%);
}

/* Catalog cards */
body[data-theme="dark"] .catalog-card {
  background: #1E293B;
  border-color: #334155;
}
body[data-theme="dark"] .catalog-card:hover {
  border-color: rgba(30,64,175,.35);
  box-shadow: 0 16px 40px rgba(0,0,0,.3);
}
body[data-theme="dark"] .catalog-group-header {
  background: linear-gradient(135deg, rgba(30,64,175,.12) 0%, rgba(255,255,255,.03) 100%);
  border-color: rgba(30,64,175,.25);
  box-shadow: 0 4px 16px rgba(0,0,0,.2);
}

/* ====== BUY WIZARD EXPANDED (buy-wizard.css) ====== */
/* Product image areas — keep WHITE so unit photos look clean */
body[data-theme="dark"] .buy-product-img {
  background: #FFFFFF;
  border-bottom-color: #E2E8F0;
}
body[data-theme="dark"] .buy-product-img--logo {
  background: linear-gradient(135deg, #F0F4FF 0%, #E8F0FE 100%);
}
body[data-theme="dark"] .buy-product-img.buy-img-error {
  background: #F8FAFC;
}

/* Badges — bright & visible in dark mode */
body[data-theme="dark"] .buy-badge--sale {
  background: #FEE2E2; color: #DC2626; border-color: #FCA5A5;
}
body[data-theme="dark"] .buy-badge--inverter {
  background: rgba(59,130,246,.2); color: #60A5FA; border-color: rgba(59,130,246,.4);
}
body[data-theme="dark"] .buy-badge--smart {
  background: rgba(16,185,129,.2); color: #34D399; border-color: rgba(16,185,129,.4);
}
body[data-theme="dark"] .buy-badge--non-inverter {
  background: rgba(156,163,175,.2); color: #D1D5DB; border-color: rgba(156,163,175,.4);
}
body[data-theme="dark"] .buy-badge--chilled-water {
  background: rgba(6,182,212,.2); color: #22D3EE; border-color: rgba(6,182,212,.4);
}
body[data-theme="dark"] .buy-badge--conventional {
  background: rgba(245,158,11,.2); color: #FBBF24; border-color: rgba(245,158,11,.4);
}
body[data-theme="dark"] .buy-badge--h-accu {
  background: rgba(139,92,246,.2); color: #A78BFA; border-color: rgba(139,92,246,.4);
}
body[data-theme="dark"] .buy-badge--v-accu {
  background: rgba(236,72,153,.2); color: #F472B6; border-color: rgba(236,72,153,.4);
}
body[data-theme="dark"] .buy-badge--indoor {
  background: rgba(34,197,94,.2); color: #4ADE80; border-color: rgba(34,197,94,.4);
}
body[data-theme="dark"] .buy-badge--outdoor {
  background: rgba(249,115,22,.2); color: #FB923C; border-color: rgba(249,115,22,.4);
}
body[data-theme="dark"] .buy-badge--indoor-outdoor {
  background: rgba(59,130,246,.2); color: #60A5FA; border-color: rgba(59,130,246,.4);
}

/* Brand cards — keep white background so logos are visible */
body[data-theme="dark"] .buy-brand-card {
  background: #FFFFFF;
  border-color: #E2E8F0;
}
body[data-theme="dark"] .buy-brand-card:hover {
  border-color: var(--primary);
  box-shadow: 0 8px 20px rgba(30,64,175,.25);
}
body[data-theme="dark"] .buy-brand-card.active {
  border-color: var(--primary);
  background: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(30,64,175,.2);
}
body[data-theme="dark"] .buy-brand-name {
  color: #1E293B;
}
body[data-theme="dark"] .buy-brand-desc {
  color: #64748B;
}
body[data-theme="dark"] .buy-brand-img-wrap {
  background: #fff;
}

/* Product card body */
body[data-theme="dark"] .buy-product-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .buy-product-model {
  background: rgba(59,130,246,.15);
  border-color: rgba(59,130,246,.3);
  color: #60A5FA;
}
body[data-theme="dark"] .buy-product-desc {
  color: #94A3B8;
}
body[data-theme="dark"] .buy-product-brand-tag {
  color: #60A5FA;
}
body[data-theme="dark"] .buy-product-spec {
  background: #334155;
  border-color: #475569;
  color: #CBD5E1;
}
body[data-theme="dark"] .buy-product-spec svg {
  color: #94A3B8;
}
body[data-theme="dark"] .buy-variant-pill {
  background: #334155;
  border-color: #475569;
  color: #94A3B8;
}
body[data-theme="dark"] .buy-product-price-row {
  border-top-color: #334155;
}
body[data-theme="dark"] .buy-product-price-label {
  color: #94A3B8;
}
body[data-theme="dark"] .buy-price-srp {
  color: #64748B;
}

/* Buy brands scroll container */
body[data-theme="dark"] .buy-brands-scroll {
  border-color: #334155;
}

/* Buy page notice banners — override inline dark text for readability */
body[data-theme="dark"] .tw-text-blue-800 {
  color: #93C5FD !important;
}
body[data-theme="dark"] .tw-text-slate-800 {
  color: #CBD5E1 !important;
}
body[data-theme="dark"] [style*="color:#92400e"],
body[data-theme="dark"] [style*="color:#78350f"] {
  color: #FCD34D !important;
}

/* Product detail modal */
body[data-theme="dark"] .pdm-modal {
  background: #1E293B;
  box-shadow: 0 24px 64px rgba(0,0,0,.5);
}
body[data-theme="dark"] .pdm-img-col {
  background: #FFFFFF;
}
body[data-theme="dark"] .pdm-info-col {
  background: #1E293B;
}
body[data-theme="dark"] .pdm-name {
  color: #F1F5F9;
}
body[data-theme="dark"] .pdm-close:hover {
  color: #F1F5F9;
  background: rgba(59,130,246,.15);
}
body[data-theme="dark"] .pdm-hp-btn {
  border-color: #475569;
  background: #0F172A;
}
body[data-theme="dark"] .pdm-hp-btn:hover {
  border-color: var(--primary);
}
body[data-theme="dark"] .pdm-hp-btn.active {
  background: rgba(30,64,175,.15);
}
body[data-theme="dark"] .pdm-toggle-btn {
  border-color: #475569;
  background: #0F172A;
  color: #94A3B8;
}
body[data-theme="dark"] .pdm-toggle-btn.active {
  background: rgba(30,64,175,.15);
}
body[data-theme="dark"] .pdm-qty-btn {
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .pdm-price-breakdown {
  border-top-color: #334155;
}
body[data-theme="dark"] .pdm-price-row.pdm-total-row {
  border-top-color: #334155;
}
body[data-theme="dark"] .pdm-pricing-notes {
  background: rgba(30,64,175,.08);
  border-color: rgba(30,64,175,.15);
}

/* Carousel navigation */
body[data-theme="dark"] .pdm-carousel-prev,
body[data-theme="dark"] .pdm-carousel-next {
  background: #1E293B;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .pdm-carousel-prev:hover,
body[data-theme="dark"] .pdm-carousel-next:hover {
  background: #334155;
  border-color: var(--primary);
}
body[data-theme="dark"] .pdm-dot {
  background: #475569;
}

/* Review items */
body[data-theme="dark"] .pdm-review-item {
  background: #334155;
  border-color: #475569;
}
body[data-theme="dark"] .pdm-review-form {
  background: rgba(30,64,175,.08);
  border-color: rgba(30,64,175,.15);
}
body[data-theme="dark"] .pdm-review-input,
body[data-theme="dark"] .pdm-review-textarea {
  background: #0F172A;
  border-color: #475569;
  color: #E2E8F0;
}

/* Installation packages modal */
body[data-theme="dark"] .ipm-modal {
  background: #1E293B;
}
body[data-theme="dark"] .ipm-header {
  border-bottom-color: #334155;
}
body[data-theme="dark"] .ipm-list li {
  color: #CBD5E1;
  border-bottom-color: rgba(255,255,255,.05);
}
body[data-theme="dark"] .ipm-scope-item {
  background: rgba(30,64,175,.06);
  border-color: rgba(30,64,175,.15);
}
body[data-theme="dark"] .ipm-footer {
  border-top-color: #334155;
}

/* Brand warranty section */
body[data-theme="dark"] .bw-section {
  background: #1E293B;
  border-top-color: #334155;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .bw-title {
  color: #F1F5F9;
}
body[data-theme="dark"] .bw-subtitle {
  color: #E2E8F0;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .bw-feature strong {
  color: #F1F5F9;
}
body[data-theme="dark"] .bw-feature p {
  color: #94A3B8;
}
body[data-theme="dark"] .bw-badge-label {
  color: #E2E8F0;
}
body[data-theme="dark"] .bw-badge-desc {
  color: #94A3B8;
}
body[data-theme="dark"] .bw-stat strong {
  color: #F1F5F9;
}
body[data-theme="dark"] .bw-stat p {
  color: #94A3B8;
}

/* Unit form modal */
body[data-theme="dark"] .uf-modal-box {
  background: #1E293B;
}
body[data-theme="dark"] .uf-modal-header {
  background: #1E293B;
  border-bottom-color: #334155;
}
body[data-theme="dark"] .uf-modal-header h3 {
  color: #F1F5F9;
}
body[data-theme="dark"] .uf-modal-close {
  background: #334155;
  color: #94A3B8;
}
body[data-theme="dark"] .uf-modal-close:hover {
  background: #475569;
  color: #F1F5F9;
}
body[data-theme="dark"] .uf-modal-footer {
  background: #1E293B;
  border-top-color: #334155;
}
body[data-theme="dark"] .uf-fieldset {
  border-color: #334155;
  background: #0F172A;
}
body[data-theme="dark"] .uf-fieldset legend {
  background: #0F172A;
  color: #93C5FD;
}
body[data-theme="dark"] .uf-field label {
  color: #94A3B8;
}
body[data-theme="dark"] .uf-field input,
body[data-theme="dark"] .uf-field select,
body[data-theme="dark"] .uf-field textarea {
  background: #1E293B;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .uf-field input:focus,
body[data-theme="dark"] .uf-field select:focus,
body[data-theme="dark"] .uf-field textarea:focus {
  border-color: #3B82F6;
  box-shadow: 0 0 0 3px rgba(59,130,246,.15);
}
body[data-theme="dark"] .uf-hp-row {
  background: #0F172A;
  border-color: #334155;
}
body[data-theme="dark"] .uf-hp-row select,
body[data-theme="dark"] .uf-hp-row input {
  background: #1E293B;
  border-color: #475569;
  color: #E2E8F0;
}
body[data-theme="dark"] .uf-fn-tag {
  background: rgba(30,64,175,.15);
  color: #93C5FD;
}
body[data-theme="dark"] .uf-dropzone {
  border-color: #475569;
}
body[data-theme="dark"] .uf-dropzone-idle p {
  color: #94A3B8;
}
body[data-theme="dark"] .uf-btn-cancel {
  background: #334155;
  border-color: #475569;
  color: #CBD5E1;
}
body[data-theme="dark"] .uf-gallery-item {
  border-color: #475569;
  background: #334155;
}
body[data-theme="dark"] .uf-dropzone-preview img {
  border-color: #475569;
}

/* Responsive mobile modal overrides */
@media (max-width: 768px) {
  body[data-theme="dark"] .pdm-img-col {
    background: #FFFFFF;
  }
}

/* ====== ENSURE PRIMARY BUTTONS STAY BRIGHT ====== */
body[data-theme="dark"] .btn-primary,
body[data-theme="dark"] .btn-primary:hover {
  background: var(--primary);
  color: #fff !important;
  border-color: var(--primary);
}
body[data-theme="dark"] .btn-danger {
  background: #DC2626;
  color: #fff !important;
  border-color: #DC2626;
}
body[data-theme="dark"] .btn-success {
  background: #16A34A;
  color: #fff !important;
  border-color: #16A34A;
}
