.syncbalken{border:1px solid var(--line);background:var(--surface-2);width:100%;min-height:52px;color:var(--text);text-align:left;border-radius:12px;padding:14px 16px;font-size:16px;line-height:1.35;display:block;position:relative;overflow:hidden}.syncbalken.wartet{background:#2a2312;border-color:#7a6320}.syncbalken.fehler,.syncbalken.blockiert{background:#2c1614;border-color:#7d3029}.syncbalken.laeuft{border-color:var(--accent)}.syncfuellung{background:#d4761a38;transition:width .3s;position:absolute;inset:0 auto 0 0}.syncbalken.laeuft span{position:relative}.kacheln{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.kachel{border:1px solid var(--line);background:var(--surface);min-height:104px;color:var(--text);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:14px;font-size:19px;font-weight:700;display:flex}.kachel small{color:var(--muted);font-size:13px;font-weight:400}.kachel.aufnahme{border-color:var(--stop);background:#2c1614}.kachelzahl{font-variant-numeric:tabular-nums;color:var(--accent);font-size:30px;font-weight:800}.neuzeile{align-items:stretch;gap:10px;display:flex}.neuzeile input,.neuzeile select{flex:1;min-width:0}.neuzeile button{flex:none;min-width:74px}select{border:1px solid var(--line);background:var(--surface-2);height:60px;color:var(--text);border-radius:10px;padding:0 14px;font-size:18px}.feldzeile{flex-direction:column;gap:8px;display:flex}.schalter{min-height:68px;color:var(--text);align-items:center;gap:12px;font-size:17px;display:flex}.schalter input{width:30px;height:30px}button.ghost{border:1px solid var(--line);min-height:52px;color:var(--text);background:0 0;font-size:16px}button.ghost.gefahr{color:var(--stop);border-color:#5a2a26}.masszeile{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.masskopf{width:100%;min-height:72px;color:var(--text);text-align:left;background:0 0;border:0;flex-direction:column;gap:4px;padding:14px 16px;font-size:18px;display:flex}.masskopf .sub{color:var(--muted);font-size:14px}.massdetail{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding:0 16px 16px;display:flex}.massrow{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:52px;padding:0 4px;font-size:16px;display:flex}.massrow strong{font-variant-numeric:tabular-nums;margin-left:auto}.massrow .sub{color:var(--muted);font-size:14px}.treffer{flex-direction:column;gap:6px;display:flex}.trefferzeile{border:1px solid var(--line);background:var(--surface-2);min-height:68px;color:var(--text);text-align:left;border-radius:10px;flex-direction:column;gap:3px;padding:12px 14px;font-size:17px;display:flex}.trefferzeile.frei{border-style:dashed}.trefferzeile .sub{color:var(--muted);font-size:13px}.zeichenwrap{border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;overflow:hidden}.zeichenflaeche{touch-action:none;width:100%;display:block}.unterschriftfeld{max-width:640px}.durchlesen{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:14px;display:flex}.durchlesenzeile{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.durchlesenzeile span{color:var(--muted,#9aa0a6);font-variant-numeric:tabular-nums}.galerie{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.galeriezelle{border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.galeriezelle img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.tonzelle{aspect-ratio:4/3;color:var(--muted);text-align:center;justify-content:center;align-items:center;padding:12px;font-size:15px;display:flex}.galeriefuss{color:var(--muted);align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.galeriefuss button{min-height:44px;padding:0 10px;font-size:14px}.planzeile{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;gap:10px;padding:14px 16px;font-size:18px;display:flex}.bilanz{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.bilanz>div{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;display:flex}.bilanz strong{font-variant-numeric:tabular-nums;font-size:30px;font-weight:800}.bilanz span{color:var(--muted);text-align:center;font-size:13px}.skizze{-webkit-user-select:none;user-select:none;flex-direction:column;flex:1 1 0;gap:12px;min-height:0;display:flex}.zoomweg{min-height:44px;color:var(--text);font-variant-numeric:tabular-nums;background:#0f1113d1;border:0;border-radius:999px;padding:0 14px;font-size:14px;position:absolute;bottom:10px;right:10px}.farben{gap:6px;display:flex}.farbe{border:2px solid var(--line);border-radius:10px;width:48px;height:48px;padding:0}.farbe.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--bg) inset}.breiten{gap:6px;display:flex}.breitewahl{border:1px solid var(--line);background:var(--surface);border-radius:10px;justify-content:center;align-items:center;width:48px;height:48px;padding:0;display:flex}.breitewahl span{background:var(--text);border-radius:999px;width:24px;display:block}.breitewahl.on{border-color:var(--accent);background:var(--surface-2)}.bauteilgruppe{flex-direction:column;gap:6px;display:flex}.bauteiltitel{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px}.bauteil{border:1px solid var(--line);background:var(--surface);min-height:84px;color:var(--text);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;font-size:13px;line-height:1.2;display:flex}.bauteil small{color:var(--muted);font-size:11px}.bauteil.on{border-color:var(--accent);background:var(--surface-2)}.bauteilbild{pointer-events:none;display:block}@media (width<=760px){.skizzezeile{grid-template-columns:1fr}.bauteile{flex-direction:row;max-height:none;overflow:auto hidden}.bauteilgruppe{flex-direction:row;flex:none;align-items:stretch}.bauteiltitel{writing-mode:vertical-rl;align-items:center;display:flex;transform:rotate(180deg)}.bauteil{flex:none;min-width:84px}}.body.weit{gap:10px;max-width:none;min-height:0;padding:12px 16px;overflow-x:clip}.skizzekopf{flex-wrap:nowrap;align-items:center;gap:12px;min-height:64px;display:flex;position:relative}.skizzekopf h1{flex:none;margin:0;font-size:22px}.untergrundknopf{border:1px solid var(--line);background:var(--surface-2);min-width:0;max-width:620px;min-height:44px;color:var(--text);text-align:left;border-radius:10px;flex:0 auto;align-items:baseline;gap:10px;padding:6px 14px;display:flex}.untergrundknopf.auf{border-color:var(--accent)}.untergrundknopf .uname{white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:16px;font-weight:600;overflow:hidden}.untergrundknopf .uzusatz{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:13px;overflow:hidden}.untergrundknopf .upfeil{color:var(--muted);flex:none;margin-left:auto;font-size:13px}.untergrundschliesser{z-index:15;position:fixed;inset:0}.untergrundwahl{z-index:20;border:1px solid var(--accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f1113f7;border-radius:12px;flex-wrap:wrap;gap:8px;width:max-content;max-width:100%;max-height:46vh;padding:10px;display:flex;position:absolute;top:calc(100% + 6px);left:0;overflow-y:auto;box-shadow:0 18px 40px #0000008c}.skizzehinweis{min-width:0;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:14px;overflow:hidden}.body.weit .bigbutton{min-height:76px}.body.weit p,.body.weit .status,.body.weit .muted{max-width:70ch}.body.weit .kacheln{grid-template-columns:repeat(3,1fr)}.body.weit .galerie{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.body.weit .picks{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.body.weit .masszeile,.body.weit .neuzeile,.body.weit .bilanz{max-width:900px}@media (width<=760px){.body.weit .kacheln{grid-template-columns:repeat(2,1fr)}}.skizzeflaeche{background:#0b0d0f;border-radius:12px;flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:260px;display:flex;position:relative;overflow:hidden}.zeichenflaeche{touch-action:none;box-shadow:0 0 0 1px var(--line);background:#fff;border-radius:8px;display:block}.wzlinks,.wzrechts,.wzunten{z-index:3;transition:transform .22s;display:flex;position:absolute}.wzrolle,.bauteile,.skizzeleiste{-webkit-backdrop-filter:blur(8px);border:1px solid var(--line);background:#0f1113d1;border-radius:14px}.griff{border:1px solid var(--accent);width:40px;min-height:96px;color:var(--accent);background:#191c20f5;border-radius:12px;flex:none;justify-content:center;align-self:center;align-items:center;padding:0;font-size:20px;line-height:1;display:flex;position:relative}.griff:after{background:var(--muted);width:14px;height:2px;box-shadow:0 -5px 0 var(--muted), 0 5px 0 var(--muted);content:"";position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.griffUnten{width:96px;min-height:40px}.griffUnten:after{width:2px;height:14px;box-shadow:-5px 0 0 var(--muted), 5px 0 0 var(--muted);top:50%;bottom:auto;left:50%;transform:translate(14px,-50%)}.griffUnten{gap:18px}.wzlinks{align-items:stretch;gap:6px;top:10px;bottom:10px;left:10px}.wzlinks.zu{transform:translate(calc(36px - 100%))}.wzrolle{flex-flow:column wrap;align-content:flex-start;gap:4px;max-height:100%;padding:6px;display:flex}.werkzeug{width:74px;min-height:60px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:1px;font-size:11px;display:flex}.werkzeug .wz{color:var(--text);font-size:21px;line-height:1}.werkzeug.on{border-color:var(--accent);background:var(--surface-2);color:var(--text)}.werkzeug.on .wz{color:var(--accent)}.wzrechts{align-items:stretch;gap:6px;top:10px;bottom:10px;right:10px}.wzrechts.zu{transform:translate(calc(100% - 36px))}.bauteile{overscroll-behavior:contain;flex-direction:column;gap:10px;width:128px;padding:8px;display:flex;overflow-y:auto}.wzunten{pointer-events:none;flex-direction:column;align-items:center;gap:6px;bottom:10px;left:10px;right:10px}.wzunten>*{pointer-events:auto}.wzunten.zu{transform:translateY(calc(100% - 36px))}.skizzeleiste{flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px;max-width:100%;padding:8px 12px;display:flex;overflow-x:auto}.skizzeeingabe{z-index:5;border:1px solid var(--accent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f1113f5;border-radius:14px;flex-direction:column;gap:8px;width:min(560px,88%);padding:14px 16px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.zoomweg{z-index:3;border:1px solid var(--line);min-height:44px;color:var(--text);font-variant-numeric:tabular-nums;background:#0f1113e6;border-radius:999px;padding:0 14px;font-size:14px;position:absolute;top:10px;right:56px}@media (width<=760px){.werkzeug{width:64px}.bauteile{width:108px}}.skizzeeingabe.profilwahl{width:min(760px,94%)}.profilliste{flex-wrap:wrap;gap:8px;max-height:44vh;display:flex;overflow-y:auto}.profilliste .chip{flex-direction:column;align-items:flex-start;gap:2px;min-height:60px;padding:8px 12px;font-size:17px;display:flex}.profilliste .chip small{color:var(--muted);font-size:12px;font-weight:400}.kopfrechts{flex:none;align-items:center;gap:10px;margin-left:auto;display:flex}.materialknopf{border:1px solid var(--line);background:var(--surface-2);min-height:52px;color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:6px 14px;display:flex}.materialknopf.auf{border-color:var(--accent)}.materialknopf .mzahl{background:var(--accent);color:#101214;text-align:center;border-radius:7px;min-width:28px;padding:2px 0;font-size:16px;font-weight:700}.materialknopf .mtext{white-space:nowrap;font-size:15px}.kopfsichern{background:var(--ok,#2f7d4f);color:#fff;border:none;border-radius:10px;min-width:150px;min-height:56px;padding:0 24px;font-size:19px;font-weight:700}.kopfsichern:disabled{opacity:.45}.untergrundwahl.materialwahl{flex-flow:column;gap:6px;min-width:340px;left:auto;right:0}.materialzeile{align-items:baseline;gap:10px;font-size:15px;display:flex}.materialzeile strong{min-width:34px;color:var(--accent)}.materialwahl .schalter{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;margin:0 0 4px;padding-bottom:8px;display:flex}.materialwahl .schalter input{flex:none;width:26px;height:26px;margin-top:2px}.materialwahl .schalter>span{flex-direction:column;gap:2px;display:flex}.materialwahl .sub{color:var(--muted);font-size:13px}body.zeichenmodus .bar{display:none}body.zeichenmodus .body.weit{gap:6px;padding:6px 10px}.skizzeeingabe.zahlfeld{gap:10px;width:min(420px,92%)}.zahlanzeige{border:1px solid var(--line);background:var(--surface-2);font-variant-numeric:tabular-nums;text-align:right;border-radius:10px;min-height:56px;padding:10px 14px;font-size:28px;font-weight:700}.zahlanzeige .leer{color:var(--muted)}.zifferngitter{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.ziffer{border:1px solid var(--line);background:var(--surface-2);min-height:64px;color:var(--text);border-radius:10px;font-size:24px;font-weight:600}.ziffer:active{border-color:var(--accent)}.zifferngitter .weg{grid-area:1/4/span 3;font-size:22px}.zifferngitter .ziffer:nth-child(10){grid-column:1/span 2}.einheiten{gap:8px;display:flex}.einheiten .chip{flex:1;min-height:52px;font-size:17px}.zahlaktion{align-items:center;gap:12px;display:flex}.zahlaktion .linkish{flex:none}.uebernehmen{background:var(--ok,#2f7d4f);color:#fff;border:none;border-radius:10px;flex:1;min-height:60px;font-size:19px;font-weight:700}.skizzeeingabe.bauteilaufnahme{gap:10px;width:min(520px,94%);max-height:88%;overflow-y:auto}.massfelder{flex-wrap:wrap;gap:8px;display:flex}.massfeld{border:1px solid var(--line);background:var(--surface-2);min-height:64px;color:var(--text);text-align:left;border-radius:10px;flex-direction:column;flex:45%;align-items:flex-start;gap:2px;padding:8px 12px;display:flex}.massfeld.aktiv{border-color:var(--accent);border-width:2px}.massfeld .mlabel{color:var(--muted);font-size:13px}.massfeld .mwert{font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.massfeld .mquelle{color:var(--muted);font-size:11px}.bauteilaufnahme .freiwillig{color:var(--muted);flex-direction:column;gap:2px;margin-top:4px;display:flex}.bauteilaufnahme .freiwillig small{font-size:12px;font-weight:400}.bauteilaufnahme .profilliste{max-height:26vh}.winkelhinweis{z-index:6;border:1px solid var(--accent);color:var(--text);background:#0f1113f5;border-radius:10px;align-items:center;gap:14px;padding:10px 16px;font-size:15px;display:flex;position:absolute;top:12px;left:50%;transform:translate(-50%)}.absturz{max-width:70ch;color:var(--text);margin:0 auto;padding:24px 20px 40px}.absturz h2{margin:0 0 12px;font-size:26px}.absturz p{margin:0 0 12px;font-size:17px;line-height:1.5}.absturz-tipp{color:var(--accent)}.absturz-text{border:1px solid var(--line);color:#ddd;white-space:pre-wrap;word-break:break-word;background:#000;border-radius:10px;max-height:40vh;margin:0 0 20px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.45;overflow:auto}.galerietitel{color:var(--text);text-overflow:ellipsis;white-space:nowrap;padding:8px 12px 0;font-size:15px;overflow:hidden}:root{--bg:#0f1113;--surface:#191d21;--surface-2:#232830;--line:#333a42;--text:#f2f4f6;--muted:#a6b0ba;--accent:#d4761a;--go:#2f8f57;--stop:#c4453a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:18px;line-height:1.45}.app{min-height:100%;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);flex-direction:column;display:flex}.bar{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.bar strong{letter-spacing:.04em;font-size:17px}.bar .who{color:var(--muted);font-size:15px}.body{flex-direction:column;flex:1;gap:18px;width:100%;max-width:620px;margin:0 auto;padding:20px;display:flex}h1{margin:0;font-size:26px}.muted{color:var(--muted);margin:0;font-size:16px}.pick{text-align:left;border:2px solid var(--line);background:var(--surface);width:100%;min-height:72px;color:var(--text);cursor:pointer;border-radius:14px;padding:16px 20px;font-size:18px;font-weight:600;display:block}.pick .sub{color:var(--muted);margin-top:3px;font-size:15px;font-weight:500;display:block}.pick.on{border-color:var(--accent);background:#d4761a24}.picks{flex-direction:column;gap:12px;display:flex}.chips{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:12px;display:grid}.chip{border:2px solid var(--line);background:var(--surface);min-height:68px;color:var(--text);cursor:pointer;border-radius:14px;padding:8px;font-size:17px;font-weight:700}.chip small{color:var(--muted);margin-top:2px;font-size:13px;font-weight:500;display:block}.chip.on{border-color:var(--accent);background:#d4761a24}.bigbutton{letter-spacing:.01em;color:#fff;cursor:pointer;border:none;border-radius:18px;width:100%;min-height:104px;font-size:25px;font-weight:800}.bigbutton.go{background:var(--go)}.bigbutton.stop{background:var(--stop)}.bigbutton:disabled{opacity:.45}.running{border:2px solid var(--go);background:#2f8f571a;border-radius:16px;padding:20px}.clock{font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:46px;font-weight:800}.status{border-radius:12px;padding:14px 16px;font-size:16px}.status.warn{background:#d4761a24;border:1px solid #d4761a66}.status.err{background:#c4453a24;border:1px solid #c4453a73}.linkish{color:var(--muted);cursor:pointer;background:0 0;border:none;min-height:44px;padding:8px 0;font-size:16px;text-decoration:underline}.login{place-items:center;min-height:100%;padding:24px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;width:100%;max-width:440px;padding:24px}.stack{flex-direction:column;gap:18px;display:flex}.brand{align-items:baseline;gap:10px;display:flex}.brand strong{letter-spacing:.04em;font-size:20px}.brand span{color:var(--muted);font-size:15px}label{color:var(--muted);margin-bottom:6px;font-size:15px;display:block}input{width:100%;height:60px;color:var(--text);background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:0 16px;font-size:18px}input:focus{border-color:var(--accent);outline:none}button[type=submit]{color:#12140f;background:var(--accent);cursor:pointer;border:none;border-radius:12px;height:60px;font-size:18px;font-weight:700}.error{color:#f3b0a9;background:#c4453a24;border:1px solid #c4453a73;border-radius:12px;padding:14px 16px;font-size:16px}.pinrow{grid-template-columns:repeat(6,1fr);gap:10px;display:grid}.pin{border:2px solid var(--line);background:var(--surface);font-variant-numeric:tabular-nums;border-radius:14px;place-items:center;height:74px;font-size:34px;font-weight:800;display:grid}.pin.filled{border-color:var(--accent);background:#d4761a24}.keypad{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:4px;display:grid}.key{border:2px solid var(--line);background:var(--surface);height:82px;color:var(--text);cursor:pointer;border-radius:16px;font-size:30px;font-weight:700}.key:active{background:var(--surface-2);border-color:var(--accent)}textarea{width:100%;color:var(--text);background:var(--surface-2);border:1px solid var(--line);resize:vertical;border-radius:12px;padding:14px 16px;font-family:inherit;font-size:18px;line-height:1.4}textarea:focus{border-color:var(--accent);outline:none}.zeitfenster{border:2px solid var(--accent);text-align:center;font-variant-numeric:tabular-nums;background:#d4761a24;border-radius:14px;padding:18px;font-size:26px;font-weight:700}.tagesplan{flex-direction:column;gap:12px;display:flex}.tagesplan .pick{padding-left:22px;position:relative}.tagesplan .terminart{border-radius:12px 0 0 12px;width:8px;position:absolute;top:0;bottom:0;left:0}.aufgaben{flex-direction:column;gap:12px;display:flex}.zaehler{background:var(--accent);color:#17120c;text-align:center;vertical-align:middle;border-radius:999px;min-width:30px;margin-left:10px;padding:2px 10px;font-size:17px;font-weight:800;display:inline-block}.aufgabe{border:2px solid var(--line);background:var(--surface);border-radius:14px;overflow:hidden}.aufgabe.dringend{border-color:var(--stop)}.aufgabe-kopf{width:100%;min-height:72px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;padding:14px 16px;font-size:18px;font-weight:600;display:block}.aufgabe-kopf .sub{color:var(--muted);margin-top:4px;font-size:15px;font-weight:400;display:block}.aufgabe-offen{border-top:1px solid var(--line);flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex}
