/* ======================================================================
   Al-Radi Global Light/Dark Theme
   Supports legacy project classes: dark-mode, dark, dark-theme, light-mode,
   light-theme and data-theme="dark|light".
   ====================================================================== */

:root,
html.light-mode,
body.light-mode,
html[data-theme="light"],
body[data-theme="light"] {
  color-scheme: light;
  --alr-bg: #f5f7fb;
  --alr-bg-soft: #eef2f7;
  --alr-surface: #ffffff;
  --alr-surface-2: #f8fafc;
  --alr-surface-3: #eef2ff;
  --alr-text: #111827;
  --alr-text-muted: #64748b;
  --alr-border: #dbe3ef;
  --alr-input-bg: #ffffff;
  --alr-input-text: #111827;
  --alr-table-head: #eef2ff;
  --alr-table-odd: #ffffff;
  --alr-table-even: #f8fafc;
  --alr-table-hover: #e0f2fe;
  --alr-overlay: rgba(15, 23, 42, .45);
  --alr-shadow: 0 12px 32px rgba(15, 23, 42, .12);

  --bg-color: var(--alr-bg);
  --text-color: var(--alr-text);
  --text-light: var(--alr-text-muted);
  --nav-bg: var(--alr-surface);
  --card-bg: var(--alr-surface);
  --border-color: var(--alr-border);
  --table-row-odd: var(--alr-table-odd);
  --table-row-even: var(--alr-table-even);
  --table-hover: var(--alr-table-hover);
  --tblx-gray-light: var(--alr-surface-2);
  --tblx-gray: var(--alr-border);
  --tblx-text: var(--alr-text);
  --tblx-text-muted: var(--alr-text-muted);
  --tblx-text-light: var(--alr-text-muted);
  --tblx-border: var(--alr-border);
  --tblx-bg: var(--alr-surface);
}

html.dark-mode,
body.dark-mode,
body.dark,
body.dark-theme,
html[data-theme="dark"],
body[data-theme="dark"] {
  color-scheme: dark;
  --alr-bg: #0f172a;
  --alr-bg-soft: #111827;
  --alr-surface: #172033;
  --alr-surface-2: #1e293b;
  --alr-surface-3: #273449;
  --alr-text: #e5edf7;
  --alr-text-muted: #a8b3c7;
  --alr-border: #334155;
  --alr-input-bg: #111827;
  --alr-input-text: #f8fafc;
  --alr-table-head: #1e293b;
  --alr-table-odd: #111827;
  --alr-table-even: #172033;
  --alr-table-hover: #26344d;
  --alr-overlay: rgba(0, 0, 0, .68);
  --alr-shadow: 0 18px 48px rgba(0, 0, 0, .42);

  --bg-color: var(--alr-bg);
  --text-color: var(--alr-text);
  --text-light: var(--alr-text-muted);
  --nav-bg: var(--alr-surface);
  --card-bg: var(--alr-surface);
  --border-color: var(--alr-border);
  --table-row-odd: var(--alr-table-odd);
  --table-row-even: var(--alr-table-even);
  --table-hover: var(--alr-table-hover);
  --tblx-gray-light: var(--alr-surface-2);
  --tblx-gray: var(--alr-border);
  --tblx-text: var(--alr-text);
  --tblx-text-muted: var(--alr-text-muted);
  --tblx-text-light: var(--alr-text-muted);
  --tblx-border: var(--alr-border);
  --tblx-bg: var(--alr-surface);
}

html.theme-ready body,
body.theme-transition {
  transition: background-color .22s ease, color .22s ease, border-color .22s ease;
}

body.light-mode,
body[data-theme="light"] {
  background-color: var(--alr-bg);
  color: var(--alr-text);
}

body.dark-mode,
body.dark,
body.dark-theme,
body[data-theme="dark"] {
  background-color: var(--alr-bg) !important;
  color: var(--alr-text) !important;
}

body.dark-mode a,
body.dark a,
body.dark-theme a,
body[data-theme="dark"] a {
  color: inherit;
}

body.dark-mode .page-loader,
body.dark .page-loader,
body.dark-theme .page-loader {
  background: rgba(15, 23, 42, .96) !important;
}

