/* ================================
   Timetable page
   ================================ */

:root{
	 --timetable-card: var(--panel);
	 --timetable-muted: var(--mid);
   }
   
   .content{
		padding: 80px 0 80px 0;
	  }
	  
	.timetable {
		padding:0 0 80px 0;
	}

/* Accessibility helper */
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.page-intro{
  margin-bottom:0;
}

/* Header */
.timetable__header{
  margin: 0 0 18px 0;
}

.timetable__header{
  margin-top: 0;
  margin-bottom: 0;
}

.timetable__note{
  color: var(--mid);
  font-style:italic;
  padding:0 0 2px 0;
}

/* Grid */
.timetable-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}

/* mid: still 2 cols, but tighter gap */
@media (max-width: 900px){
  .timetable-grid{ gap: 18px; }
}

/* small: 1 col */
@media (max-width: 640px){
  .timetable-grid{ grid-template-columns: 1fr; }
}

/* Day cards */

.daycard h3{
  font-weight: 400;
  color: var(--mid);
  font-size: 16px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin: 0 0 8px 0;
}

.daycard{
  background: var(--timetable-card);
  padding: 26px;
}

.daycard--muted{
  background: var(--timetable-muted);
}

.daycard__day{
  margin: 0 0 14px 0;
  line-height: 1.1;
}

.daycard__group{
  margin: 0 0 16px 0;
}

.daycard__group:last-child{
  margin-bottom: 0;
}

.daycard__label{
  margin: 0 0 8px 0;
  font-size: 13px;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-weight: 700;
}

.daycard__slots{
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 6px;
}

.daycard__slots li{
  display: grid;
  grid-template-columns: 86px 1fr;
  gap: 12px;
  align-items: baseline;
}

.daycard__slots time{
  font-weight: 400;
  white-space: nowrap;
}

/* Swapboard card */
.swapboard__text{
  margin: 0 0 10px 0;
}

.swapboard__text:last-child{
  margin-bottom: 0;
}
