/* Private list-decisions slice. Reuses the approved Footy Forge palette. */
.offseason-heading { margin-bottom: 14px; }
.offseason-heading h2 { margin: 6px 0 0; font-size: clamp(1.4rem, 3vw, 2.2rem); line-height: 1.15; }
.offseason-gate { padding: 20px; }
.offseason-gate p { color: var(--muted); font-size: .85rem; line-height: 1.5; }
.offseason-list-summary { display: grid; grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(0, 1fr)); gap: 12px; border-bottom: 1px solid var(--line); padding-bottom: 12px; }
.offseason-list-summary > div, .offseason-position-summary > div { min-width: 0; }
.offseason-list-summary span, .offseason-position-summary span { display: block; color: var(--muted); font-size: .7rem; }
.offseason-list-summary strong { display: block; margin-top: 3px; font-size: 1.2rem; }
.offseason-position-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 12px 0; }
.offseason-position-summary strong, .offseason-position-summary small { display: block; margin-top: 2px; }
.offseason-position-summary strong { font-size: .9rem; }
.offseason-position-summary small { color: var(--gold-bright); font-size: .68rem; }
.offseason-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.offseason-actions button { min-height: 44px; }
.offseason-note { min-height: 2.7em; margin: 10px 0; color: var(--muted); font-size: .76rem; line-height: 1.4; }
.offseason-confirmation { padding: 12px; border: 1px solid var(--gold-dark); border-radius: 6px; color: var(--gold-bright); font-size: .82rem; line-height: 1.5; }
.offseason-board { padding: 14px; }
.offseason-board-tools { display: grid; grid-template-columns: minmax(0, 1fr) 140px; gap: 10px; }
.offseason-board-tools label { min-width: 0; }
.offseason-board-tools input, .offseason-board-tools select { width: 100%; min-width: 0; min-height: 44px; padding: 0 10px; border: 1px solid var(--line); border-radius: 5px; background: var(--ink-2); color: var(--cream); font-size: .8rem; }
.offseason-filters { display: flex; gap: 5px; margin-top: 10px; }
.offseason-filters button { flex: 1; min-width: 0; min-height: 44px; padding: 0 8px; background: var(--surface); border: 1px solid var(--line); border-radius: 5px; color: var(--muted); font-size: .78rem; font-weight: 700; cursor: pointer; }
.offseason-filters button.is-active { background: var(--gold); border-color: var(--gold); color: var(--ink); }
.offseason-paging { display: flex; justify-content: space-between; align-items: center; margin-top: 6px; color: var(--muted); font-size: .74rem; }
.offseason-paging > div { display: flex; gap: 6px; }
.offseason-paging button { min-width: 44px; min-height: 44px; font-size: 1.5rem; background: transparent; border: 1px solid var(--line); border-radius: 5px; cursor: pointer; }
.offseason-column-head, .offseason-player { display: grid; grid-template-columns: minmax(0, 1fr) 42px 45px 72px; gap: 10px; align-items: center; }
.offseason-column-head { padding: 10px 8px 6px; font-size: .65rem; color: var(--muted); }
.offseason-column-head > span:not(:first-child) { text-align: center; }
.offseason-rows { padding: 0; margin: 0; list-style: none; }
.offseason-player { min-height: 58px; padding: 6px 8px; border-top: 1px solid var(--line-soft); }
.offseason-player-name { min-width: 0; font-size: .86rem; overflow-wrap: normal; line-height: 1.3; }
.offseason-player-name small { display: block; margin-top: 2px; color: var(--muted); font-size: .64rem; font-weight: 400; }
.offseason-player.is-delisted { background: #e77b700a; }
.offseason-player.is-delisted .offseason-player-name small { color: var(--red); }
.offseason-player .position-tag { min-width: 0; }
.offseason-ovr { color: var(--gold-bright); font-weight: 800; text-align: center; }
.offseason-player button { min-width: 0; width: 100%; min-height: 44px; padding: 0 6px; background: transparent; color: var(--cream); border: 1px solid var(--line); border-radius: 5px; font-size: .74rem; cursor: pointer; }
.offseason-player button:hover { border-color: var(--gold); }
.offseason-player.is-delisted button { border-color: var(--gold-dark); color: var(--gold-bright); }
.offseason-decision-label { text-align: center; font-size: .72rem; color: var(--muted); }
.offseason-board-footnote, .offseason-empty { font-size: .73rem; color: var(--muted); line-height: 1.4; padding: 12px 0 0; }
.offseason-empty { padding: 18px 0; }
@media (max-width: 650px) {
  .offseason-list-summary { gap: 8px; }
  .offseason-list-summary strong { font-size: 1rem; }
  .offseason-list-summary span { font-size: .64rem; }
  .offseason-actions { gap: 4px; }
  .offseason-actions .primary-button { width: 100%; }
  .offseason-actions .text-button { padding-left: 0; }
  .offseason-board { padding: 9px; }
  .offseason-board-tools { grid-template-columns: minmax(0, 1fr) 114px; gap: 6px; }
  .offseason-column-head, .offseason-player { grid-template-columns: minmax(0, 1fr) 26px 36px 54px; gap: 5px; padding-inline: 2px; }
  .offseason-player-name { font-size: .77rem; }
  .offseason-player-name small { font-size: .59rem; }
  .offseason-player button { font-size: .7rem; }
  .offseason-player .position-tag { padding: 4px 2px; font-size: .59rem; }
  .offseason-decision-label { font-size: .63rem; }
}
