/* Ranglisten TFCZ · gemeinsame Teile für S1, S2 und S3 auf Marke 1.15.3.
   Nur Tokens, keine eigenen Farbwerte. Balken voll abgerundet (Vorgabe Vasco 2026-10-19). */
body{background:var(--surface-base);color:var(--ink)}
.rl-mitte{display:grid;justify-items:center}
.rl-fuss{font-size:var(--text-2xs);color:var(--ink-faint);margin:0}
.rl-satz{font-size:var(--text-sm);margin:0}
.rl-weg-schmal{}
@media (max-width:720px){.rl-weg-schmal{display:none}}

/* Name: Vorname im Fokus */
.rl-name{display:inline-block;line-height:var(--leading-tight);min-width:0}
.rl-name__vor{display:block;font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-snug)}
.rl-name__nach{display:block;color:var(--ink-muted);font-weight:var(--fw-regular);font-size:.8em}

/* Nati-Abzeichen */
.rl-nati{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:var(--space-3xs) var(--space-xs) var(--space-3xs) var(--space-3xs);border:var(--border-w) solid var(--accent-2);border-radius:var(--r-pill);font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);color:var(--ink);white-space:nowrap;vertical-align:middle;line-height:1}
.rl-nati img{width:.95rem;height:.95rem;display:block}

/* Profilbilder, immer rund */
.rl-pb-s{width:2.5rem;height:2.5rem;font-size:var(--text-2xs)}
.rl-pb-m{width:3.75rem;height:3.75rem;font-size:var(--text-md)}
.rl-pb-l{width:5.5rem;height:5.5rem;font-size:var(--text-xl)}
.rl-pb-xl{width:8rem;height:8rem;font-size:var(--text-3xl)}
.rl-ring{box-shadow:0 0 0 var(--space-3xs) var(--surface-raised),0 0 0 calc(var(--space-3xs) * 2) var(--accent-2)}

/* Balken: natives progress, Spur und Füllung voll rund */
.rl-balken{display:block;inline-size:100%;block-size:.5rem;-webkit-appearance:none;appearance:none;border:0;border-radius:var(--r-pill);overflow:hidden;background:var(--surface-state);color:var(--ton-1)}
.rl-balken::-webkit-progress-bar{background:var(--surface-state);border-radius:var(--r-pill)}
.rl-balken::-webkit-progress-value{background:var(--ton-1);border-radius:var(--r-pill)}
.rl-balken::-moz-progress-bar{background:var(--ton-1);border-radius:var(--r-pill)}
.rl-balken--gold::-webkit-progress-value{background:var(--accent-2)}
.rl-balken--gold::-moz-progress-bar{background:var(--accent-2)}
.rl-balken--a::-webkit-progress-value{background:var(--ton-1)}
.rl-balken--a::-moz-progress-bar{background:var(--ton-1)}
.rl-balken--b::-webkit-progress-value{background:var(--ton-3)}
.rl-balken--b::-moz-progress-bar{background:var(--ton-3)}

/* Form: S und N */
.rl-form{display:inline-flex;gap:var(--space-3xs)}
.rl-form__s{display:inline-grid;place-items:center;width:1.375rem;height:1.375rem;border-radius:var(--r-pill);font-size:var(--text-2xs);font-weight:var(--fw-extrabold);background:var(--state-fail);color:var(--accent-ink);flex:none}
.rl-form__s--sieg{background:var(--state-pass)}

/* Zahlenleiste */
.rl-zahlen{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:var(--border-w) solid var(--border-subtle);border-radius:var(--r-md);background:var(--surface-raised)}
.rl-zahlen--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.rl-zahlen > div{padding:var(--space-xs) var(--space-sm);min-width:0}
.rl-zahlen > div + div{border-left:var(--border-w) solid var(--border-subtle)}
.rl-zahlen small{display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-2xs);color:var(--ink-faint)}
.rl-zahlen b{display:block;font-size:var(--text-2xl);font-weight:var(--fw-extrabold);line-height:var(--leading-snug);font-variant-numeric:tabular-nums}
.rl-zahlen > div > span{display:block;font-size:var(--text-2xs);color:var(--ink-muted)}
@media (max-width:480px){.rl-zahlen--4{grid-template-columns:repeat(2,minmax(0,1fr))}.rl-zahlen--4 > div:nth-child(3){border-left:0}.rl-zahlen--4 > div:nth-child(n+3){border-top:var(--border-w) solid var(--border-subtle)}}

/* Zeitraum */
.rl-zeitraum{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}
.rl-zeitraum__hinweis{font-size:var(--text-2xs);color:var(--ink-faint)}

/* Netz */
.rl-netz{display:block;max-width:100%;height:auto;overflow:visible}
.rl-netz__gitter{fill:none;stroke:var(--border-subtle);stroke-width:1}
.rl-netz__aussen{fill:var(--surface-state);fill-opacity:.4;stroke:var(--border-subtle)}
.rl-netz__form{stroke-width:2;stroke-linejoin:round;fill-opacity:.25;transform-box:view-box;transform-origin:50% 50%;animation:rl-netz-auf var(--t-lang) var(--ease-ankunft) both}
.rl-netz__form--a{fill:var(--ton-1);stroke:var(--ton-1)}
.rl-netz__form--b{fill:var(--ton-3);stroke:var(--ton-3);stroke-dasharray:7 4;animation-delay:var(--t-fast)}
.rl-netz__name{fill:var(--ink-muted);font-size:10.5px;font-weight:var(--fw-semibold)}
.rl-netz__wert{fill:var(--ink);font-size:12px;font-weight:var(--fw-extrabold)}
@keyframes rl-netz-auf{from{transform:scale(.15);opacity:0}}
@media (prefers-reduced-motion:reduce){.rl-netz__form{animation:none}}
.rl-legende{display:flex;gap:var(--space-md);justify-content:center;font-size:var(--text-xs);color:var(--ink-muted);margin-top:var(--space-xs)}
.rl-legende i{display:inline-block;width:1rem;height:.25rem;border-radius:var(--r-pill);vertical-align:middle;margin-right:var(--space-2xs)}
.rl-legende__a{background:var(--ton-1)}
.rl-legende__b{background:repeating-linear-gradient(90deg,var(--ton-3) 0 5px,transparent 5px 8px)}

/* Profil */
.rl-profil{display:grid;gap:var(--space-md);min-width:0}
.rl-profil__kopf{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-md);align-items:center}
.rl-profil__kopf .rl-name{font-size:var(--text-2xl)}
.rl-profil__unter{display:flex;gap:var(--space-xs);align-items:center;flex-wrap:wrap;margin-top:var(--space-2xs);font-size:var(--text-xs)}
.rl-block h4{display:flex;align-items:center;gap:var(--space-3xs);margin:0 0 var(--space-xs);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint)}
.rl-ergebnisse{list-style:none;margin:0;padding:0;display:flex;gap:var(--space-xs);flex-wrap:wrap}
.rl-ergebnisse li{display:grid;grid-template-columns:auto auto;column-gap:var(--space-2xs);align-items:baseline;padding:var(--space-2xs) var(--space-sm);border:var(--border-w) solid var(--border-subtle);border-radius:var(--r-md);background:var(--surface-raised)}
.rl-ergebnisse b{font-size:var(--text-lg);font-weight:var(--fw-extrabold);grid-row:span 2}
.rl-ergebnisse span{font-size:var(--text-xs);font-weight:var(--fw-bold)}
.rl-ergebnisse small{font-size:var(--text-2xs);color:var(--ink-faint)}
.rl-ergebnisse--podest{border-color:var(--accent-2)}
.rl-ergebnisse--podest b{color:var(--accent-2)}
.rl-spiele{list-style:none;margin:0;padding:0;display:grid}
.rl-spiele li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-sm);align-items:center;padding:var(--space-xs) 0;border-top:var(--border-w) solid var(--border-subtle)}
.rl-spiele li:first-child{border-top:0}
.rl-spiele b{display:block;font-size:var(--text-sm)}
.rl-spiele small{font-size:var(--text-2xs);color:var(--ink-faint)}
.rl-spiele__satz{font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap}

/* Disziplinen */
.rl-disz{display:grid;gap:var(--space-sm)}
.rl-disz__zeile{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-3xs) var(--space-sm);align-items:baseline}
.rl-disz__name{font-size:var(--text-sm);font-weight:var(--fw-bold)}
.rl-disz__rang{font-size:var(--text-sm);text-align:right;font-variant-numeric:tabular-nums}
.rl-disz__rang small{color:var(--ink-faint)}
.rl-disz .rl-balken{grid-column:1 / -1}
.rl-disz__satz{grid-column:1 / -1;font-size:var(--text-2xs);color:var(--ink-faint)}

/* Vergleich */
.rl-vgl{display:grid;gap:var(--space-lg)}
.rl-vgl__kopf{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--space-sm);align-items:center}
.rl-vgl__p{display:flex;gap:var(--space-sm);align-items:center;min-width:0}
.rl-vgl__p--b{flex-direction:row-reverse;text-align:right}
.rl-vgl__p .rl-name{font-size:var(--text-xl)}
.rl-vgl__p--a .profilbild{box-shadow:0 0 0 var(--space-3xs) var(--surface-raised),0 0 0 calc(var(--space-3xs) * 2) var(--ton-1)}
.rl-vgl__p--b .profilbild{box-shadow:0 0 0 var(--space-3xs) var(--surface-raised),0 0 0 calc(var(--space-3xs) * 2) var(--ton-3)}
.rl-vgl__vs{font-size:var(--text-xs);color:var(--ink-faint);font-weight:var(--fw-bold)}
.rl-vgl__fazit{margin:0;text-align:center;font-size:var(--text-lg)}
.rl-vgl__body{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-xl);align-items:start}
.rl-vgl__reihen{display:grid;gap:var(--space-sm)}
.rl-vgl__reihe{display:grid;grid-template-columns:minmax(0,1fr) 4rem;gap:var(--space-3xs) var(--space-sm);align-items:center}
.rl-vgl__titel{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--ink-muted)}
.rl-vgl__w{font-size:var(--text-sm);text-align:right;font-variant-numeric:tabular-nums;color:var(--ink-faint)}
.rl-vgl__w--sieg{color:var(--ink);font-weight:var(--fw-extrabold)}
@media (max-width:720px){.rl-vgl__body{grid-template-columns:1fr}}
@media (max-width:560px){.rl-vgl__kopf{grid-template-columns:1fr 1fr}.rl-vgl__vs{display:none}.rl-vgl__p{flex-direction:column;align-items:flex-start}.rl-vgl__p--b{align-items:flex-end}.rl-vgl__p .rl-name{font-size:var(--text-md)}}

/* Tabellen */
.rl-clubs__wert{display:grid;grid-template-columns:minmax(4rem,1fr) 3rem;gap:var(--space-xs);align-items:center;font-variant-numeric:tabular-nums}
.rl-clubs__wert b{text-align:right}
.rl-clubs__balken{min-width:10rem}
.rl-clubs--wir td{background:var(--accent-soft)}
.rl-clubs--wir td:first-child{box-shadow:inset var(--border-w-stark) 0 0 var(--accent-2)}
.rl-spieler__zeile{cursor:pointer}
.rl-spieler__zeile:hover td{background:var(--surface-state)}
.rl-spieler__zeile:focus-visible{outline:var(--border-w-stark) solid var(--focus);outline-offset:calc(var(--border-w-stark) * -1)}
.rl-spieler__wer{display:flex;align-items:center;gap:var(--space-sm);min-width:0}
.rl-spieler__wer .rl-name{font-size:var(--text-md)}
.rl-wert{font-size:var(--text-lg)}
.rl-haken{justify-content:center}
.tabelle .hinweis-wickel{vertical-align:middle}

