#session-timetables > h3 {
  position: absolute;
}
#session-timetables .timetable-container {
  margin-top: 100px;
}
#session-timetables .timetable {
  display: table;
  border-collapse: collapse;
  border-spacing: 0;
  width: fit-content;
  font-size: var(--table-font-size);
  border-radius: var(--generic-box-radius);
}
/* Cells */
#session-timetables .timetable th,
#session-timetables .timetable td {
  width: var(--tt-cell-width);
  min-width: var(--tt-cell-width);
  max-width: var(--tt-cell-width);
  padding: 0.5em;
  border: 1px solid var(--color-border);
  text-align: center;
  vertical-align: middle;
  word-wrap: break-word;
  height: var(--tt-cell-height);
  position: relative;
  user-select: none;
}
/* Time column */
#session-timetables .timetable th:first-child,
#session-timetables .timetable td:first-child {
  width: var(--tt-time-cell-width);
  min-width: var(--tt-time-cell-width);
  max-width: var(--tt-time-cell-width);
  border: 1px solid var(--color-border);
  font-weight: bold;
  background: var(--color-bg-header);
  position: sticky;
  left: 0;
  z-index: 10000;
}
#session-timetables .timetable th:first-child {
  z-index: 3;
}
#session-timetables .timetable thead tr th {
  vertical-align: middle;
}
