/**
 * Skylight Theme System - Texty-inspired dark/light themes
 * Uses data-theme="dark" or data-theme="light" on <html>
 */

/* ========== LIGHT THEME (default) ========== */
:root,
[data-theme="light"] {
  --sg-body-bg: #f8f9fc;
  --sg-body-color: #0f172a;
  --sg-sidebar-bg: #2c3e50;
  --sg-sidebar-text: #e2e8f0;
  --sg-sidebar-hover: rgba(255,255,255,0.08);
  --sg-navbar-bg: #ffffff;
  --sg-navbar-text: #0f172a;
  --sg-navbar-border: #e6e9ef;
  --sg-card-bg: #ffffff;
  --sg-card-border: #e6e9ef;
  --sg-input-bg: #ffffff;
  --sg-input-border: #e6e9ef;
  --sg-input-color: #0f172a;
  --sg-table-header-bg: #f8f9fa;
  --sg-table-row-hover: #f1f5f9;
  --sg-border-color: #e6e9ef;
  --sg-text-primary: #0f172a;
  --sg-text-secondary: #64748b;
  --sg-primary: #2A0070;
  --sg-primary-light: #8A4CEF;
}

/* ========== DARK THEME (pro style) ========== */
[data-theme="dark"] {
  --sg-body-color: #e2e8f0;
  --sg-sidebar-bg: #0d1117;
  --sg-sidebar-text: #cbd5e1;
  --sg-sidebar-hover: rgba(139, 92, 246, 0.12);
  --sg-navbar-bg: #0d1117;
  --sg-navbar-text: #e2e8f0;
  --sg-navbar-border: rgba(255,255,255,0.08);
  --sg-body-bg: #0d1117;
  --sg-content-bg: transparent;
  --sg-card-bg: #161b22;
  --sg-card-border: rgba(255,255,255,0.08);
  --sg-input-bg: rgba(255,255,255,0.08);
  --sg-input-border: rgba(255,255,255,0.12);
  --sg-input-color: #ffffff;
  --sg-table-header-bg: #161b22;
  --sg-table-row-hover: rgba(139, 92, 246, 0.06);
  --sg-border-color: rgba(255,255,255,0.08);
  --sg-text-primary: #e2e8f0;
  --sg-text-secondary: #94a3b8;
  --sg-primary: #8A4CEF;
  --sg-primary-light: #a78bfa;
}

/* Light theme - body uses neutral bg */
[data-theme="light"] body {
  background-color: var(--sg-body-bg) !important;
}

/* Apply to body - dark */
[data-theme="dark"] body {
  background-color: var(--sg-body-bg) !important;
  color: var(--sg-body-color) !important;
}

