:root{--nw-primaer:#5d767c;--nw-primaer-dunkel:#445a5f;--nw-akzent:#f29400;--nw-text:#1e2a33;--nw-text-leise:#5b6871;--nw-hell:#f3f6f9;--nw-linie:#dbe3e9;--nw-weiss:#fff;--status-gruen:#2e7d32;--status-gelb:#f2a900;--status-rot:#c62828;--plan-raster:#e7edf2;--radius-gross:10px;--radius-klein:6px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--nw-text);background:var(--nw-hell);-webkit-font-smoothing:antialiased;font-family:"Source Sans 3",Source Sans Pro,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.45}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--nw-akzent);outline-offset:2px}.app{grid-template-rows:auto 1fr auto;height:100vh;min-height:600px;display:grid}.kopf{background:var(--nw-weiss);border-bottom:3px solid var(--nw-akzent);grid-template-columns:auto 1fr auto;align-items:center;gap:32px;padding:10px 24px;display:grid}.kopf-marke{flex-direction:column;gap:2px;display:flex}.kopf-logo{width:auto;height:26px;display:block}.kopf-claim{color:var(--nw-primaer);letter-spacing:.01em;font-size:13px}.kopf-kunde{border-left:1px solid var(--nw-linie);align-items:baseline;gap:10px;padding-left:28px;display:flex}.kopf-kunde h1{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:700}.kopf-kunde span{color:var(--nw-text-leise);font-size:17px}.kopf-aktionen{align-items:center;gap:12px;display:flex}.rolle{background:var(--nw-hell);border:1px solid var(--nw-linie);border-radius:999px;padding:3px;display:inline-flex}.rolle button{color:var(--nw-text-leise);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:5px 14px;font-size:14px}.rolle button.aktiv{background:var(--nw-primaer);color:var(--nw-weiss);font-weight:600}.haupt{grid-template-columns:minmax(0,1.35fr) minmax(400px,1fr);gap:14px;min-height:0;padding:12px 24px 8px;display:grid}.fuss{color:var(--nw-text-leise);padding:6px 24px 8px;font-size:12.5px}.knopf{border:1px solid var(--nw-linie);background:var(--nw-weiss);border-radius:var(--radius-klein);cursor:pointer;padding:8px 16px;font-weight:600}.knopf:disabled{opacity:.5;cursor:default}.knopf-primaer{background:var(--nw-primaer);border-color:var(--nw-primaer);color:var(--nw-weiss)}.knopf-primaer:not(:disabled):hover{background:var(--nw-primaer-dunkel)}.knopf-hell{padding:6px 12px;font-size:14px}.knopf-text{color:var(--nw-primaer-dunkel);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.knopf-schliessen{color:var(--nw-text-leise);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0 4px;font-size:22px;line-height:1}.plan{background:var(--nw-weiss);border:1px solid var(--nw-linie);border-radius:var(--radius-gross);flex-direction:column;min-height:0;padding:12px 16px 10px;display:flex}.plan-kopf{justify-content:space-between;align-items:baseline;display:flex}.plan-kopf h2{margin:0;font-size:18px;font-weight:600}.plan-stand{color:var(--nw-text-leise);margin:0;font-size:14px}.plan-flaeche{flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.plan-flaeche>svg{width:100%;height:100%;max-height:100%}.plan-weg{fill:none;stroke:var(--nw-linie);stroke-width:10px;stroke-linecap:round}.plan-hof{fill:#9aa7b0;font-size:11px;font-style:italic}.plan-gebaeude{fill:#fbfcfd;stroke:var(--nw-primaer);stroke-width:1.5px}.plan-gebaeude-name{fill:var(--nw-primaer-dunkel);font-size:14px;font-weight:600}.ap{cursor:pointer;outline:none}.ap-trefferflaeche{fill:#0000}.ap-kern{stroke:var(--nw-weiss);stroke-width:2px;transition:r .25s,opacity .3s}.ap.status-gruen .ap-kern{fill:var(--status-gruen)}.ap.status-gelb .ap-kern{fill:var(--status-gelb)}.ap.status-rot .ap-kern{fill:var(--status-rot)}.ap-zeichen{stroke:var(--nw-weiss);stroke-width:1.8px;stroke-linecap:round;fill:none}.ap.status-gelb .ap-zeichen{stroke:var(--nw-text)}.ap-gedimmt{opacity:.28;transition:opacity .3s}.ap:focus-visible .ap-kern,.ap-auswahl .ap-kern{stroke:var(--nw-text);stroke-width:2.5px}.ap-welle{fill:none;stroke-width:2.5px;opacity:0;animation:1.8s ease-out infinite welle}.ap-welle-2{animation-delay:.9s}.ap.status-gruen .ap-welle{stroke:var(--status-gruen)}.ap.status-gelb .ap-welle{stroke:var(--status-gelb)}.ap.status-rot .ap-welle{stroke:var(--status-rot)}@keyframes welle{0%{r:9px;opacity:.9}to{r:30px;opacity:0}}.ap-beschriftung rect{fill:var(--nw-text)}.ap-beschriftung-id{fill:var(--nw-weiss);font-size:13px;font-weight:700}.ap-beschriftung-raum{fill:#cfd8de;font-size:12px}.legende{flex-wrap:wrap;gap:6px 20px;margin:4px 0 0;padding:0;font-size:15px;list-style:none;display:flex}.legende li{align-items:center;gap:6px;display:flex}.legende-hinweis{color:var(--nw-text-leise);margin-left:auto;font-size:13px}.legende-punkt{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.legende-punkt.status-gruen{background:var(--status-gruen)}.legende-punkt.status-gelb{background:var(--status-gelb)}.legende-punkt.status-rot{background:var(--status-rot)}.ap-detail{background:var(--nw-weiss);border:1px solid var(--nw-linie);border-radius:var(--radius-gross);width:268px;padding:12px 14px;font-size:14px;position:absolute;bottom:4px;right:4px;box-shadow:0 8px 24px #1e2a3324}.ap-detail-kopf{align-items:flex-start;gap:8px;display:flex}.ap-detail-kopf .legende-punkt{margin-top:5px}.ap-detail-kopf strong{font-size:16px;display:block}.ap-detail-id{color:var(--nw-text-leise);font-size:13px}.ap-detail-grund{margin:6px 0}.ap-detail dl{grid-template-columns:1fr 1fr;gap:4px 10px;margin:0 0 8px;display:grid}.ap-detail dt{color:var(--nw-text-leise);font-size:12px}.ap-detail dd{margin:0;font-weight:600}.ap-detail dd span{color:var(--nw-text-leise);font-size:12px;font-weight:400}.verlauf{margin:0}.verlauf figcaption{color:var(--nw-text-leise);margin-bottom:2px;font-size:12px}.verlauf-grenze{stroke:var(--nw-text-leise);stroke-dasharray:3 3;stroke-width:1px}.verlauf-linie{fill:none;stroke-width:2px;stroke-linejoin:round}.verlauf-linie.status-gruen{stroke:var(--status-gruen)}.verlauf-linie.status-gelb{stroke:#c98c00}.verlauf-linie.status-rot{stroke:var(--status-rot)}.verlauf-punkt.status-gruen{fill:var(--status-gruen)}.verlauf-punkt.status-gelb{fill:#c98c00}.verlauf-punkt.status-rot{fill:var(--status-rot)}.verlauf-achse{color:var(--nw-text-leise);justify-content:space-between;font-size:11px;display:flex}.chat{background:var(--nw-weiss);border:1px solid var(--nw-linie);border-radius:var(--radius-gross);flex-direction:column;min-height:0;display:flex;overflow:hidden}.chat-verlauf{flex:1;min-height:0;padding:16px 18px 8px;overflow-y:auto}.chat-start h2{letter-spacing:-.01em;margin:4px 0 6px;font-size:26px;font-weight:700}.chat-start p{color:var(--nw-text-leise);max-width:34em;margin:0}.wechsel+.wechsel{border-top:1px solid var(--nw-linie);margin-top:18px;padding-top:14px}.frage{background:var(--nw-primaer);width:fit-content;max-width:88%;color:var(--nw-weiss);border-radius:12px 12px 2px;margin:0 0 6px auto;padding:8px 12px;font-weight:500}.schritte{color:var(--nw-text-leise);margin:0 0 8px;padding:0;font-size:14px;list-style:none}.schritte li{padding-left:20px;line-height:1.5;position:relative}.schritte li:before{content:"";background:var(--nw-primaer);opacity:.55;border-radius:50%;width:7px;height:7px;position:absolute;top:.55em;left:4px}.schritte li.schritt-aktiv{color:var(--nw-text)}.schritte li.schritt-aktiv:before{opacity:1;animation:1s ease-in-out infinite alternate puls}.schritte-warten{color:var(--nw-text-leise);margin:0 0 8px;font-size:14px}@keyframes puls{to{transform:scale(1.5)}}.antwort{font-size:16.5px;line-height:1.45}.antwort p{max-width:36em;margin:0 0 8px}.techniker[open]{flex-basis:100%;order:3}.techniker{color:var(--nw-text-leise);border-left:2px solid var(--nw-linie);margin:0;padding-left:10px;font-size:14px}.techniker summary{cursor:pointer;color:var(--nw-primaer-dunkel);font-weight:600}.techniker p{margin:4px 0 0;font-size:14px}.antwort-fuss{color:var(--nw-text-leise);flex-wrap:wrap;align-items:center;gap:2px 16px;font-size:13px;display:flex}.antwort-bericht .bericht-vorschau{background:var(--nw-hell);border-radius:var(--radius-klein);max-height:150px;margin:0 0 10px;padding:10px 14px;font-size:14px;overflow:hidden;-webkit-mask-image:linear-gradient(#000 65%,#0000);mask-image:linear-gradient(#000 65%,#0000)}.bericht-vorschau h3{margin:4px 0 2px;font-size:15px}.bericht-vorschau p,.bericht-vorschau ul{margin:0 0 6px}.bericht-vorschau ul{padding-left:18px}.antwort-bericht .knopf{margin-bottom:6px}.fehler{color:var(--status-rot);font-weight:600}.chat-eingabe{border-top:1px solid var(--nw-linie);background:#fafbfc;padding:10px 14px 12px}.beispiele{flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.beispiele-kompakt{scrollbar-width:none;flex-direction:row;gap:6px;margin-bottom:8px;padding-bottom:2px;overflow-x:auto}.chip{border:1px solid var(--nw-primaer);background:var(--nw-weiss);color:var(--nw-primaer-dunkel);text-align:left;cursor:pointer;border-radius:999px;padding:7px 14px;font-size:15.5px}.chip:not(:disabled):hover{background:#eef3f4}.chip:disabled{opacity:.5;cursor:default}.beispiele-kompakt .chip{white-space:nowrap;flex:none;padding:4px 11px;font-size:13.5px}.eingabe-zeile{gap:8px;display:flex}.eingabe-zeile input{border-radius:var(--radius-klein);background:var(--nw-weiss);border:1px solid #c3ced6;flex:1;min-width:0;padding:9px 12px;font-size:16px}.modus{color:var(--nw-text-leise);margin:6px 0 0;font-size:12.5px}.ticket{border:1px solid #e8c3c3;border-left:5px solid var(--status-rot);border-radius:var(--radius-klein);background:snow;margin:8px 0 12px;padding:9px 14px 10px;animation:.35s ease-out auftauchen}@keyframes auftauchen{0%{opacity:0;transform:translateY(6px)}}.ticket-kopf{color:var(--status-rot);align-items:center;gap:10px;display:flex}.ticket-kopf strong{color:var(--nw-text);font-size:16px}.ticket-prio{color:var(--status-rot);white-space:nowrap;background:#fbe3e3;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:12.5px;font-weight:600}.ticket-felder{grid-template-columns:1.1fr 1fr .8fr;gap:4px 14px;margin:8px 0 6px;display:grid}.ticket-felder dt{color:var(--nw-text-leise);font-size:12px}.ticket-felder dd{margin:0;font-size:14.5px;font-weight:600}.ticket-termin{grid-column:1/-1}.ticket-termin dd{font-size:17px}.ticket-diagnose{color:var(--nw-text);margin:0;font-size:13px;line-height:1.4}.ticket-diagnose span{color:var(--nw-text-leise);font-size:12px;display:block}.bericht-ebene{z-index:10;background:#1e2a338c;flex-direction:column;display:flex;position:fixed;inset:0}.bericht-leiste{background:var(--nw-weiss);justify-content:space-between;align-items:center;padding:10px 24px;font-weight:600;display:flex}.bericht-leiste>div{gap:8px;display:flex}.bericht-rollbereich{flex:1;padding:24px;overflow:auto}.bericht-seite{background:var(--nw-weiss);flex-direction:column;width:210mm;min-height:297mm;margin:0 auto;padding:16mm 18mm 14mm;font-size:10.5pt;line-height:1.45;display:flex;box-shadow:0 10px 40px #00000040}.bericht-kopf{border-bottom:2px solid var(--nw-akzent);justify-content:space-between;align-items:flex-start;padding-bottom:5mm;display:flex}.bericht-kopf h1{letter-spacing:-.01em;margin:0;font-size:22pt;line-height:1.15}.bericht-kopf p{color:var(--nw-text-leise);margin:2mm 0 0}.bericht-kopf img{height:9mm}.bericht-zahlen{grid-template-columns:repeat(4,1fr);gap:4mm;margin:6mm 0 2mm;display:grid}.bericht-zahlen div{border-left:2px solid var(--nw-primaer);padding-left:3mm}.bericht-zahlen dt{color:var(--nw-text-leise);font-size:8.5pt}.bericht-zahlen dd{margin:0;font-size:20pt;font-weight:700;line-height:1.15}.bericht-zahlen dd span{color:var(--nw-text-leise);font-size:10pt;font-weight:400}.bericht-zahlen dd.bericht-zahl-klein{padding-top:4pt;font-size:14pt}.bericht-text h3,.bericht-vertrag h3{color:var(--nw-primaer-dunkel);margin:5mm 0 1.5mm;font-size:12.5pt}.bericht-text p,.bericht-vertrag p{max-width:44em;margin:0 0 2mm}.bericht-text ul{margin:0 0 2mm;padding-left:5mm}.bericht-text li{margin-bottom:1mm}.bericht-fuss{border-top:1px solid var(--nw-linie);color:var(--nw-text-leise);margin-top:auto;padding-top:4mm;font-size:8pt}@page{size:A4;margin:0}@media print{body.druck-bericht .app>:not(.bericht-ebene){display:none!important}body.druck-bericht{background:#fff}.bericht-ebene{background:0 0;position:static}.bericht-leiste{display:none}.bericht-rollbereich{padding:0;overflow:visible}.bericht-seite{box-shadow:none;height:297mm;min-height:0;overflow:hidden}}@media (width<=960px){.app{height:auto}.kopf{grid-template-columns:1fr auto;gap:10px 16px;padding:10px 16px}.kopf-kunde{border-left:0;flex-wrap:wrap;grid-area:2/1/auto/-1;padding-left:0}.haupt{grid-template-columns:1fr;padding:12px 16px}.plan{height:70vw;min-height:320px}.chat{min-height:520px}.bericht-seite{transform-origin:0 0}}@media (prefers-reduced-motion:reduce){.ap-welle,.schritte li.schritt-aktiv:before,.ticket{animation:none}.ap-welle{opacity:.6;r:18px}}.schritte-erledigt{color:var(--nw-text-leise);margin:0 0 6px;font-size:13.5px}.schritte-erledigt summary{cursor:pointer;width:fit-content}.schritte-erledigt .schritte{margin-top:4px}.wechsel{scroll-margin-top:12px}
