:root{--grund:#f3f2ef;--flaeche:#fff;--flaeche-2:#f7f6f3;--tinte:#171b1f;--gedaempft:#4f5a64;--leise:#69747d;--linie:#e4e1dc;--linie-stark:#cdc9c2;--akzent:#a8620f;--akzent-hell:#c27a22;--akzent-weich:#fbf1e4;--akzent-tinte:#fff;--gut:#2f7a4f;--warn:#9a5a00;--warn-weich:#fff4de;--schatten:0 1px 2px #14181c0f, 0 8px 24px -12px #14181c2e;--radius:10px;--kopf:60px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--grund:#0f1418;--flaeche:#171d22;--flaeche-2:#1c242a;--tinte:#e7ecf0;--gedaempft:#9dabb7;--leise:#7d8b97;--linie:#28323a;--linie-stark:#3a4651;--akzent:#e09a4a;--akzent-hell:#f0ad60;--akzent-weich:#2a2016;--akzent-tinte:#1a1206;--warn:#f0b456;--warn-weich:#2b2214;--schatten:0 1px 2px #0000004d, 0 10px 30px -12px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--grund:#0f1418;--flaeche:#171d22;--flaeche-2:#1c242a;--tinte:#e7ecf0;--gedaempft:#9dabb7;--leise:#7d8b97;--linie:#28323a;--linie-stark:#3a4651;--akzent:#e09a4a;--akzent-hell:#f0ad60;--akzent-weich:#2a2016;--akzent-tinte:#1a1206;--warn:#f0b456;--warn-weich:#2b2214;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--grund);color:var(--tinte);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font:15px/1.5 Inter,system-ui,-apple-system,Segoe UI,sans-serif}button,select{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--akzent);outline-offset:2px}.klein{color:var(--leise);font-size:12px}.app{grid-template-rows:var(--kopf) minmax(0, 1fr);grid-template-columns:minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.haupt{grid-template-columns:minmax(0,1fr) 440px;min-height:0;display:grid}.kopf{background:var(--flaeche);border-bottom:1px solid var(--linie);z-index:3;justify-content:space-between;align-items:center;gap:16px;padding:0 20px;display:flex}.marke{align-items:center;gap:12px;min-width:0;display:flex}.marke h1{letter-spacing:-.01em;white-space:nowrap;margin:0;font-size:16px;font-weight:650}.marke p{color:var(--leise);white-space:nowrap;margin:0;font-size:12px}.kopf-aktionen{gap:8px;display:flex}.sprunglink{z-index:10;background:var(--akzent);color:#fff;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s;position:absolute;top:8px;left:12px;transform:translateY(-160%)}.sprunglink:focus{transform:none}.knopf{border:1px solid var(--linie-stark);background:var(--flaeche);height:42px;color:var(--tinte);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:14px;font-weight:550;text-decoration:none;transition:border-color .15s,background .15s,transform .1s;display:inline-flex}.knopf:hover{border-color:var(--tinte)}.knopf:active{transform:translateY(1px)}.knopf.haupt{background:var(--akzent);border-color:var(--akzent);color:var(--akzent-tinte)}.knopf.haupt:hover{background:var(--akzent-hell);border-color:var(--akzent-hell)}.knopf.leise{height:36px;color:var(--gedaempft);background:0 0;border-color:#0000;padding:0 12px}.knopf.leise:hover:not(:disabled){background:var(--flaeche-2);color:var(--tinte)}.knopf:disabled{opacity:.4;cursor:default}.knopf.rund{width:42px;padding:0}.textknopf{min-height:24px;color:var(--akzent);background:0 0;border:0;align-items:center;padding:0;font-size:13px;font-weight:600;display:inline-flex}.textknopf:hover{text-decoration:underline}.buehne{background:var(--grund);min-width:0;min-height:0;position:relative}.buehne canvas{touch-action:none;display:block}.buehne-laden{color:var(--gedaempft);text-align:center;place-items:center;gap:10px;padding:24px;font-size:14px;display:grid;position:absolute;inset:0}.spinner{border:2px solid var(--linie-stark);border-top-color:var(--akzent);vertical-align:-3px;border-radius:50%;width:16px;height:16px;margin-right:8px;animation:.8s linear infinite dreh;display:inline-block}@keyframes dreh{to{transform:rotate(360deg)}}.schild{border-radius:var(--radius);background:var(--flaeche);background:color-mix(in srgb, var(--flaeche) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--schatten);pointer-events:none;flex-direction:column;gap:1px;max-width:calc(100% - 32px);padding:10px 14px;display:flex;position:absolute;top:16px;left:16px}.schild strong{font-size:14px;font-weight:650}.schild span{color:var(--gedaempft);font-variant-numeric:tabular-nums;font-size:12.5px}.ladehinweis{color:var(--gedaempft);background:var(--flaeche);background:color-mix(in srgb, var(--flaeche) 88%, transparent);box-shadow:var(--schatten);border-radius:999px;padding:7px 12px;font-size:12.5px;position:absolute;top:84px;left:16px}.werkzeuge{pointer-events:none;justify-content:space-between;gap:10px;display:flex;position:absolute;bottom:16px;left:16px;right:16px}.ansichten,.schalter{pointer-events:auto;background:var(--flaeche);background:color-mix(in srgb, var(--flaeche) 90%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--schatten);border-radius:999px;gap:2px;padding:4px;display:flex}.ansichten button,.schalter button{height:34px;color:var(--gedaempft);background:0 0;border:0;border-radius:999px;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:550;display:inline-flex}.ansichten button:hover,.schalter button:hover{color:var(--tinte)}.ansichten button[aria-pressed=true],.schalter button[aria-pressed=true]{background:var(--tinte);color:var(--flaeche)}.autowahl{height:34px;color:var(--gedaempft);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:0 10px 0 12px;font-size:13px;font-weight:550;display:inline-flex;position:relative}.autowahl.an{background:var(--tinte);color:var(--flaeche)}.autowahl select{appearance:none;color:inherit;font:inherit;cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238a949d' stroke-width='1.6'/%3E%3C/svg%3E") 100% no-repeat;border:0;outline:none;padding-right:14px}.autowahl select option{color:#171b1f}.autowahl:focus-within{outline:2px solid var(--akzent);outline-offset:2px}.bedienhinweis{pointer-events:none;color:var(--gedaempft);white-space:nowrap;background:var(--flaeche);background:color-mix(in srgb, var(--flaeche) 86%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--schatten);border-radius:999px;margin:0;padding:7px 14px;font-size:12.5px;animation:.5s einblenden;position:absolute;bottom:74px;left:50%;transform:translate(-50%)}@keyframes einblenden{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.kredit{color:var(--leise);pointer-events:none;margin:0;font-size:10.5px;position:absolute;bottom:60px;right:18px}.masslabel{color:#fff;white-space:nowrap;font-variant-numeric:tabular-nums;pointer-events:none;background:#a8620f;border-radius:6px;padding:5px 8px;font:600 12px/1 Inter,system-ui,sans-serif;box-shadow:0 2px 8px #00000040}.panel{background:var(--flaeche);border-left:1px solid var(--linie);flex-direction:column;min-width:0;min-height:0;display:flex}.schritte{border-bottom:1px solid var(--linie);scrollbar-width:none;flex:none;overflow-x:auto}.schritte::-webkit-scrollbar{display:none}.schritte ol{gap:2px;min-width:340px;margin:0;padding:10px 10px 8px;list-style:none;display:grid}.schritte button{width:100%;color:var(--gedaempft);letter-spacing:-.005em;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:6px 2px 5px;font-size:11.5px;font-weight:600;display:flex}.schritte .name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.schritte button:hover{background:var(--flaeche-2);color:var(--tinte)}.schritte .nr{border:1.5px solid var(--linie-stark);width:22px;height:22px;color:var(--gedaempft);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:11.5px;font-weight:700;display:grid}.schritte .nr svg{width:13px;height:13px}.schritte button.erledigt .nr{background:var(--akzent-weich);border-color:var(--akzent);color:var(--akzent)}.schritte button[aria-current=step]{color:var(--tinte)}.schritte button[aria-current=step] .nr{background:var(--tinte);border-color:var(--tinte);color:var(--flaeche)}.inhalt{overscroll-behavior:contain;flex:1;padding:22px 22px 28px;overflow-y:auto}.schrittkopf h2{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700}.schrittkopf p{color:var(--gedaempft);margin:4px 0 0;font-size:13.5px}.felder{flex-direction:column;gap:26px;margin-top:20px;display:flex}.feldtitel{letter-spacing:.08em;text-transform:uppercase;color:var(--leise);margin:0 0 10px;font-size:12px;font-weight:650}.segment{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:8px;display:grid}.segment button{border:1.5px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-height:52px;padding:8px 6px;font-size:14.5px;font-weight:600;transition:border-color .15s,background .15s;display:flex}.segment button small{color:var(--leise);font-size:11.5px;font-weight:500}.segment button small.aufpreis{color:var(--gedaempft)}.segment button:hover{border-color:var(--linie-stark)}.segment button[aria-checked=true]{border-color:var(--akzent);background:var(--akzent-weich);box-shadow:inset 0 0 0 1px var(--akzent)}.bauformen{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.bauform{text-align:left;border:1.5px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);color:var(--gedaempft);grid-template-rows:auto auto;grid-template-columns:56px 1fr;align-items:center;column-gap:10px;padding:10px 12px 10px 8px;transition:border-color .15s,background .15s;display:grid}.bauform svg{color:var(--gedaempft);grid-row:span 2}.bauform-titel{color:var(--tinte);-webkit-hyphens:manual;hyphens:manual;overflow-wrap:anywhere;align-self:end;font-size:14px;font-weight:650}.bauform-text{color:var(--leise);align-self:start;font-size:11.5px;line-height:1.3}.bauform-preis{color:var(--gedaempft);font-variant-numeric:tabular-nums;grid-column:2;margin-top:2px;font-size:11.5px;font-weight:600}.bauform:hover{border-color:var(--linie-stark)}.bauform[aria-checked=true]{border-color:var(--akzent);background:var(--akzent-weich);box-shadow:inset 0 0 0 1px var(--akzent)}.bauform[aria-checked=true] svg{color:var(--akzent)}.karten{flex-direction:column;gap:8px;display:flex}.karte{border:1.5px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);transition:border-color .15s,background .15s}.karte:hover{border-color:var(--linie-stark)}.karte.an{border-color:var(--akzent);background:var(--akzent-weich);box-shadow:inset 0 0 0 1px var(--akzent)}.karte-knopf{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;padding:11px 14px;display:flex}.karte-text{flex-direction:column;flex:1;min-width:0;display:flex}.karte-titel{font-size:14px;font-weight:600;line-height:1.35}.karte-zusatz{color:var(--gedaempft);margin-top:1px;font-size:12.5px;line-height:1.35}.aufpreis{color:var(--gedaempft);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.muster{border-radius:7px;flex:none;width:30px;height:30px;box-shadow:inset 0 0 0 1px #0000001f}.muster.leer{background:repeating-linear-gradient(135deg, transparent 0 5px, var(--linie) 5px 6px);box-shadow:inset 0 0 0 1px var(--linie-stark)}.farben{flex-wrap:wrap;gap:6px 10px;padding:2px 14px 14px 56px;display:flex}.farbe{background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;width:58px;padding:0;display:flex}.farbe span{border-radius:50%;width:34px;height:34px;transition:box-shadow .15s;box-shadow:inset 0 0 0 1px #00000026}.farbe small{color:var(--gedaempft);text-align:center;font-size:11px;line-height:1.2}.farbe[aria-checked=true] span{box-shadow:0 0 0 2px var(--flaeche), 0 0 0 4px var(--akzent)}.farbe[aria-checked=true] small{color:var(--tinte);font-weight:600}.wandplan{width:100%;max-width:330px;margin:0 auto 10px;display:block}.wandplan .dachflaeche{fill:var(--flaeche-2);stroke:var(--linie-stark);stroke-dasharray:4 4}.wandplan .raum{fill:var(--akzent-weich)}.wandplan .haus{fill:var(--linie)}.wandplan .pfosten{fill:var(--gedaempft)}.wandplan .plantext{fill:var(--gedaempft);text-anchor:middle;font-size:12px;font-weight:600}.wandplan .plantext.klein{fill:var(--leise);font-size:10.5px;font-weight:500}.wandplan .einfahrt{fill:none;stroke:var(--leise);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.wandstrecke{cursor:pointer;outline:none}.wandstrecke .treffer{stroke:#0000;stroke-width:22px}.wandstrecke .sichtbar{stroke:var(--linie-stark);stroke-width:3px;stroke-dasharray:5 5;stroke-linecap:round;transition:stroke .15s}.wandstrecke:hover .sichtbar,.wandstrecke:focus-visible .sichtbar{stroke:var(--akzent-hell)}.wandstrecke.an .sichtbar{stroke:var(--akzent);stroke-width:7px;stroke-dasharray:none}.wandstrecke.hervor .sichtbar{stroke:var(--akzent-hell);stroke-width:9px}.schnellwahl{color:var(--gedaempft);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;display:flex}.schnellwahl button{border:1px solid var(--linie-stark);background:var(--flaeche);border-radius:999px;height:32px;padding:0 12px;font-size:13px;font-weight:550}.schnellwahl button:hover:not(:disabled){border-color:var(--akzent);color:var(--akzent)}.schnellwahl button:disabled{opacity:.45;cursor:default}.feldhinweis{color:var(--gedaempft);margin:0 0 12px;font-size:12.5px;line-height:1.45}.feldhinweis b{color:var(--tinte);font-weight:600}.zeilen{flex-direction:column;gap:8px;display:flex}.zeilenwahl{grid-template-columns:110px 1fr;align-items:center;gap:10px;scroll-margin:90px;display:grid}.zeilenwahl-titel{font-size:13.5px;font-weight:600}.zeilenwahl select{border:1.5px solid var(--linie);border-radius:var(--radius);background:var(--flaeche) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%238a949d' stroke-width='1.8'/%3E%3C/svg%3E") no-repeat right 12px center;appearance:none;text-overflow:ellipsis;width:100%;min-width:0;height:42px;padding:0 34px 0 12px;font-size:13.5px}.zeilenwahl select:hover{border-color:var(--linie-stark)}.zeilenwahl.hervor select{border-color:var(--akzent)}.zeilenwahl.hervor .zeilenwahl-titel{color:var(--akzent)}.festwerte{border:1px solid var(--linie);border-radius:var(--radius);flex-direction:column;gap:1px;margin:0;display:flex;overflow:hidden}.festwerte>div{background:var(--flaeche-2);justify-content:space-between;gap:12px;padding:9px 13px;font-size:13.5px;display:flex}.festwerte dt{color:var(--gedaempft);margin:0}.festwerte dd{text-align:right;margin:0;font-weight:600}.hinweis{border-radius:var(--radius);background:var(--flaeche-2);color:var(--gedaempft);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;display:flex}.hinweis svg{flex:none;margin-top:1px}.hinweis.warnung{background:var(--warn-weich);color:var(--warn)}.anpassung{border-radius:var(--radius);background:var(--akzent-weich);color:var(--akzent);align-items:center;gap:10px;margin:0 14px 10px;padding:10px 12px;font-size:13px;animation:.25s hochschieben;display:flex}.anpassung svg{flex:none}.anpassung span{flex:1;min-width:0}.anpassung b{font-weight:650}.anpassung button{color:inherit;font:inherit;background:0 0;border:0;padding:0;font-weight:650;text-decoration:underline}.anpassung button.zu{opacity:.6;font-size:18px;line-height:1;text-decoration:none}@keyframes hochschieben{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.preisfuss{padding:14px 18px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--linie);background:var(--flaeche);flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.preis{flex-direction:column;min-width:0;line-height:1.15;display:flex}.preis-label{color:var(--leise);font-size:12px}.preis-summe{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:750}.preis-hinweis{color:var(--leise);margin-top:2px;font-size:11.5px}.preis.unvollstaendig .preis-hinweis{color:var(--warn);font-weight:600}.navknoepfe{gap:8px;display:flex}.uebersicht{flex-direction:column;gap:18px;margin-top:18px;display:flex}.ue-kopf{border-radius:var(--radius);background:var(--flaeche-2);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.ue-name{font-size:15px;font-weight:700}.ue-masse{color:var(--gedaempft);font-variant-numeric:tabular-nums;font-size:13px}.posten{border-collapse:collapse;width:100%;font-size:13.5px}.posten th,.posten td{border-bottom:1px solid var(--linie);text-align:left;vertical-align:top;padding:9px 0;font-weight:500}.posten td{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--gedaempft);padding-left:12px}.posten .posten-gruppe th{border-bottom-color:var(--linie-stark);padding-top:18px}.posten-name{font-weight:600;display:block}.posten-wert{color:var(--gedaempft);font-size:12.5px;display:block}.posten tfoot th,.posten tfoot td{color:var(--tinte);border:0;padding-top:14px;font-size:16px;font-weight:750}.stueckliste{border:1px solid var(--linie);border-radius:var(--radius);padding:0 14px}.stueckliste summary{cursor:pointer;padding:12px 0;font-size:13.5px;font-weight:600}.stueckliste ul{margin:0;padding:0 0 6px;font-size:13px;list-style:none}.stueckliste li{border-top:1px solid var(--linie);justify-content:space-between;gap:12px;padding:5px 0;display:flex}.stueckliste li span:last-child{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--gedaempft)}.stueckliste.daten pre{background:var(--flaeche-2);border-radius:8px;max-height:260px;margin:0 0 12px;padding:12px;font:11.5px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;overflow-x:auto}.aktionen{flex-wrap:wrap;gap:8px;display:flex}.aktionen .knopf.haupt{flex:100%}.aktionen .knopf:not(.haupt){flex:1 1 0}@media (width<=1240px){.haupt{grid-template-columns:minmax(0,1fr) 390px}.navknoepfe .ziel{display:none}}@media (width<=820px){:root{--kopf:52px}.kopf{padding:0 12px}.marke p,.kopf-aktionen .knopf span{display:none}.haupt{grid-template-rows:minmax(240px,40dvh) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.navknoepfe .ziel{display:none}.schritte ol{min-width:0;padding:8px 6px 6px}.schritte button{font-size:10.5px}.panel{border-left:0;border-top:1px solid var(--linie)}.schild{padding:7px 10px;top:10px;left:10px}.schild strong{font-size:12.5px}.schild span{font-size:11.5px}.ladehinweis{top:auto;bottom:58px;left:10px}.werkzeuge{flex-wrap:wrap;gap:8px;bottom:10px;left:10px;right:10px}.schalter{order:1;margin-left:auto}.ansichten{order:2}.ansichten button,.schalter button{height:30px;padding:0 10px;font-size:12.5px}.schalter button span{display:none}.autowahl select{max-width:118px;font-size:12.5px}.kredit{display:none}.bedienhinweis{font-size:11.5px;bottom:104px}.inhalt{padding:16px 16px 22px}.schrittkopf h2{font-size:19px}.preisfuss{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}.preis-summe{font-size:22px}.knopf.haupt{padding:0 14px}}@media (width<=420px){.bauformen{grid-template-columns:1fr}.zeilenwahl{grid-template-columns:1fr;gap:4px}.navknoepfe .knopf.haupt{font-size:13px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation-duration:0s!important}}.druckkopf,.druckbild{display:none}@media print{.druckkopf{flex-direction:column;gap:2px;margin-bottom:8mm;display:flex}.druckkopf strong{font-size:15px}.druckkopf span{color:#555;font-size:11px}.druck-link{word-break:break-all}.ue-kopf .textknopf,.schrittkopf p{display:none}body{background:#fff}.app{height:auto;display:block}.kopf-aktionen,.schritte,.preisfuss,.werkzeuge,.aktionen,.kredit,.textknopf{display:none!important}.haupt{display:block}.buehne{break-inside:avoid;background:0 0;height:95mm}.buehne-laden,.schild,.ladehinweis,.buehne canvas{display:none!important}.druckbild{object-fit:contain;width:100%;height:100%;display:block;position:absolute;inset:0}.panel{border:0}.inhalt{padding:0;overflow:visible}.stueckliste{break-inside:avoid;border:0;padding:0}.stueckliste.daten{display:none}.stueckliste summary{text-transform:uppercase;letter-spacing:.06em;color:#555;font-size:12px;list-style:none}.stueckliste summary::-webkit-details-marker{display:none}}
