/* First batch UI additions. This file is appended after the archived visual
   sheets so it only adjusts the new route, status and compact-control pieces. */
.more-options-button {
  margin-left: auto;
  min-height: 34px;
  padding: 7px 10px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border-radius: 7px;
}
.list-toolbar.is-collapsed {
  display: none;
}
.list-toolbar.is-open {
  display: flex;
}
.detail-periods {
  margin: 10px auto 0;
  text-align: center;
  font-size: 13px;
  color: var(--muted);
}
.period-summary {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  max-width: 400px;
  margin: auto;
}
.result-period {
  display: flex;
  flex: 1 1 62px;
  flex-direction: column;
  gap: 4px;
  padding: 7px 4px;
  border: 1px solid var(--line);
  border-radius: 6px;
  text-align: center;
}
.result-period small { font-size: 12px; line-height: 1.4; color: var(--muted); }
.result-period b { font-size: 19px; line-height: 1.2; color: var(--ink); font-variant-numeric: tabular-nums; }
.result-period b span { margin: 0 5px; color: var(--muted); }
.match-status small.penalty-total { font-size: 14px; font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }
.match-winner { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 8px; margin: 12px auto 0; line-height: 1.5; }
.match-winner span { font-size: 13px; color: var(--muted); }
.match-winner b { font-size: 14px; color: var(--ink); }
.result-preview-source { margin-top: 5px; }
.result-note {
  max-width: 260px;
  margin: 10px auto 0;
  text-align: center;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
.result-note b {
  font-weight: 600;
}
.copy-link-button {
  margin-left: auto;
}
.detail-kicker .copy-link-button + .detail-refresh {
  margin-left: 0;
}
.copy-link-fallback {
  display: grid;
  gap: 5px;
  margin-top: 12px;
  font-size: 12px;
  color: var(--muted);
}
.copy-link-fallback input {
  width: 100%;
  min-height: 32px;
  padding: 6px 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: var(--surface);
  font-size: 13px;
}
.nearby-dates {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 15px auto 0;
  max-width: 430px;
}
.nearby-date {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 128px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: var(--surface);
  color: var(--muted);
  text-align: left;
}
.nearby-date:hover {
  border-color: #a6bb6e;
}
.nearby-date span {
  font-size: 12px;
}
.nearby-date b {
  color: var(--ink);
  font-size: 15px;
}
.nearby-search {
  margin-top: 0;
}
.nearby-note {
  width: 100%;
  font-size: 13px;
  color: var(--muted);
}
@media (max-width: 760px) {
  .more-options-button {
    min-height: 34px;
    padding: 7px 8px;
    font-size: 13px;
  }
  .list-toolbar.is-open {
    display: flex;
  }
  .list-toolbar.is-open .sort-control {
    width: 100%;
  }
  .list-toolbar.is-open .toolbar-button {
    flex: 1 1 auto;
    justify-content: center;
  }
  .copy-link-fallback {
    font-size: 13px;
  }
  .nearby-date {
    flex: 1 1 130px;
  }
}
@media (max-width: 420px) {
  .board-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .board-tools .search {
    grid-column: 1 / -1;
    width: 100%;
    min-width: 0;
  }
  .mobile-league-select,
  .mobile-league-select select {
    width: 100%;
    min-width: 0;
  }
}
