/* TELACY ESPORTS — Teamseite: Profillinks, Stats, Bearbeiten auf der Seite
   (Orchestrator-Lauf 02.10.2026, Segment Teamseite)

   Eigene Datei, weil site.css allen gehoert. Nutzt nur deren Variablen
   (--line, --s1, --brand, --gold, --win, --red, --gap, --pad, --sec).
   Eingebunden nur in team.html. */

/* ── Profillinks in Kader und Staff ─────────────────────────────── */
.tbl .who a.plink{transition:color .18s}
.tbl .who a.plink:hover,.tbl .who a.plink:focus-visible{color:var(--brand-l);text-decoration:underline;
  text-decoration-thickness:1px;text-underline-offset:4px}
body.t-academy .tbl .who a.plink:hover,body.t-academy .tbl .who a.plink:focus-visible{color:var(--gold)}

/* Kader, Staff und Tryout Staff buendig (R4, 03.10.2026): feste
   Spaltenbreiten statt Breite nach Inhalt, damit Name, Role/Position
   und Socials in allen drei Tabellen genau untereinander stehen. Die
   mittlere Spalte ist zentriert und links wie rechts gleich gepolstert. */
.tbl.kadtbl{table-layout:fixed}
.kadtbl th:nth-child(1){width:44%}
.kadtbl th:nth-child(2){width:24%}
.kadtbl th:nth-child(3){width:32%}
.kadtbl th:nth-child(2),.kadtbl td:nth-child(2){text-align:center;padding-left:7px;padding-right:7px}
.kadtbl td{overflow-wrap:anywhere}
/* 6th man (Schema 87): Zwischenzeile unter den Startern, wie die
   Ueberschrift "Tryout staff", aber in der Tabelle, damit die Spalten
   buendig bleiben. Linie oben trennt Startfuenf und Bank. */
.kadtbl tr.kadzwz th{padding:22px 0 10px;border-bottom:1px solid var(--line);border-top:1px solid var(--line2);
  text-align:left;color:var(--dim);font-weight:600}
.kadtbl tr.kadzwz:hover{background:none}
.kadtbl tbody tr:has(+ tr.kadzwz) td{border-bottom:0}
/* Namen brechen nie mitten im Wort (17.10.2026): Bei 390 px stand "Lars" als
   "LAR / S" da, weil overflow-wrap:anywhere der Zellen auch den Namen traf.
   Der Name bleibt in einer Zeile, ist er zu lang, endet er mit Ellipse (der
   volle Name steht im title). Mobil bekommt die Spalte Player mehr Platz,
   Polster und Abstaende werden schmaler; Socials behalten ihre Breite. */
.kadtbl .who .txt{flex:0 1 auto;min-width:0;max-width:100%}
.kadtbl .who .al{overflow-wrap:normal;word-break:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:560px){
  .kadtbl th:nth-child(1){width:46%}
  .kadtbl th:nth-child(2){width:22%}
  .kadtbl th:nth-child(3){width:32%}
  .kadtbl th,.kadtbl td{padding-right:8px}
  .kadtbl .who{gap:7px}
}

/* ── Stats ──────────────────────────────────────────────────────── */
#tstats .empty{background:var(--s1)}
.tshead{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap;margin-bottom:var(--gap)}
.tsseason{display:flex;flex-wrap:wrap;gap:8px}
.tsseason.one{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.tschip{padding:8px 13px;border:1px solid var(--line);color:var(--dim);font:600 10.5px/1 'Chakra Petch',sans-serif;
  letter-spacing:.14em;text-transform:uppercase;transition:color .18s,border-color .18s,background .18s}
.tschip:hover{color:var(--white);border-color:var(--line2)}
.tschip.on{color:var(--white);border-color:var(--brand);background:rgba(120,64,224,.14)}
body.t-academy .tschip.on{border-color:var(--gold);background:rgba(253,197,0,.08)}
.tsfc{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:500;color:var(--dim);transition:color .2s}
.tsfc:hover{color:var(--white)}
.tsfc svg{width:11px;height:11px;flex:none;color:var(--brand-l)}
body.t-academy .tsfc svg{color:var(--gold)}

.tstiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--gap);margin-bottom:var(--gap)}
.tstile{border:1px solid var(--line);background:var(--s1);padding:18px 20px;display:flex;flex-direction:column;gap:9px;min-width:0}
.tstile .tsl{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--dim)}
.tstile .tsv{font:700 26px/1 'Chakra Petch',sans-serif;color:var(--white);letter-spacing:.02em;
  display:flex;align-items:baseline;gap:3px;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.tstile .tsv em{font:600 12px/1 'Chakra Petch',sans-serif;font-style:normal;color:var(--dim);margin-right:8px}
.tstile .tsv i{font-style:normal;color:var(--dim);margin:0 4px}
.tstile .tsv .w{color:var(--win)}
.tstile .tsv .l{color:var(--red)}
.tstile .tsv.tbd{color:var(--dim)}
.tstile .tss{font-size:12.5px;color:var(--dim);overflow:hidden;text-overflow:ellipsis}

.tsgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--gap);margin-bottom:var(--gap)}
.tsbox{padding:22px var(--pad);min-width:0}
.tsbox.card:hover{transform:none}
.tsbox h3{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--white);margin-bottom:14px}
.tsbox .empty{padding:26px 16px}
.tsscroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.tstbl td,.tstbl th{white-space:nowrap}
.tstbl .num.w{color:var(--win)}
.tstbl .num.l{color:var(--red)}
.tstbl .tsqh{min-width:112px}
.tsq{display:flex;align-items:center;gap:10px}
.tsq b{font:600 12.5px/1 'Chakra Petch',sans-serif;color:var(--white);min-width:38px;text-align:right;font-variant-numeric:tabular-nums}
.tsbar{flex:none;width:64px;height:6px;background:var(--line);position:relative;overflow:hidden}
.tsbar i{position:absolute;inset:0 auto 0 0;background:var(--brand)}
body.t-academy .tsbar i{background:var(--gold)}
.tsnote{font-size:12.5px;color:var(--dim);margin:-4px 0 12px}
.tsplay td:first-child{padding-right:18px}

.tslast{display:flex;flex-direction:column}
.tsrow{display:grid;grid-template-columns:76px minmax(0,1fr) auto auto;align-items:center;gap:12px;
  padding:11px 8px;margin:0 -8px;border-bottom:1px solid var(--line);transition:background .18s}
