.schedule-title-editor {
  margin-block: 18px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--card);
}
.schedule-title-editor h2 { margin-top: 0; }
.schedule-title-editor .form-input { width: 100%; min-width: 0; min-height: 48px; font-size: 16px; }
.schedule-title-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.schedule-title-actions button { min-height: 48px; flex: 1 1 140px; white-space: normal; }
#scheduleTitleStatus { overflow-wrap: anywhere; }
.schedule-masthead > div { min-width: 0; }
.schedule-masthead { grid-template-columns: minmax(0,1fr); }
.schedule-masthead .schedule-script, .schedule-masthead strong { padding-right: 80px; }
.schedule-masthead .schedule-eight { position: absolute; top: 20px; right: 18px; }
.schedule-masthead h1 { max-width: 100%; overflow-wrap: anywhere; }
.schedule-fixture-list { display: grid; gap: 14px; }
.schedule-half { min-width: 0; margin-bottom: 22px; }
.schedule-half h3 { margin: 0 0 12px; font-size: 16px; }
.league-schedule-stack { min-width: 0; margin-inline: 0; }
.league-schedule-scroll { max-width: 100%; overflow-x: auto; padding-inline: 0; }
.schedule-fixture-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(0,166,214,.45);
  border-radius: 16px;
  background: #0a1c17;
  color: #edf8f2;
}
.schedule-fixture-date { margin: 0 0 10px; color: #b8dace; font-size: 13px; overflow-wrap: anywhere; }
.schedule-fixture-card > button {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  align-items: center;
  gap: 8px;
  width: 100%;
  min-height: 56px;
  padding: 8px;
  border: 1px solid #287a88;
  border-radius: 10px;
  background: #0b3438;
  color: #ecfcff;
  text-align: center;
  font-size: 16px;
  overflow-wrap: anywhere;
}
.schedule-fixture-card button small { display: block; margin-top: 4px; font-size: 11px; color: #b7dbdc; }
.schedule-fixture-card dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 14px 0 0; }
.schedule-fixture-card dt { color: #b1c7bf; font-size: 11px; }
.schedule-fixture-card dd { margin: 4px 0 0; font-size: 14px; overflow-wrap: anywhere; }
.schedule-fixture-venue { grid-column: 1 / -1; }
/* Keep bye cells readable over the schedule's striped rows and hover colors. */
.league-schedule-table tbody tr.schedule-bye-row:nth-child(n) th,
.league-schedule-table tbody tr.schedule-bye-row:nth-child(n) td {
  background: #fff1c9;
  color: #342810;
  white-space: normal;
  overflow-wrap: anywhere;
  font-weight: 700;
  padding-block: 12px;
}
.schedule-bye-list { margin-top: 16px; padding: 14px; border: 1px solid var(--line); border-radius: 14px; }
.schedule-bye-list h4 { margin: 0 0 12px; }
.schedule-bye-list ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.schedule-bye-list li { display: grid; gap: 4px; overflow-wrap: anywhere; }
.schedule-bye-list li span { font-size: 13px; }
@media (min-width: 700px) {
  .schedule-fixture-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media print {
  .schedule-title-editor { display: none; }
  .schedule-fixture-card { break-inside: avoid; background: white; color: black; }
  .schedule-fixture-card > button { background: white; color: black; }
  .schedule-fixture-card dt, .schedule-fixture-date, .schedule-fixture-card button small { color: #333; }
}
