/* =====================================================
   Palette definition (GLPI reads this section for list)
   ===================================================== */
:root[data-glpi-theme=crystal_dark] {
  /* palette preview colors */
  --glpi-palette-color-1: #0f172a;
  --glpi-palette-color-2: #1e293b;
  --glpi-palette-color-3: #334155;
  --glpi-palette-color-4: #7dd3fc;
}

/* =====================================================
   REAL UI VARIABLES (must override on html selector)
   ===================================================== */
html[data-glpi-theme=crystal_dark] {
  /* Base */
  --tblr-body-bg: #0f172a !important;
  --tblr-body-color: #cbd5f5 !important;
  --tblr-bg-surface: rgba(30,41,59,.65) !important;
  /* Primary accent (cool glass blue) */
  --tblr-primary-rgb: 125,211,252 !important;
  --tblr-primary-fg: #042f49 !important;
  /* Secondary */
  --tblr-secondary: #334155 !important;
  --tblr-secondary-fg: #e2e8f0 !important;
  /* Text + links */
  --tblr-light: #94a3b8 !important;
  --tblr-muted: #64748b !important;
  --tblr-link-color-rgb: 147,197,253 !important;
  /* Menu */
  --glpi-mainmenu-bg: rgba(15,23,42,.85) !important;
  --glpi-mainmenu-fg: #e2e8f0 !important;
  /* Tabs */
  --glpi-tabs-bg: rgba(30,41,59,.7) !important;
  --glpi-tabs-fg: #94a3b8 !important;
  --glpi-tabs-active-bg: rgba(51,65,85,.85) !important;
  --glpi-tabs-active-fg: #e2e8f0 !important;
  /* Timeline */
  --glpi-timeline-fup-bg: rgba(30,41,59,.7) !important;
  --glpi-timeline-fup-fg: #cbd5f5 !important;
  --glpi-timeline-fup-border: rgba(148,163,184,.2) !important;
  /* Helpdesk sections */
  --glpi-helpdesk-header: #1e293b !important;
  --glpi-helpdesk-tiles-section-bg: #172033 !important;
  --glpi-helpdesk-tabs-section-bg: #0f172a !important;
}

/* =====================================================
   Glass Effects Layer
   ===================================================== */
/* Background depth gradient */
html[data-glpi-theme=crystal_dark] body {
  background: radial-gradient(circle at 20% 0%, #1e293b 0%, #0f172a 50%, #020617 100%);
}

/* Glass panels */
html[data-glpi-theme=crystal_dark] .card,
html[data-glpi-theme=crystal_dark] .dropdown-menu,
html[data-glpi-theme=crystal_dark] .modal-content,
html[data-glpi-theme=crystal_dark] .main-sidebar {
  background: rgba(30, 41, 59, 0.6) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(148, 163, 184, 0.15) !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.45);
}

/* Tables */
html[data-glpi-theme=crystal_dark] .table {
  --tblr-table-bg: rgba(30,41,59,.55);
}

/* Inputs */
html[data-glpi-theme=crystal_dark] .form-control,
html[data-glpi-theme=crystal_dark] .form-select {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(148, 163, 184, 0.25);
  color: #e2e8f0;
}

/* Input focus glow */
html[data-glpi-theme=crystal_dark] .form-control:focus,
html[data-glpi-theme=crystal_dark] .form-select:focus {
  border-color: rgba(125, 211, 252, 0.8);
  box-shadow: 0 0 0 0.2rem rgba(125, 211, 252, 0.25);
}

/* Hover lift */
html[data-glpi-theme=crystal_dark] .card:hover {
  transform: translateY(-2px);
  transition: all 0.15s ease;
}

/* ===============================
   Improve readability of ticket lists
   =============================== */
html[data-glpi-theme=crystal_dark] .tblr-table tbody tr:nth-child(even) {
  background: rgba(30, 41, 59, 0.45) !important; /* slightly lighter than odd rows */
}

html[data-glpi-theme=crystal_dark] .tblr-table tbody tr:nth-child(odd) {
  background: rgba(30, 41, 59, 0.6) !important; /* slightly darker for contrast */
}

/* Optional: hover highlight */
html[data-glpi-theme=crystal_dark] .tblr-table tbody tr:hover {
  background: rgba(125, 211, 252, 0.15) !important; /* subtle cyan glow */
}

/* ===============================
   Crystal Dark - Ticket List Fix
   =============================== */
html[data-glpi-theme=crystal_dark] .list tbody tr,
html[data-glpi-theme=crystal_dark] .list tbody tr.even,
html[data-glpi-theme=crystal_dark] .list tbody tr.odd,
html[data-glpi-theme=crystal_dark] .list tbody tr[data-glpi-row] {
  /* base glass zebra */
  background-color: rgba(30, 41, 59, 0.55) !important;
  color: #e2e8f0 !important;
}

/* alternating rows slightly lighter */
html[data-glpi-theme=crystal_dark] .list tbody tr:nth-child(even),
html[data-glpi-theme=crystal_dark] .list tbody tr.even {
  background-color: rgba(30, 41, 59, 0.45) !important;
}

/* hover highlight */
html[data-glpi-theme=crystal_dark] .list tbody tr:hover {
  background-color: rgba(125, 211, 252, 0.15) !important;
}

/* ===============================
   Crystal Dark - Ticket List Readability Fix
   =============================== */
/* Force readable zebra rows in tickets, tasks, problems, etc. */
html[data-glpi-theme=crystal_dark] table.list tbody tr {
  background-color: rgba(30, 41, 59, 0.55) !important; /* odd rows */
  color: #e2e8f0 !important;
}

html[data-glpi-theme=crystal_dark] table.list tbody tr:nth-child(even) {
  background-color: rgba(30, 41, 59, 0.45) !important; /* even rows slightly lighter */
}

/* Hover highlight */
html[data-glpi-theme=crystal_dark] table.list tbody tr:hover {
  background-color: rgba(125, 211, 252, 0.15) !important;
  color: #ffffff !important;
}

/* =====================================================
   Crystal Dark - True Ticket List Glass + Zebra
   ===================================================== */
html[data-glpi-theme=crystal_dark] table.list tbody tr {
  /* semi-transparent base to allow glass effect */
  background-color: rgba(30, 41, 59, 0.6) !important;
  color: #e2e8f0 !important;
}

/* alternating rows */
html[data-glpi-theme=crystal_dark] table.list tbody tr:nth-child(even) td {
  background-color: rgba(30, 41, 59, 0.45) !important;
}

/* odd rows */
html[data-glpi-theme=crystal_dark] table.list tbody tr:nth-child(odd) td {
  background-color: rgba(30, 41, 59, 0.55) !important;
}

/* Hover highlight for scanning */
html[data-glpi-theme=crystal_dark] table.list tbody tr:hover td {
  background-color: rgba(125, 211, 252, 0.15) !important;
  color: #ffffff !important;
}

/* Optional: make borders subtle but visible on glass */
html[data-glpi-theme=crystal_dark] table.list tbody tr td {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}