:root{--bg:#f4f6f8;--karte:#fff;--text:#1a2330;--muted:#5b6b7c;--rand:#d9e0e7;--akzent:#0f766e;--akzent-hell:#e6f4f2;--rot:#c62828;--rot-hell:#fdecea;--gelb:#8a5a00;--gelb-hell:#fff4d6;--blau:#1d4ed8;--blau-hell:#e3ebfd;--gruen:#1b7f3b;--gruen-hell:#e3f5e8;--lila:#6d28d9;--lila-hell:#ede7fb;--grau:#55616e;--grau-hell:#eceff2;--schatten:0 1px 3px #10182814;--radius:10px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:15px}a{color:var(--akzent);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 12px;font-size:22px}h2{margin:0 0 10px;font-size:17px}h3{margin:0 0 8px;font-size:15px}button,input,select,textarea{font:inherit;color:inherit}input,select,textarea{border:1px solid var(--rand);background:#fff;border-radius:8px;min-width:0;padding:8px 10px}input:focus,select:focus,textarea:focus{outline:2px solid var(--akzent);outline-offset:0;border-color:var(--akzent)}textarea{resize:vertical;width:100%;min-height:70px}label{color:var(--muted);margin-bottom:4px;font-size:13px;display:block}.feld{flex-direction:column;gap:2px;display:flex}.feld input,.feld select{width:100%}.btn{border:1px solid var(--rand);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;padding:8px 14px}.btn:hover{background:#f7f9fb}.btn.primary{background:var(--akzent);border-color:var(--akzent);color:#fff;font-weight:600}.btn.primary:hover{background:#0b5f59}.btn.gefahr{color:var(--rot);border-color:#f1c0c0}.btn.klein{padding:4px 10px;font-size:13px}.btn.leise{color:var(--akzent);background:0 0;border-color:#0000}.btn:disabled{opacity:.5;cursor:default}.zeile{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.zeile.rechts{justify-content:flex-end}.raster{gap:10px;display:grid}.raster.zwei{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.raster.drei{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.karte{background:var(--karte);border:1px solid var(--rand);border-radius:var(--radius);box-shadow:var(--schatten);padding:14px 16px}.karte+.karte{margin-top:12px}.muted{color:var(--muted)}.klein{font-size:13px}.winzig{font-size:12px}.fett{font-weight:600}.mono{font-variant-numeric:tabular-nums}.pill{white-space:nowrap;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.pill.grau{background:var(--grau-hell);color:var(--grau)}.pill.gelb{background:var(--gelb-hell);color:var(--gelb)}.pill.blau{background:var(--blau-hell);color:var(--blau)}.pill.gruen{background:var(--gruen-hell);color:var(--gruen)}.pill.rot{background:var(--rot-hell);color:var(--rot)}.pill.lila{background:var(--lila-hell);color:var(--lila)}.hinweis{background:var(--gelb-hell);color:var(--gelb);border-radius:8px;padding:10px 12px}.hinweis.rot{background:var(--rot-hell);color:var(--rot)}.hinweis.gruen{background:var(--gruen-hell);color:var(--gruen)}.hinweis.info{background:var(--blau-hell);color:var(--blau)}.leer{text-align:center;color:var(--muted);padding:24px}.kopf{color:#fff;z-index:20;background:#0f2f2c;align-items:center;gap:18px;height:52px;padding:0 16px;display:flex;position:sticky;top:0}.kopf .marke{letter-spacing:.3px;align-items:center;gap:8px;font-weight:700;display:flex}.kopf .marke small{opacity:.7;font-weight:400}.kopf nav{flex:1;gap:4px;display:flex}.kopf nav a{color:#cfe3e0;border-radius:8px;padding:8px 12px;font-weight:500}.kopf nav a:hover{background:#ffffff14;text-decoration:none}.kopf nav a.aktiv{color:#fff;background:#ffffff29}.kopf .benutzer{color:#cfe3e0;align-items:center;gap:10px;font-size:13px;display:flex}.kopf .benutzer button{color:#fff;background:0 0;border-color:#ffffff4d}.inhalt{max-width:1400px;margin:0 auto;padding:16px}.inhalt.breit{max-width:none}table.liste{border-collapse:collapse;border:1px solid var(--rand);border-radius:var(--radius);background:#fff;width:100%;overflow:hidden}table.liste th,table.liste td{text-align:left;border-bottom:1px solid var(--rand);vertical-align:top;padding:9px 10px}table.liste th{text-transform:uppercase;letter-spacing:.4px;color:var(--muted);background:#f8fafb;font-size:12px;font-weight:600}table.liste tr:last-child td{border-bottom:0}table.liste tr.klick{cursor:pointer}table.liste tr.klick:hover td{background:#f3f8f7}.plan{border:1px solid var(--rand);border-radius:var(--radius);background:#fff;grid-template-columns:150px repeat(6,minmax(140px,1fr));display:grid;overflow:hidden}.plan .zelle{border-right:1px solid var(--rand);border-bottom:1px solid var(--rand);min-height:64px;padding:4px}.plan .zelle.kopfz{background:#f8fafb;min-height:0;padding:8px;font-weight:600}.plan .zelle.heute{background:#fbfdf3}.plan .zelle.ziel{outline:2px dashed var(--akzent);outline-offset:-3px;background:var(--akzent-hell)}.plan .team{background:#fbfcfd;padding:8px;font-weight:600}.plan .team small{color:var(--muted);font-weight:400;display:block}.plan .team .balken{border-radius:2px;height:4px;margin-top:6px}.termin-karte{cursor:grab;background:var(--blau-hell);color:#1e293b;border:1px solid #c9d6fb;border-radius:7px;margin-bottom:4px;padding:5px 7px;font-size:12px;line-height:1.3}.termin-karte.in_montage{background:var(--lila-hell);border-color:#d9ccf6}.termin-karte.abgeschlossen{background:var(--gruen-hell);opacity:.85;border-color:#c5e8cf}.termin-karte.abgesagt{background:var(--grau-hell);opacity:.6;text-decoration:line-through}.termin-karte.offen{background:var(--gelb-hell);border-style:dashed;border-color:#f0dfa8}.termin-karte:hover{filter:brightness(.97)}.termin-karte .k1{justify-content:space-between;gap:6px;font-weight:600;display:flex}.termin-karte .k2{color:#334155}.seitenleiste{border:1px solid var(--rand);border-radius:var(--radius);background:#fff;max-height:calc(100vh - 140px);padding:10px;overflow:auto}.planen-karte{border:1px solid var(--rand);cursor:grab;background:#fff;border-radius:7px;margin-bottom:6px;padding:6px 8px;font-size:13px}.planen-karte:hover{border-color:var(--akzent)}.planen-karte .k1{font-weight:600}.layout-plan{grid-template-columns:1fr 300px;align-items:start;gap:12px;display:grid}@media (width<=1000px){.layout-plan{grid-template-columns:1fr}.seitenleiste{max-height:none}}.dialog-hintergrund{z-index:40;background:#0f172a73;justify-content:center;align-items:flex-start;padding:40px 12px;display:flex;position:fixed;inset:0;overflow:auto}.dialog{background:#fff;border-radius:12px;width:min(560px,100%);padding:18px 20px;box-shadow:0 20px 50px #00000040}.dialog h2{margin-bottom:14px}.dialog .aktionen{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.auftrag-kopf{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.kv{grid-template-columns:max-content 1fr;gap:4px 14px;font-size:14px;display:grid}.kv dt{color:var(--muted)}.kv dd{margin:0}.verlauf{margin:0;padding:0;list-style:none}.verlauf li{border-bottom:1px solid #eef1f4;grid-template-columns:150px 1fr;gap:10px;padding:6px 0;font-size:13px;display:grid}.verlauf li:last-child{border-bottom:0}.verlauf .wann{color:var(--muted);white-space:nowrap}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--rand);cursor:pointer;background:#fff;border-radius:999px;padding:4px 12px;font-size:13px}.chip.aktiv{background:var(--akzent);border-color:var(--akzent);color:#fff}.tabs{border-bottom:1px solid var(--rand);gap:2px;margin-bottom:12px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px}.tabs button.aktiv{color:var(--akzent);border-bottom-color:var(--akzent);font-weight:600}.anmeldung{justify-content:center;align-items:center;min-height:100%;padding:20px;display:flex}.anmeldung .karte{width:min(400px,100%)}.lade{text-align:center;color:var(--muted);padding:30px}@media (width<=720px){.kopf{flex-wrap:wrap;gap:8px;height:auto;padding:8px 10px}.kopf nav{order:3;width:100%;overflow-x:auto}.inhalt{padding:10px}.verlauf li{grid-template-columns:1fr;gap:2px}table.liste th:nth-child(n+5),table.liste td:nth-child(n+5){display:none}}
