:root{--gruen:#1b8a4a;--gruen-dunkel:#0f5c32;--gruen-hell:#e4f3ea;--grund:#fff;--flaeche:#f4f6f5;--text:#1c2420;--text-leise:#5b6761;--linie:#d5dcd8;--fehler:#b3261e;--radius:10px;--link:#187a45;--zebra:#f2f2f2;--marke-gruen:#b7d5ac;--marke-hellgruen:#dbead5;--marke-orange:#fed8b1;--marke-rot:#f8b88b;--marke-gold:#ffdc73;--marke-silber:#c4c4c4;--marke-bronze:#f1d5bf;--panel:#187a45}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--gruen:#4cc27f;--gruen-dunkel:#8fe0b2;--gruen-hell:#173a27;--grund:#121715;--flaeche:#1a211e;--text:#e8eeea;--text-leise:#9aa8a0;--linie:#2d3833;--fehler:#f2b8b5;--link:#4cc27f;--zebra:#1a211e;--marke-gruen:#24523a;--marke-hellgruen:#1d3a2b;--marke-orange:#5a4224;--marke-rot:#5e3326;--marke-gold:#6b5a1c;--marke-silber:#4a4f4d;--marke-bronze:#5c4636;--panel:#14502f}:root:not([data-theme=light]) .teamlogo img{background:#fff;border-radius:4px}}*{box-sizing:border-box}body{background:var(--grund);color:var(--text);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}a{color:var(--link);text-decoration:none}a:hover,a:focus-visible{text-decoration:underline}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--gruen);outline-offset:2px}main{max-width:1080px;padding:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom));margin:0 auto}.kopfzeile{border-bottom:1px solid var(--linie);background:var(--grund);padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top));padding-left:calc(16px + env(safe-area-inset-left));padding-right:calc(16px + env(safe-area-inset-right));z-index:2;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.kopfzeile .logo img{object-fit:cover;object-position:center;width:56px;height:56px;display:block}.kopfzeile nav{flex-wrap:wrap;gap:4px;display:flex}.kopfzeile nav a{color:var(--text-leise);border-bottom:2px solid #0000;padding:8px 12px}.kopfzeile nav a:hover,.kopfzeile nav a:focus-visible{color:var(--text);text-decoration:none}.kopfzeile nav a[aria-current]{color:var(--text);border-bottom-color:var(--link)}.stufenmenue{align-items:center;display:flex;position:relative}.untermenue-knopf{min-height:0;color:var(--text-leise);background:0 0;border:none;margin:0;padding:0 6px;font-size:.9rem;display:none}@media (hover:none){.untermenue-knopf{display:inline-block}}.untermenue{z-index:3;background:var(--grund);border:1px solid var(--linie);border-radius:6px;min-width:12.5rem;margin:2px 0 0;padding:8px 0;list-style:none;display:none;position:absolute;top:100%;left:0;box-shadow:0 6px 18px #00000024}.stufenmenue.offen .untermenue{display:block}@media (hover:hover) and (width>=992px){.stufenmenue:hover .untermenue,.stufenmenue:focus-within .untermenue{display:block}}.kopfzeile nav .untermenue a{color:var(--text);white-space:nowrap;border-bottom:none;padding:6px 18px;display:block}.kopfzeile nav .untermenue a:hover,.kopfzeile nav .untermenue a:focus-visible{background:var(--zebra)}.kopfzeile nav .untermenue a[aria-current]{font-weight:600}.menue-knopf{border:1px solid var(--linie);min-width:44px;min-height:44px;color:var(--text-leise);background:0 0;border-radius:6px;margin:0;padding:0 10px;font-size:1.5rem;line-height:1;display:none}@media (width<=991px){.menue-knopf{justify-content:center;align-items:center;display:inline-flex}.kopfzeile nav{flex-direction:column;flex-basis:100%;gap:0;padding:4px 0 12px;display:none}.kopfzeile.menue-offen{max-height:100vh;overflow-y:auto}.kopfzeile.menue-offen nav{display:flex}.kopfzeile nav a{border-bottom:none;border-left:4px solid #0000;padding:12px 8px;font-size:1.1rem}.kopfzeile nav a[aria-current]{border-left-color:var(--link)}.stufenmenue{flex-wrap:wrap}.stufenmenue>a{flex:1}.untermenue-knopf{min-width:44px;min-height:44px;font-size:1rem;display:inline-block}.untermenue{box-shadow:none;background:0 0;border:none;border-radius:0;flex-basis:100%;margin:0;padding:0 0 4px 20px;position:static}.kopfzeile nav .untermenue a{color:var(--text-leise);border-left:none;padding:10px 8px;font-size:1rem}}.brotkrumen{background:var(--zebra);margin:-16px -16px 24px;padding:10px 16px;font-size:.95rem}.brotkrumen ol{flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.brotkrumen li+li:before{content:"/";color:var(--text-leise);padding:0 8px}.brotkrumen li[aria-current]{color:var(--text-leise)}h1{margin:0;font-size:1.5rem}h2{margin:24px 0 8px;font-size:1.25rem}h3{margin:16px 0 8px;font-size:1.05rem}.stufe h2,.rangliste h3,.spieleliste h3{font-weight:400}.saisonwahl{align-items:center;gap:8px;font-weight:600;display:inline-flex}.seitenkopf{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 16px;display:flex}select,button{font:inherit;color:inherit;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);min-height:44px;padding:8px 12px}button{cursor:pointer;margin-top:8px;font-weight:600}.stufe{border-top:1px solid var(--linie);margin-top:40px;padding-top:8px}.stufe:first-of-type{border-top:none;margin-top:16px}.stufe h2{margin:0 0 8px;font-size:1.6rem}.rangliste h3{margin:16px 0 12px;font-size:1.75rem}.tabelle-rahmen{overflow-x:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th,td{text-align:center;white-space:nowrap;padding:8px 10px}th{background:var(--flaeche);color:var(--text-leise);font-size:.85rem}th:nth-child(3),td.teamname{text-align:left;white-space:normal;min-width:9rem}.rangliste th{background:var(--zebra);color:var(--text);padding:9px 10px;font-size:1rem;font-weight:700}.rangliste td{padding:6px 10px;line-height:1.3}.rangliste+.rangliste{margin-top:24px}:where(.rangliste tbody tr:nth-child(2n)){background:var(--zebra)}.rangliste .logozelle{width:2.6rem;padding-left:0;padding-right:0}td.punkte{font-weight:400}.vorplatz{color:var(--text-leise);margin-left:4px;font-size:.8rem}tr.markiert-gruen{background:var(--marke-gruen)}tr.markiert-hellgruen{background:var(--marke-hellgruen)}tr.markiert-orange{background:var(--marke-orange)}tr.markiert-rot{background:var(--marke-rot)}tr.markiert-gold{background:var(--marke-gold)}tr.markiert-silber{background:var(--marke-silber)}tr.markiert-bronze{background:var(--marke-bronze)}tr[class*=markiert-] a{color:var(--gruen-dunkel)}.teamlogo{vertical-align:middle;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.teamlogo img{object-fit:contain;max-width:100%;max-height:100%;display:block}.spieleliste{border-top:1px solid var(--linie);margin-top:40px;padding-top:8px}.rangliste+.spieleliste{margin-top:32px}.seitenkopf+.spieleliste{border-top:none;margin-top:8px;padding-top:0}.spieleliste h3{color:var(--link);margin:8px 0 12px;font-size:1.75rem}.spieleliste ul{margin:0;padding:0;list-style:none}.spielzeile{align-items:center;gap:16px;padding:10px 12px;display:flex}.spielzeile:where(:nth-child(odd)){background:var(--zebra)}.spielinfo{color:var(--text);flex-wrap:wrap;flex:0 0 14rem;gap:12px;font-size:1rem;display:flex}.paarung{flex:1;grid-template-columns:minmax(0,1fr) 28px auto 28px minmax(0,1fr);align-items:center;gap:10px;display:grid}.paarung .heim{text-align:right}.paarung a{color:var(--text)}.resultat{text-align:center;font-variant-numeric:tabular-nums;min-width:4.5rem;font-weight:700}.aeltere-saison{margin-top:16px}.mehr{text-align:center;justify-items:center;gap:10px;margin:18px 0 8px;display:grid}.mehr-info{color:var(--text-leise);margin:0;font-size:.95rem}.mehr-info strong{color:var(--text)}.mehr-fortschritt{background:var(--zebra);border-radius:999px;width:min(320px,80%);height:6px;overflow:hidden}.mehr-fortschritt span{background:var(--link);border-radius:999px;height:100%;display:block}.mehr-knoepfe{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.mehr button{border-radius:8px;min-height:46px;margin:0;padding:0 20px}.mehr-haupt{background:var(--link);border-color:var(--link);color:var(--grund)}.mehr-alle{color:var(--link);background:0 0}@media (width<=520px){.mehr-knoepfe{flex-direction:column;width:100%}.mehr button{width:100%}}.aeltere-saison summary{cursor:pointer;background:var(--zebra);padding:10px 12px;font-weight:600}.status-abgesagt{opacity:.6}.halloffame{grid-template-columns:17rem minmax(0,1fr);align-items:start;margin-top:16px;display:grid}.halloffame nav{padding-right:24px}.halloffame nav ul{border:1px solid var(--linie);margin:0;padding:0;list-style:none}.halloffame nav li+li{border-top:1px solid var(--linie)}.halloffame nav a{color:var(--text-leise);padding:7px 16px;font-size:.9rem;display:block}.halloffame nav a:hover,.halloffame nav a:focus-visible{background:var(--zebra);color:var(--text);text-decoration:none}.halloffame-inhalt{background:var(--panel);color:#fff;padding:40px 42px}.halloffame-inhalt h1{margin:0 0 8px;font-size:2rem;font-weight:300}.halloffame-saison{padding:8px 0 20px;scroll-margin-top:88px}.halloffame-saison+.halloffame-saison{border-top:1px solid #ffffff59;padding-top:20px}.halloffame-saison h2{margin:0 0 12px;font-size:2.2rem;font-weight:300}.halloffame-saison dl{margin:0}.sieger{gap:6px;padding:2px 0;display:flex}.sieger dt:after{content:":"}.sieger dd{margin:0}@media (width<=700px){.halloffame{grid-template-columns:minmax(0,1fr)}.halloffame nav{padding:0 0 16px}.halloffame nav ul{border:none;flex-wrap:wrap;gap:6px;display:flex}.halloffame nav li+li{border:none}.halloffame nav a{border:1px solid var(--linie);border-radius:999px;padding:4px 12px}.halloffame-inhalt{padding:24px 20px}.halloffame-saison h2{font-size:1.7rem}}.textseite{padding-top:24px}.textseite h2{margin:32px 0 8px;font-size:1.75rem;font-weight:400}.textseite h2:first-of-type{margin-top:0}.textseite p{max-width:none}.nur-vorleser{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fusszeile{background:#212121;min-height:100px;margin-top:48px}.hinweis{color:var(--text-leise)}.hinweis.fehler{color:var(--fehler);font-weight:600}@media (width<=520px){main{padding:12px}.brotkrumen{margin:-12px -12px 16px;padding:8px 12px}th,td{padding:8px 4px}.rangliste th{padding:7px 3px;font-size:.95rem}.rangliste td{padding:4px 3px;font-size:.95rem}th:nth-child(3),td.teamname{min-width:0}.nur-breit,.vorplatz{display:none}.stufe h2,.rangliste h3,.spieleliste h3{font-size:1.4rem}.spielzeile{padding:8px 6px;display:block}.spielinfo{color:var(--text-leise);flex:none;gap:8px;font-size:.85rem}.paarung{grid-template-columns:minmax(0,1fr) 24px auto 24px minmax(0,1fr);gap:6px;margin-top:4px;font-size:.9rem}.teamlogo{width:24px;height:24px}.resultat{min-width:3.2rem}}main.schiri{max-width:560px;padding:12px}.spielkopf{text-align:center;color:var(--text-leise)}.spielkopf p{margin:2px 0}.mannschaften{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;display:grid}.mannschaft{border:2px solid var(--linie);border-radius:var(--radius);text-align:center;background:var(--flaeche);padding:12px 8px}.mannschaft h2{justify-content:center;align-items:center;min-height:3.9em;margin:0;font-size:1.05rem;line-height:1.3;display:flex}.torzahl{font-variant-numeric:tabular-nums;font-size:5rem;font-weight:800;line-height:1.1;display:block}.tor-taste{background:var(--gruen);color:#fff;border-radius:var(--radius);border:none;width:100%;min-height:96px;margin-top:8px;font-size:1.6rem;font-weight:800}.tor-taste:active{filter:brightness(.85)}.aktionen,.kontrolle{gap:10px;display:grid}button.gross{width:100%;min-height:64px;font-size:1.1rem}button.hauptaktion{background:var(--gruen-dunkel);color:var(--grund);border-color:var(--gruen-dunkel)}.kontrolle h2{text-align:center;margin:24px 0 4px;font-size:3rem}.kontrolle p{text-align:center}.sendehinweis{text-align:center;color:var(--text-leise);font-size:.9rem}.sendehinweis.offline{color:var(--fehler);font-weight:600}.beendet{text-align:center;background:var(--gruen-hell);border-radius:var(--radius);padding:12px;font-weight:700}.tagesuebersicht dl{grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 12px;display:grid}.zaehler{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);text-align:center;padding:8px}.zaehler dt{color:var(--text-leise);font-size:.8rem}.zaehler dd{margin:0;font-size:1.6rem;font-weight:800}.zaehler.zustand-ungeprueft{border-color:#c98a00}.aktionen-reihe{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.aktionen-reihe button{margin:0}.tagesaktionen{margin-bottom:16px}.sekretariat-liste{border:1px solid var(--linie);border-radius:var(--radius);margin:0;padding:0;list-style:none}.sekretariat-spiel{padding:10px 12px}.sekretariat-spiel+.sekretariat-spiel{border-top:1px solid var(--linie)}.sekretariat-spiel .zeile{grid-template-columns:3.2rem 1fr auto;align-items:center;gap:8px;display:grid}.sekretariat-spiel .zeit{font-variant-numeric:tabular-nums;font-weight:700}.paarung-sek{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.paarung-sek .heim{text-align:right}.zustandsmarke{background:var(--flaeche);border:1px solid var(--linie);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:700}.zustandsmarke.zustand-ungeprueft{color:#5c3d00;background:#fff3d1;border-color:#c98a00}.zustandsmarke.zustand-freigegeben{background:var(--gruen-hell);border-color:var(--gruen);color:var(--gruen-dunkel)}.zustandsmarke.zustand-laeuft{color:#123a63;background:#e1eefc;border-color:#4a86c5}.zustandsmarke.zustand-abgesagt{opacity:.6}.quelle{color:var(--text-leise);margin:2px 0 0 3.2rem;font-size:.8rem}.resultatformular{flex-wrap:wrap;align-items:end;gap:8px;margin-top:8px;display:flex}.resultatformular label{gap:2px;font-size:.85rem;display:grid}.resultatformular input{width:6rem;font:inherit;border:1px solid var(--linie);border-radius:var(--radius);background:var(--grund);min-height:44px;color:var(--text);padding:8px}.linkkarten{border:2px dashed var(--linie);border-radius:var(--radius);margin-bottom:16px;padding:12px}.karten{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.karte{border:1px solid var(--linie);border-radius:var(--radius);text-align:center;break-inside:avoid;color:#000;background:#fff;padding:8px}.karte .qr svg{width:100%;height:auto;display:block}.karte-kopf{grid-area:kopf;justify-content:space-between;align-items:center;gap:8px;display:flex}.karte-stufe{color:#fff;background:#000;border-radius:6px;padding:4px 10px;font-size:1.25rem;font-weight:800;line-height:1}.karte-zeit{font-size:1.5rem;font-weight:800;line-height:1}.karte-phase{grid-area:phase;margin:4px 0 0;font-size:.8rem}.karte-wettbewerb,.karte-tag{display:block}.karte-wettbewerb{font-weight:700}.karte .qr{grid-area:qr}.karte-spiel{grid-area:spiel;margin:4px 0 0}.karte-team{overflow-wrap:anywhere;font-weight:700;display:block}.karte-gegen{font-size:.8rem;display:block}.karte-schiri{grid-area:schiri;margin:2px 0 0;font-size:.8rem}.kartenverzeichnis{margin-top:16px}.kartenverzeichnis table{font-size:.9rem}.kartenverzeichnis td.teamname{text-align:left;white-space:normal}@page{size:A4 portrait;margin:10mm}@media print{.kopfzeile,.seitenkopf,.fusszeile,.tagesuebersicht,.tagesaktionen,.sekretariat-liste,.linkkopf,.hinweis.fehler{display:none!important}.linkkarten{border:none;margin:0;padding:0}.karten{grid-template-columns:repeat(2,93.5mm);grid-auto-rows:53mm;gap:2.5mm 3mm}.karte{text-align:left;box-sizing:border-box;border:.3mm dashed #555;border-radius:0;grid-template:"qr kopf""qr phase""qr spiel"1fr"qr schiri"/42mm 1fr;align-items:start;column-gap:3mm;height:53mm;padding:2.5mm 3mm;display:grid;overflow:hidden}.karte .qr{align-self:center;width:42mm}.karte-stufe{border-radius:1.5mm;padding:1.2mm 3mm;font-size:15pt}.karte-zeit{font-size:20pt}.karte-phase{margin:1.2mm 0 0;font-size:8pt}.karte-wettbewerb{font-size:9pt}.karte-spiel{margin:2mm 0 0}.karte-team{font-size:10pt;line-height:1.15}.karte-gegen{margin:.6mm 0;font-size:8pt}.karte-schiri{align-self:end;margin:0;font-size:8pt}.kartenverzeichnis{break-before:page}.kartenverzeichnis table{table-layout:fixed;width:190mm;font-size:8.5pt}.kartenverzeichnis th,.kartenverzeichnis td{padding:1mm 2mm}.kartenverzeichnis th:first-child{width:12mm}.kartenverzeichnis th:nth-child(2){width:36mm}.kartenverzeichnis th:nth-child(3),.kartenverzeichnis th:nth-child(4){width:55mm}.kartenverzeichnis th:nth-child(5){width:32mm}.kartenverzeichnis tr{break-inside:avoid}}@media (width<=520px){.tagesuebersicht dl{grid-template-columns:repeat(3,1fr)}.sekretariat-spiel .zeile{grid-template-columns:3rem 1fr}.sekretariat-spiel .zustandsmarke{grid-column:2;justify-self:start}}.anmeldung{border:1px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);max-width:480px;padding:16px}.angemeldet{color:var(--text-leise);flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 8px;font-size:.9rem;display:flex}.angemeldet button{min-height:36px;margin:0;padding:4px 12px}.resultatliste{border:2px dashed var(--linie);border-radius:var(--radius);margin-bottom:16px;padding:12px}.resultatliste .gruppe{margin-bottom:12px}.resultatliste table{font-size:.95rem}.resultatliste td.teamname{text-align:left;white-space:normal}@media print{.linkkarten~.resultatliste .listenkopf .aktionen-reihe,.resultatliste .listenkopf .aktionen-reihe{display:none!important}.resultatliste{border:none}body:has(.resultatliste) .linkkarten{display:none!important}}.schiriwahl{color:var(--text-leise);flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 0 3.2rem;font-size:.85rem;display:flex}.schiriwahl select{max-width:100%;min-height:36px;padding:4px 8px}@media (width<=520px){.schiriwahl{margin-left:0}}.einteilung-einfuegen{border:2px dashed var(--linie);border-radius:var(--radius);margin-bottom:16px;padding:12px}.einfuegefeld{gap:4px;font-size:.9rem;display:grid}.einfuegefeld textarea{border:1px solid var(--linie);border-radius:var(--radius);background:var(--grund);width:100%;color:var(--text);padding:8px;font:.8rem/1.3 ui-monospace,monospace}.vorschau ul{margin:8px 0;padding-left:18px;font-size:.9rem}.vorschau ul.unklar{color:var(--fehler)}.hinweis.ok{color:var(--gruen-dunkel);font-weight:600}:root{--live:#c62828}.live-marke{white-space:nowrap;background:var(--live);color:#fff;letter-spacing:.06em;border-radius:999px;align-items:center;gap:6px;padding:2px 9px;font-size:.75rem;font-weight:800;line-height:1.4;display:inline-flex}.live-marke:before{content:"";background:#fff;border-radius:50%;width:7px;height:7px}@media (prefers-reduced-motion:no-preference){.live-marke:before{animation:1.4s ease-in-out infinite live-puls}@keyframes live-puls{50%{opacity:.25}}}.live-block{border:2px solid var(--live);border-radius:var(--radius);background:var(--flaeche);margin:0 0 24px;padding:12px}.live-block h2{margin:0 0 10px;font-size:1.25rem}.live-liste{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.live-karte{background:var(--grund);border:1px solid var(--linie);border-radius:var(--radius);height:100%;color:var(--text);gap:8px;padding:10px 12px;display:grid}.live-karte:hover,.live-karte:focus-visible{border-color:var(--live);text-decoration:none}.live-kopf{color:var(--text-leise);align-items:center;gap:10px;font-size:.9rem;display:flex}.live-stufe{color:var(--text);font-weight:800}.live-kopf .live-marke{margin-left:auto}.live-paarung{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.live-team{overflow-wrap:anywhere;align-items:center;gap:6px;min-width:0;font-weight:600;display:flex}.live-heim{text-align:right;flex-direction:row-reverse}.live-stand{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:800;line-height:1.1}.live-fuss{text-align:center;color:var(--text-leise);font-variant-numeric:tabular-nums;font-weight:700}.restzeit{font-variant-numeric:tabular-nums;font-weight:700}.spielzeile{position:relative}.spiel-link{color:inherit}.spiel-link:hover{text-decoration:none}.spiel-link:after{content:"";position:absolute;inset:0}.spiel-link:focus-visible{outline:none}.spiel-link:focus-visible:after{outline:3px solid var(--gruen);outline-offset:-3px;border-radius:6px}.paarung a{z-index:1;position:relative}.spielzeile:hover{background:var(--gruen-hell)}.spielzeile.live{box-shadow:inset 4px 0 0 var(--live)}.resultat.zwischenstand{font-size:1.1rem}.spielseite-info{color:var(--text-leise);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:8px 0 16px;display:flex}.spielseite-info span:first-child{color:var(--text);font-weight:800}.spielstand-gross{text-align:center;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:8px 0;display:grid}.spielstand-team{overflow-wrap:anywhere;flex-direction:column;align-items:center;gap:8px;font-size:1.25rem;font-weight:700;display:flex}.spielstand-team a{color:var(--text)}.spielstand-team .teamlogo{width:56px;height:56px}.spielstand-team .teamlogo img{width:100%;height:100%}.spielstand{white-space:nowrap;font-variant-numeric:tabular-nums;margin:0;font-size:3.5rem;font-weight:800;line-height:1.1}.spielzustand{justify-content:center;align-items:center;gap:10px;margin:8px 0;display:flex}.spielmarke{border:1px solid var(--linie);background:var(--flaeche);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:700}.spielmarke-beendet{background:var(--gruen-hell);border-color:var(--gruen);color:var(--gruen-dunkel)}.spielmarke-resultatFolgt{border-color:var(--live)}.spielmarke-abgesagt{opacity:.6}.spielhinweis{text-align:center;margin:4px 0}.torfolge h2{margin:24px 0 8px}.torfolge-liste{margin:0;padding:0;list-style:none}.tor{grid-template-columns:2.5rem minmax(0,1fr) auto 5.5rem;align-items:center;gap:8px;padding:8px 12px;display:grid}.tor:where(:nth-child(odd)){background:var(--zebra)}.tor-nr,.tor-zeit{color:var(--text-leise);font-variant-numeric:tabular-nums}.tor-stand{font-variant-numeric:tabular-nums;font-weight:700}.tor-zeit{text-align:right}.spiel-unbekannt{text-align:center;margin-top:32px}@media (width<=520px){.spielstand{font-size:2.5rem}.spielstand-team{font-size:1rem}.live-stand{font-size:1.6rem}.tor{grid-template-columns:2rem minmax(0,1fr) auto 4.8rem;padding:8px 6px}}main.zugang{padding-bottom:32px}.zugangkopf{margin:4px 0 12px}.zugangkopf h1{font-size:1.3rem;line-height:1.3}.zugangliste{gap:10px;margin:0;padding:0;list-style:none;display:grid}.zugang-spiel{border:2px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);padding:10px 12px}.zugang-spiel.hervorgehoben{border-color:var(--gruen);background:var(--gruen-hell)}.zugang-spiel.zustand-abgesagt{opacity:.65}.zugang-vorspann{text-transform:uppercase;letter-spacing:.04em;color:var(--gruen-dunkel);margin:0 0 4px;font-size:.8rem;font-weight:800}.zugang-link{min-height:64px;color:inherit;gap:4px;text-decoration:none;display:grid}.zugang-link:hover,.zugang-link:focus-visible{text-decoration:none}.zugang-zeile{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.zugang-zeile .zustandsmarke{margin-left:auto}.zugang-zeit{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:800}.zugang-platz{color:var(--text-leise);font-weight:600}.zugang-paarung{overflow-wrap:anywhere;margin:0;font-size:1.05rem;font-weight:700}.zugang-gegen{color:var(--text-leise);font-weight:400}.teamname.platzhalter{font-style:italic;font-weight:600}.zugang-stand{font-variant-numeric:tabular-nums;font-weight:800}.zugang-stand-zeile{color:var(--text-leise);overflow-wrap:anywhere;margin:4px 0 0}.zugang-stand-zeile .zugang-stand{color:var(--text);padding:0 6px;font-size:1.2rem}.zugang-jetzt{color:var(--gruen-dunkel);font-weight:800}.zugang-fenster{color:var(--text-leise);font-size:.85rem}.zustandsmarke.zustand-resultatFolgt{color:#5c3d00;background:#fff3d1;border-color:#c98a00}.zustandsmarke.zustand-beendet{background:var(--gruen-hell);border-color:var(--gruen);color:var(--gruen-dunkel)}.zugang-spiel .gross{margin-top:10px}.quittiert{text-align:center;border-radius:var(--radius);background:var(--gruen-hell);color:var(--gruen-dunkel);margin:10px 0 0;padding:12px;font-size:1.2rem;font-weight:800}.quittierhinweis{color:var(--text-leise);margin:10px 0 4px;font-size:.85rem}.quittung-rueckfrage{gap:10px;margin-top:10px;display:grid}.quittung-rueckfrage h3{text-align:center;margin:8px 0 0;font-size:1.8rem}.quittung-rueckfrage p{text-align:center;margin:0}.quittung-rueckfrage button{margin-top:0}.zugang-torfolge{padding:8px 0;font-weight:600;display:inline-block}.ansichtswahl{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);gap:4px;margin:0 0 12px;padding:4px;display:inline-flex}.ansichtswahl button{background:0 0;border-color:#0000;min-height:40px;margin:0;padding:4px 16px}.ansichtswahl button[aria-selected=true]{background:var(--gruen-dunkel);color:var(--grund);border-color:var(--gruen-dunkel)}.spielsteuerung{margin-top:6px}.sekretariat-spiel .spielsteuerung{margin-left:3.2rem}.spielinfo{color:var(--text-leise);flex-wrap:wrap;gap:0 14px;margin:0 0 4px;font-size:.85rem;display:flex}.spielmarken{flex-wrap:wrap;gap:6px;margin:4px 0;display:flex}.quittungsmarke,.korrigiertmarke{border:1px solid var(--linie);background:var(--flaeche);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.8rem;font-weight:700}.korrigiertmarke{background:var(--marke-gold);color:var(--text)}.spielsteuerung .aktionen-reihe button{min-height:40px}.rueckfrage{border:2px solid var(--fehler);border-radius:var(--radius);background:var(--grund);flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;padding:8px 12px;display:flex}.rueckfrage p{flex-basis:100%;margin:0;font-weight:600}.rueckfrage button{margin:0}.quittungsbereich{border:2px solid var(--marke-orange);border-radius:var(--radius);background:var(--flaeche);margin-bottom:16px;padding:4px 12px 12px}.quittungsbereich h2{margin:8px 0;font-size:1.1rem}.quittung-eintrag+.quittung-eintrag{border-top:1px solid var(--linie)}.quittung-spiel{flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin:8px 0 0;display:flex}.quittung-spiel .zeit{font-variant-numeric:tabular-nums;font-weight:700}.quittung-spiel .stand{font-variant-numeric:tabular-nums;color:var(--text-leise)}.torfolge{border:2px dashed var(--linie);border-radius:var(--radius);background:var(--grund);margin:8px 0;padding:8px 12px 12px}.torfolge-kopf{justify-content:space-between;align-items:center;gap:8px;display:flex}.torfolge-kopf h3{margin:4px 0}.torfolge-kopf button{min-height:36px;margin:0}.torfolge table{font-size:.95rem}.torfolge th,.torfolge td{padding-left:4px;padding-right:4px}.torfolge .teamname{overflow-wrap:anywhere}.torfolge th:nth-child(3){text-align:center;min-width:0}.torfolge td button{min-height:36px;margin:0;padding:2px 8px}.torstand{margin:8px 0;font-weight:700}.tor-einfuegen{flex-wrap:wrap;align-items:end;gap:8px;margin-top:8px;display:flex}.tor-einfuegen label{gap:2px;font-size:.85rem;display:grid}.tor-einfuegen select{max-width:100%}.tor-einfuegen button{margin:0}.felder{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:16px;display:grid}.feld{border:1px solid var(--linie);border-radius:var(--radius);background:var(--grund);min-width:0;padding:12px}.feld h2{margin:0 0 8px;font-size:1.25rem}.feld h3{color:var(--text-leise);text-transform:uppercase;letter-spacing:.03em;margin:16px 0 4px;font-size:.85rem;font-weight:700}.feld-gross{border:2px solid var(--gruen);border-radius:var(--radius);background:var(--gruen-hell);padding:12px}.feld-gross-kopf{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.feld-gross-kopf .zeit{font-variant-numeric:tabular-nums;font-size:1.4rem;font-weight:800}.feld-gross-kopf .beginn{color:var(--text-leise);margin-left:auto;font-size:.85rem}.feld-teams{text-align:center;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:2px 12px;margin:8px 0;font-size:1.1rem;font-weight:700;display:flex}.feld-stand{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.restzeit{text-align:center;font-variant-numeric:tabular-nums;margin:4px 0;font-size:clamp(2.5rem,9vw,3.75rem);font-weight:800;line-height:1.1}.restzeit-vorbei{text-align:center;color:var(--text);margin:8px 0;font-size:1.2rem;font-weight:800}.stufenchip{color:#000;border-radius:999px;padding:0 8px;font-size:.8rem;font-weight:800;line-height:1.5;display:inline-block}.feld-liste{border-top:1px solid var(--linie);margin:0;padding:0;list-style:none}.feld-spiel{border-bottom:1px solid var(--linie);padding:8px 0}.feld-spiel-kopf{flex-wrap:wrap;align-items:baseline;gap:2px 8px;display:flex}.feld-spiel .zeit,.feld-spiel .stand{font-variant-numeric:tabular-nums;font-weight:700}.feld-spiel.ablauf-abgesagt{opacity:.6}.ohne-platz{border:2px dashed var(--marke-orange);border-radius:var(--radius);margin-top:16px;padding:4px 12px 12px}.ohne-platz h2{margin:8px 0 4px;font-size:1.1rem}@media (width<=520px){.sekretariat-spiel .spielsteuerung{margin-left:0}}button.reserve{min-height:36px;color:var(--text-leise);background:0 0;border-style:dashed;margin-left:auto;padding:4px 12px;font-size:.85rem;font-weight:400}@media (width<=520px){button.reserve{margin-left:0}}.rueckfrage{color:#5c3d00;border-radius:var(--radius);background:#fff3d1;border:2px solid #c98a00;margin-bottom:12px;padding:12px;font-weight:600}.rueckfrage p{margin:0 0 4px}.platzhalter-bereich{border:2px dashed var(--linie);border-radius:var(--radius);margin-bottom:16px;padding:12px}.platzhalter-formular{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end;gap:8px 12px;display:grid}.platzhalter-formular label{gap:2px;font-size:.85rem;display:grid}.platzhalter-formular input{font:inherit;border:1px solid var(--linie);border-radius:var(--radius);background:var(--grund);min-height:44px;color:var(--text);padding:8px}.platzhalter-formular .aktionen-reihe{grid-column:1/-1}.spielvorbereitung{margin:4px 0 0 3.2rem}.spielvorbereitung .aktionen-reihe{margin:4px 0}.spielvorbereitung button{min-height:36px;margin-top:0;padding:4px 12px;font-size:.85rem}.platzhalterhinweis{margin:4px 0;font-size:.85rem;font-style:italic}.teams-einteilen{border:1px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);gap:8px;max-width:480px;padding:8px 12px;display:grid}.teams-einteilen label{gap:2px;font-size:.85rem;display:grid}.teams-einteilen select{max-width:100%;min-height:36px;padding:4px 8px}.einzellink{border:2px dashed var(--linie);border-radius:var(--radius);flex-wrap:wrap;align-items:flex-start;gap:16px;margin:8px 0;padding:12px;display:flex}.einzellink .qr{background:#fff;width:220px;max-width:100%}.einzellink .qr svg{width:100%;height:auto;display:block}.einzellink-text{flex:14rem;min-width:0}.einzellink-spiel{margin:0 0 4px;font-weight:700}.blatt-adresse{overflow-wrap:anywhere;margin:0;font:.72rem/1.3 ui-monospace,monospace}@media (width<=520px){.spielvorbereitung{margin-left:0}}.vereinsblaetter{border:2px dashed var(--linie);border-radius:var(--radius);margin-bottom:16px;padding:12px}.vereinsblatt{color:#000;border:1px solid var(--linie);box-sizing:border-box;background:#fff;width:min(100%,190mm);margin:0 auto 16px;padding:4mm}.blatt-kopf{border-bottom:.6mm solid #000;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:8mm;margin-bottom:2mm;padding-bottom:1.5mm;display:flex}.blatt-verein{overflow-wrap:anywhere;flex:1 0 100%;margin:0;font-size:1.9rem;font-weight:800;line-height:1.1}.blatt-tag{margin:1mm 0 0;font-size:1.1rem;font-weight:700}.blatt-hinweis{margin:1mm 0 0;font-size:.95rem;font-weight:700}.blatt-gruppentitel{text-transform:uppercase;letter-spacing:.04em;margin:2mm 0 0;font-size:1.05rem}.blatt-gruppenhinweis{margin:0 0 1.5mm;font-size:.75rem}.blatt-abschnitt{break-inside:avoid;border:.3mm dashed #555;grid-template-columns:42mm minmax(0,1fr);align-items:start;column-gap:4mm;margin-bottom:2mm;padding:1.5mm 2mm;display:grid}.blatt-abschnitt .qr{width:42mm;height:42mm}.blatt-abschnitt .qr svg{width:100%;height:100%;display:block}.blatt-text{min-width:0}.blatt-titel{overflow-wrap:anywhere;margin:0;font-size:1.6rem;font-weight:800;line-height:1.1}.blatt-stufe{margin:0;font-size:.8rem;font-weight:700}.blatt-spiele{margin:1mm 0 0;padding:0;font-size:.85rem;list-style:none}.blatt-spiele li{grid-template-columns:12mm 15mm minmax(0,1fr);gap:2mm;display:grid}.blatt-zeit{font-variant-numeric:tabular-nums;font-weight:700}.blatt-paarung{overflow-wrap:anywhere}.blatt-fuss{flex-direction:column;margin:1mm 0 0;font-size:.7rem;display:flex}@media (width<=520px){.vereinsblatt{padding:8px}.blatt-abschnitt{grid-template-columns:1fr;row-gap:2mm}}@media print{.vereinsblaetter,.platzhalter-bereich,.rueckfrage,.einzellink{display:none!important}body[data-druck=vereinsblaetter] .vereinsblaetter{display:block!important}body[data-druck=vereinsblaetter] :is(.linkkarten,.resultatliste,.einteilung-einfuegen,.ansichtswahl,.quittungsbereich,.felderansicht),body[data-druck=vereinsblaetter] .angemeldet{display:none!important}body[data-druck=vereinsblaetter] main{max-width:none;padding:0}.blattbereichkopf{display:none!important}.vereinsblaetter{border:none;margin:0;padding:0}.vereinsblatt{border:none;width:190mm;margin:0;padding:0}.vereinsblatt+.vereinsblatt{break-before:page}.blatt-kopf{column-gap:6mm;margin-bottom:1.5mm;padding-bottom:1.2mm}.blatt-verein{font-size:22pt}.blatt-tag{margin-top:.5mm;font-size:11pt}.blatt-hinweis{margin-top:.5mm;font-size:10pt}.blatt-gruppentitel{break-after:avoid;margin-top:1.5mm;font-size:10pt}.blatt-gruppenhinweis{break-after:avoid;margin-bottom:1mm;font-size:7pt}.blatt-abschnitt{box-sizing:border-box;min-height:45mm;margin-bottom:2mm;padding:1.5mm 2mm}.blatt-titel{font-size:16pt}.blatt-stufe{font-size:8.5pt}.blatt-spiele{font-size:8.5pt;line-height:1.25}.blatt-fuss,.blatt-adresse{font-size:7pt}}.neuer-wettbewerb{border:1px dashed var(--linie);border-radius:var(--radius);gap:8px;max-width:480px;margin:8px 0 12px;padding:8px 12px 12px;display:grid}.neuer-wettbewerb legend{padding:0 4px;font-weight:700}.neuer-wettbewerb label{gap:2px;font-size:.85rem;display:grid}.neuer-wettbewerb select,.neuer-wettbewerb input{max-width:100%;min-height:36px;padding:4px 8px}.neuer-wettbewerb button{justify-self:start}
