:root{--text:#1f2028;--text-muted:#6b6375;--bg:#fff;--bg-subtle:#f4f3ec;--border:#e5e4e7;--accent:#2e7d32;--accent-contrast:#fff;--danger:#a1233b;--focus-ring:#0b5fff;--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:16px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#e5e4e7;--text-muted:#9ca3af;--bg:#16171d;--bg-subtle:#1f2028;--border:#2e303a;--accent:#66bb6a;--accent-contrast:#16171d;--danger:#f28b9d;--focus-ring:#7fb2ff}}:root[data-theme=light]{--text:#1f2028;--text-muted:#6b6375;--bg:#fff;--bg-subtle:#f4f3ec;--border:#e5e4e7;--accent:#2e7d32;--accent-contrast:#fff;--danger:#a1233b;--focus-ring:#0b5fff}:root[data-theme=dark]{--text:#e5e4e7;--text-muted:#9ca3af;--bg:#16171d;--bg-subtle:#1f2028;--border:#2e303a;--accent:#66bb6a;--accent-contrast:#16171d;--danger:#f28b9d;--focus-ring:#7fb2ff}body{margin:0}:root[data-breite=breit] #root{max-width:1400px}#root{box-sizing:border-box;max-width:960px;margin:0 auto;padding:0 16px 64px}.umgebungs-banner{text-align:center;margin:0 -16px 16px;padding:8px 16px;font-weight:600}.umgebungs-banner-demo{background:var(--danger);color:var(--bg)}.umgebungs-banner-dev{background:var(--bg-subtle);color:var(--text-muted);border-bottom:1px solid var(--border)}.umgebungs-banner-lokal{background:var(--focus-ring);color:var(--bg)}.wartungs-banner{text-align:center;background:var(--danger);color:var(--bg);margin:0 -16px 16px;padding:8px 16px;font-weight:600}.wartungs-ankuendigung{border:1px solid var(--danger);border-radius:6px;padding:10px 14px;font-weight:600}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}header nav{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:16px 0;display:flex}header nav a{color:var(--text);font-size:1.1rem;font-weight:600;text-decoration:none}.kopfzeile-link{color:var(--text);border-radius:4px;padding:6px 10px;font-size:1rem;font-weight:600;text-decoration:none}.kopfzeile-link-aktiv{background:var(--bg-subtle);color:var(--accent)}.kopfzeile-menue{position:relative}.kopfzeile-menue-knopf{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:4px;width:auto;padding:6px 10px;font-size:1rem;font-weight:600}.kopfzeile-menue-knopf.kopfzeile-link-aktiv{background:var(--bg-subtle);color:var(--accent)}.kopfzeile-menue-liste{background:var(--bg);border:1px solid var(--border);z-index:10;border-radius:4px;flex-direction:column;min-width:180px;margin-top:4px;display:flex;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 16px #0003}.kopfzeile-menue-eintrag{box-sizing:border-box;width:100%;font:inherit;text-align:left;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:0;padding:10px 14px;font-weight:600;text-decoration:none;display:block}.kopfzeile-menue-eintrag:hover{background:var(--bg-subtle)}.marke{align-items:center;gap:10px;display:inline-flex}header nav span.marke{color:var(--text);font-size:1.1rem;font-weight:600}.marke-version{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);white-space:nowrap;background:0 0;border-radius:999px;align-self:center;padding:1px 7px;font-size:.6rem;font-weight:700;text-decoration:none}.fusszeile{box-sizing:border-box;border-top:1px solid var(--border);background:var(--bg);max-width:960px;color:var(--text-muted);z-index:5;justify-content:space-between;align-items:center;gap:12px;margin:0 auto;padding:16px;font-size:.9rem;display:flex;position:fixed;bottom:0;left:0;right:0}:root[data-breite=breit] .fusszeile{max-width:1400px}.kopfzeile-symbol{align-items:center;font-size:1.3rem;line-height:1;display:inline-flex}.logo{border-radius:50%}.logo-dunkel{display:none}@media (prefers-color-scheme:dark){.logo-hell{display:none}.logo-dunkel{display:inline}}:root[data-theme=dark] .logo-hell{display:none}:root[data-theme=dark] .logo-dunkel,:root[data-theme=light] .logo-hell{display:inline}:root[data-theme=light] .logo-dunkel{display:none}.turnier-logo{vertical-align:middle;width:auto;max-width:100%}.turnier-ausgecheckt-symbol{font-size:22px;line-height:1}.turnier-name-mit-logo{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.logo-bereich{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:8px;display:flex}.logo-aktionen{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.oeffentlich-kopf{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.oeffentlich-kopf h1{margin:0}h1{margin:0 0 16px;font-size:1.75rem}h2{margin:32px 0 12px;font-size:1.25rem}h3{margin:24px 0 8px;font-size:1.05rem}.tabellen-wrapper{overflow-x:auto}table{border-collapse:collapse;width:100%;margin-bottom:16px}.spielplan-tabelle{table-layout:fixed;min-width:52em}.spielplan-tabelle .spalte-spiel{width:3em}.spielplan-tabelle .spalte-startzeit{width:6.5em}.spielplan-tabelle .spalte-status,.spielplan-tabelle .spalte-hinweis{width:6em}.spielplan-tabelle .spalte-schiedsrichter{width:11em}.spiel-schiri-select{box-sizing:border-box;width:100%}.protokoll-uebernahme-aktionen{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.protokoll-wartet{color:var(--danger);font-weight:600}.schiri-warnung{color:var(--danger);margin-top:4px;font-size:.8rem}.schiri-hinweis{color:var(--text-muted);margin-top:4px;font-size:.8rem}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}:root[data-dichte=schmal] th,:root[data-dichte=schmal] td{padding:2px 10px}:root[data-dichte=schmal] input:not([type=checkbox]):not([type=radio]),:root[data-dichte=schmal] select,:root[data-dichte=schmal] textarea{padding:4px 8px}:root[data-dichte=schmal] button:not(.kopfzeile-menue-eintrag):not(.kopfzeile-menue-knopf){padding:2px 6px}:root[data-dichte=schmal] form{gap:6px}:root[data-dichte=schmal] .feld{gap:2px}th[scope=row]{width:1%}th{color:var(--text-muted);white-space:nowrap;font-size:.9rem;font-weight:600}.reihenfolge-zelle{white-space:nowrap;width:128px}.status-zelle{text-transform:capitalize}.platzhalter-zeile{color:var(--text-muted);font-style:italic}form{flex-direction:column;gap:12px;max-width:420px;margin-bottom:16px;display:flex}.stammdaten-formular{max-width:840px}.feld{flex-direction:column;gap:4px;display:flex}.feld-checkbox{margin:8px 0;display:block}.feld-hinweis{color:var(--text-muted);font-size:.85rem;font-weight:400}.turnier-meta{color:var(--text-muted);margin-top:2px;font-size:.8rem;font-weight:400}.startseite-kopf{flex-wrap:wrap;align-items:flex-start;gap:8px 24px;display:flex}.startseite-kopf>div:first-child{flex:3 320px}.startseite-video{flex:240px;max-width:360px}.startseite-video iframe{aspect-ratio:16/9;border:0;border-radius:8px;width:100%;display:block}.oeffentliche-turnierliste{margin:0 0 16px;padding:0;list-style:none}.oeffentliche-turnierliste li{border-bottom:1px solid var(--border);padding:5px 0}.startseite-zusatz{color:var(--text-muted);margin-top:2px;font-size:.85rem;display:block}.symbol-verweis{white-space:nowrap}.ueber-kontakt{margin:0}.ueber-kontakt dt{margin-top:8px;font-weight:600}.ueber-kontakt dd{margin:2px 0 0}.turnier-gesperrt-hinweis{border:1px solid var(--border);border-left:4px solid var(--accent);background:var(--bg-subtle);color:var(--text);border-radius:0 6px 6px 0;margin:0 0 16px;padding:10px 14px}.blank-fieldset{border:0;min-width:0;margin:0;padding:0}.qr-code{margin-top:8px}.qr-code-bild{background:#fff;border-radius:4px;padding:8px;display:inline-block}.qr-code-bild svg{width:160px;height:160px;display:block}.qr-code-download{margin-top:8px;font-size:.9rem}.passwort-regeln{font-size:.9rem}.passwort-regeln-titel{margin:0 0 4px}.passwort-regeln ul{margin:0;padding:0;list-style:none}.passwort-regeln li{align-items:center;gap:6px;display:flex}.passwort-regeln .regel-marker{text-align:center;width:1em}.passwort-regeln .regel-offen{color:var(--danger)}.passwort-regeln .regel-erfuellt{color:var(--accent)}.ergebnis-eingabe{width:3em}.na-button{vertical-align:middle;margin-left:3px;padding:2px 5px;font-size:.72rem}.na-vor{margin-left:0;margin-right:3px}.konflikt-aktionen{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.speicher-status{min-height:1.25em;color:var(--accent);margin:4px 0;font-size:.8rem;font-weight:600}.gespeichert-hinweis{color:var(--accent);margin-top:4px;font-size:.8rem}.trikot-eingabe{width:4em}.kader-zelle{background:var(--bg-subtle)}.kader-titel{margin:0 0 12px;font-size:1rem}.kader-warnung{border-left:3px solid var(--danger);background:var(--bg);color:var(--text);margin:0 0 12px;padding:8px 12px;font-weight:400}.feststelltaste-hinweis{border-left:3px solid var(--danger);background:var(--bg);color:var(--text);margin:6px 0 0;padding:6px 10px;font-size:.9rem}.betreuer-bereich{flex-wrap:wrap;gap:12px;margin-bottom:16px;display:flex}.betreuer-schiri{align-items:center;gap:4px;font-size:.9rem;font-weight:400;display:flex}.mannschaft-aktionen{white-space:nowrap}.mannschaft-aktionen button+button{margin-left:8px}.benutzer-aktionen{flex-wrap:wrap;gap:6px;display:flex}.benutzer-email{white-space:nowrap}.kader-anzahl{background:var(--accent);min-width:1.5em;color:var(--accent-contrast);text-align:center;border-radius:999px;margin-left:.4em;padding:0 .4em;font-size:.8em;font-weight:600;line-height:1.5;display:inline-block}.kader-formular,.schiedsrichter-formular{flex-flow:wrap;align-items:flex-end;max-width:none}.schiedsrichter-lizenz{align-items:center;gap:4px;font-weight:400;display:flex}.sr-nur-leitung{color:var(--text-muted);margin-top:4px;font-size:.8rem;font-weight:400;display:block}.sr-email-eingabe{box-sizing:border-box;width:18em;max-width:100%}.inline-form{flex-flow:wrap;align-items:center;max-width:none;margin-bottom:0}.passwort-aendern-form{align-items:flex-start}.passwort-neu-spalte{flex-direction:column;gap:4px;display:flex}label{font-size:.9rem;font-weight:600}.feld:has(input:required,select:required,textarea:required)>label:after{content:" *";color:var(--danger);font-weight:700}.uebersicht-tabelle tr:has(td input:required,td select:required,td textarea:required) th[scope=row] label:after{content:" *";color:var(--danger);font-weight:700}.uebersicht-tabelle tr:has(td input:required,td select:required,td textarea:required) th[scope=row] span:after{content:" *";color:var(--danger);font-weight:700}.pflicht-stern{color:var(--danger);font-weight:700}.pflicht-legende{color:var(--text-muted);margin:0 0 12px;font-size:.85rem}.pflicht-legende .stern{color:var(--danger);font-weight:700}input:not([type=checkbox]):not([type=radio]),select,textarea{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:4px;padding:8px 10px}textarea{box-sizing:border-box;resize:vertical;width:100%}.uebersicht-tabelle td input:not([type=checkbox]):not([type=radio]),.uebersicht-tabelle td select{box-sizing:border-box;width:100%}.spielfeld-name-eingabe{margin-right:.5em;display:inline-block}.uebersicht-tabelle td .spielfeld-name-eingabe input{width:10em}.mail-berichte-verlauf summary{cursor:pointer;margin:8px 0;font-weight:600}.mail-berichte-liste{flex-direction:column;gap:8px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.mail-bericht-eintrag{border-bottom:1px solid var(--border);padding-bottom:8px}.mail-bericht-kopf{color:var(--text-muted);margin:0;font-size:.8rem}.mail-bericht-text{margin:2px 0 0}.mail-nachrichten-tabelle th,.mail-nachrichten-tabelle td{text-align:left;vertical-align:top}.mail-anhaenge-liste{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.mail-anhang-vorschau{object-fit:contain;max-width:80px;max-height:40px;display:block}input[readonly]{box-sizing:border-box;width:100%}input:not([type=checkbox]):not([type=radio])[readonly],input:not([type=checkbox]):not([type=radio]):disabled,select:disabled,textarea:disabled,textarea[readonly]{background:var(--bg-subtle);color:var(--text-muted);-webkit-text-fill-color:var(--text-muted);opacity:1;cursor:default;border-style:dashed}input:not([type=checkbox]):not([type=radio]):disabled,select:disabled,textarea:disabled{cursor:not-allowed}button{appearance:none;box-sizing:border-box;min-height:0;font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);cursor:pointer;border-radius:4px;width:fit-content;padding:4px 8px;font-weight:600;line-height:1}button:disabled{opacity:.5;cursor:not-allowed}.button-link{box-sizing:border-box;border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);border-radius:4px;padding:4px 8px;font-weight:600;line-height:1;text-decoration:none;display:inline-block}.regeln-formular{max-width:none}.regeln-tabelle{max-width:30em}.regeln-tabelle-breit{max-width:64em}.feld-hinweis-spalte{color:var(--text-muted);width:60%;font-size:.85rem}.regeln-eingabe-spalte{min-width:5em}.regeln-eingabe-spalte-breit{min-width:18em}.regeln-tabelle th,.regeln-tabelle td{vertical-align:top}.regeln-abhaengig-zeile th{padding-left:28px}#forfaitErgebnis{width:5em}.regeln-knoepfe{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button-sekundaer{color:var(--accent);border:1px solid var(--accent);background:0 0}.button-loeschen{color:var(--danger);border-width:2px;border-color:var(--danger);background:0 0;font-weight:700}.kriterien-liste{max-width:24em;padding-left:1.4em}.kriterien-liste li{justify-content:space-between;align-items:center;gap:12px;padding:2px 0;display:flex}.kriterien-aktionen{white-space:nowrap}[role=tablist]{border-bottom:1px solid var(--border);gap:4px;margin-bottom:16px;display:flex}.tab{color:var(--text-muted);background:0 0;border:none;border-bottom:3px solid #0000;border-radius:4px 4px 0 0;margin-bottom:-1px;padding:8px 16px;font-weight:600}.tab-aktiv{color:var(--text);border-bottom-color:var(--accent);font-weight:700}.theme-umschalter{gap:2px;display:inline-flex}.theme-button{color:var(--text-muted);border:1px solid var(--border);background:0 0;padding:6px 10px;font-size:.85rem;font-weight:600}.theme-button-aktiv{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent)}tr.zieh-ziel{box-shadow:inset 0 3px 0 0 var(--accent)}.symbol-button{margin-right:4px;font-size:1rem}.ziehpunkt{cursor:grab;color:var(--text-muted);-webkit-user-select:none;user-select:none;margin-right:6px;padding:4px 6px;font-size:1.1rem;display:inline-block}.ziehpunkt:active{cursor:grabbing}button:hover:not(:disabled){filter:brightness(1.1)}[role=alert]{color:var(--danger);font-weight:600}.pruef-liste{margin:12px 0 0;padding:0;list-style:none}.pruef-liste li{align-items:baseline;gap:8px;padding:4px 0;display:flex}.pruef-symbol{text-align:center;flex:none;width:1.2em;font-weight:700}.pruef-ok .pruef-symbol{color:var(--accent)}.pruef-hinweis .pruef-symbol,.pruef-fehler .pruef-symbol{color:var(--danger)}.pruef-info .pruef-symbol{color:var(--text-muted)}.warnkasten,.konfig-aenderung-hinweis{border:1px solid var(--danger);background:var(--bg-subtle);border-radius:6px;margin-bottom:16px;padding:10px 14px}.konfig-aenderung-hinweis ul{margin:8px 0}.qr-aufklappen{margin:0 0 20px}.qr-aufklappen>summary{cursor:pointer;font-weight:600}.regeln-aufklappen>summary{cursor:pointer;margin:8px 0;font-size:1.2rem;font-weight:600}.qr-aufklappen-inhalt{padding-top:8px}.kontext-hilfe{border:1px solid var(--border);background:var(--bg-subtle);border-radius:6px;margin:0 0 20px}.kontext-hilfe>summary{cursor:pointer;padding:8px 12px;font-weight:600}.kontext-hilfe[open]>summary{border-bottom:1px solid var(--border)}.kontext-hilfe-inhalt{padding:4px 14px 12px}.kontext-hilfe-inhalt p{margin:10px 0 0}.kontext-hilfe-inhalt ul{margin:8px 0 0;padding-left:20px}.hilfe-inhalt{background:var(--bg-subtle);border:1px solid var(--border);border-radius:6px;margin:16px 0 32px;padding:12px 16px}.hilfe-inhalt ul{flex-wrap:wrap;gap:6px 20px;margin:0;padding:0;list-style:none;display:flex}.hilfe-inhalt a{color:var(--accent);font-weight:600;text-decoration:none}.hilfe-inhalt a:hover{text-decoration:underline}.hilfe-thema{margin-bottom:32px;scroll-margin-top:16px}.hilfe-kurz{color:var(--text);margin-top:0}.hilfe-abschnitt{border:1px solid var(--border);background:var(--bg);border-radius:6px;margin-bottom:8px}.hilfe-abschnitt>summary{cursor:pointer;border-radius:6px;padding:10px 14px;font-weight:600;list-style-position:inside}.hilfe-abschnitt[open]>summary{border-bottom:1px solid var(--border);border-radius:6px 6px 0 0}.hilfe-abschnitt>summary:hover{background:var(--bg-subtle)}.hilfe-abschnitt-inhalt{padding:4px 16px 12px}.hilfe-abschnitt-inhalt>p:first-child{margin-top:12px}.hilfe-hinweis{border-left:3px solid var(--accent);background:var(--bg-subtle);color:var(--text);border-radius:0 4px 4px 0;padding:8px 12px}.hilfe-vertiefung{border-left:3px solid var(--border);margin:8px 0;padding-left:12px}.hilfe-vertiefung>summary{cursor:pointer;color:var(--accent);font-size:.9rem;font-weight:600}.hilfe-vertiefung-inhalt{padding-top:4px}.hilfe-bild{margin:12px 0 0}.hilfe-bild img{border:1px solid var(--border);border-radius:6px;max-width:100%;height:auto;display:block}.hilfe-bild figcaption{color:var(--text-muted);margin-top:6px;font-size:.85rem}.hilfe-spezifikation{margin-top:12px}.hilfe-spezifikation h1,.hilfe-spezifikation h2,.hilfe-spezifikation h3,.hilfe-spezifikation h4{margin:1.2em 0 .4em;line-height:1.25}.hilfe-spezifikation h1{font-size:1.5rem}.hilfe-spezifikation h2{border-bottom:1px solid var(--border);padding-bottom:.2em;font-size:1.25rem}.hilfe-spezifikation h3{font-size:1.1rem}.hilfe-spezifikation th,.hilfe-spezifikation td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:6px 10px}.hilfe-spezifikation th{background:var(--bg-subtle)}.hilfe-spezifikation code{background:var(--bg-subtle);border-radius:4px;padding:.1em .35em;font-size:.9em}.hilfe-spezifikation pre{background:var(--bg-subtle);border-radius:6px;padding:12px;overflow-x:auto}.hilfe-spezifikation pre code{background:0 0;padding:0}.hilfe-spezifikation blockquote{border-left:3px solid var(--border);color:var(--text-muted);margin:12px 0;padding-left:12px}.kanban-formular form{max-width:none}.kanban-formular-zeile{flex-wrap:wrap;gap:12px;display:flex}.kanban-formular-zeile .feld{flex:160px}.kanban-formular-aktionen{gap:8px;display:flex}.kanban-notizen{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.kanban-notizen-liste{flex-direction:column;gap:8px;margin:12px 0;padding:0;list-style:none;display:flex}.kanban-notiz{background:var(--bg-subtle);border:1px solid var(--border);border-radius:6px;padding:8px 12px}.kanban-notiz-text{white-space:pre-wrap;margin:0 0 4px}.kanban-notiz-meta{color:var(--text-muted);margin:0;font-size:.78rem}.kanban-notiz-formular{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.kanban-notiz-formular .feld{width:100%}.kanban-board{grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0 24px;display:grid}@media (width<=720px){.kanban-board{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.kanban-board{grid-template-columns:1fr}}.kanban-spalte{background:var(--bg-subtle);border:1px solid var(--border);border-radius:8px;min-width:0;padding:12px}.kanban-spalte-titel{align-items:center;gap:8px;margin:0 0 12px;font-size:1rem;display:flex}.kanban-anzahl{color:var(--text-muted);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:0 8px;font-size:.8rem;font-weight:400}.kanban-leer{color:var(--text-muted);font-size:.9rem;font-style:italic}.kanban-karte{background:var(--bg);border:1px solid var(--border);border-left:4px solid var(--border);border-radius:6px;margin-bottom:10px;padding:10px}.kanban-karte.prio-hoch{border-left-color:var(--danger)}.kanban-karte.prio-mittel{border-left-color:var(--accent)}.kanban-karte.prio-niedrig{border-left-color:var(--border)}.kanban-karte-kopf{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.kanban-badge{border:1px solid var(--border);background:var(--bg-subtle);color:var(--text-muted);border-radius:999px;padding:1px 8px;font-size:.72rem}.kanban-karte-titel{margin:0 0 4px;font-size:.95rem}.kanban-karte-titel-knopf{font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0;font-weight:600}.kanban-karte-titel-knopf:hover,.kanban-karte-titel-knopf:focus-visible{color:var(--accent);text-decoration:underline}.kanban-karte-absender{margin:0 0 6px;font-size:.85rem}.kanban-karte-meta{color:var(--text-muted);margin:0 0 8px;font-size:.78rem}.kanban-karte-aktionen{flex-wrap:wrap;gap:4px;display:flex}.kanban-karte-aktionen button{padding:2px 8px;font-size:.8rem}.kanban-karte-aktionen .button-loeschen{font-size:1.1rem}.kanban-detail-dialog{background:var(--bg);width:min(760px,100vw - 32px);max-height:calc(100vh - 64px);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:20px;overflow-y:auto;box-shadow:0 4px 16px #0003}.kanban-detail-dialog::backdrop{background:#00000080}.kanban-detail-kopf{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.kanban-detail-kopf h2{margin:0;font-size:1.15rem}.kanban-detail-dialog form{max-width:none}.kanban-sync-aktionen{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.druck-dokument{max-width:60em}.druck-felder{margin:8px 0 16px}.druck-felder th[scope=row]{text-align:left;white-space:nowrap;vertical-align:top;padding-right:12px}.druck-abschnitt{margin-top:16px}.druck-seitenkopf{margin:0 0 16px;font-size:1.75rem;font-weight:700}.druck-tabelle-spielplan th:first-child,.druck-tabelle-spielplan td:first-child{white-space:nowrap;width:2.5em}.druck-tabelle-spielplan th:nth-child(2),.druck-tabelle-spielplan td:nth-child(2){white-space:nowrap;width:4.5em}.druck-qr{margin:12px 0}.druck-qr .qr-code-bild{width:160px;max-width:45vw}.druck-qr-text{margin-top:4px}.druck-qr-url{word-break:break-all;font-size:.85rem}.druck-seitenumbruch{break-before:page}.druck-aktionen{flex-wrap:wrap;gap:8px;margin:12px 0 20px;display:flex}.druck-links{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}@media print{header,.druck-aktionen,.kein-druck{display:none!important}main{padding:0!important}.druck-dokument{color:#000;max-width:none}.tabellen-wrapper{overflow:visible!important}tr,.druck-qr{break-inside:avoid}a{color:#000;text-decoration:none}}.protokoll-scoreboard{border:1px solid var(--border,currentColor);border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem}.protokoll-stand{flex-wrap:wrap;align-items:baseline;gap:.75rem;font-size:1.25rem;display:flex}.protokoll-stand strong{font-size:2.4rem;line-height:1}.protokoll-ueberhang{color:var(--danger);font-weight:700}.protokoll-teams{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.protokoll-teamstatus{border:1px solid var(--border,currentColor);border-radius:8px;padding:.5rem .75rem}.protokoll-teamstatus h3{margin-top:0}.protokoll-kader{font-size:.95rem}.protokoll-kontext{border:2px solid var(--border,currentColor);border-radius:8px;margin-bottom:.75rem;padding:.6rem 1rem;font-size:1.1rem}.protokoll-kontext-a{border-color:var(--focus-ring);background:color-mix(in srgb, var(--focus-ring) 14%, transparent)}.protokoll-kontext-b{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent)}.protokoll-tastenfeld{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.protokoll-tastengruppe{flex-wrap:wrap;gap:.4rem;display:flex}.protokoll-tastengruppe button{min-width:2.75rem;min-height:2.75rem}.protokoll-tastengruppe button[aria-pressed=true]{outline:3px solid var(--focus-ring);outline-offset:1px}.protokoll-abschluss,.protokoll-sonderfaelle{margin-bottom:1rem}.protokoll-gestrichen td{opacity:.6;text-decoration:line-through}.protokoll-vb-kopf{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;padding-bottom:8px;display:flex}.protokoll-vb-score{align-items:stretch;gap:16px;margin-bottom:10px;display:flex}.protokoll-vb-acht{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:96px;display:flex}.protokoll-vb-acht-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:700}.protokoll-vb-acht-wert{font-variant-numeric:tabular-nums;font-size:clamp(2rem,7vh,4rem);font-weight:700;line-height:1}.protokoll-vb-acht-abgelaufen .protokoll-vb-acht-wert,.protokoll-vb-acht-abgelaufen .protokoll-vb-acht-label{color:var(--danger)}.protokoll-vb-team{flex-direction:column;flex-grow:1;justify-content:center;gap:6px;display:flex}.protokoll-vb-team-rechts{text-align:right;align-items:flex-end}.protokoll-vb-teamname{appearance:none;font:inherit;color:var(--text);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:6px;width:fit-content;padding:4px 14px;font-size:1.6rem;font-weight:700}.protokoll-vb-teamname-links{border-color:var(--focus-ring);background:color-mix(in srgb, var(--focus-ring) 14%, transparent)}.protokoll-vb-teamname-rechts{border-color:var(--danger);background:color-mix(in srgb, var(--danger) 14%, transparent)}.protokoll-vb-chips{flex-wrap:wrap;gap:6px;display:flex}.protokoll-vb-chips span{border:1px solid var(--border);background:var(--bg-subtle);border-radius:4px;padding:3px 10px;font-size:clamp(.72rem,1.55vh,.85rem)}.protokoll-vb-werfer{color:var(--text-muted);font-size:.85rem}.protokoll-vb-mitte{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:300px;display:flex}.protokoll-vb-ergebnis{font-variant-numeric:tabular-nums;font-size:clamp(2.2rem,7.5vh,4rem);font-weight:700;line-height:1}.protokoll-vb-restzeit{font-variant-numeric:tabular-nums;font-size:clamp(1.4rem,4.2vh,2.2rem)}.protokoll-vb-laeuft{letter-spacing:.02em;color:var(--accent);align-items:center;gap:10px;font-size:clamp(1.3rem,4.2vh,2.2rem);font-weight:800;display:flex}.protokoll-vb-laeuft .protokoll-vb-punkt{background:var(--accent);border-radius:50%;width:.5em;height:.5em}.protokoll-vb-steht{color:var(--danger)}.protokoll-vb-steht .protokoll-vb-punkt{background:var(--danger)}.protokoll-vb-eingabe{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:20px;margin:10px 0;display:grid}.protokoll-vb-seite{flex-direction:column;gap:8px;display:flex}.protokoll-vb-eingabe>.protokoll-vb-seite:last-child{align-items:flex-end}.protokoll-vb-gruppe-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.72rem;font-weight:700}.protokoll-vb-spieler{appearance:none;font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--bg-subtle);width:92px;min-height:clamp(54px,9vh,72px);color:var(--text);border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:2px;display:flex;position:relative;overflow:visible}.protokoll-vb-spieler[aria-pressed=true]{border:2px solid var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.protokoll-vb-spieler-nr{font-size:clamp(1.3rem,3.2vh,1.8rem);font-weight:700;line-height:1}.protokoll-vb-spieler-name{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:88px;font-size:.72rem;overflow:hidden}.protokoll-vb-badge{background:var(--accent);color:var(--accent-contrast);border-radius:999px;padding:2px 8px;font-size:.68rem;font-weight:700;position:absolute;top:-18px;right:-6px}.protokoll-vb-badge-warnung{background:var(--danger);color:var(--accent-contrast)}.protokoll-fehler-blitz{z-index:40;pointer-events:none;background:var(--danger);opacity:0;animation:.5s ease-out forwards protokoll-fehler-blitz;position:fixed;inset:0}@keyframes protokoll-fehler-blitz{0%{opacity:.4}to{opacity:0}}.protokoll-vb-seite .protokoll-tastengruppe{margin-top:12px}.protokoll-vb-aktionen{flex-direction:column;gap:6px;min-width:360px;display:flex}.protokoll-vb-aktion-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.protokoll-vb-aktion{background:var(--bg);min-height:clamp(38px,5.2vh,44px);color:var(--text);border:1px solid var(--border);align-items:center;gap:8px;padding:0 12px;font-weight:600;display:flex}.protokoll-vb-aktion[aria-pressed=true]{outline:3px solid var(--focus-ring);outline-offset:1px}.protokoll-vb-aktion kbd,.protokoll-vb-uhr kbd,.protokoll-vb-kopf kbd{color:var(--text-muted);border:1px solid var(--border);background:var(--bg);border-radius:4px;padding:1px 6px;font-family:inherit;font-size:.72rem;font-weight:700}.protokoll-vb-uhr{justify-content:center;align-items:center;gap:10px;width:100%;min-height:clamp(42px,6vh,52px);font-weight:700;display:flex}.protokoll-vb-uhr kbd{background:color-mix(in srgb, var(--accent-contrast) 20%, transparent);color:var(--accent-contrast);border-color:#0000}.protokoll-vb-fuss{border-top:1px solid var(--border);background:var(--bg-subtle);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;gap:20px;margin-top:auto;padding:clamp(4px,1vh,10px) 14px;display:grid}.protokoll-vb-ereignisliste{max-height:7.6em;font-size:clamp(.8rem,1.7vh,.95rem);overflow-y:auto}.protokoll-vb-ereignis{font-variant-numeric:tabular-nums}.protokoll-vb-ereignis:first-of-type{font-weight:600}.protokoll-vb-fussrechts{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.protokoll-wechsel-dialog{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:8px;max-width:560px;padding:20px 24px}.protokoll-wechsel-dialog::backdrop{background:#1f202873}.protokoll-wechsel-dialog h2{margin-top:0}.protokoll-vb-dialog-aktionen{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}body.protokoll-vollbild-aktiv header,body.protokoll-vollbild-aktiv footer.fusszeile,body.protokoll-vollbild-aktiv .umgebungs-banner,body.protokoll-vollbild-aktiv .wartungs-banner{display:none}body.protokoll-vollbild-aktiv #root{max-width:none;padding:8px 16px}body.protokoll-vollbild-aktiv .protokoll-kontext{text-align:center;justify-content:center}.protokoll-erfassung{flex-direction:column;gap:6px;display:flex}body.protokoll-vollbild-aktiv .protokoll-erfassung{height:calc(100dvh - 16px);overflow-y:auto}.protokoll-vb-kopf-aktionen{flex-wrap:wrap;gap:8px;display:flex}.protokoll-vb-teamname{align-items:center;max-width:100%;height:calc(2.5em + .6rem);font-size:clamp(1rem,2.5vh,1.35rem);display:flex}.protokoll-vb-teamname-text{-webkit-line-clamp:2;line-clamp:2;text-align:inherit;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.protokoll-vb-score{margin-bottom:4px}.protokoll-vb-eingabe{margin:6px 0}body.protokoll-vollbild-aktiv .protokoll-vb-fuss{margin-top:auto}@media (height<=760px){body.protokoll-vollbild-aktiv .protokoll-erfassung{gap:4px}body.protokoll-vollbild-aktiv .protokoll-vb-kopf{margin-bottom:4px;padding-bottom:4px;font-size:.9rem}body.protokoll-vollbild-aktiv .protokoll-kontext{margin-bottom:4px;padding:5px 12px;font-size:.95rem}body.protokoll-vollbild-aktiv .protokoll-vb-eingabe{gap:14px;margin:4px 0}body.protokoll-vollbild-aktiv .protokoll-vb-aktion{gap:6px;min-height:34px;padding:0 8px;font-size:.85rem}body.protokoll-vollbild-aktiv .protokoll-vb-uhr{min-height:38px}body.protokoll-vollbild-aktiv .protokoll-vb-spieler{width:84px;min-height:48px}body.protokoll-vollbild-aktiv .protokoll-vb-spieler-nr{font-size:1.25rem}body.protokoll-vollbild-aktiv .protokoll-vb-gruppe-label,body.protokoll-vollbild-aktiv .protokoll-vb-werfer{font-size:.68rem}body.protokoll-vollbild-aktiv .protokoll-vb-fuss{gap:12px}body.protokoll-vollbild-aktiv .protokoll-vb-fussrechts .button-sekundaer,body.protokoll-vollbild-aktiv .protokoll-vb-kopf .button-sekundaer{padding:3px 8px;font-size:.8rem}}@media (height<=640px){body.protokoll-vollbild-aktiv .protokoll-erfassung{gap:2px}body.protokoll-vollbild-aktiv .protokoll-kontext{margin-bottom:2px;padding:4px 10px}body.protokoll-vollbild-aktiv .protokoll-vb-eingabe{gap:12px;margin:2px 0}body.protokoll-vollbild-aktiv .protokoll-vb-fuss{padding:3px 12px}body.protokoll-vollbild-aktiv .protokoll-vb-score{gap:10px;margin-bottom:2px}body.protokoll-vollbild-aktiv .protokoll-vb-mitte{gap:2px;min-width:260px}body.protokoll-vollbild-aktiv .protokoll-vb-ergebnis{font-size:2rem}body.protokoll-vollbild-aktiv .protokoll-vb-acht-wert{font-size:2.2rem}body.protokoll-vollbild-aktiv .protokoll-vb-restzeit{font-size:1.3rem}body.protokoll-vollbild-aktiv .protokoll-vb-laeuft{font-size:1.2rem}body.protokoll-vollbild-aktiv .protokoll-vb-teamname{height:calc(2.4em + .3rem);font-size:1rem}body.protokoll-vollbild-aktiv .protokoll-vb-acht-label{font-size:.6rem}body.protokoll-vollbild-aktiv .protokoll-vb-chips span{padding:2px 8px;font-size:.7rem}body.protokoll-vollbild-aktiv .protokoll-vb-aktion{min-height:32px}body.protokoll-vollbild-aktiv .protokoll-vb-uhr{min-height:34px}body.protokoll-vollbild-aktiv .protokoll-vb-aktion-grid{gap:4px}body.protokoll-vollbild-aktiv .protokoll-vb-spieler{min-height:44px}body.protokoll-vollbild-aktiv .protokoll-vb-ereignisliste{font-size:.78rem}}.protokoll-vb-ereignis{align-items:center;gap:6px;display:flex}.protokoll-vb-ereignis-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.protokoll-vb-ereignis .symbol-button{flex-shrink:0;padding:0 5px;font-size:.72rem;line-height:1.3}body.protokoll-vollbild-aktiv .protokoll-vb-hinweise{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:2px 16px;min-height:1.6em;display:flex}body.protokoll-vollbild-aktiv .protokoll-vb-hinweise p{margin:0;font-size:.9rem}@media (height<=640px){body.protokoll-vollbild-aktiv .protokoll-vb-hinweise{min-height:1.2em}body.protokoll-vollbild-aktiv .protokoll-vb-hinweise p{font-size:.8rem}}.protokoll-vb-ereignis-aktionen{flex-shrink:0;justify-content:flex-end;gap:4px;width:60px;display:flex}.sr-sicht{background:var(--sr-grund);min-height:100vh;color:var(--sr-schrift);flex-direction:column;gap:.75rem;padding:1rem;display:flex}.sr-sicht-dunkel{--sr-grund:#0b0d11;--sr-feld:#151920;--sr-schrift:#f4f6f4;--sr-leise:#98a1ae;--sr-aktiv:#79c47d;--sr-aktiv-grund:#16301b;--sr-alarm:#ec5570;--sr-alarm-grund:#3a121c;--sr-offen:#7fb2ff;--sr-rand:#262b34}.sr-sicht-hell{--sr-grund:#fbfbf7;--sr-feld:#eeeee6;--sr-schrift:#16181d;--sr-leise:#55606e;--sr-aktiv:#1c6b21;--sr-aktiv-grund:#d7ecd8;--sr-alarm:#a1233b;--sr-alarm-grund:#f6dade;--sr-offen:#12459c;--sr-rand:#cfcfc6}.sr-tafel{font-variant-numeric:tabular-nums;flex:1;grid-template-rows:auto 1fr auto;gap:2cqw;min-height:0;display:grid;container-type:inline-size}.sr-kopf{letter-spacing:.12em;text-transform:uppercase;color:var(--sr-leise);justify-content:space-between;align-items:baseline;gap:2cqw;font-size:2.4cqw;font-weight:600;display:flex}.sr-status{color:var(--sr-aktiv)}.sr-status-still{color:var(--sr-leise)}.sr-mitte{grid-template-columns:1fr auto 1fr;align-items:center;gap:3.6cqw;display:grid}.sr-team{flex-direction:column;gap:.9cqw;min-width:0;display:flex}.sr-team-rechts{text-align:right}.sr-teamname{text-transform:uppercase;overflow-wrap:anywhere;font-size:4.6cqw;font-weight:700;line-height:1.05}.sr-chips{letter-spacing:.07em;text-transform:uppercase;color:var(--sr-leise);flex-wrap:wrap;gap:1.6cqw;font-size:2.2cqw;font-weight:500;display:flex}.sr-team-rechts .sr-chips{justify-content:flex-end}.sr-chips b{color:var(--sr-schrift);font-weight:700}.sr-alarm{color:var(--sr-alarm)}.sr-kern{flex-direction:column;align-items:center;gap:.4cqw;display:flex}.sr-zeit{font-size:11.5cqw;font-weight:700;line-height:.9}.sr-kern-label{letter-spacing:.16em;text-transform:uppercase;color:var(--sr-leise);font-size:2cqw;font-weight:600}.sr-stand{font-size:7cqw;font-weight:700;line-height:1}.sr-band{grid-template-columns:1fr 1fr;gap:1.5cqw;min-height:17cqw;display:grid}.sr-band-feld{background:var(--sr-feld);border-radius:2px;align-items:center;gap:2.5cqw;padding:1.6cqw 2.6cqw;display:flex}.sr-band-rechts{text-align:right;flex-direction:row-reverse}.sr-band-leer{border:1px dashed var(--sr-rand);background:0 0}.sr-band-aktiv{background:var(--sr-aktiv-grund)}.sr-band-alarm{background:var(--sr-alarm-grund)}.sr-band-offen{grid-column:1/-1;justify-content:center}.sr-band-zahl{color:var(--sr-leise);font-size:11cqw;font-weight:700;line-height:.85}.sr-band-aktiv .sr-band-zahl{color:var(--sr-aktiv)}.sr-band-alarm .sr-band-zahl{color:var(--sr-alarm)}.sr-band-offen .sr-band-zahl{color:var(--sr-offen)}.sr-band-text{letter-spacing:.13em;text-transform:uppercase;color:var(--sr-leise);flex-direction:column;gap:.3cqw;font-size:2.4cqw;font-weight:600;line-height:1.25;display:flex}.sr-band-aktiv .sr-band-text strong{color:var(--sr-aktiv)}.sr-band-alarm .sr-band-text strong{color:var(--sr-alarm)}.sr-band-offen .sr-band-text{text-align:center}.sr-warte{flex-direction:column;grid-row:2/4;justify-content:center;gap:3cqw;display:flex}.sr-warte-zeile{flex-direction:column;gap:.6cqw;display:flex}.sr-warte-label{letter-spacing:.16em;text-transform:uppercase;color:var(--sr-leise);font-size:2.2cqw;font-weight:600}.sr-warte-wert{font-size:5cqw;font-weight:700;line-height:1.1}.sr-warte-gross{font-size:6.4cqw}.sr-hervor{color:var(--sr-aktiv)}.sr-verzoegert{letter-spacing:.1em;text-transform:uppercase;color:var(--sr-alarm);margin:0;font-size:2cqw}.sr-fehler{color:var(--sr-alarm);font-size:1.2rem}.sr-bedienung{flex-shrink:0;justify-content:flex-end;gap:.5rem;display:flex}.sr-bedienung button{color:var(--sr-leise);border:1px solid var(--sr-rand);cursor:pointer;background:0 0;border-radius:3px;padding:.35rem .75rem;font-size:.85rem}.sr-bedienung button:hover{color:var(--sr-schrift);border-color:var(--sr-leise)}.sr-bedienung button:focus-visible{outline:3px solid var(--sr-offen);outline-offset:2px}
