@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;overflow-x:hidden}html{-webkit-text-size-adjust:100%}:root{--bg: #EFEDE8;--surface: #FFFFFF;--sunken: #F8F7F4;--border: #E4E0D9;--border-row: #F2F0EC;--border-mid: #E4E0D9;--border-str: #C9C6BE;--text: #1C1A17;--text-2: #6E675C;--text-3: #767068;--muted: #767068;--faint: #9B948A;--accent: #2C4A63;--accent-dark: #1B3145;--accent-bg: #EDF1F5;--accent-tint: #EDF1F5;--err: #9C4433;--err-bg: #FBF4F2;--warn: #7A6A2E;--warn-bg: #FAF6EA;--ok: #3F6350;--ok-bg: #EFF4F0;--violet: #5b21b6;--violet-bg: #ede9fe;--orange: #8A5223;--orange-bg: #F7E7DC;--font-body: "Instrument Sans", system-ui, sans-serif;--font-display: "Source Serif 4", Georgia, serif;--r-ctl: 10px;--r-card: 14px;--r-pill: 999px;--shadow-sm: 0 1px 2px rgba(28,26,23,.04);--shadow-btn: 0 1px 3px rgba(28,26,23,.12);--shadow-md: 0 1px 2px rgba(28,26,23,.04), 0 8px 28px rgba(28,26,23,.07);--shadow-lg: 0 4px 6px rgba(28,26,23,.06), 0 16px 48px rgba(28,26,23,.12);--se: var(--font-display);--gr: var(--font-body);--ink: var(--text);--meta: var(--text-2);--mute: var(--muted);--hair: var(--border-row);--rule: var(--border);--paper: var(--surface);--sunk: var(--sunken);--ground: var(--bg);--acc: var(--accent);--acc-d: var(--accent-dark);--acc-f: var(--accent-bg);--acc-t: #3E617F;--frist: var(--err);--frist-f: var(--err-bg);--frist-t: #8A5140;--lauf: var(--warn);--lauf-f: var(--warn-bg);--ok-f: var(--ok-bg);--label: var(--muted);--input-border: var(--border-mid);--surface-2: var(--sunken);--border-2: var(--border-row);--muted-2: var(--text-2);--accent-dark-compat: var(--accent-dark)}[data-theme=dark]{--bg: #1C1B19;--surface: #252422;--sunken: #161514;--border: #3A3835;--border-row: #2E2C2A;--border-mid: #4A4744;--border-str: #5E5B57;--text: #F0EEE9;--text-2: #C4C0B8;--text-3: #9E9A93;--muted: #7A7670;--faint: #5E5B57;--accent: #4A88B0;--accent-dark: #8AAEC8;--accent-bg: #1A2D3D;--accent-tint: #0F1E29;--err: #D4725E;--err-bg: #3D1A16;--warn: #C4A848;--warn-bg: #342B0E;--ok: #6BB087;--ok-bg: #1A3320;--violet: #a78bfa;--violet-bg: #2e1a4a;--orange: #D4915A;--orange-bg: #3A1E0A;--shadow-sm: 0 1px 2px rgba(0,0,0,.3);--shadow-btn: 0 1px 2px rgba(0,0,0,.4);--shadow-md: 0 3px 12px rgba(0,0,0,.35);--shadow-lg: 0 12px 40px rgba(0,0,0,.55)}body{font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;line-height:1.2;font-weight:600;font-family:var(--font-display);letter-spacing:-.01em}.app{height:100vh;overflow:hidden;background:var(--bg);color:var(--text);display:grid;grid-template-columns:252px 1fr}.main{padding:28px 40px 64px;min-width:0}@media(max-width:768px){.app{grid-template-columns:1fr;flex:1;min-height:0;height:auto!important;overflow:visible!important}.main{padding:16px 16px 80px}.kpi-grid{grid-template-columns:repeat(2,1fr)}.grid2{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr}.page,.dashboard,.billing-page,.list-page,.docs-container{padding:1rem}.page-header{flex-wrap:wrap;gap:.5rem}.page-hd{gap:10px;margin-bottom:14px}.tabbar{gap:14px;overflow-x:auto;flex-wrap:nowrap}.filter-row{gap:6px}.table-wrap{border-radius:8px}}.page-hd{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px;flex-wrap:wrap}.page-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-header h1{font-size:1.375rem;font-weight:600;color:var(--text)}.h-title{font-size:26px;font-weight:600;letter-spacing:-.015em}.muted{color:var(--muted)}.muted-2{color:var(--text-2)}.lbl{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted)}a.link,.link{color:var(--accent);text-decoration:none;cursor:pointer}a.link:hover,.link:hover{color:var(--accent-dark)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-quiet,.btn-ghost,.btn-icon,.btn-link,.btn-cancel,.btn-danger,.btn-secondary,.btn-red,.btn-blue,.btn-sec,.btn-accent,.btn-primary,.btn{display:inline-flex;align-items:center;gap:7px;border-radius:var(--r-ctl);height:34px;padding:0 14px;font-size:13.5px;font-weight:500;font-family:var(--font-body);border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;line-height:1;transition:background .12s,border-color .12s,box-shadow .12s}.btn-quiet svg,.btn-ghost svg,.btn-icon svg,.btn-link svg,.btn-cancel svg,.btn-danger svg,.btn-secondary svg,.btn-red svg,.btn-blue svg,.btn-sec svg,.btn-accent svg,.btn-primary svg,.btn svg{width:15px;height:15px;flex-shrink:0}.btn-quiet:disabled,.btn-ghost:disabled,.btn-icon:disabled,.btn-link:disabled,.btn-cancel:disabled,.btn-danger:disabled,.btn-secondary:disabled,.btn-red:disabled,.btn-blue:disabled,.btn-sec:disabled,.btn-accent:disabled,.btn-primary:disabled,.btn:disabled{opacity:.45;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover:not(:disabled){background:var(--accent-dark)}.btn-accent{background:var(--accent);color:#fff;box-shadow:var(--shadow-btn)}.btn-accent:hover:not(:disabled){background:var(--accent-dark)}.btn-sec{background:var(--surface);color:var(--text-2);border-color:var(--border-mid);box-shadow:var(--shadow-sm)}.btn-sec:hover:not(:disabled){background:var(--bg);border-color:var(--border-str)}.btn-blue{background:var(--accent-bg);color:var(--accent-dark);border-color:#9dcbe3}.btn-blue:hover:not(:disabled){background:#d0e8f4}.btn-red{background:var(--err-bg);color:var(--err);border-color:#e8bab4}.btn-red:hover:not(:disabled){background:#f0ccc7}.btn-secondary{background:var(--surface);color:var(--text-2);border-color:var(--border-mid);box-shadow:var(--shadow-sm)}.btn-secondary:hover:not(:disabled){background:var(--bg);border-color:var(--border-str)}.btn-danger{background:var(--err-bg);color:var(--err);border-color:#e8bab4}.btn-danger:hover:not(:disabled){background:#f0ccc7}.btn-cancel{background:transparent;color:var(--muted)}.btn-cancel:hover:not(:disabled){background:var(--sunken);color:var(--text)}.btn-link{background:transparent;color:var(--accent);border-color:transparent;padding-left:0;padding-right:0}.btn-link:hover:not(:disabled){color:var(--accent-dark);text-decoration:underline}.btn-icon{height:auto;padding:.375rem;background:transparent;color:var(--muted);border-color:transparent;border-radius:6px}.btn-icon:hover:not(:disabled){background:var(--sunken);color:var(--text)}.btn-sm{height:28px;padding:0 10px;font-size:12.5px}.card{background:var(--surface);border-radius:var(--r-card);padding:18px;box-shadow:var(--shadow-md)}.card+.card{margin-top:16px}.section{background:var(--surface);border-radius:10px;padding:16px;box-shadow:var(--shadow-md)}.dot{width:6px;height:6px;border-radius:999px;flex:none}.chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:var(--r-pill);font-size:12px;font-weight:500;white-space:nowrap}.pill{display:inline-flex;align-items:center;font-size:11px;font-weight:600;padding:3px 10px;border-radius:var(--r-pill);white-space:nowrap}.pill.blue,.chip.blue{background:var(--accent-bg);color:var(--accent-dark)}.pill.amber{background:var(--warn-bg);color:var(--warn)}.pill.green,.chip.green{background:var(--ok-bg);color:var(--ok)}.pill.red,.chip.red{background:var(--err-bg);color:var(--err)}.pill.gray,.chip.gray{background:var(--border-row);color:var(--text-2)}.pill.violet{background:var(--violet-bg, #ede9fe);color:var(--violet, #5b21b6)}.badge,.badge-kuerzel,.badge-herkunft,.badge-role-mitarbeiter,.badge-role-kunde,.badge-role-partner,.badge-role-supervisor,.badge-role-admin,.badge-typ-unbekannt,.badge-typ-partner,.badge-typ-kunde,.badge-typ-mitarbeiter,.badge-no,.badge-yes,.badge-homeoffice,.badge-krankheit,.badge-ferien,.badge-not_configured,.badge-disconnected,.badge-expired,.badge-connected,.badge-draft,.badge-billed,.badge-rejected,.badge-pending,.badge-approved,.badge-run-cancelled,.badge-run-failed,.badge-run-exported,.badge-run-exporting,.badge-run-review,.badge-run-draft,.badge-priority-hoch,.badge-priority-normal,.badge-priority-tief,.badge-status-closed,.badge-status-done,.badge-status-waiting,.badge-status-in_arbeit,.badge-status-geplant,.badge-status-planning,.badge-status-offen{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10.5px;font-weight:600;border-radius:var(--r-pill);white-space:nowrap;line-height:1;background:var(--border);color:var(--text-2)}.badge-neutral,.badge-herkunft,.badge-role-mitarbeiter,.badge-role-kunde,.badge-typ-unbekannt,.badge-no,.badge-not_configured,.badge-disconnected,.badge-draft,.badge-run-cancelled,.badge-run-draft,.badge-priority-tief{background:var(--border-row);color:var(--text-2)}.badge-info,.badge-role-supervisor,.badge-typ-mitarbeiter,.badge-ferien,.badge-run-review,.badge-priority-normal{background:var(--accent-bg);color:var(--accent-dark)}.badge-success,.badge-typ-kunde,.badge-yes,.badge-connected,.badge-billed,.badge-approved,.badge-run-exported,.badge-status-done{background:var(--ok-bg);color:var(--ok)}.badge-warning,.badge-expired,.badge-pending,.badge-run-exporting{background:var(--warn-bg);color:var(--warn)}.badge-error,.badge-role-admin,.badge-krankheit,.badge-rejected,.badge-run-failed,.badge-priority-hoch{background:var(--err-bg);color:var(--err)}.badge-purple,.badge-role-partner,.badge-typ-partner,.badge-homeoffice{background:var(--violet-bg, #ede9fe);color:var(--violet, #5b21b6)}.badge-orange{background:var(--orange-bg, #fef3c7);color:var(--orange, #92400e)}.badge-status-offen{background:var(--border-row);color:var(--text-3)}.badge-status-planning{background:var(--violet-bg);color:var(--violet)}.badge-status-geplant{background:var(--accent-bg);color:var(--accent-dark)}.badge-status-in_arbeit{background:var(--orange-bg);color:var(--orange)}.badge-status-waiting{background:var(--warn-bg);color:var(--warn)}.badge-status-closed{background:var(--border-row);color:var(--text-3)}.badge-kuerzel{background:var(--sunken);color:var(--text-2);font-variant-numeric:tabular-nums}.tbl,.data-table{width:100%;border-collapse:collapse;font-size:13.5px}.tbl th,.data-table th{text-align:left;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted);padding:0 8px;height:34px;border-bottom:1px solid var(--border);white-space:nowrap;background:var(--bg)}.tbl td,.data-table td{padding:0 8px;height:42px;border-bottom:1px solid var(--border-row);vertical-align:middle}.tbl tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:0}.tbl tbody tr:hover,.data-table tbody tr:hover{background:var(--bg)}.tbl.clickable tbody tr,.clickable.data-table tbody tr{cursor:pointer}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--r-card)}.data-table th{background:var(--bg)}.data-table td.col-badge,.data-table td.col-status,.data-table td.col-actions,.data-table th.col-badge,.data-table th.col-status,.data-table th.col-actions{white-space:nowrap;width:1%}.data-table td.col-text{overflow-wrap:break-word;word-break:break-word;max-width:280px}.data-table td:last-child,.data-table th:last-child{padding-right:14px}.data-table tr:last-child td{border-bottom:none}.inp{width:100%;min-height:36px;padding:0 11px;font-family:var(--font-body);font-size:13px;color:var(--text);background:var(--surface);border:1px solid var(--border-mid);border-radius:var(--r-ctl);box-shadow:0 1px 2px #2321200a}.inp::placeholder{color:var(--faint)}.inp:hover{border-color:var(--border-str)}.inp:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2c4a631f}select.inp{cursor:pointer}.field label{display:block;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}.field+.field{margin-top:14px}.filter-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:1rem}input.filter-input,select.filter-input{height:32px;padding:0 10px;border:1px solid var(--border-mid);border-radius:var(--r-ctl);font-size:13px;background:var(--surface);color:var(--text)}input.filter-input:focus,select.filter-input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.tabbar{display:flex;gap:22px;border-bottom:1px solid var(--border);margin-bottom:22px}.tab{padding:10px 2px;font-size:14px;font-weight:500;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;border-top:none;border-left:none;border-right:none;margin-bottom:-1px;background:none;font-family:var(--font-body)}.tab:hover{color:var(--accent)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;align-items:start}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kpi-card{background:var(--surface);border-radius:var(--r-card);padding:14px 16px;box-shadow:var(--shadow-md)}.kpi-card .big{font-family:var(--font-display);font-size:28px;font-weight:600;letter-spacing:-.02em;margin:6px 0 2px}.page,.dashboard,.billing-page,.list-page,.docs-container{padding:1.75rem 2rem;width:100%;box-sizing:border-box}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.c-blau{background:#edf1f5;color:#1b3145}.c-teal{background:#dcefec;color:#1f6156}.c-gruen{background:#e6eee6;color:#3d6144}.c-sand{background:#f7ebd5;color:#7a5416}.c-kupfer{background:#f7e7dc;color:#8a5223}.c-ziegel{background:#f7e3df;color:#8a3a2d}.c-pflaume{background:#efe6f2;color:#5b3a63}.c-grau{background:#e8e6e1;color:#514e49}.c-off{background:#f3f2ef;color:#6b6862;box-shadow:inset 0 0 0 1px #e8e6e1}.chip-lg{height:28px;padding:0 12px;font-size:13px}.swatch{width:22px;height:22px;border-radius:999px;border:1px solid rgba(35,33,32,.1);cursor:pointer;flex:none;transition:box-shadow .1s}.swatch:hover{box-shadow:0 0 0 2px var(--border-str)}.swatch-on{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--accent)!important}.icobox{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--border);border-radius:var(--r-ctl);background:var(--surface);color:var(--text-2);cursor:pointer;flex:none;transition:border-color .1s,color .1s,background .1s}.icobox svg{pointer-events:none}.icobox:hover{border-color:var(--border-str);color:var(--text)}.icobox-on{border-color:var(--accent);background:var(--accent-tint);color:var(--accent-dark);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:#2321200d;color:var(--text)}.btn-quiet{background:transparent;color:var(--err)}.btn-quiet:hover:not(:disabled){background:var(--err-bg)}.none{color:var(--faint);font-size:.8125rem}.acts{display:flex;align-items:center;gap:4px}
