/* Nový web GPM — admin: sezóna (app-adm-season.js): playoff (#/admin/playoffs), přestupy (#/admin/transfers), rozlosování (#/admin/draw).
   Všechny třídy mají předponu adm-season-. Staví na proměnných z gpm.css a na prvcích z css-kit.css (.kin, .kf-*, .card, .pill, .btn, .chip).
   Seznam přestupů používá stejnou tabulku jako dřívější náhled (.atr), takže karty na telefonu řeší css-m-pugs.css.
   Pravidla pro tablet a telefon jsou na konci (hranice jako css-mobile.css: 1340 / 1180 / 900 / 640). */

/* ═════════ společné ═════════ */
.adm-season-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; align-items: start; }
.adm-season-two > * { min-width: 0; margin-top: 0; }
.adm-season-what { margin: 0 0 12px; max-width: 760px; color: var(--mut); font-size: 13.5px; line-height: 1.5; }
.adm-season-what b { color: var(--ink2); font-weight: 600; }
.adm-season-fine { margin: 14px 0 0; color: var(--mut); font-size: 12.5px; line-height: 1.55; }
.adm-season-fine a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.adm-season-fine code, .amain .kf-notebox code, .adm-season-confirm code { padding: 1px 6px; border-radius: 5px; background: rgba(255,255,255,.08); color: #fff; font: 600 .92em var(--fm); white-space: nowrap; }
.adm-season-sub { margin-top: 8px; color: var(--mut); font: 500 11.5px/1.35 var(--fm); letter-spacing: .02em; }
.adm-season-empty { color: var(--mut); font-size: 13px; }

/* okna s potvrzením: přesný výpis toho, co se zapíše */
.adm-season-confirm { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
.adm-season-confirm > * { min-width: 0; margin: 0; }
.adm-season-confirm .kf-notebox { margin-bottom: 0; font-size: 13.5px; }
.adm-season-cls { display: grid; gap: 6px; max-height: 44vh; overflow-y: auto; }
.adm-season-cl { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 4px 14px; padding: 11px 14px; border-radius: 10px; border: 1px solid var(--line); background: rgba(255,255,255,.03); color: var(--ink2); font-size: 14px; line-height: 1.35; }
.adm-season-cl b { color: #fff; font-weight: 700; }
.adm-season-cl i { margin: 0 7px 0 6px; padding: 1px 5px; border-radius: 4px; background: rgba(242,212,104,.14); color: var(--gold); font: 600 9.5px/1.5 var(--fm); font-style: normal; letter-spacing: .1em; text-transform: uppercase; vertical-align: 1px; }
.adm-season-cl code { justify-self: end; background: rgba(0,0,0,.35); font-size: 12.5px; }
.adm-season-cl small { grid-column: 1 / -1; color: var(--mut); font: 500 11.5px/1.3 var(--fm); letter-spacing: .02em; }
.adm-season-cl.skip { border-style: dashed; background: none; color: var(--mut); }
.adm-season-cmove { padding: 14px 16px; border-radius: 12px; border: 1px solid rgba(242,212,104,.4); background: rgba(242,212,104,.06); }
.adm-season-cmove b { display: block; color: #fff; font: 800 18px/1.2 var(--fb); overflow-wrap: anywhere; }
.adm-season-cmove span { display: block; margin-top: 6px; color: var(--ink); font: 600 15px/1.35 var(--fb); overflow-wrap: anywhere; }
.adm-season-cmove small { display: block; margin-top: 8px; color: var(--mut); font: 500 11.5px/1.3 var(--fm); letter-spacing: .04em; }
.adm-season-confirm .adm-season-fine { margin-top: 0; }

/* ═════════ playoff: výsledek posledního generování ═════════ */
.adm-season-run { position: relative; margin-bottom: 20px; border-color: rgba(61,220,151,.45); background: rgba(61,220,151,.06); }
.adm-season-run.bad { border-color: rgba(255,93,108,.5); background: rgba(255,93,108,.07); }
.adm-season-run > h3 { padding-right: 96px; }
.adm-season-run ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 7px; }
.adm-season-run li { position: relative; padding-left: 18px; color: var(--ink2); font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
.adm-season-run li::before { content: ""; position: absolute; left: 1px; top: .5em; width: 7px; height: 7px; border-radius: 50%; background: var(--win); }
.adm-season-run li.skip::before { background: var(--mut); } .adm-season-run li.bad::before { background: var(--loss); }
.adm-season-run li b { color: #fff; font-weight: 700; }
.adm-season-run code { padding: 1px 6px; border-radius: 5px; background: rgba(0,0,0,.35); color: #fff; font: 600 .92em var(--fm); }
.adm-season-run a code { text-decoration: underline; text-underline-offset: 3px; }
.adm-season-runx { position: absolute; right: 16px; top: 14px; }

/* ═════════ playoff: stav pavouka ═════════ */
.adm-season-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.adm-season-tile { min-width: 0; padding: 14px 16px 13px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255,255,255,.02); }
.adm-season-tile.on { border-color: rgba(242,212,104,.32); background: rgba(242,212,104,.04); }
.adm-season-tile.ok { border-color: rgba(61,220,151,.32); background: rgba(61,220,151,.045); }
.adm-season-tile.bad { border-color: rgba(255,93,108,.45); background: rgba(255,93,108,.06); }
.adm-season-tile .lbl { display: block; min-height: 2.4em; line-height: 1.2; }
.adm-season-tn { display: flex; align-items: baseline; gap: 6px; margin-top: 10px; }
.adm-season-tn .num { color: #fff; font-size: 32px; }
.adm-season-tn > span:not(.pill) { color: var(--mut); font: 700 15px/1 var(--fd); }
.adm-season-tn .pill { margin-left: auto; align-self: center; }
.adm-season-tile small { display: block; margin-top: 9px; color: var(--mut); font: 500 11.5px/1.3 var(--fm); letter-spacing: .02em; }

/* ═════════ playoff: nasazení a kroky ═════════ */
.adm-season-seeds { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 6px; }
.adm-season-seed { display: inline-flex; align-items: center; gap: 7px; height: 34px; padding: 0 11px 0 8px; border-radius: 9px; border: 1px solid var(--line); background: rgba(255,255,255,.03); transition: border-color .15s, background-color .15s; }
.adm-season-seed:hover { border-color: rgba(255,255,255,.3); background: rgba(255,255,255,.06); }
.adm-season-seed i { color: var(--gold); font: 800 11.5px/1 var(--fd); font-style: normal; }
.adm-season-seed b { color: #fff; font: 800 12.5px/1 var(--fd); letter-spacing: .04em; }
.adm-season-seed small { color: var(--mut); font: 500 10.5px/1 var(--fm); letter-spacing: .02em; white-space: nowrap; }
.adm-season-step { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 0 14px; align-items: center; padding: 18px 0 16px; border-top: 1px solid var(--line2); }
.adm-season-track > .adm-season-step:first-of-type { border-top: 0; padding-top: 4px; }
.adm-season-seeds + .adm-season-step { border-top: 1px solid var(--line2) !important; margin-top: 12px; padding-top: 18px !important; }
.adm-season-step:last-child { padding-bottom: 2px; }
.adm-season-sn { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--line); background: rgba(255,255,255,.04); color: var(--mut); font: 800 13px/1 var(--fd); }
.adm-season-step.ready .adm-season-sn { border-color: transparent; background: var(--grad); color: var(--on); }
.adm-season-step.done .adm-season-sn { border-color: rgba(61,220,151,.5); background: rgba(61,220,151,.14); color: var(--win); }
.adm-season-step.bad .adm-season-sn { border-color: rgba(255,93,108,.5); background: rgba(255,93,108,.12); color: var(--loss); }
.adm-season-sb { grid-column: 2 / -1; min-width: 0; }
.adm-season-sh { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 10px; min-height: 30px; }
.adm-season-sh > b { color: #fff; font: 800 16px/1.2 var(--fb); }
.adm-season-sh > .pill { margin-left: 2px; }
.adm-season-sb > .adm-season-what { margin: 6px 0 10px; }
.adm-season-step.wait .adm-season-what { margin-bottom: 6px; }
.adm-season-sa { align-self: center; }
.adm-season-sa .btn { min-width: 0; }
.adm-season-why { margin: 0; padding: 9px 12px; border-radius: 9px; border: 1px dashed rgba(255,255,255,.16); color: var(--ink2); font-size: 13.5px; line-height: 1.45; }
.adm-season-why + .adm-season-why, .adm-season-m + .adm-season-why { margin-top: 6px; }
.adm-season-why.bad { border-color: rgba(255,93,108,.5); background: rgba(255,93,108,.06); color: #ffd7da; }
/* zápas v kroku: domácí – skóre – hosté, ID, stav */
.adm-season-m { display: grid; grid-template-columns: minmax(0, 1fr) 50px minmax(0, 1fr) auto 84px; align-items: center; gap: 10px; padding: 8px 12px; border-radius: 10px; border: 1px solid var(--line2); background: rgba(255,255,255,.025); }
.adm-season-m + .adm-season-m { margin-top: 6px; }
a.adm-season-m { transition: border-color .15s, background-color .15s; } a.adm-season-m:hover { border-color: rgba(255,255,255,.26); background: rgba(255,255,255,.055); }
.adm-season-m.new { border-style: dashed; border-color: rgba(242,212,104,.5); background: rgba(242,212,104,.05); }
.adm-season-mt { display: flex; align-items: center; gap: 9px; min-width: 0; }
.adm-season-mt.r { flex-direction: row-reverse; text-align: right; }
.adm-season-mt b { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #fff; font: 600 14px/1.2 var(--fb); }
.adm-season-mv { text-align: center; color: var(--mut); font: 700 11px/1 var(--fd); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.adm-season-mv.num { color: #fff; font-size: 17px; letter-spacing: 0; } .adm-season-mv.num i { margin: 0 3px; color: var(--dim); font-style: normal; }
.adm-season-mi code { color: var(--mut); font: 500 11.5px/1 var(--fm); letter-spacing: .02em; white-space: nowrap; }
.adm-season-m > .pill { justify-self: end; }

/* ═════════ přestupy ═════════ */
.adm-season-split { display: grid; grid-template-columns: minmax(0, 430px) minmax(0, 1fr); gap: 20px; align-items: start; }
.adm-season-split > * { min-width: 0; }
.adm-season-form.card { margin-top: 0; }
.adm-season-form input[type="date"].kin { color-scheme: dark; }
.adm-season-pv:empty { display: none; }
.adm-season-hint { margin: 0; padding: 11px 13px; border-radius: 10px; border: 1px dashed rgba(255,255,255,.16); color: var(--mut); font-size: 13.5px; line-height: 1.45; }
.adm-season-hint.bad { margin-top: 8px; border-style: solid; border-color: rgba(255,93,108,.5); background: rgba(255,93,108,.07); color: #ffd7da; }
.adm-season-pc { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--line); background: rgba(255,255,255,.03); }
.adm-season-pc > div { min-width: 0; }
.adm-season-pc b { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #fff; font: 800 16px/1.2 var(--fb); }
.adm-season-pc small { display: block; margin-top: 4px; color: var(--mut); font: 500 11px/1.3 var(--fm); letter-spacing: .02em; overflow-wrap: anywhere; }
.adm-season-pc span { display: flex; align-items: center; gap: 7px; margin-top: 7px; color: var(--ink2); font: 600 13.5px/1.2 var(--fb); }
.adm-season-pc .tl { flex: none; }
.adm-season-move { margin-top: 8px; padding: 12px 14px; border-radius: 12px; border: 1px solid rgba(242,212,104,.4); background: rgba(242,212,104,.06); }
.adm-season-move > div { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 9px; margin-top: 8px; }
.adm-season-move b { color: #fff; font: 700 15px/1.25 var(--fb); overflow-wrap: anywhere; }
.adm-season-move i { color: var(--gold); font-style: normal; }
.adm-season-move .pill { margin-left: auto; }
.adm-season-move small { display: block; margin-top: 8px; color: var(--mut); font-size: 12.5px; line-height: 1.45; }
.adm-season-bar { justify-content: space-between; gap: 12px 16px; }
.adm-season-bar .chips { min-width: 0; }
.adm-season-bar .search { flex: none; width: 250px; }
.adm-season-logc.card { margin-top: 16px !important; }
.adm-season-logc .t td.adm-season-arr { width: 28px; color: var(--mut); }
.adm-season-logc .t td.adm-season-none { padding: 26px 10px; color: var(--mut); font: 500 14px/1.45 var(--fb); white-space: normal; }
.adm-season-logc .t tr.adm-season-fresh td { background: rgba(61,220,151,.09); }
.adm-season-logc .t tr.adm-season-fresh td:first-child { box-shadow: inset 3px 0 0 var(--win); }
.adm-season-logc .pill { text-transform: uppercase; }
#adm-season-log .lgd { margin-top: 16px; }
/* tabulka se vejde do karty: pevné šířky sloupců, dlouhá jména se zkrátí (na telefonu jsou z řádků karty — css-m-pugs.css) */
@media (min-width: 641px) {
  .adm-season-logc table.t { table-layout: fixed; }
  .adm-season-logc .t th:nth-child(1) { width: 27%; } .adm-season-logc .t th:nth-child(3) { width: 26px; } .adm-season-logc .t th:nth-child(5) { width: 92px; }
  .adm-season-logc .t td { overflow: hidden; }
  .adm-season-logc .t td.l .who { display: flex; max-width: 100%; }
  .adm-season-logc.atr .t td.l .who .nm { max-width: none; }
  /* název týmu smí na dva řádky — zkrácené „HC Ragebait…“ a „HC Zamrznut…“ by od sebe nešly rozeznat */
  .adm-season-logc.atr .t td:nth-child(2) .who .nm, .adm-season-logc.atr .t td:nth-child(4) .who .nm { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; white-space: normal; font-size: 13.5px; line-height: 1.2; }
  .adm-season-logc .t th:nth-child(3), .adm-season-logc .t td.adm-season-arr { padding-left: 0; padding-right: 0; }
}

/* ═════════ rozlosování ═════════ */
.adm-season-dctl { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 16px 28px; }
.adm-season-dctl .lbl { display: block; margin-bottom: 8px; }
.adm-season-dctl .chip img { height: 18px; }
.adm-season-rounds .chip { min-width: 40px; justify-content: center; padding: 0 12px; }
.adm-season-rounds .chip[data-drawn]:not(.on) { border-color: rgba(61,220,151,.45); color: var(--win); }
.adm-season-dnote { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 18px; margin: 18px 0; padding: 11px 14px; border-radius: 0 10px 10px 0; border-left: 3px solid var(--gold); background: rgba(242,212,104,.06); color: var(--ink2); font-size: 14px; line-height: 1.45; }
.adm-season-dnote > span { min-width: 0; flex: 1 1 380px; } .adm-season-dnote b { color: #fff; font-weight: 700; }
.adm-season-dnote small { color: var(--mut); font: 500 11px/1.3 var(--fm); letter-spacing: .02em; white-space: nowrap; }
.adm-season-sch { color: var(--gold); }
.adm-season-draw .kf-notebox { margin: 18px 0 0; }
.adm-season-pl { display: block; margin-bottom: 8px; }
.adm-season-pool { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-height: 62px; padding: 12px; border-radius: 12px; border: 1px dashed rgba(255,255,255,.2); background: rgba(255,255,255,.02); }
.adm-season-chip { display: inline-flex; align-items: center; gap: 8px; height: 38px; margin: 0; padding: 0 12px 0 9px; border-radius: 10px; border: 1px solid rgba(255,255,255,.16); background: #17171d; color: var(--ink2); font: 500 13px/1 var(--fb);
  cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; transition: border-color .15s, background-color .15s, opacity .15s, box-shadow .15s; }
.adm-season-chip:hover { border-color: rgba(242,212,104,.6); }
.adm-season-chip:active { cursor: grabbing; }
.adm-season-chip:focus-visible { outline: 2px solid var(--acc); outline-offset: 2px; }
.adm-season-chip b { color: #fff; font: 800 12.5px/1 var(--fd); letter-spacing: .05em; }
.adm-season-chip > span:not(.tl) { max-width: 150px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.adm-season-chip i { color: var(--gold); font: 600 9.5px/1 var(--fm); font-style: normal; letter-spacing: .1em; text-transform: uppercase; }
.adm-season-chip i.bad { color: var(--loss); }
.adm-season-chip.used { opacity: .45; }
.adm-season-chip.armed { opacity: 1; border-color: var(--gold); background: rgba(242,212,104,.16); box-shadow: 0 0 0 3px rgba(242,212,104,.2); }
.adm-season-slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.adm-season-slot { min-width: 0; border-radius: 12px; border: 1px solid var(--line); background: rgba(255,255,255,.02); overflow: hidden; }
.adm-season-slot-h { display: flex; align-items: center; gap: 10px; padding: 9px 14px; border-bottom: 1px solid var(--line2); background: rgba(255,255,255,.03); }
.adm-season-slot-h b { color: var(--gold); font: 800 11px/1 var(--fd); font-stretch: 115%; letter-spacing: .14em; text-transform: uppercase; }
.adm-season-slot-h code { margin-left: auto; color: var(--mut); font: 500 11.5px/1 var(--fm); }
.adm-season-slot-b { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: start; gap: 10px; padding: 12px 14px 14px; }
.adm-season-vs { align-self: start; margin-top: 19px; color: var(--dim); font: 800 11px/1 var(--fd); letter-spacing: .1em; }
.adm-season-side { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; min-width: 0; }
.adm-season-cell { display: flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 50px; padding: 7px 10px; border-radius: 10px; border: 2px dashed rgba(255,255,255,.18); text-align: center; transition: border-color .15s, background-color .15s, box-shadow .15s; }
.adm-season-cell.home { border-color: rgba(98,146,226,.5); } .adm-season-cell.away { border-color: rgba(255,93,108,.42); }
.adm-season-cell.filled { border-style: solid; background: rgba(255,255,255,.04); justify-content: space-between; }
.adm-season-cell.over, .adm-season-arming .adm-season-cell:hover { border-color: var(--gold); background: rgba(242,212,104,.14); box-shadow: 0 0 0 3px rgba(242,212,104,.2); }
.adm-season-arming .adm-season-cell { cursor: pointer; }
.adm-season-ct { display: flex; align-items: center; gap: 8px; flex: 1 1 auto; min-width: 0; text-align: left; }
.adm-season-ct b { color: #fff; font: 800 13.5px/1 var(--fd); letter-spacing: .04em; }
.adm-season-ct > span:not(.tl) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink2); font-size: 13px; }
.adm-season-x { flex: none; width: 26px; height: 26px; margin: 0; padding: 0; border: 0; border-radius: 7px; background: rgba(255,93,108,.14); color: var(--loss); font: 800 11px/1 var(--fm); cursor: pointer; }
.adm-season-x:hover { background: rgba(255,93,108,.28); }
select.kin.adm-season-sel { height: 36px; font-size: 13px; font-weight: 500; }
.adm-season-val { margin-top: 16px; padding: 11px 14px; border-radius: 11px; border: 1px solid rgba(61,220,151,.4); background: rgba(61,220,151,.05); font-size: 13.5px; line-height: 1.45; }
.adm-season-val.warn { border-color: rgba(242,212,104,.45); background: rgba(242,212,104,.05); } .adm-season-val.err { border-color: rgba(255,93,108,.5); background: rgba(255,93,108,.05); }
.adm-season-val > div { display: flex; align-items: flex-start; gap: 9px; padding: 2px 0; }
.adm-season-val i { flex: none; width: 14px; font-style: normal; text-align: center; }
.adm-season-val .ok { color: var(--win); } .adm-season-val .warn { color: var(--gold); } .adm-season-val .err { color: #ff8a95; font-weight: 600; }
.adm-season-draw .kf-bar .kf-note { font: 500 11.5px/1.4 var(--fm); letter-spacing: .01em; overflow-wrap: anywhere; }
.adm-season-ghost { position: fixed; z-index: 300; pointer-events: none; transform: translate(-50%, -50%); display: inline-flex; align-items: center; gap: 8px; height: 38px; padding: 0 13px 0 9px; border-radius: 10px; background: var(--gold); color: #141414;
  box-shadow: 0 12px 30px rgba(0,0,0,.6); font: 800 13px/1 var(--fd); }
.adm-season-sums { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.adm-season-sum { min-width: 0; padding: 10px 12px; border-radius: 10px; border: 1px solid var(--line2); background: rgba(255,255,255,.02); }
.adm-season-sum.on { border-color: rgba(242,212,104,.55); box-shadow: 0 0 0 2px rgba(242,212,104,.12); }
.adm-season-sum.out { border-style: dashed; }
.adm-season-sum-h { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 8px; margin-bottom: 7px; color: var(--mut); font: 500 10.5px/1.2 var(--fm); letter-spacing: .08em; text-transform: uppercase; }
.adm-season-sum-h a, .adm-season-sum-h > span:first-child { color: #fff; font: 800 11.5px/1 var(--fd); letter-spacing: .12em; }
.adm-season-sum-h a:hover { color: var(--gold); }
.adm-season-sum-h i { padding: 2px 6px; border-radius: 5px; background: rgba(242,212,104,.14); color: var(--gold); font-style: normal; letter-spacing: .06em; }
.adm-season-sum-h i.ok { background: rgba(61,220,151,.14); color: var(--win); } .adm-season-sum-h i.bad { background: rgba(255,93,108,.14); color: var(--loss); }
.adm-season-sum-h > span:last-child { margin-left: auto; }
.adm-season-sum-p { display: flex; align-items: baseline; gap: 6px; padding: 2px 0; color: var(--mut); font-size: 13px; }
.adm-season-sum-p b { color: #fff; font: 700 12.5px/1.3 var(--fd); letter-spacing: .03em; }
.adm-season-sum-p code { margin-left: auto; color: var(--dim); font: 500 11px/1 var(--fm); }
.adm-season-sum-e { color: var(--dim); font-size: 13px; font-style: italic; }
.adm-season-auto .btn { margin-top: 2px; }
.adm-season-fail p { max-width: 620px; margin-left: auto; margin-right: auto; line-height: 1.55; }

/* ═════════ užší než návrh ═════════ */
@media (max-width: 1340px) {
  .adm-season-m { grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr) 84px; }
  .adm-season-m .adm-season-mi { display: none; }      /* ID je v odkazu a v okně s potvrzením; na užší obrazovce mají přednost názvy týmů */
  .adm-season-m.new { grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr) 84px; }
  .adm-season-split { grid-template-columns: minmax(0, 380px) minmax(0, 1fr); }
}

/* ═════════ tablet na šířku ═════════ */
@media (max-width: 1180px) {
  .adm-season-two { grid-template-columns: minmax(0, 1fr); }
  .adm-season-m, .adm-season-m.new { grid-template-columns: minmax(0, 1fr) 46px minmax(0, 1fr) auto 84px; }
  .adm-season-m .adm-season-mi { display: block; }
  .adm-season-split { grid-template-columns: minmax(0, 1fr); }
  .adm-season-form .kf-body { max-width: 760px; }
  .adm-season-chip { height: 44px; }
  select.kin.adm-season-sel { height: 44px; font-size: 14px; }
  .adm-season-x { width: 34px; height: 34px; }
  .adm-season-seed { height: 38px; }
  .adm-season-sums { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .adm-season-slots { grid-template-columns: minmax(0, 1fr); }      /* jeden zápas na řádek: v buňkách se vejdou celé názvy týmů */
}

/* ═════════ tablet na výšku ═════════ */
@media (max-width: 900px) {
  .adm-season-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .adm-season-tile .lbl { min-height: 0; }
  .adm-season-step { grid-template-columns: 30px minmax(0, 1fr); }
  .adm-season-sa { grid-column: 2; grid-row: 3; margin-top: 12px; }
  .adm-season-sb { grid-row: 2; }
  .adm-season-bar { flex-wrap: wrap; }
  .adm-season-bar .search { flex: 1 1 240px; width: auto; }
  .adm-season-logc .t td.adm-season-none { padding: 18px 6px; text-align: center; }
  .adm-season-sub { font-size: 11px; }
  .adm-season-sums { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ═════════ telefon ═════════ */
@media (max-width: 640px) {
  .adm-season-run > h3 { padding-right: 0; }
  .adm-season-runx { position: static; margin-top: 14px; } .adm-season-runx .btn { width: 100%; height: 44px; }
  .adm-season-tiles { gap: 8px; }
  .adm-season-tile { padding: 12px 12px 11px; }
  .adm-season-tn { flex-wrap: wrap; } .adm-season-tn .num { font-size: 26px; } .adm-season-tn .pill { margin-left: 0; flex: 1 1 100%; justify-content: center; margin-top: 4px; }
  .adm-season-tile small { font-size: 10.5px; }
  .adm-season-seeds { gap: 6px; } .adm-season-seed small { display: none; }
  .adm-season-step { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 16px 0 14px; }
  .adm-season-sn { position: absolute; left: 0; top: 16px; width: 26px; height: 26px; font-size: 12px; }
  .adm-season-track > .adm-season-step:first-of-type .adm-season-sn { top: 4px; }
  .adm-season-seeds + .adm-season-step .adm-season-sn { top: 18px !important; }
  .adm-season-step { position: relative; }
  .adm-season-sh { padding-left: 36px; min-height: 26px; }
  .adm-season-sh > b { font-size: 15px; flex: 1 1 100%; }
  .adm-season-sh > .pill { margin-left: 0; }
  .adm-season-sa, .adm-season-sb { grid-column: 1; } .adm-season-sa .btn { width: 100%; height: 44px; white-space: normal; text-align: center; line-height: 1.2; }
  /* zápas: týmy pod sebou, skóre vpravo */
  .adm-season-m, .adm-season-m.new { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "h s" "a s" "i p"; gap: 6px 10px; padding: 10px 12px; }
  .adm-season-m .adm-season-mi { display: block; grid-area: i; }
  .adm-season-m > .adm-season-mt { grid-area: h; } .adm-season-m > .adm-season-mt.r { grid-area: a; flex-direction: row; text-align: left; }
  .adm-season-m > .adm-season-mv { grid-area: s; align-self: center; } .adm-season-m > .pill { grid-area: p; }
  .adm-season-cl { grid-template-columns: minmax(0, 1fr); } .adm-season-cl code { justify-self: start; white-space: normal; overflow-wrap: anywhere; }
  .adm-season-cls { max-height: none; }
  .adm-season-pc { grid-template-columns: auto minmax(0, 1fr); } .adm-season-pc > .btn { grid-column: 1 / -1; height: 40px; }
  .adm-season-move .pill { margin-left: 0; }
  .adm-season-bar .chips { flex-wrap: nowrap; margin: 0 -16px; padding: 0 16px 2px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .adm-season-bar .chips::-webkit-scrollbar { display: none; }
  .adm-season-bar .chips .chip { flex: none; height: 38px; }
  .adm-season-bar .search { flex: 1 1 100%; }
  .adm-season-dctl { gap: 14px; } .adm-season-dctl > div { flex: 1 1 100%; min-width: 0; }
  .adm-season-rounds .chip { min-width: 44px; height: 40px; }
  .adm-season-dnote { margin: 14px 0; padding: 10px 12px; font-size: 13.5px; } .adm-season-dnote small { white-space: normal; }
  .adm-season-pool { padding: 10px; gap: 6px; }
  /* zásobník týmů: dva vedle sebe; „in use“ říká ztlumení, na text není místo */
  .adm-season-chip { flex: 1 1 calc(50% - 3px); min-width: 0; padding: 0 9px 0 8px; gap: 7px; }
  .adm-season-chip > span:not(.tl) { flex: 1 1 auto; min-width: 0; max-width: none; text-align: left; }
  .adm-season-chip i:not(.bad) { display: none; }
  .adm-season-slots { grid-template-columns: minmax(0, 1fr); gap: 10px; margin-top: 14px; }
  .adm-season-slot-b { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 12px; }
  .adm-season-vs { margin: 0; text-align: center; }
  .adm-season-draw .kf-bar .kf-note { flex: 1 1 100%; }
  .adm-season-sums { grid-template-columns: minmax(0, 1fr); }
  .adm-season-auto .btn { width: 100%; height: 44px; white-space: normal; text-align: center; line-height: 1.2; }
}
