:root{--bg:#f4f5f7;--flaeche:#fff;--rand:#dcdfe4;--text:#1c1f23;--text-schwach:#61666d;--akzent:#1f5f8b;--akzent-hell:#e8f1f7;--gruen:#1e7d44;--gruen-hell:#e6f4ec;--gelb:#8a6100;--gelb-hell:#fdf3dd;--rot:#a32a2a;--rot-hell:#fbeaea;--radius:8px}@media (prefers-color-scheme:dark){:root{--bg:#16181c;--flaeche:#1e2126;--rand:#333941;--text:#e8eaed;--text-schwach:#9aa1ab;--akzent:#6fb3e0;--akzent-hell:#1c2c38;--gruen:#6cc48d;--gruen-hell:#17301f;--gelb:#d8ad4e;--gelb-hell:#322813;--rot:#e08585;--rot-hell:#341c1c}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}a{color:var(--akzent);text-decoration:none}a:hover{text-decoration:underline}.kopf{background:var(--flaeche);border-bottom:1px solid var(--rand);z-index:10;position:sticky;top:0}.kopf-inhalt{flex-wrap:wrap;align-items:center;gap:24px;max-width:1180px;min-height:56px;margin:0 auto;padding:0 20px;display:flex}.marke{letter-spacing:-.01em;color:var(--text);font-weight:700}.marke:hover{text-decoration:none}.nav{flex-wrap:wrap;flex:1;gap:18px;display:flex}.nav a{color:var(--text-schwach);border-bottom:2px solid #0000;padding:4px 0}.nav a:hover{color:var(--text);text-decoration:none}.nav a.aktiv{color:var(--text);border-bottom-color:var(--akzent)}.rolle-anzeige{color:var(--text-schwach);align-items:center;gap:10px;font-size:13px;display:flex}main{max-width:1180px;margin:0 auto;padding:24px 20px 64px}h1{letter-spacing:-.01em;margin:0 0 4px;font-size:22px}h2{margin:28px 0 10px;font-size:16px}.unterzeile{color:var(--text-schwach);margin:0 0 22px;font-size:14px}.karte{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:16px 18px}.kacheln{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:26px;display:grid}.kachel{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);padding:14px 16px}.kachel .zahl{letter-spacing:-.02em;font-size:26px;font-weight:650}.kachel .titel{color:var(--text-schwach);margin-top:2px;font-size:13px}.tabelle-rahmen{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--text-schwach);border-bottom:1px solid var(--rand);white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:600}td{border-bottom:1px solid var(--rand);vertical-align:middle;padding:10px 14px}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--bg)}.leer{text-align:center;color:var(--text-schwach);padding:32px 16px}.marker{white-space:nowrap;border-radius:20px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.marker.gruen{background:var(--gruen-hell);color:var(--gruen)}.marker.gelb{background:var(--gelb-hell);color:var(--gelb)}.marker.grau{background:var(--bg);color:var(--text-schwach);border:1px solid var(--rand)}.marker.blau{background:var(--akzent-hell);color:var(--akzent)}.marker.rot{background:var(--rot-hell);color:var(--rot)}.fortschritt{align-items:center;gap:8px;min-width:120px;display:flex}.balken{background:var(--bg);border:1px solid var(--rand);border-radius:3px;flex:1;min-width:60px;height:6px;overflow:hidden}.balken>span{background:var(--gruen);height:100%;display:block}.fortschritt small{color:var(--text-schwach);white-space:nowrap;font-variant-numeric:tabular-nums}label{margin-bottom:5px;font-size:13px;font-weight:600;display:block}input[type=text],input[type=date],input[type=number],input[type=password],input[type=email],select,textarea{border:1px solid var(--rand);background:var(--flaeche);width:100%;color:var(--text);font:inherit;border-radius:6px;padding:8px 10px;font-size:14px}input:focus,select:focus,textarea:focus{outline:2px solid var(--akzent);outline-offset:-1px;border-color:var(--akzent)}.feld{margin-bottom:14px}.feld .hinweis{color:var(--text-schwach);margin-top:4px;font-size:12px;font-weight:400}.feld-reihe{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;display:grid}button,.knopf{border:1px solid var(--akzent);background:var(--akzent);color:#fff;font:inherit;cursor:pointer;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-block}button:hover,.knopf:hover{filter:brightness(1.08);text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}button.still,.knopf.still{background:var(--flaeche);color:var(--text);border-color:var(--rand)}button.klein{padding:4px 10px;font-size:13px}.meldung{border:1px solid;border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.meldung.fehler{background:var(--rot-hell);color:var(--rot);border-color:var(--rot)}.meldung.ok{background:var(--gruen-hell);color:var(--gruen);border-color:var(--gruen)}.meldung.hinweis{background:var(--gelb-hell);color:var(--gelb);border-color:var(--gelb)}.schritt{border-bottom:1px solid var(--rand);align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.schritt:last-child{border-bottom:none}.schritt.fertig .schritt-text{color:var(--text-schwach)}.schritt-haken{border:1.5px solid var(--rand);background:var(--flaeche);color:#0000;border-radius:5px;flex-shrink:0;place-items:center;width:22px;height:22px;margin-top:1px;padding:0;font-size:14px;line-height:1;display:grid}.schritt.fertig .schritt-haken{background:var(--gruen);border-color:var(--gruen);color:#fff}.schritt-mitte{flex:1;min-width:0}.schritt-text{font-weight:500}.schritt-meta{color:var(--text-schwach);margin-top:2px;font-size:12px}.filter{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:16px;display:flex}.filter .feld{min-width:150px;margin-bottom:0}.datenliste{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 24px;display:grid}.datenliste div{min-width:0}.datenliste dt{color:var(--text-schwach);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.datenliste dd{overflow-wrap:anywhere;margin:2px 0 0}.login-huelle{place-items:center;min-height:100vh;padding:20px;display:grid}.login-karte{background:var(--flaeche);border:1px solid var(--rand);border-radius:var(--radius);width:100%;max-width:380px;padding:28px}
