:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f3f5f8;--flaeche:#fff;--flaeche-2:#e9eef4;--text:#13202e;--leise:#556372;--rand:#d3dbe4;--akzent:#1f5fa8;--akzent-text:#fff;--akzent-zart:#dbe8f7;--erfolg:#15803d;--warnung:#a16207;--fehler:#b91c1c;--licht-rot:#b91c1c;--licht-gruen:#15803d;--licht-gelb:#facc15;--serie:#1f5fa8;--serie-zart:#1f5fa81a;--schatten:0 1px 2px #0000000f, 0 2px 8px #0000000d;--radius:14px;--abstand:16px;--nav-hoehe:64px;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,system-ui,sans-serif;font-size:17px;line-height:1.4}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0d141c;--flaeche:#16202b;--flaeche-2:#1e2a37;--text:#e8eef5;--leise:#9aa9b8;--rand:#2c3a49;--akzent:#5b9be6;--akzent-text:#06121f;--akzent-zart:#1b3350;--erfolg:#4ade80;--warnung:#fbbf24;--fehler:#f87171;--serie:#3987e5;--serie-zart:#3987e51f;--schatten:none}}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{overscroll-behavior-y:none;min-height:100dvh}button,input,select,textarea{font:inherit;color:inherit}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}h1,h2,h3{margin:0;line-height:1.2}h1{font-size:1.35rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0}.zahl{font-variant-numeric:tabular-nums}.leise{color:var(--leise)}.klein{font-size:.85rem}.app{grid-template-rows:auto 1fr auto;min-height:100dvh;display:grid}.kopf{z-index:5;padding:calc(env(safe-area-inset-top) + 10px) var(--abstand) 10px;color:#fff;background:#16324f;align-items:center;gap:12px;display:flex;position:sticky;top:0}.kopf h1{flex:1;font-size:1.15rem}.sync{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:.8rem;display:inline-flex}.sync:before{content:"";background:#4ade80;border-radius:50%;width:8px;height:8px}.sync[data-status=laeuft]:before{background:#93c5fd}.sync[data-status=offline]:before,.sync[data-status=ausstehend]:before{background:#fbbf24}.sync[data-status=fehler]:before,.sync[data-status=abgemeldet]:before{background:#f87171}main{padding:var(--abstand);padding-bottom:calc(var(--nav-hoehe) + env(safe-area-inset-bottom) + var(--abstand));gap:var(--abstand);flex-direction:column;min-width:0;display:flex}.navigation{z-index:5;background:var(--flaeche);border-top:1px solid var(--rand);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.navigation a{height:var(--nav-hoehe);color:var(--leise);flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:.75rem;text-decoration:none;display:flex}.navigation a[aria-current=page]{color:var(--akzent);font-weight:600}.navigation svg{width:26px;height:26px}@media (min-width:900px){.app{grid-template-rows:auto 1fr;grid-template-columns:210px 1fr}.kopf{grid-column:1/-1}.navigation{border-top:0;border-right:1px solid var(--rand);padding:var(--abstand) 8px;background:0 0;grid-template-columns:1fr;align-self:start;gap:4px;position:sticky;top:56px}.navigation a{border-radius:10px;flex-direction:row;justify-content:flex-start;gap:12px;height:48px;padding:0 14px;font-size:1rem}.navigation a[aria-current=page]{background:var(--akzent-zart)}main{padding:24px}}.karte{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);box-shadow:var(--schatten);padding:var(--abstand);flex-direction:column;gap:12px;min-width:0;display:flex}.raster{gap:var(--abstand);grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));display:grid}.zeile{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.zeile.verteilt{justify-content:space-between}.knopf{border:1px solid var(--rand);background:var(--flaeche);min-height:48px;color:var(--text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;text-decoration:none;display:inline-flex}.knopf:disabled{opacity:.45;cursor:not-allowed}.knopf.primaer{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text)}.knopf.gefahr{border-color:var(--fehler);color:var(--fehler);background:0 0}.knopf.gross{border-radius:16px;min-height:72px;font-size:1.25rem}.knopf.breit{width:100%}.knopf.leicht{color:var(--akzent);background:0 0;border-color:#0000;padding:0 10px}.knopf.leicht.loeschend{color:var(--fehler)}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--rand);background:var(--flaeche);cursor:pointer;border-radius:999px;min-height:40px;padding:8px 14px}.chip[aria-pressed=true]{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-text);font-weight:600}label.feld{flex-direction:column;gap:6px;font-size:.9rem;font-weight:600;display:flex}input[type=text],input[type=password],input[type=number],input[type=date],select,textarea{border:1px solid var(--rand);background:var(--flaeche);border-radius:10px;width:100%;min-height:48px;padding:10px 12px;font-size:1rem;font-weight:400}textarea{resize:vertical;min-height:80px}.schalter{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.schalter input{width:24px;height:24px;accent-color:var(--akzent);flex:none;margin:2px 0 0}.hinweis{background:var(--akzent-zart);border-radius:12px;padding:12px 14px}.hinweis.warnung{background:color-mix(in srgb, var(--warnung) 18%, var(--flaeche))}.hinweis.fehler{background:color-mix(in srgb, var(--fehler) 15%, var(--flaeche))}.kennzahlen{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.kennzahl{background:var(--flaeche-2);border-radius:12px;padding:10px 12px}.kennzahl .wert{font-size:1.5rem;font-weight:700}.kennzahl .name{color:var(--leise);font-size:.8rem}.passen{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.passen li+li{border-top:1px solid var(--rand)}.passe-zeile{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:4.5em 1fr auto;align-items:center;gap:10px;width:100%;padding:10px 2px;display:grid}.passe-zeile .pfeile{flex-wrap:wrap;gap:4px;display:flex}.ring{font-variant-numeric:tabular-nums;background:var(--flaeche-2);border-radius:50%;place-items:center;min-width:1.9em;height:1.9em;font-size:.85rem;font-weight:700;display:inline-grid}.ring[data-wert="10"],.ring[data-wert="9"]{color:#1a1a1a;background:#facc15}.ring[data-wert="8"],.ring[data-wert="7"]{color:#fff;background:#2463ac}.ring[data-wert="6"]{color:#0c2340;background:#93b8e3}.ring[data-wert="0"]{border:1.5px dashed var(--leise);color:var(--leise);background:0 0}.passe-zeile .summe{font-variant-numeric:tabular-nums;text-align:right;font-size:1.25rem;font-weight:700}.marke{background:var(--flaeche-2);color:var(--leise);border-radius:6px;padding:1px 6px;font-size:.75rem;display:inline-block}.timer{z-index:20;padding:calc(env(safe-area-inset-top) + 12px) var(--abstand) calc(env(safe-area-inset-bottom) + 12px);color:#fff;background:var(--licht-rot);-webkit-user-select:none;user-select:none;grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.timer[data-licht=gruen]{background:var(--licht-gruen)}.timer[data-licht=gelb]{background:var(--licht-gelb);color:#111}.timer .oben{justify-content:space-between;align-items:baseline;gap:12px;font-size:1.1rem;font-weight:600;display:flex}.timer .mitte{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.timer .sekunden{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-size:min(46vw,38vh);font-weight:800;line-height:1}.timer .phase{font-size:1.6rem;font-weight:700}.timer .unten{flex-direction:column;gap:12px;display:flex}.timer .fertig{min-height:28vh;color:inherit;cursor:pointer;background:#ffffff2e;border:3px solid;border-radius:24px;font-size:2rem;font-weight:800}.timer[data-licht=gelb] .fertig{background:#00000014}.timer .klein-knoepfe{grid-template-columns:1fr 1fr;gap:12px;display:grid}.timer .klein-knoepfe button{min-height:52px;color:inherit;cursor:pointer;background:0 0;border:2px solid;border-radius:14px;font-weight:700}.blatt{z-index:15;background:var(--bg);padding:calc(env(safe-area-inset-top) + 12px) var(--abstand) calc(env(safe-area-inset-bottom) + 16px);flex-direction:column;gap:14px;display:flex;position:fixed;inset:0;overflow-y:auto}.blatt-inhalt{flex-direction:column;gap:14px;width:100%;max-width:560px;margin:0 auto;display:flex}.ende-banner{background:var(--licht-rot);color:#fff;border-radius:12px;padding:10px 14px;font-weight:600}.ende-banner.ohne-zeit{background:var(--flaeche-2);color:var(--text)}.plaetze{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.platz{aspect-ratio:1;border:2px solid var(--rand);background:var(--flaeche);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:12px;font-size:1.5rem;font-weight:800}.platz[aria-current=true]{border-color:var(--akzent);box-shadow:0 0 0 3px var(--akzent-zart)}.tastatur{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.taste{border:1px solid var(--rand);background:var(--flaeche);cursor:pointer;border-radius:16px;min-height:68px;font-size:1.7rem;font-weight:800}.taste:active{transform:scale(.97)}.taste[data-wert="10"],.taste[data-wert="9"]{color:#1a1a1a;background:#facc15;border-color:#eab308}.taste[data-wert="8"],.taste[data-wert="7"]{color:#fff;background:#2463ac;border-color:#1d4f8f}.taste[data-wert="6"]{color:#0c2340;background:#93b8e3;border-color:#6f9bd0}.taste.loeschen{grid-column:span 3;min-height:52px;font-size:1.1rem}.gesamt{text-align:center;font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:800}.tabelle{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.tabelle th,.tabelle td{text-align:left;border-bottom:1px solid var(--rand);padding:8px 6px}@media (max-width:600px){.tabelle{font-size:.9rem}.tabelle th,.tabelle td{padding:8px 4px}}.tabelle th{color:var(--leise);font-size:.8rem;font-weight:600}.tabelle td.r,.tabelle th.r{text-align:right}.tabelle tr.klickbar{cursor:pointer}.tabelle tr.klickbar:hover{background:var(--flaeche-2)}.scroll-x{overflow-x:auto}.diagramm-rahmen{width:100%;position:relative}.diagramm{display:block;overflow:visible}.diagramm text{fill:var(--leise);font-variant-numeric:tabular-nums;font-size:12px}.diagramm .gitter{stroke:var(--rand);stroke-width:1px}.diagramm .linie{fill:none;stroke:var(--serie);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.diagramm .flaeche{fill:var(--serie-zart)}.diagramm .punkt{fill:var(--serie);stroke:var(--flaeche);stroke-width:2px}.diagramm .balken{fill:var(--serie)}.diagramm .treffer{fill:#0000;cursor:pointer;outline:none}.diagramm .treffer:hover+.balken,.diagramm .aktiv{opacity:.8}.diagramm .treffer:focus-visible+.balken{opacity:.8}.diagramm .fadenkreuz{stroke:var(--leise);stroke-width:1px}.diagramm text.wert{fill:var(--text);font-weight:600}.tooltip{pointer-events:none;z-index:3;background:var(--flaeche);border:1px solid var(--rand);white-space:nowrap;border-radius:10px;padding:8px 10px;font-size:.85rem;position:absolute;transform:translate(-50%,calc(-100% - 10px));box-shadow:0 4px 14px #00000026}.tooltip strong{font-size:1rem;display:block}.filter{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.filter label.feld{flex:0 220px;min-width:150px}.monat{color:var(--leise);text-transform:uppercase;letter-spacing:.04em;margin:8px 2px -6px;font-size:.85rem;font-weight:700}.update{left:var(--abstand);right:var(--abstand);bottom:calc(var(--nav-hoehe) + env(safe-area-inset-bottom) + 10px);z-index:8;color:#fff;background:#16324f;border-radius:14px;align-items:center;gap:12px;padding:10px 12px 10px 16px;display:flex;position:fixed;box-shadow:0 4px 16px #00000040}.update p{flex:1}.anmeldung{min-height:100dvh;padding:var(--abstand);place-items:center;display:grid}.anmeldung form{width:min(100%,420px)}.schritte{flex-direction:column;gap:12px;margin:0;padding-left:1.3em;display:flex}.qr{background:#fff;border-radius:8px;width:min(220px,70vw);height:auto;margin-top:8px;display:block}.schluessel{white-space:normal;background:var(--flaeche-2);-webkit-user-select:all;user-select:all;border-radius:6px;padding:2px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.nur-bildschirmleser{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
