/* =============================================================================
   Zyntho Dark Theme for Perfex CRM
   Modern · Dark · Violet accent
   ============================================================================= */

/* ── Variables ── */
:root {
  --z-bg:          #0c0c10;
  --z-bg-1:        #111118;
  --z-bg-2:        #16161f;
  --z-bg-3:        #1c1c28;
  --z-border:      rgba(255,255,255,0.07);
  --z-border-2:    rgba(255,255,255,0.12);
  --z-violet:      #7c3aed;
  --z-violet-2:    #6d28d9;
  --z-violet-3:    #5b21b6;
  --z-violet-glow: rgba(124,58,237,0.18);
  --z-violet-soft: rgba(124,58,237,0.12);
  --z-cyan:        #22d3ee;
  --z-green:       #22c55e;
  --z-red:         #ef4444;
  --z-yellow:      #f59e0b;
  --z-text:        #e2e8f0;
  --z-text-2:      #94a3b8;
  --z-text-3:      #64748b;
  --z-radius:      10px;
  --z-radius-lg:   14px;
  --z-shadow:      0 1px 3px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.04);
  --z-shadow-lg:   0 8px 32px rgba(0,0,0,0.4), 0 0 0 1px rgba(255,255,255,0.04);
}

/* ── Base ── */
body {
  background: var(--z-bg) !important;
  color: var(--z-text) !important;
  font-family: 'Inter', system-ui, -apple-system, sans-serif !important;
  -webkit-font-smoothing: antialiased;
}

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.12); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }

/* ── Sidebar ── */
.sidebar,
#menu.sidebar {
  background: var(--z-bg-1) !important;
  border-right: 1px solid var(--z-border) !important;
  box-shadow: none !important;
}

/* Sidebar nav items */
#side-menu > li > a,
#side-menu .nav-second-level li a {
  color: var(--z-text-2) !important;
  border-radius: 8px !important;
  margin: 1px 8px !important;
  padding: 9px 12px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.15s ease !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

#side-menu > li > a:hover,
#side-menu .nav-second-level li a:hover {
  background: rgba(255,255,255,0.06) !important;
  color: var(--z-text) !important;
}

#side-menu > li.active > a,
#side-menu > li.active > a:hover {
  background: var(--z-violet-soft) !important;
  color: #c4b5fd !important;
  border-left: 2px solid var(--z-violet) !important;
}

#side-menu > li > a .menu-icon,
#side-menu .nav-second-level li a .menu-icon {
  font-size: 14px !important;
  width: 16px !important;
  text-align: center !important;
  flex-shrink: 0 !important;
  opacity: 0.7 !important;
}

#side-menu > li.active > a .menu-icon { opacity: 1 !important; color: var(--z-violet) !important; }

/* Second level menu */
#side-menu .nav-second-level {
  background: transparent !important;
  padding: 2px 0 6px 0 !important;
}

#side-menu .nav-second-level li a {
  margin-left: 22px !important;
  padding: 7px 12px !important;
  font-size: 12.5px !important;
}

/* Sidebar arrow */
#side-menu .fa.arrow { color: var(--z-text-3) !important; }

/* Sidebar badge */
#side-menu .badge {
  background: var(--z-violet-soft) !important;
  color: #c4b5fd !important;
  border: 1px solid rgba(124,58,237,0.3) !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  border-radius: 99px !important;
  padding: 2px 7px !important;
}

/* Sidebar user profile card */
.sidebar-user-profile > a {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius) !important;
  color: var(--z-text) !important;
  box-shadow: none !important;
  transition: all 0.15s ease !important;
}
.sidebar-user-profile > a:hover {
  background: var(--z-bg-3) !important;
  border-color: rgba(255,255,255,0.15) !important;
}

/* ── Header / Navbar ── */
#header,
.navbar.navbar-default {
  background: var(--z-bg-1) !important;
  border-bottom: 1px solid var(--z-border) !important;
  box-shadow: none !important;
}