.tsrow:last-child{border-bottom:0}
.tsrow:hover,.tsrow:focus-visible{background:rgba(255,255,255,.035)}
.tsdt{font-size:12.5px;color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap}
.tsopp{display:flex;align-items:center;gap:10px;min-width:0}
.tsopp b{font:600 13px/1.2 'Chakra Petch',sans-serif;letter-spacing:.04em;text-transform:uppercase;color:var(--white);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tsmaps{display:flex;gap:3px}
.tsmaps i{width:7px;height:7px;display:block}
.tsmaps i.w{background:var(--win)}
.tsmaps i.l{background:var(--red)}
.tsres{display:inline-flex;align-items:center;gap:8px;font:700 14px/1 'Chakra Petch',sans-serif;color:var(--white);
  font-variant-numeric:tabular-nums;white-space:nowrap}
.tsres em{font-style:normal;width:22px;height:22px;display:grid;place-items:center;font-size:11px;border:1px solid var(--line)}
.tsres.w em{color:var(--win);border-color:rgba(59,214,113,.45);background:rgba(59,214,113,.1)}
.tsres.l em{color:var(--red);border-color:rgba(255,75,92,.45);background:rgba(255,75,92,.1)}

@media (max-width:900px){
  .tsgrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:560px){
  .tstiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tstile{padding:14px 15px}
  .tstile .tsv{font-size:21px}
  .tsrow{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"opp res" "dt maps";row-gap:6px}
  .tsrow .tsopp{grid-area:opp}
  .tsrow .tsres{grid-area:res}
  .tsrow .tsdt{grid-area:dt}
  .tsrow .tsmaps{grid-area:maps;justify-self:end}
}

/* ── Bearbeiten auf der Seite ───────────────────────────────────── */
.tedico{width:13px;height:13px;flex:none;display:inline-block;vertical-align:-2px;color:var(--dim)}
.edbar .tedmark{display:inline-flex;align-items:center;gap:8px;font:600 11px/1 'Chakra Petch',sans-serif;
  letter-spacing:.16em;text-transform:uppercase;color:var(--white);padding:7px 11px;border:1px solid var(--brand);
  background:rgba(120,64,224,.14)}
body.t-academy .edbar .tedmark{border-color:var(--gold);background:rgba(253,197,0,.08)}
.edbar .tedmark .edico{width:12px;height:12px}
.edbar .tedtip{font-size:12.5px;color:var(--dim);flex-basis:100%}
/* Die Rolle hinter dem Namen als Tag (02.10.2026). */
.edbar .edwho{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 9px}
.edbar .edwho .tier{padding:4px 8px;font-size:9.5px;max-width:100%}
.tedit .edbar{position:relative}

/* Hinweise mit Schloss */
.tedlock{display:flex;align-items:center;gap:8px;margin:12px 0 0;font-size:12.5px;color:rgba(255,255,255,.7)}
.tednote{display:flex;align-items:center;gap:9px;margin:-12px 0 14px;padding:9px 12px;
  border-left:2px solid var(--line2);background:var(--s1);font-size:12.5px;color:var(--dim)}

/* Kopf: Banner oben rechts, Logo unter dem Wappen */
.tedit .thead .in{padding-bottom:84px}
.tedban{position:absolute;top:14px;right:var(--gut);z-index:3}
.tedlogo{position:absolute;left:var(--gut);bottom:18px;z-index:3}
.tedup{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px;
  background:color-mix(in srgb,var(--black) 78%,transparent);border:1px solid var(--line2);backdrop-filter:blur(8px)}
.tedup .btn{min-height:32px;padding:0 12px;font-size:10.5px;letter-spacing:.11em}
.tedmasse{font-size:11px;color:var(--dim);font-variant-numeric:tabular-nums}
.tedup .uplin{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}

/* Felder in Kaesten und Karten */
.tedro b{display:inline-flex;align-items:center;gap:6px;color:var(--dim)}
.tedfc{display:flex;flex-direction:column;gap:0;margin-top:2px}
.tedhint{font-size:12.5px;color:var(--dim);margin:0;line-height:1.55}
.tedcard{padding:22px var(--pad)}
.tedcard.card:hover{transform:none}
.tedcard .tedhint{margin-bottom:16px}
.tedkader .kaderteil{margin-top:0}
.tedkader .kaderteil .sh{padding-top:0;padding-bottom:12px}
.tedkader .kaderteil .sh h2{font-size:15px;letter-spacing:.08em}
.tedkader .khead{margin-bottom:16px}
.tedkader > .hint{font-size:12px;color:var(--dim);margin:14px 0 0}
.tedkader .tbl td{padding-top:10px;padding-bottom:10px}

/* Was bearbeitet werden kann, ist leise markiert. */

@media (max-width:700px){
  .tedban{top:10px;right:10px;left:10px;display:flex;justify-content:flex-end}
  .tedlogo{left:var(--gut);right:var(--gut);bottom:14px}
  .tedmasse{flex-basis:100%}
  .tedit .thead .in{padding-top:96px;padding-bottom:118px}
  .edbar .edwho{flex-basis:100%}
}

/* Knoepfe mit hidden bleiben weg, auch wenn .btn eine Anzeige setzt. */
.tedup [hidden]{display:none}
.tedkader .hint{font-size:12.5px;line-height:1.6;color:var(--dim);margin:6px 0 0}

/* Kader auf dem Telefon: Name oben, Auswahlfelder darunter, sonst
   schoebe die Tabelle die Seite seitlich auf. */
@media (max-width:700px){
  .tedkader .tbl,.tedkader .tbl tbody{display:block}
  .tedkader .tbl tr{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}
  .tedkader .tbl tr:last-child{border-bottom:0}
  .tedkader .tbl td{display:block;padding:0;border:0;min-width:0}
  .tedkader .tbl td:first-child{flex-basis:100%}
  .tedkader .tbl td:not(:first-child):not(.num){flex:1 1 0}
  .tedkader .tbl td.num{flex:none}
  .tedkader .tbl select{width:100%;min-width:0}
}
@media (max-width:560px){
  .tstbl:not(.tsplay):not(.tskompakt) th:nth-child(2),.tstbl:not(.tsplay):not(.tskompakt) td:nth-child(2){display:none}
  .tsbar{display:none}
}

/* ── Rollenvergabe im Kader-Editor (R2, 02.10.2026) ──────────────
   Gilt auf der Teamseite und im Dashboard: kader.js laedt diese Datei
   dort nach, wenn sie fehlt. Alles unter .kaderbox, damit sonst nichts
   im Dashboard anders aussieht. */
.kaderbox .btn.sm{min-height:32px;padding:0 12px;font-size:10.5px;letter-spacing:.1em}
.kaderbox [data-kart] .empty{padding:14px 12px;font-size:13px}
.kaderbox .kzusatz{font-size:12px;color:var(--dim);margin:-6px 0 10px}
.kaderbox .kaderteil + .kaderteil{margin-top:22px}
.kaderbox .ksuche{margin:16px 0 20px;display:flex;flex-direction:column;gap:8px}
.kaderbox .kslabel{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}
.kaderbox .ksuche input{background:var(--black);border:1px solid var(--line);color:var(--txt);
  font:400 14.5px/1.4 Barlow,sans-serif;padding:11px 13px;width:100%;max-width:520px;transition:border-color .18s,background .18s}
.kaderbox .ksuche input:focus{outline:none;border-color:var(--brand)}
.kaderbox .ksliste{display:flex;flex-direction:column;max-width:720px}
.kaderbox .kshint{font-size:12.5px;color:var(--dim);padding:6px 0}
.kaderbox .kstreffer{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.kaderbox .kstreffer:last-child{border-bottom:0}
.kaderbox .ksbild{width:34px;height:34px;flex:none;border:1px solid var(--line);background:var(--s2);overflow:hidden}
.kaderbox .ksbild img{width:100%;height:100%;object-fit:cover}
.kaderbox .ksname{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.kaderbox .ksname b{font:600 14px/1.2 'Chakra Petch',sans-serif;letter-spacing:.04em;color:var(--white);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kaderbox .ksname small{font-size:12px;color:var(--dim)}
.kaderbox .kskonto{color:var(--gold) !important;font-size:12px}
.kaderbox .kshier{color:var(--brand-l) !important}
.kaderbox .ksknoepfe{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.kaderbox .ksknoepfe small{font-size:12px;color:var(--dim)}
.kaderbox .ksknoepfe .btn:disabled{opacity:.35;cursor:default}
.kaderbox .ktry{display:flex;gap:6px;flex-wrap:wrap}
.kaderbox .kwechsel{margin:0 0 20px;padding:14px 16px;border:1px solid rgba(253,197,0,.35);background:rgba(253,197,0,.05)}
.kaderbox .kwechsel h3{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--white);margin-bottom:10px}
.kaderbox .kwzeile{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;
  padding:8px 0;border-top:1px solid var(--line);font-size:13.5px}
.kaderbox .kwzeile:first-of-type{border-top:0}
.kaderbox .kwzeile b{color:var(--white)}
.kaderbox .kwzeile small{color:var(--dim);font-size:12px}
.kaderbox .kwknoepfe{display:flex;gap:6px}
@media (max-width:700px){
  .kaderbox .kstreffer{flex-wrap:wrap}
  .kaderbox .ksknoepfe{flex-basis:100%;justify-content:flex-start;padding-left:46px}
}

/* Transfer-History */
.trtbl .trmove{white-space:nowrap}
.trtbl .trmove span{color:var(--dim);font-weight:400}
.trtbl a.trteam{color:var(--white);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.trtbl a.trteam:hover{color:var(--brand-l)}
body.t-academy .trtbl a.trteam:hover{color:var(--gold)}
@media (max-width:560px){
  .trtbl th:nth-child(3),.trtbl td:nth-child(3){display:none}
  .trtbl .trmove{white-space:normal}
}

/* Schalter "Team role" an der Coach-Zeile im Kader-Editor (R1e, 02.10.2026).
   Gleiche Machart wie die Schalter im Rollen-Editor (.rsw in site.css). */
.kaderbox .kteamrolle{white-space:nowrap}
.kaderbox .ktr{display:inline-flex;align-items:center;gap:9px;cursor:pointer;user-select:none}
.kaderbox .ktr input{position:absolute;width:1px;height:1px;opacity:0;margin:0}
.kaderbox .ktrb{position:relative;width:38px;height:22px;flex:none;border:1px solid var(--line2);background:var(--s2);
  transition:background .18s,border-color .18s}
.kaderbox .ktrb::after{content:"";position:absolute;top:3px;left:3px;width:14px;height:14px;background:var(--dim);
  transition:transform .2s var(--e),background .18s}
.kaderbox .ktr input:checked + .ktrb{background:rgba(157,78,221,.28);border-color:var(--brand)}
.kaderbox .ktr input:checked + .ktrb::after{transform:translateX(16px);background:var(--brand-l)}
.kaderbox .ktr input:focus-visible + .ktrb{outline:2px solid var(--brand);outline-offset:2px}
.kaderbox .ktr input:disabled + .ktrb{opacity:.45}
.kaderbox .ktr:has(input:disabled){cursor:not-allowed}
.kaderbox .ktrt{font:600 11.5px/1 'Chakra Petch',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:var(--txt)}

/* Maps kompakt ohne Querscrollen (02.10.2026) */
.tskompakt{width:100%}
/* Lange Map-Namen umbrechen: .tstbl ist nowrap, auf 390 px schob ein langer Name die Seite seitlich (B1, 02.10.2026). */
.tskompakt td:first-child,.tskompakt th:first-child{white-space:normal}
.tskompakt td:first-child .al{overflow-wrap:anywhere}
.tskompakt .tsmode{display:block;margin-top:3px;font-size:12px;color:var(--dim);white-space:nowrap}
.tskompakt .tswl .w{color:var(--win)}
.tskompakt .tswl .l{color:var(--red)}
.tskompakt .tswl b{font-weight:600}
.tskompakt .tsqzelle b{font:600 12.5px/1 'Chakra Petch',sans-serif;color:var(--white);font-variant-numeric:tabular-nums}
.tskompakt .tsqzelle .tsbar{display:block;margin:7px 0 0 auto;width:56px}

/* Upcoming und Results einklappbar (02.10.2026) */
.sh .klappknopf{margin-left:10px;margin-right:auto;align-self:center;width:30px;height:30px;display:inline-grid;place-items:center;background:none;border:1px solid var(--line);color:var(--dim);cursor:pointer;transition:color .2s,border-color .2s}
.sh .klappknopf:hover{color:var(--white);border-color:var(--line2)}
.sh .klappknopf svg{width:16px;height:16px;transition:transform .2s var(--e)}
section.klappzu .klappknopf svg{transform:rotate(-90deg)}
section.klappzu > :not(.sh){display:none}

/* ── Seitenleiste buendig mit der ersten Karte (Alexander, 02.10.2026) ──
   Die Seitenleiste (About, Information, Competing in) beginnt auf der
   Hoehe der Kader-Karte, nicht der Ueberschrift "Active roster"
   darueber. Sie rueckt genau um den Kopf dieses ersten Abschnitts nach
   unten: eine Zeile der h2 plus der Abstand unter dem Kopf. Beides
   steht hier als Variable und gilt fuer den Kopf UND den Versatz, damit
   die zwei Werte nie auseinanderlaufen. Die Werte selbst sind die aus
   site.css (.sh, .sh h2, h2-Zeilenhoehe). Unter 1000 px steht die
   Seitenleiste unter dem Inhalt, dort entfaellt der Versatz. */
.split2{--kopf-schrift:clamp(1.45rem,2.7vw,2rem);--kopf-zeile:1.02;--kopf-unten:24px}
.split2 #roster > .sh{padding-bottom:var(--kopf-unten)}
.split2 #roster > .sh h2{font-size:var(--kopf-schrift);line-height:var(--kopf-zeile)}
.split2 > .side{margin-top:calc(var(--kopf-schrift) * var(--kopf-zeile) + var(--kopf-unten))}
@media (max-width:1000px){
  .split2 > .side{margin-top:0}
}

/* ── Bearbeiten-Block oben (Alexander, 02.10.2026) ─────────────────
   Alle Seitendaten ausser Kader, Logo und Banner werden in einem Block
   unter der Bearbeiten-Leiste bearbeitet, die Seitenleiste bleibt die
   Ansicht. Zwei Spalten auf dem Desktop, eine auf dem Telefon; jeder
   Abschnitt ist eine Karte wie im Rest der Seite (--gap, --pad). */
.tedblock{margin-top:var(--gap)}
.tedgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap);align-items:start}
.tedsec{border:1px solid var(--line);background:var(--s1);padding:22px var(--pad);display:flex;flex-direction:column;gap:14px;min-width:0}
.tedsec.breit{grid-column:1/-1}
.tedsec h3{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin:0}
.tedsec .kv{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13.5px}
.tedsec .kv span{color:var(--dim)}
.tedsec .tedfc .kv:last-of-type{border-bottom:0}
.tedpaar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--gap)}
.tedsec .tpmodes{flex-wrap:wrap}
.tedsec .achadd{align-self:flex-start;margin-top:0}
@media (max-width:760px){
  .tedgrid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:420px){
  .tedpaar{grid-template-columns:minmax(0,1fr)}
}

/* ── Manage roster (P1, 02.10.2026) ──────────────────────────────
   Eigene Ansicht ueber der Teamseite (rosterOeffnen in site.js) und im
   Dashboard unter Teams, Roster (kader.js). Ein Abschnitt je Position,
   bei jeder Person die Discord-Rollen als kleine Tags. */
.tbedit{gap:8px}
body.rmauf{overflow:hidden}
.rmover{position:fixed;inset:0;z-index:150;background:rgba(5,4,10,.8);overflow-y:auto;overscroll-behavior:contain;
  padding:56px 16px 48px;outline:none}
.rmfenster{max-width:960px;margin:0 auto}
.rmbox{padding:22px var(--pad) 30px;background:var(--s1);border-color:var(--line2)}
.rmbox:hover{transform:none}
.kaderbox .rmkopf{margin-bottom:18px}
.kaderbox .rmkopf .kheadzeile{justify-content:flex-start;flex-wrap:wrap;gap:10px 12px}
.kaderbox .rmteam{font:600 12px/1 'Chakra Petch',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--brand-l)}
.kaderbox .rmkopf .dcneu{margin-left:auto}
.kaderbox .rmgruppe{font:700 13px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--white);
  margin:30px 0 4px;padding-top:18px;border-top:1px solid var(--line2)}