/* Erklärungen */
.rl-glossar{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--space-md) var(--space-xl);margin:0}
.rl-glossar dt{font-weight:var(--fw-extrabold);font-size:var(--text-sm)}
.rl-glossar dd{margin:var(--space-3xs) 0 0;font-size:var(--text-sm);color:var(--ink-muted)}

/* Kopfzeile der Entwürfe */
.rl-kopf{position:sticky;top:0;z-index:var(--z-leiste);background:var(--surface-base);border-bottom:var(--border-w) solid var(--border-subtle)}
.rl-kopf .wrap{display:flex;align-items:center;gap:var(--space-md);min-height:var(--ctl-h-lg);padding-block:var(--space-xs);flex-wrap:wrap}
.rl-kopf img{height:2.5rem;width:auto}
.rl-kopf nav{display:flex;gap:var(--space-md);flex-wrap:wrap;font-size:var(--text-sm)}
.rl-kopf .rl-luft{flex:1}
.rl-kopf .rl-var{font-size:var(--text-2xs);color:var(--ink-faint)}
@media (max-width:720px){.rl-kopf{position:static}.rl-kopf nav{display:none}}

/* Seitenblatt für das Profil */
.seitenblatt.rl-blatt{width:min(34rem,100vw);overflow-y:auto}
.rl-blatt .rl-profil{padding-bottom:var(--space-xl)}
.rl-vgl__p > div{display:grid;gap:var(--space-2xs);justify-items:start}
.rl-vgl__p--b > div{justify-items:end}

/* Clubrangliste mit Schaltern und «Mehr laden» */
.rl-club{display:grid;gap:var(--space-md);min-width:0}
.rl-club__steuer{display:flex;gap:var(--space-sm);align-items:center;flex-wrap:wrap}
.rl-club__mehr{display:flex;gap:var(--space-md);align-items:center;justify-content:center}
.rl-clubliste{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2xs)}
.rl-clubliste li{display:grid;grid-template-columns:2rem minmax(8rem,14rem) minmax(0,1fr) 3.5rem;gap:var(--space-sm);align-items:center;padding:var(--space-xs) var(--space-sm);border-radius:var(--r-md)}
.rl-clubliste--wir{background:var(--accent-soft);box-shadow:inset 0 0 0 var(--border-w) var(--accent-2)}
.rl-clubliste__rang{font-weight:var(--fw-extrabold);text-align:right;color:var(--ink-faint);font-variant-numeric:tabular-nums}
.rl-clubliste--wir .rl-clubliste__rang{color:var(--accent-2)}
.rl-clubliste__n{min-width:0;line-height:var(--leading-snug)}
.rl-clubliste__n b{display:block;font-size:var(--text-sm);font-weight:var(--fw-semibold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rl-clubliste--wir .rl-clubliste__n b{font-weight:var(--fw-extrabold)}
.rl-clubliste__n small{font-size:var(--text-2xs);color:var(--ink-faint)}
.rl-clubliste__w{text-align:right;font-variant-numeric:tabular-nums}
@media (max-width:560px){.rl-clubliste li{grid-template-columns:1.75rem minmax(0,1fr) 3.25rem}.rl-clubliste .rl-balken{grid-column:2 / -1;grid-row:2}}
.rl-spieler__club{display:block;font-size:var(--text-2xs);color:var(--ink-faint)}

/* Vergleich: ein Balken je Kennzahl, von der Mitte nach aussen */
.rl-vgl__disz{display:grid;gap:var(--space-2xs);justify-items:start}
.rl-vgl__disz .umschaltgruppe{flex-wrap:wrap}
.rl-vgl__rang{font-size:var(--text-xs);color:var(--ink-muted)}
.rl-vgl__reihen{display:grid;gap:var(--space-sm)}
.rl-vgl__reihe{display:grid;grid-template-columns:4rem minmax(0,1fr) 4rem;gap:var(--space-3xs) var(--space-sm);align-items:center}
.rl-vgl__titel{grid-column:1 / -1;justify-content:center}
.rl-vgl__bahn{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xs)}
.rl-vgl__w--a{text-align:left}
.rl-vgl__w--b{text-align:right}
.rl-balken--links{direction:rtl}

/* Runde 4: TFCZ-Zeile, je Disziplin, Bilanz, Match-Statistik */
.rl-luecke{border-top:var(--border-w-stark) dashed var(--border-strong)}
li.rl-luecke{margin-top:var(--space-sm)}
.rl-gold{color:var(--accent-2);font-weight:var(--fw-extrabold)}
.rl-rang{display:inline-grid;place-items:center;min-width:2rem;height:1.6rem;padding:0 var(--space-2xs);border-radius:var(--r-pill);background:var(--surface-state);font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums}
.rl-rang--podest{background:var(--accent-2);color:var(--accent-2-ink)}
.rl-auf{color:var(--state-pass);font-size:var(--text-2xs);font-weight:var(--fw-bold)}
.rl-ab{color:var(--state-fail);font-size:var(--text-2xs);font-weight:var(--fw-bold)}
.rl-bilanz{display:inline-flex;gap:var(--space-md);flex-wrap:wrap;align-items:center}
.rl-bilanz__teil{display:inline-flex;gap:var(--space-2xs);align-items:center}
.rl-bilanz__teil small{font-size:var(--text-2xs);color:var(--ink-faint);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide)}
.rl-bilanz__teil b{font-variant-numeric:tabular-nums;min-width:2.2rem}
.rl-bilanz__teil--leer{opacity:.55}
.rl-bilanz .rl-form__s{width:1.15rem;height:1.15rem;font-size:.6rem}
.rl-formblock{display:grid;gap:var(--space-sm)}
.rl-formblock__zeile{display:grid;gap:var(--space-3xs);padding:var(--space-sm);border:var(--border-w) solid var(--border-subtle);border-radius:var(--r-md);background:var(--surface-raised)}
.rl-formblock__kopf{display:flex;justify-content:space-between;gap:var(--space-sm);font-size:var(--text-sm)}
.rl-kacheln{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:var(--space-sm)}
.rl-kachel{background:var(--surface-raised);border:var(--border-w) solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--space-md);display:grid;gap:var(--space-sm);align-content:start}
.rl-kachel header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-xs)}
.rl-kachel h3{margin:0;font-size:var(--text-md)}
.rl-kachel header span{font-size:var(--text-2xs)}
.rl-kachel ol{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-xs)}
.rl-kachel li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-sm);align-items:center}
.rl-kachel__wer{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-sm)}
.rl-kachel__p{display:inline-flex;align-items:center;gap:var(--space-2xs);background:none;border:0;padding:0;color:inherit;font:inherit;font-size:var(--text-sm);font-weight:var(--fw-bold);cursor:pointer}
.rl-kachel__p:hover span{text-decoration:underline}
.rl-kachel__p .profilbild{width:2rem;height:2rem}
.rl-dtab__n{display:block;font-weight:var(--fw-bold);font-size:var(--text-sm)}
.rl-spieler__wer .profilbild + .profilbild{margin-left:calc(var(--space-sm) * -1);box-shadow:0 0 0 var(--border-w-stark) var(--surface-raised)}
/* Podium */
.rl-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-sm);align-items:end;max-width:56rem;margin-inline:auto;width:100%}
.rl-platz{display:grid;justify-items:center;gap:var(--space-2xs);text-align:center;cursor:pointer;background:none;border:0;color:inherit;font:inherit;padding:0}
.rl-platz:focus-visible{outline:var(--border-w-stark) solid var(--focus);outline-offset:var(--space-2xs);border-radius:var(--r-lg)}
.rl-platz__bilder{display:flex;justify-content:center}
.rl-platz__bilder .profilbild + .profilbild{margin-left:calc(var(--space-md) * -1)}
.rl-platz__namen{font-size:var(--text-md);line-height:var(--leading-snug)}
.rl-platz--1 .rl-platz__namen{font-size:var(--text-lg)}
.rl-platz__rang{font-size:var(--text-sm);color:var(--ink-muted)}
.rl-stufe{width:100%;display:grid;place-items:center;border-radius:var(--r-lg) var(--r-lg) 0 0;background:var(--surface-raised);border:var(--border-w) solid var(--border-subtle);border-bottom:0;font-size:var(--text-4xl);font-weight:var(--fw-extrabold);color:var(--ink-faint)}
.rl-platz--1 .rl-stufe{block-size:8rem;border-color:var(--accent-2);color:var(--accent-2)}
.rl-platz--2 .rl-stufe{block-size:5.5rem}
.rl-platz--3 .rl-stufe{block-size:4rem}
.rl-platz:hover .rl-stufe{background:var(--surface-overlay)}
.rl-platz--1{order:2}.rl-platz--2{order:1}.rl-platz--3{order:3}
@media (max-width:560px){.rl-platz__namen,.rl-platz--1 .rl-platz__namen{font-size:var(--text-xs)}.rl-platz .rl-pb-xl{width:4.5rem;height:4.5rem}.rl-platz .rl-pb-l{width:3rem;height:3rem}}
/* Vergleich wie eine Match-Statistik */
.rl-vgl__reihen{gap:var(--space-xs)}
.rl-vs{display:grid;grid-template-columns:5rem minmax(0,1fr) 5rem;align-items:center;gap:var(--space-3xs) var(--space-sm)}
.rl-vs__t{text-align:center;font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--ink-muted);display:flex;justify-content:center;align-items:center;gap:var(--space-3xs)}
.rl-vs__w{font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--ink-faint);justify-self:start;padding:var(--space-3xs) var(--space-xs);border-radius:var(--r-pill)}
.rl-vs__w--b{justify-self:end}
.rl-vs--a .rl-vs__w--a{background:var(--ton-1);color:var(--accent-ink);font-weight:var(--fw-extrabold)}
.rl-vs--b .rl-vs__w--b{background:var(--ton-3);color:var(--accent-ink);font-weight:var(--fw-extrabold)}
.rl-vs__bahn{grid-column:1 / -1;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3xs)}
.rl-balken--matt{opacity:.3}
.rl-kachel__p--gast{font-weight:var(--fw-regular);color:var(--ink-muted)}
@media (max-width:720px){.rl-dtab .rl-bilanz{gap:var(--space-xs)}.rl-dtab .rl-form__s{width:.95rem;height:.95rem;font-size:.5rem}}

