/* Shared WorkRate booking colours and interactions. */
.booking-link {
  margin-top: 16px;
  min-height: 46px;
  width: 100%;
  background: var(--gold);
  color: #080909;
  border: 1px solid var(--gold);
  transition: background .18s ease, border-color .18s ease, transform .18s ease;
}
.booking-link:hover { background: var(--gold2); border-color: var(--gold2); transform: translateY(-2px); }
.booking-link:active { transform: translateY(1px); }
.booking-link:focus-visible { outline: 2px solid var(--gold2); outline-offset: 4px; }
.booking .timetable {
  background: var(--panel);
  color: var(--white);
  border: 1px solid #514226;
  border-top: 3px solid var(--gold);
  border-radius: 5px;
  padding: 26px;
}
.timetable .coachly-tt.coachly-tt--dark {
  --cly-accent: #e9bd50;
  --cly-ink: #f7f5ef;
  --cly-muted: #bbb9b0;
  --cly-line: #403723;
  --cly-card: #121414;
  --cly-bg: #080909;
  font-family: inherit;
}
.timetable .coachly-tt__btn {
  background: var(--gold);
  border-color: var(--gold);
  color: #080909;
  min-height: 44px;
  font-weight: 850;
  transition: background .18s ease, border-color .18s ease;
}
.timetable .coachly-tt__btn:hover { background: var(--gold2); border-color: var(--gold2); filter: none; }
.timetable .coachly-tt__btn:focus-visible,
.timetable .coachly-tt__pass-link:focus-visible { outline: 2px solid var(--gold2); outline-offset: 4px; }
.timetable .coachly-tt__pass-link { min-height: 44px; }
.timetable .coachly-tt__group-title { color: var(--gold); }
@media (max-width: 700px) { .booking .timetable { padding: 16px; } }
@media (prefers-reduced-motion: reduce) {
  .booking-link, .timetable .coachly-tt__btn { transition: none; }
  .booking-link:hover, .booking-link:active { transform: none; }
  .timetable .coachly-tt__skel i { animation: none; }
}
