.cal-scroll{overflow-x:auto;border:1px solid var(--n-200);border-radius:12px;background:var(--n-0)}.cal-table{border-collapse:collapse;font-size:12px;width:max-content;min-width:100%}.cal-table td,.cal-table th{border-bottom:1px solid var(--n-100);border-right:1px solid var(--n-100);text-align:center}.cal-name{position:-webkit-sticky;position:sticky;left:0;z-index:1;background:var(--n-0);text-align:left;padding:6px 12px;white-space:nowrap;font-weight:600;min-width:160px;border-right:1px solid var(--n-200)}thead .cal-name{z-index:2}.cal-day{padding:4px 0;width:26px;color:var(--n-600);font-weight:600}.cal-day .cal-dnum{display:block;line-height:1.1}.cal-day .cal-dwd{display:block;font-size:9px;color:var(--n-400)}.cal-day.we{background:var(--n-50)}.cal-day.ho{background:#fff3d6;color:#8a5b00}.cal-cell{width:26px;height:28px;font-weight:700;font-size:11px;color:var(--ink-900)}.cal-cell.is-off{background:var(--n-50)}.cal-sum{padding:0 10px;font-weight:700;background:var(--n-0);border-left:1px solid var(--n-200)}.cal-URLAUB,.cal-swatch.cal-URLAUB{background:#d9f28a}.cal-KRANK,.cal-swatch.cal-KRANK{background:#ffd0cf}.cal-UNBEZAHLT,.cal-swatch.cal-UNBEZAHLT{background:#e5e7ea}.cal-SONDERURLAUB,.cal-swatch.cal-SONDERURLAUB{background:#cfe0ff}.cal-GLEITTAG,.cal-swatch.cal-GLEITTAG{background:#e6d6ff}.cal-cell.is-offen{background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.12) 0 3px,transparent 3px 6px)}.cal-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin:12px 0 14px;font-size:13px;color:var(--n-600)}.cal-legend-item{display:inline-flex;align-items:center;gap:6px}.cal-swatch{width:14px;height:14px;border-radius:3px;border:1px solid var(--n-200);display:inline-block}.cal-swatch.cal-offen{background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.18) 0 3px,transparent 3px 6px)}.cal-cell.cal-click{cursor:pointer}.cal-cell.cal-click:hover{outline:2px solid var(--brand-600,#6a9a00);outline-offset:-2px}.cal-modal-backdrop{position:fixed;inset:0;background:rgba(15,20,25,.42);display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.cal-modal{background:var(--n-0);border-radius:14px;padding:22px;width:100%;max-width:360px;box-shadow:0 20px 50px rgba(0,0,0,.25)}.cal-modal-field{display:flex;flex-direction:column;gap:4px;margin-top:12px;font-size:13px;color:var(--n-600)}.cal-modal-field input,.cal-modal-field select{padding:9px 11px;border:1px solid var(--n-200);border-radius:8px;font-size:14px}.cal-modal-check{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px}.cal-modal-existing{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--n-50);border-radius:8px;padding:8px 12px;margin-top:8px;font-size:13px}.cal-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cal-cell.cal-work{color:var(--n-600);font-weight:600}.cal-cell .cal-wh{font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.cal-cell.cal-work.is-open{color:var(--kiwi-700);box-shadow:inset 0 -2px 0 var(--kiwi-500)}.cal-sum.cal-hsum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--n-600);font-weight:700;border-left:none}.cal-legend-num{font-size:11px;color:var(--n-600);border:1px solid var(--n-200);border-radius:3px;padding:0 4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--n-0)}.cal-modal{max-height:85vh;overflow-y:auto}.cal-sec-label{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--n-500);margin:14px 0 8px}.cal-ev-list{border:1px solid var(--n-200);border-radius:8px;overflow:hidden}.cal-ev-empty{padding:10px 12px;font-size:13px;color:var(--n-500)}.cal-ev-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--n-100);font-size:13px}.cal-ev-row:last-child{border-bottom:none}.cal-ev-time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:42px}.cal-ev-type{flex:1 1 auto}.cal-ev-src{font-size:11px;color:var(--n-400);font-family:ui-monospace,SF Mono,Menlo,monospace}.cal-ev-del{border:none;background:none;color:var(--n-400);cursor:pointer;font-size:13px;line-height:1;padding:4px;border-radius:6px}.cal-ev-del:hover{color:var(--danger);background:var(--n-100)}.cal-ev-del:disabled{opacity:.5;cursor:default}.cal-ev-add{display:flex;gap:8px;margin-top:8px;align-items:center}.cal-ev-add input,.cal-ev-add select{padding:8px 10px;border:1px solid var(--n-200);border-radius:8px;font-size:13px;font-family:inherit}.cal-ev-add select{flex:1 1 auto}