/* Runde 5 */
.rl-foto{position:relative;display:inline-flex;flex:none}
.rl-foto__flagge{position:absolute;right:-4%;bottom:-4%;width:34%;max-width:1.35rem;aspect-ratio:1;border-radius:var(--r-pill);box-shadow:0 0 0 var(--border-w) var(--surface-raised)}
.rl-nati{gap:var(--space-xs);padding:var(--space-2xs) var(--space-sm) var(--space-2xs) var(--space-2xs);font-size:var(--text-xs);letter-spacing:0;font-weight:var(--fw-bold)}
.rl-nati img{width:1.1rem;height:1.1rem;border-radius:var(--r-pill)}
.rl-dtab--bester td{background:color-mix(in oklab,var(--accent-2) 16%,transparent)}
.rl-dtab--bester td:first-child{box-shadow:inset var(--border-w-stark) 0 0 var(--accent-2)}
.rl-heat{overflow-x:auto}
.rl-heat table{border-collapse:separate;border-spacing:var(--space-3xs);min-width:100%}
.rl-heat th{font-size:var(--text-2xs);font-weight:var(--fw-bold);color:var(--ink-muted);text-align:center;vertical-align:bottom;padding:var(--space-2xs);white-space:nowrap}
.rl-heat th small{display:block;font-weight:var(--fw-regular);color:var(--ink-faint)}
.rl-heat th.n{text-align:left}
.rl-heat td{text-align:center;font-size:var(--text-xs);font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums;border-radius:var(--r-sm);min-width:3.25rem;height:2.4rem;cursor:pointer}
.rl-heat td.n{text-align:left;background:none;white-space:nowrap}
.rl-heat td.n span{display:inline-flex;gap:var(--space-xs);align-items:center;font-weight:var(--fw-bold)}
.rl-heat td.n .profilbild{width:1.9rem;height:1.9rem;font-size:.55rem}
.rl-heat td.leer{background:var(--surface-state);opacity:.3;cursor:default}
.rl-skala{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap;font-size:var(--text-2xs);color:var(--ink-faint);margin-top:var(--space-sm)}
.rl-skala i{display:inline-block;width:1.5rem;height:.75rem;border-radius:var(--r-xs)}
.h0{background:color-mix(in oklab,var(--ton-1) 8%,transparent)}.h1{background:color-mix(in oklab,var(--ton-1) 16%,transparent)}.h2{background:color-mix(in oklab,var(--ton-1) 24%,transparent)}
.h3{background:color-mix(in oklab,var(--ton-1) 32%,transparent)}.h4{background:color-mix(in oklab,var(--ton-1) 40%,transparent)}.h5{background:color-mix(in oklab,var(--ton-1) 50%,transparent)}
.h6{background:color-mix(in oklab,var(--ton-1) 60%,transparent)}.h7{background:color-mix(in oklab,var(--ton-1) 70%,transparent);color:var(--accent-ink)}.h8{background:color-mix(in oklab,var(--ton-1) 80%,transparent);color:var(--accent-ink)}
.h9{background:color-mix(in oklab,var(--ton-1) 92%,transparent);color:var(--accent-ink)}.h10{background:var(--accent-2);color:var(--accent-2-ink)}
.rl-trichter td:first-child{white-space:nowrap}

/* Runde 6: Heatmap mit Balken, sortierbare Tabellen */
.rl-heat td{vertical-align:middle;padding:var(--space-2xs) var(--space-xs);background:var(--surface-state);min-width:5.5rem}
.rl-heat td b{display:block;font-size:var(--text-xs);margin-bottom:var(--space-3xs);text-align:left}
.rl-heat td .rl-balken{block-size:.375rem}
.rl-heat td.rl-heat__bester{background:color-mix(in oklab,var(--accent-2) 22%,transparent);box-shadow:inset 0 0 0 var(--border-w-stark) var(--accent-2)}
.rl-heat td.rl-heat__bester b{color:var(--accent-2)}
.rl-heat td.n .rl-foto__flagge{max-width:.7rem}
.rl-skala__gold{background:var(--accent-2)}
table.rl-sortierbar thead th{cursor:pointer;user-select:none}
table.rl-sortierbar thead th:hover{color:var(--ink)}
table.rl-sortierbar thead th[aria-sort]::after{content:" ▾";color:var(--accent-2)}
table.rl-sortierbar thead th[aria-sort="ascending"]::after{content:" ▴"}
table.rl-sortierbar thead th:focus-visible{outline:var(--border-w-stark) solid var(--focus);outline-offset:calc(var(--border-w-stark) * -1)}
.rl-ch{display:block;font-size:var(--text-2xs);color:var(--accent-2);font-weight:var(--fw-bold);white-space:nowrap}

/* Runde 7 */
.rl-bilanz{display:grid;grid-template-columns:minmax(9.5rem,auto) auto;gap:var(--space-sm);align-items:center}
.rl-bilanz__teil small{min-width:2.6rem}
.rl-dtab--wir td{background:var(--accent-soft)}
/* Bilanz: Quali und K.-o. stehen in jeder Zeile genau übereinander */
.rl-bilanz{grid-template-columns:12.5rem auto;justify-items:start}
@media (max-width:720px){.rl-bilanz{grid-template-columns:10.5rem auto}}
/* Sortierte Spalte auf einen Blick */
.rl-sortinfo{margin:0 0 var(--space-2xs);font-size:var(--text-xs);color:var(--ink-muted)}
.rl-sortinfo b{color:var(--accent-2)}
table.rl-sortierbar th.rl-sortspalte{color:var(--accent-2)}
table.rl-sortierbar td.rl-sortspalte{background-color:color-mix(in oklab,var(--accent-2) 10%,transparent)}
.rl-heat table.rl-sortierbar td.rl-heat__bester{background:color-mix(in oklab,var(--accent-2) 22%,transparent)}

/* Runde 9: feste erste Spalten, «weitere laden» rechts, leerer Vergleich */
.rl-sticky th:first-child,.rl-sticky td:first-child{position:sticky;left:0;z-index:1;background:var(--surface-raised)}
.rl-sticky--2 th:first-child,.rl-sticky--2 td:first-child{min-width:3.5rem;max-width:3.5rem}
.rl-sticky--2 th:nth-child(2),.rl-sticky--2 td:nth-child(2){position:sticky;left:3.5rem;z-index:1;background:var(--surface-raised);box-shadow:inset calc(var(--border-w) * -1) 0 0 var(--border-subtle)}
.rl-sticky:not(.rl-sticky--2) td:first-child,.rl-sticky:not(.rl-sticky--2) th:first-child{box-shadow:inset calc(var(--border-w) * -1) 0 0 var(--border-subtle)}
.rl-sticky .rl-clubs--wir td:first-child,.rl-sticky .rl-clubs--wir td:nth-child(2),.rl-sticky .rl-dtab--wir td:first-child{background:color-mix(in oklab,var(--surface-raised),var(--accent) 14%)}
.rl-sticky .rl-dtab--bester td:first-child{background:color-mix(in oklab,var(--surface-raised),var(--accent-2) 16%)}
.rl-clubs td,.rl-dtab td{white-space:nowrap}
.s1-mehr,.rl-mehr{display:flex;justify-content:flex-end;align-items:center;gap:var(--space-md);margin-top:var(--space-sm)}
.rl-leer{margin:0;padding:var(--space-lg);text-align:center;color:var(--ink-muted)}

/* Gruppen im Auswahlfeld (Disziplinen nach Kategorie) */
.rl-wahlgruppe{display:flex;flex-direction:column}
.rl-wahlgruppe__titel{font-size:var(--text-xs);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-muted);padding:var(--space-sm) var(--space-sm) var(--space-2xs);border-top:var(--border-w) solid var(--border-subtle)}
.rl-wahlgruppe:first-child .rl-wahlgruppe__titel{border-top:0}
.rl-auswahl{max-width:22rem}

/* Heatmap ruhiger (Runde 10): keine Kästchen, gleich breite Spalten, Kategorien mit Abstand */
.rl-heat table{border-spacing:0}
.rl-heat th{white-space:normal;width:6.5rem;min-width:6.5rem;line-height:var(--leading-tight);padding:var(--space-xs)}
.rl-heat th.n{width:auto}
.rl-heat .rl-gruppenzeile th{font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint);text-align:left;border-bottom:var(--border-w) solid var(--border-subtle);padding-bottom:var(--space-2xs)}
.rl-heat .rl-gruppenzeile th:first-child{border-bottom:0}
.rl-heat td{background:none;box-shadow:none;border-radius:0;min-width:6.5rem;padding:var(--space-xs);border-bottom:var(--border-w) solid var(--border-subtle)}
.rl-heat td.n{padding-inline:0 var(--space-md)}
.rl-heat :is(th,td).rl-heat__start{padding-left:var(--space-lg)}
.rl-heat td.leer{background:none;opacity:1;color:var(--ink-faint);text-align:left}
.rl-heat td.rl-heat__bester,.rl-heat table.rl-sortierbar td.rl-heat__bester{background:none;box-shadow:none}
.rl-heat tbody tr:hover td{background:var(--surface-state)}

/* Clubs im Netzdiagramm */
.rl-cnetz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:var(--space-xl);align-items:start}
.rl-cnetz__bild{display:grid;justify-items:center;gap:var(--space-md)}
.rl-cnetz__bild .rl-netz{max-width:100%;height:auto}
.rl-cnetz__legende{display:flex;flex-wrap:wrap;gap:var(--space-md);justify-content:center}
.rl-cnetz__club{display:grid;grid-template-columns:auto 1fr;column-gap:var(--space-xs);align-items:center}
.rl-cnetz__club i{grid-row:span 2;inline-size:var(--space-md);block-size:var(--space-md);border-radius:var(--r-pill);background:var(--ton-1)}
.rl-cnetz__club--b i{background:var(--ton-3)}
.rl-cnetz__club small{color:var(--ink-faint);font-size:var(--text-2xs)}
.rl-cnetz__seite{display:grid;gap:var(--space-lg);min-width:0}
.rl-cnetz__spieler{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}
.rl-cnetz__spieler h3{font-size:var(--text-sm);margin:0 0 var(--space-xs)}
.rl-cnetz__top{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2xs)}
.rl-cnetz__top li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-xs);align-items:center;font-size:var(--text-sm)}
.rl-cnetz__top li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-cnetz__top li b{font-variant-numeric:tabular-nums}
.rl-cnetz__top .profilbild{width:1.75rem;height:1.75rem;font-size:.55rem}
@media (max-width:880px){.rl-cnetz{grid-template-columns:1fr}}
@media (max-width:520px){.rl-cnetz__spieler{grid-template-columns:1fr}}

/* Bilanz ruhiger (Runde 10): getönte Kreise statt satter Ampelfarben */
.rl-form__s{background:color-mix(in oklab,var(--state-fail) 22%,transparent);color:var(--ink-muted)}
.rl-form__s--sieg{background:color-mix(in oklab,var(--state-pass) 34%,transparent);color:var(--ink)}
.rl-dtab .rl-form__s{width:1.15rem;height:1.15rem;font-size:.6rem}
.rl-dtab td:has(> .rl-form){white-space:nowrap}

/* Profil: Spiele wie das Livestream-Scoreboard (overlays/scoreboard-widget.html). Grün und Schwarz sind die Tischseiten aus dem Overlay. */
.rl-scores{display:grid;gap:var(--space-sm)}
.rl-score{--gruen:#57A639;--schwarz:#0C0F14;border:var(--border-w) solid var(--border-subtle);border-top:var(--border-w-stark) solid var(--accent);border-bottom:var(--border-w-stark) solid var(--accent-2);border-radius:var(--r-lg);overflow:hidden;background:var(--surface-overlay)}
.rl-score__kopf,.rl-score__zeile{display:grid;grid-template-columns:minmax(0,1fr) repeat(var(--saetze),2.25rem) 3.5rem;align-items:center}
.rl-score__kopf{font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint);padding-block:var(--space-2xs)}
.rl-score__kopf > span{text-align:center}
.rl-score__kopf > span:first-child{text-align:left;padding-left:var(--space-sm);color:var(--accent-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-score__kopf > span:last-child,.rl-score__saetze{background:color-mix(in oklab,var(--accent) 12%,transparent)}
.rl-score__zeile{border-top:var(--border-w) solid var(--border-subtle);font-variant-numeric:tabular-nums}
.rl-score__name{padding:var(--space-xs) var(--space-sm);font-weight:var(--fw-bold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-shadow:inset var(--space-2xs) 0 0 var(--seite)}
.rl-score__zeile--gruen{--seite:var(--gruen)}
.rl-score__zeile--schwarz{--seite:var(--schwarz)}
.rl-score__zeile--gruen .rl-score__name{background:color-mix(in oklab,var(--gruen) 16%,transparent)}
.rl-score__zeile--schwarz .rl-score__name{background:color-mix(in oklab,var(--schwarz) 30%,transparent)}
.rl-score__satz{text-align:center;color:var(--ink-faint)}
.rl-score__satz--gew{color:var(--ink);font-weight:var(--fw-extrabold)}
.rl-score__saetze{align-self:stretch;display:grid;place-items:center;font-size:var(--text-lg);font-weight:var(--fw-extrabold);color:var(--ink-muted)}
.rl-score__zeile--vorne .rl-score__saetze{color:var(--ink)}
.rl-zeitraum{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}
.rl-erkl__text p{margin:0 0 var(--space-sm);font-size:var(--text-sm);color:var(--ink-muted)}
.rl-kz-zeile{cursor:pointer}
.rl-kz-zeile:hover td,.rl-kz-zeile:focus-visible td{background:var(--surface-state)}
.rl-kz-wie{font-size:var(--text-2xs);color:var(--accent);font-weight:var(--fw-bold);white-space:nowrap}
.rl-kz__rechnung{display:grid;gap:var(--space-sm);margin:var(--space-md) 0}
.rl-kz__rechnung dt{font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint)}
.rl-kz__rechnung dd{margin:var(--space-3xs) 0 0}

/* Kurzhinweis immer lesbar: Regeln wie «… span {color}» dürfen die Blase nicht umfärben (Runde 11) */
.hinweis-wickel > .kurzhinweis.kurzhinweis{color:var(--surface-raised);background:var(--ink);font-size:var(--text-2xs);font-weight:var(--fw-medium);text-transform:none;letter-spacing:normal}

.rl-profil__wahl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-sm);align-items:center}
.rl-profil__wahl > small{font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint)}
.rl-profil__wahl .umschaltgruppe{flex-wrap:wrap}

