:root{--apt-blau: #2b5783;--apt-orange: #f0851c;--apt-grau: #595554;--font: system-ui, -apple-system, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace;--ground: #eef1f6;--surface: #ffffff;--surface-2: #e8ecf2;--border: #dee4eb;--border-stark: #c2ccd8;--text: #212a34;--text-muted: #5d6a79;--muted: var(--text-muted);--brand: var(--apt-blau);--brand-ink: #234a70;--brand-weich: #e7edf4;--accent: var(--apt-orange);--accent-ink: #a45a0a;--accent-weich: #fcecd8;--btn-bg: var(--apt-blau);--btn-bg-hover: #234a70;--ok: #22754a;--ok-bg: #e1f0e8;--warn: #95690e;--warn-bg: #f6eed5;--crit: #b23227;--crit-bg: #f9e7e4;--info: #4a6d99;--info-bg: #e8edf5;--side-bg: #24476d;--side-bg-2: #1c3a5c;--side-border: rgba(255,255,255,.12);--side-text: #c9d6e4;--side-dim: #8aa2ba;--side-hover: rgba(255,255,255,.07);--side-active: rgba(255,255,255,.11);--paper: #ffffff;--radius: 12px;--radius-sm: 8px;--shadow: 0 1px 2px rgba(23,42,64,.06), 0 3px 12px rgba(23,42,64,.04);--shadow-sm: 0 1px 2px rgba(23,42,64,.12)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--ground: #0f141a;--surface: #161c24;--surface-2: #1e2632;--border: #293341;--border-stark: #3b4756;--text: #e6ebf1;--text-muted: #95a2b2;--brand: #84acd8;--brand-ink: #a7c4e4;--brand-weich: #1d2c3d;--accent: #f0851c;--accent-ink: #f5a04c;--accent-weich: #37260f;--btn-bg: #356392;--btn-bg-hover: #3f74aa;--ok: #5cb789;--ok-bg: #15291f;--warn: #d4a54c;--warn-bg: #2b2311;--crit: #e07b71;--crit-bg: #2f1814;--info: #83a9d4;--info-bg: #182434;--side-bg: #15212e;--side-bg-2: #101923;--side-border: rgba(255,255,255,.09);--side-text: #b9c8d8;--side-dim: #7389a0;--side-hover: rgba(255,255,255,.05);--side-active: rgba(255,255,255,.09);--paper: #f1f2f4;--shadow: 0 1px 2px rgba(0,0,0,.35), 0 4px 16px rgba(0,0,0,.28);--shadow-sm: 0 1px 2px rgba(0,0,0,.4)}}:root[data-theme=dark]{--ground: #0f141a;--surface: #161c24;--surface-2: #1e2632;--border: #293341;--border-stark: #3b4756;--text: #e6ebf1;--text-muted: #95a2b2;--brand: #84acd8;--brand-ink: #a7c4e4;--brand-weich: #1d2c3d;--accent: #f0851c;--accent-ink: #f5a04c;--accent-weich: #37260f;--btn-bg: #356392;--btn-bg-hover: #3f74aa;--ok: #5cb789;--ok-bg: #15291f;--warn: #d4a54c;--warn-bg: #2b2311;--crit: #e07b71;--crit-bg: #2f1814;--info: #83a9d4;--info-bg: #182434;--side-bg: #15212e;--side-bg-2: #101923;--side-border: rgba(255,255,255,.09);--side-text: #b9c8d8;--side-dim: #7389a0;--side-hover: rgba(255,255,255,.05);--side-active: rgba(255,255,255,.09);--paper: #f1f2f4;--shadow: 0 1px 2px rgba(0,0,0,.35), 0 4px 16px rgba(0,0,0,.28);--shadow-sm: 0 1px 2px rgba(0,0,0,.4)}*{box-sizing:border-box}body{margin:0;background:var(--ground);color:var(--text);font-family:var(--font);font-size:13.5px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;text-wrap:balance;color:var(--text)}a{color:var(--brand);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}::selection{background:#2b578338}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.num{font-variant-numeric:tabular-nums}.muted{color:var(--text-muted)}td,th,.stat-line b,.kpi .value{font-variant-numeric:tabular-nums}input[type=checkbox]{accent-color:var(--apt-blau);width:15px;height:15px}:root[data-theme=dark] input[type=checkbox]{accent-color:#6d9bcd}.nav .ic svg,.search>svg,.note>span:first-child svg,.att svg{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.app{display:grid;grid-template-columns:246px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--side-bg),var(--side-bg-2));color:var(--side-text);display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{padding:22px 20px 18px;border-bottom:1px solid var(--side-border)}.brand small{display:block;margin-top:10px;color:var(--side-dim);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.nav{padding:10px 12px 22px;overflow-y:auto;flex:1;scrollbar-width:thin}.nav .group{padding:18px 12px 6px;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--side-dim)}.nav button{position:relative;width:100%;text-align:left;display:flex;align-items:center;gap:11px;padding:7px 12px;margin:1px 0;background:none;border:0;border-radius:7px;color:var(--side-text);font-size:13px;font-weight:500;cursor:pointer;letter-spacing:.005em}.nav button:hover{background:var(--side-hover);color:#fff}.nav button.active{background:var(--side-active);color:#fff;font-weight:650}.nav button.active:before{content:"";position:absolute;left:-12px;top:5px;bottom:5px;width:3px;border-radius:0 3px 3px 0;background:var(--apt-orange)}.nav .ic{width:17px;height:17px;flex:0 0 auto;display:grid;place-items:center;opacity:.85}.nav .ic svg{width:16px;height:16px}.nav button.active .ic{opacity:1}.main{display:flex;flex-direction:column;min-width:0}.topbar{display:flex;align-items:center;gap:14px;padding:13px 28px;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:5}.topbar h1{font-size:17px;font-weight:700;letter-spacing:-.015em}.topbar .crumb{color:var(--text-muted);font-size:12px;margin-top:1px}.spacer{flex:1}.search{display:flex;align-items:center;gap:8px;background:var(--surface-2);border:1px solid transparent;border-radius:999px;padding:7px 14px;color:var(--text-muted);font-size:13px;min-width:230px;transition:border-color .12s ease,background-color .12s ease}.search:focus-within{background:var(--surface);border-color:var(--border-stark)}.search>svg{width:15px;height:15px;flex:0 0 auto}.search input{border:0;background:none;outline:none;color:var(--text);font:inherit;width:100%}.search input::placeholder{color:var(--text-muted)}.avatar{width:33px;height:33px;border-radius:50%;background:var(--btn-bg);color:#fff;display:grid;place-items:center;font-weight:700;font-size:12.5px;letter-spacing:.02em;flex:0 0 auto}.icon-btn{background:var(--surface);border:1px solid var(--border-stark);border-radius:8px;width:33px;height:33px;cursor:pointer;color:var(--text);font-size:15px;transition:background-color .12s ease}.icon-btn:hover{background:var(--surface-2)}.content{padding:26px 28px 64px;max-width:1480px}.view{display:none;animation:fade .16s ease}.view.active{display:block}@keyframes fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}.grid{display:grid;gap:16px}.cols-4{grid-template-columns:repeat(4,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-2{grid-template-columns:repeat(2,1fr)}@media (max-width: 1100px){.cols-4{grid-template-columns:repeat(2,1fr)}.cols-3,.cols-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.pad,.card.pad{padding:18px 20px}.card-h{display:flex;align-items:center;gap:10px;padding:14px 20px;border-bottom:1px solid var(--border)}.card-h h3{font-size:13.5px;font-weight:700;letter-spacing:-.005em}.card-h .sub{color:var(--text-muted);font-size:12px}.kpi{padding:17px 20px 16px}.kpi .label{color:var(--text-muted);font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.kpi .value{font-size:26px;font-weight:700;margin-top:9px;letter-spacing:-.022em;line-height:1.15}.kpi .value.accent{color:var(--accent-ink)}.kpi .foot{margin-top:6px;font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.trend.up{color:var(--ok);font-weight:650}.trend.down{color:var(--crit);font-weight:650}.kpi .bar{margin-top:12px;height:4px;border-radius:4px;background:var(--surface-2);overflow:hidden}.kpi .bar>i{display:block;height:100%;background:var(--brand);border-radius:4px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 20px;border-bottom:1px solid var(--border);font-size:13px}th{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);font-weight:700;border-bottom-color:var(--border-stark);padding-top:12px;padding-bottom:9px;white-space:nowrap}tbody tr:last-child td{border-bottom:0}tbody tr:hover td{background:color-mix(in srgb,var(--brand) 5%,transparent)}@supports not (background: color-mix(in srgb,red 5%,transparent)){tbody tr:hover td{background:var(--surface-2)}}td.r,th.r{text-align:right}.tbl-wrap{overflow-x:auto;border-radius:inherit}.dt-bar{display:flex;align-items:center;gap:8px;padding:8px 14px;border-bottom:1px solid var(--border);flex-wrap:wrap}.dt-pag{display:flex;align-items:center;gap:8px;padding:8px 14px;border-top:1px solid var(--border)}.dt-proseite{padding:4px 8px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:12.5px}th.th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}th.th-sort:hover{color:var(--text)}.th-arrow{color:var(--apt-blau);font-size:10px}:root[data-theme=dark] .th-arrow{color:var(--brand)}tr.dt-filter th{padding-top:6px;padding-bottom:6px}tr.dt-filter input,tr.dt-filter select{width:100%;padding:5px 8px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;font-size:12px;text-transform:none;letter-spacing:normal;font-weight:400}tr.dt-filter input:focus,tr.dt-filter select:focus{outline:none;border-color:var(--apt-blau);box-shadow:0 0 0 2px var(--brand-weich)}tr.dt-filter .dt-range{display:flex;gap:4px}tr.dt-filter .dt-range input{min-width:0}tr.dt-filter .dt-multi{display:flex;flex-wrap:wrap;gap:4px}.dt-chip{border:1px solid var(--border-stark);background:var(--surface);border-radius:999px;padding:2px 9px;font-size:11px;cursor:pointer;color:var(--text-muted);text-transform:none;letter-spacing:normal;font-weight:500}.dt-chip.on{background:var(--brand-weich);border-color:var(--apt-blau);color:var(--apt-blau);font-weight:700}:root[data-theme=dark] .dt-chip.on{color:var(--brand);border-color:var(--brand)}tfoot tr.dt-summe td{border-top:2px solid var(--border-stark);font-weight:700;background:var(--surface-2);color:var(--text)}.aging{display:flex;gap:14px;align-items:flex-end}.aging-col{flex:1;text-align:center}.aging-bar-wrap{height:120px;display:flex;align-items:flex-end;justify-content:center}.aging-bar{width:60%;min-height:3px;border-radius:4px 4px 0 0;background:var(--brand);transition:height .2s ease}.aging-bar.neutral{background:var(--text-muted)}.aging-bar.warn{background:var(--warn)}.aging-bar.crit{background:var(--crit)}.aging-val{margin-top:8px;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.aging-lbl{font-size:12px;color:var(--text-muted);margin-top:2px}.combo,.combo-in{position:relative}.combo-in input{width:100%;padding:8.5px 30px 8.5px 11px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit}.combo-in input:focus{outline:none;border-color:var(--apt-blau);box-shadow:0 0 0 3px var(--brand-weich)}:root[data-theme=dark] .combo-in input:focus{border-color:var(--brand)}.combo-caret{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:11px;cursor:pointer}.combo-drop{position:absolute;left:0;right:0;z-index:20;margin-top:4px;max-height:280px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-stark);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg, 0 12px 32px rgba(12,22,36,.22))}.combo-opt{display:flex;align-items:baseline;gap:8px;width:100%;text-align:left;padding:8px 12px;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer;font:inherit;color:var(--text)}.combo-opt:last-child{border-bottom:none}.combo-opt:hover{background:var(--surface-2)}.combo-opt.on{background:var(--brand-weich);font-weight:600}.combo-opt .co-sub{color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.combo-leer{padding:10px 12px;color:var(--text-muted);font-size:13px}.pill{display:inline-flex;align-items:center;gap:6px;padding:2.5px 9px;border-radius:999px;font-size:11px;font-weight:650;letter-spacing:.01em;white-space:nowrap}.pill:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:0 0 auto}.pill.ok{color:var(--ok);background:var(--ok-bg)}.pill.warn{color:var(--warn);background:var(--warn-bg)}.pill.crit{color:var(--crit);background:var(--crit-bg)}.pill.info{color:var(--info);background:var(--info-bg)}.pill.neutral{color:var(--text-muted);background:var(--surface-2)}.btn{display:inline-flex;align-items:center;gap:7px;background:var(--btn-bg);color:#fff;border:0;padding:8.5px 15px;border-radius:var(--radius-sm);font-size:13px;font-weight:600;letter-spacing:.005em;cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease}.btn:hover{background:var(--btn-bg-hover)}.btn:active{box-shadow:inset 0 1px 2px #0003}.btn.accent{background:var(--accent)}.btn.accent:hover{background:#d9750f}.btn.ghost{background:var(--surface);color:var(--text);border:1px solid var(--border-stark)}.btn.ghost:hover{background:var(--surface-2)}.btn.sm{padding:5.5px 11px;font-size:12.5px}.lead{color:var(--text-muted);max-width:68ch;margin:0}.lead b{color:var(--text)}.mt{margin-top:20px}.mt-s{margin-top:12px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.field label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;padding:8.5px 11px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;transition:border-color .12s ease,box-shadow .12s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--apt-blau);box-shadow:0 0 0 3px var(--brand-weich)}:root[data-theme=dark] .field input:focus,:root[data-theme=dark] .field select:focus{border-color:var(--brand)}.field input[readonly]{background:var(--surface-2);color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px 16px}.note{border:1px solid var(--border);background:var(--brand-weich);color:var(--text);border-radius:var(--radius-sm);padding:11px 14px;font-size:12.5px;line-height:1.55;display:flex;gap:11px;align-items:flex-start}.note>span:first-child{flex:0 0 auto;width:22px;height:22px;margin-top:1px;border-radius:50%;background:var(--surface);color:var(--brand-ink);display:grid;place-items:center;font-size:12px;font-weight:800;font-style:normal;box-shadow:inset 0 0 0 1px var(--border-stark)}.note>span:first-child svg{width:12.5px;height:12.5px}.note.accent{background:var(--accent-weich);border-color:transparent}.note.accent>span:first-child{color:var(--accent-ink)}.barchart{display:flex;flex-direction:column;gap:12px}.barrow{display:grid;grid-template-columns:70px 1fr 96px;align-items:center;gap:12px;font-size:12.5px}.barrow .track{height:20px;background:var(--surface-2);border-radius:5px;position:relative;overflow:hidden}.barrow .fill{position:absolute;inset:0 auto 0 0;border-radius:5px 0 0 5px}.barrow .soll-marker{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--text);opacity:.5}.invoice{background:var(--paper);color:#1a1d21;border:1px solid var(--border-stark);border-radius:var(--radius-sm);padding:40px;font-size:12.5px;line-height:1.5;box-shadow:var(--shadow-sm)}.invoice table td,.invoice table th{padding:7px 6px;border-color:#e3e6ea;color:#1a1d21;font-size:12.5px}.invoice table th{color:#8a8f98;letter-spacing:.04em;font-weight:700}.invoice tbody tr:hover td{background:transparent}.inv2-head{display:flex;justify-content:flex-end}.inv2-logo-img{width:175px;height:auto}.inv2-to{margin:34px 0 42px;font-size:12.5px;line-height:1.55}.inv2-sec{font-weight:700;font-size:15px;color:#1a1d21;padding-bottom:7px;border-bottom:1px solid #d7dbe0;margin:22px 0 0}.inv2-meta{display:flex;gap:64px;padding:9px 0;border-bottom:1px solid #d7dbe0;color:#1a1d21;font-size:12.5px}.inv2-meta .k{color:#8a8f98}.inv2-tot{margin:8px 0 0 auto;width:300px}.inv2-tot>div{display:flex;justify-content:space-between;padding:5px 2px;font-size:12.5px}.inv2-tot>div.gross{border-top:1px solid #d7dbe0;border-bottom:2px solid #1a1d21;margin-top:2px;padding:8px 2px;font-weight:800}.inv2-close{margin:24px 0 0;font-size:12.5px;line-height:1.6}.inv2-foot{margin-top:30px;border-top:1px solid #d7dbe0;padding-top:9px;text-align:center;color:#8a8f98;font-size:9.5px;line-height:1.7}.inv-edit{padding:4px 6px;border:1px solid #cfd6dd;border-radius:4px;font:inherit;font-size:12px;background:#fff;color:#1a1d21}.inv-edit:focus{outline:none;border-color:#1f3a5f;box-shadow:0 0 0 2px #1f3a5f1f}.inv-edit.num{text-align:right;font-variant-numeric:tabular-nums}.inv-edit-area{display:block;width:100%;padding:7px 9px;border:1px dashed #c3ccd5;border-radius:5px;font:inherit;font-size:12.5px;line-height:1.5;background:#fbfcfd;color:#1a1d21;resize:vertical}.inv-edit-area:focus{outline:none;border-color:#1f3a5f;border-style:solid;background:#fff}.inv-del{border:none;background:none;color:#c0392b;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.inv-del:hover{color:#922b21}.inv-addrow{margin-top:10px}.konto-item{display:block;width:100%;text-align:left;padding:10px 14px;background:none;border:none;border-top:1px solid var(--border);cursor:pointer;font:inherit;font-size:13.5px;color:var(--text)}.konto-item:hover{background:var(--surface-2)}.qr-part{margin-top:22px;border-top:2px dashed #999;padding-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.qr-code{width:118px;height:118px;border-radius:4px;background:#fff}.qr-code rect{fill:#1a1a1a}.page-sep{display:flex;align-items:center;gap:10px;color:#9a9a9a;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin:26px 0 12px}.page-sep:before,.page-sep:after{content:"";flex:1;border-top:1px dashed #bbb}.werbung{color:#1a1d21;padding:4px 0 16px;font-size:12px;line-height:1.6}.werbung b{color:#1f3a5f;display:block;font-size:13px;margin-bottom:4px}.steps{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.step{flex:1;min-width:150px;display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);font-size:12.5px;color:var(--text-muted)}.step .n{width:22px;height:22px;flex:0 0 auto;border-radius:50%;background:var(--surface-2);color:var(--text-muted);display:grid;place-items:center;font-weight:700;font-size:11.5px}.step.done{color:var(--text)}.step.done .n{background:var(--ok-bg);color:var(--ok)}.step.active{color:var(--brand-ink);font-weight:650;border-color:var(--border-stark);box-shadow:var(--shadow-sm)}.step.active .n{background:var(--accent);color:#fff}.maplist{display:flex;flex-direction:column}.maprow{display:grid;grid-template-columns:1fr 30px 1fr 96px;align-items:center;gap:12px;padding:10px 20px;border-bottom:1px solid var(--border);font-size:13px}.maprow:last-child{border-bottom:0}.maprow .arrow{color:var(--text-muted);text-align:center}.src{font-family:var(--mono);font-size:11.5px;color:var(--text-muted)}.split{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;align-items:start}@media (max-width: 1000px){.split{grid-template-columns:1fr}}.stat-line{display:flex;justify-content:space-between;align-items:baseline;gap:18px;padding:9px 0;border-bottom:1px dashed var(--border);font-size:13px}.stat-line:last-child{border-bottom:0}.stat-line .k{color:var(--text-muted);flex:0 0 auto}.stat-line b{text-align:right;min-width:0;overflow-wrap:anywhere}.kontakt-line{padding:9px 0;border-bottom:1px dashed var(--border)}.kontakt-line:last-child{border-bottom:0}.kontakt-line .name{font-weight:650;font-size:13.5px}.kontakt-line .detail{font-size:12.5px;margin-top:1px;overflow-wrap:anywhere}.kontakt-line .stern{color:var(--accent)}.legend{display:flex;gap:16px;font-size:11.5px;color:var(--text-muted);margin-top:12px;flex-wrap:wrap}.legend span{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:10px;border-radius:3px;display:inline-block}.foot-mock{text-align:center;color:var(--text-muted);font-size:11px;letter-spacing:.04em;margin-top:36px}.role-switch{display:inline-flex;align-items:center;gap:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:2px}.role-switch button{border:0;background:transparent;color:var(--text-muted);padding:5.5px 13px;border-radius:999px;font-size:12.5px;font-weight:600;cursor:pointer;transition:background-color .12s ease,color .12s ease}.role-switch button:hover{color:var(--text)}.role-switch button.on{background:var(--btn-bg);color:#fff;box-shadow:var(--shadow-sm)}body[data-role=mitarbeiter] .admin-only{display:none!important}.only-admin-hint{display:none}body[data-role=mitarbeiter] .only-admin-hint{display:flex}body[data-role=mitarbeiter] .only-employee-hide{display:none}.board{display:flex;gap:12px;align-items:flex-start;overflow-x:auto;padding-bottom:4px}.board>.col{flex:1 0 168px}.col-name{flex:1;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-name:hover{color:var(--brand)}.col-edit{flex:1;min-width:0;font:inherit;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--brand);border-radius:5px;padding:2px 6px;background:var(--surface);color:var(--text)}.col-del{border:0;background:none;color:var(--text-muted);cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.col-del:hover{color:var(--crit)}.col-leer{color:var(--muted);font-size:12px;padding:4px}.col-add{flex:0 0 116px;align-self:stretch;min-height:120px;border:1.5px dashed var(--border-stark);background:none;border-radius:10px;color:var(--text-muted);cursor:pointer;font-size:13px;font-weight:600;transition:border-color .12s ease,color .12s ease,background-color .12s ease}.col-add:hover{border-color:var(--brand);color:var(--brand);background:var(--brand-weich)}.board-wrap{display:flex;gap:14px;align-items:flex-start}.board-rail{flex:0 0 250px;width:250px;display:flex;flex-direction:column;gap:14px}.rail-panel{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px}.rail-fix{border-left:3px solid var(--accent)}.rail-fix .rail-h{color:var(--accent)}.rail-h{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;align-items:center;margin:2px 2px 10px}.rail-h .n{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 7px}.rail-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;margin-bottom:8px;box-shadow:var(--shadow-sm);cursor:pointer;border-left:3px solid var(--border-stark);transition:box-shadow .12s ease}.rail-card:hover{box-shadow:var(--shadow)}.rc-t{font-weight:650;font-size:12.5px;letter-spacing:-.005em}.rc-m{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--muted);margin-top:4px}.rail-leer{font-size:12px;color:var(--muted);padding:2px 2px 4px}.rail-hint{font-size:10.5px;color:var(--muted);margin-top:2px}.rail-fix.rail-termin{border-left-color:var(--brand)}.rail-fix.rail-termin .rail-h{color:var(--brand)}.rail-card.rc-warn{border-color:var(--crit);background:var(--crit-bg)}.rail-card.rc-warn .rc-m{color:var(--crit)}@media (max-width: 1100px){.board-wrap{flex-direction:column}.board-rail{width:100%;flex:none;flex-direction:row}.rail-panel{flex:1}}.col{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px;min-height:120px;transition:background-color .12s ease,outline-color .12s ease}.col.drop-over{outline:2px dashed var(--brand);outline-offset:-2px;background:var(--brand-weich)}.col-termin{flex:0 0 250px;border-left:3px solid var(--brand)}.col-termin .col-h{color:var(--brand)}.task-av{position:absolute;top:9px;right:10px}.col-h{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;align-items:center;margin:2px 2px 10px}.col-h .n{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:0 7px;font-variant-numeric:tabular-nums}.task{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;margin-bottom:8px;box-shadow:var(--shadow-sm);border-left:3px solid var(--border-stark);transition:box-shadow .12s ease,transform .12s ease}.task:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.task.p-hoch{border-left:4px solid var(--warn);background:var(--warn-bg)}.task.p-dringend{border-left:4px solid var(--crit);background:var(--crit-bg)}.task .t{font-weight:650;font-size:13px;letter-spacing:-.005em;margin-top:3px}.task .mand-row{display:flex;justify-content:space-between;align-items:center;gap:8px}.task .mand{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--brand);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task .m{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:7px;color:var(--muted);font-size:11.5px}.mini-av{width:22px;height:22px;flex:0 0 auto;border-radius:50%;background:var(--btn-bg);color:#fff;display:inline-grid;place-items:center;font-size:9.5px;font-weight:700;letter-spacing:.02em}.att{display:inline-flex;align-items:center;gap:4px}.att svg{width:12px;height:12px}.cal-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.cal-nav{display:flex;align-items:center;gap:4px}.cal-nav button{border:1px solid var(--border-stark);background:var(--surface);color:var(--text);border-radius:7px;padding:5px 11px;cursor:pointer;font-size:13px;font-weight:600;transition:background-color .12s ease}.cal-nav button:hover{background:var(--surface-2)}.seg{display:inline-flex;gap:2px;background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:2px}.seg button{border:0;background:transparent;color:var(--text-muted);border-radius:7px;padding:4.5px 13px;cursor:pointer;font-size:12.5px;font-weight:600;transition:background-color .12s ease,color .12s ease}.seg button:hover{color:var(--text)}.seg button.on{background:var(--surface);color:var(--brand-ink);box-shadow:var(--shadow-sm)}.cal-title{font-weight:700;font-size:15.5px;letter-spacing:-.01em}.cal-legend{display:flex;gap:14px;font-size:11.5px;color:var(--muted);margin-left:auto;flex-wrap:wrap}.cal-legend i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:5px;vertical-align:middle}.d-ueberfaellig{background:var(--crit)}.d-woche{background:var(--warn)}.d-geplant{background:var(--info)}.d-erledigt{background:var(--ok)}.cal{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.cal-wd{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface-2);border-bottom:1px solid var(--border)}.cal-wd div{padding:8px 10px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr)}.cal-cell{min-height:92px;border-top:1px solid var(--border);border-left:1px solid var(--border);padding:6px 8px}.cal-grid .cal-cell:nth-child(-n+7){border-top:0}.cal-cell:nth-child(7n+1){border-left:0}.cal-cell.we{background:var(--surface-2)}.cal-cell.fremd{opacity:.38}.cal-cell.heute{box-shadow:inset 0 0 0 2px var(--accent)}.cal-cell.heute .tz{color:var(--accent-ink)}.cal-cell .tz{font-size:11.5px;font-weight:650;color:var(--muted);font-variant-numeric:tabular-nums}.cal-ev{display:flex;align-items:center;gap:5px;font-size:11px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-ev i{width:7px;height:7px;border-radius:50%;flex:0 0 7px}.cal-mehr{font-size:10.5px;color:var(--muted);margin-top:3px}.approve{display:inline-flex;gap:6px}.approve button{border:0;border-radius:7px;padding:4.5px 10px;font-size:12px;font-weight:650;cursor:pointer;transition:filter .12s ease}.approve button:hover{filter:brightness(.94)}:root[data-theme=dark] .approve button:hover{filter:brightness(1.25)}.approve .ok{background:var(--ok-bg);color:var(--ok)}.approve .no{background:var(--crit-bg);color:var(--crit)}.toggle-line{display:flex;align-items:center;gap:9px;font-size:13px;margin:6px 0}.toggle-line input{width:16px;height:16px;flex:0 0 auto}.chflag{width:17px;height:17px;vertical-align:-2.5px;border-radius:3px}@media (max-width: 960px){.app{grid-template-columns:1fr}.sidebar{position:static;height:auto}.nav{display:flex;flex-wrap:wrap;gap:2px;padding:8px 12px 12px}.nav .group{flex-basis:100%;padding:10px 6px 4px}.nav button{width:auto}.nav button.active:before{display:none}.topbar{flex-wrap:wrap;padding:12px 16px}.search{min-width:160px;flex:1;order:5}.content{padding:16px 16px 48px}.maprow{grid-template-columns:1fr 22px 1fr}.maprow .pill{grid-column:3;justify-self:end}}@media (prefers-reduced-motion: reduce){.view{animation:none}*{transition:none!important}}.toolbar{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:16px}.toolbar .spacer{flex:1}.mt{margin-top:18px}.task.zieht{opacity:.5}.task[draggable=true]{cursor:grab}.zugeteilt{margin-top:6px;font-size:10.5px;color:var(--accent);font-weight:600}.weiter-select{width:100%;padding:4px 8px;font-size:12px;border:1px solid var(--border-stark);border-radius:6px;background:var(--surface);color:var(--text)}.notif-wrap{position:relative}.notif-badge{position:absolute;top:-4px;right:-4px;background:var(--accent);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:999px;display:grid;place-items:center;padding:0 4px}.notif-panel{position:absolute;top:44px;right:0;width:340px;max-width:90vw;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);z-index:60;overflow:hidden}.notif-panel .h{padding:12px 15px;border-bottom:1px solid var(--border);font-weight:700;font-size:13.5px;display:flex;align-items:center}.notif-item{padding:11px 15px;border-bottom:1px solid var(--border);font-size:13px;display:flex;gap:10px;align-items:flex-start}.notif-item:last-child{border-bottom:0}.notif-item.neu{background:var(--brand-weich)}.notif-item .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);margin-top:5px;flex:0 0 8px}.notif-item.gelesen .dot{background:transparent}.notif-empty{padding:24px 15px;text-align:center;color:var(--text-muted);font-size:13px}.task{position:relative}.task-arrow{position:absolute;right:8px;bottom:8px;width:24px;height:24px;border-radius:6px;border:1px solid var(--border);background:var(--surface);color:var(--brand);cursor:pointer;display:grid;place-items:center;font-size:14px;line-height:1;opacity:.55;transition:opacity .12s ease,background-color .12s ease}.task:hover .task-arrow{opacity:1}.task-arrow:hover{background:var(--brand-weich)}.task-menu{position:absolute;right:8px;bottom:36px;z-index:30;width:210px;background:var(--surface);border:1px solid var(--border-stark);border-radius:10px;box-shadow:var(--shadow);overflow:hidden}.task-menu .mh{padding:8px 12px 4px;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:700}.task-menu button{width:100%;text-align:left;padding:7px 12px;background:none;border:0;font-size:13px;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:8px}.task-menu button:hover{background:var(--surface-2)}.task-menu .sep{border-top:1px solid var(--border);margin:4px 0}.task-menu button.danger{color:var(--crit)}.task-menu .mini-av{width:20px;height:20px;font-size:9px}.cal-top{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.cal.tag{display:grid;grid-template-columns:minmax(300px,340px) 1fr;gap:16px;align-items:start}.cal-scroll{display:flex;overflow-x:auto;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.cal-axis{flex:0 0 54px}.cal-corner{height:34px;border-bottom:1px solid var(--border)}.cal-hour{position:relative;border-top:1px solid var(--border)}.cal-hour span{position:absolute;top:-7px;right:8px;font-size:10.5px;color:var(--text-muted);background:var(--surface);padding:0 3px}.cal-days{flex:1;display:grid;min-width:0}.cal-col{border-left:1px solid var(--border);min-width:0}.cal-daykopf{height:34px;display:flex;align-items:center;justify-content:center;gap:5px;font-size:12.5px;font-weight:650;color:var(--text-muted);border-bottom:1px solid var(--border)}.cal-daykopf.heute{color:var(--brand);background:var(--brand-weich)}.cal-col .cal-grid{position:relative;cursor:copy;background-image:repeating-linear-gradient(to bottom,var(--border) 0,var(--border) 1px,transparent 1px,transparent 46px)}.ze-block{position:absolute;left:4px;right:4px;background:var(--brand-weich);border-left:3px solid var(--brand);border-radius:6px;padding:4px 7px;overflow:hidden;cursor:grab;color:var(--text);box-shadow:var(--shadow-sm);transition:filter .12s ease;-webkit-user-select:none;user-select:none}.ze-block:hover{filter:brightness(.97)}.ze-block.dragging{opacity:.95;z-index:20;box-shadow:var(--shadow);cursor:grabbing;transition:none}.ze-resize{position:absolute;left:0;right:0;bottom:0;height:9px;cursor:ns-resize}.ze-block.nv{background:var(--surface-2);border-left-color:var(--border-stark)}.ze-block.ab{background:var(--ok-bg);border-left-color:var(--ok)}.ze-t{font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ze-s{color:var(--text-muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ze-f{display:flex;justify-content:space-between;align-items:center;margin-top:2px;font-size:11px;color:var(--text-muted)}.cal-liste{border:1px solid var(--border);border-radius:12px;background:var(--surface)}.ze-row{display:flex;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-left:3px solid var(--brand);border-radius:8px;cursor:pointer;background:var(--surface);box-shadow:var(--shadow-sm)}.ze-row.nv{border-left-color:var(--border-stark)}.ze-row.total{border-left-color:transparent;background:var(--surface-2);cursor:default;box-shadow:none}.geld{color:var(--ok);font-weight:650}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0c162475;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:start center;padding:8vh 16px 16px;z-index:100}.modal{width:100%;max-width:560px;max-height:86vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border-stark);border-radius:var(--radius);box-shadow:var(--shadow-lg, 0 18px 50px rgba(12,22,36,.28))}.modal.wide{max-width:780px}.modal .card-h{padding:16px 24px;border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1;border-radius:var(--radius) var(--radius) 0 0}.modal .card-h h3{margin:0}.modal .pad{padding:22px 24px 24px}.fgroup{border:1px solid var(--border);border-radius:var(--radius-sm);padding:16px;margin:0;min-width:0;display:grid;gap:14px}.fgroup>legend{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--apt-blau);padding:0 6px}:root[data-theme=dark] .fgroup>legend{color:var(--brand)}.seg.tabs{display:flex;margin:16px 0 4px}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:0 40px}.stat-grid .stat-line{padding:10px 0}.kontakt-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}.kontakt-card{border:1px solid var(--border);border-radius:var(--radius-sm);padding:13px 15px;background:var(--surface-2)}.kk-kopf{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px}.kk-name{font-weight:650;font-size:14px}.kk-name .stern{color:var(--accent)}.kk-felder .stat-line{padding:6px 0;font-size:12.5px}.kk-notiz{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border);font-size:12.5px;color:var(--text-muted);white-space:pre-wrap}.journal{display:grid;gap:0}.jrn-item{display:grid;grid-template-columns:22px 1fr;gap:12px}.jrn-dot{display:flex;flex-direction:column;align-items:center}.jrn-dot i{width:11px;height:11px;border-radius:50%;margin-top:5px;flex:0 0 auto;background:var(--text-muted)}.jrn-dot:after{content:"";flex:1;width:2px;background:var(--border);margin:4px 0}.jrn-item:last-child .jrn-dot:after{display:none}.jrn-body{padding-bottom:18px;min-width:0}.jrn-kopf{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.jrn-text{margin:5px 0;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere}.it-anruf{background:var(--info)!important}.it-meeting{background:var(--warn)!important}.it-email{background:var(--apt-blau)!important}.it-brief{background:var(--text-muted)!important}.it-notiz{background:var(--border-stark)!important}.zefix{position:relative;padding:12px 14px;border:1px dashed var(--border-stark);border-radius:var(--radius-sm);background:var(--surface-2)}.zefix>label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--apt-blau);margin-bottom:6px}:root[data-theme=dark] .zefix>label{color:var(--brand)}.zefix-field{position:relative}.zefix-field .zefix-drop{left:0;right:0}.zefix-in{position:relative}.zefix-in input{width:100%;padding:8.5px 11px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit}.zefix-in input:focus{outline:none;border-color:var(--apt-blau);box-shadow:0 0 0 3px var(--brand-weich)}.zefix-spin{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.zefix-drop{position:absolute;left:14px;right:14px;z-index:5;margin-top:4px;max-height:280px;overflow-y:auto;background:var(--surface);border:1px solid var(--border-stark);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg, 0 12px 32px rgba(12,22,36,.22))}.zefix-leer{padding:12px 14px;color:var(--text-muted);font-size:13px}.zefix-treffer{display:flex;flex-direction:column;gap:2px;width:100%;text-align:left;padding:9px 14px;background:none;border:none;border-bottom:1px solid var(--border);cursor:pointer}.zefix-treffer:last-child{border-bottom:none}.zefix-treffer:hover:not(:disabled){background:var(--surface-2)}.zefix-treffer:disabled{opacity:.6;cursor:default}.zefix-treffer .zt-name{font-weight:650;font-size:13.5px;color:var(--text)}.zefix-treffer .zt-meta{font-size:12px;color:var(--text-muted)}.leist-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:8px 20px}.leist-item{display:grid;grid-template-columns:1fr auto;align-items:center;gap:6px 10px;padding:6px 8px;border-radius:var(--radius-sm)}.leist-item.an{background:var(--surface-2)}.leist-check{display:flex;align-items:center;gap:9px;font-size:13.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.leist-check input{width:auto}.leist-per{width:auto;min-width:150px;padding:5px 8px!important;font-size:12.5px}.leist-notiz{grid-column:1 / -1;padding:6px 9px!important;font-size:12.5px}.leist-frei{display:grid;grid-template-columns:1fr 170px 1fr auto;gap:8px;align-items:center;margin-bottom:8px}.leist-frei input,.leist-frei select{padding:7px 9px!important}.umfang-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px 26px}.umfang-titel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--apt-blau);margin-bottom:7px}:root[data-theme=dark] .umfang-titel{color:var(--brand)}.umfang-bereich ul{list-style:none;margin:0;padding:0;display:grid;gap:5px}.umfang-bereich li{display:flex;align-items:center;gap:7px;font-size:13.5px;flex-wrap:wrap}.pill.sm{padding:1px 7px;font-size:10px}.detail-meta{display:flex;align-items:center;gap:10px}.detail input,.detail textarea,.detail select{width:100%;padding:8.5px 11px;border:1px solid var(--border-stark);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:inherit;transition:border-color .12s ease,box-shadow .12s ease}.detail input:focus,.detail textarea:focus,.detail select:focus{outline:none;border-color:var(--apt-blau);box-shadow:0 0 0 3px var(--brand-weich)}.detail textarea{resize:vertical;min-height:84px;line-height:1.5}.detail-h{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 8px}.detail section{border-top:1px solid var(--border);padding-top:14px}.detail section:first-of-type{border-top:0;padding-top:0}.check-line{display:flex;align-items:center;gap:8px;font-size:13.5px;padding:2px 0}.linklike{background:none;border:0;color:var(--text);cursor:pointer;font:inherit;padding:0}.linklike:hover{color:var(--brand)}
