:root{--farbe-primaer: #1d3557;--farbe-primaer-hell: #457b9d;--farbe-hintergrund: #f1f4f8;--farbe-flaeche: #ffffff;--farbe-text: #1c1f26;--farbe-text-schwach: #5b6472;--farbe-rand: #d8dee6;--gruen: #2a9d54;--gelb: #e9a020;--rot: #d64545;--grau: #9aa3b0;font-family:-apple-system,Segoe UI,Roboto,sans-serif;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--farbe-hintergrund);color:var(--farbe-text)}#root{min-height:100vh;display:flex;flex-direction:column}button{font:inherit;cursor:pointer}input{font:inherit}.seite{max-width:480px;width:100%;margin:0 auto;padding:16px 16px 96px;flex:1}.seite-breit{max-width:1400px;padding-bottom:32px}.karte{background:var(--farbe-flaeche);border:1px solid var(--farbe-rand);border-radius:12px;padding:16px;margin-bottom:16px}.titel{font-size:1.3rem;font-weight:700;margin:0 0 4px}.untertitel{color:var(--farbe-text-schwach);margin:0 0 16px;font-size:.95rem}.feld{margin-bottom:14px}.feld label{display:block;font-size:.85rem;color:var(--farbe-text-schwach);margin-bottom:4px}.feld input,.feld select{width:100%;padding:10px 12px;border:1px solid var(--farbe-rand);border-radius:8px;font-size:1rem}.block-zeile{display:grid;grid-template-columns:1fr 1fr;gap:12px}.button{display:block;width:100%;padding:14px;border:none;border-radius:10px;background:var(--farbe-primaer);color:#fff;font-weight:600;font-size:1rem;margin-top:8px}.button.sekundaer{background:var(--farbe-flaeche);color:var(--farbe-primaer);border:1px solid var(--farbe-primaer-hell)}.button:disabled{opacity:.6;cursor:not-allowed}.fehler{background:#fdeaea;color:var(--rot);border:1px solid #f3c6c6;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:.9rem}.erfolg{background:#e9f7ee;color:var(--gruen);border:1px solid #c3e9d1;border-radius:8px;padding:10px 12px;margin-bottom:14px;font-size:.9rem}.kopf{background:var(--farbe-primaer);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between}.kopf .name{font-weight:600}.kopf .rolle{font-size:.8rem;opacity:.85}.kopf button{background:transparent;border:1px solid rgba(255,255,255,.5);color:#fff;border-radius:8px;padding:6px 10px;font-size:.85rem}.tabs{display:flex;gap:8px;margin-bottom:16px}.tabs a,.tabs button{flex:1;padding:10px;border-radius:8px;border:1px solid var(--farbe-rand);background:var(--farbe-flaeche);color:var(--farbe-text-schwach);font-weight:600;text-align:center;text-decoration:none}.tabs a.aktiv,.tabs button.aktiv{background:var(--farbe-primaer);border-color:var(--farbe-primaer);color:#fff}.tag-zeile{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--farbe-rand)}.tag-zeile:last-child{border-bottom:none}.tag-datum{font-weight:600}.tag-info{font-size:.8rem;color:var(--farbe-text-schwach)}.ampel{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600}.ampel .punkt{width:12px;height:12px;border-radius:50%;display:inline-block}.split-zeile{display:flex;align-items:center;gap:10px;margin-bottom:10px}.split-zeile .name{flex:1;font-size:.9rem}.split-zeile input{width:80px;padding:8px;border:1px solid var(--farbe-rand);border-radius:8px;text-align:right}.split-summe{font-size:.85rem;color:var(--farbe-text-schwach);margin-top:-4px;margin-bottom:14px}.hinweis{text-align:center;padding:40px 16px;color:var(--farbe-text-schwach)}.chip-liste{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.chip{display:inline-flex;align-items:center;gap:6px;background:var(--farbe-hintergrund);border:1px solid var(--farbe-rand);border-radius:20px;padding:6px 10px;font-size:.85rem}.chip button{border:none;background:transparent;color:var(--rot);font-weight:700;padding:0 2px;line-height:1}.chip.zieh{cursor:grab;background:var(--farbe-flaeche)}.drop-zone{border-style:dashed}.zuweisen-zeile{display:flex;gap:8px}.zuweisen-zeile select{flex:1;padding:8px;border:1px solid var(--farbe-rand);border-radius:8px}.zuweisen-zeile .button{width:auto;margin-top:0;padding:8px 14px}.uebersicht-tabelle{width:100%;overflow-x:auto}.uebersicht-tabelle table{width:100%;border-collapse:collapse;font-size:.9rem}.uebersicht-tabelle th,.uebersicht-tabelle td{padding:10px 12px;text-align:center;border-bottom:1px solid var(--farbe-rand);white-space:nowrap}.uebersicht-tabelle tbody tr:hover{background:var(--farbe-hintergrund)}.uebersicht-tabelle th:first-child,.uebersicht-tabelle td:first-child{text-align:left}.mitarbeiter-link{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;font-weight:600;padding:0;text-align:left;color:var(--farbe-primaer);text-decoration:underline}.punkt-klein{display:inline-block;width:14px;height:14px;border-radius:50%}.tag-detail{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--farbe-rand)}.kennzahl-zeile{display:flex;gap:24px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--farbe-rand)}.kennzahl-label{font-size:.8rem;color:var(--farbe-text-schwach)}.kennzahl-wert{font-size:1.4rem;font-weight:700}.kennzahl-wert.kennzahl-rot{color:var(--rot)}.saldo-rot{color:var(--rot);font-weight:700}.zeitraum-auswahl{font-weight:400;font-size:.85rem;padding:4px;border:1px solid var(--farbe-rand);border-radius:6px}.zurueck-link{display:inline-block;margin-bottom:12px;color:var(--farbe-primaer);text-decoration:none;font-weight:600}.sortierbar{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.stunden-chart{width:100%;overflow-x:auto;margin-bottom:16px}.chart-gitter{stroke:var(--farbe-rand);stroke-width:1}.chart-achse-text{font-size:9px;fill:var(--farbe-text-schwach)}.chart-wochenende{fill:var(--farbe-hintergrund)}.chart-balken{fill:var(--farbe-primaer-hell)}.chart-balken-unter{fill:var(--rot)}.chart-balken-ueber{fill:#8a5cd6}.chart-balken-wochenende-arbeit{fill:var(--gelb)}.chart-balken-fehlend{fill:var(--rot)}.chart-soll-linie{fill:none;stroke:var(--farbe-text);stroke-width:1.5;stroke-dasharray:4 3}.chart-achsenbruch line{stroke:var(--farbe-text-schwach);stroke-width:1.5}.brotkrumen{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:14px;font-size:.9rem}.brotkrumen button{border:none;background:transparent;color:var(--farbe-primaer);font-weight:600;padding:0;text-decoration:underline}.brotkrumen button:disabled{color:var(--farbe-text);text-decoration:none;cursor:default;font-weight:700}.brotkrumen .trenner{color:var(--farbe-text-schwach)}.kinder-liste{display:flex;flex-direction:column}.kind-zeile{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:12px 4px;border:none;border-bottom:1px solid var(--farbe-rand);background:transparent;text-align:left;font:inherit;color:var(--farbe-text)}.kind-zeile:hover{background:var(--farbe-hintergrund)}.kind-zeile .name{display:flex;align-items:center;gap:8px;font-weight:600}.absenz-knoepfe{display:flex;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--farbe-rand)}.absenz-knoepfe .button{margin-top:0}.drop-zone-datei{border:2px dashed var(--farbe-rand);border-radius:10px;padding:20px;text-align:center;margin-bottom:14px;color:var(--farbe-text-schwach)}.drop-zone-datei.aktiv{border-color:var(--farbe-primaer-hell);background:var(--farbe-hintergrund)}.drop-zone-datei p{margin:0 0 10px}.datei-liste{display:flex;flex-direction:column}.chart-abweichungen{display:flex;flex-direction:column;margin-bottom:16px;font-size:.85rem}.chart-abweichungen .zeile{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--farbe-rand)}.login-wrapper{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}.login-karte{width:100%;max-width:380px;background:var(--farbe-flaeche);border-radius:16px;padding:28px 24px;box-shadow:0 10px 30px #1d35571f}