/* Rang und Quali mit Balken (Runde 11) */
.rl-rangzelle{min-width:5.5rem}
.rl-rangzelle b{display:block;font-variant-numeric:tabular-nums;margin-bottom:var(--space-3xs)}
.rl-rangzelle .rl-balken{block-size:.375rem}

/* Duell als Hantel (Runde 11): eine Bahn je Kennzahl, beide Spieler als Punkte, Wert am Punkt */
.rl-vgl__reihen{gap:0}
.rl-hantel,.rl-hantel__skala{display:grid;grid-template-columns:minmax(8rem,12rem) minmax(0,1fr);gap:var(--space-md);align-items:center}
.rl-hantel{min-height:3.5rem;border-top:var(--border-w) solid var(--border-subtle)}
.rl-hantel__t{display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--ink)}
.rl-hantel__bahn{position:relative;block-size:.25rem;border-radius:var(--r-pill);background:var(--border-subtle);margin-inline:var(--space-lg)}
.rl-hantel__strecke{position:absolute;top:0;bottom:0;background:var(--border-strong);border-radius:var(--r-pill)}
.rl-hantel__punkt{position:absolute;top:50%;inline-size:.875rem;block-size:.875rem;margin:-.4375rem 0 0 -.4375rem;border-radius:var(--r-pill);background:var(--ton-1);box-shadow:0 0 0 var(--space-3xs) var(--surface-raised)}
.rl-hantel__punkt--b{background:var(--ton-3)}
.rl-hantel__punkt b{position:absolute;left:50%;translate:-50% 0;font-size:var(--text-xs);font-weight:var(--fw-semibold);color:var(--ink-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.rl-hantel__punkt--a b{bottom:calc(100% + var(--space-3xs))}
.rl-hantel__punkt--b b{top:calc(100% + var(--space-3xs))}
.rl-hantel--a .rl-hantel__punkt--a b,.rl-hantel--b .rl-hantel__punkt--b b{color:var(--ink);font-weight:var(--fw-extrabold)}
.rl-hantel__skala{font-size:var(--text-2xs);color:var(--ink-faint);padding-bottom:var(--space-2xs)}
.rl-hantel__skala{grid-template-columns:minmax(8rem,12rem) repeat(3,minmax(0,1fr))}
.rl-hantel__skala span:nth-child(2){padding-left:var(--space-lg)}
.rl-hantel__skala span:nth-child(3){text-align:center}
.rl-hantel__skala span:nth-child(4){text-align:right;padding-right:var(--space-lg)}
@media (max-width:560px){.rl-hantel{grid-template-columns:1fr;gap:var(--space-lg);padding-block:var(--space-sm) var(--space-lg)}.rl-hantel__skala{display:none}}

/* Mobile (Runde 11): Tabellen bleiben Tabellen und scrollen seitwärts; die klebende erste Spalte bleibt schmal */
@media (max-width:620px){
 .rl-sticky:not(.rl-sticky--2) :is(th,td):first-child{max-width:9.5rem;min-width:9.5rem}
 .rl-sticky:not(.rl-sticky--2) td:first-child .rl-spieler__wer{min-width:0}
 .rl-sticky:not(.rl-sticky--2) td:first-child .rl-spieler__wer > span{overflow:hidden}
 .rl-sticky:not(.rl-sticky--2) td:first-child .rl-dtab__n{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .rl-sticky--2 :is(th,td):nth-child(2){max-width:8.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .tabelle--rollen :is(th,td){white-space:nowrap}
}

/* Duell Runde 12: Spieler 1 Türkis (--ton-6), Spieler 2 Koralle (--ton-4); Gold und Blau sind für die Marke reserviert */
.rl-duell{--a:var(--accent);--b:var(--accent-2)}
.rl-dk{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--space-lg);align-items:center}
.rl-dk__p{display:grid;gap:var(--space-sm);justify-items:start}
.rl-dk__p--b{justify-items:end;text-align:right}
.rl-dk__p .profilbild{box-shadow:0 0 0 var(--space-3xs) var(--surface-raised),0 0 0 calc(var(--space-3xs) * 2) var(--a)}
.rl-dk__p--b .profilbild{box-shadow:0 0 0 var(--space-3xs) var(--surface-raised),0 0 0 calc(var(--space-3xs) * 2) var(--b)}
.rl-dk__name{display:grid;gap:var(--space-3xs)}
.rl-dk__name .rl-name{font-size:var(--text-xl)}
.rl-dk__p--a .rl-name__vor{color:var(--a)} .rl-dk__p--b .rl-name__vor{color:var(--b)}
.rl-dk__mitte{display:grid;place-items:center}
.rl-dk__mitte .rl-netz__form--a{fill:var(--a);stroke:var(--a)} .rl-dk__mitte .rl-netz__form--b{fill:var(--b);stroke:var(--b)}
.rl-dk__vs{font-size:var(--text-3xl);font-weight:var(--fw-extrabold);color:var(--ink-faint)}
.rl-qi{display:grid;grid-template-columns:repeat(3,auto);gap:var(--space-2xs) var(--space-md);margin:0}
.rl-qi dt{font-size:var(--text-2xs);color:var(--ink-faint);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:var(--fw-bold)}
.rl-qi dd{margin:0;font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums}
.rl-qi dd small{display:block;font-weight:var(--fw-regular);color:var(--ink-muted);font-size:var(--text-2xs);max-width:9rem}
@media (max-width:760px){.rl-dk{grid-template-columns:1fr 1fr}.rl-dk__mitte{grid-column:1 / -1;order:3}.rl-qi{grid-template-columns:1fr}.rl-dk__p--b .rl-qi{justify-items:end}}
.rl-dleg{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);font-size:var(--text-xs);color:var(--ink-muted)}
.rl-dleg span{display:inline-flex;align-items:center;gap:var(--space-2xs)}
.rl-dleg__pt{inline-size:.75rem;block-size:.75rem;border-radius:var(--r-pill);background:var(--a)} .rl-dleg__pt--b{background:var(--b)}
/* Durchschnitts-Marken: gestrichelt, je Bereich eigene Form */
.rl-ds{position:absolute;top:-.6rem;bottom:-.6rem;inline-size:0;border-left:var(--border-w-stark) dashed var(--ink-muted);translate:-50% 0}
/* Kein Schwarz, Blau oder Gold im Duell (Vasco, Runde 12): die drei Schnitte nur über die Linienart */
.rl-ds--tfcz{border-left-style:solid;border-left-color:var(--ink-muted)}
.rl-ds--ch{border-left-style:dashed;border-left-color:var(--ink-muted)}
.rl-ds--int{border-left-style:dotted;border-left-color:var(--ink-muted)}
.rl-ds--leg{position:static;display:inline-block;block-size:1rem;translate:none}
.rl-dvs{display:grid}
.rl-dv{display:grid;grid-template-columns:minmax(8rem,12rem) minmax(0,1fr);gap:var(--space-md);align-items:center;min-height:3.5rem;border-top:var(--border-w) solid var(--border-subtle)}
.rl-dv__t{display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-sm);font-weight:var(--fw-bold)}
.rl-dv__bahn{position:relative;block-size:.25rem;border-radius:var(--r-pill);background:var(--border-subtle);margin-inline:var(--space-lg)}
.rl-dv__pt{position:absolute;top:50%;inline-size:.9rem;block-size:.9rem;margin:-.45rem 0 0 -.45rem;border-radius:var(--r-pill);background:var(--a);box-shadow:0 0 0 var(--space-3xs) var(--surface-raised);z-index:1}
.rl-dv__pt--b{background:var(--b)}
.rl-dv__pt b{position:absolute;left:50%;translate:-50% 0;font-size:var(--text-xs);white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--a)}
.rl-dv__pt--b b{color:var(--b);top:calc(100% + var(--space-3xs))} .rl-dv__pt--a b{bottom:calc(100% + var(--space-3xs))}
.rl-dv__balken{position:relative;display:grid;gap:var(--space-3xs);padding-block:var(--space-xs)}
.rl-dv__zeile{display:grid;grid-template-columns:minmax(0,1fr) 3.5rem;gap:var(--space-xs);align-items:center;position:relative}
.rl-dv__zeile::before{content:"";grid-column:1;grid-row:1;block-size:.6rem;border-radius:var(--r-pill);background:var(--border-subtle)}
.rl-dv__fuell{grid-column:1;grid-row:1;block-size:.6rem;border-radius:var(--r-pill);background:var(--a);opacity:.55}
.rl-dv__zeile--b .rl-dv__fuell{background:var(--b)}
.rl-dv__zeile--vorne .rl-dv__fuell{opacity:1}
.rl-dv__zeile b{font-size:var(--text-xs);font-variant-numeric:tabular-nums;text-align:right;color:var(--ink-muted)}
.rl-dv__zeile--vorne b{color:var(--ink)}
.rl-dv--2 .rl-ds{top:0;bottom:0;margin-left:0}
.rl-dv--2 .rl-dv__balken{padding-right:4rem}
.rl-dv--2 .rl-dv__zeile{grid-template-columns:minmax(0,1fr) 0;margin-right:-4rem;padding-right:4rem}
.rl-dv--2 .rl-dv__zeile b{position:absolute;right:0}
.rl-dv--3{grid-template-columns:minmax(8rem,12rem) 4rem minmax(0,1fr) 4rem}
.rl-dv__wert{font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--ink-muted)}
.rl-dv__wert--a{text-align:right} .rl-dv__wert--vorne{font-weight:var(--fw-extrabold)}
.rl-dv__wert--a.rl-dv__wert--vorne{color:var(--a)} .rl-dv__wert--b.rl-dv__wert--vorne{color:var(--b)}
.rl-dv__achse{position:relative;block-size:1.4rem;display:grid;align-content:space-between}
.rl-dv__achse::before{content:"";position:absolute;left:50%;top:-.3rem;bottom:-.3rem;border-left:var(--border-w-stark) dashed var(--ink-muted)}
.rl-dv__abw{position:absolute;block-size:.55rem;border-radius:var(--r-pill);background:var(--a)}
.rl-dv__abw--a{top:0} .rl-dv__abw--b{bottom:0;background:var(--b)}
@media (max-width:560px){.rl-dv{grid-template-columns:1fr;gap:var(--space-md);padding-block:var(--space-sm) var(--space-lg)}.rl-dv--3{grid-template-columns:3.5rem minmax(0,1fr) 3.5rem}.rl-dv--3 .rl-dv__t{grid-column:1 / -1}}

