:root{--mint:#95cfc3;--petrol:#3b788a;--dunkel:#0f3553;--bg:#f6f8f9;--karte:#fff;--text:#17242e;--leise:#5b6b76;--rand:#d6dee3;--rot:#b3261e;--gelb:#fff4d6;--gruen:#e3f3ee;color:var(--text);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--bg:#0d1a22;--karte:#142530;--text:#e8eef1;--leise:#9fb1bb;--rand:#2a3d49;--gelb:#3a3216;--gruen:#173a31}}*{box-sizing:border-box}body{background:var(--bg);margin:0}header{z-index:5;padding:calc(env(safe-area-inset-top) + 10px) 16px 10px;background:var(--dunkel);color:#fff;align-items:center;gap:12px;display:flex;position:sticky;top:0}.marke{color:#fff;font-size:1.15rem;font-weight:800;text-decoration:none}.marke span{color:var(--mint)}.sync{background:var(--petrol);color:#fff;border:0;border-radius:99px;margin-left:auto;padding:6px 12px;font-size:.9rem}.sync.offline{background:#6b7780}.sync.fehler{background:var(--rot)}.ich{opacity:.85;font-size:.85rem}main{max-width:760px;margin:0 auto;padding:16px 16px 80px}footer{max-width:760px;color:var(--leise);margin:0 auto;padding:0 16px 32px;font-size:.8rem}h2{margin:28px 0 8px;font-size:1.15rem}h3{color:var(--petrol);margin:22px 0 6px;font-size:1.05rem}a{color:var(--petrol)}.pfad{margin:0 0 8px;font-size:.9rem}.zeile{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.zeile input[type=search]{flex:1;min-width:160px}input,select,button,.knopf{font:inherit;font-size:16px}input,select{border:1px solid var(--rand);background:var(--karte);width:100%;color:var(--text);border-radius:8px;padding:10px}button,.knopf{border:1px solid var(--petrol);background:var(--karte);color:var(--petrol);cursor:pointer;border-radius:8px;padding:10px 14px;text-decoration:none;display:inline-block}button.haupt{background:var(--petrol);color:#fff}button.klein{padding:6px 10px;font-size:.85rem}button:disabled{opacity:.5}fieldset{border:1px solid var(--rand);background:var(--karte);border-radius:10px;margin:12px 0;padding:8px 12px 12px}legend{color:var(--leise);padding:0 6px;font-size:.9rem;font-weight:600}.feld{margin:10px 0}.feld label{margin-bottom:4px;font-size:.9rem;font-weight:500;display:block}.feld small{color:var(--leise);margin-top:4px;font-size:.78rem;display:block}.feld.fehlt input,.feld.fehlt select{background:var(--gelb);border-color:#d08a00}.pflicht{color:#d08a00;margin-left:4px}.einheit{color:var(--leise);font-weight:400}.janein{gap:8px;display:flex}.janein button{flex:1}.janein button.an{background:var(--petrol);color:#fff}.karten{gap:8px;margin:8px 0;padding:0;list-style:none;display:grid}.karten a{background:var(--karte);border:1px solid var(--rand);color:var(--text);border-radius:10px;gap:2px;padding:12px;text-decoration:none;display:grid}.karten span{color:var(--leise);font-size:.88rem}.status[data-status=kalkulationsbereit],.status[data-status=kalkuliert]{color:#1b7f5f}.leer{color:var(--leise)}.banner{background:var(--gelb);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex}.banner.warn{color:#5c1410;background:#fde4e1}.banner.konflikt p{flex-basis:100%;margin:0}.trello{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;font-size:.92rem;display:flex}.auswahl{border:1px solid var(--rand);border-radius:8px;max-height:300px;padding:0;list-style:none;overflow:auto}.auswahl button{text-align:left;border:0;border-bottom:1px solid var(--rand);border-radius:0;width:100%}.pruefung{background:var(--gelb);border-radius:10px;margin:12px 0;padding:12px}.pruefung.ok{background:var(--gruen)}.meldung{color:var(--rot)}.kalk{background:var(--karte);border:1px solid var(--rand);border-radius:10px;margin:16px 0;padding:12px}.tabelle-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{border-bottom:1px solid var(--rand);text-align:left;vertical-align:top;padding:6px}td.z{text-align:right;white-space:nowrap}tr.hw td{color:var(--leise);font-size:.8rem}.summen{grid-template-columns:1fr auto;gap:4px 12px;display:grid}.summen dd{text-align:right;margin:0}p.klein{color:var(--leise);font-size:.8rem}.fotos{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;margin:10px 0;display:grid}.fotos figure{margin:0}.fotos img{aspect-ratio:1;object-fit:cover;border-radius:8px;width:100%}.fotos .ok{aspect-ratio:1;background:var(--gruen);border-radius:8px;place-items:center;font-size:2rem;display:grid}.fotos figcaption{color:var(--leise);font-size:.75rem}.gefahr{margin-top:40px}.hinweis{color:var(--leise);margin:0;font-size:.85rem}
