.zp{--zp-canvas:#0c1312;--zp-surface:#101817;--zp-raised:#131c1b;--zp-panel:#0f1716;--zp-card:#111a19;--zp-border:#1f2a28;--zp-border-2:#22302e;--zp-line:#18221f;--zp-text:#e4ebe9;--zp-light:#c7d2cf;--zp-body:#b4c0bd;--zp-soft:#a9b7b4;--zp-muted:#93a3a0;--zp-dim:#8c9c99;--zp-faint:#7d8d8a;--zp-ghost:#6f7f7c;--zp-accent:#2dd4bf;--zp-accent-text:#5eead4;--zp-on-accent:#06201d;--zp-tag:#17211f;--zp-track:#1c2726;--zp-seg-on:#1d2b29;--zp-hover:#162120;--zp-sel:#172321;--zp-stat-on:#152220;--zp-card-on:#122120;--zp-dash:#2f4340;--zp-over:#e08a3c;--zp-amber:#fbc47a;--zp-red:#fca5a5;--zp-today:#123b36;--zp-heat-0:#1b2524;--zp-heat-1:#17423d;--zp-heat-2:#1d6a60;--zp-heat-3:#2aa191;--zp-heat-4:#e08a3c;--zp-weekend:#131b1a;--zp-leave:repeating-linear-gradient(135deg,#2a3331 0 4px,#1a2221 4px 8px);font-family:var(--font-panel);color:var(--zp-text)}.app.theme-light .zp,html.theme-light .zp{--zp-canvas:var(--bg-page);--zp-surface:var(--bg-card);--zp-raised:var(--bg-card);--zp-panel:var(--bg-panel);--zp-card:var(--bg-card);--zp-border:var(--border-default);--zp-border-2:var(--border-default);--zp-line:var(--divider-hairline);--zp-text:var(--text-primary);--zp-light:var(--text-primary);--zp-body:var(--text-secondary);--zp-soft:var(--text-secondary);--zp-muted:var(--text-secondary);--zp-dim:var(--text-tertiary);--zp-faint:var(--text-tertiary);--zp-ghost:var(--text-tertiary);--zp-accent:var(--accent-teal);--zp-accent-text:var(--accent-teal-deep);--zp-on-accent:#ffffff;--zp-tag:var(--bg-card-subtle);--zp-track:var(--bg-card-subtle);--zp-seg-on:var(--bg-card-hover);--zp-hover:var(--hover-subtle);--zp-sel:var(--accent-teal-tint-8);--zp-stat-on:var(--accent-teal-tint-8);--zp-card-on:var(--accent-teal-tint-8);--zp-dash:var(--border-strong);--zp-amber:#a86a12;--zp-red:#c0392b;--zp-today:var(--accent-teal-tint-18);--zp-heat-0:#e2e9e6;--zp-heat-1:#c4e6e0;--zp-heat-2:#85cfc3;--zp-heat-3:#2aa191;--zp-weekend:transparent;--zp-leave:repeating-linear-gradient(135deg,#d5dcd9 0 4px,#eaefed 4px 8px)}.pulse-page.is-people{display:flex;flex-direction:column;height:calc(100vh - 56px);min-height:640px}.pulse-page.is-people .pulse-head{flex-shrink:0}.zp-people{flex:1 1;min-height:0;display:flex;flex-direction:column;gap:18px;background:transparent}.zp button{font-family:inherit}.pulse-search-btn{display:none}.zp-dot{width:8px;height:8px;flex-shrink:0;border-radius:999px;background:#5f6f6c}.zp-dot--active{background:#2dd4bf}.zp-dot--idle{background:#f0a54a}.zp-dot--over{background:#ef6b6b}.zp-dot--leave{background:#8a9a97}.zp-pdot{width:7px;height:7px;flex-shrink:0;border-radius:999px}.zp-mono{font-family:var(--font-mono);font-size:12px;color:var(--zp-body)}.zp-eyebrow{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--zp-faint)}.zp-link{border:0;padding:0;background:transparent;color:var(--zp-accent-text);font-size:13px;cursor:pointer;white-space:nowrap}.zp-link:hover{text-decoration:underline}.zp-empty{padding:48px;text-align:center;color:var(--zp-dim);font-size:14px}.zp-phone,.zp-phone-meta{display:none}.zp-avatar{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:999px;font-weight:600;object-fit:cover}.zp-who-text{display:flex;flex-direction:column;min-width:0}.zp-who-text b{font-size:13px;font-weight:500;color:var(--zp-text)}.zp-who-text b,.zp-who-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zp-who-text small{font-size:12px;color:var(--zp-dim)}.zp-state{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap}.zp-state-dot{width:6px;height:6px;border-radius:999px}.zp-state--active{background:rgba(45,212,191,.12);color:var(--zp-accent-text)}.zp-state--active .zp-state-dot{background:#2dd4bf}.zp-state--idle{background:rgba(240,165,74,.14);color:var(--zp-amber)}.zp-state--idle .zp-state-dot{background:#f0a54a}.zp-state--over{background:rgba(239,107,107,.15);color:var(--zp-red)}.zp-state--over .zp-state-dot{background:#ef6b6b}.zp-state--leave{background:rgba(148,163,160,.14);color:var(--zp-body)}.zp-state--leave .zp-state-dot{background:#8a9a97}.zp-tstatus{padding:2px 8px;border-radius:999px;font-size:12px;white-space:nowrap}.zp-tstatus--todo{background:var(--zp-track);color:var(--zp-body)}.zp-tstatus--progress{background:rgba(91,141,239,.16);color:#9dbcf7}.zp-tstatus--review{background:rgba(165,124,242,.16);color:#c7adf7}.zp-tstatus--done{background:rgba(45,212,191,.12);color:var(--zp-accent-text)}html.theme-light .zp-tstatus--progress{color:#2f5fbf}html.theme-light .zp-tstatus--review{color:#6d45c4}.zp-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.zp-stat{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border-radius:12px;border:1px solid var(--zp-border);background:var(--zp-surface);color:var(--zp-text);text-align:left;cursor:pointer}.zp-stat:hover{border-color:var(--zp-dash)}.zp-stat.is-on{background:var(--zp-stat-on);border-color:var(--zp-accent)}.zp-stat-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--zp-soft)}.zp-stat-value{display:flex;align-items:baseline;gap:8px}.zp-stat-value b{font-size:26px;font-weight:600;line-height:1.2;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.zp-stat-value small{font-size:12px;color:var(--zp-dim)}.zp-filters{gap:10px}.zp-filters,.zp-find{display:flex;align-items:center}.zp-find{gap:8px;width:260px;height:34px;padding:0 12px;box-sizing:border-box;border-radius:8px;border:1px solid var(--zp-border-2);background:var(--zp-raised);color:var(--zp-dim)}.zp-find input{flex:1 1;min-width:0;border:0;outline:none;background:transparent;color:var(--zp-text);font:inherit;font-size:13px}.zp-find input::placeholder{color:var(--zp-dim)}.zp-find:focus-within{border-color:var(--zp-dash)}.zp .zp-select{display:flex;align-items:center;gap:6px;width:auto;height:34px;padding:0 12px;border-radius:8px;border:1px solid var(--zp-border-2);background:var(--zp-raised);color:var(--zp-light);font-size:13px;cursor:pointer}.zp .zp-select .menu-select-caret{display:inline-flex;color:var(--zp-light)}.zp .zp-select .menu-select-caret svg{width:12px;height:12px}.zp-showing{height:34px;padding:0 12px;border-radius:8px;border:1px dashed var(--zp-dash);background:transparent;color:var(--zp-accent-text);font-size:13px;cursor:pointer;white-space:nowrap}.zp-sorted{margin-left:auto;font-size:12px;color:var(--zp-dim);white-space:nowrap}.zp-table,.zp-tl{flex:1 1;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;border:1px solid var(--zp-border);background:var(--zp-panel)}.zp-trow{display:grid;grid-template-columns:minmax(0,1.5fr) 128px minmax(0,1.4fr) minmax(0,1.8fr) 140px 124px 28px;gap:16px;align-items:center;padding:11px 18px}.zp-thead{padding:10px 18px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--zp-faint);border-bottom:1px solid var(--zp-border)}.zp-tbody{flex:1 1;overflow-y:auto}.zp-row{width:100%;border:0;border-bottom:1px solid var(--zp-line);background:transparent;color:var(--zp-text);text-align:left;cursor:pointer}.zp-row:hover{background:var(--zp-hover)}.zp-row.is-sel .zp-tag,.zp-row:hover .zp-tag{background:#1d2b29}html.theme-light .zp-row.is-sel .zp-tag,html.theme-light .zp-row:hover .zp-tag{background:var(--bg-card-hover)}.zp-row.is-sel{background:var(--zp-sel)}.zp-who{gap:10px}.zp-team,.zp-who{display:flex;align-items:center;min-width:0}.zp-team{gap:6px;font-size:13px;color:var(--zp-body)}.zp-team-name{min-width:0;overflow-wrap:anywhere;line-height:1.35}.zp-none{font-size:12px;color:var(--zp-faint)}.zp-tags{display:flex;flex-wrap:wrap;gap:6px;min-width:0}.zp-tag{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:3px 8px;border-radius:6px;background:var(--zp-tag);font-size:12px;line-height:1.35;color:var(--zp-light);overflow-wrap:anywhere}.zp-tag .zp-pdot{align-self:flex-start;margin-top:5px}.zp-tags{align-items:center;flex-wrap:nowrap}.zp-tags>.zp-tag:not(.zp-tag--more){min-width:0}.zp-tags .zp-tag--more,.zp-team .zp-tag--more{flex-shrink:0}.zp-tag--more{padding:3px 7px;color:var(--zp-muted)}.zp-now{display:flex;flex-direction:column;gap:2px;min-width:0}.zp-now b{font-size:13px;font-weight:400;color:var(--zp-text)}.zp-now b,.zp-now small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zp-now small{font-size:12px;color:var(--zp-faint)}.zp-now.is-free b{color:var(--zp-amber)}.zp-now.is-leave b{color:var(--zp-muted)}.zp-today{display:flex;align-items:center;gap:10px}.zp-bar{flex:1 1;height:6px;border-radius:999px;background:var(--zp-track);overflow:hidden}.zp-bar>span{display:block;height:100%;border-radius:999px;background:var(--zp-accent)}.zp-bar>span.is-over{background:var(--zp-over)}.zp-chev{display:inline-flex;color:var(--zp-ghost)}.zp-peek-anchor{display:flex;min-width:0}.zp-peek-anchor>*{min-width:0}.zp-peek{position:fixed;z-index:120;width:264px;max-height:calc(100vh - 16px);overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-radius:10px;border:1px solid rgba(94,234,212,.12);background:rgba(17,26,25,.8);-webkit-backdrop-filter:blur(var(--overlay-blur)) saturate(1.1);backdrop-filter:blur(var(--overlay-blur)) saturate(1.1);color:#e4ebe9;box-shadow:0 16px 40px rgba(0,0,0,.45);font-family:var(--font-panel);pointer-events:auto}html.theme-light .zp-peek{border-color:var(--border-default);background:rgba(239,244,242,.82);color:var(--text-primary);box-shadow:0 14px 36px rgba(16,34,33,.16)}.zp-peek-name{font-size:13px;font-weight:600}.zp-peek-label{margin-top:2px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--zp-faint)}.zp-peek-list{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.zp-peek-list li{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;color:var(--zp-light);line-height:1.35;overflow-wrap:anywhere}.zp-peek-team{width:7px;height:7px;flex-shrink:0;border-radius:2px;background:var(--zp-dim)}.zp-tl-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid var(--zp-border);font-size:12px;color:var(--zp-soft)}.zp-tl-hint{color:var(--zp-text);font-weight:500}.zp-legend{margin-left:auto;gap:12px;flex-wrap:wrap}.zp-legend,.zp-legend>span{display:flex;align-items:center}.zp-legend>span{gap:5px}.zp-swatch{width:14px;height:12px;border-radius:3px}.zp-swatch.zp-cell--l0{border:1px solid #2a3735;box-sizing:border-box}.zp-swatch.zp-cell--planned{background:var(--zp-heat-3);opacity:.45}.zp-tl-head{display:grid;gap:4px;align-items:stretch;padding:10px 18px;border-bottom:1px solid var(--zp-border)}.zp-tl-label{align-self:end;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--zp-faint)}.zp-tl-label--end{text-align:right}.zp-col{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:0;padding:5px 0;border-radius:6px;border:1px solid transparent;background:transparent}.zp-col b{font-size:11px;font-weight:600;color:var(--zp-light);white-space:nowrap}.zp-col small{font-size:10px;color:var(--zp-dim);white-space:nowrap}.zp-col.is-weekend b{color:var(--zp-ghost)}.zp-col.is-today{background:var(--zp-today)}.zp-col.is-today b{color:var(--zp-accent-text)}.zp-col--day,.zp-col--week{border-color:var(--zp-border-2);background:var(--zp-raised);cursor:pointer}.zp-col--day{background:#15201e;border-color:#2a3b38}html.theme-light .zp-col--day{background:var(--bg-card-subtle);border-color:var(--border-default)}.zp-col--week b{color:var(--zp-text)}.zp-col--week small{color:var(--zp-muted)}.zp-col--day.is-today,.zp-col--week.is-today{background:var(--zp-today)}.zp-col--week.is-today b{color:var(--zp-accent-text)}.zp-col--day:hover,.zp-col--week:hover{border-color:var(--zp-dash)}.zp-tl-body{flex:1 1;overflow-y:auto;padding:6px 18px}.zp-tl-row{width:100%;display:grid;gap:4px;align-items:center;padding:6px 0;border:0;border-radius:8px;background:transparent;color:var(--zp-text);text-align:left;cursor:pointer}.zp-tl-row:hover{background:var(--zp-hover)}.zp-tl-row.is-sel{background:var(--zp-sel)}.zp-tl-who{display:flex;align-items:center;gap:10px;min-width:0;padding-left:4px}.zp-tl-who .zp-who-text small{font-size:11px}.zp-cell{height:44px;min-width:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;border-radius:6px}.zp-cell b{font-size:12px;font-weight:600;color:var(--zp-text);white-space:nowrap}.zp-cell small{font-size:10px;color:var(--zp-soft);white-space:nowrap}.zp-cell.is-planned{opacity:.45}.zp-cell--weekend{background:var(--zp-weekend)}.zp-cell--leave{background:var(--zp-leave)}.zp-cell--leave b{color:var(--zp-light)}.zp-cell--l0{background:var(--zp-heat-0)}.zp-cell--l1{background:var(--zp-heat-1)}.zp-cell--l2{background:var(--zp-heat-2)}.zp-cell--l3{background:var(--zp-heat-3)}.zp-cell--l4{background:var(--zp-heat-4)}.zp-cell--l3 b,.zp-cell--l4 b{color:#06201d}.zp-cell--l3 small,.zp-cell--l4 small{color:#0b3b35}.zp-words{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-right:4px;text-align:right}.zp-words b{font-size:12px;font-weight:500}.zp-words b.is-over{color:#f5b27a}.zp-words b.is-idle{color:var(--zp-amber)}.zp-words b.is-leave{color:var(--zp-light)}.zp-words b.is-steady{color:var(--zp-accent-text)}html.theme-light .zp-words b.is-over{color:#b85c12}.zp-words small{font-size:11px;color:var(--zp-dim)}.zp-scrim{position:fixed;inset:0;z-index:80;border:0;background:var(--overlay-dim);-webkit-backdrop-filter:blur(var(--overlay-blur));backdrop-filter:blur(var(--overlay-blur));cursor:default}.zp-drawer{position:fixed;z-index:81;top:0;right:0;bottom:0;width:440px;max-width:100vw;display:flex;flex-direction:column;background:#111a19;border-left:1px solid #243130;box-shadow:-24px 0 48px rgba(0,0,0,.35);font-family:var(--font-panel);color:var(--zp-text)}html.theme-light .zp-drawer{background:var(--bg-panel);border-left-color:var(--border-default);box-shadow:-16px 0 40px rgba(16,34,33,.12)}.zp-drawer{--zp-raised:#131c1b;--zp-panel:#0f1716;--zp-border:#1f2a28;--zp-border-2:#22302e;--zp-dash:#2f4340;--zp-text:#e4ebe9;--zp-light:#c7d2cf;--zp-body:#b4c0bd;--zp-soft:#a9b7b4;--zp-muted:#93a3a0;--zp-dim:#8c9c99;--zp-faint:#7d8d8a;--zp-accent:#2dd4bf;--zp-accent-text:#5eead4;--zp-on-accent:#06201d;--zp-track:#1c2726;--zp-amber:#fbc47a;--zp-red:#fca5a5}html.theme-light .zp-drawer{--zp-raised:var(--bg-card);--zp-panel:var(--bg-card);--zp-border:var(--border-default);--zp-border-2:var(--border-default);--zp-dash:var(--border-strong);--zp-text:var(--text-primary);--zp-light:var(--text-primary);--zp-body:var(--text-secondary);--zp-soft:var(--text-secondary);--zp-muted:var(--text-secondary);--zp-dim:var(--text-tertiary);--zp-faint:var(--text-tertiary);--zp-accent:var(--accent-teal);--zp-accent-text:var(--accent-teal-deep);--zp-on-accent:#fff;--zp-track:var(--bg-card-subtle);--zp-amber:#a86a12;--zp-red:#c0392b}.zp-dr-head{gap:14px;padding:22px 22px 18px;border-bottom:1px solid var(--zp-border)}.zp-dr-head,.zp-dr-id{display:flex;align-items:flex-start}.zp-dr-id{flex:1 1;flex-direction:column;gap:4px;min-width:0}.zp-dr-name{font-size:17px;font-weight:600}.zp-dr-role{font-size:13px;color:var(--zp-muted);margin-bottom:4px}.zp-dr-close{width:32px;height:32px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--zp-border-2);background:var(--zp-raised);color:var(--zp-light);cursor:pointer}.zp-dr-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 22px}.zp-dr-stats>div{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:10px;background:var(--zp-panel);border:1px solid var(--zp-border)}.zp-dr-stats span{font-family:var(--font-sans);font-size:12px;font-weight:500;color:var(--zp-soft)}.zp-dr-stats b{font-size:18px;font-weight:600}.zp-dr-stats .is-progress b{color:#9dbcf7}.zp-dr-stats .is-review b{color:#c7adf7}.zp-dr-stats .is-done b{color:var(--zp-accent-text)}html.theme-light .zp-dr-stats .is-progress b{color:#2f5fbf}html.theme-light .zp-dr-stats .is-review b{color:#6d45c4}.zp-dr-body{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 22px 16px}.zp-eyebrow--gap{margin-top:8px}.zp-dr-heading{display:flex;align-items:center;gap:8px;margin:0;font-family:var(--font-sans);font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--zp-text)}.zp-dr-heading-count{min-width:20px;padding:1px 7px;border-radius:999px;background:var(--zp-track);font-size:11.5px;font-weight:600;color:var(--zp-light);text-align:center;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.zp-dr-heading--gap{margin-top:10px}.zp-dr-group{display:flex;flex-direction:column;gap:8px}.zp-dr-group+.zp-dr-group{margin-top:8px}.zp-dr-task{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border-radius:10px;border:1px solid var(--zp-border);background:var(--zp-panel);color:var(--zp-text);text-align:left;cursor:pointer;transition:border-color .15s ease}.zp-dr-task:hover{border-color:var(--zp-dash)}.zp-dr-task-head{display:flex;align-items:center;gap:8px;min-width:0;font-size:11px}.zp-dr-task-id{flex-shrink:0;font-family:var(--font-mono);color:var(--zp-faint);letter-spacing:.02em}.zp-dr-task-proj{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;padding:2px 8px;border-radius:6px;background:var(--zp-tag);color:var(--zp-light);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.zp-dr-task-proj.is-none{background:transparent;padding:0;color:var(--zp-faint)}.zp-dr-task-title{font-size:13px;font-weight:500;line-height:1.4}.zp-dr-task.is-done .zp-dr-task-title{color:var(--zp-dim);text-decoration:line-through;font-weight:400}.zp-dr-task-desc{font-size:12px;line-height:1.45;color:var(--zp-dim);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.zp-dr-task-meta{display:flex;align-items:center;gap:8px;margin-top:2px;font-size:12px}.zp-dr-task-check{color:var(--zp-dim);white-space:nowrap}.zp-prio{padding:2px 8px;border-radius:999px;font-size:11px;white-space:nowrap;background:var(--zp-track);color:var(--zp-body)}.zp-prio--high{background:rgba(239,107,107,.15);color:var(--zp-red)}.zp-prio--medium{background:rgba(240,165,74,.14);color:var(--zp-amber)}.zp-dr-counts{display:flex;gap:8px;margin-top:8px}.zp-count-chip{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:8px;border:1px solid var(--zp-border-2);background:var(--zp-raised);color:var(--zp-light);font-family:var(--font-sans);font-size:12px;font-weight:500;cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:border-color .15s ease,color .15s ease}.zp-count-chip:hover,.zp-count-chip[aria-expanded=true]{border-color:var(--zp-dash);color:var(--zp-text)}.zp-count-chip-icon{display:inline-flex;color:var(--zp-dim)}.zp-count-chip-icon svg{width:13px;height:13px}.zp-due{margin-left:auto;color:var(--zp-dim);white-space:nowrap}.zp-due.is-late{color:var(--zp-red)}.zp-dr-empty{padding:20px;border-radius:10px;border:1px dashed var(--zp-dash);text-align:center;font-size:13px;color:var(--zp-soft)}.zp-dr-leave{padding:12px 14px;border-radius:10px;border:1px solid var(--zp-border);background:var(--zp-panel);font-size:13px;color:var(--zp-light)}.zp-dr-actions{display:flex;gap:10px;padding:16px 22px;border-top:1px solid var(--zp-border)}.zp-btn,.zp-btn-primary{height:40px;border-radius:8px;font-size:13px;cursor:pointer}.zp-btn-primary{flex:1 1;border:0;background:var(--zp-accent);color:var(--zp-on-accent);font-weight:600}.zp-btn{padding:0 16px;border:1px solid var(--zp-border-2);background:var(--zp-raised);color:var(--zp-text)}.zp-btn-primary:disabled,.zp-btn:disabled{opacity:.42;cursor:not-allowed}.zp button:focus-visible,.zp-drawer button:focus-visible{outline:2px solid var(--zp-accent-text);outline-offset:2px}@media (max-width:1200px){.zp-trow{grid-template-columns:minmax(0,1.4fr) 104px minmax(0,1.1fr) minmax(0,1.4fr) 112px 112px 20px;gap:12px}.zp-sorted{display:none}}@media (max-width:960px){.pulse-page.is-people{height:auto}.zp-table,.zp-tl{overflow:visible}.zp-tl{overflow-x:auto}.zp-tl-body,.zp-tl-head{min-width:860px}}@media (max-width:720px){.pulse-search-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;border:1px solid #22302e;background:#131c1b;color:#c7d2cf}.pulse-search-btn[aria-pressed=true]{border-color:#2dd4bf}.app.theme-light .pulse-search-btn{border-color:var(--border-default);background:var(--bg-card);color:var(--text-primary)}.zp-people{gap:14px}.zp-summary{display:flex;gap:8px;margin:0 -18px;padding:0 18px;overflow-x:auto;scrollbar-width:none}.zp-summary::-webkit-scrollbar{display:none}.zp-stat{flex-shrink:0;flex-direction:row;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:999px}.zp-stat-label{gap:6px;font-size:13px;color:var(--zp-text)}.zp-stat .zp-dot{width:7px;height:7px}.zp-stat-value b{font-size:13px;font-weight:400;color:var(--zp-muted)}.zp-desk,.zp-stat-value small{display:none}.zp-phone{display:inline}.zp-filters{display:none}.zp-filters.is-search-open{display:flex}.zp-filters.is-search-open .zp-find{flex:1 1;width:auto;height:40px}.zp-filters.is-search-open .zp-select,.zp-filters.is-search-open .zp-showing{display:none}.zp-table{border:0;background:transparent;overflow:visible}.zp-thead{display:none}.zp-tbody{display:flex;flex-direction:column;gap:10px;overflow:visible}.zp-row{grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"av name state" "av now now" "av meta meta";gap:6px 12px;align-items:start;padding:14px;border:1px solid var(--zp-border);border-radius:12px;background:var(--zp-surface)}.zp-row .zp-who{display:contents}.zp-row .zp-avatar{grid-area:av;width:36px!important;height:36px!important}.zp-row .zp-who-text{grid-area:name;align-self:center}.zp-row .zp-who-text b{font-size:14px}.zp-row .zp-who-text small{display:none}.zp-row>span:nth-child(6){grid-area:state}.zp-row .zp-state{padding:3px 9px;font-size:11px}.zp-row .zp-now{grid-area:now}.zp-row .zp-chev,.zp-row .zp-now small,.zp-row .zp-peek-anchor,.zp-row .zp-today{display:none}.zp-row .zp-phone-meta{grid-area:meta;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--zp-dim)}.zp-row .zp-phone-meta .zp-mono{margin-left:auto;color:var(--zp-dim)}.zp-tl-bar .zp-legend{margin-left:0}}.zp-sheet{display:flex;flex-direction:column;background:transparent}.zp-sheet .zp-dr-head{padding:4px 4px 14px}.zp-sheet .zp-dr-stats{padding:14px 4px}.zp-sheet .zp-dr-body{padding:4px;overflow:visible}.zp-sheet .zp-dr-actions{padding:14px 4px 4px}.app:has(.pulse-page) .pulse-strip{overflow-x:auto;overflow-y:hidden;padding:4px 2px 12px;margin:-4px -2px 0;scrollbar-width:thin;scrollbar-color:#2f4340 transparent;overscroll-behavior-x:contain}@supports selector(::-webkit-scrollbar){.app:has(.pulse-page) .pulse-strip{scrollbar-width:auto;scrollbar-color:auto}}.app:has(.pulse-page) .pulse-strip::-webkit-scrollbar{height:8px}.app:has(.pulse-page) .pulse-strip::-webkit-scrollbar-button{display:none;width:0;height:0}.app:has(.pulse-page) .pulse-strip::-webkit-scrollbar-track{background:transparent}.app:has(.pulse-page) .pulse-strip::-webkit-scrollbar-thumb{border-radius:999px;background:#2f4340}.app:has(.pulse-page) .pulse-strip::-webkit-scrollbar-thumb:hover{background:#3e5653}.app:has(.pulse-page) .pulse-pcard{flex-shrink:0;cursor:grab;touch-action:pan-x;-webkit-user-select:none;user-select:none;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.app:has(.pulse-page) .pulse-pcard-grip{display:none}.app:has(.pulse-page) .pulse-strip.is-sorting .pulse-pcard{cursor:grabbing}.app:has(.pulse-page) .pulse-pcard.is-dragging{position:relative;z-index:2;opacity:1;cursor:grabbing;border-color:#2dd4bf;box-shadow:0 12px 28px rgba(0,0,0,.45)}@supports not selector(::-webkit-scrollbar){.app.theme-light:has(.pulse-page) .pulse-strip{scrollbar-color:var(--border-strong) transparent}}.app.theme-light:has(.pulse-page) .pulse-strip::-webkit-scrollbar-thumb{background:var(--border-strong)}.app.theme-light:has(.pulse-page) .pulse-pcard.is-dragging{border-color:var(--accent-teal);box-shadow:0 12px 28px rgba(16,34,33,.18)}.app:has(.pulse-page) .pulse-chip,.app:has(.pulse-page) .pulse-pcard-count,.app:has(.pulse-page) .pulse-sub strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.app:has(.pulse-page) .pulse-pcard-alert{font-size:11px;line-height:14px;min-height:14px}.app:has(.pulse-page) .pulse-pcard-alert.is-todo{color:#b4c0bd}.app:has(.pulse-page) .pulse-pcard-alert.is-muted{color:#8c9c99}.app:has(.pulse-page) .pulse-chip.is-zero{opacity:.45}.app:has(.pulse-page) .pulse-body{align-items:start}.app:has(.pulse-page) .pulse-mcard{transition:border-color .15s ease}.app:has(.pulse-page) .pulse-mcard:hover{border-color:#2a3b38}.app:has(.pulse-page) .pulse-trow{border-radius:6px}.app:has(.pulse-page) .pulse-trow:hover .pulse-trow-title{color:#5eead4}.app:has(.pulse-page) .pulse-more{border-style:dashed}.app:has(.pulse-page) .pulse-more:hover{background:#162120;color:#99f6e4}.app:has(.pulse-page) .pulse-side-row{border-radius:8px}.app:has(.pulse-page) button.pulse-side-row:hover .pulse-side-row-title{color:#5eead4}.app:has(.pulse-page) .pulse-open-project:hover{text-decoration:underline}.app:has(.pulse-page) .pulse-note{border:1px dashed #22302e;background:transparent;color:#8c9c99;font-size:12px;line-height:1.5}.app:has(.pulse-page) :is(.pulse-trow,.pulse-more,.pulse-side-row,.pulse-review-btn,.pulse-open-project,.pulse-mcard-empty button,.pulse-search-btn):focus-visible{outline:2px solid #5eead4;outline-offset:2px}.app.theme-light:has(.pulse-page) .pulse-pcard-alert.is-todo{color:var(--text-secondary)}.app.theme-light:has(.pulse-page) .pulse-pcard-alert.is-muted{color:var(--text-tertiary)}.app.theme-light:has(.pulse-page) .pulse-mcard:hover{border-color:var(--border-strong)}.app.theme-light:has(.pulse-page) .pulse-trow:hover .pulse-trow-title,.app.theme-light:has(.pulse-page) button.pulse-side-row:hover .pulse-side-row-title{color:var(--accent-teal-deep)}.app.theme-light:has(.pulse-page) .pulse-more:hover{background:var(--bg-card-hover);color:var(--accent-teal-deep)}.app.theme-light:has(.pulse-page) .pulse-note{border-color:var(--border-default);background:transparent;color:var(--text-secondary)}.app.theme-light:has(.pulse-page) :is(.pulse-trow,.pulse-more,.pulse-side-row,.pulse-review-btn,.pulse-open-project,.pulse-range-btn,.pulse-pcard):focus-visible{outline-color:var(--accent-teal-deep)}.app.theme-light:has(.pulse-page) .pulse-pcard-alert{color:var(--status-risk-text)}.app.theme-light:has(.pulse-page) .pulse-pcard-alert.is-review{color:#6d45c4}.app.theme-light:has(.pulse-page) :is(.pulse-open-project,.pulse-mcard-empty button,.pulse-owner-action,.pulse-more){color:var(--accent-teal-deep)}.app.theme-light:has(.pulse-page) .pulse-member-state.is-active{background:var(--status-good-bg);color:var(--status-good-text)}.app.theme-light:has(.pulse-page) .pulse-member-state.is-idle{background:var(--status-risk-bg);color:var(--status-risk-text)}.app.theme-light:has(.pulse-page) .pulse-member-state.is-overloaded{background:var(--danger-soft-strong);color:var(--danger-text)}@media (max-width:720px){.app:has(.pulse-page) .pulse-titles{padding-left:44px;min-height:40px;justify-content:center;min-width:0}.app:has(.pulse-page) .pulse-sub{max-width:100%}.app:has(.pulse-page) .pulse-titles{align-items:stretch}.app:has(.pulse-page) .pulse-body,.app:has(.pulse-page) .pulse-members-grid{grid-template-columns:minmax(0,1fr)}.app:has(.pulse-page) :is(.pulse-panel,.pulse-mcard,.pulse-panel-id){min-width:0}.app:has(.pulse-page) .pulse-panel-head{flex-wrap:wrap}.app:has(.pulse-page) .pulse-chips{flex-wrap:wrap}.app:has(.pulse-page) .pulse-open-project{margin-left:0}.app:has(.pulse-page) .pulse-panel{padding:14px}}@media (prefers-reduced-motion:reduce){.app:has(.pulse-page) :is(.pulse-pcard,.pulse-mcard){transition:none}}.pulse-mark{display:inline-grid;place-items:center;flex-shrink:0;position:relative}.pulse-mark-tile{display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;background:linear-gradient(150deg,color-mix(in oklab,var(--pm) 34%,transparent),color-mix(in oklab,var(--pm) 12%,transparent));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--pm) 40%,transparent),inset 0 1px 0 rgba(255,255,255,.07);color:color-mix(in oklab,var(--pm) 62%,white);font-weight:650;letter-spacing:.01em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.pulse-mark--sm{width:24px;height:24px;border-radius:7px}.pulse-mark--sm .pulse-mark-tile{font-size:10px}.pulse-mark--md{width:40px;height:40px;border-radius:11px}.pulse-mark--md .pulse-mark-tile{font-size:14px}.pulse-mark--ring{padding:2px;background:conic-gradient(var(--pm) var(--pm-pct,0),color-mix(in oklab,var(--pm) 24%,transparent) 0)}.pulse-mark--ring .pulse-mark-tile{border-radius:9px;background:color-mix(in oklab,var(--pm) 16%,var(--pulse-panel,#111a19));box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.pulse-pcard-top .pulse-mark{margin-right:2px}.pulse-pcard.is-active .pulse-mark-tile{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--pm) 70%,transparent),inset 0 1px 0 rgba(255,255,255,.08)}.theme-light .pulse-mark-tile{color:color-mix(in oklab,var(--pm) 72%,black);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--pm) 45%,transparent)}.theme-light .pulse-mark--ring .pulse-mark-tile{background:color-mix(in oklab,var(--pm) 12%,white)}.app:has(.pulse-page) .pulse-members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;align-items:stretch}.app:has(.pulse-page) .pulse-members-grid>.pulse-mcard{min-width:0}.app:has(.pulse-page) .pulse-mcard-foot{margin-top:auto}.app:has(.pulse-page) .pulse-mcard-empty{flex:1 1;min-height:72px;margin-bottom:4px;flex-direction:column;justify-content:center;gap:8px;text-align:center;border-radius:10px}.app:has(.pulse-page) .pulse-mcard{min-height:0;padding:16px;gap:12px;border-radius:14px}.app:has(.pulse-page) .pulse-mcard-head{gap:12px}.app:has(.pulse-page) .pulse-mcard-name{font-size:14px}.app:has(.pulse-page) .pulse-mcard .pulse-seg{display:flex;height:4px;border-radius:999px;overflow:hidden}.app:has(.pulse-page) .pulse-mcard-stats{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:#8c9c99;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-bottom:-4px}.app:has(.pulse-page) .pulse-mcard-stats b{color:#e4ebe9;font-weight:650;margin-right:2px}.app:has(.pulse-page) .pulse-mcard-tasks{gap:8px}.app:has(.pulse-page) .pulse-trow{--prio:#64748b;display:flex;align-items:flex-start;gap:10px;padding:10px 12px 10px 11px;border-radius:10px;border:1px solid #1f2a28;border-left:3px solid var(--prio);background:#0f1716;transition:border-color .15s ease,background-color .15s ease}.app:has(.pulse-page) .pulse-trow:hover{background:#132120;border-color:#2a3b38;border-left-color:var(--prio)}.app:has(.pulse-page) .pulse-trow--high{--prio:#f87171}.app:has(.pulse-page) .pulse-trow--medium{--prio:#fbbf24}.app:has(.pulse-page) .pulse-trow--low{--prio:#64748b}.app:has(.pulse-page) .pulse-trow.is-done{--prio:#2f4340;background:transparent}.app:has(.pulse-page) .pulse-trow .pulse-check{margin-top:1px}.app:has(.pulse-page) .pulse-trow-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:7px}.app:has(.pulse-page) .pulse-trow-title{font-size:13px;line-height:1.4;font-weight:500;white-space:normal;overflow:hidden;text-overflow:clip;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.app:has(.pulse-page) .pulse-trow-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.app:has(.pulse-page) .pulse-trow-meta .pulse-badge{margin-left:auto}.app:has(.pulse-page) .pulse-prio{display:inline-flex;align-items:center;gap:5px;padding:2px 8px 2px 6px;border-radius:999px;font-size:11px;font-weight:600;line-height:16px;background:color-mix(in oklab,var(--prio-c) 14%,transparent);color:var(--prio-c)}.app:has(.pulse-page) .pulse-prio--high{--prio-c:#f87171}.app:has(.pulse-page) .pulse-prio--medium{--prio-c:#fbbf24}.app:has(.pulse-page) .pulse-prio--low{--prio-c:#94a3b8}.app:has(.pulse-page) .pulse-prio-bars{display:inline-flex;align-items:flex-end;gap:1.5px;height:9px}.app:has(.pulse-page) .pulse-prio-bars i{width:2.5px;border-radius:1px;background:color-mix(in oklab,var(--prio-c) 30%,transparent)}.app:has(.pulse-page) .pulse-prio-bars i:first-child{height:4px}.app:has(.pulse-page) .pulse-prio-bars i:nth-child(2){height:6.5px}.app:has(.pulse-page) .pulse-prio-bars i:nth-child(3){height:9px}.app:has(.pulse-page) .pulse-prio-bars i.is-on{background:var(--prio-c)}.app:has(.pulse-page) .pulse-due{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;line-height:16px;color:#8c9c99}.app:has(.pulse-page) .pulse-due-ico{display:inline-flex}.app:has(.pulse-page) .pulse-due-ico svg{width:12px;height:12px}.app:has(.pulse-page) .pulse-due--soon{color:#fbc47a}.app:has(.pulse-page) .pulse-due--late{color:#fca5a5;font-weight:600}.app:has(.pulse-page) .pulse-trow.is-done :is(.pulse-prio,.pulse-due){opacity:.55}.app:has(.pulse-page) .pulse-more{padding:9px;border-radius:10px}.app:has(.pulse-page) .pulse-mcard-foot{padding-top:10px;border-top:1px solid #1f2a28;line-height:1.5}.app:has(.pulse-page) .pulse-side-row-title{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.35}.app.theme-light:has(.pulse-page) .pulse-trow{border-color:var(--border-default);border-left-color:var(--prio);background:var(--bg-card)}.app.theme-light:has(.pulse-page) .pulse-trow:hover{background:var(--bg-card-hover);border-left-color:var(--prio)}.app.theme-light:has(.pulse-page) .pulse-trow.is-done{background:transparent;--prio:var(--border-strong)}.app.theme-light:has(.pulse-page) .pulse-prio--high{--prio-c:#dc2626}.app.theme-light:has(.pulse-page) .pulse-prio--medium{--prio-c:#b45309}.app.theme-light:has(.pulse-page) .pulse-prio--low{--prio-c:#64748b}.app.theme-light:has(.pulse-page) :is(.pulse-mcard-stats,.pulse-due){color:var(--text-secondary)}.app.theme-light:has(.pulse-page) .pulse-mcard-stats b{color:var(--text-primary)}.app.theme-light:has(.pulse-page) .pulse-due--soon{color:#b45309}.app.theme-light:has(.pulse-page) .pulse-due--late{color:var(--danger-text)}.app.theme-light:has(.pulse-page) .pulse-mcard-foot{border-top-color:var(--border-default)}@media (max-width:720px){.app:has(.pulse-page) .pulse-members-grid{grid-template-columns:minmax(0,1fr)}}.cfd-root{position:fixed;inset:0;z-index:2300;display:grid;place-items:center;padding:24px 16px}.cfd-scrim{position:absolute;inset:0;background:var(--overlay-dim,rgba(4,10,10,.55));-webkit-backdrop-filter:blur(var(--overlay-blur,6px));backdrop-filter:blur(var(--overlay-blur,6px))}.cfd{position:relative;width:min(420px,100%);border-radius:16px;border:1px solid var(--border-default);background:var(--bg-panel);color:var(--text-primary);box-shadow:0 24px 64px -16px rgba(0,0,0,.55),0 2px 8px rgba(0,0,0,.2);font-family:var(--font-sans)}.theme-light .cfd{box-shadow:0 24px 56px -18px rgba(16,34,33,.28),0 2px 8px rgba(16,34,33,.08)}.cfd-form{display:flex;flex-direction:column;gap:16px;padding:22px 22px 18px}.cfd-head{display:flex;align-items:center;gap:12px}.cfd-icon{width:36px;height:36px;flex-shrink:0;display:grid;place-items:center;border-radius:10px;background:var(--accent-teal-tint-12);color:var(--accent-teal-text)}.cfd-icon svg{width:18px;height:18px}.cfd--danger .cfd-icon{background:color-mix(in oklab,var(--danger) 14%,transparent);color:var(--danger-text)}.cfd-title{margin:0;font-size:16px;font-weight:600;line-height:1.35;letter-spacing:-.005em}.cfd-body{display:flex;flex-direction:column;gap:12px;padding-left:48px}.cfd-message{font-size:13.5px;line-height:1.55;color:var(--text-secondary);white-space:pre-line;overflow-wrap:anywhere}.cfd-item{padding:10px 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-card);font-size:13px;font-weight:500;line-height:1.4;color:var(--text-primary);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.cfd--danger .cfd-item{border-color:color-mix(in oklab,var(--danger) 28%,var(--border-default));background:color-mix(in oklab,var(--danger) 6%,var(--bg-card))}.cfd-field{display:flex;flex-direction:column;gap:6px;padding-left:48px}.cfd-label{font-size:12.5px;font-weight:600;color:var(--text-secondary)}.cfd-input{height:40px;padding:0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-input);color:var(--text-primary);font:inherit;font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.cfd-input:focus{border-color:var(--border-active);box-shadow:0 0 0 3px var(--accent-teal-tint-12)}.cfd-input.is-invalid{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in oklab,var(--danger) 14%,transparent)}.cfd-error{margin:0;font-size:12.5px;color:var(--danger-text)}.cfd-foot{display:flex;justify-content:flex-end;gap:10px;padding-top:2px}.cfd .cfd-btn{height:36px;padding:0 16px;justify-content:center;border-radius:9px;font-size:13.5px;font-weight:600}.cfd .cfd-btn:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}.cfd--danger .cfd-btn.btn-danger:focus-visible{outline-color:var(--danger)}.cfd .cfd-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width:560px){.cfd-root{place-items:end stretch;padding:0}.cfd{width:100%;border-radius:18px 18px 0 0;border-bottom:0}.cfd-form{padding:20px 18px calc(18px + env(safe-area-inset-bottom))}.cfd-body,.cfd-field{padding-left:0}.cfd-foot{flex-direction:column-reverse;gap:8px}.cfd .cfd-btn{width:100%;height:44px;font-size:15px}}.modal-manage-holidays{width:min(600px,94vw);max-width:600px}.hol{display:flex;flex-direction:column;gap:16px}.hol-lead{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary)}.hol-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.hol-year{display:inline-flex;align-items:center;gap:2px;height:36px;padding:0 4px 0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-card)}.hol-year-label{margin-right:8px;font-size:12px;font-weight:600;color:var(--text-secondary)}.hol-year-value{min-width:44px;text-align:center;font-size:14px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-primary)}.hol-year-step{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:7px;background:transparent;color:var(--text-secondary);cursor:pointer}.hol-year-step:hover:not(:disabled){background:var(--hover-subtle);color:var(--text-primary)}.hol-year-step:disabled{opacity:.35;cursor:not-allowed}.hol-year-step svg{width:14px;height:14px}.hol-count{font-size:12.5px;color:var(--text-tertiary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hol-seed{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:9px;border:1px dashed var(--border-strong);background:transparent;color:var(--accent-teal-text);font-size:12.5px;font-weight:500;cursor:pointer}.hol-seed:hover:not(:disabled){border-style:solid;background:var(--accent-teal-tint-8)}.hol-seed svg{width:14px;height:14px}.hol-add{display:grid;grid-template-columns:170px minmax(0,1fr) auto;grid-template-rows:auto 40px;column-gap:10px;row-gap:6px;align-items:end;padding:14px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-card)}.hol-field{display:contents}.hol-field label{grid-row:1;font-size:12px;font-weight:600;color:var(--text-secondary)}.hol-field input{grid-row:2}.hol-field--date input,.hol-field--date label{grid-column:1}.hol-field--name input,.hol-field--name label{grid-column:2}.hol-field input{width:100%;height:40px;box-sizing:border-box;padding:0 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-input);color:var(--text-primary);font:inherit;font-size:13.5px;outline:none;color-scheme:inherit;transition:border-color .15s ease,box-shadow .15s ease}.hol-field input::placeholder{color:var(--text-tertiary)}.hol-field input:focus{border-color:var(--border-active);box-shadow:0 0 0 3px var(--accent-teal-tint-12)}.hol-field input[aria-invalid=true]{border-color:var(--danger)}.hol .hol-add-btn{grid-row:2;grid-column:3;height:40px;padding:0 16px;border-radius:10px;justify-content:center;font-weight:600}.hol .hol-add-btn svg{width:15px;height:15px}.hol .hol-add-btn:disabled{opacity:.45;cursor:not-allowed}.hol-add-error{grid-column:1/-1;grid-row:3;margin:2px 0 0;font-size:12.5px;color:var(--danger-text)}.hol-warn{margin:-4px 0 0;padding:9px 12px;border-radius:9px;background:var(--status-risk-bg);color:var(--status-risk-text);font-size:12.5px;line-height:1.45}.hol-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 16px;border-radius:12px;border:1px dashed var(--border-strong);text-align:center;color:var(--text-secondary);font-size:13px}.hol-empty strong{color:var(--text-primary);font-size:14px;font-weight:600}.hol-empty-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:var(--accent-teal-tint-12);color:var(--accent-teal-text);margin-bottom:4px}.hol-empty-icon svg{width:18px;height:18px}.hol-list{gap:14px;max-height:min(360px,42vh);overflow-y:auto;padding-right:2px}.hol-list,.hol-month{display:flex;flex-direction:column}.hol-month{gap:6px}.hol-month-label{margin:0;font-size:12px;font-weight:600;color:var(--text-tertiary)}.hol-month ul{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.hol-row{display:flex;align-items:center;gap:12px;padding:8px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-card);transition:border-color .15s ease}.hol-row:hover{border-color:var(--border-strong)}.hol-row.is-new{border-color:var(--border-active);animation:hol-new 1.2s ease}@keyframes hol-new{0%{background:var(--accent-teal-tint-12)}}.hol-row.is-past{opacity:.62}.hol-tile{width:44px;height:44px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:10px;background:var(--accent-teal-tint-12);color:var(--accent-teal-text);line-height:1}.hol-tile b{font-size:16px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hol-tile small{margin-top:3px;font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.hol-row.is-past .hol-tile{background:var(--hover-subtle);color:var(--text-secondary)}.hol-row-text{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:3px}.hol-row-name{font-size:13.5px;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.hol-row-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;color:var(--text-tertiary)}.hol-soon{color:var(--accent-teal-text);font-weight:500}.hol-off{padding:1px 7px;border-radius:999px;background:var(--status-risk-bg);color:var(--status-risk-text);font-size:11px;font-weight:500}.hol-remove{width:32px;height:32px;flex-shrink:0;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color .15s ease,color .15s ease}.hol-remove svg{width:15px;height:15px}.hol-remove:hover:not(:disabled){background:color-mix(in oklab,var(--danger) 12%,transparent);color:var(--danger-text)}.hol-remove:focus-visible,.hol-seed:focus-visible,.hol-year-step:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}.hol-foot{display:flex;align-items:center;gap:10px;width:100%}.hol-foot-state{margin-right:auto;font-size:12.5px;color:var(--text-tertiary)}.hol-foot-state.is-dirty{color:var(--status-risk-text);font-weight:500}.hol-foot-state.is-dirty:before{content:"";display:inline-block;width:6px;height:6px;margin-right:7px;border-radius:50%;background:currentColor;vertical-align:1px}@media (prefers-reduced-motion:reduce){.hol-row.is-new{animation:none}}@media (max-width:560px){.hol-add{grid-template-columns:minmax(0,1fr);grid-template-rows:none}.hol-field{display:flex;flex-direction:column;gap:6px}.hol .hol-add-btn,.hol-field input,.hol-field label{grid-row:auto;grid-column:auto}.hol .hol-add-btn{width:100%;height:44px}.hol-add-error{grid-row:auto}.hol-seed{margin-left:0;width:100%;justify-content:center}.hol-list{max-height:none}.hol-foot-state{display:none}}.leave-type{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap;background:var(--bg-card-hover);color:var(--text-secondary)}.leave-type--annual{background:var(--accent-teal-tint-12);color:var(--accent-teal-text)}.leave-type--sick{background:color-mix(in oklab,#e879b9 16%,transparent);color:#f0a6cf}.leave-type--unpaid{background:var(--status-risk-bg);color:var(--status-risk-text)}.theme-light .leave-type--sick{color:#a3306f}.leave-row>.avatar,.leave-row>[class*=avatar]{flex-shrink:0;align-self:flex-start;margin-top:2px}.leave-row-name{font-weight:600;color:var(--text-primary)}.lap-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.lap-summary .leave-filterbar{margin-bottom:0}.lap-summary-text{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0;font-size:13.5px;color:var(--text-secondary)}.lap-summary-text strong{font-size:15px;font-weight:700;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lap-summary-soon{color:var(--status-risk-text);font-weight:600}.lap-summary-sort{margin-left:6px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-default);font-size:11.5px;color:var(--text-tertiary)}.lap-list{gap:12px}.lap{display:flex;flex-direction:column;gap:14px;padding:16px 18px;border-radius:14px;border:1px solid var(--border-default);background:var(--bg-card);transition:border-color .15s ease}.lap:hover{border-color:var(--border-strong)}.lap.is-soon{border-color:color-mix(in oklab,var(--status-risk-text) 38%,var(--border-default))}.lap-head{display:flex;align-items:center;gap:12px}.lap-head>:first-child{flex-shrink:0}.lap-who{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:2px}.lap-name{font-size:14.5px;font-weight:600;color:var(--text-primary);overflow-wrap:anywhere}.lap-meta{font-size:12.5px;color:var(--text-tertiary)}.lap-when{flex-shrink:0;padding:4px 10px;border-radius:999px;background:var(--bg-card-hover);color:var(--text-secondary);font-size:12px;font-weight:500;white-space:nowrap}.lap-when.is-soon{background:var(--status-risk-bg);color:var(--status-risk-text);font-weight:600}.lap-body{display:flex;gap:14px;align-items:flex-start}.lap-date{width:58px;flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:8px 0 9px;border-radius:12px;border:1px solid var(--border-default);background:var(--bg-panel);line-height:1}.lap-date-weekday{font-size:11px;font-weight:600;color:var(--text-tertiary)}.lap-date-day{margin:5px 0 4px;font-size:22px;font-weight:700;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lap-date-month{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-teal-text)}.lap-detail{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}.lap-detail-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lap-range{font-size:14px;font-weight:600;color:var(--text-primary)}.lap-days{font-size:13px;color:var(--text-secondary)}.lap-days.is-half{color:var(--accent-teal-text);font-weight:500}.lap-reason{margin:0;padding:8px 12px;border-left:2px solid var(--border-strong);border-radius:0 8px 8px 0;background:var(--bg-panel);font-size:13.5px;line-height:1.5;color:var(--text-primary);overflow-wrap:anywhere}.lap-reason.is-empty{color:var(--text-tertiary);font-style:italic}.lap-overlap{display:flex;align-items:center;gap:6px;margin:0;font-size:12.5px;color:var(--status-risk-text)}.lap-overlap-icon{display:inline-flex}.lap-overlap-icon svg{width:14px;height:14px}.lap-foot{display:flex;align-items:center;gap:12px;padding-top:12px;border-top:1px solid var(--divider-hairline)}.lap-foot--waiting{justify-content:flex-end}.lap-note-toggle{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer}.lap-note-toggle svg{width:14px;height:14px}.lap-note,.lap-note-toggle:hover{color:var(--text-primary)}.lap-note{flex:1 1;min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid var(--border-default);background:var(--bg-input);font:inherit;font-size:13px;resize:vertical;outline:none}.lap-note:focus{border-color:var(--border-active);box-shadow:0 0 0 3px var(--accent-teal-tint-12)}.lap-actions{margin-left:auto;display:flex;gap:8px}.lap .lap-approve,.lap .lap-decline{height:34px;padding:0 16px;font-weight:600}.lap .lap-approve svg{width:14px;height:14px}.lap .lap-decline:hover:not(:disabled){border-color:color-mix(in oklab,var(--danger) 40%,var(--border-default));color:var(--danger-text)}.lap button:focus-visible,.lap textarea:focus-visible{outline:2px solid var(--accent-teal);outline-offset:2px}@media (max-width:640px){.lap{padding:14px}.lap-head{flex-wrap:wrap}.lap-when{order:3}.lap-foot{flex-direction:column;align-items:stretch}.lap-actions{margin-left:0}.lap-actions>*{flex:1 1;height:44px!important;justify-content:center}}