/* ===========================================================================
   shared/css/schedule.css — the past-schedule tables and the disruption-context
   block (shared/php/schedule_view.php, context_view.php), on both sites. Palette-
   neutral like board.css: every colour is a var(--fc-*) of the site's theme.
   =========================================================================== */

.fc-sched__tabs { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; padding: 0; list-style: none; }
.fc-sched__tab {
  display: inline-block; padding: 8px 16px; border: 1px solid var(--fc-border); border-radius: 8px;
  color: var(--fc-text); text-decoration: none; font-weight: 600; font-size: .95rem;
}
/* The repeats are on purpose: components.css colours every link of a .content-box at (0,4,1), which
   left this label blue on blue on quiescence.eu. */
.fc-sched__tab[aria-current="page"],
.content-box a.fc-sched__tab.fc-sched__tab.fc-sched__tab[aria-current="page"] {
  background: var(--fc-primary-fill); color: var(--fc-on-primary, #fff); border-color: transparent;
}
.fc-sched__clock, .fc-sched__notice { color: var(--fc-muted); font-size: .9rem; margin: 0 0 12px; }
.fc-sched__select {
  flex: 2 1 200px; min-width: 0; padding: 10px 12px; font-size: .98rem; border-radius: 8px;
  background: var(--fc-bg); color: var(--fc-text); border: 1px solid var(--fc-border);
}
.fc-sched__list { margin: 0; padding: 0; list-style: none; display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 6px 16px; }

.fc-sched__wrap { overflow-x: auto; margin: 0 0 14px; }
.fc-sched { width: 100%; border-collapse: collapse; font-size: .92rem; }
.fc-sched th, .fc-sched td { padding: 7px 10px; text-align: left; border-bottom: 1px solid var(--fc-border); white-space: nowrap; }
.fc-sched thead th { color: var(--fc-muted); font-weight: 600; font-size: .82rem; white-space: normal; vertical-align: bottom; }
.fc-sched td.fc-sched__place { white-space: normal; min-width: 9em; }
.fc-sched tbody th { font-weight: 600; }
.fc-sched__dd { color: var(--fc-muted); font-weight: 400; }
.fc-sched__row--cancelled td { color: var(--fc-muted); }
.fc-sched__more { margin: 0 0 14px; }
.fc-sched__more > summary { cursor: pointer; font-weight: 600; padding: 6px 0; }

.fc-ctx__note { color: var(--fc-muted); font-size: .88rem; }
.fc-ctx__h { margin: 12px 0 4px; font-size: .95rem; font-weight: 600; }
.fc-ctx__list { margin: 0 0 8px; padding: 0; list-style: none; }
.fc-ctx__item { padding: 6px 0; border-bottom: 1px solid var(--fc-border); font-size: .94rem; }
.fc-ctx__item:last-child { border-bottom: 0; }
.fc-ctx__item--off { color: var(--fc-muted); }
.fc-ctx__said { display: block; margin-top: 2px; }
.fc-ctx__by { display: block; color: var(--fc-muted); font-size: .86rem; }
.fc-ctx__sev { display: inline-block; padding: 1px 7px; border-radius: 6px; font-size: .78rem; font-weight: 600; }
.fc-ctx__sev--extreme  { background: var(--fc-cancelled-bg); color: var(--fc-cancelled); }
.fc-ctx__sev--severe   { background: var(--fc-delayed-bg); color: var(--fc-delayed); }
.fc-ctx__sev--moderate { background: var(--fc-late-bg); color: var(--fc-late); }
.fc-ctx__sev--minor, .fc-ctx__sev--unknown { background: var(--fc-ontime-bg); color: var(--fc-ontime); }
.fc-ctx__wx > summary { cursor: pointer; font-weight: 600; padding: 4px 0; }
.fc-sched--wx td { white-space: nowrap; }
.fc-sched--wx td.fc-ctx__raw { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .8rem; color: var(--fc-muted); white-space: normal; min-width: 20em; overflow-wrap: anywhere; }
.fc-ctx__cat { font-weight: 600; }
.fc-ctx__cat--ifr, .fc-ctx__cat--lifr { color: var(--fc-delayed); }
.fc-ctx__cat--mvfr { color: var(--fc-late); }

@media (max-width: 700px) {
  .fc-sched__select { flex: 1 1 100%; width: 100%; }
  .fc-sched th, .fc-sched td { padding: 6px 8px; font-size: .86rem; }
}