.navbar-default .navbar-nav > li > a {
  color: var(--z-text-2) !important;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover {
  color: var(--z-text) !important;
  background: rgba(255,255,255,0.06) !important;
  border-radius: 8px !important;
}

/* Header search */
#top_search #search_input {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  color: var(--z-text) !important;
  border-radius: 8px !important;
}
#top_search #search_input::placeholder { color: var(--z-text-3) !important; }
#top_search #search_input:focus {
  border-color: rgba(124,58,237,0.5) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px var(--z-violet-glow) !important;
}

/* ── Main content area ── */
#content-container,
#main-content,
.content-wrapper {
  background: var(--z-bg) !important;
}

/* ── Page title bar ── */
.page-title-bar,
.breadcrumb-holder,
.tw-bg-neutral-100,
.content-heading {
  background: var(--z-bg) !important;
  border-bottom: 1px solid var(--z-border) !important;
  color: var(--z-text) !important;
}

h4.page-title, h3.page-title, .page-title {
  color: var(--z-text) !important;
  font-weight: 700 !important;
}

/* ── Panels / Cards ── */
.panel,
.panel-default,
.panel-body,
.card {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow) !important;
  color: var(--z-text) !important;
}

.panel-heading,
.panel-default > .panel-heading {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) var(--z-radius-lg) 0 0 !important;
  color: var(--z-text) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  padding: 14px 18px !important;
}

.panel-footer {
  background: var(--z-bg-3) !important;
  border-top: 1px solid var(--z-border) !important;
  border-radius: 0 0 var(--z-radius-lg) var(--z-radius-lg) !important;
}

/* ── Tables ── */
.table {
  color: var(--z-text) !important;
  border-color: var(--z-border) !important;
}

.table > thead > tr > th {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border-2) !important;
  color: var(--z-text-3) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 11px 14px !important;
}

.table > tbody > tr > td {
  border-bottom: 1px solid var(--z-border) !important;
  color: var(--z-text) !important;
  padding: 12px 14px !important;
  vertical-align: middle !important;
  font-size: 13px !important;
}

.table-hover > tbody > tr:hover > td,
.table-hover > tbody > tr:hover > th {
  background: rgba(255,255,255,0.04) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > td {
  background: rgba(255,255,255,0.02) !important;
}

/* DataTables */
.dataTables_wrapper {
  color: var(--z-text) !important;
}

.dataTables_filter input,
.dataTables_length select {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: 8px !important;
  color: var(--z-text) !important;
  padding: 6px 12px !important;
}

.dataTables_filter input:focus,
.dataTables_length select:focus {
  border-color: rgba(124,58,237,0.5) !important;
  box-shadow: 0 0 0 3px var(--z-violet-glow) !important;
  outline: none !important;
}

.dataTables_info,
.dataTables_paginate .paginate_button {
  color: var(--z-text-2) !important;
}

.dataTables_paginate .paginate_button:hover {
  background: rgba(255,255,255,0.06) !important;
  border-color: var(--z-border-2) !important;
  color: var(--z-text) !important;
  border-radius: 6px !important;
}

.dataTables_paginate .paginate_button.current,
.dataTables_paginate .paginate_button.current:hover {
  background: var(--z-violet) !important;
  border-color: var(--z-violet) !important;
  color: #fff !important;
  border-radius: 6px !important;
}

/* ── Forms ── */
.form-control,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="search"],
input[type="tel"],
textarea,
select {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius) !important;
  color: var(--z-text) !important;
  font-size: 13px !important;
  transition: border-color 0.15s, box-shadow 0.15s !important;
  box-shadow: none !important;
}

.form-control:focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
  border-color: rgba(124,58,237,0.6) !important;
  box-shadow: 0 0 0 3px var(--z-violet-glow) !important;
  background: var(--z-bg-3) !important;
  outline: none !important;
}

.form-control::placeholder,
input::placeholder,
textarea::placeholder { color: var(--z-text-3) !important; }

label { color: var(--z-text-2) !important; font-size: 12.5px !important; font-weight: 600 !important; margin-bottom: 6px !important; }

/* ── Buttons ── */
.btn {
  border-radius: var(--z-radius) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  padding: 8px 16px !important;
  transition: all 0.15s ease !important;
  border: none !important;
  box-shadow: none !important;
}

