:root{--bg: #f2f2f7;--karte: #ffffff;--karte2: #f2f2f7;--text: #000000;--leise: rgba(60, 60, 67, .6);--leiser: rgba(60, 60, 67, .3);--fuellung: rgba(118, 118, 128, .12);--trenner: rgba(60, 60, 67, .18);--glas: rgba(249, 249, 249, .78);--label: #000000;--label-text: #ffffff;--akzent: #007aff;--gefahr: #ff3b30;--notiz: #fff8e1;--offen: #ffb020;--gemessen: #22c55e;--uebersprungen: #9ca3af;--aktuell: #ff2d95;--markiert: #3b82f6;--ziffer-offen: #2a1c00;--ziffer-gemessen: #03250f;--ziffer-uebersprungen: #1f2937;--verbunden: #22c55e;--sucht: #f59e0b;--getrennt: #ef4444;--nicht-verfuegbar: #6b7280;color-scheme:light dark;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,Segoe UI,Roboto,sans-serif;font-size:17px;-webkit-text-size-adjust:100%}@media(prefers-color-scheme:dark){:root{--bg: #000000;--karte: #1c1c1e;--karte2: #1c1c1e;--text: #ffffff;--leise: rgba(235, 235, 245, .6);--leiser: rgba(235, 235, 245, .3);--fuellung: rgba(118, 118, 128, .24);--trenner: rgba(84, 84, 88, .6);--glas: rgba(30, 30, 30, .72);--label: #ffffff;--label-text: #000000;--akzent: #0a84ff;--gefahr: #ff453a;--notiz: #2a2410}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:var(--akzent)}h1{font-size:2.1rem;font-weight:700;letter-spacing:-.02em;margin:.3rem 0}h2{font-size:1.3rem;font-weight:700;margin:1.6rem 0 .6rem}.leiste{position:sticky;top:0;z-index:20;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;padding:calc(.5rem + env(safe-area-inset-top)) 1rem .5rem;background:var(--glas);color:var(--text);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:.5px solid var(--trenner)}.leiste .marke{color:var(--text);font-weight:700;text-decoration:none;margin-right:auto;font-size:1.05rem}.ble{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:var(--leise);background:var(--fuellung);border-radius:999px;height:28px;padding:0 .7rem;font-variant-numeric:tabular-nums}.ble .punkt{width:8px;height:8px;border-radius:50%;background:var(--nicht-verfuegbar);display:inline-block}.ble-verbunden .punkt{background:var(--verbunden)}.ble-verbinde .punkt{background:var(--sucht);animation:blink .8s infinite}.ble-getrennt .punkt{background:var(--getrennt)}.ble-fehler{flex-basis:100%;font-size:.8rem;color:var(--gefahr)}@keyframes blink{50%{opacity:.3}}.inhalt{max-width:820px;margin:0 auto;padding:.8rem 1rem calc(2rem + env(safe-area-inset-bottom))}button,.knopf{font:inherit;font-weight:600;border:0;border-radius:999px;padding:.7rem 1.2rem;min-height:52px;background:var(--label);color:var(--label-text);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;touch-action:manipulation;transition:opacity .15s}button:active,.knopf:active{opacity:.75}button:disabled{opacity:.35;cursor:default}button.zweit,.knopf.zweit{background:var(--fuellung);color:var(--text)}button.gross{min-height:58px;font-size:1.05rem;flex:1}button.klein{min-height:32px;padding:.2rem .9rem;font-size:.85rem}button.link{background:none;color:var(--akzent);padding:.4rem 0;min-height:0;font-weight:500;border-radius:0}button.gefahr,.gefahr,button.zweit.gefahr{color:var(--gefahr)}button.mini{min-height:34px;min-width:34px;padding:.2rem .5rem;background:var(--fuellung);color:var(--text);font-size:.9rem}button.mini.gefahr{color:var(--gefahr)}button.rund{width:42px;height:38px;min-height:0;padding:0;border-radius:999px;font-size:1.15rem;color:var(--text);background:var(--glas);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 1px 4px #0000002e}button.mess{background:var(--aktuell);color:#fff}input,textarea,select{font:inherit;width:100%;padding:0 1.1rem;height:50px;border:0;border-radius:999px;background:var(--fuellung);color:var(--text);font-size:17px;outline:none}textarea{height:auto;padding:.8rem 1.1rem;border-radius:18px}input:focus,textarea:focus{box-shadow:0 0 0 2px var(--akzent)}label{display:block;font-size:.8rem;color:var(--leise);margin:.7rem 0;text-transform:uppercase;letter-spacing:.02em}label input,label textarea{margin-top:.35rem;color:var(--text);text-transform:none;letter-spacing:0}label.check{display:flex;gap:.5rem;align-items:center;text-transform:none}label.check input{width:auto;height:auto;margin:0}.karte{background:var(--karte);border-radius:26px;padding:1.2rem}.login{max-width:380px;margin:12vh auto 0;display:flex;flex-direction:column}.fehler{color:var(--gefahr);min-height:1.2em;margin:.3rem 0}.leise{color:var(--leise);font-size:.9rem}.ok{color:var(--gemessen);font-size:.9rem;font-weight:600}.leer{color:var(--leise);padding:2.5rem 0;text-align:center}.notiz{white-space:pre-wrap;background:var(--notiz);padding:.8rem 1rem;border-radius:18px}.hinweis{background:var(--karte);border-radius:18px;padding:.9rem 1.1rem;margin-bottom:1rem;border-left:4px solid var(--sucht)}.hinweis p{margin:.4rem 0 0}.kopf{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.6rem}.zurueck{display:inline-flex;align-items:center;padding:.3rem 0;text-decoration:none;font-size:1.05rem}.knopfreihe{display:flex;gap:.6rem;flex-wrap:wrap;margin:.8rem 0}.knopfreihe>*{flex:1}.fuss{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;font-size:.9rem;flex-wrap:wrap}.liste{list-style:none;padding:0;margin:.8rem 0;background:var(--karte);border-radius:26px;overflow:hidden}.liste li{margin:0}.liste li+li .zeile{border-top:.5px solid var(--trenner)}.liste li.leer{background:var(--bg)}.zeile{display:flex;align-items:center;gap:.8rem;padding:.7rem 1rem;text-decoration:none;color:var(--text)}.zeile .avatar{flex:none;width:54px;height:54px;border-radius:14px;background:var(--fuellung);color:var(--leise);display:grid;place-items:center;font-weight:700;font-size:1.1rem;overflow:hidden}.zeile .text{display:flex;flex-direction:column;gap:.1rem;min-width:0;flex:1}.zeile .text>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zeile:after{content:"›";color:var(--leiser);font-size:1.4rem;font-weight:600}.raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.8rem}.kachel{display:flex;flex-direction:column;gap:.15rem;background:var(--karte);border-radius:22px;overflow:hidden;text-decoration:none;color:var(--text);padding-bottom:.7rem}.kachel img{width:100%;height:150px;object-fit:cover;background:var(--fuellung)}.kachel>:not(img){padding:0 .8rem}.kachel strong{margin-top:.5rem}.kachel .balken-klein{height:5px;margin:.35rem .8rem 0;padding:0;border-radius:3px;background:var(--fuellung);overflow:hidden}.kachel .balken-klein i{display:block;height:100%;background:var(--gemessen);border-radius:3px}.sheet-hinter{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:einblenden .2s}.sheet{background:var(--karte2);width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:34px 34px 0 0;padding:.6rem 1rem calc(1rem + env(safe-area-inset-bottom));animation:hoch .25s ease-out}.sheet:before{content:"";display:block;width:36px;height:5px;border-radius:3px;background:var(--leiser);margin:0 auto .6rem}@keyframes einblenden{0%{opacity:0}}@keyframes hoch{0%{transform:translateY(40%)}}.formular h2{margin-top:.2rem;text-align:center;font-size:1.05rem}.formular .unter{text-align:center;color:var(--leise);font-size:.85rem;margin:-.4rem 0 .8rem}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:.6rem 0 1rem}.chip{background:var(--fuellung);color:var(--text);min-height:42px;padding:0 1rem;font-weight:400}.segment{display:flex;border-radius:9px;padding:2px;background:var(--fuellung);flex-shrink:0}.segment button{background:transparent;color:var(--text);border-radius:7px;min-height:32px;padding:.2rem 1.1rem;font-size:.9rem}.segment button.an{background:var(--karte);box-shadow:0 1px 3px #00000026}@media(prefers-color-scheme:dark){.segment button.an{background:#636366}}.zeile-eingabe{display:flex;flex-direction:column;align-items:center;gap:.8rem}.zeile-eingabe input{font-size:56px;font-weight:600;height:auto;text-align:center;background:none;caret-color:var(--aktuell);font-variant-numeric:tabular-nums;padding:.2rem 0}.zeile-eingabe input:focus{box-shadow:none}.eigene{display:flex;gap:10px}.eigene button{width:50px;min-width:50px;height:50px;min-height:0;padding:0;border-radius:50%;font-size:1.1rem}button.spaeter{display:block;margin:.8rem auto 0;color:var(--leise)}.toast{position:fixed;left:50%;bottom:calc(1.2rem + env(safe-area-inset-bottom));transform:translate(-50%,160%);background:#000000e0;color:#fff;padding:.7rem 1.2rem;border-radius:999px;max-width:92vw;z-index:60;transition:transform .25s;font-size:.95rem;font-weight:600;text-align:center}.toast.sichtbar{transform:translate(-50%)}.toast.fehler{background:var(--gefahr)}.nk{flex:none;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums;background:var(--offen);color:var(--ziffer-offen)}.nk.gemessen{background:var(--gemessen);color:var(--ziffer-gemessen)}.nk.uebersprungen{background:var(--uebersprungen);color:var(--ziffer-uebersprungen)}.nk.aktuell{background:var(--aktuell);color:#fff}.nk.markiert{background:var(--markiert);color:#fff}.nk.gross{width:46px;height:46px;font-size:23px}.segmente{display:flex;gap:3px}.segmente i{flex:1;height:6px;border-radius:3px;background:var(--fuellung)}.segmente i.gemessen{background:var(--gemessen)}.segmente i.uebersprungen{background:var(--uebersprungen)}.segmente i.aktuell{background:var(--aktuell)}.foto-ansicht .kopf h1{font-size:1.3rem}.foto-ansicht .kopf h1.bearbeitbar{cursor:pointer}.buehne-rahmen{position:relative;margin:0 -1rem}.buehne{position:relative;height:54vh;min-height:300px;overflow:hidden;background:#0b0f17;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.welt{position:absolute;left:0;top:0;transform-origin:0 0}.welt img{display:block;width:100%;height:100%;pointer-events:none}.welt .overlay{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.buehne-werkzeuge{position:absolute;right:.7rem;bottom:calc(20px + .7rem);display:flex;gap:6px}.pulsieren{animation:puls 1s ease-in-out infinite}@keyframes puls{50%{opacity:.45}}.panel{background:var(--karte);margin:-20px -1rem 0;padding:1.1rem 1rem 1rem;position:sticky;bottom:0;z-index:10;border-radius:30px 30px 0 0;box-shadow:0 -4px 20px #00000014}.panel .anleitung{margin:0 0 .2rem;color:var(--leise);font-size:.95rem;text-align:center}.panel.plan{display:flex;flex-direction:column;gap:.6rem}.panel .knopfreihe button{min-height:46px;white-space:nowrap;font-size:.95rem}.panel.mess{display:flex;flex-direction:column;gap:.8rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.fortschritt-text{display:flex;justify-content:space-between;font-size:.85rem;color:var(--leise);font-weight:600;font-variant-numeric:tabular-nums;margin-bottom:-.4rem}.jetzt{display:flex;align-items:center;gap:.8rem}.jetzt .stapel{display:flex;flex-direction:column;min-width:0}.jetzt .marke-klein{font-size:.72rem;font-weight:700;letter-spacing:.06em;color:var(--aktuell)}.jetzt strong{font-size:27px;line-height:1.15;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jetzt.fertig .marke-klein{color:var(--gemessen)}.jetzt.offen .marke-klein{color:#c77c00}.jetzt .haken{flex:none;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;font-size:22px;font-weight:700;background:var(--gemessen);color:var(--ziffer-gemessen)}.jetzt.offen .haken{background:var(--offen);color:var(--ziffer-offen)}.ble-hinweis{display:flex;flex-direction:column;align-items:stretch;gap:.3rem;text-align:center}.mess-knoepfe{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mess-knoepfe button{min-height:62px;padding:.4rem;font-size:.85rem;border-radius:18px;flex-direction:column;gap:2px}.mess-knoepfe button b{font-size:1.2rem;line-height:1}button.beenden{background:none;color:var(--text);box-shadow:inset 0 0 0 1.5px var(--trenner);min-height:50px}.linienliste{list-style:none;padding:0;margin:1rem 0;display:flex;flex-direction:column;gap:6px}.linie{display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:.5rem;background:var(--karte);border-radius:14px;padding:0 .4rem 0 .7rem;min-height:46px}.linie.aktiv{box-shadow:inset 0 0 0 2px var(--aktuell)}.linie.aktiv.markiert{box-shadow:inset 0 0 0 2px var(--markiert)}.linie .nr{min-height:0;padding:0;background:none;border-radius:50%}.linie .name{background:none;color:var(--text);justify-content:flex-start;text-align:left;padding:.3rem 0;min-height:44px;font-weight:500;border-radius:0;overflow:hidden}.linie .name em{color:var(--leise);font-weight:400}.linie .wert{background:none;color:var(--text);min-height:38px;padding:.3rem .5rem;font-variant-numeric:tabular-nums;font-weight:600}.linie.offen .wert{color:var(--leise);font-weight:400}.linie.uebersprungen .wert{color:var(--leise);font-weight:400;font-style:italic}.linie .aktionen{grid-column:1 / -1;display:flex;gap:4px;justify-content:flex-end;padding-bottom:.4rem}@media(min-width:560px){.linie{grid-template-columns:auto 1fr auto auto}.linie .aktionen{grid-column:auto;padding-bottom:0}}.export{margin-top:1.5rem}.debug .service{background:var(--karte);border-radius:14px;padding:.6rem .8rem;margin:.6rem 0;font-size:.85rem;word-break:break-all}.debug .service ul{padding-left:1rem;margin:.4rem 0 0}.debug .service li{margin:.3rem 0}.log{background:#0b0f17;color:#a7f3d0;font-size:.75rem;padding:.7rem;border-radius:14px;max-height:50vh;overflow:auto;white-space:pre-wrap;word-break:break-all}.knopfreihe.eng{margin:0}
