:root{color-scheme:light dark;--grund:#f7f6f2;--karte:#fffefb;--erhoben:#ffffff;--schrift:#1c1a17;--gedimmt:#75706a;--leise:#9d968d;--linie:#e6e2da;--linie-zart:#efece5;--akzent:#2f6b4f;--akzent-zart:#e8f0ea;--warnung:#a33a2a;--radius:14px;--radius-klein:10px;--schatten:0 1px 2px rgba(28,26,23,0.04),0 2px 8px rgba(28,26,23,0.03)}@media (prefers-color-scheme:dark){:root{--grund:#141510;--karte:#1c1d18;--erhoben:#23241e;--schrift:#f0eee6;--gedimmt:#9b978c;--leise:#726e66;--linie:#2d2f27;--linie-zart:#252720;--akzent:#8fc4a4;--akzent-zart:#1e2a23;--warnung:#e6947f;--schatten:none}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;padding:calc(1.75rem + env(safe-area-inset-top)) calc(1.15rem + env(safe-area-inset-right)) calc(4rem + env(safe-area-inset-bottom)) calc(1.15rem + env(safe-area-inset-left));background:var(--grund);color:var(--schrift);font:16px/1.5 ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}main{max-width:32rem;margin:0 auto}.kopf{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}h1{font-size:1.75rem;line-height:1.1;letter-spacing:-.02em;font-weight:650;margin:0}.datum{margin:0 0 .15rem;font-size:.78rem}.datum,h2{color:var(--leise)}h2{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:600;margin:2.25rem 0 .7rem}a{color:var(--akzent);text-underline-offset:3px}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;word-break:break-all}.navi{display:flex;align-items:center;gap:.35rem;flex-shrink:0;padding-top:.9rem}.navi a{padding:.32rem .72rem;border-radius:999px;font-size:.82rem;color:var(--gedimmt);text-decoration:none;background:var(--karte);border:1px solid var(--linie)}.navi a:active{color:var(--akzent)}.navi a:active,.rat{background:var(--akzent-zart)}.rat{border-radius:var(--radius);padding:1rem 1.1rem;margin-bottom:1.5rem}.rat p{margin:0;font-size:.98rem;line-height:1.55;text-wrap:pretty}.kennwerte{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));grid-gap:.6rem;gap:.6rem}.kennwert{display:flex;flex-direction:column;gap:.1rem;padding:.85rem .95rem .8rem;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten)}.kennwert .titel{font-size:.75rem;color:var(--gedimmt);line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kennwert .gross{font-size:1.45rem;font-weight:600;letter-spacing:-.02em;line-height:1.15;margin:.12rem 0 .05rem}.kennwert .fuss{font-size:.7rem;color:var(--leise);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.zeilen{list-style:none;margin:0;padding:0;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);overflow:hidden;box-shadow:var(--schatten)}.zeilen li{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.75rem .95rem;border-bottom:1px solid var(--linie-zart)}.zeilen li:last-child{border-bottom:0}.zeilen .was{font-size:.92rem}.zeilen .wann{display:block;font-size:.72rem;color:var(--leise)}.zeilen .wert{font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.zeilen .wert em{display:block;font-style:normal;font-size:.72rem;color:var(--leise)}.seitenfuss{margin-top:2.5rem;font-size:.75rem;color:var(--leise);text-align:center}.hinweis{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);padding:1.1rem;box-shadow:var(--schatten)}.hinweis p{margin:0 0 .6rem;font-size:.93rem}.hinweistext{font-size:.85rem;color:var(--gedimmt);margin:0 0 1rem;line-height:1.55;text-wrap:pretty}.fehler{color:var(--warnung);margin:0 0 .75rem}.duenn,.fehler{font-size:.85rem}.duenn{margin:.3rem 0 0}.duenn,.leise{color:var(--gedimmt)}.leise{background:none;border:0;padding:0;font:inherit;font-size:.82rem;text-decoration:underline;-webkit-text-decoration-color:var(--linie);text-decoration-color:var(--linie);text-underline-offset:3px;cursor:pointer}.leise:hover{color:var(--akzent)}.leise:disabled{opacity:.25;cursor:default}.kacheln{display:grid;grid-template-columns:repeat(auto-fill,minmax(6.8rem,1fr));grid-gap:.55rem;gap:.55rem}.kachel{display:flex;flex-direction:column;justify-content:space-between;gap:.3rem;min-height:4.1rem;padding:.7rem .8rem;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten);font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation;transition:transform 90ms ease,background-color 90ms ease,border-color 90ms ease}.kachel:active{background:var(--akzent-zart);border-color:var(--akzent);transform:scale(.96)}.kachel-label{font-size:.86rem;line-height:1.2;font-weight:500}.kachel-menge{font-size:.72rem;color:var(--leise);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.getraenke{list-style:none;margin:1rem 0 0;padding:0;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);overflow:hidden;box-shadow:var(--schatten)}.getraenke li{display:grid;grid-template-columns:3.1rem 1fr auto 2rem;align-items:center;grid-gap:.5rem;gap:.5rem;padding:.55rem .6rem .55rem .95rem;border-bottom:1px solid var(--linie-zart);font-size:.9rem}.getraenke li:last-child{border-bottom:0}.getraenke li.schwebend{opacity:.5}.getraenke .menge,.getraenke .zeit{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--leise);font-size:.78rem}.getraenke .weg{background:none;border:0;color:var(--leise);font-size:1.15rem;line-height:1;cursor:pointer;padding:.4rem;border-radius:8px}.getraenke .weg:active{background:var(--linie-zart);color:var(--warnung)}.getraenke .weg:disabled{opacity:.25}.tagessumme{margin:.7rem 0 0;font-size:.78rem;color:var(--leise);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.korrektur{margin-top:.8rem;padding:1rem;background:var(--erhoben);border:1px solid var(--akzent);border-radius:var(--radius)}.korrektur-kopf{margin:0 0 .7rem;font-weight:600;font-size:.95rem}.korrektur-wahl{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.7rem}.korrektur-wahl button,.slots button,.zeitraum a{padding:.4rem .85rem;border:1px solid var(--linie);border-radius:999px;background:var(--karte);font:inherit;font-size:.82rem;color:var(--gedimmt);cursor:pointer;text-decoration:none}.korrektur-wahl button.aktiv,.slots button.aktiv,.zeitraum a.aktiv{border-color:var(--akzent);color:var(--akzent);background:var(--akzent-zart)}.korrektur input{width:100%;padding:.55rem .7rem;font:inherit;color:inherit;background:var(--grund);border:1px solid var(--linie);border-radius:var(--radius-klein);margin-bottom:.7rem}.korrektur-knoepfe{display:flex;gap:.5rem}.feld{display:block;margin-bottom:1rem}.feld span{display:block;font-size:.78rem;color:var(--gedimmt);margin-bottom:.3rem}.barcode-zeile input,.diktat textarea,.feld input,.merk-name{width:100%;padding:.65rem .75rem;font:inherit;color:inherit;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius-klein)}.barcode-zeile input:focus,.diktat textarea:focus,.feld input:focus,.merk-name:focus{outline:2px solid var(--akzent);outline-offset:-1px}.knopf{width:100%;padding:.75rem 1rem;font:inherit;font-weight:600;color:var(--grund);background:var(--akzent);border:0;border-radius:var(--radius-klein);cursor:pointer;transition:opacity 90ms ease}.knopf:active{opacity:.85}.knopf:disabled{opacity:.45;cursor:default}.leise-knopf{background:var(--karte);color:var(--gedimmt);border:1px solid var(--linie);font-weight:500}.zeitraum{display:flex;gap:.4rem;margin-bottom:1.75rem}.reihe{margin-bottom:1.5rem;padding:1rem 1.1rem .9rem;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten)}.reihe h2{margin:0 0 .7rem;font-size:.92rem;text-transform:none;letter-spacing:-.01em;color:var(--schrift);font-weight:600}.spark{display:block;width:100%;height:58px;overflow:visible}.spark-linie{fill:none;stroke:var(--akzent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.spark-achse,.spark-linie{vector-effect:non-scaling-stroke}.spark-achse{stroke:var(--linie);stroke-width:1}.spark-extrem{fill:var(--leise)}.spark-ende,.spark-punkt{fill:var(--akzent)}.spark-ende{stroke:var(--karte);stroke-width:2;vector-effect:non-scaling-stroke}.achse{display:flex;justify-content:space-between;font-size:.7rem;color:var(--leise);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-top:.4rem}.kennzahlen{display:flex;gap:1.5rem;margin:.8rem 0 0;padding-top:.7rem;border-top:1px solid var(--linie-zart)}.kennzahlen div{display:flex;flex-direction:column}.kennzahlen dt{font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;color:var(--leise)}.kennzahlen dd{margin:0;font-size:.88rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kennzahlen .hervor{font-size:1.05rem;font-weight:600;font-feature-settings:normal;font-variant-numeric:normal}.metriken{width:100%;border-collapse:collapse;font-size:.9rem}.metriken th{text-align:left;font-weight:600;font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--leise);padding-bottom:.45rem;border-bottom:1px solid var(--linie)}.metriken td{padding:.5rem .3rem;border-bottom:1px solid var(--linie-zart);vertical-align:middle}.metriken .mitte{text-align:center;width:3.6rem}.metriken .rechts{text-align:right;width:3rem}.metriken .zahl{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--leise);font-size:.8rem}.metriken input[type=checkbox]{width:1.2rem;height:1.2rem;accent-color:var(--akzent)}.name-feld{display:block;width:100%;border:0;border-bottom:1px solid transparent;background:none;font:inherit;color:inherit;padding:0 0 1px}.name-feld:focus{outline:none;border-bottom-color:var(--akzent)}.roh{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.68rem;color:var(--leise)}.zugang{margin:0;font-size:.9rem}.zugang dt{font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--leise);margin-top:.9rem}.zugang dd{margin:.25rem 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem}.kachelliste{list-style:none;margin:0 0 1rem;padding:0;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);overflow:hidden}.kachelliste li{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-bottom:1px solid var(--linie-zart)}.kachelliste li:last-child{border-bottom:0}.kachelliste .pos{width:1.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--leise);font-size:.8rem}.kachelliste .titel{flex:1 1;font-size:.92rem}.barcode-zeile,.diktat,.favoriten,.slots{margin-bottom:.8rem}.favoriten,.slots{display:flex;flex-wrap:wrap;gap:.4rem}.favoriten button{display:inline-flex;align-items:baseline;gap:.35rem;padding:.45rem .8rem;border:1px solid var(--linie);border-radius:999px;background:var(--karte);font:inherit;font-size:.84rem;color:inherit;cursor:pointer}.favoriten button:active{border-color:var(--akzent);background:var(--akzent-zart)}.favoriten .mal{font-size:.7rem;color:var(--leise);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.diktat{display:flex;flex-direction:column;gap:.5rem}.diktat textarea{resize:vertical;min-height:3.6rem;line-height:1.45}.diktat .knopf{align-self:flex-start;width:auto;padding:.55rem 1.2rem}.barcode-zeile{display:flex;gap:.5rem}.barcode-zeile input{flex:1 1}.barcode-zeile .knopf{width:auto;padding:.6rem 1.1rem}.positionen{list-style:none;margin:1rem 0;padding:0}.positionen li{padding:.8rem 0;border-bottom:1px solid var(--linie-zart)}.pos-name{width:100%;border:0;border-bottom:1px solid var(--linie);background:none;font:inherit;font-weight:500;color:inherit;padding:0 0 .35rem;margin-bottom:.55rem}.pos-name:focus{outline:none;border-bottom-color:var(--akzent)}.pos-werte{display:flex;flex-wrap:wrap;align-items:end;gap:.45rem}.pos-werte label{display:flex;flex-direction:column;width:4.2rem}.pos-werte span{font-size:.63rem;text-transform:uppercase;letter-spacing:.05em;color:var(--leise);margin-bottom:.2rem}.pos-werte input{width:100%;padding:.4rem .45rem;font:inherit;font-size:.85rem;color:inherit;background:var(--karte);border:1px solid var(--linie);border-radius:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.mit-getraenken .weg,.pos-werte .weg{background:none;border:0;color:var(--leise);font-size:1.2rem;cursor:pointer;padding:.2rem .35rem}.mit-getraenken{list-style:none;margin:.6rem 0;padding:0;font-size:.88rem}.mit-getraenken li{justify-content:space-between;padding:.4rem 0;border-bottom:1px solid var(--linie-zart);color:var(--gedimmt)}.merken,.mit-getraenken li{display:flex;align-items:center}.merken{gap:.5rem;margin:.9rem 0;font-size:.88rem}.merken input{width:1.2rem;height:1.2rem;accent-color:var(--akzent)}.merk-name{margin-bottom:.8rem}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.scanner{margin-bottom:.9rem;padding:.7rem;background:var(--erhoben);border:1px solid var(--akzent);border-radius:var(--radius)}.scanner-bild{position:relative;width:100%;aspect-ratio:4/3;background:#000;border-radius:var(--radius-klein);overflow:hidden}.scanner-bild video{width:100%;height:100%;object-fit:cover;display:block}.scanner-rahmen{position:absolute;inset:34% 12%;border:2px solid rgba(255,255,255,.85);border-radius:8px;box-shadow:0 0 0 100vmax rgba(0,0,0,.35)}.scanner-text{margin:.6rem 0;font-size:.85rem;color:var(--gedimmt);text-align:center;min-height:1.2em}.barcode-zeile .leise-knopf{flex-shrink:0}.diktat-knoepfe{display:flex;gap:.5rem;align-items:flex-start}.diktat-knoepfe .knopf{width:auto;padding:.55rem 1.2rem;white-space:nowrap}.foto{display:contents}.foto-vorschau{display:block;width:100%;max-height:14rem;object-fit:cover;border-radius:var(--radius-klein);margin-top:.6rem;border:1px solid var(--linie)}.sicherheit{margin:.8rem 0 0;padding:.6rem .8rem;background:var(--akzent-zart);border-radius:var(--radius-klein);font-size:.82rem;color:var(--gedimmt)}.bristol{list-style:none;margin:0 0 .7rem;padding:0}.bristol li{margin-bottom:.3rem}.bristol button{display:block;width:100%;text-align:left;padding:.5rem .7rem;border:1px solid var(--linie);border-radius:var(--radius-klein);background:var(--karte);font:inherit;font-size:.86rem;color:inherit;cursor:pointer}.bristol button:active{border-color:var(--akzent);background:var(--akzent-zart)}.bristol strong{display:inline-block;width:1.2rem;color:var(--akzent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}