/* Club-Netz in denselben Farben wie das Duell: Club 1 Türkis, Club 2 Koralle */
.rl-cnetz{--a:var(--ton-6);--b:var(--ton-4)}
.rl-cnetz .rl-netz__form--a{fill:var(--a);stroke:var(--a)} .rl-cnetz .rl-netz__form--b{fill:var(--b);stroke:var(--b)}
.rl-cnetz__club i{background:var(--a)} .rl-cnetz__club--b i{background:var(--b)}

/* Duell D3 (Runde 13): kompakt und zentriert, Linien durch alle Zeilen */
.rl-d3{--zh:2.75rem;position:relative;display:grid;grid-template-columns:minmax(7rem,10rem) 4.5rem minmax(0,1fr) 4.5rem;grid-template-rows:auto repeat(var(--zeilen),var(--zh));column-gap:var(--space-sm);max-width:46rem;margin-inline:auto;width:100%}
.rl-d3__kopf,.rl-d3__z{display:contents}
.rl-d3__kopf > *{grid-row:1;padding-bottom:var(--space-xs);font-size:var(--text-xs);font-weight:var(--fw-extrabold)}
.rl-d3__skala{display:flex;justify-content:space-between;align-items:end;font-size:var(--text-2xs);color:var(--ink-faint);font-weight:var(--fw-bold)}
.rl-d3__skala b{color:var(--ink);font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wide)}
.rl-d3__t{grid-column:1;display:flex;align-items:center;gap:var(--space-3xs);font-size:var(--text-sm);font-weight:var(--fw-bold);border-top:var(--border-w) solid var(--border-subtle)}
.rl-d3__w{display:flex;align-items:center;font-variant-numeric:tabular-nums;font-size:var(--text-sm);color:var(--ink-muted);border-top:var(--border-w) solid var(--border-subtle)}
.rl-d3__kopf .rl-d3__w{border-top:0}
.rl-d3__w--a{grid-column:2;justify-content:flex-end} .rl-d3__w--b{grid-column:4}
.rl-d3__kopf .rl-d3__w--a{color:var(--a)} .rl-d3__kopf .rl-d3__w--b{color:var(--b)}
.rl-d3__w--vorne{font-weight:var(--fw-extrabold)} .rl-d3__w--a.rl-d3__w--vorne{color:var(--a)} .rl-d3__w--b.rl-d3__w--vorne{color:var(--b)}
.rl-d3__w small{font-size:var(--text-2xs);color:var(--ink-faint);font-style:normal}
.rl-d3__bahn{grid-column:3;position:relative;border-top:var(--border-w) solid var(--border-subtle)}
.rl-d3__kopf .rl-d3__skala{grid-column:3}
.rl-d3__abw{position:absolute;block-size:.5rem;border-radius:var(--r-pill);background:var(--a)}
.rl-d3__abw--a{top:calc(50% - .6rem)} .rl-d3__abw--b{top:calc(50% + .1rem);background:var(--b)}
.rl-d3__linien{grid-column:3;grid-row:2 / -1;width:100%;height:100%;pointer-events:none;overflow:visible;position:relative;z-index:1}
.rl-d3__l{fill:none;stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linecap:round}
circle.rl-d3__l{stroke:none}
.rl-d3__l--ch{stroke:var(--ink)}
.rl-d3__l--tfcz{stroke:var(--ton-2);stroke-dasharray:7 4} circle.rl-d3__l--tfcz{fill:var(--ton-2)}
.rl-d3__l--int{stroke:var(--ton-5);stroke-width:3.5} circle.rl-d3__l--int{fill:var(--ton-5)}
.rl-dleg{justify-content:center}
.rl-dleg__l{display:inline-block;inline-size:1.25rem;block-size:0;border-top:2px solid var(--ink)}
.rl-dleg__l--tfcz{border-top:2px dashed var(--ton-2)} .rl-dleg__l--int{border-top:3px solid var(--ton-5)}
@media (max-width:560px){.rl-d3{grid-template-columns:5.5rem 2.9rem minmax(0,1fr) 2.9rem;column-gap:var(--space-2xs)}.rl-d3__t{font-size:var(--text-2xs);line-height:var(--leading-tight)}.rl-d3__t .hinweis-wickel{display:none}.rl-d3__w{font-size:var(--text-2xs)}.rl-d3__skala span{display:none}.rl-d3__skala{justify-content:center}}

.rl-cnetz{--a:var(--accent);--b:var(--ton-5);--c:var(--ton-6)}
.rl-cnetz .rl-netz__form--c{fill:var(--c);stroke:var(--c)} .rl-cnetz__club--c i{background:var(--c)}
.rl-cnetz__club--a i{background:var(--a)} .rl-cnetz__club--b i{background:var(--b)}
.rl-such__gruppe{font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint);padding:var(--space-xs) var(--space-sm) var(--space-3xs);pointer-events:none}
.rl-d3__z > *{grid-row:var(--r)}

/* Duell D3, Runde 14: Ø CH als Linie mit Beschriftung oben, Schnitt TFCZ und international als Striche je Zeile, Skala unten */
.rl-d3{grid-template-rows:auto repeat(var(--zeilen),var(--zh)) auto}
.rl-d3__kopf .rl-d3__w{gap:var(--space-2xs);font-size:var(--text-sm)}
.rl-d3__ch{grid-column:3;grid-row:1;text-align:center;font-size:var(--text-xs);font-weight:var(--fw-extrabold);color:var(--ink);padding-bottom:var(--space-xs)}
.rl-d3__linie{grid-column:3;grid-row:2 / calc(var(--zeilen) + 2);justify-self:center;width:0;border-left:2px solid var(--ink);z-index:1;pointer-events:none}
.rl-d3__s{position:absolute;top:18%;bottom:18%;width:0;translate:-1px 0;z-index:2;border-left:3px solid}
.rl-d3__s--tfcz{border-left-color:var(--ton-2)} .rl-d3__s--int{border-left-color:var(--ton-5)}
.rl-d3__fuss{display:contents} .rl-d3__fuss > *{grid-row:var(--r);grid-column:3}
.rl-d3__skala{display:flex;justify-content:space-between;padding-top:var(--space-xs);border-top:var(--border-w) solid var(--border-subtle);font-size:var(--text-2xs);color:var(--ink-faint);font-weight:var(--fw-bold)}
.rl-dleg__s{display:inline-block;inline-size:0;block-size:1rem;border-left:3px solid var(--ton-2)} .rl-dleg__s--int{border-left-color:var(--ton-5)}
@media (max-width:560px){.rl-d3__skala{font-size:.6rem}}
@media (max-width:560px){.rl-d3__fuss .rl-d3__skala span{display:inline}}
.rl-klickbild{cursor:pointer}
.rl-klickbild:focus-visible{outline:var(--border-w-stark) solid var(--focus);outline-offset:2px}
@media (max-width:560px){.rl-d3__fuss .rl-d3__skala .rl-d3__lang{display:none}}
.rl-d3__skala > span{white-space:nowrap}

/* Suchfeld als Auswahl erkennbar: Pfeil rechts wie bei der Eigenauswahl */
.rl-such .feld__eingabe{position:relative}
.rl-such input{padding-right:2.75rem}
.rl-such__pfeil{position:absolute;right:var(--space-2xs);top:50%;translate:0 -50%;inline-size:var(--tap-min);block-size:var(--tap-min);display:grid;place-items:center;background:none;border:0;color:var(--ink-muted);cursor:pointer;z-index:1}
.rl-such:has(input[aria-expanded="true"]) .rl-such__pfeil svg{transform:rotate(180deg)}

/* Duell Runde 15: zwei Spalten, Kennzahl rechtsbündig an der Achse, Wert am Balkenende */
.rl-d4{position:relative;display:grid;grid-template-columns:max-content minmax(0,1fr);grid-template-rows:auto repeat(var(--zeilen),2.4rem) auto;column-gap:var(--space-md);max-width:40rem;margin-inline:auto;width:100%}
.rl-d4 .rl-d3__t{grid-column:1;justify-content:flex-end;text-align:right;border:0;font-size:var(--text-sm)}
.rl-d4 .rl-d3__bahn{grid-column:2;position:relative;border:0;display:grid;align-content:center;gap:3px}
.rl-d4__ch{grid-column:2;grid-row:1;text-align:center;font-size:var(--text-xs);font-weight:var(--fw-extrabold);padding-bottom:var(--space-2xs)}
.rl-d4__linie{grid-column:2;grid-row:2 / calc(var(--zeilen) + 2);justify-self:center;width:0;border-left:2px solid var(--ink);z-index:1;pointer-events:none}
.rl-d4__skala{grid-column:2;display:flex;justify-content:space-between;padding-top:var(--space-xs);font-size:var(--text-2xs);color:var(--ink-faint);font-weight:var(--fw-bold)}
.rl-d3__b{position:relative;display:block;block-size:.75rem}
.rl-d3__b i{position:absolute;top:0;bottom:0;border-radius:var(--r-pill);background:var(--a);opacity:.55}
.rl-d3__b--b i{background:var(--b)}
.rl-d3__b--vorne i{opacity:1}
.rl-d3__b em{position:absolute;top:50%;translate:0 -50%;font-style:normal;font-size:var(--text-2xs);font-weight:var(--fw-bold);color:var(--ink-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.rl-d3__b--vorne em{color:var(--ink);font-weight:var(--fw-extrabold)}
.rl-d3__b--leer em{translate:4px -50%;color:var(--ink-faint);font-weight:var(--fw-regular)}
.rl-d4 .rl-d3__s{top:12%;bottom:12%}
@media (max-width:560px){.rl-d4{column-gap:var(--space-xs)}.rl-d4 .rl-d3__t{font-size:var(--text-2xs);max-width:6.5rem}.rl-d4 .rl-d3__t .hinweis-wickel{display:none}}

/* Club-Netz Runde 16 */
.rl-cnetz{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center}
.rl-cnetz__spieler{grid-template-columns:1fr;gap:var(--space-lg)}
.rl-cnetz__gruppe{border-left:var(--border-w-stark) solid var(--a);padding-left:var(--space-sm)}
.rl-cnetz__gruppe--b{border-left-color:var(--b)} .rl-cnetz__gruppe--c{border-left-color:var(--c)}
.rl-cnetz__tabelle{margin-top:var(--space-md)}
@media (max-width:880px){.rl-cnetz{grid-template-columns:1fr}}
/* Suchfeld und Auswahlfeld in den Filtern gleich breit (Runde 16) */
.s7-stufe .rl-auswahl,.s7-stufe .rl-such{max-width:none;width:100%}
.s7-duell .s7-duell__wahl{max-width:22rem}

/* Duell Runde 16: antippbares Netz, Detail, Balken ab links */
.rl-dk__mitte .rl-netz{max-width:100%;height:auto}
.rl-netz__achse{cursor:pointer}
.rl-netz__achse text{fill:var(--ink-muted)}
.rl-netz__achse:hover text,.rl-netz__achse:focus-visible text,.rl-netz__achse.ist-aktiv text{fill:var(--ink);font-weight:var(--fw-extrabold)}
.rl-netz__achse.ist-aktiv .rl-netz__name{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.rl-dd{display:grid;gap:var(--space-sm);max-width:40rem;margin-inline:auto;width:100%;background:var(--surface-base);border:var(--border-w) solid var(--border-subtle);border-radius:var(--r-lg);padding:var(--space-md)}
.rl-dd__kopf h3{margin:0;font-size:var(--text-lg)} .rl-dd__kopf p{margin:var(--space-3xs) 0 0;font-size:var(--text-sm);color:var(--ink-muted)}
.rl-dd__werte{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}
.rl-dd__p{border-left:var(--border-w-stark) solid var(--a);padding-left:var(--space-sm)} .rl-dd__p--b{border-left-color:var(--b)}
.rl-dd__p small{display:block;font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--ink-muted)}
.rl-dd__p b{display:block;font-size:var(--text-2xl);font-weight:var(--fw-extrabold);font-variant-numeric:tabular-nums}
.rl-dd__p--vorne.rl-dd__p--a b{color:var(--a)} .rl-dd__p--vorne.rl-dd__p--b b{color:var(--b)}
.rl-dd__p span{font-size:var(--text-2xs);color:var(--ink-faint)}
.rl-dd__ds{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);font-size:var(--text-xs);color:var(--ink-muted)}
.rl-dd__ds span{display:inline-flex;align-items:center;gap:var(--space-2xs)} .rl-dd__ds b{color:var(--ink)}
.rl-dm{position:absolute;top:-3px;bottom:-3px;width:0;translate:-1.5px 0;border-left:3px solid var(--ink);z-index:2}
.rl-dm--tfcz{border-left-color:var(--ton-2)} .rl-dm--int{border-left-color:var(--ton-5)}
.rl-dm--leg{position:static;display:inline-block;block-size:1rem;translate:none}
.rl-dd__ds .rl-dm{position:static;display:inline-block;block-size:.9rem;translate:none}
.rl-db__klappe{max-width:40rem;margin-inline:auto;width:100%}
.rl-db{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-xs) var(--space-md);align-items:center;margin-top:var(--space-sm)}
.rl-db__t{justify-self:end;background:none;border:0;padding:0;color:var(--ink);font:inherit;font-size:var(--text-sm);font-weight:var(--fw-bold);cursor:pointer;text-align:right}
.rl-db__t:hover{text-decoration:underline}
.rl-db__bahn{position:relative;display:grid;gap:3px;padding-right:3.5rem}
.rl-db__b{position:relative;display:block;block-size:.75rem;border-radius:var(--r-pill);background:var(--border-subtle)}
.rl-db__b i{position:absolute;left:0;top:0;bottom:0;border-radius:var(--r-pill);background:var(--a);opacity:.6}
.rl-db__b--b i{background:var(--b)} .rl-db__b--vorne i{opacity:1}
.rl-db__b em{position:absolute;top:50%;translate:0 -50%;font-style:normal;font-size:var(--text-2xs);font-weight:var(--fw-bold);color:var(--ink-muted);white-space:nowrap;left:var(--space-2xs)}
.rl-db__b--vorne em{color:var(--ink)}
.rl-db__skala{display:flex;justify-content:space-between;padding-right:3.5rem;font-size:var(--text-2xs);color:var(--ink-faint)}
@media (max-width:560px){.rl-db__t{font-size:var(--text-2xs)}.rl-dd__p b{font-size:var(--text-xl)}}
.rl-dk .rl-netz text{font-size:13px}
@media (max-width:560px){.rl-dk .rl-netz text{font-size:17px}}