body.dark-mode .container,
body.dark-mode .main-container,
body.dark-mode .content,
body.dark-mode .content-area,
body.dark-mode .card,
body.dark-mode .dashboard-card,
body.dark-mode .panel,
body.dark-mode .modal-content,
body.dark-mode .modal-box,
body.dark-mode .form-container,
body.dark-mode .table-container,
body.dark-mode .table-wrapper,
body.dark-mode .toolbar,
body.dark-mode .filter-bar,
body.dark-mode .search-container,
body.dark-mode .dropdown-menu,
body.dark-mode .context-menu,
body.dark .container,
body.dark .main-container,
body.dark .content,
body.dark .content-area,
body.dark .card,
body.dark .dashboard-card,
body.dark .panel,
body.dark .modal-content,
body.dark .modal-box,
body.dark .form-container,
body.dark .table-container,
body.dark .table-wrapper,
body.dark .toolbar,
body.dark .filter-bar,
body.dark .search-container,
body.dark .dropdown-menu,
body.dark .context-menu,
body.dark-theme .container,
body.dark-theme .main-container,
body.dark-theme .content,
body.dark-theme .content-area,
body.dark-theme .card,
body.dark-theme .dashboard-card,
body.dark-theme .panel,
body.dark-theme .modal-content,
body.dark-theme .modal-box,
body.dark-theme .form-container,
body.dark-theme .table-container,
body.dark-theme .table-wrapper,
body.dark-theme .toolbar,
body.dark-theme .filter-bar,
body.dark-theme .search-container,
body.dark-theme .dropdown-menu,
body.dark-theme .context-menu {
  background-color: var(--alr-surface) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}

body.dark-mode h1, body.dark-mode h2, body.dark-mode h3, body.dark-mode h4,
body.dark h1, body.dark h2, body.dark h3, body.dark h4,
body.dark-theme h1, body.dark-theme h2, body.dark-theme h3, body.dark-theme h4 {
  color: var(--alr-text) !important;
}

body.dark-mode p,
body.dark-mode label,
body.dark-mode small,
body.dark-mode .muted,
body.dark-mode .subtitle,
body.dark-mode .description,
body.dark .muted,
body.dark .subtitle,
body.dark .description,
body.dark-theme .muted,
body.dark-theme .subtitle,
body.dark-theme .description {
  color: var(--alr-text-muted) !important;
}

