/* Tabelle – nur Muster der bestehenden Seite: Box wie „Letztes Spiel“, Rahmen wie Kalender, .btn, h2 mit <b> */
.asvt .small{font-size:.7em}
.asvt h2+p{margin-top:0}

/* Kopfbox wie .rslt.cntdwn / .box */
.asvt-box{display:flex;margin:1.5em 0 2em;background:#fff;border-radius:8px;box-shadow:0 0 10px 5px rgba(0,0,0,.3);overflow:hidden}
.asvt-col{flex:1 1 50%;text-align:center;text-transform:uppercase;padding:1em 15px 1.4em;display:flex;flex-direction:column;justify-content:center;align-items:center}
.asvt-col+.asvt-col{border-left:2px solid #17417c}
.asvt-col p{margin:0}
.asvt-col h2{margin:.25em 0;line-height:.8}
.asvt-col .asvt-status{text-transform:none;font-size:.8em;margin:.8em auto 1em;max-width:30em}
.asvt-me{width:100px;height:100px;object-fit:contain;margin-bottom:.6em}
.asvt-formline{margin:.6em 0 0}
.asvt-pair{display:flex;justify-content:center;align-items:flex-start;gap:1em;padding:15px 0 32px}
.asvt-pair>div{flex:1 1 0;display:flex;flex-direction:column;align-items:center}
.asvt-pair img{width:100%;max-width:110px;padding:8px;margin-bottom:6px}
.asvt-pair .asvt-vs{flex:0 0 auto;font-weight:bold;font-size:2.5em;align-self:center}

/* Form-Kästchen wie Kalender-Legende: Ergebnis aus Sicht des Teams, grün Sieg, rot Niederlage */
/* Ergebnis-Kennzeichen (überall gleich: weiß, feiner Farbrahmen, Ecken 2px; auch .asvsl-f Spielplan, .asvsp-f Spieltag) */
.asvt-f{display:inline-block;min-width:2.5em;width:auto;height:auto;padding:.2em .3em;margin:0 2px;border-radius:2px;background:#fff;color:#ad1f17;border:2px solid #d4473d;font-size:.75em;font-weight:700;text-align:center;line-height:1.3;font-variant-numeric:tabular-nums;vertical-align:middle;cursor:default}
.asvt-f.w{color:#0b6626;border-color:#239140;background:#fff}
a.asvt-f{cursor:pointer;text-decoration:none!important}a.asvt-f:hover,a.asvt-f:focus{color:#fff;background:#d4473d;opacity:1!important}a.asvt-f.w:hover,a.asvt-f.w:focus{color:#fff;background:#239140}

/* Umschalter mit .btn-Optik */
.asvt-tabs>input{position:absolute;opacity:0;pointer-events:none}
.asvt-tabs>label{display:inline-block;padding:.5em 1em;margin:0 .3em .8em 0;text-transform:uppercase;border:1px solid #17417c;color:#17417c;background:#fff;cursor:pointer;font-weight:normal;font-size:.8em}
#asvt-g:checked+label,#asvt-h:checked+label,#asvt-a:checked+label{background:#17417c;color:#fff}
.asvt-tabs>input:focus-visible+label{outline:2px solid #17417c;outline-offset:2px}
.asvt-tabs .asvt-frame{display:none}
#asvt-g:checked~.p-g,#asvt-h:checked~.p-h,#asvt-a:checked~.p-a{display:block}

/* Tabelle im Rahmen wie .calendar_frame */
.asvt-frame{border:3px solid #17417c;border-radius:10px;overflow:hidden;overflow-x:auto}
.asvt-table{width:100%;margin:0!important;border-collapse:collapse;font-size:.8em;background:#fff}
.asvt-table thead th{background:#17417c;color:#fff;font-weight:normal;text-align:center;padding:.5em .4em}
.asvt-table th.tm,.asvt-table td.tm{text-align:left}
.asvt-table td{text-align:center;padding:.45em .4em;border-top:2px solid #eee;font-variant-numeric:tabular-nums}
.asvt-table td.lg{width:44px;padding-right:0}
.asvt-table td.lg img{width:30px;height:30px;object-fit:contain;display:block;margin:auto}
.asvt-table td.pt{font-weight:bold}
.asvt-table td.fm{white-space:nowrap}
.asvt-table .sn{display:none}
.asvt-table tr.me td{background:#17417c;color:#fff;font-weight:bold;border-top-color:#17417c}
.asvt-table tbody tr.me:first-child td{border-top-color:#fff}
.asvt-table tr.me td.lg img{background:#fff;border-radius:50%;padding:2px}
.asvt-table tr.me .asvt-f{box-shadow:none}
.asvt-legende{margin:1em;display:flex;gap:5px 14px;justify-content:center;font-size:.7em;flex-wrap:wrap;align-items:center}
.asvt-legende>span{width:100%;text-align:center}
.asvt-legende span .sn{display:none}

/* Ticket-Button wie in den Slider-Grafiken der Startseite */
.asvt-cta{display:inline-block;background:#1a6ee8;color:#fff!important;text-decoration:none!important;transition:background .2s}   /* Form: zentral in css/style.css */
.asvt-cta:hover,.asvt-cta:focus{background:#17417c}

/* Abstand nach oben/unten in der linken Box */
.asvt-weg{margin:1em auto 0;border-collapse:collapse;font-size:.8em;text-transform:none}
.asvt-weg td{padding:.25em .6em;border-top:1px solid #eee;text-align:left}
.asvt-weg tr:first-child td{border-top:0}
.asvt-weg td+td{text-align:right;font-weight:bold;color:#17417c;white-space:nowrap}

/* Die nächsten Spiele */
.asvt-ups{grid-template-columns:repeat(3,1fr);margin-bottom:4.5em}
.asvt-up .asvt-ha{text-transform:uppercase;color:#17417c;margin:.2em 0 .6em}
.asvt-upteam{display:flex;align-items:center;justify-content:center;gap:12px;text-align:left;font-size:.85em}
.asvt-upteam img{width:56px;height:56px;object-fit:contain}
.asvt-link{display:block;color:inherit!important;text-decoration:none!important;transition:box-shadow .2s,transform .2s}
.asvt-link:hover,.asvt-link:focus{box-shadow:0 0 0 3px #17417c,0 0 10px 2px rgba(0,0,0,.15);transform:translateY(-2px)}
.asvt-tix{font-size:.75em;font-weight:bold;color:#17417c;text-transform:uppercase;margin-top:.6em!important}
.asvt-first{font-size:.75em;color:#666;margin-top:.8em!important;border-top:1px solid #eee;padding-top:.6em}

/* Foto hinter der Kopfbox wie auf der Startseite */
.asvt-foto{height:31vw;min-height:340px;margin:1em calc(50% - 50vw) 0;background-size:cover;background-position:center top}
.asvt-box.asvt-onfoto{position:relative;margin-top:-50px}
.asvt-foto{position:relative}
.asvt-credit{position:absolute;right:10px;bottom:6px;font-size:11px;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8)}

/* Abstand zwischen den Abschnitten */
.asvt-sec{margin-top:3.5em}

/* Letzter Spieltag */
.asvt-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin:1em 0 1em}
.asvt-game{background:#fff;border-radius:8px;box-shadow:0 0 10px 2px rgba(0,0,0,.15);padding:.8em 15px 1em;text-align:center}
.asvt-game.me{box-shadow:0 0 0 3px #17417c,0 0 10px 2px rgba(0,0,0,.15)}
.asvt-game p{margin:0}
.asvt-game .small{text-transform:uppercase}
.asvt-game .asvt-pair{padding:8px 0 4px;gap:.5em}
.asvt-game .asvt-pair img{max-width:64px;padding:4px;margin-bottom:.4em}
.asvt-game .asvt-pair>div{font-size:.75em;line-height:1.25;min-width:0;overflow-wrap:anywhere;hyphens:auto}
.asvt-game .sn{display:none}
.asvt-res{flex:0 0 auto!important;flex-direction:row!important;font-size:2em!important;font-weight:bold;align-self:center;gap:.2em}
.asvt-head{font-size:.8em;margin:.5em 0 .3em!important}
.asvt-links{list-style:none;margin:0;padding:0;font-size:.7em;text-align:left}
.asvt-links li{padding:.35em 0;border-top:1px solid #eee}

/* Zwei Spalten */
.asvt-cols{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start}
.asvt-next td{text-align:left;vertical-align:middle}
.asvt-next td.d{white-space:nowrap;font-size:.85em;color:#666;width:1%}
.asvt-next td.vs{font-weight:bold;width:1%;padding:0 .2em}
.asvt-next tr:first-child td{border-top:0}
.asvt-next tr.me td{color:#fff}
.asvt-next tr.me td.d{color:#cdd6e6}
.asvt-chart{width:100%;height:auto;display:block}
.asvt-chart line{stroke:#eee;stroke-width:1.5}
.asvt-chart path{fill:none;stroke:#17417c;stroke-width:2.5;stroke-linejoin:round}
.asvt-chart circle{fill:#17417c;stroke:#fff;stroke-width:2}
.asvt-chart circle.hit{fill:transparent;stroke:none;cursor:default}
.asvt-chart text{font-family:inherit;font-size:12px;fill:#666}
.asvt-chart .yl{text-anchor:end}.asvt-chart .xl{text-anchor:middle}
.asvt-chart .lb{font-weight:bold;fill:#17417c}
.asvt-bg{font-size:.9em}
.asvt-bg h4{margin-top:.2em}
.asvt-src{font-size:.6em;color:#666;margin-top:2em}

@media (max-width:991px){.asvt-cols{grid-template-columns:1fr;gap:0}}
@media (max-width:767px){
.asvt-ups{grid-template-columns:1fr}
.asvt-foto{height:240px}.asvt-box.asvt-onfoto{margin-top:-60px}
.asvt-box{flex-direction:column}
.asvt-col+.asvt-col{border-left:0;border-top:2px solid #17417c}
.asvt-table .ln,.asvt-table .hs{display:none}.asvt-table .sn{display:inline}
.asvt-legende span .ln{display:none}.asvt-legende span .sn{display:inline}
.asvt-table td{padding:.45em .2em}.asvt-table td.lg{width:32px}.asvt-table td.lg img{width:24px;height:24px}
.asvt-table td.fm .asvt-f:nth-child(-n+2){display:none}
.asvt-games{grid-template-columns:1fr}
.asvt-game .ln{display:none}.asvt-game .sn{display:inline}
.asvt-chart text{font-size:14px}
}
.asvt-gc{font-size:.8em;margin:.8em 0 0!important}.asvt-gc a,a.asvt-gc{color:#17417c;font-weight:700;text-decoration:underline;text-underline-offset:3px;font-size:.85em}
.asvt-next tr.me a.asvt-gc{color:#fff!important;display:inline-block;margin-top:.3em;font-size:.8em}
.asvt-1z>div{min-width:0;white-space:nowrap}.asvt-1z span{display:block;white-space:nowrap}
@media (max-width:420px){.asvt-1z>div,.asvt-1z span{white-space:normal}}

/* Gemeinsame Bausteine für alle Seiten (seit 23.10.2026, zuerst auf /historie).
   Vorlagen: Zahlenleiste der Spielerseite (.asvspl-sz), Karten von Team hinterm Team (.asvtht-k), Media-Day-Band und Lightbox der Spielerseite.
   Neue Seiten nutzen diese Klassen statt eigener Varianten. */
.asv-zahlen{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));border-top:3px solid #17417c;border-bottom:1px solid #dfe5ef;margin:0}
.asv-zahlen>div{padding:1em .4em 1em 0;min-width:0}
.asv-zahlen>div+div{padding-left:1.2em;border-left:1px solid #dfe5ef}
.asv-zahlen b{display:block;font-size:3em;font-weight:900;line-height:1;color:#17417c}
.asv-zahlen span{display:block;margin-top:.4em;font-size:.8em;text-transform:uppercase;letter-spacing:.05em;color:#555}
.asv-zahlen small{display:block;margin-top:.3em;font-size:.8em;color:#666;line-height:1.35}
.asv-karten{display:grid;grid-template-columns:repeat(3,1fr);gap:0 30px}
.asv-k{border-top:3px solid #17417c;padding-top:.9em;margin-bottom:30px;min-width:0}
.asv-k h3{margin:0 0 .35em!important;font-size:1.3em!important;font-weight:400!important;color:inherit!important;line-height:1.25}
.asv-k p{margin:0 0 .8em;font-size:.9em;line-height:1.5;color:#444}
.asv-k .rolle{display:block;margin:0 0 .5em;font-size:.78em;text-transform:uppercase;letter-spacing:.04em;color:#666}
.asv-liste{list-style:none;margin:0;padding:0}
.asv-liste li{padding:.45em 0;border-bottom:1px solid #e3e8f1}
.asv-liste li small{display:block;font-weight:normal;color:#666;font-size:.78em;text-transform:uppercase;letter-spacing:.04em}
.asv-panel{background:#17417c;color:#fff;border-radius:8px;padding:2em 2.2em}
.asv-panel h3,.asv-panel h3 b,.asv-panel b{color:#fff!important}.asv-panel .asv-liste b{color:#f5c400!important}
.asv-panel .asvt-cta{background:#1a6ee8!important;color:#fff!important}
.asv-panel .btn.zwei{background:#fff!important;color:#17417c!important}
.asv-btn2{display:inline-block;border:2px solid #17417c;border-radius:4px;padding:.55em 1.2em;background:#fff;color:#17417c!important;font-weight:700;text-decoration:none!important;cursor:pointer;font-size:1em}
.asv-btn2:hover{background:#17417c;color:#fff!important}
.asv-galerie{display:flex;flex-wrap:wrap;gap:10px}
.asv-galerie:after{content:"";flex-grow:1e4}
.asv-galerie a{display:block;text-decoration:none!important;transition:transform .25s}
.asv-galerie a i{position:relative;display:block;overflow:hidden;border-radius:8px;background:#e9edf4;transition:box-shadow .25s}
.asv-galerie a img{position:absolute;inset:0;width:100%;height:100%;display:block}
.asv-galerie a span{display:block;margin-top:.4em;font-size:.85em;font-weight:700;color:#17417c}
.asv-galerie a i:after{content:"+";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:3em;font-weight:300;color:#fff;background:rgba(23,65,124,.45);opacity:0;transition:opacity .25s}
.asv-galerie a:hover,.asv-galerie a:focus-visible{transform:translateY(-4px)}
.asv-galerie a:hover i,.asv-galerie a:focus-visible i{box-shadow:0 10px 22px rgba(23,65,124,.3)}
.asv-galerie a:hover i:after,.asv-galerie a:focus-visible i:after{opacity:1}
.asv-fotoband-w{position:relative}
.asv-fotoband-nav{display:flex;justify-content:flex-end;gap:10px;margin:0 0 12px}
.asv-fotoband-nav button{width:40px;height:40px;border:0;border-radius:50%;background:#17417c;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 0 10px rgba(0,0,0,.3)}
.asv-fotoband-nav button svg{width:16px;height:16px}
.asv-fotoband-nav button:disabled{opacity:.3;cursor:default}
.asv-fotoband{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;margin-right:calc(50% - 50vw);padding:6px calc(50vw - 50%) 14px 0;scrollbar-width:thin}
.asv-fotoband a{flex:none;scroll-snap-align:start;display:block;text-decoration:none!important;transition:transform .25s}
.asv-fotoband a i{position:relative;display:block;overflow:hidden;border-radius:8px;transition:box-shadow .25s}
.asv-fotoband a img{display:block;width:100%;height:auto;aspect-ratio:var(--r,1.5)}
.asv-fotoband a{width:calc(var(--r,1.5) * var(--h,220px))}.asv-fotoband a span{display:block;margin-top:.4em;font-size:.85em;font-weight:700;color:#17417c;line-height:1.35;white-space:normal;overflow-wrap:break-word;hyphens:auto}
.asv-fotoband a i:after{content:"+";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:3em;font-weight:300;color:#fff;background:rgba(23,65,124,.45);opacity:0;transition:opacity .25s}
.asv-fotoband a:hover,.asv-fotoband a:focus-visible{transform:translateY(-4px)}
.asv-fotoband a:hover i,.asv-fotoband a:focus-visible i{box-shadow:0 10px 22px rgba(23,65,124,.3)}
.asv-fotoband a:hover i:after,.asv-fotoband a:focus-visible i:after{opacity:1}
@media (max-width:767px){.asv-fotoband-nav{display:none}.asv-fotoband{margin-left:calc(50% - 50vw);padding-left:calc(50vw - 50%);scroll-padding-left:15px}.asv-fotoband{--h:170px}}
.asv-tabs{display:flex;flex-wrap:wrap;gap:0 .3em;margin:0 0 .8em}
.asv-tabs button{padding:.5em 1em;margin:0 0 .3em;text-transform:uppercase;border:1px solid #17417c;color:#17417c;background:#fff;cursor:pointer;font:inherit;font-weight:normal;font-size:.8em}
.asv-tabs button[aria-selected="true"]{background:#17417c;color:#fff}
.asv-tabs button:focus-visible{outline:2px solid #17417c;outline-offset:2px}
.asv-zoombox{border:0;padding:0;background:transparent;max-width:94vw;max-height:94vh}
.asv-zoombox::backdrop{background:rgba(10,20,40,.88)}
.asv-zoombox img{display:block;max-width:94vw;max-height:94vh;border-radius:6px}
.asv-zoombox button{position:fixed;top:14px;right:18px;width:44px;height:44px;padding:0;margin:0;border:0;border-radius:50%;background:#f5c400;color:#17417c;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;box-shadow:0 4px 14px rgba(0,0,0,.4)}
.asv-zoombox button svg{width:18px;height:18px;display:block}
@media (max-width:991px){.asv-karten{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.asv-zahlen{grid-template-columns:repeat(2,1fr)}.asv-zahlen>div:nth-child(odd){border-left:0;padding-left:0}.asv-zahlen>div:nth-child(even){padding-left:1.2em;border-left:1px solid #dfe5ef}.asv-zahlen>div:nth-child(n+3){border-top:1px solid #dfe5ef}.asv-zahlen b{font-size:2.3em}.asv-karten{grid-template-columns:1fr}.asv-panel{padding:1.5em 1.2em}}
@media (prefers-reduced-motion:reduce){.asv-galerie a{transition:none}}
/* Häufige Fragen (Spielplan, Spieltag, Tickets): aufklappbare Karten */
.asvsp-faq details{background:#fff;border-radius:8px;box-shadow:0 0 10px 2px rgba(0,0,0,.12);margin:0 0 10px;padding:.2em 1.1em}.asvsp-faq summary{cursor:pointer;font-weight:700;padding:.8em 0;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:.8em}.asvsp-faq summary::-webkit-details-marker{display:none}.asvsp-faq summary:after{content:"+";flex:none;color:#17417c;font-size:1.3em;line-height:1}.asvsp-faq details[open] summary:after{content:"–"}.asvsp-faq details p{margin:0 0 1em}
/* Überschriften auf dem Handy: ganze Wörter in die nächste Zeile (Denis 25.10.2026), nur zu lange Einzelwörter umbrechen statt überlaufen */
@media (max-width:767px){.asvtht-st>h2,.asvab-st>h2,.asvpt-st>h2,.asvt-col h2,h1.asv-h1{overflow-wrap:break-word;hyphens:manual}}
/* „Die weiteren Spiele“: Karten zeilenweise ausrichten (Datum, Heim/Auswärts, Team, Linie, Tickets auf einer Höhe; 25.10.2026) */
@media (min-width:768px){.asvt-ups .asvt-game{display:grid;grid-template-rows:subgrid;grid-row:span 5;row-gap:0;align-content:start}.asvt-ups .asvt-upteam{align-self:center}.asvt-ups .asvt-first,.asvt-ups .asvt-tix{align-self:start}}
/* Kombi-Marke Dyn + YouTube bei Livestream-Hinweisen (asvt_dynyt, 25.10.2026): Logos unverändert, YouTube-Symbol in YouTube-Rot */
.asv-dynyt{display:inline-flex!important;align-items:center;gap:.35em;vertical-align:-.15em;white-space:nowrap;margin-left:.3em}.asv-dynyt img{height:.95em!important;width:auto!important;max-width:none!important;display:inline-block!important;margin:0!important;float:none!important}.asv-dynyt .fa{color:#ff0000!important;font-size:1.2em;line-height:1}
/* „Tickets sichern ›“ in den Spielkarten als Button im Ticket-Blau der Seite (.asvt-cta), Denis 25.10.2026 */
.asvt-game .asvt-tix{display:inline-block;justify-self:center;align-self:start;background:#1a6ee8;color:#fff!important;padding:.6em 1.3em;border-radius:4px;margin-top:.8em!important;transition:background .2s}.asvt-link:hover .asvt-tix,.asvt-link:focus .asvt-tix{background:#17417c}
/* Abstand unter „Nächster Spieltag“ zum folgenden CMS-Text (Denis 25.10.2026) */
.asvt-nextf{margin-bottom:2.5em}
/* Heimspiel ohne Vorverkauf: „Ticketverkauf folgt“ als heller Button (25.10.2026) */
.asvt-game .asvt-tix.asvt-folgt{background:#e8eef8;color:#17417c!important}.asvt-link:hover .asvt-tix.asvt-folgt{background:#cadcfc}

/* Live-Button (Dyn YouTube) bewusst anders als der blaue Ticket-Button: weiß mit Navy-Rahmen und Dyn/YouTube-Marke (Denis 25.10.2026) */
.asvt-live{display:inline-flex;align-items:center;justify-content:center;gap:.45em;background:#fff;color:#17417c!important;border:2px solid #17417c;border-radius:4px;padding:.8em 1.6em;font-weight:700;text-transform:uppercase;text-decoration:none!important;line-height:1.2;transition:background .2s}.asvt-live:hover,.asvt-live:focus{background:#e8eef8}