/* ITSF-Rang unter dem Namen (Runde 17) */
.rl-itsf{display:block;font-size:var(--text-2xs);font-weight:var(--fw-bold);color:var(--ink-faint);white-space:nowrap;font-variant-numeric:tabular-nums}
.rl-itsf small{font-weight:var(--fw-regular)}
.rl-n2{display:grid;min-width:0}
.rl-n2 > :first-child{overflow:hidden;text-overflow:ellipsis}
.rl-dtab__n .rl-itsf{display:block}
.rl-profil__unter .rl-itsf{display:inline;margin-left:var(--space-xs);color:var(--ink-muted)}
/* Club-Netz Runde 17: grössere Bilder, der TFCZ (Blau, Klasse a) im Vordergrund, der andere Club zurückgenommen */
.rl-cnetz__gruppe .rl-cnetz__top li{grid-template-columns:auto minmax(0,1fr) auto;gap:var(--space-sm)}
.rl-cnetz__gruppe .profilbild{width:3.5rem;height:3.5rem;font-size:var(--text-xs)}
.rl-cnetz__gruppe .rl-cnetz__top li{font-size:var(--text-md)}
.rl-cnetz__gruppe h3{font-size:var(--text-lg)}
.rl-cnetz__gruppe--a{order:-1}
/* Infoknopf im Tabellenkopf (Runde 17): Blase öffnet nach unten, damit der Tabellenrahmen sie nicht abschneidet, und liegt über der klebenden Spalte */
.tabelle thead .hinweis-wickel > .kurzhinweis{bottom:auto;top:calc(100% + var(--space-2xs));white-space:normal;width:max-content;max-width:16rem;text-transform:none;letter-spacing:normal;font-weight:var(--fw-medium);text-align:left}
.tabelle thead .hinweis-wickel > .kurzhinweis::after{display:none}
.tabelle thead th:has(.hinweis-wickel:hover,.hinweis-wickel:focus-within,[aria-expanded="true"]){z-index:6}
.tabelle thead th:not(:first-child):has(.hinweis-wickel){position:relative}
/* Platzierungen: die Zahl steht über dem Ende der Balkenfüllung (Runde 17) */
.rl-heat td .rl-hz{position:relative;display:block;padding-top:1.15rem}
.rl-heat td .rl-hz b{position:absolute;top:0;left:clamp(1rem,var(--x),calc(100% - 1rem));translate:-50% 0;margin:0;font-size:var(--text-xs);white-space:nowrap}
/* Dropdowns Runde 17: Gruppenkopf als farbiges, nicht wählbares Band; Einträge darunter eingerückt mit Linie in Akzentfarbe */
.rl-wahlgruppe__titel,.rl-such__gruppe{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:var(--space-2xs);margin:var(--space-2xs) 0 0;padding:var(--space-2xs) var(--space-sm);border:0;border-radius:var(--r-xs);background:var(--accent-soft);color:var(--accent);font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:default;user-select:none}
.rl-wahlgruppe:first-child .rl-wahlgruppe__titel,.suchauswahl__liste > .rl-such__gruppe:first-child{margin-top:0}
.rl-wahlgruppe > .wahl,.rl-such__gruppe ~ [role="option"]{margin-left:var(--space-sm);padding-left:var(--space-sm);border-left:var(--border-w-stark) solid var(--accent-soft)}
.rl-wahlgruppe > .wahl:hover,.rl-such__gruppe ~ [role="option"]:hover,.rl-such__gruppe ~ [role="option"].ist-aktiv{border-left-color:var(--accent)}
.rl-auswahl .eigenauswahl__liste > .wahl:first-child{font-weight:var(--fw-bold)}

/* ITSF mit «von N» und kleinen Balken (Runde 18) */
.rl-itsf small{font-weight:var(--fw-regular);opacity:.8}
.rl-itsfb{display:grid;gap:2px;min-width:0}
.rl-itsfb__z{display:grid;grid-template-columns:1.9rem minmax(1.5rem,1fr) auto auto;align-items:center;gap:3px;font-size:.625rem;line-height:1.2;color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.rl-itsfb__z i{display:block;block-size:3px;border-radius:var(--r-pill);background:linear-gradient(90deg,var(--accent) var(--p),var(--border-subtle) var(--p))}
.rl-itsfb__z b{color:var(--ink);font-weight:var(--fw-extrabold)}
.s4-lk__itsf{position:absolute;top:calc(var(--space-sm) + 4rem + var(--space-2xs));right:var(--space-sm);width:5.5rem}
.s4-lk__oben{min-height:8.5rem}
.rl-profil__kopf .rl-itsfb{max-width:14rem;margin-top:var(--space-2xs)}
.rl-heat td.n{white-space:normal}
.rl-heat td.n .rl-n2{line-height:var(--leading-tight)}
/* «weitere laden» (Runde 18): mittig, als unterstrichener Text mit Pfeil nach unten, Zähler darunter */
.s1-mehr,.rl-mehr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3xs);margin-top:var(--space-sm)}
.s1-mehr > button,.rl-mehr > button{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2xs);font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;padding:var(--space-2xs) var(--space-sm);border-radius:var(--r-xs)}
.s1-mehr > button::after,.rl-mehr > button::after{content:"";inline-size:.5rem;block-size:.5rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;rotate:45deg;translate:0 -2px}
.s1-mehr > button:hover,.rl-mehr > button:hover{color:var(--accent)}
.s1-mehr > button:focus-visible,.rl-mehr > button:focus-visible{outline:var(--border-w-stark) solid var(--focus)}
.s1-mehr > span,.rl-mehr > span{font-size:var(--text-2xs)}
/* Häufige Fragen zweispaltig (Runde 18) */
.rl-faq{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:var(--space-lg)}
@media (max-width:720px){.rl-faq{grid-template-columns:1fr}}
.rl-dd--leer p{margin:0;text-align:center;color:var(--ink-muted);font-size:var(--text-sm)}
.rl-dk--nur-netz{display:grid;place-items:center}
.rl-dk--nur-netz .rl-netz{max-width:min(100%,32rem);height:auto}
.rl-dk.rl-dk--nur-netz{grid-template-columns:minmax(0,1fr)}
@media (max-width:620px){.s7-duell--bilder .s7-duell__wahl--b input{text-align:left}}

/* Runde 19: ITSF als Text, im Profil rechts vom Namen */
.rl-profil__kopf{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-md)}
.rl-profil__itsf{display:grid;gap:var(--space-3xs);justify-items:end;text-align:right}
.rl-profil__itsf .rl-itsf{font-size:var(--text-sm);font-weight:var(--fw-extrabold);color:var(--ink)}
@media (max-width:520px){.rl-profil__kopf{grid-template-columns:auto minmax(0,1fr)}.rl-profil__itsf{grid-column:1 / -1;justify-items:start;text-align:left;display:flex;gap:var(--space-md)}}