.btn-primary,
.btn-info {
  background: var(--z-violet) !important;
  color: #fff !important;
  border: 1px solid var(--z-violet) !important;
}
.btn-primary:hover, .btn-info:hover {
  background: var(--z-violet-2) !important;
  border-color: var(--z-violet-2) !important;
  box-shadow: 0 4px 16px var(--z-violet-glow) !important;
  transform: translateY(-1px) !important;
}

.btn-success {
  background: #16a34a !important;
  color: #fff !important;
  border: 1px solid #16a34a !important;
}
.btn-success:hover {
  background: #15803d !important;
  border-color: #15803d !important;
  transform: translateY(-1px) !important;
}

.btn-danger {
  background: #dc2626 !important;
  color: #fff !important;
  border: 1px solid #dc2626 !important;
}
.btn-danger:hover { background: #b91c1c !important; transform: translateY(-1px) !important; }

.btn-warning {
  background: #d97706 !important;
  color: #fff !important;
  border: 1px solid #d97706 !important;
}

.btn-default {
  background: var(--z-bg-3) !important;
  color: var(--z-text-2) !important;
  border: 1px solid var(--z-border-2) !important;
}
.btn-default:hover {
  background: rgba(255,255,255,0.08) !important;
  color: var(--z-text) !important;
  border-color: rgba(255,255,255,0.18) !important;
}

/* ── Dropdown menus ── */
.dropdown-menu {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow-lg) !important;
  padding: 6px !important;
  min-width: 180px !important;
}

.dropdown-menu > li > a {
  color: var(--z-text-2) !important;
  border-radius: 7px !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
  transition: all 0.12s !important;
}

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  background: rgba(255,255,255,0.07) !important;
  color: var(--z-text) !important;
}

.dropdown-menu > li.active > a {
  background: var(--z-violet-soft) !important;
  color: #c4b5fd !important;
}

.dropdown-menu .divider {
  background: var(--z-border) !important;
  margin: 4px 8px !important;
}

.dropdown-header {
  color: var(--z-text-3) !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 8px 12px 4px !important;
}

/* ── Modals ── */
.modal-content {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow-lg) !important;
  color: var(--z-text) !important;
}

.modal-header {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) var(--z-radius-lg) 0 0 !important;
  padding: 18px 22px !important;
}

