:root{--bg:#14161a;--fg:#f2f4f7;--gedaempft:#8b93a1;--linie:#2b3038;--flaeche:#1c1f26;--warn:#f65058;--gruen:#00e47a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font:16px/1.4 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button{font:inherit;cursor:pointer}.laden{color:var(--gedaempft);padding:2rem}.shoot{gap:2px;height:100dvh;display:flex}.shoot__haupt{flex-direction:column;flex:1;gap:.4rem;min-width:0;padding:.5rem;display:flex;position:relative}.kopf{align-items:baseline;gap:1rem;padding:0 .3rem;display:flex}.kopf__passe{color:var(--gedaempft);font-size:clamp(1.1rem,3.2vh,1.7rem)}.kopf__von{opacity:.6}.kopf__summe{font-variant-numeric:tabular-nums;margin-left:auto;font-size:clamp(2.6rem,12vh,6rem);font-weight:700;line-height:1}.kopf__ok{justify-content:flex-end;min-width:6.5rem;display:flex}.ok{background:var(--gruen);color:#000;letter-spacing:.04em;touch-action:manipulation;border:none;border-radius:8px;padding:.55rem 1.4rem;font-size:clamp(1.1rem,3.4vh,1.7rem);font-weight:700}.ok:active{filter:brightness(.85)}.kopf__zaehler{color:var(--gedaempft);font-variant-numeric:tabular-nums;text-align:right;min-width:3.2rem;font-size:clamp(1.2rem,3.5vh,1.9rem)}.pfeilchips{flex-wrap:wrap;gap:.3rem;min-height:1.9rem;padding:0 .3rem;display:flex}.chip{border:1px solid #00000059;border-radius:.4rem;place-items:center;min-width:1.9rem;height:1.9rem;font-size:.95rem;font-weight:700;display:grid}.scheibe{flex:1;min-height:0;display:flex}.scheibe__huelle{border-radius:3px;flex:1;min-width:0;min-height:0;transition:opacity .12s;box-shadow:inset 0 0 0 2px #ffffff73}.scheibe__huelle--minus{opacity:.55;outline:3px solid var(--warn);outline-offset:4px;border-radius:4px}.strip{touch-action:manipulation;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.strip circle:active,.strip rect:active{filter:invert(22%)}.strip circle:focus{outline:none}.strip circle:focus-visible{outline-offset:-6px;outline:3px solid #fff}.leiste{flex-shrink:0;gap:.4rem;height:3.4rem;display:flex}.leiste__minus,.leiste__m{border:1px solid var(--linie);background:var(--flaeche);width:5rem;color:var(--fg);touch-action:manipulation;border-radius:6px;font-size:1.6rem;font-weight:700}.leiste__minus.aktiv{background:var(--warn);color:#fff;border-color:var(--warn)}.leiste__blank{border:1px solid var(--linie);background:var(--flaeche);color:var(--fg);touch-action:manipulation;border-radius:6px;flex:1;font-size:1.05rem}.leiste__blank:disabled{opacity:.35;cursor:not-allowed}.banner{pointer-events:none;white-space:nowrap;border-radius:999px;padding:.4rem .9rem;font-size:.95rem;position:absolute;bottom:4.2rem;left:50%;transform:translate(-50%)}.banner--minus{background:var(--warn);color:#fff}.banner--hinweis{background:var(--flaeche);border:1px solid var(--linie)}.seite{background:var(--flaeche);flex-direction:column;flex-shrink:0;gap:.4rem;width:8.5rem;padding:.5rem;display:flex}.seite__meta{color:var(--gedaempft);font-size:.72rem;line-height:1.3}.seite__liste{font-variant-numeric:tabular-nums;flex:1;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.seite__liste li{border-bottom:1px solid var(--linie);justify-content:space-between;padding:.12rem 0;font-size:.95rem;display:flex}.seite__liste .nr{color:var(--gedaempft);font-size:.78rem}.seite__liste .blank .wert{color:var(--gedaempft)}.seite__summe{border-top:2px solid var(--linie);padding-top:.35rem}.seite__summe .gross{font-variant-numeric:tabular-nums;font-size:1.35rem;font-weight:700}.seite__summe .klein{color:var(--gedaempft);font-size:.75rem}.seite__ende{border:1px solid var(--linie);color:var(--gedaempft);background:0 0;border-radius:6px;padding:.5rem;font-size:.85rem}@media (orientation:portrait){.shoot{flex-direction:column}.seite{flex-direction:row;align-items:center;gap:.8rem;width:auto;padding:.4rem .6rem}.seite__liste{gap:.6rem;display:flex;overflow:auto hidden}.seite__liste li{border-bottom:none;gap:.25rem}.seite__summe{border-top:none;border-left:2px solid var(--linie);padding:0 0 0 .6rem}.seite__ende{flex-shrink:0}}.start,.detail,.einst{max-width:46rem;margin:0 auto;padding:1.2rem 1rem 3rem}.start__kopf,.detail__kopf{align-items:center;gap:1rem;margin-bottom:1.2rem;display:flex}.start__kopf h1,.detail__kopf h1{margin:0;font-size:1.5rem}.detail__kopf{flex-wrap:wrap}.link{color:var(--gedaempft);background:0 0;border:none;margin-left:auto;padding:.2rem;text-decoration:underline}.link--eng{margin-left:0}.detail__kopf .link{text-align:left;order:-1;width:100%;margin-left:0}.btn{border:1px solid var(--linie);background:var(--flaeche);color:var(--fg);border-radius:8px;padding:.7rem 1rem}.btn--gross{text-align:left;width:100%;padding:1.1rem;font-size:1.2rem;display:block}.btn--gross small{color:var(--gedaempft);margin-top:.25rem;font-size:.85rem;display:block}.btn--laufend{border-color:#00b4e4;margin-bottom:.8rem}.btn--warn{border-color:var(--warn);color:var(--warn)}.start__neu{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}.start__neu .link{margin-left:0}.konfig{background:var(--flaeche);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.7rem;margin:.9rem 0;padding:.9rem;display:grid}.konfig label{color:var(--gedaempft);flex-direction:column;gap:.25rem;font-size:.82rem;display:flex}.konfig select,.konfig input{font:inherit;background:var(--bg);color:var(--fg);border:1px solid var(--linie);border-radius:6px;padding:.45rem}.start__h2{text-transform:uppercase;letter-spacing:.08em;color:var(--gedaempft);justify-content:space-between;align-items:baseline;gap:1rem;margin:1.8rem 0 .5rem;font-size:.85rem;display:flex}.start__pfeile{letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}.leer{color:var(--gedaempft)}.sessions,.sessions ul{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.wochenblock{margin-bottom:1rem;display:block}.wochenblock__kopf{letter-spacing:.06em;text-transform:uppercase;color:var(--gedaempft);border-bottom:1px solid var(--linie);justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.35rem;padding:0 .2rem .3rem;font-size:.75rem;display:flex}.wochenblock__summe{letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}.sessions button{text-align:left;background:var(--flaeche);width:100%;color:var(--fg);border:none;border-radius:6px;gap:.15rem;padding:.7rem .9rem;display:grid}.sessions__datum{font-weight:600}.sessions__zahlen{font-variant-numeric:tabular-nums;font-size:.9rem}.sessions__tag{color:var(--gedaempft);font-size:.78rem}.detail__tag{width:100%;color:var(--gedaempft);font-size:.85rem}.detail__notiz{width:100%;margin:.4rem 0 0;font-size:.9rem}.blatt{gap:2px;padding-bottom:.4rem;display:flex;overflow-x:auto}.blatt__spalte{flex-direction:column;flex:1;gap:2px;min-width:4.6rem;display:flex}.zelle{background:var(--flaeche);font-variant-numeric:tabular-nums;border-radius:4px;justify-content:space-between;align-items:baseline;gap:.4rem;padding:.45rem .5rem;display:flex}.zelle__nr{color:var(--gedaempft);font-size:.68rem}.zelle__wert{font-size:1.1rem;font-weight:600}.zelle--blank .zelle__wert{color:var(--gedaempft);font-weight:400}.kennzahlen{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.6rem;margin:1.2rem 0;display:grid}.kennzahlen>div{background:var(--flaeche);border-radius:6px;padding:.6rem .7rem}.kennzahlen dt{color:var(--gedaempft);text-transform:uppercase;letter-spacing:.05em;font-size:.72rem}.kennzahlen dd{font-variant-numeric:tabular-nums;margin:.15rem 0 0;font-size:1.25rem;font-weight:600}.detail__aktionen,.knopfreihe{flex-wrap:wrap;gap:.6rem;display:flex}.teilen{text-align:center;max-width:32rem;margin:0 auto;padding:1.2rem 1rem 3rem}.teilen .detail__kopf{text-align:left}.teilen__qr{border-radius:8px;width:min(100%,22rem);margin:0 auto;display:block}.teilen__url{word-break:break-all;margin:.9rem 0 1.4rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.95rem}.teilen__text{text-align:left}.teilen__text p{margin:0 0 .7rem}.ausw{max-width:34rem;margin:0 auto;padding:1.2rem 1rem 3rem}.ausw__wahl{width:100%;font:inherit;background:var(--bg);color:var(--fg);border:1px solid var(--linie);border-radius:6px;margin-bottom:1.2rem;padding:.55rem;display:block}.ausw__wahl--fest{color:var(--gedaempft);border-color:#0000;padding-left:0}.karte{background:var(--flaeche);border-radius:10px;margin-bottom:.9rem;padding:1rem 1.1rem 1.1rem}.karte h2{text-transform:uppercase;letter-spacing:.08em;color:var(--gedaempft);justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .4rem;font-size:.8rem;display:flex}.karte__zahl{font-variant-numeric:tabular-nums;margin-bottom:.5rem;font-size:2.4rem;font-weight:700;line-height:1}.karte__satz{margin:.2rem 0 .5rem;font-size:1.05rem}.karte__fuss{color:var(--gedaempft);margin:.5rem 0 0;font-size:.78rem;line-height:1.5}.delta{letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.delta--gut{color:var(--gruen)}.delta--schlecht{color:var(--warn)}.verlauf{width:100%;height:auto;display:block}.wochen{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.wochen li{font-variant-numeric:tabular-nums;grid-template-columns:3.4rem 1fr 3rem;align-items:center;gap:.6rem;display:grid}.wochen__name{color:var(--gedaempft);font-size:.8rem}.wochen__balken{background:var(--gruen);border-radius:3px;min-width:2px;height:.7rem}.wochen__zahl{text-align:right;font-size:.9rem}.notiz{margin:1.2rem 0 0;display:block}.notiz span{text-transform:uppercase;letter-spacing:.05em;color:var(--gedaempft);margin-bottom:.3rem;font-size:.72rem;display:block}.notiz input{width:100%;font:inherit;background:var(--flaeche);color:var(--fg);border:1px solid var(--linie);border-radius:6px;padding:.6rem .7rem}.mitschau{max-width:40rem;margin:0 auto;padding:1.2rem 1rem 3rem}.mitschau__kopf{flex-wrap:wrap;align-items:baseline;gap:1.2rem;margin-bottom:1.2rem;display:flex}.mitschau__summe{font-variant-numeric:tabular-nums;font-size:clamp(2.6rem,12vw,4.5rem);font-weight:700;line-height:1}.mitschau__meta{color:var(--gedaempft);font-size:.9rem;line-height:1.5}.mitschau__laufend{color:var(--gedaempft);margin-top:.9rem;font-size:.9rem}.mitschau__stand{color:var(--gedaempft);margin-top:1.6rem;font-size:.78rem}.start__zeile{gap:1.4rem;display:flex}.start__zeile .link{margin-left:0}.willkommen{max-width:30rem;margin:0 auto;padding:2.5rem 1rem 3rem}.willkommen h1{margin:0 0 1.4rem;font-size:1.8rem}.willkommen__namen{flex-wrap:wrap;gap:.5rem;margin-bottom:1.4rem;display:flex}.namenschip{background:var(--flaeche);border:1px solid var(--linie);color:var(--fg);border-radius:999px;padding:.6rem 1.1rem;font-size:1.05rem}.namenschip:active{background:var(--gruen);color:#000}.willkommen__eigen{gap:.5rem;display:flex}.willkommen__eigen input,.willkommen__code{font:inherit;background:var(--bg);color:var(--fg);border:1px solid var(--linie);border-radius:8px;flex:1;padding:.7rem}.willkommen__code{text-align:center;letter-spacing:.4em;font-variant-numeric:tabular-nums;width:100%;margin-bottom:1rem;font-size:2rem;display:block}.willkommen__fuss{justify-content:space-between;margin-top:1.6rem;display:flex}.willkommen__fuss .link{margin-left:0}.willkommen__erklaerung{margin-top:2rem}.konto__name{flex-wrap:wrap;align-items:baseline;gap:.8rem;margin:0 0 .9rem;font-size:1.3rem;font-weight:600;display:flex}.konto__status{color:var(--gedaempft);font-size:.8rem;font-weight:400}.konto__fehler{color:var(--warn);word-break:break-word;margin:-.4rem 0 .9rem;font-size:.82rem}.konto__abmelden{margin-top:1rem}.konto__abmelden .link{margin-left:0}.kopplung{background:var(--flaeche);text-align:center;border-radius:8px;padding:1rem}.kopplung__qr{border-radius:6px;width:min(100%,15rem);margin:0 auto .8rem;display:block}.kopplung__code{letter-spacing:.3em;font-variant-numeric:tabular-nums;margin-bottom:.6rem;font-size:2.2rem;font-weight:700}.kopplung .hinweistext{text-align:left}.einst section{margin-bottom:2rem}.einst h2{text-transform:uppercase;letter-spacing:.08em;color:var(--gedaempft);margin:0 0 .5rem;font-size:.85rem}.hinweistext{color:var(--gedaempft);margin:0 0 .7rem;font-size:.9rem}.meldung{background:var(--flaeche);border:1px solid var(--linie);border-radius:8px;padding:.8rem 1rem;position:sticky;bottom:1rem}