body.dark-mode input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),
body.dark-mode select,
body.dark-mode textarea,
body.dark input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),
body.dark select,
body.dark textarea,
body.dark-theme input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),
body.dark-theme select,
body.dark-theme textarea {
  background-color: var(--alr-input-bg) !important;
  color: var(--alr-input-text) !important;
  border-color: var(--alr-border) !important;
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder,
body.dark input::placeholder,
body.dark textarea::placeholder,
body.dark-theme input::placeholder,
body.dark-theme textarea::placeholder {
  color: #7f8da3 !important;
}

body.dark-mode option,
body.dark option,
body.dark-theme option {
  background: var(--alr-input-bg) !important;
  color: var(--alr-input-text) !important;
}

body.dark-mode table,
body.dark table,
body.dark-theme table {
  background-color: var(--alr-surface) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}
body.dark-mode thead,
body.dark-mode th,
body.dark thead,
body.dark th,
body.dark-theme thead,
body.dark-theme th {
  background-color: var(--alr-table-head) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}
body.dark-mode td,
body.dark td,
body.dark-theme td {
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}
body.dark-mode tbody tr:nth-child(odd),
body.dark tbody tr:nth-child(odd),
body.dark-theme tbody tr:nth-child(odd) {
  background-color: var(--alr-table-odd) !important;
}
body.dark-mode tbody tr:nth-child(even),
body.dark tbody tr:nth-child(even),
body.dark-theme tbody tr:nth-child(even) {
  background-color: var(--alr-table-even) !important;
}
body.dark-mode tbody tr:hover,
body.dark tbody tr:hover,
body.dark-theme tbody tr:hover {
  background-color: var(--alr-table-hover) !important;
}

body.dark-mode .modal,
body.dark .modal,
body.dark-theme .modal,
body.dark-mode .overlay,
body.dark .overlay,
body.dark-theme .overlay {
  background-color: var(--alr-overlay);
}

.theme-toggle,
.theme-toggle-btn,
#themeToggle,
#themeToggleMobile,
#navThemeToggle,
.alradi-floating-theme-toggle {
  cursor: pointer;
}

.alradi-floating-theme-toggle {
  position: fixed;
  left: 18px;
  bottom: 18px;
  z-index: 2147483000;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid var(--alr-border);
  background: var(--alr-surface);
  color: var(--alr-text);
  box-shadow: var(--alr-shadow);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}
.alradi-floating-theme-toggle:hover { transform: translateY(-2px); }

@media print {
  .alradi-floating-theme-toggle,
  .theme-toggle,
  .theme-toggle-btn,
  #themeToggle,
  #themeToggleMobile,
  #navThemeToggle { display: none !important; }
}


/* ======================================================================
   Dark Theme Polish v2 — stronger final override layer
   Purpose: catch old inline CSS and module-specific components that were
   still too bright in dark mode.
   ====================================================================== */

html[data-theme="dark"],
html.dark-mode,
html.dark,
html.dark-theme {
  color-scheme: dark;

  /* Core polish */
  --alr-bg: #0b1120;
  --alr-bg-soft: #0f172a;
  --alr-surface: #111827;
  --alr-surface-2: #162033;
  --alr-surface-3: #1e293b;
  --alr-text: #eef4ff;
  --alr-text-muted: #a7b4ca;
  --alr-border: rgba(148, 163, 184, .26);
  --alr-input-bg: #0f172a;
  --alr-input-text: #f8fafc;
  --alr-table-head: #172033;
  --alr-table-odd: #0f172a;
  --alr-table-even: #111c2f;
  --alr-table-hover: #1f2e46;
  --alr-overlay: rgba(2, 6, 23, .78);
  --alr-shadow: 0 18px 55px rgba(0, 0, 0, .46);

  /* General app variables used in older pages */
  --bg-color: var(--alr-bg);
  --bg-base: var(--alr-bg);
  --bg-surface: var(--alr-surface);
  --bg-elevated: var(--alr-surface-2);
  --bg-subtle: var(--alr-surface-2);
  --card-bg: var(--alr-surface);
  --nav-bg: rgba(15, 23, 42, .96);
  --glass-bg: rgba(17, 24, 39, .78);
  --glass-border: rgba(148, 163, 184, .20);
  --text-color: var(--alr-text);
  --text-primary: var(--alr-text);
  --text-secondary: #cbd5e1;
  --text-main: var(--alr-text);
  --text-soft: #cbd5e1;
  --text-muted: var(--alr-text-muted);
  --text-light: var(--alr-text-muted);
  --border-color: var(--alr-border);
  --border-light: rgba(148, 163, 184, .18);
  --border-med: rgba(148, 163, 184, .32);
  --input-bg: var(--alr-input-bg);
  --hover-bg: rgba(99, 102, 241, .22);
  --primary-soft: rgba(129, 140, 248, .16);
  --primary-glow: rgba(129, 140, 248, .32);
  --row-even-bg: #111c2f;
  --row-odd-bg: #0f172a;

  /* Tables */
  --table-header: #172033;
  --table-row-odd: var(--alr-table-odd);
  --table-row-even: var(--alr-table-even);
  --table-hover: var(--alr-table-hover);
  --table-row-hover: var(--alr-table-hover);
  --table-row-selected: #352915;
  --table-row-selected-bar: #f59e0b;
  --table-border: rgba(148, 163, 184, .24);
  --table-row-divider: rgba(148, 163, 184, .20);
  --table-col-divider: rgba(148, 163, 184, .18);
  --table-divider: rgba(148, 163, 184, .18);

  /* Loaded page variables */
  --primary-soft: rgba(129, 140, 248, .16);
  --card-soft: #162033;
  --text-soft: #cbd5e1;
  --table-header-2: #1e293b;
  --table-border: rgba(148, 163, 184, .24);
  --table-border-strong: rgba(148, 163, 184, .38);
  --loaded-table-head-1: #0f172a;
  --loaded-table-head-2: #1e293b;
  --loaded-table-head-3: #134e4a;
  --loaded-table-border: rgba(148, 163, 184, .28);
  --loaded-table-border-soft: rgba(148, 163, 184, .18);
  --loaded-table-text: var(--alr-text);
  --loaded-table-muted: var(--alr-text-muted);
  --loaded-table-odd: #0f172a;
  --loaded-table-even: #111c2f;
  --loaded-table-hover: #1f2e46;
  --loaded-row-checked-bg: #1f3b20;
  --loaded-row-checked-bg-2: #284722;
  --loaded-row-checked-text: #dcfce7;
  --loaded-row-checked-line: #86efac;
  --loaded-row-editing-bg: #3a2514;
  --loaded-row-editing-bg-2: #4a2f16;
  --loaded-row-editing-text: #fed7aa;
  --loaded-row-editing-line: #fb923c;
  --loaded-cell-edit-bg: #2d1f12;
  --loaded-cell-focus-bg: #3a2a15;

  /* Delivery notes variables */
  --dn-modal-overlay: rgba(2, 6, 23, .86);
  --dn-modal-bg: #111827;
  --dn-primary-dark: #0f172a;
  --dn-primary-main: #162033;
  --dn-border-light: rgba(148, 163, 184, .18);
  --dn-border-medium: rgba(148, 163, 184, .30);
  --dn-text-primary: var(--alr-text);
  --dn-text-secondary: var(--alr-text-muted);
  --dn-bg-light: #162033;
  --dn-bg-lighter: #0f172a;
  --dn-shadow-sm: 0 2px 9px rgba(0,0,0,.28);
  --dn-shadow-md: 0 10px 28px rgba(0,0,0,.36);
  --dn-shadow-lg: 0 18px 46px rgba(0,0,0,.42);
  --dn-shadow-xl: 0 28px 75px rgba(0,0,0,.55);

  /* Employees variables */
  --ems-bg: #0b1120;
  --ems-card: #111827;
  --ems-card-2: #162033;
  --ems-text: var(--alr-text);
  --ems-muted: var(--alr-text-muted);
  --ems-border: rgba(148, 163, 184, .24);
  --ems-border-2: rgba(148, 163, 184, .34);
  --ems-shadow: 0 18px 45px rgba(0,0,0,.42);
  --ems-shadow-soft: 0 8px 22px rgba(0,0,0,.30);

  /* Admin dashboard variables */
  --dash-bg: #0b1120;
  --dash-panel: #111827;
  --dash-text: var(--alr-text);
  --dash-muted: var(--alr-text-muted);
  --dash-border: rgba(148, 163, 184, .24);
  --dash-shadow: 0 18px 52px rgba(0,0,0,.42);

  /* Login page variables */
  --bg-page: #070b16;
  --bg-brand: #0b1120;
  --bg-card: rgba(17, 24, 39, .90);
  --fg-strong: var(--alr-text);
  --fg-main: #dbeafe;
  --fg-muted: var(--alr-text-muted);
  --bd-soft: rgba(148, 163, 184, .24);
}

html[data-theme="dark"] body,
body.dark-mode,
body.dark,
body.dark-theme,
body[data-theme="dark"] {
  background:
    radial-gradient(circle at top right, rgba(79, 70, 229, .15), transparent 34%),
    radial-gradient(circle at bottom left, rgba(20, 184, 166, .10), transparent 38%),
    var(--alr-bg) !important;
  color: var(--alr-text) !important;
}

html[data-theme="dark"] *,
body.dark-mode *,
body.dark *,
body.dark-theme * {
  scrollbar-color: #475569 #0f172a;
}

html[data-theme="dark"] ::selection,
body.dark-mode ::selection,
body.dark ::selection,
body.dark-theme ::selection {
  background: rgba(129, 140, 248, .42);
  color: #ffffff;
}

html[data-theme="dark"] ::-webkit-scrollbar-track,
body.dark-mode ::-webkit-scrollbar-track { background: #0f172a; }
html[data-theme="dark"] ::-webkit-scrollbar-thumb,
body.dark-mode ::-webkit-scrollbar-thumb { background: #475569; border-radius: 999px; }
html[data-theme="dark"] ::-webkit-scrollbar-thumb:hover,
body.dark-mode ::-webkit-scrollbar-thumb:hover { background: #818cf8; }

/* Strong containers and cards */
html[data-theme="dark"] :is(
  .wrap,.wrapper,.container,.main-container,.main-content,.content,.content-area,.page-content,
  .app,.app-container,.panel,.card,.box,.dashboard-card,.dash-card,.dash-panel,.summary-card,
  .stat-card,.section,.section-card,.tab-content,.modal-content,.modal-box,.modal-container,
  .popup,.dialog,.dropdown-menu,.context-menu,.menu,.toolbar,.filter-bar,.filters,
  .search-container,.search-box,.table-container,.table-wrapper,.table-wrap,.dataTables_wrapper,
  .customers-panel,.orders-panel,.sidebar,.side-panel,.details-panel,.form-container,
  .cp-modal,.cp-dialog,.hc-modal,.hc-card,.dn-modal-content,.dn-card,.dnv-shell,.dnv-card,.dne-card,
  .loaded-shell,.loaded-panel,.loaded-card,.admin-card,.login-card
),
body.dark-mode :is(
  .wrap,.wrapper,.container,.main-container,.main-content,.content,.content-area,.page-content,
  .app,.app-container,.panel,.card,.box,.dashboard-card,.dash-card,.dash-panel,.summary-card,
  .stat-card,.section,.section-card,.tab-content,.modal-content,.modal-box,.modal-container,
  .popup,.dialog,.dropdown-menu,.context-menu,.menu,.toolbar,.filter-bar,.filters,
  .search-container,.search-box,.table-container,.table-wrapper,.table-wrap,.dataTables_wrapper,
  .customers-panel,.orders-panel,.sidebar,.side-panel,.details-panel,.form-container,
  .cp-modal,.cp-dialog,.hc-modal,.hc-card,.dn-modal-content,.dn-card,.dnv-shell,.dnv-card,.dne-card,
  .loaded-shell,.loaded-panel,.loaded-card,.admin-card,.login-card
) {
  background-color: var(--alr-surface) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
  box-shadow: var(--alr-shadow);
}

html[data-theme="dark"] :is(.top-nav,.navbar,.nav,.main-nav,.header,.page-header,.panel-header,.order-header,.modal-header,.card-header,.dash-panel header,.cp-form-header,.dn-modal-header),
body.dark-mode :is(.top-nav,.navbar,.nav,.main-nav,.header,.page-header,.panel-header,.order-header,.modal-header,.card-header,.dash-panel header,.cp-form-header,.dn-modal-header) {
  background: linear-gradient(135deg, #0f172a, #162033) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}

html[data-theme="dark"] :is(h1,h2,h3,h4,h5,h6,.title,.panel-title,.card-title,.brand-name,.cust-name,.cp-info-name),
body.dark-mode :is(h1,h2,h3,h4,h5,h6,.title,.panel-title,.card-title,.brand-name,.cust-name,.cp-info-name) {
  color: var(--alr-text) !important;
}

html[data-theme="dark"] :is(p,label,small,.muted,.subtitle,.description,.hint,.help,.details,.cust-meta,.cp-info-code,.empty,.empty-state,.json,.context),
body.dark-mode :is(p,label,small,.muted,.subtitle,.description,.hint,.help,.details,.cust-meta,.cp-info-code,.empty,.empty-state,.json,.context) {
  color: var(--alr-text-muted) !important;
}

/* Inputs, selects, editable cells */
html[data-theme="dark"] :is(input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),select,textarea,.input,.form-control,.search-input,.modern-search-input,.csp-input,.dne-inp,.dn-sticky-input,.dn-edit-input,.editable-cell,[contenteditable="true"]),
body.dark-mode :is(input:not([type="checkbox"]):not([type="radio"]):not([type="button"]):not([type="submit"]),select,textarea,.input,.form-control,.search-input,.modern-search-input,.csp-input,.dne-inp,.dn-sticky-input,.dn-edit-input,.editable-cell,[contenteditable="true"]) {
  background-color: var(--alr-input-bg) !important;
  color: var(--alr-input-text) !important;
  border-color: var(--alr-border) !important;
  caret-color: #93c5fd;
}

html[data-theme="dark"] :is(input,select,textarea,.input,.form-control,.search-input,.modern-search-input,.csp-input,.dne-inp,.dn-sticky-input,.dn-edit-input,[contenteditable="true"]):focus,
body.dark-mode :is(input,select,textarea,.input,.form-control,.search-input,.modern-search-input,.csp-input,.dne-inp,.dn-sticky-input,.dn-edit-input,[contenteditable="true"]):focus {
  background-color: #111827 !important;
  color: #ffffff !important;
  border-color: #60a5fa !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(96, 165, 250, .18) !important;
}

html[data-theme="dark"] :is(input,textarea)::placeholder,
body.dark-mode :is(input,textarea)::placeholder { color: #718096 !important; }
html[data-theme="dark"] option,
body.dark-mode option { background: #0f172a !important; color: #f8fafc !important; }

/* Tables */
html[data-theme="dark"] :is(table,.table,.data-table,.loaded-table,.dn-table,.hc-table,.dash-table),
body.dark-mode :is(table,.table,.data-table,.loaded-table,.dn-table,.hc-table,.dash-table) {
  background: var(--alr-surface) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}

html[data-theme="dark"] :is(thead,thead tr,th,.table-header,.hc-table-head),
body.dark-mode :is(thead,thead tr,th,.table-header,.hc-table-head) {
  background: linear-gradient(180deg, #172033, #0f172a) !important;
  color: #f8fafc !important;
  border-color: var(--alr-border) !important;
}

html[data-theme="dark"] :is(td,th),
body.dark-mode :is(td,th) {
  border-color: rgba(148, 163, 184, .20) !important;
}

html[data-theme="dark"] tbody tr:nth-child(odd),
html[data-theme="dark"] tbody tr:nth-child(odd) td,
body.dark-mode tbody tr:nth-child(odd),
body.dark-mode tbody tr:nth-child(odd) td { background-color: var(--alr-table-odd) !important; }

html[data-theme="dark"] tbody tr:nth-child(even),
html[data-theme="dark"] tbody tr:nth-child(even) td,
body.dark-mode tbody tr:nth-child(even),
body.dark-mode tbody tr:nth-child(even) td { background-color: var(--alr-table-even) !important; }

html[data-theme="dark"] tbody tr:hover,
html[data-theme="dark"] tbody tr:hover td,
body.dark-mode tbody tr:hover,
body.dark-mode tbody tr:hover td { background-color: var(--alr-table-hover) !important; }

html[data-theme="dark"] :is(tfoot,tfoot tr,tfoot td,.table-footer,.footer-bar,.stats-bar,.pagination,.pager),
body.dark-mode :is(tfoot,tfoot tr,tfoot td,.table-footer,.footer-bar,.stats-bar,.pagination,.pager) {
  background: #0f172a !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}

/* Keep meaningful status colours visible but dark-friendly */
html[data-theme="dark"] :is(.ok,.success,.badge.ok,.pill.ok,.status-ok),
body.dark-mode :is(.ok,.success,.badge.ok,.pill.ok,.status-ok) { background: rgba(22, 163, 74, .18) !important; color: #86efac !important; border-color: rgba(134, 239, 172, .25) !important; }
html[data-theme="dark"] :is(.warn,.warning,.badge.warn,.pill.wait,.status-warn),
body.dark-mode :is(.warn,.warning,.badge.warn,.pill.wait,.status-warn) { background: rgba(245, 158, 11, .18) !important; color: #fcd34d !important; border-color: rgba(252, 211, 77, .25) !important; }
html[data-theme="dark"] :is(.bad,.danger,.error,.badge.bad,.pill,.status-bad,.err,.critical),
body.dark-mode :is(.bad,.danger,.error,.badge.bad,.pill,.status-bad,.err,.critical) { background: rgba(220, 38, 38, .18) !important; color: #fca5a5 !important; border-color: rgba(252, 165, 165, .25) !important; }
html[data-theme="dark"] :is(.notice,.info,.badge.info),
body.dark-mode :is(.notice,.info,.badge.info) { background: rgba(14, 165, 233, .18) !important; color: #93c5fd !important; border-color: rgba(147, 197, 253, .25) !important; }

/* Buttons */
html[data-theme="dark"] :is(button,.btn,.button,.action-btn,.batch-btn,.icon-btn,.btn-icon,.back,.soft,.secondary),
body.dark-mode :is(button,.btn,.button,.action-btn,.batch-btn,.icon-btn,.btn-icon,.back,.soft,.secondary) {
  border-color: rgba(148, 163, 184, .24) !important;
}
html[data-theme="dark"] :is(.btn.secondary,.secondary,.soft,.batch-btn,.modal-cancel,.empty-btn-secondary),
body.dark-mode :is(.btn.secondary,.secondary,.soft,.batch-btn,.modal-cancel,.empty-btn-secondary) {
  background: #162033 !important;
  color: var(--alr-text) !important;
}

/* Dropdowns, menus and autocomplete layers */
html[data-theme="dark"] :is(.dropdown-menu,.context-menu,.autocomplete-items,.suggestions,.search-results,.all-customers-search-results,.all-search-results,.typecode-dropdown,.select2-dropdown),
body.dark-mode :is(.dropdown-menu,.context-menu,.autocomplete-items,.suggestions,.search-results,.all-customers-search-results,.all-search-results,.typecode-dropdown,.select2-dropdown) {
  background: #111827 !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.55) !important;
}
html[data-theme="dark"] :is(.dropdown-menu li,.context-menu-item,.autocomplete-item,.suggestion-item,.all-search-row,.select2-results__option),
body.dark-mode :is(.dropdown-menu li,.context-menu-item,.autocomplete-item,.suggestion-item,.all-search-row,.select2-results__option) {
  color: var(--alr-text) !important;
  border-color: rgba(148, 163, 184, .16) !important;
}
html[data-theme="dark"] :is(.dropdown-menu li:hover,.context-menu-item:hover,.autocomplete-item:hover,.suggestion-item:hover,.all-search-row:hover,.select2-results__option--highlighted),
body.dark-mode :is(.dropdown-menu li:hover,.context-menu-item:hover,.autocomplete-item:hover,.suggestion-item:hover,.all-search-row:hover,.select2-results__option--highlighted) {
  background: #1f2e46 !important;
  color: #ffffff !important;
}

/* Modals */
html[data-theme="dark"] :is(.modal,.overlay,.modal-overlay,.cp-overlay,.dn-modal),
body.dark-mode :is(.modal,.overlay,.modal-overlay,.cp-overlay,.dn-modal) {
  background-color: rgba(2, 6, 23, .78) !important;
}
html[data-theme="dark"] :is(.modal-body,.modal-footer,.cp-form-body,.cp-form-footer,.dn-modal-body,.dn-modal-footer),
body.dark-mode :is(.modal-body,.modal-footer,.cp-form-body,.cp-form-footer,.dn-modal-body,.dn-modal-footer) {
  background: var(--alr-surface) !important;
  color: var(--alr-text) !important;
  border-color: var(--alr-border) !important;
}

/* Specific bright warning/editing blocks */
html[data-theme="dark"] :is(.row-restored,.highlight,.highlighted,.search-highlight),
body.dark-mode :is(.row-restored,.highlight,.highlighted,.search-highlight) { background: rgba(234, 179, 8, .22) !important; color: #fde68a !important; }
html[data-theme="dark"] :is(.row-failed,.missing,.warn-box,.warning-box),
body.dark-mode :is(.row-failed,.missing,.warn-box,.warning-box) { background: rgba(245, 158, 11, .15) !important; color: #fcd34d !important; border-color: rgba(252, 211, 77, .24) !important; }

/* Links */
html[data-theme="dark"] a,
body.dark-mode a { color: #93c5fd; }
html[data-theme="dark"] a:hover,
body.dark-mode a:hover { color: #bfdbfe; }

/* Floating toggle polish */
html[data-theme="dark"] .alradi-floating-theme-toggle,
body.dark-mode .alradi-floating-theme-toggle {
  background: #111827 !important;
  color: #fde68a !important;
  border-color: rgba(250, 204, 21, .25) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,.45), 0 0 0 1px rgba(250, 204, 21, .08) inset !important;
}

/* Do not allow dark mode to ruin actual print output */
@media print {
  html[data-theme="dark"] body,
  body.dark-mode {
    background: #ffffff !important;
    color: #000000 !important;
  }
  html[data-theme="dark"] :is(table,thead,tbody,tfoot,tr,td,th,div,section,article),
  body.dark-mode :is(table,thead,tbody,tfoot,tr,td,th,div,section,article) {
    background: #ffffff !important;
    color: #000000 !important;
    box-shadow: none !important;
  }
}