.modal-header .modal-title {
  color: var(--z-text) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

.modal-footer {
  background: var(--z-bg-3) !important;
  border-top: 1px solid var(--z-border) !important;
  border-radius: 0 0 var(--z-radius-lg) var(--z-radius-lg) !important;
  padding: 14px 22px !important;
}

.modal-body { padding: 22px !important; }

.modal-backdrop { background: #000 !important; }
.modal-backdrop.in { opacity: 0.7 !important; }

.close {
  color: var(--z-text-2) !important;
  opacity: 0.7 !important;
  text-shadow: none !important;
  font-size: 20px !important;
}
.close:hover { color: var(--z-text) !important; opacity: 1 !important; }

/* ── Tabs ── */
.nav-tabs {
  border-bottom: 1px solid var(--z-border) !important;
  gap: 2px !important;
}

.nav-tabs > li > a {
  color: var(--z-text-2) !important;
  border: 1px solid transparent !important;
  border-radius: 8px 8px 0 0 !important;
  padding: 10px 16px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.15s !important;
}

.nav-tabs > li > a:hover {
  background: rgba(255,255,255,0.05) !important;
  color: var(--z-text) !important;
  border-color: transparent !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:focus,
.nav-tabs > li.active > a:hover {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-bottom-color: var(--z-bg-2) !important;
  color: var(--z-text) !important;
  font-weight: 600 !important;
}

.tab-content {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-top: none !important;
  border-radius: 0 0 var(--z-radius-lg) var(--z-radius-lg) !important;
  padding: 20px !important;
}

/* ── Badges & Labels ── */
.badge, .label {
  border-radius: 99px !important;
  font-size: 10.5px !important;
  font-weight: 700 !important;
  padding: 3px 9px !important;
  letter-spacing: 0.02em !important;
}

.label-default, .badge-default {
  background: rgba(255,255,255,0.1) !important;
  color: var(--z-text-2) !important;
}

.label-primary, .badge-primary,
.label-info, .badge-info {
  background: var(--z-violet-soft) !important;
  color: #c4b5fd !important;
  border: 1px solid rgba(124,58,237,0.3) !important;
}

.label-success, .badge-success {
  background: rgba(34,197,94,0.12) !important;
  color: #86efac !important;
  border: 1px solid rgba(34,197,94,0.3) !important;
}

.label-warning, .badge-warning {
  background: rgba(245,158,11,0.12) !important;
  color: #fcd34d !important;
  border: 1px solid rgba(245,158,11,0.3) !important;
}

.label-danger, .badge-danger {
  background: rgba(239,68,68,0.12) !important;
  color: #fca5a5 !important;
  border: 1px solid rgba(239,68,68,0.3) !important;
}

/* Lead status colors */
.bg-info    { background: var(--z-violet-soft) !important; color: #c4b5fd !important; }
.bg-success { background: rgba(34,197,94,0.15) !important; color: #86efac !important; }
.bg-warning { background: rgba(245,158,11,0.15) !important; color: #fcd34d !important; }
.bg-danger  { background: rgba(239,68,68,0.15) !important; color: #fca5a5 !important; }

/* ── Breadcrumb ── */
.breadcrumb {
  background: transparent !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}
.breadcrumb > li + li::before { color: var(--z-text-3) !important; }
.breadcrumb > .active { color: var(--z-text-2) !important; }
.breadcrumb > li > a { color: var(--z-violet-light, #a78bfa) !important; }

/* ── Alerts ── */
.alert {
  border-radius: var(--z-radius) !important;
  border: 1px solid !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
}

.alert-success {
  background: rgba(34,197,94,0.1) !important;
  border-color: rgba(34,197,94,0.25) !important;
  color: #86efac !important;
}
.alert-info, .alert-primary {
  background: var(--z-violet-soft) !important;
  border-color: rgba(124,58,237,0.3) !important;
  color: #c4b5fd !important;
}
.alert-warning {
  background: rgba(245,158,11,0.1) !important;
  border-color: rgba(245,158,11,0.25) !important;
  color: #fcd34d !important;
}
.alert-danger {
  background: rgba(239,68,68,0.1) !important;
  border-color: rgba(239,68,68,0.25) !important;
  color: #fca5a5 !important;
}

/* ── Select2 ── */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius) !important;
  color: var(--z-text) !important;
  min-height: 36px !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--z-text) !important;
  line-height: 34px !important;
  padding-left: 12px !important;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple {
  border-color: rgba(124,58,237,0.6) !important;
  box-shadow: 0 0 0 3px var(--z-violet-glow) !important;
}

.select2-dropdown {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow-lg) !important;
}

.select2-container--default .select2-results__option {
  color: var(--z-text-2) !important;
  padding: 8px 12px !important;
  font-size: 13px !important;
}

.select2-container--default .select2-results__option--highlighted {
  background: rgba(255,255,255,0.07) !important;
  color: var(--z-text) !important;
}

.select2-container--default .select2-results__option--selected {
  background: var(--z-violet-soft) !important;
  color: #c4b5fd !important;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  background: var(--z-bg-3) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: 7px !important;
  color: var(--z-text) !important;
  padding: 7px 10px !important;
}

.select2-selection__arrow b {
  border-color: var(--z-text-3) transparent transparent !important;
}

/* ── Kanban boards ── */
.tasks-phases .kan-ban-col {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
}

.tasks-phases .kan-ban-col .panel-heading {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) var(--z-radius-lg) 0 0 !important;
}

/* ── Stats / Summary boxes ── */
.summary-box, .stats-box {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow) !important;
}

/* Perfex panel_s variant */
.panel_s {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow) !important;
  color: var(--z-text) !important;
}

/* Dashboard widgets */
.widget {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow) !important;
  color: var(--z-text) !important;
}
.widget-dragger {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) var(--z-radius-lg) 0 0 !important;
  cursor: grab !important;
  padding: 10px 14px !important;
}

/* Stats number blocks */
.text-stats-wrapper, .top_stats_wrapper { color: var(--z-text) !important; }
._total { color: var(--z-text) !important; font-weight: 700 !important; }

/* Non-prefixed Tailwind neutral colors (Perfex also ships unprefixed) */
.text-neutral-800, .text-neutral-900 { color: var(--z-text)   !important; }
.text-neutral-600, .text-neutral-700 { color: var(--z-text-2) !important; }
.text-neutral-400, .text-neutral-500 { color: var(--z-text-3) !important; }

/* ── Progress bars ── */
.progress {
  background: var(--z-bg-3) !important;
  border-radius: 99px !important;
  height: 6px !important;
  box-shadow: none !important;
}

.progress-bar {
  background: var(--z-violet) !important;
  border-radius: 99px !important;
}
.progress-bar-success { background: var(--z-green) !important; }
.progress-bar-warning { background: var(--z-yellow) !important; }
.progress-bar-danger  { background: var(--z-red) !important; }

/* ── Tooltips ── */
.tooltip-inner {
  background: var(--z-bg-3) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: 7px !important;
  color: var(--z-text) !important;
  font-size: 12px !important;
  padding: 6px 10px !important;
  box-shadow: var(--z-shadow-lg) !important;
}

/* ── Popover ── */
.popover {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow-lg) !important;
  color: var(--z-text) !important;
}
.popover-title {
  background: var(--z-bg-3) !important;
  border-bottom: 1px solid var(--z-border) !important;
  color: var(--z-text) !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  border-radius: var(--z-radius-lg) var(--z-radius-lg) 0 0 !important;
}
.popover-content { color: var(--z-text-2) !important; font-size: 13px !important; }

