.sc-schedule-container .sc-start-block:nth-child(odd) {
  --sc-start-bg: #ffffff;
  --sc-start-head-bg: #f7f9fc;
  --sc-start-border: #dbe3ec;
  --sc-start-row-bg: #ffffff;
  --sc-start-player-bg: #f8fafc;
}

.sc-schedule-container .sc-start-block:nth-child(even) {
  --sc-start-bg: #eef5fb;
  --sc-start-head-bg: #dfeaf5;
  --sc-start-border: #bfd0e1;
  --sc-start-row-bg: #f6faff;
  --sc-start-player-bg: #e8f1f9;
}

.sc-schedule-container .sc-start-block {
  background: var(--sc-start-bg);
  border-color: var(--sc-start-border);
}

.sc-schedule-container .sc-start-block .sc-start-head {
  background: var(--sc-start-head-bg);
  border-bottom-color: var(--sc-start-border);
}

.sc-schedule-container .sc-start-block .sc-schedule-table tbody td {
  background-color: var(--sc-start-row-bg);
}

.sc-schedule-container .sc-start-block:nth-child(even) {
  box-shadow: inset 4px 0 0 #7fa6c9;
}

@media (max-width: 700px) {
  .sc-toolbar {
    grid-template-columns: minmax(104px, .9fr) minmax(0, 1.6fr) !important;
  }

  #scYear {
    min-width: 0 !important;
    padding-left: 10px !important;
    padding-right: 22px !important;
    font-size: .82rem !important;
  }

  .sc-schedule-container .sc-start-block,
  .sc-schedule-container .sc-start-block:nth-child(even) {
    padding: 8px;
    border: 1px solid transparent;
    border-radius: 16px;
    box-shadow: none;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="white"] {
    background: #ffffff;
    border-color: #e2e8ef;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="blue"] {
    background: #eaf3fb;
    border-color: #cbddeb;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="white"] .sc-start-head {
    background: linear-gradient(135deg, #f8fafc, #f1f5f9);
    border-color: #dfe7ef;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="blue"] .sc-start-head {
    background: linear-gradient(135deg, #dbeaf6, #cfe2f1);
    border-color: #bdd3e4;
  }

  /* Make the start date and time an obvious glanceable badge on phone. */
  .sc-schedule-container .sc-start-head {
    gap: 10px;
    padding: 9px 9px 9px 11px;
  }

  .sc-schedule-container .sc-start-head strong {
    font-size: .88rem;
    font-weight: 900;
  }

  .sc-schedule-container .sc-start-head span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    max-width: 68%;
    min-height: 34px;
    padding: 6px 9px;
    border: 1px solid rgba(23, 58, 94, .15);
    border-radius: 10px;
    background: rgba(255,255,255,.9);
    color: #123455;
    box-shadow: 0 3px 10px rgba(16, 42, 69, .08);
    font-size: .76rem;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="blue"] .sc-start-head span {
    background: rgba(255,255,255,.94);
    border-color: rgba(36, 94, 145, .22);
    color: #0d3152;
  }

  .sc-schedule-container .sc-start-block .sc-schedule-table tbody tr {
    background: rgba(255,255,255,.96) !important;
    border-color: #e2e8ef;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="blue"] .sc-schedule-table tbody tr {
    border-color: #d5e2ec;
  }

  .sc-schedule-container .sc-start-block .sc-schedule-table tbody td {
    background: transparent !important;
  }

  .sc-schedule-container .sc-start-block .sc-schedule-table tbody td:nth-child(2) {
    background: rgba(250,251,253,.96) !important;
  }

  .sc-schedule-container .sc-start-block[data-start-tone="blue"] .sc-schedule-table tbody td:nth-child(2) {
    background: rgba(240,247,252,.96) !important;
  }

  /* Mobile schedule only: nationality is already shown by the flag behind the player name. */
  .sc-schedule-table tbody td:nth-child(3) {
    display: none !important;
  }

  /* Result PDFs are available from ranking/player views, so keep the schedule focused. */
  .sc-schedule-table [data-sc-pdf-download-col] {
    display: none !important;
  }

  /* Ranking: keep the result PDF beside the player name instead of below the card. */
  .sc-ranking-table tbody tr {
    position: relative;
  }

  .sc-ranking-table tbody td[data-mobile-label="Player"],
  .sc-ranking-table tbody td:nth-child(2) {
    padding-right: 82px !important;
  }

  .sc-ranking-table tbody td[data-mobile-label="Result PDFs"],
  .sc-ranking-table tbody td[data-sc-pdf-download-col] {
    position: absolute !important;
    top: 10px;
    right: 9px;
    z-index: 4;
    display: block !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 68px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  .sc-ranking-table tbody td[data-sc-pdf-download-col]::before {
    display: none !important;
  }

  .sc-ranking-table tbody td[data-sc-pdf-download-col] .sc-pdf-download-list {
    display: flex !important;
    width: auto !important;
    gap: 4px !important;
  }

  .sc-ranking-table tbody td[data-sc-pdf-download-col] .sc-pdf-download-link {
    width: 62px !important;
    min-width: 62px !important;
    min-height: 34px !important;
    padding: 6px 8px !important;
    border-color: #d5e2ec !important;
    border-radius: 9px !important;
    background: #f1f6fa !important;
    color: #123455 !important;
    box-shadow: 0 2px 7px rgba(16,42,69,.06);
    font-size: 0 !important;
  }

  .sc-ranking-table tbody td[data-sc-pdf-download-col] .sc-pdf-download-link::after {
    content: "PDF";
    font-size: .67rem;
    font-weight: 900;
    letter-spacing: .03em;
  }

  .sc-ranking-table tbody td[data-sc-pdf-download-col] .sc-pdf-download-empty {
    display: none !important;
  }
}
