:root{--flaeche: #fcfcfb;--seite: #f9f9f7;--tinte: #0b0b0b;--tinte-2: #52514e;--tinte-3: #898781;--linie: #e1e0d9;--basislinie: #c3c2b7;--marke: #14532d;--marke-dunkel: #0d3b20;--akzent: #eda100;--gefahr: #d03b3b;--gut: #0ca30c;--radius: 10px;--schatten: 0 1px 2px rgba(11, 11, 11, .05), 0 1px 6px rgba(11, 11, 11, .04)}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--seite);color:var(--tinte);font-size:15px;line-height:1.5}h1{font-size:1.5rem;margin:0 0 .25rem}h2{font-size:1.1rem;margin:0 0 .5rem}h3{font-size:1.05rem;margin:1.25rem 0 .5rem}h4{margin:1rem 0 .4rem}main{max-width:1180px;margin:0 auto;padding:1.5rem 1.25rem 4rem}button{font:inherit;cursor:pointer;border:1px solid var(--linie);background:var(--flaeche);color:var(--tinte);border-radius:8px;padding:.45rem .9rem}button:hover{border-color:var(--basislinie)}button.primaer{background:var(--marke);border-color:var(--marke);color:#fff;font-weight:600}button.primaer:hover{background:var(--marke-dunkel)}button.gefahr{color:var(--gefahr);border-color:#eecaca}button.gefahr:hover{background:#fdf3f3}input,select,textarea{font:inherit;color:var(--tinte);background:#fff;border:1px solid var(--linie);border-radius:8px;padding:.4rem .6rem}input:focus,select:focus,textarea:focus{outline:2px solid rgba(20,83,45,.35);outline-offset:0;border-color:var(--marke)}textarea{width:100%;resize:vertical}a{color:#1c5cab}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem 1.25rem;background:var(--marke-dunkel);color:#fff;position:sticky;top:0;z-index:10}.topbar .marke{display:flex;align-items:center;gap:.6rem;background:none;border:none;color:#fff;font-size:1rem;padding:.25rem 0}.marke-symbol{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--akzent);color:#0d3b20;font-size:1rem}.topbar nav{display:flex;gap:.4rem}.topbar nav button{background:transparent;border:1px solid transparent;color:#ffffffd9}.topbar nav button:hover{color:#fff;border-color:#ffffff4d}.topbar nav button.aktiv{background:#ffffff24;color:#fff;font-weight:600}.sicherung-banner{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;background:#fff3d6;border-bottom:1px solid #f0dfae;color:#7a5200;padding:.5rem 1.25rem;font-size:.9rem}.sicherung-banner button{background:#7a5200;color:#fff;border-color:#7a5200;padding:.3rem .9rem;font-weight:600}.sicherung-banner button:hover{background:#5f4000}.absturz{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:var(--seite)}.absturz-karte{max-width:560px;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:1.75rem 2rem;box-shadow:var(--schatten)}.absturz-karte h1{margin-top:0}.absturz-fehler{background:#fbe7e7;border:1px solid #eecaca;border-radius:8px;padding:.6rem .8rem;font-size:.82rem;color:#a32626;overflow-x:auto;white-space:pre-wrap}.willkommen-box{position:relative;background:#eef7f0;border:1px solid #bfe3bf;border-radius:var(--radius);padding:1rem 1.3rem;margin-bottom:1.25rem}.willkommen-box h3{margin:0 0 .4rem}.willkommen-box p{margin:.35rem 0}.willkommen-schliessen{position:absolute;top:.5rem;right:.6rem;border:none;background:none;font-size:1.2rem;line-height:1;color:var(--tinte-3);padding:.2rem .4rem}.willkommen-schliessen:hover{color:var(--tinte)}.nummer-gruppe{display:inline-flex;align-items:center;gap:.5rem}.beispiel-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;background:var(--akzent);color:#4a3200;border-radius:999px;padding:.1rem .5rem}.tab-hilfe{color:var(--tinte-2);font-size:.88rem;margin:-.5rem 0 1.25rem}.seiten-kopf{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.untertitel{color:var(--tinte-2);margin:0}.leer-hinweis{color:var(--tinte-3)}.fristen-box{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:.9rem 1.1rem;margin-bottom:1rem;box-shadow:var(--schatten)}.fristen-box h3{margin:0 0 .5rem;font-size:.95rem}.fristen-box ul{list-style:none;margin:0;padding:0;display:grid;gap:.3rem}.frist-link{display:flex;align-items:baseline;gap:.7rem;width:100%;text-align:left;background:none;border:none;padding:.25rem .3rem;border-radius:6px;font-size:.88rem}.frist-link:hover{background:#f4f4f1}.frist-tage{flex-shrink:0;min-width:96px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--tinte-2)}.fristen-box li.ueberfaellig .frist-tage{color:var(--gefahr)}.filter-leiste{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;margin-bottom:1rem}.filter-leiste input[type=search]{flex:1;min-width:200px}.filter-chips{display:flex;gap:.35rem;flex-wrap:wrap}.filter-chips button{font-size:.8rem;padding:.25rem .65rem;border-radius:999px}.filter-chips button.aktiv{outline:2px solid var(--marke);outline-offset:1px}.status-chip{border:1px solid transparent}.karte-frist{font-size:.8rem;color:var(--tinte-2);margin:0 0 .5rem;font-weight:600}.karte-frist.ueberfaellig{color:var(--gefahr)}.check-fuss{display:flex;gap:.5rem;align-items:center;margin-top:.35rem}.check-fuss .check-notiz{flex:1;margin-top:0}.check-frist{display:inline-flex;align-items:center;gap:.25rem;font-size:.85rem;color:var(--tinte-3)}.kontakt-liste{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.9rem}.kontakt-karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:var(--schatten);display:grid;gap:.5rem}.kontakt-zeile{display:flex;align-items:center;gap:.4rem}.kontakt-rolle{flex:1;font-weight:700}.kontakt-felder{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.kontakt-felder input,.kontakt-notiz{width:100%;font-size:.88rem}.kontakt-aktionen{display:flex;gap:.5rem}.kontakt-aktion{font-size:.85rem;font-weight:600;text-decoration:none;color:var(--marke);background:#eef7f0;border:1px solid #bfe3bf;border-radius:8px;padding:.3rem .7rem}.kontakt-aktion:hover{background:#e2f0e5}.projekt-karten{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.projekt-karte{text-align:left;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:var(--schatten);display:block}.projekt-karte:hover{border-color:var(--marke)}.projekt-karte h2{margin:.35rem 0 .1rem;font-size:1.15rem}.karte-kopf{display:flex;justify-content:space-between;align-items:center}.projekt-nummer{font-weight:700;color:var(--tinte-3);font-variant-numeric:tabular-nums}.karte-adresse{color:var(--tinte-2);margin:0 0 .75rem}.karte-kpis{display:grid;grid-template-columns:1fr 1fr;gap:.5rem 1rem;margin:0}.karte-kpis dt{font-size:.75rem;color:var(--tinte-3)}.karte-kpis dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums}.status,.status-select{border-radius:999px;padding:.15rem .7rem;font-size:.8rem;font-weight:600;border:1px solid transparent}.status-idee{background:#eef1f5;color:#44506a}.status-pruefung{background:#fff3d6;color:#7a5200}.status-angebot{background:#e4effb;color:#1c5cab}.status-vertrag{background:#e9e4fb;color:#4a3aa7}.status-umsetzung{background:#fdeadd;color:#a34a12}.status-betrieb{background:#e2f5e2;color:#006300}.status-abgelehnt{background:#fbe7e7;color:#a32626}.projekt-titelzeile{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.zurueck{font-size:1.1rem;padding:.3rem .7rem}.projekt-name-eingabe{font-size:1.25rem;font-weight:700;min-width:260px;border-color:transparent;background:transparent}.projekt-name-eingabe:hover,.projekt-name-eingabe:focus{background:#fff;border-color:var(--linie)}.tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--linie);margin-bottom:1.25rem;flex-wrap:wrap}.tabs button{border:none;background:none;border-radius:8px 8px 0 0;padding:.55rem .9rem;color:var(--tinte-2);border-bottom:2px solid transparent}.tabs button.aktiv{color:var(--marke);font-weight:700;border-bottom-color:var(--marke)}.zwei-spalten{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.25rem;align-items:start}@media(max-width:900px){.zwei-spalten{grid-template-columns:1fr}}.formular{display:grid;gap:1rem}.formular.schmal{max-width:640px}fieldset{border:1px solid var(--linie);border-radius:var(--radius);background:var(--flaeche);padding:.9rem 1.1rem 1.1rem;display:grid;gap:.7rem;margin:0}legend{font-weight:700;padding:0 .4rem}.feld{display:grid;gap:.2rem}.feld-label{font-size:.85rem;color:var(--tinte-2);font-weight:600}.feld-eingabe{display:flex;align-items:center;gap:.5rem}.feld-eingabe input{width:100%;max-width:260px;font-variant-numeric:tabular-nums}.feld-eingabe input[type=text]{max-width:420px}.feld-einheit{color:var(--tinte-3);white-space:nowrap}.feld-hinweis{font-size:.8rem;color:var(--tinte-3)}.live-kpis{position:sticky;top:70px;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:1rem 1.1rem;box-shadow:var(--schatten)}.live-kpis h3{margin-top:0}.live-kpis dl{margin:0;display:grid;gap:.6rem}.live-kpis dt{font-size:.78rem;color:var(--tinte-3)}.live-kpis dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.kpi-hinweis{font-size:.8rem;color:var(--tinte-3);margin-bottom:0}.kpi-reihe{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.9rem;margin-bottom:1rem}.kpi-kachel{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:.85rem 1rem;box-shadow:var(--schatten);display:grid;gap:.15rem}.kpi-wert{font-size:1.35rem;font-weight:700}.kpi-label{font-size:.8rem;color:var(--tinte-2)}.info-banner{background:#fff8e8;border:1px solid #f0dfae;border-radius:var(--radius);padding:.75rem 1rem;margin:.5rem 0 1rem}.info-banner p{margin:.25rem 0}.info-banner.gut{background:#eef8ee;border-color:#bfe3bf}.info-banner.warnung{background:#fdf0ea;border-color:#f0c9b4}.kpi-reihe.eng{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.szen-leer{max-width:640px}.szen-matrix th,.szen-matrix td{min-width:120px}.szen-matrix .zeilen-kopf{font-weight:600;color:var(--tinte-2);background:#f4f4f1;position:sticky;left:0;min-width:160px}.szen-matrix tr.gruppe td{background:var(--marke);color:#fff;font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;padding:.35rem .75rem}.szen-spalten-kopf{display:flex;align-items:center;gap:.3rem}.szen-name{font-weight:700;border-color:transparent;background:transparent;width:100%;min-width:90px;padding:.25rem .35rem}.szen-name:hover,.szen-name:focus{background:#fff;border-color:var(--linie)}.szen-zelle{display:flex;align-items:center;gap:.25rem}.szen-zelle input{width:100%;min-width:70px;text-align:right;padding:.3rem .4rem;font-variant-numeric:tabular-nums}.szen-zelle i{color:var(--tinte-3);font-style:normal;font-size:.8rem}.szen-matrix td.best{background:#e2f5e2;font-weight:700;color:#006300}.szen-matrix td.warn{background:#fdf0ea;color:#a34a12;font-weight:600}.tabelle-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);font-variant-numeric:tabular-nums}th,td{text-align:left;padding:.5rem .75rem;border-bottom:1px solid var(--linie);vertical-align:top}th{font-size:.8rem;color:var(--tinte-2);background:#f4f4f1}tr:last-child td{border-bottom:none}tr.hervorgehoben{background:#f0f7f2;font-weight:600}td.zahl{text-align:right;white-space:nowrap}tr.summe td{font-weight:700;border-top:2px solid var(--basislinie)}table.schlicht{border:none;background:none}.slider-zeile{display:grid;gap:.3rem;margin:1rem 0;max-width:560px}.slider-zeile input[type=range]{accent-color:var(--marke);padding:0}.chart-reihe{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem;margin-top:1rem}.chart{margin:0;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:var(--schatten);position:relative}.chart figcaption{font-weight:600;margin-bottom:.5rem}.chart svg{width:100%;height:auto;display:block}.chart-legende{display:flex;gap:.9rem;flex-wrap:wrap;font-size:.8rem;color:var(--tinte-2);margin-bottom:.25rem}.chart-legende i,.chart-tooltip i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:.35rem}.chart-tooltip{position:absolute;top:3rem;right:1rem;background:#fff;border:1px solid var(--linie);border-radius:8px;box-shadow:var(--schatten);padding:.5rem .7rem;font-size:.8rem;pointer-events:none;font-variant-numeric:tabular-nums}.angebot-karten{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin:1rem 0}.angebot-karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:1rem 1.2rem;box-shadow:var(--schatten)}.angebot-karte h4{margin-top:0}.angebot-karte.breit{grid-column:1 / -1}.haken-liste{list-style:none;padding:0;display:grid;gap:.4rem}.haken-liste li:before{content:"✓ ";color:var(--gut);font-weight:700}.vergleich{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}@media(max-width:640px){.vergleich{grid-template-columns:1fr}}.vergleich-spalte{border-radius:var(--radius);padding:.9rem 1.1rem;border:1px solid var(--linie)}.vergleich-spalte h4{margin-top:0}.vergleich-spalte ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}.vergleich-spalte.ohne{background:#f6f5f2;color:var(--tinte-2)}.vergleich-spalte.mit{background:#eef7f0;border-color:#bfe3bf}.vorteil-band{display:flex;flex-wrap:wrap;gap:2rem;background:var(--marke);color:#fff;border-radius:var(--radius);padding:1rem 1.3rem;margin:1rem 0}.vorteil-band>div{display:grid;gap:.15rem;align-content:start}.vorteil-band .kpi-wert{color:#fff;font-size:1.5rem}.vorteil-band .kpi-label{color:#ffffffd9}.nur-druck{display:none}.angebot-briefkopf{justify-content:space-between;gap:2rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--marke);font-size:.9rem}.briefkopf-firma{display:flex;gap:.8rem;align-items:flex-start}.briefkopf-logo{max-height:56px;max-width:160px}.briefkopf-empfaenger{text-align:right}.briefkopf-datum{margin-top:.5rem;color:var(--tinte-2)}.angebot-fuss{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--linie);font-size:.8rem;color:var(--tinte-2)}.logo-vorschau{max-height:40px;max-width:120px;border:1px solid var(--linie);border-radius:4px}.fortschritt-zeile{display:flex;align-items:center;gap:.9rem;margin-bottom:1rem;color:var(--tinte-2)}.fortschritt-balken{flex:1;max-width:420px;height:10px;background:var(--linie);border-radius:999px;overflow:hidden}.fortschritt-balken>div{height:100%;background:var(--marke);border-radius:999px;transition:width .2s}.checkliste{list-style:none;padding:0;margin:0;display:grid;gap:.7rem}.check-eintrag{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:.75rem 1rem}.check-eintrag.ist-erledigt{opacity:.65}.check-kopf{display:flex;align-items:flex-start;gap:.75rem}.check-status{font-size:.8rem;font-weight:600;border-radius:999px;padding:.2rem .5rem}.check-status.ist-offen{background:#eef1f5}.check-status.ist-laufend{background:#fff3d6}.check-status.ist-erledigt{background:#e2f5e2}.check-text{flex:1;display:grid}.check-zustaendig{font-size:.8rem;color:var(--tinte-3)}.check-entfernen{border:none;color:var(--tinte-3);font-size:1.1rem;padding:0 .4rem;background:none}.check-entfernen:hover{color:var(--gefahr)}.check-details{font-size:.85rem;color:var(--tinte-2);margin:.5rem 0 .4rem}.check-notiz{width:100%;margin-top:.35rem;font-size:.85rem}.check-neu{display:flex;gap:.5rem;margin-top:1rem}.check-neu input{flex:1;max-width:480px}.mini-knopf{font-size:.8rem;padding:.15rem .6rem;background:var(--marke);color:#fff;border-color:var(--marke);border-radius:6px}.mini-knopf:hover{background:var(--marke-dunkel)}.plz-ort-zeile{display:grid;grid-template-columns:120px 1fr;gap:.7rem;align-items:start}.warnung-text{color:#a34a12}.beschreibung-vorschlag{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #cfe6d3;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.aufmass-kopf{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.aufmass-kopf h3{margin:.5rem 0}.quelle-wahl{font-size:.85rem;color:var(--tinte-2);display:flex;align-items:center;gap:.4rem}.seg-name{width:100%;min-width:110px}.seg-zahl{width:80px;text-align:right;font-variant-numeric:tabular-nums}.seg-richtung{margin-left:.4rem;font-weight:600;color:var(--tinte-2)}.medien-galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.9rem;margin-top:.5rem}.medien-karte{margin:0;background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);overflow:hidden;box-shadow:var(--schatten);display:flex;flex-direction:column}.medien-vorschau{aspect-ratio:4 / 3;background:#f1f1ed;display:grid;place-items:center;overflow:hidden}.medien-vorschau img{width:100%;height:100%;object-fit:cover}.medien-datei{font-size:1.1rem;font-weight:600;color:var(--tinte-2);text-decoration:none}.medien-karte figcaption{padding:.5rem .6rem;display:grid;gap:.35rem}.medien-kategorie{font-size:.8rem;font-weight:600}.medien-name{font-size:.78rem;color:var(--tinte-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.medien-geo{font-size:.75rem;color:#1c5cab;text-decoration:none;font-variant-numeric:tabular-nums}.medien-notiz{font-size:.8rem;width:100%}.medien-loeschen{font-size:.78rem;color:var(--gefahr);border-color:#eecaca;padding:.2rem .5rem;justify-self:start}.leitfaden-karte{background:var(--flaeche);border:1px solid var(--linie);border-radius:var(--radius);padding:1.1rem 1.3rem;box-shadow:var(--schatten);margin-bottom:1.1rem}.leitfaden-karte>h3{margin-top:0}.leitfaden-punkte{list-style:none;padding:0;display:grid;gap:.9rem}.leitfaden-punkte li{border-top:1px solid var(--linie);padding-top:.75rem}.leitfaden-punkte li p{margin:.25rem 0}.punkt-zustaendig{display:inline-block;margin-left:.6rem;font-size:.78rem;color:var(--tinte-2);background:#f1f1ed;border-radius:999px;padding:.05rem .6rem}.verif-badge{display:inline-block;margin-left:.5rem;font-size:.72rem;font-weight:600;border-radius:999px;padding:.05rem .55rem}.verif-badge.bestaetigt{background:#e2f5e2;color:#006300}.verif-badge.praezisiert{background:#fdf0ea;color:#a34a12}.verif-hinweis{font-size:.85rem;background:#fbf5ee;border-left:3px solid var(--akzent);padding:.5rem .75rem;border-radius:0 6px 6px 0;margin:.5rem 0}.quellen{font-size:.8rem;color:var(--tinte-3)}.bericht-aktionen{margin-bottom:1rem}.bericht{background:#fff;border:1px solid var(--linie);border-radius:var(--radius);padding:2.2rem 2.6rem;max-width:860px;box-shadow:var(--schatten)}.bericht header{border-bottom:3px solid var(--marke);margin-bottom:1.25rem;padding-bottom:.75rem}.bericht h1{font-size:1.35rem}.bericht h2{margin-top:1.5rem;color:var(--marke)}.bericht-meta{color:var(--tinte-2);margin:.15rem 0}.bericht-warnung{font-size:.85rem;color:var(--tinte-2);background:#fff8e8;border:1px solid #f0dfae;border-radius:8px;padding:.5rem .75rem;margin:.6rem 0 0}.bericht table{max-width:560px}.vorformatiert{white-space:pre-wrap}.klein{font-size:.83rem;color:var(--tinte-2)}.knopf-zeile{display:flex;gap:.6rem;flex-wrap:wrap}@media(max-width:640px){.topbar{padding:.55rem .9rem;gap:.5rem}.topbar .marke{font-size:.9rem}.marke-suffix{display:none}.topbar nav{gap:.2rem}.topbar nav button{padding:.3rem .5rem;font-size:.85rem}main{padding:1rem .8rem 3rem}.tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.tabs button{white-space:nowrap;flex:0 0 auto}.seiten-kopf,.filter-leiste{flex-direction:column;align-items:stretch}}@media print{.no-print,.topbar,.tabs{display:none!important}body{background:#fff}main{padding:0;max-width:none}.bericht{border:none;box-shadow:none;padding:0;max-width:none}.bericht section{break-inside:avoid}body.drucke-angebot .nur-druck{display:block}body.drucke-angebot .angebot-briefkopf{display:flex}.vergleich,.angebot-karten{break-inside:avoid}}
