/* =========================================
   Excel Table Base
========================================= */

.excel-table .table-responsive {
  max-height: 650px;
  overflow-y: auto;
}

.excel-table table {
  width: 100%;
  font-size: 0.9rem;
  border-collapse: separate;
}

.excel-table th,
.excel-table td {
  vertical-align: middle;
}

.excel-table th {
  white-space: nowrap;
  font-weight: 600;
}

/* =========================================
   Sticky Header
========================================= */

.excel-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  background: #003F75;
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}

/* =========================================
   Column Styling
========================================= */

.excel-table .col-fg {
  width: 75px;
  font-weight: 600;
}

.excel-table .col-module {
  min-width: 100px;
}

/* =========================================
   Row Styling
========================================= */

.excel-table tbody tr {
  transition: background-color 0.15s ease-in-out;
}

.excel-table tbody tr:nth-child(even) > td {
  background-color: rgba(0, 0, 0, 0.02);
}

.excel-table tbody tr:hover > td {
  background-color: rgba(116, 184, 199, 0.2);
}

/* =========================================
   Borders & Separation
========================================= */

.excel-table td {
  border-top: 1px solid #dee2e6;
}

/* =========================================
   Dark Mode
========================================= */

body.dark-mode .excel-table table {
  color: #ddd;
}

body.dark-mode .excel-table thead th {
  background: #002a4d;
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}

body.dark-mode .excel-table tbody tr:nth-child(even) > td {
  background-color: rgba(255, 255, 255, 0.03);
}

body.dark-mode .excel-table tbody tr:hover > td {
  background-color: rgba(116, 184, 199, 0.25);
}

body.dark-mode .excel-table td {
  border-top: 1px solid #444;
}