/* Duell: antippbare Kennzahlen sichtbar (Runde 19) */
.rl-dk--nur-netz{gap:var(--space-md)}
.rl-netz__achse text{fill:var(--accent)}
.rl-netz__achse .rl-netz__name{text-decoration:underline dotted;text-underline-offset:3px}
.rl-dchips{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2xs);max-width:40rem}
.rl-dchips__titel{flex-basis:100%;text-align:center;font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint)}
.rl-dchip{font:inherit;font-size:var(--text-xs);font-weight:var(--fw-bold);color:var(--ink);background:var(--surface-base);border:var(--border-w) solid var(--border-strong);border-radius:var(--r-pill);padding:var(--space-2xs) var(--space-sm);min-height:var(--tap-min);cursor:pointer}
.rl-dchip:hover{border-color:var(--accent);color:var(--accent)}
.rl-dchip.ist-aktiv{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.rl-dchip:focus-visible{outline:var(--border-w-stark) solid var(--focus);outline-offset:2px}
/* Clubvergleich je Disziplin (Runde 20): Zahlenspalten gleich breit, Club bekommt den Rest */
.tabelle__rahmen .rl-clubs--disz{table-layout:fixed;width:100%;min-width:40rem}
.rl-clubs--disz :is(th,td):first-child{width:3.5rem}
.rl-clubs--disz :is(th,td):nth-child(n+3){white-space:normal}
.rl-clubs--disz :is(th,td):nth-child(2){width:28%}

/* Runde 21: Bild in eigener Spalte, die immer klebt; der Name klebt nur ab Tabletbreite. Rang als «#», schmal */
.rl-fotozelle{width:2.75rem;min-width:2.75rem;max-width:2.75rem;padding-inline:var(--space-2xs)!important;white-space:nowrap}
.rl-fotozelle .profilbild{width:1.9rem;height:1.9rem;font-size:.55rem}
.rl-fotozelle .profilbild + .profilbild{margin-left:-.7rem}
.rl-dtab .rl-fotozelle{width:3.75rem;min-width:3.75rem;max-width:3.75rem}
.rl-sticky--foto :is(th,td):first-child{position:sticky;left:0;z-index:2;background:var(--surface-raised)}
.rl-sticky--foto :is(th,td):nth-child(2){position:sticky;left:3.75rem;z-index:1;background:var(--surface-raised);box-shadow:inset calc(var(--border-w) * -1) 0 0 var(--border-subtle);max-width:none;min-width:0}
.rl-sticky--foto.rl-sticky :is(th,td):first-child{box-shadow:none;min-width:3.75rem;max-width:3.75rem}
.rl-heat .rl-fotozelle{position:sticky;left:0;z-index:2;background:var(--surface-raised);border-bottom:var(--border-w) solid var(--border-subtle)}
.rl-heat thead .rl-fotozelle{border-bottom:0}
.rl-heat td.n,.rl-heat th.n{position:sticky;left:2.75rem;z-index:1;background:var(--surface-raised)}
@media (max-width:620px){
 .rl-sticky--foto :is(th,td):nth-child(2),.rl-heat td.n,.rl-heat th.n{position:static;box-shadow:none}
}
.rl-rangspalte{width:2.5rem}
.rl-sticky--2 :is(th,td):first-child{min-width:2.5rem;max-width:2.5rem;width:2.5rem}
.rl-sticky--2 :is(th,td):nth-child(2){left:2.5rem}
.rl-clubs--disz :is(th,td):first-child{width:2.5rem}
@media (max-width:620px){.rl-sticky.rl-sticky--foto :is(th,td):first-child{min-width:3.75rem;max-width:3.75rem}.rl-sticky.rl-sticky--foto :is(th,td):nth-child(2){min-width:9rem;max-width:none}}
#profil .rl-formblock,#profil .rl-formblock__zeile,#profil .rl-formblock__zeile > *{min-width:0;max-width:100%}
#profil .rl-bilanz{grid-template-columns:minmax(0,1fr);row-gap:var(--space-2xs)}
#profil .rl-form{flex-wrap:wrap}

/* Runde 22: ITSF als eigene Spalte, Profilbild ganz links und schmal */
.rl-itsfspalte{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.rl-itsfspalte small{display:block;font-weight:var(--fw-regular);color:var(--ink-muted);font-size:var(--text-xs)}
.rl-itsfz{display:block;line-height:1.5}
.rl-fotozelle,.rl-dtab .rl-fotozelle{width:2.5rem;min-width:2.5rem;max-width:2.5rem;padding-left:var(--space-2xs)!important;padding-right:0!important;text-align:left}
.rl-fotozelle .profilbild{width:1.75rem;height:1.75rem}
.rl-fotozelle .profilbild + .profilbild{margin-left:-1.15rem;margin-top:.5rem;vertical-align:top}
.rl-sticky--foto.rl-sticky :is(th,td):first-child,.rl-sticky.rl-sticky--foto :is(th,td):first-child{min-width:2.5rem;max-width:2.5rem}
.rl-sticky--foto :is(th,td):nth-child(2){left:2.5rem}
.rl-heat :is(th,td).rl-fotozelle{width:2.5rem;min-width:2.5rem;max-width:2.5rem;text-align:left;padding-left:var(--space-2xs);padding-right:0}
.rl-heat :is(th,td).rl-itsfspalte{width:auto;min-width:3.5rem;text-align:right;padding-inline:var(--space-xs)}
.rl-heat td.rl-itsfspalte{font-weight:var(--fw-bold)}
.rl-itsfspalte small{white-space:nowrap}

/* Runde 24: Ranglisten je Disziplin kompakter, Köpfe dürfen zweizeilig sein */
.rl-dtab thead th{white-space:normal;line-height:var(--leading-tight);vertical-align:bottom;hyphens:manual}
.rl-dtab :is(th,td).tabelle__zahl{padding-inline:var(--space-xs)}
.rl-dtab thead th.tabelle__zahl{min-width:3rem;max-width:5.5rem}
.rl-itsfspalte small{font-size:var(--text-2xs);font-weight:var(--fw-regular);letter-spacing:0}

/* Runde 25: Tabellen enger. Namen kürzen sich mit «…», Zahlenspalten rücken zusammen, Köpfe zweizeilig */
.rl-clubs thead th,.rl-trichter thead th{white-space:normal;line-height:var(--leading-tight);vertical-align:bottom}
:is(.rl-clubs,.rl-trichter,.rl-dtab) :is(th,td).tabelle__zahl{padding-inline:var(--space-2xs) var(--space-xs)}
:is(.rl-clubs,.rl-trichter) :is(th,td):nth-child(2){max-width:8rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tabelle__rahmen .rl-clubs--disz{min-width:30rem}
.rl-clubs--disz :is(th,td):nth-child(2){width:7.5rem}
.rl-clubs--disz :is(th,td):nth-child(n+3){width:auto}
.rl-dtab :is(th,td):nth-child(2){max-width:7.5rem}
.rl-sticky.rl-sticky--foto :is(th,td):nth-child(2){min-width:0}
.rl-dtab td:nth-child(2) .rl-dtab__n,.rl-dtab td:nth-child(2) .rl-spieler__club{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-heat th:not(.n):not(.rl-fotozelle):not(.rl-itsfspalte){width:5rem;min-width:5rem}
.rl-heat td:not(.n):not(.rl-fotozelle):not(.rl-itsfspalte){min-width:5rem}
/* Club-Netz: Wertetabelle passt ohne Seitwärtsscrollen */
.tabelle__rahmen .rl-cnetz__tab{min-width:0;width:100%;table-layout:fixed}
.rl-cnetz__tab :is(th,td):first-child{width:46%}
.rl-cnetz__tab :is(th,td){overflow:hidden;text-overflow:ellipsis;padding-inline:var(--space-xs)}
.rl-cnetz__tab th{white-space:normal;line-height:var(--leading-tight)}

/* Runde 25: Duell-Balken neu. Name über den Balken, ein Schnitt zur Zeit als gestrichelte Linie in seiner Farbe */
.rl-dbw{display:grid;gap:var(--space-md);margin-top:var(--space-sm)}
.rl-dbschalter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-2xs)}
.rl-dbschalter .umschaltknopf{justify-content:center;gap:var(--space-2xs);font-size:var(--text-xs);min-height:var(--tap-min);padding-inline:var(--space-2xs)}
.rl-dbschalter__l{display:inline-block;inline-size:0;block-size:.9rem;border-left:2px dashed var(--ink)}
.rl-dbschalter__l--tfcz{border-left-color:var(--ton-2)} .rl-dbschalter__l--alle{border-left-color:var(--ton-5)}
.rl-dbl{display:grid;gap:var(--space-md)}
.rl-dbr{display:grid;gap:var(--space-2xs)}
.rl-dbr__kopf{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm)}
.rl-dbr .rl-db__t{justify-self:start;text-align:left;font-size:var(--text-sm)}
.rl-dbr__s{display:none;font-size:var(--text-2xs);color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.rl-dbw[data-schnitt="tfcz"] .rl-dbr__s--tfcz,.rl-dbw[data-schnitt="ch"] .rl-dbr__s--ch,.rl-dbw[data-schnitt="alle"] .rl-dbr__s--alle{display:inline}
.rl-dbr .rl-db__bahn{gap:var(--space-3xs)}
.rl-dbr .rl-db__b{block-size:1rem;background:color-mix(in oklab,var(--ink) 8%,transparent)}
.rl-dbr .rl-db__b i{opacity:.55}
.rl-dbr .rl-db__b--vorne i{opacity:1}
.rl-dbr .rl-db__b em{font-size:var(--text-xs)}
.rl-dbw .rl-dm{display:none;top:-4px;bottom:-4px;border-left:2px dashed var(--ink);translate:-1px 0}
.rl-dbw .rl-dm--tfcz{border-left-color:var(--ton-2)} .rl-dbw .rl-dm--alle{border-left-color:var(--ton-5)}
.rl-dbw[data-schnitt="tfcz"] .rl-dm--tfcz,.rl-dbw[data-schnitt="ch"] .rl-dm--ch,.rl-dbw[data-schnitt="alle"] .rl-dm--alle{display:block}
@media (max-width:560px){.rl-dbr .rl-db__t{font-size:var(--text-xs)}}
.rl-dbschalter .umschaltknopf{white-space:nowrap}
@media (max-width:420px){.rl-dbschalter .umschaltknopf{font-size:var(--text-2xs)}}
.rl-dbr .rl-db__b em{z-index:3;text-shadow:0 0 .25rem var(--surface-raised),0 0 .25rem var(--surface-raised)}
/* Runde 27: alle Schnittlinien weiss, die Wahl oben sagt, welcher Schnitt es ist */
.rl-dbw .rl-dm,.rl-dbw .rl-dm--tfcz,.rl-dbw .rl-dm--alle,.rl-dbschalter__l,.rl-dbschalter__l--tfcz,.rl-dbschalter__l--alle{border-left-color:var(--ink)}
/* Runde 27: Köpfe der Clubtabelle je Disziplin überlappen nicht mehr. Feste Breite je Zahlenspalte, lange Wörter trennen */
.tabelle__rahmen .rl-clubs--disz{min-width:33rem}
.rl-clubs--disz :is(th,td):nth-child(n+3){width:3.5rem}
.rl-clubs--disz thead th{hyphens:manual;overflow-wrap:normal}

/* Runde 29: Schattierung beim Überfahren einheitlich. Klebende Zellen, «Bester» und sortierte Spalte
   hatten eigene Flächen und blieben dunkel; die Namenszelle klebte bei 2.75rem, die Bildspalte ist 2.5rem breit */
.rl-heat td.n,.rl-heat th.n{left:2.5rem}
:is(.rl-heat tbody tr,.rl-spieler__zeile,.rl-clubs tbody tr,.rl-trichter tbody tr):hover > td{background:color-mix(in oklab,var(--ink) 7%,var(--surface-raised))!important}
table.rl-sortierbar td.rl-sortspalte{background-color:transparent;box-shadow:inset 0 0 0 100vmax color-mix(in oklab,var(--accent-2) 9%,transparent)}
/* Spaltenköpfe rechtsbündig (Vasco), der Sortierpfeil steht oben rechts und schiebt den Text nicht */
table.rl-sortierbar thead th,.rl-heat thead th,.rl-cnetz__tab thead th{text-align:right}
.rl-heat .rl-gruppenzeile th{text-align:right}
table.rl-sortierbar thead th[aria-sort]{position:relative}
.rl-heat thead th.rl-fotozelle[aria-sort],.rl-sticky thead th[aria-sort]:is(:first-child,:nth-child(2)){position:sticky}
table.rl-sortierbar thead th[aria-sort]::after{position:absolute;top:var(--space-3xs);right:var(--space-2xs);line-height:1;font-size:var(--text-2xs)}
.rl-heat thead abbr{text-decoration:none;cursor:help}
.rl-kuerzel{display:flex;flex-wrap:wrap;gap:var(--space-2xs) var(--space-md)}
.rl-kuerzel b{color:var(--ink)}
.rl-dbschalter--zwei{grid-template-columns:repeat(2,minmax(0,1fr))}
.rl-db__b--c i{background:var(--c)}
.rl-cnetz__balken{margin-top:var(--space-lg)}
.rl-cnetz__balken{--a:var(--accent);--b:var(--ton-5);--c:var(--ton-6)}

/* Runde 30: kein Sortierpfeil mehr; die sortierte Spalte zeigt sich am goldenen Kopf und der leichten Tönung.
   Köpfe zweizeilig, das Nebenwort klein */
table.rl-sortierbar thead th[aria-sort]::after{content:none}
:is(.rl-clubs,.rl-dtab,.rl-trichter) thead th small{display:block;font-size:var(--text-2xs);font-weight:var(--fw-regular);color:var(--ink-muted);letter-spacing:0;line-height:1.15}
table.rl-sortierbar thead th.rl-sortspalte small{color:inherit;opacity:.8}
.tabelle__rahmen .rl-clubs--disz{min-width:30rem}
.rl-clubs--disz :is(th,td):nth-child(n+3){width:3.25rem}
/* Runde 30: Clubvergleich wie das Duell, Club 1 Blau, Club 2 Gold */
.rl-cnetz,.rl-cnetz__balken{--a:var(--accent);--b:var(--accent-2)}
/* Runde 30: In durchscheinenden Karten sind auch die klebenden Zellen Glas, damit sie nicht als dunkle Blöcke stehen */
:is(.rl-sticky,.rl-heat) :is(th,td):is([style*="sticky"],.rl-fotozelle),.rl-sticky--foto :is(th,td):is(:first-child,:nth-child(2)),.rl-sticky--2 :is(th,td):is(:first-child,:nth-child(2)),.rl-heat :is(td,th).n{background:var(--card,var(--surface-raised));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
:is(.rl-sticky,.rl-heat) :is(th,td):is([style*="sticky"],.rl-fotozelle),.rl-sticky--foto :is(th,td):is(:first-child,:nth-child(2)),.rl-sticky--2 :is(th,td):is(:first-child,:nth-child(2)),.rl-heat :is(td,th).n{background:color-mix(in oklab,var(--surface-raised) 90%,transparent)}

/* Runde 31: Platzierungen ohne Lücke zwischen Spieler und ITSF; der freie Platz geht an die Disziplinen */
.rl-heat :is(th,td).rl-itsfspalte,.rl-heat :is(th,td).n{width:1%}
.rl-heat :is(th,td).n{white-space:nowrap}
.rl-heat th:not(.n):not(.rl-fotozelle):not(.rl-itsfspalte){width:auto}
/* Sortierte Spalte: kleiner Pfeil vor dem Wort, auf derselben Zeile, schiebt nichts */
table.rl-sortierbar thead th[aria-sort]::after{content:none}
table.rl-sortierbar thead th[aria-sort]::before{content:"▾";color:var(--accent-2);font-size:.7em;margin-right:.2em;position:static}
table.rl-sortierbar thead th[aria-sort="ascending"]::before{content:"▴"}
table.rl-sortierbar thead th[aria-sort]:has(> small:first-child)::before{display:none}
table.rl-sortierbar thead th[aria-sort] > small:first-child::before{content:"▾ ";color:var(--accent-2)}
table.rl-sortierbar thead th[aria-sort="ascending"] > small:first-child::before{content:"▴ "}
/* Klebende Zellen: durchsichtig, solange die Tabelle nicht seitwärts gescrollt ist */
:is(.rl-sticky,.rl-heat) :is(th,td):is([style*="sticky"],.rl-fotozelle),.rl-sticky--foto :is(th,td):is(:first-child,:nth-child(2)),.rl-sticky--2 :is(th,td):is(:first-child,:nth-child(2)),.rl-heat :is(td,th).n{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}
.ist-gescrollt :is(.rl-sticky,.rl-heat) :is(th,td):is(.rl-fotozelle),.ist-gescrollt .rl-sticky--foto :is(th,td):is(:first-child,:nth-child(2)),.ist-gescrollt .rl-sticky--2 :is(th,td):is(:first-child,:nth-child(2)),.rl-heat.ist-gescrollt :is(td,th):is(.n,.rl-fotozelle){background:color-mix(in oklab,var(--surface-raised) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
/* Runde 31: Textspalten (Club, Spieler) links, Zahlen rechts; hervorgehobene Zeilen durchgehend gleich getönt */
:is(.rl-clubs,.rl-dtab,.rl-trichter,.rl-schluss) thead th:not(.tabelle__zahl):not(.rl-itsfspalte):not(.rl-fotozelle),.rl-heat thead th.n{text-align:left}
.rl-clubs--wir > td,.rl-dtab--wir > td{background:color-mix(in oklab,var(--accent) 14%,transparent)!important}
.rl-dtab--bester > td{background:color-mix(in oklab,var(--accent-2) 10%,transparent)!important}
table.rl-sortierbar thead th[aria-sort]::before{font-size:.85em}
/* Gescrollt: hervorgehobene Zeilen behalten ihre Tönung, die klebenden Zellen darunter bleiben deckend */
.ist-gescrollt :is(.rl-clubs--wir,.rl-dtab--wir) > td:is(:first-child,:nth-child(2)){background:linear-gradient(color-mix(in oklab,var(--accent) 14%,transparent),color-mix(in oklab,var(--accent) 14%,transparent)),color-mix(in oklab,var(--surface-raised) 92%,transparent)!important}
.ist-gescrollt .rl-dtab--bester > td:is(:first-child,:nth-child(2)){background:linear-gradient(color-mix(in oklab,var(--accent-2) 10%,transparent),color-mix(in oklab,var(--accent-2) 10%,transparent)),color-mix(in oklab,var(--surface-raised) 92%,transparent)!important}
.rl-schluss thead th small{display:block;font-size:var(--text-2xs);font-weight:var(--fw-regular);color:var(--ink-muted);letter-spacing:0;line-height:1.15}
/* Runde 39 (Vasco): In der Platzierungstabelle sind alle Disziplinköpfe rechtsbündig, auch sortiert; nur «Spieler» links.
   Die goldene Bestwert-Zelle behält die Tönung der sortierten Spalte. */
.rl-heat thead th:not(.n):not(.rl-fotozelle){text-align:right}
.rl-heat thead th.n{text-align:left}
.rl-heat table.rl-sortierbar td.rl-heat__bester.rl-sortspalte{box-shadow:inset 0 0 0 100vmax color-mix(in oklab,var(--accent-2) 9%,transparent)}
/* Runde 41 (Vasco): Schlussrangliste rechtsbündig, auch die Bilanzen; nur Spieler links */
.rl-dtab thead th:not(:nth-child(-n+2)),.rl-dtab tbody td:not(:nth-child(-n+2)){text-align:right}
.rl-dtab td .rl-form{justify-content:flex-end}

/* Zwei Schalter im Clubvergleich: am Handy darf der Text umbrechen (Vasco, 2026-10-20, längere Namen) */
@media (max-width:620px){.rl-dbschalter--zwei .umschaltknopf{white-space:normal;text-align:center;line-height:1.2;padding-block:var(--space-2xs)}}

/* Schlussrangliste (Vasco, 2026-10-20): Rang ganz links, «Rang von N» wie bei ITSF, Foto etwas weiter rechts.
   Rang, Foto und Spieler bleiben beim seitlichen Scrollen stehen. Eigene Klasse statt .rl-sticky--foto. */
.rl-sticky--rang tr:not(.rl-trenner) > :first-child{position:sticky;left:0;z-index:2;width:4.75rem;min-width:4.75rem;max-width:4.75rem;box-sizing:border-box}
.rl-sticky--rang tr:not(.rl-trenner) > :nth-child(2){position:sticky;left:4.75rem;z-index:2;width:3.25rem;min-width:3.25rem;max-width:3.25rem;box-sizing:border-box;padding-left:var(--space-sm)!important}
.rl-sticky--rang tr:not(.rl-trenner) > :nth-child(3){position:sticky;left:8rem;z-index:1;text-align:left;box-shadow:inset calc(var(--border-w) * -1) 0 0 var(--border-subtle)}
.rl-sticky--rang th:first-child small{display:block;font-weight:var(--fw-regular);white-space:nowrap}
.rl-sticky--rang :is(th,td):nth-child(3) .rl-spieler__wer{justify-content:flex-start;text-align:left}
@media (max-width:620px){.rl-sticky--rang tr:not(.rl-trenner) > :nth-child(3){position:static;box-shadow:none}}
/* Seit der Rang vorne steht, ist «Spieler» die dritte Spalte: Breite und Kürzen der Namen wie zuvor in der zweiten */
.rl-sticky--rang :is(th,td):nth-child(2){max-width:3.25rem}
.rl-sticky--rang :is(th,td):nth-child(3){max-width:7.5rem}
.rl-sticky--rang td:nth-child(3) .rl-dtab__n,.rl-sticky--rang td:nth-child(3) .rl-spieler__club{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rl-sticky--rang td:nth-child(2) .rl-dtab__n,.rl-sticky--rang td:nth-child(2) .rl-spieler__club{display:inline}
/* Fixierte Zellen der Schlussrangliste wie die übrigen Tabellen: durchsichtig in Ruhe, beim Scrollen deckend,
   hervorgehobene Zeilen behalten ihre Tönung */
.rl-sticky--rang tr:not(.rl-trenner) > :is(th,td):nth-child(-n+3){background:transparent;box-shadow:none}
.ist-gescrollt .rl-sticky--rang tr:not(.rl-trenner) > :is(th,td):nth-child(-n+3){background:color-mix(in oklab,var(--surface-raised) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.ist-gescrollt .rl-sticky--rang .rl-dtab--wir > td:nth-child(-n+3){background:linear-gradient(color-mix(in oklab,var(--accent) 14%,transparent),color-mix(in oklab,var(--accent) 14%,transparent)),color-mix(in oklab,var(--surface-raised) 92%,transparent)!important}
.ist-gescrollt .rl-sticky--rang .rl-dtab--bester > td:nth-child(-n+3){background:linear-gradient(color-mix(in oklab,var(--accent-2) 10%,transparent),color-mix(in oklab,var(--accent-2) 10%,transparent)),color-mix(in oklab,var(--surface-raised) 92%,transparent)!important}

/* Suche wie «Command» im Brand Guide (Sektion 44): Lupe links, tippen filtert, Gruppen als kleine Überschrift (2026-10-20) */
.rl-cmd{position:relative;min-width:0;width:100%;max-width:22rem}
.s7-stufe .rl-cmd,.s7-duell--bilder .rl-cmd{max-width:none}
.rl-cmd__feld{display:flex;align-items:center;gap:var(--space-xs);min-height:var(--ctl-h);padding:var(--space-2xs) var(--space-sm);background:var(--surface-base);border:var(--border-w) solid var(--border-strong);border-radius:var(--r-sm);color:var(--ink-muted);cursor:text}
.rl-cmd__feld:focus-within{border-color:var(--accent);outline:var(--border-w-stark) solid var(--focus);outline-offset:1px}
.rl-cmd__feld svg{inline-size:1.1rem;block-size:1.1rem;flex:none}
.rl-cmd__feld input{flex:1;min-width:0;background:none;border:0;outline:0;padding:0;font:inherit;font-size:var(--text-sm);font-weight:var(--fw-bold);color:var(--ink);text-overflow:ellipsis}
.rl-cmd__feld input::placeholder{color:var(--ink-faint);font-weight:var(--fw-regular)}
.rl-cmd__liste{position:absolute;top:calc(100% + var(--space-2xs));inset-inline:0;z-index:var(--z-aufgeklappt);margin:0;padding:var(--space-2xs);list-style:none;max-height:18rem;overflow:auto;overscroll-behavior:contain;background:var(--surface-overlay);border:var(--border-w-stark) solid var(--border-strong);border-radius:var(--r-md)}
.rl-cmd__liste[hidden]{display:none}
.rl-cmd__gruppe{padding:var(--space-xs) var(--space-xs) var(--space-3xs);font-size:var(--text-2xs);font-weight:var(--fw-extrabold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-faint);pointer-events:none}
.rl-cmd__liste [role="option"]{padding:var(--space-xs);border-radius:var(--r-xs);font-size:var(--text-sm);color:var(--ink);cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rl-cmd__liste [role="option"]:hover,.rl-cmd__liste [role="option"].ist-aktiv{background:var(--surface-state)}
.rl-cmd__liste [aria-selected="true"]{font-weight:var(--fw-bold)}
.rl-cmd__leer{padding:var(--space-xs);font-size:var(--text-sm);color:var(--ink-muted)}
.s7-duell__wahl--a.rl-cmd input{color:var(--accent)} .s7-duell__wahl--b.rl-cmd input{color:var(--accent-2)}
.rl-cmd__liste{text-align:left}