/* ── Input groups ── */
.input-group-addon {
  background: var(--z-bg-3) !important;
  border: 1px solid var(--z-border-2) !important;
  color: var(--z-text-3) !important;
  font-size: 13px !important;
}

/* ── Checkboxes & radios ── */
.checkbox label, .radio label { color: var(--z-text-2) !important; font-size: 13px !important; }

/* ── Text & link colors ── */
/* Scope link color to content areas only — sidebar/nav/buttons override via their own selectors */
#content-container a:not(.btn):not([class*="nav"]):not([class*="dropdown"]),
.panel-body a:not(.btn),
.tab-content a:not(.btn) {
  color: #a78bfa !important;
  transition: color 0.15s !important;
}
#content-container a:not(.btn):hover { color: #c4b5fd !important; }

/* Muted link (forgot password, etc.) */
.text-muted, a.text-muted { color: var(--z-text-3) !important; }
a.text-muted:hover { color: var(--z-text-2) !important; }

h1, h2, h3, h4, h5, h6 { color: var(--z-text) !important; }
p, span, td, th, li { color: inherit; }
small, .text-muted, .text-muted a { color: var(--z-text-3) !important; }
.text-success { color: #86efac !important; }
.text-danger  { color: #fca5a5 !important; }
.text-warning { color: #fcd34d !important; }
.text-info    { color: #c4b5fd !important; }

hr { border-color: var(--z-border) !important; }

/* ── Well ── */
.well {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius) !important;
  box-shadow: none !important;
  color: var(--z-text-2) !important;
}

/* ── List groups ── */
.list-group-item {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  color: var(--z-text-2) !important;
  transition: background 0.15s !important;
}
.list-group-item:hover { background: var(--z-bg-3) !important; }
.list-group-item.active {
  background: var(--z-violet-soft) !important;
  border-color: rgba(124,58,237,0.3) !important;
  color: #c4b5fd !important;
}

/* ── Misc ── */
.no-results, .empty-state { color: var(--z-text-3) !important; }
.fa, .fas, .far, .fab { color: inherit; }

/* dashboard stats tiles */
.tile, .info-tile {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border) !important;
  border-radius: var(--z-radius-lg) !important;
}

/* ── Tailwind overrides (tw- prefix) ── */
.tw-bg-white { background: var(--z-bg-2) !important; }
.tw-bg-neutral-50 { background: var(--z-bg-2) !important; }
.tw-bg-neutral-100 { background: var(--z-bg-3) !important; }
.tw-bg-neutral-200 { background: rgba(255,255,255,0.08) !important; }
.tw-border-neutral-200 { border-color: var(--z-border) !important; }
.tw-border-neutral-300 { border-color: var(--z-border-2) !important; }
.tw-text-neutral-800, .tw-text-neutral-900 { color: var(--z-text) !important; }
.tw-text-neutral-600, .tw-text-neutral-700 { color: var(--z-text-2) !important; }
.tw-text-neutral-400, .tw-text-neutral-500 { color: var(--z-text-3) !important; }
.tw-shadow-sm, .tw-shadow { box-shadow: var(--z-shadow) !important; }
.hover\:tw-bg-neutral-900\/5:hover { background: rgba(255,255,255,0.05) !important; }
.hover\:tw-bg-neutral-600\/10:hover { background: rgba(255,255,255,0.07) !important; }
.hover\:tw-text-neutral-800:hover { color: var(--z-text) !important; }
.tw-text-neutral-800.tw-font-bold,
.tw-text-neutral-800.tw-font-semibold { color: var(--z-text) !important; }

/* Primary color overrides */
.tw-bg-primary-600 { background: var(--z-violet) !important; }
.tw-bg-primary-700, .hover\:tw-bg-primary-700:hover { background: var(--z-violet-2) !important; }
.tw-text-primary-600 { color: #c4b5fd !important; }
.tw-border-primary-600 { border-color: var(--z-violet) !important; }

/* ── Search results ── */
#search_results {
  background: var(--z-bg-2) !important;
  border: 1px solid var(--z-border-2) !important;
  border-radius: var(--z-radius-lg) !important;
  box-shadow: var(--z-shadow-lg) !important;
}

/* ── Notifications ── */
.notifications-list .notification-item,
.header-notification-item {
  border-bottom: 1px solid var(--z-border) !important;
  color: var(--z-text-2) !important;
  transition: background 0.15s !important;
}
.notifications-list .notification-item:hover { background: rgba(255,255,255,0.04) !important; }

/* ── Login page ── */
body.login_admin {
  background: var(--z-bg) !important;
  background-image: radial-gradient(ellipse 80% 50% at 50% -10%, rgba(124,58,237,0.12) 0%, transparent 70%) !important;
  min-height: 100vh !important;
}

/* Login form card */
body.login_admin .tw-bg-white {
  background: var(--z-bg-2) !important;
  border-color: var(--z-border-2) !important;
}

/* Demo credentials box */
.tw-bg-violet-50  { background: rgba(124,58,237,0.1)  !important; }
.tw-bg-violet-100 { background: rgba(124,58,237,0.15) !important; }
.tw-border-violet-200 { border-color: rgba(124,58,237,0.25) !important; }
.tw-text-violet-500, .tw-text-violet-600 { color: #a78bfa !important; }

.tw-bg-cyan-50  { background: rgba(34,211,238,0.08)  !important; }
.tw-bg-cyan-100 { background: rgba(34,211,238,0.14) !important; }
.tw-text-cyan-600 { color: #22d3ee !important; }

.tw-bg-green-50  { background: rgba(34,197,94,0.08)  !important; }
.tw-bg-green-100 { background: rgba(34,197,94,0.14) !important; }
.tw-text-green-600 { color: #4ade80 !important; }

/* Account rows inside credentials block */
.tw-space-y-3 > div.tw-rounded-lg.tw-bg-white {
  background: var(--z-bg-3) !important;
  border-color: var(--z-border) !important;
}

/* tw-font-mono in dark context */
.tw-font-mono { color: var(--z-text-2) !important; }

/* ── Smooth transitions everywhere ── */
* { transition-property: background-color, border-color, color, box-shadow; transition-duration: 0.12s; }
button, a, .btn { transition: all 0.15s ease !important; }