/* Dashboard card - theme-aware, pro style */
.dashboard-card {
  background-color: var(--sg-card-bg);
  border: 1px solid var(--sg-card-border);
  border-radius: 12px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* redious-border - use theme var for consistent light/dark */
.redious-border {
  border-color: var(--sg-border-color);
  transition: border-color 0.2s ease;
}

/* Analytics - overrides app.css for modern unified look */
.analytics {
  gap: 16px;
}
.analytics-icon {
  height: 48px !important;
  width: 48px !important;
  min-width: 48px !important;
  font-size: 24px !important;
  border-radius: 10px !important;
  background-color: rgba(42, 0, 112, 0.06) !important;
  color: var(--sg-primary) !important;
}
.analytics-icon svg {
  width: 24px !important;
  height: 24px !important;
}
.analytics-icon svg path {
  fill: currentColor !important;
}
.analytics-content h4,
.analytics-content .h4 {
  font-size: 22px !important;
  line-height: 30px !important;
  font-weight: 600 !important;
  color: var(--sg-primary) !important;
}
.analytics-content p {
  font-size: 14px !important;
  color: var(--sg-text-secondary, #64748b) !important;
}
.analytics-content .designation {
  font-size: 14px !important;
  color: var(--sg-text-secondary, #64748b) !important;
}
.analytics.clr-1 .analytics-icon,
.analytics.clr-2 .analytics-icon,
.analytics.clr-3 .analytics-icon,
.analytics.clr-4 .analytics-icon {
  background-color: rgba(42, 0, 112, 0.06) !important;
}
.analytics.clr-1 .analytics-icon,
.analytics.clr-1 .analytics-content h4,
.analytics.clr-2 .analytics-icon,
.analytics.clr-2 .analytics-content h4,
.analytics.clr-3 .analytics-icon,
.analytics.clr-3 .analytics-content h4,
.analytics.clr-4 .analytics-icon,
.analytics.clr-4 .analytics-content h4 {
  color: var(--sg-primary) !important;
}
.analytics.clr-1 .analytics-icon svg path,
.analytics.clr-2 .analytics-icon svg path,
.analytics.clr-3 .analytics-icon svg path,
.analytics.clr-4 .analytics-icon svg path {
  fill: currentColor !important;
}

/* ── Client header bar ────────────────────────────────────────── */
body.client-dashboard .client-header,
body.client-dashboard nav.client-header.navbar-top {
  background: rgba(255,255,255,0.3) !important;
  backdrop-filter: blur(32px) saturate(180%);
  -webkit-backdrop-filter: blur(32px) saturate(180%);
  border-bottom: 1px solid rgba(255,255,255,0.5) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.04), inset 0 1px 0 rgba(255,255,255,0.8);
}
[data-theme="dark"] body.client-dashboard .client-header,
[data-theme="dark"] body.client-dashboard nav.client-header.navbar-top {
  background: rgba(10,5,30,0.45) !important;
  backdrop-filter: blur(32px) saturate(180%);
  -webkit-backdrop-filter: blur(32px) saturate(180%);
  border-bottom: 1px solid rgba(255,255,255,0.07) !important;
  box-shadow: 0 1px 0 rgba(0,0,0,0.3);
}

/* ── Base icon button — modern circular pill ─────────────────── */
body.client-dashboard .client-header-icon-btn,
body.client-dashboard .client-header .sidebar-toggler,
body.client-dashboard .client-header .theme-toggle-btn,
body.client-dashboard .client-header .navbar-toggler {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  border-radius: 50% !important;
  border: 1.5px solid rgba(0,0,0,0.08) !important;
  background: rgba(0,0,0,0.04) !important;
  color: #64748b !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease,
              box-shadow 0.2s ease, transform 0.15s ease !important;
  padding: 0 !important;
}
body.client-dashboard .client-header-icon-btn i {
  font-size: 19px !important;
  line-height: 1 !important;
}

/* hover — brand purple gradient lift */
body.client-dashboard .client-header-icon-btn:hover,
body.client-dashboard .client-header .sidebar-toggler:hover,
body.client-dashboard .client-header .theme-toggle-btn:hover,
body.client-dashboard .client-header .navbar-toggler:hover {
  background: linear-gradient(135deg, #8A4CEF 0%, #6D28D9 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(109,40,217,0.4) !important;
  transform: translateY(-1px) !important;
}
body.client-dashboard .client-header .sidebar-toggler:hover svg path,
body.client-dashboard .client-header .sidebar-toggler:hover svg line {
  stroke: #fff !important;
}
body.client-dashboard .client-header .theme-toggle-btn:hover .theme-icon { color: #fff !important; }

/* dark mode base */
[data-theme="dark"] body.client-dashboard .client-header-icon-btn,
[data-theme="dark"] body.client-dashboard .client-header .sidebar-toggler,
[data-theme="dark"] body.client-dashboard .client-header .theme-toggle-btn,
[data-theme="dark"] body.client-dashboard .client-header .navbar-toggler {
  background: rgba(255,255,255,0.07) !important;
  border-color: rgba(255,255,255,0.12) !important;
  color: #94a3b8 !important;
}
[data-theme="dark"] body.client-dashboard .client-header-icon-btn:hover,
[data-theme="dark"] body.client-dashboard .client-header .sidebar-toggler:hover,
[data-theme="dark"] body.client-dashboard .client-header .theme-toggle-btn:hover,
[data-theme="dark"] body.client-dashboard .client-header .navbar-toggler:hover {
  background: linear-gradient(135deg, #8A4CEF 0%, #6D28D9 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 20px rgba(109,40,217,0.45) !important;
  transform: translateY(-1px) !important;
}

/* logout — red tint / red gradient on hover */
body.client-dashboard .client-header-logout {
  background: rgba(239,68,68,0.07) !important;
  border-color: rgba(239,68,68,0.18) !important;
  color: #ef4444 !important;
}
body.client-dashboard .client-header-logout:hover {
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(220,38,38,0.38) !important;
}

/* flag pill — slightly wider to fit the flag image */
body.client-dashboard .client-header-actions .select-language .client-header-icon-btn {
  width: 44px !important;
  min-width: 44px !important;
  border-radius: 999px !important;
}
.client-header-flag {
  width: 20px !important;
  height: 14px !important;
  border-radius: 3px !important;
  object-fit: cover !important;
  display: block !important;
}

/* gap between header action buttons */
body.client-dashboard .client-header-actions {
  gap: 6px !important;
}

/* theme toggle icon display (unchanged logic) */
[data-theme="dark"] body.client-dashboard .theme-toggle-btn .theme-icon-light {
  display: inline-block !important;
}
[data-theme="dark"] body.client-dashboard .theme-toggle-btn .theme-icon-dark {
  display: none !important;
}
body.client-dashboard .client-header-icon-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  min-width: 36px !important;
  flex-shrink: 0 !important;
}
body.client-dashboard .client-header-flag {
  width: 20px !important;
  height: 20px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
}
html[dir="rtl"] body.client-dashboard .client-header-logout i {
  transform: scaleX(-1);
}
body.client-dashboard .client-header .client-header-lang-text {
  display: none !important;
}
body.client-dashboard .client-header-actions {
  gap: 6px !important;
}
body.client-dashboard .client-header .sidebar-toggler .icon svg {
  width: 18px !important;
  height: 18px !important;
}
@media (max-width: 991px) {
  body.client-dashboard .client-header-container {
    gap: 0.5rem !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}
@media (min-width: 992px) {
  body.client-dashboard .client-header .navbar-toggler {
    display: none !important;
  }
  body.client-dashboard .client-header-container {
    gap: 0.5rem !important;
  }
}

/* Partner header: ensure toggle is clickable */
body.partner-dashboard .partner-header .sidebar-toggler {
  cursor: pointer;
}

/* Partner header RTL: toggler near sidebar (right), actions on left, breadcrumb in center */
html[dir="rtl"] body.partner-dashboard .partner-header .client-header-container {
  flex-direction: row-reverse;
  justify-content: flex-start;
}
html[dir="rtl"] body.partner-dashboard .partner-header .client-header-container nav[aria-label="breadcrumb"] {
  margin-inline-start: 0 !important;
  margin-inline-end: auto !important;
}
html[dir="rtl"] body.partner-dashboard .partner-header .client-header-container > ul {
  margin-inline-start: auto !important;
  margin-inline-end: 0 !important;
}

/* Hide main page scrollbar (the white one on the right) - keeps scroll, removes visual */
[data-theme="dark"] html,
[data-theme="dark"] body {
  scrollbar-width: none; /* Firefox */
}
[data-theme="dark"] html::-webkit-scrollbar,
[data-theme="dark"] body::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Edge */
  width: 0;
  height: 0;
}

/* Sidebar - brand purple gradient matching welcome card */
[data-theme="dark"] .header-position,
header.navbar-dark-v1 .header-position {
  background: linear-gradient(180deg, #2A0070 0%, #1a0050 55%, #0f0035 100%) !important;
  border-right: 1px solid rgba(255,255,255,0.08);
}
[data-theme="light"] header.navbar-dark-v1 .header-position {
  background: linear-gradient(180deg, #2A0070 0%, #1a0050 55%, #0f0035 100%) !important;
  border-right: 1px solid rgba(255,255,255,0.08);
}

html[dir="rtl"][data-theme="dark"] .header-position,
html[dir="rtl"] header.navbar-dark-v1 .header-position {
  border-right: none;
  border-left: 1px solid rgba(255,255,255,0.08);
}

/* Logo divider on purple sidebar */
header.navbar-dark-v1 .dashboard-logo {
  border-bottom: 1px solid rgba(255,255,255,0.12) !important;
}

/* Sidebar link hover on purple gradient */
header.navbar-dark-v1 .side-nav ul li a:hover {
  background-color: rgba(255,255,255,0.12) !important;
  color: #ffffff !important;
}

/* Active sidebar item on purple gradient - matching welcome card */
header.navbar-dark-v1 .side-nav ul li.active > a {
  background: linear-gradient(90deg, #8A4CEF 0%, #6D28D9 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 16px rgba(109,40,217,0.4);
}

/* Scrollbar track on purple sidebar */
header.navbar-dark-v1 .header-position .side-nav,
header.navbar-dark-v1 .side-nav {
  scrollbar-color: rgba(255,255,255,0.2) transparent !important;
}
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-track {
  background: transparent !important;
  background-color: transparent !important;
}
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-thumb {
  background: rgba(255,255,255,0.2) !important;
}
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-thumb:hover {
  background: rgba(255,255,255,0.35) !important;
}

/* RTL: Sidebar is on right - main content needs padding on right, not left */
/* Use direction: ltr for main-wrapper layout so content extends from left edge;
   RTL text is preserved via inheritance on main-content-wrapper */
@media (min-width: 992px) {
  html[dir="rtl"] .main-wrapper {
    padding-left: 0 !important;
    padding-right: 312px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    direction: ltr;
  }
  html[dir="rtl"] .sidebar-collapse .main-wrapper {
    padding-left: 0 !important;
    padding-right: 80px !important;
  }
}
/* RTL: Ensure main content area fills from left edge - no centering/margins */
/* Restore direction: rtl for Arabic text (main-wrapper uses ltr for layout only) */
html[dir="rtl"] .main-content-wrapper {
  width: 100%;
  max-width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-inline-start: 0 !important;
  margin-inline-end: 0 !important;
  direction: rtl;
}
html[dir="rtl"] .main-wrapper .container-fluid {
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-inline-start: 0 !important;
  margin-inline-end: 0 !important;
  max-width: 100%;
  width: 100%;
}
/* RTL: Explicit sidebar position (in case inset-inline-start is unreliable) */
@media (min-width: 992px) {
  html[dir="rtl"] .header-position {
    right: 0 !important;
    left: auto !important;
  }
}
/* RTL mobile: remove all main-wrapper padding */
@media (max-width: 991px) {
  html[dir="rtl"] .main-wrapper {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

[data-theme="dark"] .side-nav ul li a {
  color: var(--sg-sidebar-text) !important;
}

[data-theme="dark"] .side-nav ul li a:hover {
  background: var(--sg-sidebar-hover) !important;
  color: var(--sg-primary-light) !important;
  border-radius: 8px;
}
/* Active state - accent color as full background, white text and icons, strong/bold */
[data-theme="dark"] .side-nav ul li.active a {
  background: var(--sg-primary-light) !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-radius: 8px;
  border-inline-start: none !important;
  padding-inline-start: 16px !important;
}
[data-theme="dark"] .side-nav ul li.active a i,
[data-theme="dark"] .side-nav ul li.active a svg,
[data-theme="dark"] .side-nav ul li.active a svg path {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}
[data-theme="dark"] .side-nav ul li.active a i {
  font-weight: 700 !important;
}

/* Client dashboard sidebar active - gradient matching welcome card */
body.client-dashboard .side-nav ul li.active > a {
  background: linear-gradient(90deg, #8A4CEF 0%, #6D28D9 100%) !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  border-inline-start: none !important;
  padding-inline-start: 16px !important;
  box-shadow: 0 4px 16px rgba(109,40,217,0.35);
}
body.client-dashboard .side-nav ul li.active > a i,
body.client-dashboard .side-nav ul li.active > a svg,
body.client-dashboard .side-nav ul li.active > a svg path {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}
body.client-dashboard .side-nav ul li.active > a i {
  font-weight: 700 !important;
}

[data-theme="dark"] .side-nav ul li ul.sub-menu li a {
  color: rgba(226, 232, 240, 0.9) !important;
}
/* Sub-menu active item - bolder text to stand out from siblings */
[data-theme="dark"] .side-nav ul li ul.sub-menu li a.active,
body.client-dashboard .side-nav ul li ul.sub-menu li a.active {
  font-weight: 800 !important;
  color: #ffffff !important;
}

/* Collapsed sidebar: hide dropdown sub-menus, keep only main items visible and selected */
body.sidebar-collapse .side-nav ul.sub-menu,
body.sidebar-collapse .side-nav .collapse {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Sidebar platform icons - real brand icons from images/default/icons, same in active/inactive */
.side-nav .sidebar-platform-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex-shrink: 0;
}

/* Sidebar scrollbar - dark track and thumb (navbar-dark-v1 = always dark sidebar) */
header.navbar-dark-v1 .header-position .side-nav,
header.navbar-dark-v1 .side-nav,
[data-theme="dark"] .header-position .side-nav,
[data-theme="dark"] .side-nav {
  scrollbar-color: rgba(139, 92, 246, 0.5) #0f1219 !important;
  scrollbar-width: thin;
}
header.navbar-dark-v1 .header-position .side-nav::-webkit-scrollbar,
header.navbar-dark-v1 .side-nav::-webkit-scrollbar,
[data-theme="dark"] .header-position .side-nav::-webkit-scrollbar,
[data-theme="dark"] .side-nav::-webkit-scrollbar {
  width: 6px !important;
}
header.navbar-dark-v1 .header-position .side-nav::-webkit-scrollbar-track,
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-track,
[data-theme="dark"] .header-position .side-nav::-webkit-scrollbar-track,
[data-theme="dark"] .side-nav::-webkit-scrollbar-track {
  background: #0f1219 !important;
  background-color: #0f1219 !important;
  border-radius: 4px;
}
header.navbar-dark-v1 .header-position .side-nav::-webkit-scrollbar-thumb,
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-thumb,
[data-theme="dark"] .header-position .side-nav::-webkit-scrollbar-thumb,
[data-theme="dark"] .side-nav::-webkit-scrollbar-thumb {
  background-color: rgba(139, 92, 246, 0.5) !important;
  border-radius: 4px;
}
header.navbar-dark-v1 .header-position .side-nav::-webkit-scrollbar-thumb:hover,
header.navbar-dark-v1 .side-nav::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .header-position .side-nav::-webkit-scrollbar-thumb:hover,
[data-theme="dark"] .side-nav::-webkit-scrollbar-thumb:hover {
  background-color: rgba(139, 92, 246, 0.7) !important;
}

/* Simplebar inside sidebar */
header.navbar-dark-v1 .header-position .simplebar::-webkit-scrollbar-track,
[data-theme="dark"] .header-position .simplebar::-webkit-scrollbar-track {
  background: #0f1219 !important;
}
header.navbar-dark-v1 .header-position .simplebar::-webkit-scrollbar-thumb,
[data-theme="dark"] .header-position .simplebar::-webkit-scrollbar-thumb {
  background-color: rgba(139, 92, 246, 0.5) !important;
}

[data-theme="dark"] .dashboard-logo .logo img,
[data-theme="dark"] .dashboard-logo .logo-icon img {
  filter: brightness(1.1);
}

/* Navbar / Header - DARKER than content (match sidebar) - exclude client-header (has glass effect) */
[data-theme="dark"] nav.navbar:not(.client-header),
[data-theme="dark"] nav.navbar-top:not(.client-header),
[data-theme="dark"] .navbar-top:not(.client-header),
[data-theme="dark"] .navbar-top.bg-white:not(.client-header),
[data-theme="dark"] .navbar-top.bg-body-tertiary:not(.client-header) {
  background-color: var(--sg-navbar-bg) !important;
  background: var(--sg-navbar-bg) !important;
  border-bottom: 1px solid var(--sg-navbar-border) !important;
}

[data-theme="dark"] .navbar-top .user-name,
[data-theme="dark"] .navbar-top .dropdown-toggle,
[data-theme="dark"] .navbar-top a,
[data-theme="dark"] .navbar-top .button-default {
  color: var(--sg-navbar-text) !important;
}

[data-theme="dark"] .navbar-top .button-default:hover {
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .navbar-top .navbar-toggler,
[data-theme="dark"] .navbar-top .navbar-collapse,
[data-theme="dark"] .navbar-top .navbar-content {
  background-color: transparent !important;
  border-color: var(--sg-border-color) !important;
}

/* Cards */
[data-theme="dark"] .card,
[data-theme="dark"] .popup-card {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-card-border) !important;
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .card-header {
  background-color: rgba(0,0,0,0.1) !important;
  border-color: var(--sg-card-border) !important;
  color: var(--sg-body-color) !important;
}

/* Form controls - Texty glassmorphism (KB, all inputs, textareas) */
/* Override inline styles (e.g. Instagram modal) - must use !important */
[data-theme="dark"] .form-control[style],
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-select,
[data-theme="dark"] input.form-control,
[data-theme="dark"] textarea.form-control,
[data-theme="dark"] .kb-medium-textarea,
[data-theme="dark"] textarea.rounded-2,
[data-theme="dark"] input[type="text"].form-control,
[data-theme="dark"] input[type="email"].form-control,
[data-theme="dark"] input[type="password"].form-control,
[data-theme="dark"] input[type="number"].form-control,
[data-theme="dark"] .card textarea.form-control,
[data-theme="dark"] .card-body textarea {
  background-color: var(--sg-input-bg) !important;
  background-clip: padding-box !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
  -webkit-text-fill-color: var(--sg-input-color) !important;
}

[data-theme="dark"] .form-control::placeholder,
[data-theme="dark"] .form-control::-webkit-input-placeholder,
[data-theme="dark"] .form-control::-moz-placeholder,
[data-theme="dark"] textarea::placeholder {
  color: rgba(200, 210, 230, 0.6) !important;
  opacity: 1 !important;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .form-select:focus,
[data-theme="dark"] textarea:focus,
[data-theme="dark"] input:focus {
  border-color: var(--sg-primary-light) !important;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.2) !important;
  color: var(--sg-input-color) !important;
  background-color: rgba(255,255,255,0.1) !important;
}

/* form-select specifics - arrow icon, disabled, option dropdown */
[data-theme="dark"] .form-select {
  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='%23e2e8f0' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
}

[data-theme="dark"] .form-select:disabled {
  background-color: rgba(255,255,255,0.05) !important;
  color: rgba(226, 232, 240, 0.5) !important;
}

[data-theme="dark"] .form-select:-moz-focusring {
  color: var(--sg-input-color) !important;
  text-shadow: none !important;
}

/* option elements - native select dropdown is OS-rendered (usually white bg).
   Use dark text so options are readable; we cannot control the dropdown bg in most browsers. */
[data-theme="dark"] .form-select option,
[data-theme="dark"] select.form-select option,
[data-theme="dark"] select option {
  background-color: #ffffff !important;
  color: #212529 !important;
}

[data-theme="dark"] .form-label,
[data-theme="dark"] label {
  color: var(--sg-body-color) !important;
}

/* Summernote / rich text editor - dark style */
[data-theme="dark"] .note-editor.note-frame,
[data-theme="dark"] .note-editing-area,
[data-theme="dark"] .note-editable {
  background-color: var(--sg-input-bg) !important;
  color: var(--sg-input-color) !important;
  border-color: var(--sg-input-border) !important;
}

[data-theme="dark"] .note-toolbar {
  background-color: rgba(0,0,0,0.2) !important;
  border-color: var(--sg-input-border) !important;
}

[data-theme="dark"] .note-btn {
  color: var(--sg-sidebar-text) !important;
  background-color: rgba(255,255,255,0.05) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .note-btn:hover,
[data-theme="dark"] .note-btn:focus {
  background-color: rgba(139, 92, 246, 0.2) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .note-editing-area .note-editable,
[data-theme="dark"] .note-editing-area p,
[data-theme="dark"] .note-editing-area div,
[data-theme="dark"] .note-editing-area span {
  color: var(--sg-input-color) !important;
}

/* Card body inputs - ensure no white override */
[data-theme="dark"] .card .form-control,
[data-theme="dark"] .card-body .form-control,
[data-theme="dark"] .card textarea {
  background-color: var(--sg-input-bg) !important;
  color: var(--sg-input-color) !important;
}

/* AI Agent prompt textareas - ensure large size and proper styling in dark theme */
[data-theme="dark"] .prompt-textarea,
[data-theme="dark"] #system_prompt.prompt-textarea,
[data-theme="dark"] #instruction_prompt.prompt-textarea,
[data-theme="dark"] #personality_prompt.prompt-textarea {
  min-height: 320px !important;
  resize: vertical;
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

/* AI prompt form - char counter visibility in dark mode */
[data-theme="dark"] .char-counter {
  color: rgba(226, 232, 240, 0.85) !important;
}

[data-theme="dark"] .char-counter.text-warning {
  color: #fbbf24 !important;
}

[data-theme="dark"] .char-counter.text-danger {
  color: #f87171 !important;
}

/* AI prompt templates section (quick start) */
[data-theme="dark"] .prompt-templates-section {
  background-color: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--sg-border-color) !important;
}

/* Override bg-white on inputs if present */
[data-theme="dark"] .form-control.bg-white {
  background-color: var(--sg-input-bg) !important;
}

/* Autofill override - Chrome adds blue tint */
[data-theme="dark"] .form-control:-webkit-autofill,
[data-theme="dark"] .form-control:-webkit-autofill:hover,
[data-theme="dark"] .form-control:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--sg-input-color) !important;
  -webkit-box-shadow: 0 0 0 30px rgba(15, 18, 34, 0.95) inset !important;
  transition: background-color 5000s ease-in-out 0s;
}

/* Tables */
[data-theme="dark"] .table {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .table thead th {
  background-color: var(--sg-table-header-bg) !important;
  border-color: var(--sg-border-color) !important;
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .table tbody td {
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .table tbody tr:hover {
  background-color: var(--sg-table-row-hover) !important;
}

/* Dropdowns */
[data-theme="dark"] .dropdown-menu {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-card-border) !important;
}

[data-theme="dark"] .dropdown-item {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
  background-color: var(--sg-sidebar-hover) !important;
  color: var(--sg-primary-light) !important;
}

/* ========== Select2 dropdowns - dark theme (ticket, forms, etc.) ========== */
[data-theme="dark"] .select2-container--default .select2-selection--single {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: rgba(200, 210, 230, 0.6) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: var(--sg-input-color) transparent transparent transparent !important;
}

[data-theme="dark"] .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent var(--sg-input-color) transparent !important;
}

[data-theme="dark"] .select2-dropdown {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-results > .select2-results__options {
  background-color: var(--sg-card-bg) !important;
  background: var(--sg-card-bg) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option--disabled {
  color: rgba(226, 232, 240, 0.5) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option--selected {
  background-color: rgba(139, 92, 246, 0.15) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: rgba(139, 92, 246, 0.25) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .select2-search--dropdown .select2-search__field {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
}

[data-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: rgba(139, 92, 246, 0.2) !important;
  border-color: var(--sg-border-color) !important;
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .select2-container--default .select2-results__group {
  color: rgba(226, 232, 240, 0.8) !important;
}

/* ========== Choices.js dropdowns - dark theme ========== */
[data-theme="dark"] .choices .choices__inner,
[data-theme="dark"] .choices.is-open .choices__inner {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .choices__list--dropdown,
[data-theme="dark"] .choices__list[aria-expanded] {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .choices__list--dropdown .choices__item,
[data-theme="dark"] .choices__list[aria-expanded] .choices__item {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .choices__list--dropdown .choices__item--selectable.is-highlighted,
[data-theme="dark"] .choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: rgba(139, 92, 246, 0.25) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .choices[data-type*=select-one] .instructor-search-field {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .choices__list--multiple .choices__item {
  background-color: rgba(139, 92, 246, 0.2) !important;
  border-color: var(--sg-border-color) !important;
  color: var(--sg-body-color) !important;
}

/* Main content wrapper - LIGHTER than sidebar for visual separation */
[data-theme="dark"] .main-content-wrapper,
[data-theme="dark"] .main-wrapper,
[data-theme="dark"] section.oftions,
[data-theme="dark"] .container-fluid {
  background-color: var(--sg-content-bg) !important;
}

/* Nav container-fluid must be transparent so navbar bg shows through uniformly */
[data-theme="dark"] nav .container-fluid,
[data-theme="dark"] nav.navbar .container-fluid,
[data-theme="dark"] .navbar-top .container-fluid {
  background-color: transparent !important;
}

/* Content area cards/boxes - slightly elevated from content bg */
[data-theme="dark"] .main-wrapper .bg-white,
[data-theme="dark"] .main-content-wrapper .bg-white,
[data-theme="dark"] .oftions .bg-white {
  background-color: var(--sg-card-bg) !important;
}

/* Buttons - primary solid color (no gradient) */
[data-theme="dark"] .btn-primary {
  background: var(--sg-primary) !important;
  border-color: var(--sg-primary) !important;
  color: #ffffff !important;
}

/* DataTables */
[data-theme="dark"] .dataTables_wrapper {
  color: var(--sg-body-color) !important;
}

/* Badges */
[data-theme="dark"] .badge {
  border: 1px solid var(--sg-border-color);
}

/* Modals */
[data-theme="dark"] .modal-content {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-card-border) !important;
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .modal-header {
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .modal-footer {
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .modal-body {
  background-color: var(--sg-card-bg) !important;
  color: var(--sg-body-color) !important;
}

/* ========== Instagram Connect & 2FA Modals - dark mode ========== */
[data-theme="dark"] #instagramConnectModal #ig-window,
[data-theme="dark"] #instagram2FAModal #ig-2fa-window {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] #instagramConnectModal #ig-title-bar,
[data-theme="dark"] #instagram2FAModal #ig-2fa-title-bar {
  background-color: var(--sg-card-bg) !important;
  border-bottom-color: var(--sg-border-color) !important;
}

[data-theme="dark"] #instagramConnectModal #ig-title-bar h5,
[data-theme="dark"] #instagram2FAModal #ig-2fa-title-bar h5 {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] #instagramConnectModal #ig-minimize,
[data-theme="dark"] #instagramConnectModal #ig-exit,
[data-theme="dark"] #instagram2FAModal #ig-2fa-minimize,
[data-theme="dark"] #instagram2FAModal #ig-2fa-exit {
  color: rgba(226, 232, 240, 0.8) !important;
}

[data-theme="dark"] #instagramConnectModal .modal-body,
[data-theme="dark"] #instagram2FAModal .modal-body {
  background-color: var(--sg-card-bg) !important;
}

[data-theme="dark"] #instagramConnectModal #instagram_username,
[data-theme="dark"] #instagramConnectModal #instagram_password,
[data-theme="dark"] #instagram2FAModal #verification_code {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] #instagramConnectModal #ig-error-message,
[data-theme="dark"] #instagram2FAModal #ig-2fa-error-message {
  background-color: rgba(220, 38, 38, 0.2) !important;
  border-color: rgba(248, 113, 113, 0.5) !important;
  color: #fca5a5 !important;
}

[data-theme="dark"] #instagramConnectModal .modal-body h4,
[data-theme="dark"] #instagram2FAModal .modal-body h4 {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] #instagramConnectModal .modal-body p,
[data-theme="dark"] #instagram2FAModal .modal-body p {
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] #instagramConnectModal [style*="color: #8e8e8e"],
[data-theme="dark"] #instagramConnectModal [style*="color:#8e8e8e"] {
  color: rgba(226, 232, 240, 0.75) !important;
}

[data-theme="dark"] #instagramConnectModal [style*="background: #dbdbdb"],
[data-theme="dark"] #instagramConnectModal [style*="background:#dbdbdb"] {
  background: var(--sg-border-color) !important;
}

[data-theme="dark"] #instagram2FAModal .las.la-shield-alt {
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] #instagram2FAModal [style*="border: 3px solid #0095f6"] {
  border-color: var(--sg-primary-light) !important;
}

[data-theme="dark"] #instagramConnectModal #instagram-fb-login {
  color: #93c5fd !important;
}

[data-theme="dark"] #instagramConnectModal a[style*="color: #00376b"],
[data-theme="dark"] #instagramConnectModal a[style*="color:#00376b"] {
  color: #93c5fd !important;
}

[data-theme="dark"] #instagram2FAModal #resend2FAButton {
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] #instagramConnectModal .lab.la-instagram {
  -webkit-text-fill-color: transparent !important;
  background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}

[data-theme="dark"] #instagramConnectModal .modal-body > div[style*="flex"] span {
  color: rgba(226, 232, 240, 0.7) !important;
}

/* Instagram modal - center elements, force LTR (fixes RTL right-align) */
#instagramConnectModal .modal-body,
#instagramConnectModal #ig-title-bar {
  direction: ltr !important;
}

#instagramConnectModal #instagramConnectForm {
  direction: ltr !important;
  text-align: center !important;
}

#instagramConnectModal #instagramConnectForm input {
  text-align: left !important;
}

#instagramConnectModal #connectInstagramButton,
#instagramConnectModal #instagram-fb-login {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
}

/* Text utilities - improve contrast for readability */
[data-theme="dark"] .text-muted {
  color: rgba(226, 232, 240, 0.92) !important;
}

[data-theme="dark"] small,
[data-theme="dark"] .small {
  color: rgba(226, 232, 240, 0.9) !important;
}

/* Section titles and labels */
[data-theme="dark"] .section-title,
[data-theme="dark"] .card-title,
[data-theme="dark"] h3, [data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] h6 {
  color: #f1f5f9 !important;
}

/* ========== Media Manager - dark theme ========== */
[data-theme="dark"] .filter-section {
  background-color: var(--sg-card-bg) !important;
  border: 1px solid var(--sg-border-color) !important;
  box-shadow: none !important;
}

[data-theme="dark"] .media-item {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .media-thumbnail {
  background-color: rgba(0, 0, 0, 0.2) !important;
}

[data-theme="dark"] .media-thumbnail .video-icon {
  color: rgba(226, 232, 240, 0.7) !important;
}

[data-theme="dark"] .media-name {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .media-details {
  color: rgba(226, 232, 240, 0.75) !important;
}

[data-theme="dark"] .media-actions {
  border-top-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .upload-area {
  border-color: var(--sg-border-color) !important;
  background-color: rgba(255, 255, 255, 0.03) !important;
}

[data-theme="dark"] .upload-area:hover {
  border-color: var(--sg-primary-light) !important;
  background-color: rgba(139, 92, 246, 0.08) !important;
}

[data-theme="dark"] .upload-area.dragover {
  border-color: var(--sg-primary-light) !important;
  background-color: rgba(139, 92, 246, 0.12) !important;
}

[data-theme="dark"] .bulk-drop-zone {
  border-color: var(--sg-border-color) !important;
  background-color: rgba(255, 255, 255, 0.03) !important;
}

[data-theme="dark"] .bulk-drop-zone:hover,
[data-theme="dark"] .bulk-drop-zone.dragover {
  border-color: var(--sg-primary-light) !important;
  background-color: rgba(139, 92, 246, 0.08) !important;
}

/* Analytics/plan card - Sky pro text and secondary info */
[data-theme="dark"] .analytics-content p,
[data-theme="dark"] .analytics-content .designation {
  color: var(--sg-text-secondary) !important;
}

/* Card body secondary text */
[data-theme="dark"] .card-body p,
[data-theme="dark"] .card-body small {
  color: rgba(226, 232, 240, 0.92) !important;
}

/* SVG icons in navbar - stroke color for dark */
[data-theme="dark"] .sidebar-toggler svg path {
  stroke: var(--sg-navbar-text) !important;
}

/* Bootstrap overrides for dark */
[data-theme="dark"] .bg-white {
  background-color: var(--sg-card-bg) !important;
}

/* Header/navbar - force darker color (overrides bg-white, bg-body-tertiary) */
[data-theme="dark"] nav.navbar.bg-white,
[data-theme="dark"] nav.navbar.bg-body-tertiary,
[data-theme="dark"] .main-wrapper > nav.navbar {
  background-color: var(--sg-navbar-bg) !important;
  background: var(--sg-navbar-bg) !important;
}

[data-theme="dark"] .bg-body-tertiary {
  background-color: var(--sg-navbar-bg) !important;
}

/* ========== Connection settings & KB pages - fix bg-light (Account Details, content blocks) ========== */
/* bg-light creates white/grey areas with poor grey-text contrast; use dark card style instead */
[data-theme="dark"] .bg-light,
[data-theme="dark"] .card.bg-light,
[data-theme="dark"] .card.border-0.bg-light,
[data-theme="dark"] .p-3.bg-light,
[data-theme="dark"] .p-3.bg-light.rounded,
[data-theme="dark"] .border.rounded.p-3.bg-light,
[data-theme="dark"] div.bg-light {
  background-color: rgba(255, 255, 255, 0.06) !important;
  border-color: var(--sg-border-color) !important;
  color: var(--sg-body-color) !important;
}

/* Text inside these blocks - ensure readable (override Bootstrap's muted-on-light) */
[data-theme="dark"] .bg-light .text-muted,
[data-theme="dark"] .bg-light span.text-muted,
[data-theme="dark"] .p-3.bg-light .text-muted,
[data-theme="dark"] .border.rounded.p-3.bg-light .text-muted {
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] .bg-light strong,
[data-theme="dark"] .bg-light .font-weight-bold,
[data-theme="dark"] .p-3.bg-light strong,
[data-theme="dark"] .p-3.bg-light h6 {
  color: #f1f5f9 !important;
}

/* default-tab-list wrapper (WhatsApp, Instagram, KB, AI prompt forms) */
[data-theme="dark"] .default-tab-list.bg-white,
[data-theme="dark"] .default-tab-list.default-tab-list-v2.bg-white,
[data-theme="dark"] .default-tab-list.activeItem-bd-md.bg-white {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-card-border) !important;
  color: var(--sg-body-color) !important;
}

/* ========== WhatsApp / Telegram Setup pages - dark mode ========== */
[data-theme="dark"] .alert-info {
  background-color: rgba(56, 189, 248, 0.15) !important;
  border-color: rgba(56, 189, 248, 0.4) !important;
  color: #bae6fd !important;
}

[data-theme="dark"] .alert-info h6,
[data-theme="dark"] .alert-info .las {
  color: #7dd3fc !important;
}

[data-theme="dark"] .alert-info ol,
[data-theme="dark"] .alert-info li {
  color: rgba(186, 230, 253, 0.95) !important;
}

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

[data-theme="dark"] .alert-warning .las,
[data-theme="dark"] .alert-warning small {
  color: rgba(253, 230, 138, 0.95) !important;
}

/* alert-success - fix light green background + light text = unreadable in dark mode */
[data-theme="dark"] .alert-success {
  background-color: rgba(34, 197, 94, 0.18) !important;
  border-color: rgba(34, 197, 94, 0.45) !important;
  color: #86efac !important;
}

[data-theme="dark"] .alert-success strong,
[data-theme="dark"] .alert-success .las,
[data-theme="dark"] .alert-success small {
  color: #86efac !important;
}

/* QR code container - keep white bg for scanability, add dark-friendly border */
[data-theme="dark"] .qr-code-scan-wrapper {
  border-color: rgba(255, 255, 255, 0.2) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.1);
}

/* WhatsApp/Telegram setup cards - list items readable in dark */
[data-theme="dark"] .card-body .list-unstyled li {
  color: rgba(226, 232, 240, 0.92) !important;
}

/* Form control plaintext (KB show read-only fields) */
[data-theme="dark"] .form-control-plaintext {
  background-color: transparent !important;
  color: var(--sg-body-color) !important;
  border-color: transparent !important;
}

/* btn-outline-primary - brighter purple for dark bg (Update Status, etc.) */
[data-theme="dark"] .btn-outline-primary {
  border-color: #c4b5fd !important;
  color: #c4b5fd !important;
}

[data-theme="dark"] .btn-outline-primary:hover {
  background: rgba(139, 92, 246, 0.25) !important;
  border-color: #ddd6fe !important;
  color: #e9e5ff !important;
}

/* ========== Available Plans / Upgrade Plan - dark mode text ========== */
[data-theme="dark"] .package-default {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-card-border) !important;
}

[data-theme="dark"] .package-header.package-header-color {
  background-color: rgba(139, 92, 246, 0.18) !important;
  border-color: rgba(139, 92, 246, 0.3) !important;
}

[data-theme="dark"] .package-header .package-title {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .package-header p {
  color: rgba(226, 232, 240, 0.92) !important;
}

[data-theme="dark"] .package-header hr {
  border-color: rgba(255, 255, 255, 0.15) !important;
}

[data-theme="dark"] .package-content ul li,
[data-theme="dark"] .package-content ul li p,
[data-theme="dark"] .package-content ul li span {
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] .package-content ul.item-bg li:nth-child(odd) {
  background-color: rgba(255, 255, 255, 0.04) !important;
}

[data-theme="dark"] .package-content .package-pirce {
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .oftions .period-btn.btn-outline-secondary {
  border-color: rgba(255, 255, 255, 0.3) !important;
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] .oftions .period-btn.btn-outline-secondary:hover {
  background: rgba(255, 255, 255, 0.08) !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  color: #f1f5f9 !important;
}

/* KB create/edit - catalog format info, upload areas, voice recorder */
[data-theme="dark"] .catalog-format-info,
[data-theme="dark"] .voice-recorder-container.border,
[data-theme="dark"] .upload-area.border,
[data-theme="dark"] .website-crawl-container.border {
  background-color: rgba(255, 255, 255, 0.04) !important;
  border-color: var(--sg-border-color) !important;
}

/* Analytics - unified dark treatment for all stats */
[data-theme="dark"] .analytics .analytics-icon,
[data-theme="dark"] .analytics.clr-1 .analytics-icon,
[data-theme="dark"] .analytics.clr-2 .analytics-icon,
[data-theme="dark"] .analytics.clr-3 .analytics-icon,
[data-theme="dark"] .analytics.clr-4 .analytics-icon {
  background-color: rgba(139, 92, 246, 0.12) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .analytics .analytics-content h4,
[data-theme="dark"] .analytics.clr-1 .analytics-content h4,
[data-theme="dark"] .analytics.clr-2 .analytics-content h4,
[data-theme="dark"] .analytics.clr-3 .analytics-content h4,
[data-theme="dark"] .analytics.clr-4 .analytics-content h4,
[data-theme="dark"] .analytics .analytics-icon svg path,
[data-theme="dark"] .analytics.clr-1 .analytics-icon svg path,
[data-theme="dark"] .analytics.clr-2 .analytics-icon svg path,
[data-theme="dark"] .analytics.clr-3 .analytics-icon svg path,
[data-theme="dark"] .analytics.clr-4 .analytics-icon svg path {
  color: var(--sg-primary-light) !important;
  fill: var(--sg-primary-light) !important;
}

/* Analytics box - hover for clickable cards */
.analytics-box {
  transition: background-color 0.2s ease;
}
a:hover .analytics-box,
.analytics-box:hover {
  background-color: var(--sg-table-row-hover) !important;
}

/* Booking/stats cards - ensure text readable */
[data-theme="dark"] .card.bg-primary .card-body,
[data-theme="dark"] .card.bg-primary .card-body small,
[data-theme="dark"] .card.bg-success .card-body,
[data-theme="dark"] .card.bg-success .card-body small,
[data-theme="dark"] .card.bg-info .card-body,
[data-theme="dark"] .card.bg-info .card-body small,
[data-theme="dark"] .card.bg-warning .card-body,
[data-theme="dark"] .card.bg-warning .card-body small {
  color: rgba(255,255,255,0.95) !important;
}

/* table-light header in dark - make readable */
[data-theme="dark"] .table-light,
[data-theme="dark"] thead.table-light th {
  background-color: rgba(30, 27, 75, 0.8) !important;
  color: #e2e8f0 !important;
  border-color: var(--sg-border-color) !important;
}

/* ========== Chat page - Vue chat (WhatsApp/Instagram inbox) ========== */
/* Left sidebar header - match navbar dark */
[data-theme="dark"] .chat_wrapper .sp-left-sidebar .left-sidebar-header {
  background-color: var(--sg-navbar-bg) !important;
  border-bottom-color: var(--sg-border-color) !important;
}

/* Left sidebar - conversations/contacts list */
[data-theme="dark"] .chat_wrapper .sp-left-sidebar,
[data-theme="dark"] .chat_wrapper .left-sidebar-content {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-left-sidebar .left-sidebar-header .nav-link {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-left-sidebar .left-sidebar-header .nav-link.active,
[data-theme="dark"] .chat_wrapper .sp-left-sidebar .left-sidebar-header .nav-link:hover {
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .chat_wrapper .sp-left-sidebar .left-sidebar-header .nav-tabs::after {
  background-color: var(--sg-border-color) !important;
}

/* Search field - override box-shadow and transparent bg from style.css */
[data-theme="dark"] .chat_wrapper .left-sidebar-content .search-field input {
  background-color: var(--sg-input-bg) !important;
  border: 1px solid var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
  box-shadow: none !important;
}

[data-theme="dark"] .chat_wrapper .left-sidebar-content .search-field input::placeholder {
  color: rgba(200, 210, 230, 0.6) !important;
}

[data-theme="dark"] .chat_wrapper .left-sidebar-content .search-field .serach-btn {
  color: rgba(226, 232, 240, 0.8) !important;
}

/* Toggles/dropdowns - override transparent !important from style.css */
[data-theme="dark"] .chat_wrapper .left-sidebar-content .select-boxlist .form-select,
[data-theme="dark"] .chat_wrapper .left-sidebar-content .select-boxlist .select2-container--default .select2-selection--single {
  background-color: var(--sg-input-bg) !important;
  border: 1px solid var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .chat_wrapper .left-sidebar-content .select-boxlist .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .chat_wrapper .left-sidebar-content .select-boxlist .select2-container--default .select2-selection--single .select2-selection__arrow::after {
  color: var(--sg-input-color) !important;
}

/* Select2 dropdown (when opened) - dark theme */
[data-theme="dark"] .chat_wrapper .select2-container--default .select2-dropdown,
[data-theme="dark"] .chat_wrapper .select2-container--default .select2-results > .select2-results__options {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .chat_wrapper .select2-container--default .select2-results__option {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .select2-container--default .select2-results__option--highlighted {
  background-color: rgba(139, 92, 246, 0.2) !important;
  color: var(--sg-primary-light) !important;
}

[data-theme="dark"] .chat_wrapper .single-sp-author-card .content .title,
[data-theme="dark"] .chat_wrapper .single-sp-author-card .content p {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .single-sp-author-card.active {
  background-color: rgba(139, 92, 246, 0.15) !important;
}

[data-theme="dark"] .chat_wrapper .single-sp-author-card.active .content .title,
[data-theme="dark"] .chat_wrapper .single-sp-author-card.active .content p,
[data-theme="dark"] .chat_wrapper .single-sp-author-card.active .time-badge {
  color: #e2e8f0 !important;
}

/* Right sidebar - contact details */
[data-theme="dark"] .chat_wrapper .sp-right-sidebar,
[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-header,
[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .author-info-top {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-header .title,
[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .author-info-top .title {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .author-info-top .desc {
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .chat-tab-two .nav-tabs .nav-link {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .details-info-list li p,
[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .details-info-list li i {
  color: rgba(226, 232, 240, 0.9) !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .details-info-list li p strong {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .sp-details-info-area .info-top .title {
  color: #f1f5f9 !important;
}

[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .sp-details-info-area .info-content .note-card .title,
[data-theme="dark"] .chat_wrapper .sp-right-sidebar .right-sidebar-content .sp-details-info-area .info-content .note-card p {
  color: var(--sg-body-color) !important;
}

/* Central chat area */
[data-theme="dark"] .chat_wrapper .chatpage-wrapper,
[data-theme="dark"] .chat_wrapper .chatpage-wrapper .container-fluid {
  background-color: var(--sg-content-bg) !important;
}

[data-theme="dark"] .chat_wrapper .sp-chat-main-wrapper,
[data-theme="dark"] .chat_wrapper .sp-chat-main-wrapper .main-wrapper-header {
  background-color: var(--sg-content-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-chat-main-wrapper .main-author-card .title,
[data-theme="dark"] .chat_wrapper .sp-chat-main-wrapper .main-author-card .text {
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-main-wrapper-content .sm-title {
  color: rgba(226, 232, 240, 0.75) !important;
}

[data-theme="dark"] .chat_wrapper .sp-main-wrapper-content {
  background-color: transparent !important;
}

[data-theme="dark"] .chat_wrapper .sp-main-wrapper-content .chat-author-text,
[data-theme="dark"] .chat_wrapper .sp-main-wrapper-content .chat-time-text {
  color: rgba(226, 232, 240, 0.85) !important;
}

/* Message input - Send message area */
[data-theme="dark"] .chat_wrapper .sp-static-bar.chat__sendArea,
[data-theme="dark"] .chat_wrapper .sp-static-bar {
  background-color: var(--sg-card-bg) !important;
  border-color: var(--sg-border-color) !important;
}

[data-theme="dark"] .chat_wrapper .MessageField__MessageContainer,
[data-theme="dark"] .chat_wrapper .chat__sendArea .new-chat-form textarea {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .chat_wrapper .chat__sendArea .new-chat-form textarea::placeholder {
  color: rgba(200, 210, 230, 0.6) !important;
}

[data-theme="dark"] .chat_wrapper .MessageField__MessageContainer textarea {
  color: var(--sg-input-color) !important;
}

[data-theme="dark"] .chat_wrapper .chat__sendArea .new-chat-form .bottom-icons,
[data-theme="dark"] .chat_wrapper .chat__sendArea .new-chat-form .audio-peeker-area,
[data-theme="dark"] .chat_wrapper .chat__sendArea .new-chat-form .dropDown__icon {
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: var(--sg-body-color) !important;
}

/* Form select in chat left sidebar */
[data-theme="dark"] .chat_wrapper .left-sidebar-content .form-select,
[data-theme="dark"] .chat_wrapper .left-sidebar-content .select2-container--default .select2-selection--single {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

/* Chat modals (note, tag modals in right sidebar) */
[data-theme="dark"] .chat_wrapper .sp-modal .modal-content,
[data-theme="dark"] .chat_wrapper .sp-modal .modal-body {
  background-color: var(--sg-card-bg) !important;
  color: var(--sg-body-color) !important;
}

[data-theme="dark"] .chat_wrapper .sp-modal .sp_modal_text,
[data-theme="dark"] .chat_wrapper .sp-modal textarea {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
}

/* ========== AI Agent Chat - dark mode (input white-on-white fix + messages) ========== */
[data-theme="dark"] .chat-input-area {
  background-color: var(--sg-card-bg) !important;
  border-top-color: var(--sg-input-border) !important;
}
[data-theme="dark"] .chat-input-form textarea {
  background-color: var(--sg-input-bg) !important;
  border-color: var(--sg-input-border) !important;
  color: var(--sg-input-color) !important;
  -webkit-text-fill-color: var(--sg-input-color) !important;
}
[data-theme="dark"] .chat-input-form textarea::placeholder {
  color: rgba(200, 210, 230, 0.6) !important;
}
[data-theme="dark"] .chat-messages {
  background-color: var(--sg-card-bg) !important;
}
[data-theme="dark"] .chat-messages .slc-message-bot .slc-message-content {
  background-color: var(--sg-input-bg) !important;
  color: var(--sg-input-color) !important;
  box-shadow: none !important;
}
[data-theme="dark"] .chat-messages .slc-message-time {
  color: rgba(200, 210, 230, 0.7) !important;
}
[data-theme="dark"] .typing-indicator,
[data-theme="dark"] .empty-chat {
  color: rgba(200, 210, 230, 0.7) !important;
}
[data-theme="dark"] .empty-chat i {
  color: rgba(200, 210, 230, 0.4) !important;
}

/* ========== QR Code scanner - ensure adequate quiet zone for scanning ========== */
.qr-code-scan-wrapper {
  padding: 48px !important;
  background: #ffffff !important;
  min-width: 1px;
}
/* QR codes need white margin (quiet zone) for reliable scanning - never override in dark theme */
