.matchcenter{position:relative;padding:100px 0;background:#f2f2f1;overflow:hidden}.matchcenter:before{content:"";position:absolute;inset:0;background:linear-gradient(48deg,transparent 0 43%,rgba(255,255,255,.8) 43% 65%,transparent 65%);pointer-events:none}.matchcenter .container{position:relative}.matchcenter__head,.season-schedule__head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:36px}.matchcenter__head h2,.season-schedule__head h2{margin:8px 0 0;font:700 clamp(4rem,7vw,7rem)/.8 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.matchcenter__sync{display:flex;align-items:center;gap:15px;color:#70737a;font-size:.7rem}.matchcenter__sync button{padding:11px 15px;border:0;background:#15161a;color:#fff;font-weight:800;cursor:pointer}.matchcenter__sync button:hover{background:var(--red)}
.league-dashboard{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(350px,.85fr);background:#fff;box-shadow:0 25px 60px rgba(0,0,0,.1)}.standings-panel{padding:42px 38px 32px;border-right:1px solid #dfdfdd}.panel-title{display:flex;align-items:baseline;gap:12px;padding-bottom:20px;border-bottom:1px solid #ddd}.panel-title span{color:var(--red);font:800 .8rem 'Barlow Condensed',Impact,sans-serif}.panel-title h3{margin:0;font:700 2.4rem/.9 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.standings-scroll{overflow:auto}.standings-table{min-width:570px}.standings-table th,.standings-table td{padding:15px 10px;text-align:left;border-bottom:1px solid #ededeb}.standings-table th{color:#666;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em}.standings-table th:not(:nth-child(2)),.standings-table td:not(:nth-child(2)){text-align:center}.standings-table td:nth-child(2){font-weight:800}.standings-table td:nth-child(2) img{width:27px;height:32px;object-fit:contain;margin-right:10px;vertical-align:middle}.standings-table .atus-row{background:linear-gradient(90deg,#fff0f1,transparent);box-shadow:inset 5px 0 0 var(--red)}.standings-table .atus-row td:nth-child(2){color:var(--red)}.panel-link{display:flex;align-items:center;justify-content:space-between;margin-top:22px;padding:13px 16px;background:var(--red);color:#fff;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.panel-link:hover{background:#111}
.match-stack{display:grid;grid-template-rows:1.12fr .88fr}.focus-match{position:relative;padding:38px 42px}.focus-match--next{border-bottom:6px solid var(--red)}.focus-match--last{background:#f7f7f5}.focus-match__top{text-align:center}.focus-match__top span{display:block;color:var(--red);font:700 1.8rem 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.focus-match__top small{display:block;margin-top:8px;color:#555}.focus-match__teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:28px 0 18px}.focus-match__teams>div{display:flex;align-items:center;justify-content:center;gap:10px;text-align:center}.focus-match__teams img{width:52px;height:62px;object-fit:contain}.focus-match__teams strong{font:700 1.45rem/.82 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.focus-match__teams>b{font:700 2.3rem 'Barlow Condensed',Impact,sans-serif}.opponent-mark{width:54px;height:54px;display:grid;place-items:center;border:3px solid #111;border-radius:50%;font:.76rem/1 Inter,sans-serif;font-weight:900}.focus-match>p{text-align:center;color:#777;font-size:.74rem}.focus-match__actions{display:grid;grid-template-columns:1fr 1fr;margin-top:25px;border-top:4px solid var(--red)}.focus-match__actions a{padding:17px 8px;text-align:center;color:#15161a;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.focus-match__actions a:hover{color:var(--red)}.season-empty{text-align:center;padding:23px 0 5px}.season-empty b{font:700 3.6rem 'Barlow Condensed',Impact,sans-serif}.season-empty p{color:#777;font-size:.78rem}.focus-match--last .panel-link{max-width:240px;margin:16px auto 0}
.season-schedule{padding:100px 0;background:#0c0d10;color:#fff}.season-schedule__head{margin-bottom:32px}.schedule-legend{display:flex;gap:18px;color:#c1c3c8;font-size:.67rem}.schedule-legend span{display:flex;align-items:center;gap:7px}.schedule-legend i{width:11px;height:11px;background:var(--red)}.schedule-legend i.away{background:#fff}.schedule-table{border:0;border-radius:0}.schedule-table table{background:#fff;color:#15161a}.schedule-table th{background:var(--red);color:#fff;text-transform:uppercase;font-size:.65rem;letter-spacing:.08em}.schedule-table td{border-bottom:1px solid #e5e5e3}.schedule-table tbody tr:hover{background:#fff1f2}.schedule-note{display:grid;grid-template-columns:120px 1fr;gap:25px;margin-top:22px;padding:22px;border-left:5px solid var(--red);background:#17191e}.schedule-note strong{font:700 1.3rem 'Barlow Condensed',Impact,sans-serif;text-transform:uppercase}.schedule-note p{margin:0;color:#a6a9b0;font-size:.76rem;line-height:1.55}
@media(max-width:940px){.league-dashboard{grid-template-columns:1fr}.standings-panel{border-right:0;border-bottom:1px solid #ddd}.match-stack{grid-template-columns:1fr 1fr;grid-template-rows:none}.focus-match--next{border-right:1px solid #ddd;border-bottom:6px solid var(--red)}}
@media(max-width:680px){.matchcenter,.season-schedule{padding:70px 0}.matchcenter__head,.season-schedule__head{align-items:flex-start;flex-direction:column}.matchcenter__sync{width:100%;justify-content:space-between}.league-dashboard{margin:0 -18px}.standings-panel{padding:27px 18px 22px}.match-stack{grid-template-columns:1fr}.focus-match{padding:30px 20px}.focus-match--next{border-right:0}.focus-match__teams{gap:7px}.focus-match__teams strong{font-size:1.15rem}.focus-match__teams img{width:42px;height:50px}.opponent-mark{width:46px;height:46px}.schedule-legend{flex-wrap:wrap}.schedule-note{grid-template-columns:1fr;gap:6px}}
/* Live-Matchcenter: Vereinslogos + ATUS-Zeilenmarkierung */
.schedule-table td .sched-logo{width:22px;height:22px;object-fit:contain;vertical-align:middle;margin-right:9px}
.schedule-table tbody tr.atus-home td:first-child{box-shadow:inset 4px 0 0 var(--red)}
.schedule-table tbody tr.atus-away td:first-child{box-shadow:inset 4px 0 0 #b7bac0}
.schedule-table tbody tr.atus-home,.schedule-table tbody tr.atus-away{background:#fafafa}
.schedule-table td .tag{display:inline-block;padding:3px 9px;border-radius:999px;font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;background:#e9e9e7;color:#444}
.schedule-table td .tag.red{background:var(--red);color:#fff}
.matchcenter__sync [data-mc-status]{color:#54575d}
/* Freundschaftsspiele im Gesamtspielplan */
.schedule-table td .tag.tag-fs{background:#e7eef5;color:#28607d}
.schedule-table tbody tr.is-friendly{background:#f6f8fb}
/* Vergangene Spiele standardmäßig ausblenden (ab 2 Tage nach Spieltag) + Toggle */
.schedule-controls{display:flex;justify-content:flex-end;margin-bottom:16px}
.schedule-toggle{padding:11px 18px;border:1px solid rgba(255,255,255,.32);background:transparent;color:#fff;font:800 .68rem/1 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:background .2s,border-color .2s,color .2s}
.schedule-toggle:hover{background:var(--red);border-color:var(--red)}
.schedule-toggle[aria-pressed="true"]{background:#fff;color:#111;border-color:#fff}
.schedule-table tbody tr.is-past{display:none}
.schedule-table tbody.show-past tr.is-past{display:table-row}
/* Ergebnis-Status aus ATUS-Sicht */
.schedule-table td .tag.win{background:var(--red);color:#fff}
.schedule-table td .tag.draw{background:#c9ccd2;color:#33373d}
.schedule-table td .tag.loss{background:#e8730c;color:#fff}
/* ── Smartphone: KEIN horizontaler Scroll / kein Abschneiden ────────────────
   Ursache war .standings-table{min-width:570px}: das blies das gemeinsame
   .league-dashboard-Grid (Tabelle + Fokuskarten) über die Viewport-Breite auf,
   und .matchcenter{overflow:hidden} kappte Sp./Tore/Pkt. UND die „Nächstes
   Spiel"-Karte. Fix: Grid-Items dürfen schrumpfen, Tabelle passt sich an,
   Zahlenspalten schmal fixiert, langer Teamname bricht um. */
@media(max-width:680px){
  .league-dashboard,.standings-panel,.match-stack,.focus-match{min-width:0}
  .standings-scroll{overflow:visible}
  .standings-table{min-width:0;width:100%;table-layout:fixed}
  .standings-table th,.standings-table td{padding:12px 4px;font-size:.85rem}
  .standings-table th{font-size:.58rem;letter-spacing:.01em}
  .standings-table td:nth-child(2){white-space:normal;line-height:1.07;word-break:break-word}
  .standings-table td:nth-child(2) img{width:19px;height:23px;margin-right:6px}
  .standings-table th:nth-child(1),.standings-table td:nth-child(1){width:24px}
  .standings-table th:nth-child(3),.standings-table td:nth-child(3){width:34px}
  .standings-table th:nth-child(4),.standings-table td:nth-child(4){width:40px}
  .standings-table th:nth-child(5),.standings-table td:nth-child(5){width:42px}
}
