  
#list_table_title {
    flex-shrink: 0;
    width: 100%;
    padding-left: 5px;
    padding-right: 3px;
    background-color: var(--primary-color);
    color: white !important;
}

#list_table_title h5 {
    background-color: var(--primary-color);
    color: white !important;
    font-weight: bold;
}

#list_table {
    flex-grow: 1;
    width: 100%;
    border-collapse: collapse;
    overflow-y: auto;
    position: relative; /* Needed for fixed header positioning */
}
table {
    width: 100%;
}
  
th, td {
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
}

thead th {
    position: sticky; /* Fixed header */
    top: -1px; /* Adjust top value slightly */
    background-color: #f2f2f2; /* Light gray background for header */
    z-index: 1; /* Ensure header is on top */
    border: 1px solid #ddd;
    padding: 8px;
    text-align: left;
}
/*
tr:nth-child(even) {
background-color: #f9f9f9;
}
*/
th {
    cursor: pointer;
}
/* No per-header icon decoration: the JS (signup_table.js updateSortArrows)
   appends a ▲/▼ triangle to the active header's label to show the sort
   direction. The old always-on th::after ↕ (with unused .ascending /
   .descending variants) showed nothing useful and is gone. */

th:hover {
    color: var(--primary-color); /* Change text color on hover */
    text-decoration: underline;
}

/*
.linked-cell {
    color: #c44100;
    text-decoration: underline;
    cursor: pointer;
}
*/