/* ============================================================================
   KADER-SEITE (Design V2) — baut auf assets/team-v2.css (.th-hero, .pc-Karten) auf
   Kompakter Hero, Filter-Chips, Gruppen (Torhüter · Feldspieler · Trainer & Umfeld), größere Spielerkarten
   ============================================================================ */
.kd-hero{padding:34px 0 76px;}
.kd-crumb{font-family:var(--font-label);font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:26px;}
.kd-crumb a{color:inherit;}
.kd-crumb a:hover{color:#fff;}
.kd-crumb span{margin:0 .55em;opacity:.6;}
.kd-hero .th-title{font-size:clamp(96px,17vw,236px);}
.kd-hero .th-facts b{font-size:clamp(28px,2.8vw,40px);}
.kd-hero .th-facts b small{display:inline;font-family:var(--font-label);font-size:.5em;letter-spacing:.12em;margin-left:.3em;opacity:.8;}

/* Filter-Chips (Diagonalschnitt, klein) */
.kd-bar{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center;justify-content:space-between;padding-top:44px;padding-bottom:6px;}   /* nur vertikal: horizontal bleibt der Innenabstand von .wrap */
.kd-chips{display:flex;flex-wrap:wrap;gap:12px;}
.kf{--fs:16px;--c:calc(var(--fs) * .62);--o:3px;
  position:relative;z-index:0;isolation:isolate;display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;cursor:pointer;
  font-family:var(--font-label);font-size:var(--fs);letter-spacing:.1em;text-transform:uppercase;line-height:1;padding:10px 16px 8px;color:var(--brand-red);}
.kf::after,.kf::before{content:"";position:absolute;inset:0;clip-path:polygon(0 0,calc(100% - var(--c)) 0,100% var(--c),100% 100%,var(--c) 100%,0 calc(100% - var(--c)));}
.kf::after{z-index:-1;background:var(--surface);box-shadow:none;}
.kf::before{z-index:-2;background:var(--border);transform:translate(var(--o),var(--o));}
.kf small{font:inherit;opacity:.6;}
.kf:hover::before{background:var(--brand-red);}
.kf[aria-pressed="true"]{color:#fff;}
.kf[aria-pressed="true"]::after{background:var(--brand-red);}
.kf[aria-pressed="true"]::before{background:var(--btn-back);}
.kd-note{font-size:13px;color:var(--ink-muted);max-width:52ch;}

/* Gruppen */
.kd-main{padding-top:26px;padding-bottom:110px;}
.kd-group{padding-top:54px;}
.kd-group[hidden]{display:none;}
.kd-gh{display:flex;align-items:baseline;gap:16px;margin-bottom:28px;border-bottom:3px solid var(--ink);padding-bottom:12px;}
.kd-gh h2{font-family:var(--font-impact);font-weight:400;font-size:clamp(34px,3.6vw,48px);text-transform:uppercase;letter-spacing:.012em;line-height:1;}
.kd-gh .n{font-family:var(--font-label);font-size:20px;letter-spacing:.14em;color:var(--brand-red);}
.kd-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:34px 22px;}   /* 6 Spalten: 12 Feldspieler = 2 volle Reihen */
.kd-grid .pc-ghost{font-size:100px;left:8px;}
.kd-grid .pc-name{font-size:16px;}
.pc-name.tbd{font-weight:600;color:var(--ink-muted);font-style:italic;}
.pc-pos.tbd{opacity:.7;}

/* Trainer & Umfeld: Navy statt Rot, keine Rückennummer */
.pc.staff .pc-ph{background:linear-gradient(160deg,#2a3b63 0%,#1b2638 70%);}
.pc.staff .pc-info{padding-right:16px;}

@media (max-width:1100px){.kd-grid{grid-template-columns:repeat(4,1fr);gap:30px 20px;}.kd-grid .pc-ghost{font-size:92px;}}
/* Platzhalter, wenn (noch) kein Einzelfoto vorliegt: Vereinswappen groß und blass auf dem roten Feld */
.pc-empty{position:absolute;inset:0;display:grid;place-items:center;padding-top:14%;}
.pc-empty img{width:44%;height:auto;opacity:.32;}
@media (max-width:860px){.kd-grid{grid-template-columns:repeat(3,1fr);}.kd-hero .th-in{grid-template-columns:1fr;}.kd-hero .th-facts{margin-top:8px;}}
@media (max-width:640px){
  .kd-hero{padding:26px 0 56px;}
  .kd-hero .th-title{font-size:clamp(84px,27vw,150px);}
  .kd-grid{grid-template-columns:repeat(2,1fr);gap:26px 16px;}
  .kd-grid .pc-ghost{font-size:78px;}
  .kd-group{padding-top:40px;}
  .kd-bar{padding-top:32px;}
}