.kaderbox .rmgruppe + .kzusatz{margin:6px 0 4px}
.kaderbox .rmteil{padding:14px 0 6px}
.kaderbox .rmteil + .rmteil{border-top:1px solid var(--line)}
.kaderbox .rmteilkopf{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.kaderbox .rmteilkopf h3{font:600 12px/1.2 'Chakra Petch',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--white)}
.kaderbox .rmteil .kzusatz{margin:-2px 0 8px}
.kaderbox .rmteil .empty{padding:10px 0;font-size:13px;text-align:left;border:0;background:none}
.kaderbox .rmliste{display:flex;flex-direction:column}
.kaderbox .rmzeile{display:grid;grid-template-columns:230px minmax(0,1fr) auto 34px;align-items:center;gap:8px 14px;
  padding:9px 0;border-bottom:1px solid var(--line)}
.kaderbox .rmzeile:last-child{border-bottom:0}
.kaderbox .rmwer{display:flex;align-items:center;gap:6px;min-width:0}
.kaderbox .rmwer .al{font:600 14px/1.3 'Chakra Petch',sans-serif;letter-spacing:.03em;color:var(--white);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.kaderbox .rmwer .leadmark{flex:none;display:block;width:15px;height:11px}
.kaderbox .rmwer .kmarke{flex:none;margin-left:4px}
.kaderbox .rmtags{display:flex;flex-wrap:wrap;gap:4px;min-width:0}
.kaderbox .rmtag{display:inline-block;padding:3px 7px;border:1px solid var(--line2);color:var(--dim);background:rgba(255,255,255,.02);
  font:600 10px/1.2 'Chakra Petch',sans-serif;letter-spacing:.06em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.kaderbox .rmmehr{display:flex;align-items:center;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.kaderbox .rmmehr select{min-width:84px}
/* Starter oder 6th man (Schema 87): zwei Knoepfe als ein Umschalter,
   gespeichert sofort wie die Spielrolle. */
.kaderbox .rmbank{display:inline-flex;border:1px solid var(--line2);flex:none}
.kaderbox .rmbank button{min-height:32px;padding:0 11px;border:0;background:none;color:var(--dim);cursor:pointer;
  font:600 11px/1 'Chakra Petch',sans-serif;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.kaderbox .rmbank button + button{border-left:1px solid var(--line2)}
.kaderbox .rmbank button:hover:not(:disabled){color:var(--white);background:rgba(255,255,255,.05)}
.kaderbox .rmbank button[aria-pressed="true"]{background:rgba(157,78,221,.28);color:var(--white)}
.kaderbox .rmbank button:focus-visible{outline:2px solid var(--brand);outline-offset:-2px}
.kaderbox .rmbank button:disabled{cursor:not-allowed;opacity:.55}
.kaderbox .rmweg{display:flex;justify-content:flex-end}
/* Aufstiegsknoepfe (Make player, Make sub, Make coach ...): alle so breit
   wie der breiteste, Text einzeilig (06.10.2026). */
.kaderbox .rmknoepfe{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:6px;flex:none}
.kaderbox .rmknoepfe .btn{white-space:nowrap;justify-content:center;text-align:center;min-width:104px}
.kaderbox .rmsuche{margin:10px 0 6px;padding:12px 14px;border:1px solid var(--line);background:var(--black)}
.kaderbox .rmsuche .ksliste{max-width:none}
.kaderbox.rmspeichert .rmansicht{opacity:.6;pointer-events:none;transition:opacity .15s}
/* Die Zeilen richten sich nach der Breite der Ansicht, nicht des Fensters:
   im Seitenpanel des Dashboards ist sie schmal, auch auf breitem Bildschirm.
   Vorher liefen dort Tags, Knoepfe und Muelleimer uebereinander und aus dem
   Panel heraus (06.10.2026). */
.kaderbox .rmansicht{container-type:inline-size}
@container (max-width:720px){
  .kaderbox .rmzeile{grid-template-columns:minmax(0,1fr) 34px;gap:6px 10px}
  .kaderbox .rmwer{grid-column:1}
  .kaderbox .rmweg{grid-column:2;grid-row:1}
  .kaderbox .rmtags,.kaderbox .rmmehr{grid-column:1 / -1}
  .kaderbox .rmmehr{justify-content:flex-start}
  .kaderbox .rmmehr:empty{display:none}
  .kaderbox .rmsuche{padding:10px}
  .kaderbox .kstreffer{flex-wrap:wrap}
  .kaderbox .ksname b{white-space:normal}
}
@media (max-width:760px){
  .rmover{padding:12px 0 24px}
  .rmbox{padding:16px 14px 22px}
  .kaderbox .rmzeile{grid-template-columns:minmax(0,1fr) 34px;gap:6px 10px}
  .kaderbox .rmwer{grid-column:1}
  .kaderbox .rmweg{grid-column:2;grid-row:1}
  .kaderbox .rmtags,.kaderbox .rmmehr{grid-column:1 / -1}
  .kaderbox .rmmehr{justify-content:flex-start}
  .kaderbox .rmmehr:empty{display:none}
  .kaderbox .rmsuche{padding:10px}
  .kaderbox .kstreffer{flex-wrap:wrap}
  .kaderbox .ksname b{white-space:normal}
}

/* Hinweis im Bearbeiten-Zustand: Kader und Staff unter Manage roster. */
.tednote.tedrm{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}
.tednote.tedrm .edico{width:14px;height:14px;color:var(--dim)}
.tednote.tedrm .btn{margin-left:auto}

/* Teamname im Bearbeiten-Block oben (P1). */
.tednamezeile{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}
.tednamevor{display:inline-flex;align-items:center;padding:0 12px;border:1px solid var(--line);background:var(--s2);
  font:600 13px/1 'Chakra Petch',sans-serif;letter-spacing:.06em;color:var(--dim)}
.tednamezeile input{flex:1 1 160px;min-width:0}
.tednamezeile .btn{min-height:auto}

/* Tryout Staff auf der oeffentlichen Teamseite, nur wenn befuellt (P1). */
.trystaff{font:600 12px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin:26px 0 6px}
/* Stats access in Manage roster (S2, 03.10.2026): Hinweis ohne Team Leader,
   Abrufe der Stats fuers Kernteam. */
/* Im Dashboard erbt .hint white-space:nowrap; in Manage roster sollen die
   Hinweise umbrechen, sonst laufen sie auf dem Telefon aus der Ansicht. */
.kaderbox .rmansicht .hint{white-space:normal}
.kaderbox .rmfreihinweis{margin:8px 0 4px;padding:9px 12px;border-left:2px solid var(--gold);background:rgba(253,197,0,.06);
  color:var(--txt);font-size:13px;line-height:1.45}
.kaderbox .rmabrufe{max-height:280px;overflow:auto}
.kaderbox .rmabruf{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:4px 14px;align-items:center;
  padding:7px 0;border-bottom:1px solid var(--line);font-size:13px}
.kaderbox .rmabruf:last-child{border-bottom:0}
.kaderbox .rmabruf .al{font:600 13px/1.3 'Chakra Petch',sans-serif;color:var(--white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kaderbox .rmabrufwas{color:var(--dim);min-width:0}
.kaderbox .rmabrufwas a{color:var(--brand-l)}
.kaderbox .rmwann{color:var(--dim);font-variant-numeric:tabular-nums;white-space:nowrap}
@media (max-width:560px){
  .kaderbox .rmabruf{grid-template-columns:minmax(0,1fr) auto}
  .kaderbox .rmabrufwas{grid-column:1;grid-row:2}
}

/* ── Tabelle der FACEIT-Konferenz (18.10.2026, site.js renderStandings) ──
   Gleiche Kopfschrift wie .tbl, Zahlen rechtsbuendig in fester Breite.
   Das Team der Seite traegt die Markenfarbe links und einen leichten
   Grund, andere Telacy-Teams nur den Link. Siege und Niederlagen in
   denselben Farben wie die Saisonleiste darueber. */
.sh .stsub{font:600 10.5px/1.4 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;
  color:var(--dim);text-align:right}
.stwrap{overflow-x:auto}
.sttbl{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.sttbl th{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;
  color:var(--dim);padding:14px 0 12px 12px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.sttbl td{padding:11px 0 11px 12px;border-bottom:1px solid var(--line);color:var(--txt);text-align:right;white-space:nowrap}
.sttbl tbody tr:last-child td{border-bottom:0}
.sttbl .stpos{width:44px;text-align:left;padding-left:10px;color:var(--dim);
  font:600 13px/1 'Chakra Petch',sans-serif}
.sttbl .stteam{text-align:left;width:100%;max-width:0;overflow:hidden;text-overflow:ellipsis}
.sttbl .stteam a{color:var(--white);text-decoration:none;transition:color .18s}
.sttbl .stteam a:hover,.sttbl .stteam a:focus-visible{color:var(--brand-l);text-decoration:underline}
.sttbl .stteam small{font:600 10px/1 'Chakra Petch',sans-serif;letter-spacing:.12em;color:var(--red)}
.sttbl td.w{color:var(--win)}
.sttbl td.l{color:var(--red)}
.sttbl .stpts{padding-right:10px;font-weight:700;color:var(--white)}
.sttbl tr.me td{background:rgba(120,64,224,.12);color:var(--white)}
.sttbl tr.me td.stpos{box-shadow:inset 3px 0 0 var(--brand);color:var(--white)}
.sttbl tr.me .stteam{font-weight:600}
.sttbl tr.me td.w{color:var(--win)}
.sttbl tr.me td.l{color:var(--red)}
.sttbl tr.dq td{opacity:.55}
.sttbl abbr{text-decoration:none;cursor:help}
.sttbl tr.stgap td{text-align:center;color:var(--dim);padding:6px 0;letter-spacing:.3em}
/* Telacy-Teams mit farbigem Tag, Knopf Update (19.10.2026) */
/* Negativer Rand: Zeilen mit Tag so hoch wie die anderen. */
.sttbl .sttag{padding:3px 7px;margin:-4px 0;vertical-align:middle;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}
/* Feste Stufenfarben: Auf einer Teamseite mit eigener Farbe stellt
   body.t-eigen --brand-l und --gold auf die Teamfarbe um; die Tags
   anderer Teams sollen aber ihre eigene Farbe zeigen. */
.sttbl .sttag.main{color:#B99CF5;border-color:rgba(120,64,224,.5);background:rgba(120,64,224,.12)}
.sttbl .sttag.academy{color:#FDC500;border-color:rgba(253,197,0,.42);background:rgba(253,197,0,.1)}
.sttbl .sttag .tgrad{display:inline}
.sttbl a.sttaglink{text-decoration:none}
.sttbl a.sttaglink:hover .sttag,.sttbl a.sttaglink:focus-visible .sttag{filter:brightness(1.3)}
.stalter{display:flex;flex-wrap:wrap;gap:0 4px}
.stknoepfe{display:flex;flex-wrap:wrap;gap:8px;margin-left:auto}
.stupd[disabled]{opacity:.6;cursor:progress}
.stfoot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;
  padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--dim)}
@media (max-width:560px){
  .sttbl th,.sttbl td{padding-left:8px}
  .sttbl .stpos{width:34px;padding-left:6px}
  .sh .stsub{max-width:55%}
}

/* ── Playoff-Bracket (21.10.2026) ────────────────────────────────
   Winner Bracket mit Grand Final rechts, darunter das Loser Bracket.
   Spalten je Runde, Spiele gleichmaessig verteilt, waagerecht scrollbar.
   Weg des Teams dieser Seite hervorgehoben, Telacy-Teams mit Tag. */
.tabs a[hidden]{display:none}
.bk-karte{padding:18px 22px 16px}
.bk-platz{display:flex;align-items:baseline;gap:10px;margin:0 0 16px;font-size:13px;color:var(--dim)}
.bk-platz b{font:700 20px/1 'Chakra Petch',sans-serif;color:var(--white)}
.bk-wrap{display:flex;flex-direction:column;gap:28px;overflow-x:auto;padding-bottom:8px}
.bk-h{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--dim);margin:0 0 12px}
.bk-reihe{display:flex;gap:22px;align-items:stretch;width:max-content}
.bk-runde{display:flex;flex-direction:column;width:214px;flex:none}
.bk-kopf{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;padding-bottom:7px;border-bottom:1px solid var(--line);font-size:11.5px;color:var(--dim)}
.bk-kopf b{font:600 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--txt)}
.bk-spiele{display:flex;flex-direction:column;justify-content:space-around;gap:14px;flex:1}
.bk-m{border:1px solid var(--line2);background:var(--black)}
.bk-m.mein{border-color:var(--brand-l);box-shadow:0 0 0 1px var(--brand-l)}
.bk-m.live{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}
.bk-m.leer{border-style:dashed}
.bk-t{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 10px;min-height:38px;font-size:13px;min-width:0}
.bk-t + .bk-t{border-top:1px solid var(--line)}
.bk-t > a,.bk-t > span{min-width:0}
.bk-t.ich{background:rgba(120,64,224,.14)}
.bk-t.l > :not(.bk-s){opacity:.55}
.bk-s{font:700 15px/1 'Chakra Petch',sans-serif;min-width:14px;text-align:right;color:var(--txt)}
.bk-t.w .bk-s{color:var(--win)} .bk-t.l .bk-s{color:var(--red)}
.bk-n{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--txt)}
.bk-t.w .bk-n{color:var(--white);font-weight:600}
.bk-tbd{color:var(--dim)}
.bk-link{text-decoration:none;display:block;min-width:0}
.bk-link:hover .bktag{filter:brightness(1.3)}
.bktag{padding:3px 7px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle}
.bktag .tgrad{display:inline}
/* Feste Stufenfarben wie in der Tabelle: body.t-eigen stellt sonst Lila und Gold auf die Teamfarbe um. */
.bktag.main{color:#B99CF5;border-color:rgba(120,64,224,.5);background:rgba(120,64,224,.12)}
.bktag.academy{color:#FDC500;border-color:rgba(253,197,0,.42);background:rgba(253,197,0,.1)}
.bk-fuss{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;padding:5px 10px;border-top:1px solid var(--line);font-size:11px;color:var(--dim)}
.bk-fuss a{color:var(--txt);text-decoration:none} .bk-fuss a:hover{color:var(--white);text-decoration:underline}
#playoffs .stfoot{margin-top:14px}
@media (max-width:560px){ .bk-karte{padding:14px 12px} .bk-runde{width:190px} }
/* Playoffs in voller Breite ueber den zwei Spalten (21.10.2026) */
.bk-sec{margin-top:44px}
.bk-sec + .split2{margin-top:10px !important}
/* Breiter als die Inhaltsspalte (21.10.2026): Das Loser Bracket eines
   16er-Playoffs hat sechs Runden. Bis 1440 px, mittig, nie breiter als
   der Bildschirm (64 px Rand, damit die Scrollleiste nichts verbreitert). */
.bk-sec{width:min(1440px, calc(100vw - 64px));margin-left:calc(50% - min(720px, 50vw - 32px))}
.bk-runde{width:200px}
.bk-reihe{gap:16px}
@media (max-width:760px){ .bk-sec{width:auto;margin-left:0} .bk-runde{width:190px} }

/* ── Teams mit Logo, Bracket wie Liquipedia, FACEIT-Kader (21.10.2026) ── */
.ft{display:inline-flex;align-items:center;gap:8px;min-width:0;max-width:100%;vertical-align:middle}
.ft .cx{flex:none}
.ft-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
a.ft-a{color:inherit;text-decoration:none;display:inline-flex;min-width:0;max-width:100%}
a.ft-a:hover .ft-n,a.ft-a:focus-visible .ft-n{color:var(--white);text-decoration:underline}
a.ft-a:hover .sttag,a.ft-a:hover .bktag{filter:brightness(1.3)}
.sttbl .stteam .ft{max-width:100%}
.sttbl .stteam .cx.xs,.bk-t .cx.xs{width:22px;height:22px}

/* Bracket: feste Flaeche, Karten und Koepfe absolut, Linien als SVG darunter. */
.bk-flaeche{position:relative}
.bk-linien{position:absolute;left:0;top:0;fill:none;stroke:#8B8B96;stroke-width:1.5;pointer-events:none}
.bk-flaeche .bk-kopf{position:absolute;height:32px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  margin:0;padding:0 8px;border:0;background:var(--s3, #26262d);border-bottom:1px solid var(--line2);text-align:center}
.bk-flaeche .bk-kopf b{font:600 10.5px/1.1 'Chakra Petch',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--white);white-space:nowrap}
.bk-flaeche .bk-kopf span{font-size:10.5px;color:var(--dim);line-height:1}
.bk-flaeche .bk-m{position:absolute;display:flex;background:var(--s1, #18181d);border:1px solid var(--line2)}
.bk-zeilen{flex:1;min-width:0;display:flex;flex-direction:column}
.bk-flaeche .bk-t{flex:1;min-height:0;padding:0 8px;font-size:12.5px;grid-template-columns:minmax(0,1fr) 22px;gap:6px}
.bk-flaeche .bk-t + .bk-t{border-top:1px solid var(--line)}
.bk-i{flex:none;width:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:var(--s2, #1f1f25);border-left:1px solid var(--line)}
.bk-i a,.bk-i span{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#C9CED6;color:#15151a;
  font:700 10px/1 Georgia,serif;font-style:italic;text-decoration:none}
.bk-i a:hover{background:var(--white)}
.bk-live{width:7px;height:7px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px rgba(255,75,92,.25)}
.bk-flaeche .bktag{padding:2px 6px;font-size:9.5px}

/* Kader beim Darueberfahren (nur Maus, site.js kaderHover) */
.fkt-box{position:fixed;z-index:300;width:260px;max-height:70vh;overflow:auto;padding:12px 14px;background:var(--s1, #18181d);
  border:1px solid var(--line2);box-shadow:0 12px 32px rgba(0,0,0,.45);font-size:13px;pointer-events:none}
.fkt-kopf{display:flex;flex-direction:column;gap:3px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
.fkt-kopf b{font:600 13px/1.2 'Chakra Petch',sans-serif;color:var(--white)}
.fkt-kopf span{font-size:11px;color:var(--dim)}
.fkt-gr + .fkt-gr{margin-top:10px}
.fkt-h{display:block;font:600 9.5px/1 'Chakra Petch',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--dim);margin-bottom:6px}
.fkt-gr ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:5px}
.fkt-gr li{display:flex;align-items:center;gap:8px;color:var(--txt)}
.fkt-gr li small{margin-left:auto;color:var(--dim);font-size:11px}
.fkt-c{font:700 9px/1 'Chakra Petch',sans-serif;font-style:normal;color:var(--gold, #FDC500);border:1px solid rgba(253,197,0,.42);padding:2px 4px}
.fkt-leer{margin:0;color:var(--dim)}
/* Kader-Kasten in Stats und Scouting */
.fkt-liste{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px 28px}
.fkt-liste .fkt-gr + .fkt-gr{margin-top:0}
.fkt-karte{margin-bottom:var(--gap)}
/* Schmalere Bracket-Karten (21.10.2026) */
.bk-flaeche .bk-t{font-size:12px;padding:0 6px}
.bk-flaeche .bk-t .cx.xs{width:20px;height:20px}
.bk-flaeche .bk-kopf b{font-size:9.5px;letter-spacing:.05em}

/* Tiebreaker der Tabelle (21.10.2026): "T" neben den Punkten, Fenster wie bei FACEIT */
.sttb{display:inline-grid;place-items:center;width:18px;height:18px;margin-left:6px;vertical-align:1px;border-radius:50%;
  border:0;background:#3A3A44;color:var(--white);font:700 9.5px/1 'Chakra Petch',sans-serif;cursor:pointer;padding:0}
.sttb:hover,.sttb:focus-visible{background:var(--brand);outline:none}
.sttb-box{position:fixed;z-index:300;min-width:170px;padding:10px 12px;background:var(--s1,#1A1A1F);border:1px solid var(--line2);
  box-shadow:0 10px 28px rgba(0,0,0,.45);font-size:12.5px;color:var(--txt);pointer-events:none}
.sttb-h{display:block;font:600 14px/1.2 Barlow,sans-serif;color:var(--white);margin-bottom:6px}
.sttb-box ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}
.sttb-box li{display:flex;justify-content:space-between;gap:12px;color:var(--dim)}
.sttb-box li b{color:var(--txt);font-weight:600}
/* Tag neben dem Logo mittig (21.10.2026): .tier richtet sich sonst an der
   Oberkante aus (align-self:flex-start, site.css), dazu der alte Rand -4px
   aus der Zeit ohne Logo. Kein Unterstrich am Tag, nur am Namen. */
.ft > .tier,.sttbl .ft .sttag,.bk-flaeche .ft .bktag{align-self:center;margin:0}
.sttbl .stteam a.ft-a,.sttbl .stteam a.ft-a:hover,.sttbl .stteam a.ft-a:focus-visible{text-decoration:none}
/* Gleiche Zeilenhoehe mit und ohne Link (21.10.2026): Logo und Name als
   Block in fester Hoehe, kein Platz fuer die Unterlaenge des Links. */
.sttbl .stteam > .ft,.sttbl .stteam > a.ft-a{display:flex;align-items:center;height:24px;vertical-align:top}
.sttbl .stteam > a.ft-a > .ft{height:24px}
/* Am Telefon: lange Tags kuerzen statt abschneiden (.tier hat sonst flex:none). */
.ft > .tier{flex:0 1 auto;min-width:0}
.sttbl .stteam > a.ft-a,.sttbl .stteam > .ft{max-width:100%;min-width:0}
.sttbl .stteam a.ft-a > .ft{min-width:0;max-width:100%}

/* ── FACEIT-Kader als Karten (21.10.2026) ────────────────────────
   Monogramm, Level im Farbschema von FACEIT (1 weiss, 2-3 gruen,
   4-7 gelb, 8-9 orange, 10 rot), Rolle, Captain, Land. Farbkante je
   Rolle: Spieler Lila, Ersatz Silber, Coach Gold. */
.fkt-liste{display:block}
.fkt-karten{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:12px}
.fkt-k{--rk:var(--brand-l);position:relative;display:flex;flex-direction:column;gap:9px;padding:14px 14px 12px;min-width:0;
  background:linear-gradient(160deg,color-mix(in srgb,var(--rk) 14%,var(--s2)) 0%,var(--s1) 62%);border:1px solid var(--line2);
  border-top:2px solid var(--rk);transition:transform .18s ease,border-color .18s ease}
.fkt-k:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--rk) 55%,var(--line2))}
.fkt-k.r-substitute{--rk:#C9CED6}
.fkt-k.r-coach{--rk:#FDC500}
.fkt-oben{display:flex;align-items:center;justify-content:space-between;gap:8px}
.fkt-mono{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;flex:none;
  background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--rk) 55%,#fff 10%),color-mix(in srgb,var(--rk) 30%,var(--black)) 70%);
  color:var(--white);font:700 15px/1 'Chakra Petch',sans-serif;letter-spacing:.04em;box-shadow:0 0 0 2px color-mix(in srgb,var(--rk) 40%,transparent)}
.fkt-lvl{--lv:#EEEEEE;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;flex:none;
  background:conic-gradient(var(--lv) 0 100%);padding:3px}
.fkt-lvl b{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--black);color:var(--lv);font:700 12px/1 'Chakra Petch',sans-serif}
.fkt-lvl.l2{--lv:#1CE400} .fkt-lvl.l4{--lv:#FFC800} .fkt-lvl.l8{--lv:#FF6309} .fkt-lvl.l10{--lv:#FE1F00}
.fkt-name{font:700 15px/1.15 'Chakra Petch',sans-serif;letter-spacing:.03em;color:var(--white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fkt-tags{display:flex;flex-wrap:wrap;gap:6px}
.fkt-rolle,.fkt-cap{font:600 9.5px/1 'Chakra Petch',sans-serif;letter-spacing:.12em;text-transform:uppercase;padding:4px 6px;border:1px solid}
.fkt-rolle{color:var(--rk);border-color:color-mix(in srgb,var(--rk) 45%,transparent);background:color-mix(in srgb,var(--rk) 10%,transparent)}
.fkt-cap{color:#FDC500;border-color:rgba(253,197,0,.45);background:rgba(253,197,0,.1)}
.fkt-unten{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;margin-top:auto;padding-top:8px;border-top:1px solid var(--line);font-size:12px;color:var(--dim)}
.fkt-land{display:inline-flex;align-items:center;gap:6px;min-width:0}
.fkt-land span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fkt-land img{border-radius:2px;flex:none}
.fkt-unten small{flex:none;color:var(--txt)}
/* Kompakt im Hover-Fenster */
.fkt-kurz{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.fkt-kurz li{display:flex;align-items:center;gap:8px;min-width:0;color:var(--txt)}
.fkt-kurz .fkt-lvl{width:22px;height:22px;padding:2px}
.fkt-kurz .fkt-lvl b{font-size:10px}
.fkt-kurz .fkt-kn{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fkt-kurz small{margin-left:auto;color:var(--dim);font-size:11px}
.fkt-kurz li.r-substitute .fkt-kn,.fkt-kurz li.r-coach .fkt-kn{color:var(--dim)}

/* ── Stats: Ueberschriften und Hervorhebungen wie im Scouting (Alexander, 21.10.2026) ──
   Layout unveraendert, nur Titel groesser und weiss mit lila Balken,
   Zwischentitel lila, Modus in den Map-Tabellen als farbiges Band. */
.ts-stats .tsbox > h3{position:relative;padding-left:13px;font:700 clamp(16px,1.5vw,19px)/1.15 'Chakra Petch',sans-serif;letter-spacing:.06em;
  text-transform:uppercase;color:var(--white);margin:0 0 14px}
.ts-stats .tsbox > h3::before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:4px;background:var(--brand-l)}
body.t-academy .ts-stats .tsbox > h3::before{background:var(--gold)}
.ts-stats .tsbox > h3 + .tsnote{margin:-6px 0 14px;padding-left:13px;font-size:13px;color:var(--txt)}
.ts-stats .vbox h4{font:700 12px/1.2 'Chakra Petch',sans-serif;letter-spacing:.14em;color:var(--brand-l);margin:0 0 12px}
.ts-stats .tstile .tsl{font-size:11px;letter-spacing:.16em;color:var(--txt)}
.ts-stats tr.msort-modus > th{padding:9px 10px;background:rgba(120,64,224,.12);border-bottom:0;color:var(--brand-l);font-size:11px;letter-spacing:.14em}
.ts-stats tbody > tr.msort-modus:first-child > th{padding-top:9px}
.ts-stats tr.msort-modus .msort-bilanz{font-size:11.5px}

/* Kader-Hover: Gruppen hervorgehoben, Flagge vor dem Namen (Alexander, 21.10.2026) */
.fkt-box .fkt-gr + .fkt-gr{margin-top:12px}
.fkt-box .fkt-h{font:700 10.5px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;color:var(--brand-l);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(120,64,224,.4)}
.fkt-box .fkt-kurz{gap:7px}
.fkt-box .fkt-kurz li{gap:9px;font-size:13px;color:var(--white)}
.fkt-fl{flex:none;width:18px;height:13px;border-radius:2px;object-fit:cover}
.fkt-fl-leer{display:inline-grid;place-items:center;font:600 8px/1 'Chakra Petch',sans-serif;color:var(--dim);background:var(--line)}

/* Kader-Box in Scouting und Stats wie der Hover (Alexander, 21.10.2026):
   Players, Substitutes, Coach nebeneinander, darin untereinander Flagge,
   Name und gespielte Matches; Banner der FACEIT-Teamseite als Hintergrund. */
.fkt-gruppen{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px 40px;position:relative}
.fkt-gruppen .fkt-h{display:block;font:700 11.5px/1 'Chakra Petch',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--brand-l);
  margin-bottom:4px;padding-bottom:9px;border-bottom:1px solid rgba(120,64,224,.5)}
.fkt-gruppen .fkt-kurz{gap:0}
.fkt-gruppen .fkt-kurz li{gap:11px;padding:9px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--white)}
.fkt-gruppen .fkt-kurz li:last-child{border-bottom:0}
.fkt-gruppen .fkt-kn{font-weight:600}
.fkt-gruppen .fkt-fl{width:22px;height:16px}
.fkt-gr li small.fkt-sp{margin-left:auto;font-size:12.5px;color:var(--txt)}
.fkt-gr li small.fkt-sp.null{color:var(--dim)}
.card.fkt-bn{background-image:linear-gradient(180deg,rgba(18,18,22,.78) 0%,rgba(18,18,22,.92) 50%,rgba(18,18,22,.97) 100%),var(--fkt-bg);
  background-size:cover;background-position:center 30%;background-repeat:no-repeat}
.fkt-gruppen .fkt-gr + .fkt-gr{margin-top:0}
.card.fkt-bn{background-image:linear-gradient(180deg,rgba(18,18,22,.55) 0%,rgba(18,18,22,.86) 45%,rgba(18,18,22,.95) 100%),var(--fkt-bg)}
/* Eigene Teams im Bracket lesbar (21.10.2026) */
.bk-flaeche .bktag{letter-spacing:.06em}
/* Playoffs im Team Hub mit Wahl der Season (21.10.2026) */
.bk-hub #posaison .tsseason{margin:0 0 var(--gap)}
.bk-hub .bk-karte{margin-top:0}
.bk-sec.bk-hub{width:auto;margin-left:0;margin-top:0}
/* Banner der Kader-Box (Alexander, 21.10.2026: volle Variante): ueber die ganze
   Karte, in eigener Ebene, nach unten schwaecher und zu den Seiten weich in den
   Kartenhintergrund auslaufend, statt einer dunklen Schicht darueber. */
.card.fkt-bn{position:relative;isolation:isolate;overflow:hidden;background-image:none;background-color:var(--s1)}
.card.fkt-bn::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:var(--fkt-bg) center 30%/cover no-repeat;opacity:.42;
  -webkit-mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.7) 45%,rgba(0,0,0,.2) 100%);
  mask-image:linear-gradient(180deg,#000 0%,rgba(0,0,0,.7) 45%,rgba(0,0,0,.2) 100%)}
.card.fkt-bn::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,var(--s1) 0%,rgba(28,28,34,0) 14%,rgba(28,28,34,0) 86%,var(--s1) 100%)}
.card.fkt-bn > h3,.card.fkt-bn > .tsnote{text-shadow:0 1px 8px rgba(0,0,0,.7)}
