table {
  border-collapse: collapse;
  width: 100%;
  font-size: 14px;
}

th, td {
  border: 1px solid #ddd;
  padding: 2px 4px;
  text-align: center;
  white-space: nowrap;
}

th {
  background: #f3f4f6;
  color: #4b6379;
  cursor: pointer;
}

tr:nth-child(even) {
  background: #fafafa;
}

tr:hover {
  background: #f0f8ff;
}

.admin-table thead th {
  position: sticky;
  top: 0;
  background: #f0f0f0;
  z-index: 10;
}

.admin-table tbody tr:hover td {
  background: #f8fbff;
}

.highlight-row {
  background: #cce5ff !important;
}

.highlight-appt-filled td {
  background: #fff8b3 !important;
}

/* status colors */

.status-ongoing-healthy {
  background: #ffffff !important;
}

.status-ongoing-high-risk {
  background: #ffcccc !important;
}

.status-completed-done-rebooking {
  background: #d4edda !important;
}

.status-completed-no-start {
  background: #fff3cd !important;
}

.status-completed-in-progress {
  background: #f8d7da !important;
}

.sticky-left {
  position: sticky;
  left: 0;
  background: #fff;
  z-index: 2;
}

.sticky-col {
  position: sticky;
  left: 0;
  background: white; /* Matches table background */
  z-index: 2;        /* Keep above other cells */
}

.table-container {
  overflow-x: auto;
}