.season-calendar { min-width: 0; }
.season-calendar-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:14px; }
.season-calendar-head h4 { margin:0 0 4px; font-size:1.05rem; }
.season-calendar-head p { margin:0; color:var(--muted, #64748b); }
.season-reset-contract { padding:11px 13px; margin:0 0 14px; border:1px solid #bfdbfe; border-radius:10px; background:#eff6ff; color:#1e3a8a; font-weight:650; }
.recurring-season-form { margin:0 0 16px; padding:16px; border:1px solid var(--border, #dbe3ee); border-radius:12px; background:var(--surface-soft, #f8fafc); }
.season-form-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.season-form-grid label:not(.season-reset-active) { display:grid; gap:6px; min-width:0; }
.season-form-grid input,.season-form-grid select { width:100%; }
.season-reset-active { display:flex; align-items:center; gap:8px; align-self:end; min-height:42px; }
.season-form-actions { display:flex; gap:10px; justify-content:flex-end; margin-top:14px; }
.season-reset-table { min-width:900px; }
.season-calendar .table-scroll { display:block; width:100%; max-width:100%; overflow-x:auto; overflow-y:hidden; }
.season-reset-table td { vertical-align:top; }
.season-reset-table .season-name { display:grid; gap:2px; }
.season-reset-table .season-name small,.season-occurrence-preview small { color:var(--muted, #64748b); }
.season-occurrence-preview { display:grid; gap:3px; white-space:nowrap; }
.season-row-actions { display:flex; gap:6px; flex-wrap:wrap; }
.season-row-actions button { padding:6px 9px; }
.season-status { display:inline-flex; padding:4px 9px; border-radius:999px; font-weight:700; background:#dcfce7; color:#166534; }
.season-status.inactive { background:#e2e8f0; color:#475569; }
.season-overlap-warning { padding:10px 12px; margin-bottom:12px; border-radius:9px; background:#fff7ed; color:#9a3412; border:1px solid #fed7aa; }
.recurring-season-empty { text-align:center; color:var(--muted, #64748b); padding:28px !important; }
[dir="ltr"] .season-calendar,[dir="ltr"] .recurring-season-form { text-align:left; }
@media (max-width:900px) { .season-form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) {
  .season-calendar-head { align-items:stretch; flex-direction:column; }
  .season-calendar-head button { width:100%; }
  .season-form-grid { grid-template-columns:1fr; }
  .season-form-actions { position:sticky; bottom:0; padding-top:10px; background:inherit; }
  .season-form-actions button { flex:1; }
}
