:root{--left-w: 340px;--col-w: 26px;--row-h: 34px;--day-cell-h: 30px;--header-h: 52px;--form-control-h: 31px}:root{color-scheme:light;--bg: #ffffff;--surface: #ffffff;--surface-2: #f8fafc;--surface-3: #f1f5f9;--surface-4: #e2e8f0;--surface-project: #eef2f7;--surface-group: #fbfcfe;--surface-group-label: #f6f8fb;--surface-day-hover: #e8edf3;--signin-bg: #f1f5f9;--border: #e2e8f0;--border-soft: #f1f5f9;--border-strong: #cbd5e1;--text: #1e293b;--text-sub: #64748b;--text-faint: #94a3b8;--text-ghost: #b6c2d1;--grip: #cbd5e1;--grip-hover: #94a3b8;--on-accent: #ffffff;--primary: #2563eb;--primary-hover: #1d4ed8;--primary-soft: #eff6ff;--primary-border: #bfdbfe;--primary-ring: rgb(37 99 235 / 22%);--primary-tint: rgb(37 99 235 / 8%);--marquee-fill: rgb(37 99 235 / 10%);--flash-fill: rgb(37 99 235 / 16%);--delay: #dc2626;--delay-hover: #b91c1c;--delay-tint: #fef2f2;--delay-soft: #fee2e2;--delay-border: #fecaca;--delay-strong-text: #991b1b;--warn: #f59e0b;--deadline-forecast: #ea580c;--forecast-soft: #fff1e6;--forecast-text: #9a3412;--forecast-border: #fed7aa;--bg-sat: #eff6ff;--bg-sun: #fef2f2;--sat: #2563eb;--sun: #dc2626;--today: #f97316;--banner-warn-bg: #fef3c7;--banner-warn-border: #fcd34d;--banner-warn-text: #92400e;--banner-info-bg: #dbeafe;--banner-info-border: #93c5fd;--banner-info-text: #1e3a8a;--note-bg: #f0f9ff;--note-border: #bae6fd;--note-text: #075985;--readonly-bg: #f5f3ff;--readonly-border: #c4b5fd;--readonly-text: #5b21b6;--point-bg: #e0f2fe;--point-text: #0369a1;--assignee-main-bg: #e0e7ff;--complete-tint: rgb(226 232 240 / 60%);--complete-bar: #94a3b8;--group-frame-fill: rgb(148 163 184 / 5%);--dep-line: #94a3b8;--dep-line-hover: #334155;--inverse-surface: #1e293b;--inverse-text: #ffffff;--scrim: rgb(15 23 42 / 40%);--guide-scrim: rgb(15 23 42 / 38%);--shadow-card: 0 4px 24px rgb(0 0 0 / 6%);--shadow-menu: 0 8px 24px rgb(15 23 42 / 14%);--shadow-modal: 0 10px 40px rgb(0 0 0 / 20%);--shadow-toast: 0 4px 12px rgb(0 0 0 / 20%);--shadow-tip: 0 4px 12px rgb(0 0 0 / 22%);--shadow-bubble: 0 10px 30px rgb(15 23 42 / 35%);--shadow-bubble-soft: 0 6px 18px rgb(15 23 42 / 18%);--knob-bg: #ffffff;--shadow-knob: 0 1px 3px rgb(15 23 42 / 25%)}:root[data-theme=dark]{color-scheme:dark;--bg: #11151c;--surface: #171c24;--surface-2: #1c222b;--surface-3: #222935;--surface-4: #2b333f;--surface-project: #202834;--surface-group: #1a2029;--surface-group-label: #1e242e;--surface-day-hover: #2a323e;--signin-bg: #0c1015;--border: #2c3542;--border-soft: #232a34;--border-strong: #414c5c;--text: #e5e9f0;--text-sub: #9aa5b5;--text-faint: #7b8595;--text-ghost: #5b6472;--grip: #4a5462;--grip-hover: #8b95a5;--on-accent: #ffffff;--primary: #6d9bfa;--primary-hover: #8bb0fb;--primary-soft: #1b2842;--primary-border: #35507f;--primary-ring: rgb(109 155 250 / 30%);--primary-tint: rgb(109 155 250 / 12%);--marquee-fill: rgb(109 155 250 / 16%);--flash-fill: rgb(109 155 250 / 22%);--delay: #f87171;--delay-hover: #ef4444;--delay-tint: #2a1719;--delay-soft: #3a1d1f;--delay-border: #6b2c2c;--delay-strong-text: #fca5a5;--warn: #fbbf24;--deadline-forecast: #fb923c;--forecast-soft: #3a2415;--forecast-text: #fdba74;--forecast-border: #7c451f;--bg-sat: #151c29;--bg-sun: #201619;--sat: #7aa2f9;--sun: #f87171;--today: #fb923c;--banner-warn-bg: #3a2e12;--banner-warn-border: #6b5320;--banner-warn-text: #fcd34d;--banner-info-bg: #17263f;--banner-info-border: #2f4a7a;--banner-info-text: #bfdbfe;--note-bg: #10222c;--note-border: #24455a;--note-text: #7dd3fc;--readonly-bg: #221d3a;--readonly-border: #453a72;--readonly-text: #c4b5fd;--point-bg: #14293a;--point-text: #7dd3fc;--assignee-main-bg: #2a3153;--complete-tint: rgb(148 163 184 / 14%);--complete-bar: #6b7280;--group-frame-fill: rgb(148 163 184 / 8%);--dep-line: #7c8798;--dep-line-hover: #e2e8f0;--inverse-surface: #2b323d;--inverse-text: #f1f5f9;--scrim: rgb(2 6 12 / 62%);--guide-scrim: rgb(2 6 12 / 55%);--shadow-card: 0 4px 24px rgb(0 0 0 / 45%);--shadow-menu: 0 10px 28px rgb(0 0 0 / 55%);--shadow-modal: 0 14px 44px rgb(0 0 0 / 60%);--shadow-toast: 0 6px 16px rgb(0 0 0 / 55%);--shadow-tip: 0 6px 16px rgb(0 0 0 / 55%);--shadow-bubble: 0 12px 34px rgb(0 0 0 / 60%);--shadow-bubble-soft: 0 8px 20px rgb(0 0 0 / 45%);--knob-bg: #3a4657;--shadow-knob: 0 1px 3px rgb(0 0 0 / 55%)}*{box-sizing:border-box}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}html,body{margin:0;height:100%;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Meiryo,sans-serif;color:var(--text);font-size:13px;background:var(--bg)}#signin-screen{height:100%;display:flex;align-items:center;justify-content:center;background:var(--signin-bg)}.signin-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:40px 48px;text-align:center;box-shadow:var(--shadow-card)}.signin-card h1{margin:0 0 12px;font-size:20px}.signin-card p{color:var(--text-sub);line-height:1.7}.signin-error{color:var(--sun);font-weight:600}.signin-note{max-width:420px;font-size:12px}.agent-key{width:100%;max-width:420px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;word-break:break-all;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px;resize:vertical}#main-screen{height:100%;display:flex;flex-direction:column}#toolbar{display:flex;align-items:center;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border);flex-wrap:wrap;background:var(--surface)}#toolbar .sep{width:1px;height:20px;background:var(--border);margin:0 4px}#toolbar .spacer,.modal-footer .spacer{flex:1}.presence-avatars{display:inline-flex;align-items:center;padding-right:6px}.presence-avatar{width:24px;height:24px;flex:none;margin-left:-6px;border:2px solid var(--surface);border-radius:50%;background:var(--presence-color, var(--text-faint));color:var(--on-accent);font:inherit;font-size:11px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;padding:0;transition:transform 80ms ease-out}.presence-avatar:first-child{margin-left:0}.presence-avatar img{width:100%;height:100%;object-fit:cover;display:block}.presence-avatar:hover{transform:translateY(-1px) scale(1.08);z-index:1}.presence-avatar.idle{opacity:.55}.presence-avatar.me{border-color:var(--text-sub)}.presence-avatar.following{box-shadow:0 0 0 2px var(--presence-color, var(--text-faint));opacity:1}.presence-avatar.presence-more{background:var(--surface-4);color:var(--text-sub);cursor:default}.row-presence{flex:none;display:inline-flex;align-items:center}.row-presence-avatar{width:16px;height:16px;flex:none;margin-left:-4px;border:1.5px solid var(--surface);border-radius:50%;background:var(--presence-color, var(--text-faint));color:var(--on-accent);font-size:8px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;cursor:default}.row-presence-avatar:first-child{margin-left:0}.row-presence-avatar img{width:100%;height:100%;object-fit:cover;display:block}.row-presence-avatar.idle{opacity:.55}.row-presence-avatar.me{border-color:var(--text-sub)}.row-presence-avatar.presence-more{background:var(--surface-4);color:var(--text-sub)}.user-email{border:0;background:transparent;color:var(--text-sub);font:inherit;font-size:12px;padding:5px 7px;border-radius:6px;cursor:pointer}.user-email:hover,.user-email:focus-visible{background:var(--surface-3);color:var(--text);outline:none}#chart-title{font-size:14px;font-weight:600;border:1px solid transparent;border-radius:6px;padding:5px 8px;min-width:220px}#chart-title:hover,#chart-title:focus{border-color:var(--border);outline:none}#chart-select{width:340px;max-width:min(340px,calc(100vw - 24px));padding:5px 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.btn{border:1px solid var(--border);background:var(--surface);border-radius:6px;padding:5px 10px;font-size:12px;cursor:pointer;color:var(--text);white-space:nowrap}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-accent)}.btn.primary:hover{background:var(--primary-hover)}.btn.danger-2step.armed,.btn.danger{background:var(--delay);border-color:var(--delay);color:var(--on-accent)}.btn.danger:hover{background:var(--delay-hover)}.btn:disabled{opacity:.45;cursor:not-allowed}.danger-note{color:var(--delay);line-height:1.7}.toolbar-icon-btn{width:30px;height:28px;padding:5px;display:inline-flex;align-items:center;justify-content:center}.toolbar-icon-btn svg{width:17px;height:17px}.icon-label-btn{display:inline-flex;align-items:center;gap:5px}.icon-label-btn svg{width:15px;height:15px;flex:none}#bookmarks-btn svg{fill:none}#bookmarks-btn.panel-active svg{fill:currentColor}.theme-toggle{position:relative;flex:none;width:46px;height:24px;padding:0;border:1px solid var(--border);border-radius:999px;background:var(--surface-3);cursor:pointer;transition:background .12s ease-out,border-color .12s ease-out}.theme-toggle:hover{border-color:var(--border-strong)}.theme-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.theme-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--knob-bg);box-shadow:var(--shadow-knob);display:flex;align-items:center;justify-content:center;color:var(--text-sub);transition:transform .14s ease-out,color .14s ease-out}.theme-toggle[aria-checked=true]{background:var(--primary-soft)}.theme-toggle[aria-checked=true] .theme-knob{transform:translate(22px);color:var(--primary)}.theme-knob svg{width:12px;height:12px;display:block}.theme-toggle .theme-icon-moon,.theme-toggle[aria-checked=true] .theme-icon-sun{display:none}.theme-toggle[aria-checked=true] .theme-icon-moon{display:block}@media(prefers-reduced-motion:reduce){.theme-toggle,.theme-knob{transition:none}}.hist-tab-group{display:flex}#lock-banner{padding:7px 14px;background:var(--banner-warn-bg);border-bottom:1px solid var(--banner-warn-border);color:var(--banner-warn-text);font-size:12px}#update-banner{display:flex;align-items:center;gap:10px;padding:6px 14px;background:var(--banner-info-bg);border-bottom:1px solid var(--banner-info-border);color:var(--banner-info-text);font-size:12px}#update-banner[hidden]{display:none}#update-banner #update-message{flex:1;min-width:0}#update-banner .btn{padding:3px 10px;font-size:12px}#update-banner #update-dismiss{padding:3px 8px;line-height:1;color:var(--banner-info-text)}#guide-banner{display:flex;align-items:center;gap:10px;padding:6px 14px;background:var(--surface-3);border-bottom:1px solid var(--border);color:var(--text-sub);font-size:12px}#guide-banner[hidden]{display:none}#guide-banner #guide-banner-message{flex:1;min-width:0}#guide-banner .btn{padding:3px 10px;font-size:12px}#guide-banner #guide-banner-dismiss{padding:3px 8px;line-height:1}#empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-sub)}#content-row{flex:1;min-height:0;display:flex;position:relative}#gantt-scroll{flex:1;overflow:auto;position:relative}#gantt-inner{position:relative;width:max-content}#history-panel{flex:none;width:var(--panel-w, 400px);border-left:1px solid var(--border);background:var(--bg);display:flex;flex-direction:column;min-height:0;position:relative}#history-panel .panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border)}#history-panel .panel-header h2{margin:0;font-size:15px}#history-panel .hist-tabs{margin:0;padding:0 8px;overflow-x:auto;flex:none}#history-panel .hist-tab{flex:none;padding:8px 7px;font-size:12px}#history-panel .hist-pane{flex:1;min-height:0;overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:10px}#history-panel .settings-pane{padding:14px}#history-panel .audit-list,#history-panel .snapshot-list{max-height:none;overflow-y:visible}#history-panel .ai-pane{overflow:hidden}.ai-privacy-note{margin:0;padding:9px 10px;border:1px solid var(--note-border);border-radius:7px;background:var(--note-bg);color:var(--note-text);font-size:11px;line-height:1.6}.ai-subtabs{flex:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--border)}.ai-subtab{min-width:0;border:none;border-bottom:2px solid transparent;background:transparent;padding:8px 3px;color:var(--text-sub);cursor:pointer;font-size:11px;white-space:nowrap}.ai-subtab:hover{color:var(--primary);background:var(--surface-2)}.ai-subtab.active{border-bottom-color:var(--primary);color:var(--primary);font-weight:600}.ai-subpane{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}.ai-subpane[hidden]{display:none}.ai-subpane-note{flex:none;margin:0}.ai-prompt-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:5px}.ai-prompt-item{display:flex;align-items:flex-start;gap:5px;padding:5px 0;border-top:1px solid var(--border-soft)}.ai-prompt-item:first-child{border-top:none}.ai-prompt-reuse{flex:1;min-width:0;border:none;background:none;padding:0;text-align:left;color:var(--text);cursor:pointer}.ai-prompt-reuse:hover .ai-prompt-text{color:var(--primary)}.ai-prompt-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.ai-prompt-meta{display:block;color:var(--text-sub);font-size:10px;margin-top:2px}.ai-prompt-delete{flex:none}.ai-shared-conversation-list{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:3px}.ai-shared-conversation-row{display:flex;align-items:center;gap:4px}#ai-shared-conversation-index{height:100%;min-height:0;display:flex;flex-direction:column;gap:10px}#ai-shared-conversation-index[hidden]{display:none}.ai-shared-conversation-detail{height:100%;min-height:0;display:flex;flex-direction:column;gap:10px}.ai-shared-conversation-detail[hidden]{display:none}.ai-shared-conversation-item{flex:1;width:100%;min-width:0;border:1px solid transparent;border-radius:5px;background:transparent;padding:5px 6px;color:var(--text);text-align:left;cursor:pointer}.ai-shared-conversation-delete{flex:none}.ai-shared-conversation-item:hover{background:var(--surface-2)}.ai-shared-conversation-item.active{border-color:var(--primary-border);background:var(--primary-soft)}.ai-shared-conversation-title{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.ai-shared-conversation-meta{display:block;margin-top:2px;color:var(--text-sub);font-size:10px}.ai-readonly-banner{flex:none;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 9px;border:1px solid var(--readonly-border);border-radius:7px;background:var(--readonly-bg);color:var(--readonly-text);font-size:11px}.ai-readonly-banner[hidden]{display:none}.ai-readonly-banner>span{min-width:0}.ai-readonly-banner b,#ai-readonly-title{display:block}#ai-readonly-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-readonly-banner .btn{flex:none;font-size:11px}.ai-messages{flex:1;min-height:120px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:2px}.ai-message-row{display:flex;flex:none;flex-direction:column;max-width:92%}.ai-message-row.user{align-self:flex-end;align-items:flex-end}.ai-message-row.assistant{align-self:flex-start;align-items:flex-start}.ai-message-tools{display:flex;gap:3px;margin-top:3px}.ai-message-tool{width:24px;height:22px;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--text-sub);cursor:pointer;font-size:13px;line-height:20px;padding:0}.ai-message-tool:hover{border-color:var(--border);background:var(--surface-2);color:var(--primary)}.ai-message-tool:disabled{opacity:.45;cursor:default}.ai-empty{margin:auto 0;padding:18px 14px;border:1px dashed var(--border);border-radius:8px;background:var(--surface-2);color:var(--text-sub);text-align:center;line-height:1.7}.ai-empty b,.ai-empty span{display:block}.ai-empty b{color:var(--text);margin-bottom:4px}.ai-message{max-width:100%;padding:9px 11px;border-radius:9px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.ai-message.user{background:var(--primary);color:var(--on-accent);border-bottom-right-radius:3px}.ai-message.assistant{background:var(--surface-3);color:var(--text);border-bottom-left-radius:3px}.ai-message.error{background:var(--delay-tint);color:var(--delay);border:1px solid var(--delay-border)}.ai-message.loading{color:var(--text-sub)}.ai-composer{flex:none;display:flex;flex-direction:column;gap:7px;border-top:1px solid var(--border);padding-top:10px}#ai-question{width:100%;resize:vertical;min-height:66px;max-height:180px;padding:8px;border:1px solid var(--border);border-radius:6px;font:inherit;color:var(--text)}#ai-question:focus{outline:2px solid var(--primary-border);border-color:var(--primary)}.ai-actions{display:flex;align-items:center;gap:8px}.ai-actions .spacer{flex:1}.btn.panel-active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.io-heading{margin:6px 0 0;font-size:13px;border-top:1px solid var(--border);padding-top:12px}.io-heading:first-of-type{border-top:none;padding-top:0}#io-json{font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:220px;resize:vertical;padding:8px;border:1px solid var(--border);border-radius:6px;white-space:pre}#io-json[readonly]{background:var(--surface-2)}.io-actions{flex-wrap:wrap}.split-pane #ts-instruction{width:100%;box-sizing:border-box;resize:vertical;padding:8px;border:1px solid var(--border);border-radius:6px;font:inherit;line-height:1.5}.ts-instruction-actions{margin-top:6px;justify-content:flex-end}.ts-status{margin:8px 0;display:flex;flex-direction:column;gap:3px}.ts-error{font-size:12px;color:var(--delay);font-weight:600}.ts-warn{font-size:12px;color:var(--deadline-forecast)}.ts-options{flex-wrap:wrap;gap:10px;align-items:flex-end}.ts-options label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:3px}.ts-options label.ts-check{flex-direction:row;align-items:center;gap:4px}.ts-tasks{display:flex;flex-direction:column;gap:8px;margin:10px 0}.ts-task{border:1px solid var(--border);border-radius:6px;padding:8px}.ts-task-head{display:flex;gap:6px;flex-wrap:wrap}.ts-task-head .ts-name{flex:3;min-width:140px;font-weight:600}.ts-task-head .ts-assignee{flex:1;min-width:80px}.ts-task-head .ts-duration{width:64px}.ts-task-head .ts-deadline{width:140px}.ts-lines{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:3px}.ts-lines li{display:flex;align-items:center;gap:6px;font-size:12px}.ts-line-target{max-width:140px;flex:none}.ts-line-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts-leftover{border:1px solid var(--deadline-forecast);border-radius:6px;padding:8px;margin-bottom:10px}.ts-leftover-head{font-size:12px;font-weight:600;color:var(--deadline-forecast)}.ts-body-line{color:var(--muted);padding-left:4px}.migrate-pane fieldset{margin:10px 0;padding:8px 10px 10px}.migrate-pane legend{font-size:12px;color:var(--muted);padding:0 4px}.migrate-pane #mig-dest{width:100%;height:var(--form-control-h)}.mig-project-list{display:flex;flex-direction:column;gap:2px;max-height:260px;overflow-y:auto}.mig-project{display:flex;align-items:center;gap:8px;padding:4px 2px;border-radius:4px;cursor:pointer}.mig-project:hover{background:var(--surface-3)}.mig-project-color{width:4px;height:16px;border-radius:2px;flex:none}.mig-project-name{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mig-project-count{font-size:11px;color:var(--muted);flex:none}.mig-dest-info{margin-top:8px;display:flex;flex-direction:column;gap:3px}.mig-dest-row{font-size:12px;color:var(--muted)}.mig-dest-row.warn{color:var(--deadline-forecast);font-weight:600}.mig-warnings{margin:8px 0}.mig-warnings .audit-details{margin-top:4px}#gantt-header{position:sticky;top:0;z-index:30;height:var(--header-h);background:var(--surface);border-bottom:1px solid var(--border);width:max-content}#gantt-header .corner{position:sticky;left:0;z-index:31;display:inline-flex;align-items:center;gap:8px;width:var(--left-w);height:var(--header-h);background:var(--surface);overflow:visible;border-right:1px solid var(--border);border-bottom:1px solid var(--border);vertical-align:top;padding:6px 10px 6px 0;font-weight:600;color:var(--text-sub)}.corner-row-heading{align-self:stretch;width:42px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-right:1px solid var(--border);font-size:11px}.corner-title{flex:none;display:inline-flex;align-items:center;white-space:nowrap}#gantt-header .assignee-filter{margin-left:auto;min-width:0}#gantt-header .assignee-filter-label{display:none}#gantt-header .af-control{flex:1 1 112px;min-width:84px;max-width:260px}#gantt-header .af-box{height:var(--form-control-h)}.pane-resizer{position:absolute;top:0;bottom:0;width:9px;cursor:col-resize;z-index:34}#left-resizer{left:calc(var(--left-w) - 4px)}#right-resizer{left:-5px}.pane-resizer:after{content:"";position:absolute;top:0;bottom:0;left:4px;width:2px;background:transparent}.pane-resizer:hover:after,.pane-resizer:active:after{background:var(--primary)}.col-resize-guide{position:fixed;top:0;bottom:0;width:2px;background:var(--primary);z-index:999;pointer-events:none}.assignee-filter{display:inline-flex;align-items:center;gap:6px}.assignee-filter-label{font-size:12px;font-weight:500;color:var(--text-sub);flex:none}.af-control{position:relative;display:inline-flex;min-width:0;max-width:260px}.af-box{display:flex;align-items:center;gap:4px;width:100%;min-width:0;padding:3px 5px 3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);font:inherit;font-size:12px;color:var(--text);cursor:pointer}.af-box:hover{border-color:var(--border-strong)}.af-box:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.af-tags{display:flex;align-items:center;gap:3px;flex:1;min-width:0;overflow:hidden}.af-placeholder{color:var(--text-sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.af-tag{display:inline-flex;align-items:center;gap:1px;flex:none;max-width:104px;padding:1px 2px 1px 6px;border-radius:4px;background:var(--bg-sat);color:var(--primary);font-size:11px;font-weight:600;white-space:nowrap}.af-tag-name{overflow:hidden;text-overflow:ellipsis}.af-tag-x{flex:none;border:0;background:none;padding:0 2px;font:inherit;font-size:12px;line-height:1;color:inherit;opacity:.6;cursor:pointer}.af-tag-x:hover{opacity:1}.af-tag-more{padding:1px 5px}.af-caret{flex:none;font-size:9px;color:var(--text-sub)}.assignee-filter.active .assignee-filter-label{color:var(--primary)}.assignee-filter.active .af-box{border-color:var(--primary)}.af-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:40;min-width:100%;max-height:320px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-menu)}.af-item{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;border:0;border-radius:6px;background:none;font:inherit;font-size:12px;font-weight:400;color:var(--text);text-align:left;cursor:pointer}.af-item:hover{background:var(--bg-sat)}.af-item.on{color:var(--primary);font-weight:600}.af-check{flex:none;width:12px;color:var(--primary)}.af-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.af-count{flex:none;font-size:11px;font-weight:400;color:var(--text-sub)}.af-menu-foot{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.af-clear{width:100%;padding:5px 8px;border:0;border-radius:6px;background:none;font:inherit;font-size:11px;color:var(--text-sub);text-align:left;cursor:pointer}.af-clear:hover{background:var(--bg-sat);color:var(--text)}#header-days{position:absolute;left:var(--left-w);top:0;height:var(--header-h)}.month-cell{position:absolute;top:0;height:22px;line-height:22px;font-size:11px;font-weight:600;padding-left:6px;border-left:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;white-space:nowrap;background:var(--surface)}.day-cell{position:absolute;top:22px;width:var(--col-w);height:var(--day-cell-h);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;line-height:1;text-align:center;font-size:10px;border-left:1px solid var(--border-soft);color:var(--text-sub)}.day-num{font-size:10px}.day-dow{font-size:8px;opacity:.75}.day-cell.sat{color:var(--sat);background:var(--bg-sat)}.day-cell.sun{color:var(--sun);background:var(--bg-sun)}.day-cell.today{font-weight:700;color:var(--today)}.day-cell.hovered{background:var(--surface-day-hover);font-weight:700;border-radius:3px}#gantt-footer{position:sticky;bottom:0;z-index:30;height:var(--day-cell-h);background:var(--surface);border-top:1px solid var(--border);width:max-content}#gantt-footer .footer-corner{position:sticky;left:0;z-index:31;display:inline-block;width:var(--left-w);height:var(--day-cell-h);background:var(--surface);border-right:1px solid var(--border)}#footer-days{position:absolute;left:var(--left-w);top:0;height:var(--day-cell-h)}#footer-days .day-cell{top:0}#gantt-body{position:relative;width:max-content}.day-bg{position:absolute;top:0;bottom:0;width:var(--col-w);pointer-events:none}.day-bg.sat{background:var(--bg-sat)}.day-bg.sun{background:var(--bg-sun)}#today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--today);opacity:.7;pointer-events:none;z-index:3}.grow{position:relative;height:var(--row-h);border-bottom:1px solid var(--border-soft);width:max-content}.grow.project{background:var(--surface-2);border-bottom:1px solid var(--border)}.row-label{position:sticky;left:0;z-index:10;display:inline-flex;align-items:center;gap:6px;width:var(--left-w);height:100%;padding:0 8px 0 0;background:var(--surface);border-right:1px solid var(--border);overflow:hidden;vertical-align:top}.row-number-cell{align-self:stretch;width:42px;flex:none;display:inline-flex;align-items:center;justify-content:flex-end;padding-right:8px;border-right:1px solid var(--border);color:var(--text-sub);font-size:11px;font-variant-numeric:tabular-nums;cursor:default;-webkit-user-select:text;user-select:text}.grow.project .row-number-cell{justify-content:center;padding-right:0;-webkit-user-select:none;user-select:none}.grow.project .row-label{background:var(--surface-project);font-weight:700}.project-collapse-toggle{font-size:10px;line-height:1;color:var(--text-sub);width:18px;text-align:center}.project-color-band{width:4px;align-self:stretch;border-radius:2px;flex:none}.grow.group{background:var(--surface-group)}.grow.group .row-label{background:var(--surface-group-label);font-weight:600}.grow.group .row-number-cell{justify-content:center;padding-right:0;-webkit-user-select:none;user-select:none}.group-collapse-toggle{font-size:7.5px;line-height:1;color:var(--text-sub);width:18px;text-align:center}.group-color-band{width:3px;align-self:stretch;margin:7px 0;border-radius:2px;flex:none;opacity:.55}.group-name{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.group-name:hover{text-decoration:underline}.group-count{flex:none;font-size:10px;color:var(--text-sub)}.group-default-btn{padding:2px 4px;line-height:0}.group-default-icon{width:14px;height:14px;display:block;color:var(--text-ghost)}.group-default-btn:hover .group-default-icon{color:var(--text-sub)}.group-ungroup-btn:hover{background:var(--delay-soft);color:var(--delay)}.group-ungroup-btn.armed{width:auto;padding:0 8px;font-size:11px;font-weight:600;white-space:nowrap;border-radius:999px}.group-rename-input{font:inherit;font-size:12px;font-weight:600;border:1px solid var(--primary);border-radius:4px;background:var(--surface);color:var(--text);padding:1px 4px;min-width:0;flex:1}.grow.task.in-group .task-name-cell{padding-left:28px}.project-name{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-name:hover{text-decoration:underline}.project-group-btn{padding:2px 4px;line-height:0}.project-group-icon{width:14px;height:14px;display:block;color:var(--text-ghost)}.project-group-btn:hover .project-group-icon{color:var(--text-sub)}.project-rename-input{font:inherit;font-weight:700;border:1px solid var(--primary);border-radius:4px;background:var(--surface);color:var(--text);padding:1px 4px;width:160px}.project-color-input{width:20px;height:20px;padding:0;border:1px solid var(--border);border-radius:4px;background:none;cursor:pointer;flex:none}.icon-btn{border:none;background:none;cursor:pointer;color:var(--text-sub);font-size:12px;padding:2px 4px;border-radius:4px;flex:none}.icon-btn:hover{background:var(--surface-4);color:var(--text)}.icon-btn.danger-2step.armed{background:var(--delay);color:var(--on-accent)}.drag-grip{flex:none;color:var(--grip);cursor:grab;font-size:10px;letter-spacing:-1px;padding:0 2px;-webkit-user-select:none;user-select:none;touch-action:none}.grow:hover .drag-grip{color:var(--grip-hover)}.row-label{cursor:grab}.row-drag-source{opacity:.45}.row-drop-indicator{position:absolute;left:0;height:0;border-top:2px solid var(--primary);z-index:25;pointer-events:none}.task-name-cell{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;padding-left:14px}.task-name-cell:hover{text-decoration:underline}.assignee-chip{flex:none;background:var(--surface-3);border-radius:10px;padding:1px 8px;font-size:10px;color:var(--text-sub);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.assignee-chip.main{background:var(--assignee-main-bg);color:var(--text);display:inline-flex;align-items:center;gap:4px}.assignee-main-dot{flex:none;width:6px;height:6px;border-radius:50%;background:var(--primary)}.assignee-chip.more{max-width:none}.duration-chip{flex:none;font-size:10px;color:var(--text-sub)}.assignee-field{display:flex;flex-wrap:wrap;align-items:center;gap:4px;width:100%;min-height:var(--form-control-h);padding:3px 26px 3px 6px;border:1px solid var(--border);border-radius:6px;background:var(--surface);cursor:text}.assignee-field:focus-within{outline:2px solid var(--primary-border);border-color:var(--primary)}.assignee-tags{display:contents}.modal-body .combo .assignee-field input{flex:1 1 3.5em;min-width:3.5em;width:auto;height:auto;border:0;padding:0;background:transparent;outline:none}.assignee-edit-chip{display:inline-flex;align-items:center;gap:4px;background:var(--surface-3);border-radius:12px;padding:2px 4px 2px 6px;font-size:12px}.assignee-edit-chip.main{background:var(--assignee-main-bg)}.assignee-main-toggle{width:12px;height:12px;border-radius:50%;border:1.5px solid var(--primary);background:transparent;padding:0;cursor:pointer;flex:none}.assignee-edit-chip.main .assignee-main-toggle{background:var(--primary);cursor:default}.assignee-remove{border:none;background:transparent;color:var(--muted);cursor:pointer;font-size:13px;line-height:1;padding:0 2px}.assignee-remove:hover{color:var(--delay)}.grow.task.complete{background:var(--complete-tint)}.grow.task.complete .row-label{background:var(--surface-3);color:var(--text-sub)}.grow.task.complete .assignee-chip{background:var(--surface-4)}.grow.task.complete .ghost-bar{border-color:var(--complete-bar);opacity:.35}.bar{position:absolute;top:6px;height:calc(var(--row-h) - 12px);border-radius:5px;cursor:grab;z-index:4;display:flex;align-items:center;padding:0 6px;color:var(--on-accent);font-size:11px;overflow:visible;white-space:nowrap;-webkit-user-select:none;user-select:none;touch-action:none}.bar.dragging{opacity:.75;cursor:grabbing;z-index:20}.bar.delayed{box-shadow:0 0 0 2px var(--delay)}.bar.cycle{box-shadow:0 0 0 2px var(--warn)}.grow.task.complete .bar{background:var(--complete-bar)!important;opacity:.72}.bar.selected{box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--primary)}.row-selected .row-label{background:var(--primary-soft)}.marquee-rect{position:absolute;border:1px solid var(--primary);background:var(--marquee-fill);z-index:30;pointer-events:none}.bar .bar-label{min-width:0;margin-left:5px;overflow:hidden;text-overflow:ellipsis;font-weight:600;text-shadow:0 1px 2px rgb(0 0 0 / 40%)}.bar .bar-label-out{flex:none;margin-left:18px;color:var(--text);font-size:11px;font-weight:600;-webkit-text-stroke:0;text-shadow:none;pointer-events:none}.bar .resize-handle{position:absolute;right:-7px;top:0;bottom:0;width:12px;cursor:ew-resize}.bar .dep-handle{position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:16px;height:16px;border-radius:50%;background:var(--on-accent);border:2.5px solid var(--primary);cursor:crosshair;z-index:6;opacity:1;touch-action:none;transition:transform 80ms ease-out,box-shadow 80ms ease-out}.bar .dep-handle:before{content:"";position:absolute;inset:-11px -4px -11px -6px}.bar .dep-handle:hover,.bar .dep-handle:active{transform:translateY(-50%) scale(1.15);box-shadow:0 0 0 3px var(--primary-ring)}body.dep-connecting{cursor:crosshair}.bar.dep-target{box-shadow:0 0 0 3px var(--primary)}.bar .bar-progress{flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;padding-left:6px}.bar .bar-meta{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;pointer-events:none}.bar .bar-meta-track{flex:0 0 auto;display:inline-flex;align-items:center;width:max-content;min-width:100%;pointer-events:none}.bar .bar-progress-count{font-size:10px;font-weight:700;line-height:1;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:#fff;text-shadow:-1px -1px 1px rgb(30 41 59 / 72%),1px -1px 1px rgb(30 41 59 / 72%),-1px 1px 1px rgb(30 41 59 / 72%),1px 1px 1px rgb(30 41 59 / 72%),0 2px 4px rgb(30 41 59 / 55%)}.bar .bar-progress.complete .bar-progress-count{color:#dcfce7}.bar .bar-label-out.bar-grab-target,.bar .bar-progress-count.bar-grab-target{pointer-events:auto;cursor:grab}.bar.dragging .bar-grab-target{cursor:grabbing}.bar .bar-donut{flex:0 0 auto;filter:drop-shadow(0 0 1px rgb(30 41 59 / 90%)) drop-shadow(0 2px 3px rgb(30 41 59 / 65%))}.bar .bar-donut .donut-track-outline{fill:none;stroke:#1e293bb3;stroke-width:5}.bar .bar-donut .donut-track{fill:none;stroke:#fff9;stroke-width:3}.bar .bar-donut .donut-arc{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round}.bar .bar-donut .donut-check{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.bar .bar-no-criteria{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;background:var(--warn);color:var(--on-accent);font-size:12px;font-weight:900;line-height:1;box-shadow:0 0 0 1.5px #ffffffd9,0 1px 2px #0006}#dep-drag-overlay{position:fixed;inset:0;width:100vw;height:100vh;z-index:998;pointer-events:none}#dep-drag-overlay .dep-drag-line{fill:none;stroke:var(--primary);stroke-width:2;stroke-dasharray:5 3}.deadline-mark{position:absolute;top:2px;bottom:2px;width:0;border-left:2px dashed var(--text-faint);z-index:5}.deadline-mark.forecast{border-left-color:var(--deadline-forecast)}.deadline-mark.overdue{border-left-style:solid;border-left-color:var(--delay)}.deadline-mark.done{border-left-color:var(--border-strong);opacity:.7}.deadline-mark-flag{position:absolute;left:1px;top:-1px;width:13px;height:13px;color:var(--delay)}.deadline-over{position:absolute;top:6px;height:calc(var(--row-h) - 12px);border-radius:4px;z-index:3;pointer-events:none}.deadline-over.forecast{background:repeating-linear-gradient(-45deg,color-mix(in srgb,var(--deadline-forecast) 30%,transparent) 0 4px,color-mix(in srgb,var(--deadline-forecast) 10%,transparent) 4px 8px);border:1px dashed color-mix(in srgb,var(--deadline-forecast) 65%,transparent)}.deadline-over.overdue{background:color-mix(in srgb,var(--delay) 26%,transparent);border:1px solid color-mix(in srgb,var(--delay) 55%,transparent)}.deadline-chip{flex:none;display:inline-flex;align-items:center;gap:3px;max-width:132px;padding:1px 6px 1px 4px;border-radius:999px;font-size:10px;font-weight:600;white-space:nowrap;overflow:hidden;background:var(--surface-3);color:var(--text-sub)}.deadline-chip.forecast{background:var(--forecast-soft);color:var(--forecast-text)}.deadline-chip.overdue{background:var(--delay);color:var(--on-accent)}.deadline-flag{width:9px;height:9px;flex:none}.deadline-badge{flex:none;display:inline-flex;align-items:center;gap:3px;padding:1px 6px 1px 4px;border-radius:999px;font-size:10px;font-weight:700}.deadline-badge.forecast{background:var(--forecast-soft);color:var(--forecast-text)}.deadline-badge.overdue{background:var(--delay);color:var(--on-accent)}.deadline-filter{flex:none;display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;border:1px solid transparent;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.deadline-filter.forecast{background:var(--forecast-soft);color:var(--forecast-text);border-color:var(--forecast-border)}.deadline-filter.overdue{background:var(--delay-soft);color:var(--delay-strong-text);border-color:var(--delay-border)}.deadline-filter:hover{filter:brightness(.97)}.deadline-filter.active{outline:2px solid var(--primary);outline-offset:1px}.grow.task.complete .deadline-chip{background:var(--surface-4);color:var(--text-faint)}.ghost-bar{position:absolute;top:6px;height:calc(var(--row-h) - 12px);border:1.5px dashed var(--delay);border-radius:5px;opacity:.6;pointer-events:none;z-index:2}.project-bar{position:absolute;top:9px;height:calc(var(--row-h) - 18px);border-radius:3px;opacity:.85;pointer-events:none;z-index:4}.group-frame{position:absolute;border:2.5px dotted;border-radius:6px;background:var(--group-frame-fill);pointer-events:none}.group-frame-resize{position:absolute;left:-10px;right:-10px;z-index:6;cursor:grab;pointer-events:auto}.group-frame-resize.bottom{bottom:-11px;height:14px}.group-frame-resize.top{top:-4px;height:11px}.group-frame-resize:active{cursor:grabbing}body.group-resizing,body.group-resizing *{cursor:grabbing!important}.grow.group-resize-preview{background:var(--primary-tint)}.group-bar{position:absolute;top:8px;height:calc(var(--row-h) - 16px);border-radius:3px;pointer-events:auto;cursor:pointer;z-index:4}.group-bar:hover{filter:brightness(1.08)}.group-bar .period-text{pointer-events:none}.aggregate-bar-label{position:absolute;left:7px;right:7px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:5px;min-width:0;font-size:11px;font-weight:600;line-height:1;color:#fff;text-shadow:0 1px 2px rgb(15 23 42 / 55%);pointer-events:none}.aggregate-bar-label-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.aggregate-bar-mark{flex:none;width:12px;height:12px;color:#fff;filter:drop-shadow(0 1px 1px rgb(15 23 42 / 45%))}.aggregate-bar-name{display:inline-flex;align-items:center;gap:5px;margin-right:8px;font-size:11px;font-weight:600;color:var(--text)}.aggregate-bar-mark.outside{color:var(--text-sub);filter:none}.group-bar .period-text,.project-bar .period-text{position:absolute;left:100%;margin-left:8px;top:50%;transform:translateY(-50%);font-size:10px;font-weight:600;color:var(--text-sub);white-space:nowrap}.drag-tip{position:absolute;top:-22px;left:0;background:var(--inverse-surface);color:var(--inverse-text);font-size:10px;padding:2px 6px;border-radius:4px;white-space:nowrap;z-index:30;pointer-events:none}#dep-svg{position:absolute;top:0;pointer-events:none;z-index:5}#dep-svg .dep-line{fill:none;stroke:var(--dep-line);stroke-width:1.5;pointer-events:none}#dep-svg .dep-arrow{fill:var(--dep-line);stroke:none}#dep-svg .dep-arrow.strong{fill:var(--dep-line-hover)}#dep-svg .dep-hit{fill:none;stroke:transparent;stroke-width:12;pointer-events:stroke}body.bar-handle-priority #dep-svg .dep-hit{pointer-events:none}#dep-svg .dep-edge.dep-hovered .dep-line,#dep-svg .dep-edge.dep-related .dep-line{stroke:var(--dep-line-hover);stroke-width:2.5;marker-end:url(#arrow-strong)}#dep-svg .dep-remove-button{opacity:0;pointer-events:none;cursor:pointer;transition:opacity .1s ease}#dep-svg .dep-edge.dep-hovered .dep-remove-button,#dep-svg .dep-remove-button:focus{opacity:1;pointer-events:all;outline:none}#dep-svg .dep-remove-button circle{fill:var(--surface);stroke:var(--delay);stroke-width:1.5;filter:drop-shadow(0 1px 2px rgb(15 23 42 / 28%))}#dep-svg .dep-remove-button:hover circle,#dep-svg .dep-remove-button:focus circle{fill:var(--delay)}#dep-svg .dep-remove-cross{fill:var(--delay);stroke:none;font-size:13px;font-weight:700;pointer-events:none;-webkit-user-select:none;user-select:none}#dep-svg .dep-remove-button:hover .dep-remove-cross,#dep-svg .dep-remove-button:focus .dep-remove-cross{fill:var(--on-accent)}.modal-backdrop{position:fixed;inset:0;background:var(--scrim);display:flex;align-items:center;justify-content:center;z-index:100}#confirm-delete-modal{z-index:110}.hist-io{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding-top:12px;border-top:1px solid var(--border)}.modal{flex:none;height:fit-content;background:var(--surface);border-radius:10px;width:480px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);display:flex;flex-direction:column;box-shadow:var(--shadow-modal)}.modal.wide{width:640px}#project-modal .modal{width:560px}#task-modal .modal{width:880px}.tm-fields-row{flex-wrap:wrap;row-gap:8px}.tm-fields-row .fr-4{flex:4;min-width:160px}.tm-fields-row .fr-3{flex:3;min-width:150px}.tm-fields-row .fr-2{flex:2;min-width:120px}.tm-fields-row .fr-1{flex:1;min-width:88px}.tm-fields-row .fr-4{min-width:110px;flex:4}.tm-fields-row .fr-assignee{flex:3;min-width:140px}.tm-fields-row .fr-duration{flex:0 0 auto;width:5.2em}.tm-fields-row .fr-2{flex:0 0 auto;width:124px;min-width:0}.tm-fields-row input,.tm-fields-row select{width:100%;min-width:0;box-sizing:border-box}.tm-fields-row input:disabled{background:var(--surface-3);color:var(--text-faint);cursor:not-allowed}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.modal-header h2{margin:0 auto 0 0;font-size:15px}#task-modal .modal-header h2{margin-right:8px}.tm-row-no{margin-right:auto;padding:2px 8px;border-radius:999px;background:var(--bg-sat);font-size:12px;font-weight:600;color:var(--text-sub)}.modal-close{border:none;background:none;font-size:18px;cursor:pointer;color:var(--text-sub)}.modal-bookmark,.modal-permalink{border:none;background:none;cursor:pointer;padding:2px 6px;line-height:0;color:var(--text-ghost)}.modal-bookmark:hover,.modal-permalink:hover{color:var(--text-sub)}.modal-bookmark.active{color:var(--primary)}.bookmark-icon{width:17px;height:17px;display:block;fill:none}.modal-bookmark.active .bookmark-icon{fill:currentColor}.modal-permalink{padding-block:0}.permalink-icon{width:20px;height:20px;display:block}.modal-body{min-height:0;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.modal-body .tm-create-hint{margin:0;padding:7px 10px;border-radius:6px;background:var(--primary-soft);color:var(--text)}.modal-body label,.chart-settings-form>label,.chart-settings-form fieldset label{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--text-sub);flex:1;min-width:0}.modal-body input,.modal-body select,.modal-body textarea,.chart-settings-form input,.chart-settings-form select,.chart-settings-form textarea{font:inherit;padding:6px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);min-width:0}#tm-name,#tm-project{height:var(--form-control-h)}.combo{position:relative;display:block;width:100%}.modal-body .combo input{width:100%;height:var(--form-control-h);padding-right:24px}.combo input::-webkit-calendar-picker-indicator{display:none!important}.combo-caret{position:absolute;top:1px;right:1px;bottom:1px;width:22px;border:0;border-radius:0 5px 5px 0;background:none;font-size:10px;line-height:1;color:var(--text-sub);cursor:pointer}.combo-caret:hover{background:var(--bg-sat);color:var(--primary)}.combo-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:60;min-width:160px;max-height:220px;overflow-y:auto;padding:4px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-menu)}.combo-menu.up{top:auto;bottom:calc(100% + 4px)}.combo-item{display:flex;align-items:center;gap:6px;width:100%;padding:5px 8px;border:0;border-radius:6px;background:none;font:inherit;font-size:12px;color:var(--text);text-align:left;cursor:pointer}.combo-item:hover{background:var(--bg-sat)}.combo-item.on{color:var(--primary);font-weight:600}.combo-check{flex:none;width:12px;color:var(--primary)}.combo-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combo-empty{padding:6px 8px;font-size:12px;color:var(--text-sub)}.combo-menu-foot{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.combo-clear{width:100%;padding:5px 8px;border:0;border-radius:6px;background:none;font:inherit;font-size:11px;color:var(--text-sub);text-align:left;cursor:pointer}.combo-clear:hover{background:var(--bg-sat);color:var(--text)}.form-row{display:flex;gap:12px}.modal-body fieldset,.chart-settings-form fieldset{border:1px solid var(--border);border-radius:6px}.modal-body legend,.chart-settings-form legend{font-size:12px;color:var(--text-sub);padding:0 6px}.deps-list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.deps-list .dep-group{font-weight:600;font-size:11px;color:var(--text-sub);margin-top:6px}.deps-list label{flex-direction:row;align-items:center;gap:6px;color:var(--text);cursor:pointer}.tm-effective{font-size:12px;color:var(--text-sub)}#tm-group-field{max-width:260px}.tm-notes-editor{border:1px solid var(--border);border-radius:6px}#tm-notes-editor .milkdown{min-height:100%}#tm-notes-editor .milkdown .ProseMirror{padding:10px 14px;margin:0;max-width:none;height:300px;min-height:100px;overflow:auto;resize:vertical;border-radius:inherit;font-size:13px}#tm-notes-editor .milkdown .ProseMirror :is(p,li,h1,h2,h3,h4,h5,h6,blockquote){font-size:13px}#tm-notes-editor .milkdown-block-handle{display:none!important}:root[data-theme=dark] #tm-notes-editor .milkdown{--crepe-color-background: var(--surface);--crepe-color-on-background: var(--text);--crepe-color-surface: var(--surface-2);--crepe-color-surface-low: var(--surface-3);--crepe-color-on-surface: var(--text);--crepe-color-on-surface-variant: var(--text-sub);--crepe-color-outline: var(--border-strong);--crepe-color-primary: var(--text);--crepe-color-secondary: var(--surface-4);--crepe-color-on-secondary: var(--text);--crepe-color-inverse: var(--inverse-surface);--crepe-color-on-inverse: var(--inverse-text);--crepe-color-inline-code: var(--delay);--crepe-color-error: var(--delay);--crepe-color-hover: var(--surface-3);--crepe-color-selected: var(--surface-4);--crepe-color-inline-area: var(--surface-4);--crepe-shadow-1: var(--shadow-menu);--crepe-shadow-2: var(--shadow-menu)}:root[data-theme=dark] .milkdown-slash-menu,:root[data-theme=dark] .milkdown-link-preview,:root[data-theme=dark] .milkdown-link-edit,:root[data-theme=dark] .milkdown-toolbar{--crepe-color-background: var(--surface);--crepe-color-on-background: var(--text);--crepe-color-surface: var(--surface-2);--crepe-color-surface-low: var(--surface-3);--crepe-color-on-surface: var(--text);--crepe-color-on-surface-variant: var(--text-sub);--crepe-color-outline: var(--border-strong);--crepe-color-primary: var(--text);--crepe-color-secondary: var(--surface-4);--crepe-color-on-secondary: var(--text);--crepe-color-hover: var(--surface-3);--crepe-color-selected: var(--surface-4);--crepe-shadow-1: var(--shadow-menu);--crepe-shadow-2: var(--shadow-menu)}.tm-notes-progress{margin-top:6px;font-size:12px;color:var(--text-sub)}.tm-effective .delayed-text{color:var(--delay);font-weight:600}.modal-footer{display:flex;gap:8px;align-items:center}.chart-settings-form{display:flex;flex-direction:column;gap:12px}.chart-settings-form .modal-footer{padding-top:2px}.note{color:var(--text-sub);font-size:12px;margin:0;line-height:1.7}.note-list{margin:0;padding-left:1.2em;display:flex;flex-direction:column;gap:2px}#cs-create-note p{margin:0;line-height:1.7}#cs-create-note b{color:var(--text)}#cs-import-area{display:flex;flex-direction:column;gap:8px;margin-top:8px}#cs-import-json{min-height:180px;resize:vertical;font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre}#pm-bulk-text{min-height:180px;resize:vertical;font:13px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow-wrap:normal;overflow-x:auto}.pm-bulk-actions{align-items:center}.pm-export-row{align-items:center;padding:8px 0}.pm-export-row+.pm-export-row{border-top:1px solid var(--border)}.pm-export-label{flex:1;display:flex;flex-direction:column;gap:1px;font-size:13px;font-weight:600}.pm-export-label .note{font-weight:400;line-height:1.4}.pm-export-row .btn{flex:none;min-width:96px;justify-content:center}#pm-import-text{min-height:120px;resize:vertical;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow-wrap:normal;overflow-x:auto}.pm-import-result{margin-top:10px}.pm-import-errors{display:flex;flex-direction:column;gap:3px;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--delay)}.pm-import-rows{display:flex;flex-direction:column;max-height:260px;overflow-y:auto;border:1px solid var(--border);border-radius:6px}.pm-import-row{display:flex;align-items:baseline;gap:6px;padding:5px 8px;font-size:12px;line-height:1.5}.pm-import-row+.pm-import-row{border-top:1px solid var(--border-soft)}.pm-import-row-head{flex:none;width:92px;font-size:11px;color:var(--text-faint)}.pm-import-row-detail{color:var(--text-sub)}.pm-import-row.create .pm-import-row-head{color:var(--primary);font-weight:600}.pm-import-row.error{background:var(--delay-tint)}.pm-import-row.error .pm-import-row-head{color:var(--delay);font-weight:600}.pm-import-row.error .pm-import-row-detail{color:var(--delay-strong-text)}.pm-import-row.unchanged{color:var(--text-faint)}.pm-import-row.pushed{color:var(--text-sub);background:var(--surface-2)}.cs-import-file-label{align-items:flex-start}.cs-create-points{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.cs-create-points>span{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:3px 7px;border:1px solid var(--border);border-radius:6px;background:var(--surface-2);color:var(--text);white-space:nowrap}.cs-point-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background:var(--point-bg);color:var(--point-text);font-size:10px;font-weight:700}#jm-text,#cm-text{width:100%;height:320px;font-family:ui-monospace,Menlo,monospace;font-size:11px;white-space:pre}.hist-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:12px}.hist-tab{border:none;background:none;padding:8px 14px;font-size:13px;color:var(--text-sub);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.hist-tab.active{color:var(--primary);font-weight:600;border-bottom-color:var(--primary)}.tm-pane{display:flex;flex-direction:column;gap:12px}.tm-tabs{margin-bottom:0}.links-list{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.project-link-mark{flex:none;font-size:11px;cursor:pointer;opacity:.75}.project-link-mark:hover{opacity:1}.radio-row{display:flex!important;flex-direction:row!important;align-items:center;gap:6px;font-size:13px!important;color:var(--text)!important;cursor:pointer}.radio-row input[type=radio]{margin:0}.check-row{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:6px;font-size:13px!important;color:var(--text)!important;cursor:pointer}.check-row input[type=checkbox]{margin:2px 0 0;flex:none}.check-row .note{display:block}.cs-workdays-note{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}#cs-members-area{margin-top:8px;display:flex;flex-direction:column;gap:8px}.pm-color-input{width:44px;height:30px;padding:2px;border:1px solid var(--border);border-radius:6px;cursor:pointer}.link-item{display:flex;align-items:center;gap:6px;min-width:0}.link-item a{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--primary);font-size:12px}.audit-list{display:flex;flex-direction:column;gap:6px;max-height:420px;overflow-y:auto}.audit-item{padding:8px 10px;border:1px solid var(--border);border-radius:8px}.audit-action{font-weight:600}.audit-meta{font-size:11px;color:var(--text-sub);margin-top:2px}.audit-details{margin:6px 0 0;padding-left:18px;font-size:12px;color:var(--text-sub)}.audit-details li{margin:2px 0}.bookmark-list{display:flex;flex-direction:column;gap:6px}.bookmark-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.bookmark-item.dragging{opacity:.7;border-color:var(--primary)}.bookmark-color-band{width:4px;align-self:stretch;border-radius:2px;flex:none}.bookmark-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;border:none;background:none;padding:0;text-align:left;cursor:pointer;font:inherit}.bookmark-name{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookmark-body:hover .bookmark-name{text-decoration:underline}.bookmark-sub{font-size:11px;color:var(--text-sub);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.grow.task.bookmark-flash{--flash-tint: var(--flash-fill);animation:bookmark-flash 1s ease-in-out infinite}@keyframes bookmark-flash{0%,to{background:transparent}50%{background:var(--flash-tint)}}@media(prefers-reduced-motion:reduce){.grow.task.bookmark-flash{animation:none;background:var(--flash-tint)}}.snapshot-list{display:flex;flex-direction:column;gap:6px;max-height:360px;overflow-y:auto}.snapshot-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--border);border-radius:8px}.snapshot-info{flex:1;min-width:0}.snapshot-name{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:6px}.snapshot-badge{flex:none;font-size:10px;font-weight:600;color:var(--text-sub);background:var(--surface-3);border-radius:4px;padding:0 5px}.snapshot-meta{font-size:11px;color:var(--text-sub);margin-top:2px}.snapshot-actions{flex:none;display:flex;align-items:center;gap:4px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:4px;background:var(--surface-3);border:1px solid var(--border);border-radius:12px;padding:2px 6px 2px 10px;font-size:12px}.chip button{border:none;background:none;cursor:pointer;color:var(--text-sub);font-size:12px}.chip button:hover{color:var(--delay)}#toast-container{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:200}.toast{display:flex;align-items:center;gap:12px;background:var(--inverse-surface);color:var(--inverse-text);padding:8px 16px;border-radius:8px;font-size:12px;box-shadow:var(--shadow-toast);animation:toast-in .15s ease-out}.toast>span:first-child{flex:1 1 auto;min-width:12em}.toast-action{flex:0 0 auto}.toast.error{background:var(--delay)}.toast-action{flex:none;border:1px solid rgb(255 255 255 / 45%);background:none;color:#7dd3fc;font-size:12px;font-weight:600;border-radius:6px;padding:3px 10px;cursor:pointer;white-space:nowrap}.toast-action:hover{background:#ffffff1f}.toast-action.danger{border-color:#f8717199;color:#fca5a5}.toast-action.danger:hover{background:#f871712e}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}#app-tooltip{position:fixed;top:0;left:0;width:max-content;max-width:400px;z-index:1000;padding:6px 9px;border-radius:6px;background:var(--inverse-surface);color:var(--inverse-text);font-size:12px;line-height:1.55;white-space:pre-line;box-shadow:var(--shadow-tip);pointer-events:none;animation:tooltip-in .09s ease-out}#app-tooltip[data-offscreen=true]{visibility:hidden}.tooltip-arrow{position:absolute;width:8px;height:8px;background:inherit;transform:rotate(45deg)}@keyframes tooltip-in{0%{opacity:0}to{opacity:1}}.guide-pane #guide-start-tour{align-self:flex-start}.guide-sections{display:flex;flex-direction:column;gap:16px}.guide-section-title{margin:0 0 6px;padding-bottom:4px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-sub);font-weight:600}.guide-item+.guide-item{margin-top:10px}.guide-item-title{font-size:13px;font-weight:600}.guide-item-body{margin:2px 0 0;color:var(--text-sub);font-size:12px;line-height:1.65;white-space:pre-line}#guide-overlay{position:fixed;inset:0;z-index:1100;overflow:hidden;pointer-events:none}#guide-spotlight{position:fixed;border-radius:8px;box-shadow:0 0 0 100vmax var(--guide-scrim);outline:2px solid var(--primary);outline-offset:0}#guide-spotlight[hidden]{display:none}#guide-overlay:has(#guide-spotlight[hidden]){background:var(--guide-scrim)}#guide-spotlight.stepping{transition:left .18s ease,top .18s ease,width .18s ease,height .18s ease}body:has(#guide-overlay:not([hidden])) #app-tooltip{display:none}body:has(#guide-overlay) #toast-container{z-index:1102}#guide-bubble{position:fixed;top:0;left:0;z-index:1101;width:max-content;max-width:min(420px,calc(100vw - 24px));padding:14px 16px;border-radius:10px;background:var(--bg);color:var(--text);box-shadow:var(--shadow-bubble)}#guide-bubble.centered{top:50%;left:50%;transform:translate(-50%,-50%)}#guide-bubble.waiting{top:auto;left:16px;bottom:16px;transform:none;max-width:min(320px,calc(100vw - 32px));padding:11px 13px;border:1px solid var(--border);box-shadow:var(--shadow-bubble-soft)}#guide-bubble.waiting .guide-bubble-title{font-size:13px}#guide-bubble.waiting .guide-bubble-body{font-size:12px}#guide-bubble.waiting .guide-bubble-actions{margin-top:10px}.guide-bubble-counter{font-size:11px;color:var(--text-sub)}.guide-bubble-title{margin:2px 0 6px;font-size:15px}.guide-bubble-body{margin:0;font-size:13px;line-height:1.7;white-space:pre-line}.guide-bubble-task{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:9px 11px;border:1px solid var(--primary);border-radius:8px;background:var(--bg-sat);font-size:13px;line-height:1.6}.guide-bubble-task[hidden]{display:none}.guide-task-box{flex:none;width:16px;height:16px;margin-top:2px;border:2px solid var(--primary);border-radius:4px;background:var(--bg);position:relative}.guide-bubble-task.done .guide-task-box{background:var(--primary)}.guide-bubble-task.done .guide-task-box:after{content:"";position:absolute;left:3px;top:0;width:5px;height:9px;border:solid var(--on-accent);border-width:0 2px 2px 0;transform:rotate(45deg)}.guide-bubble-task.done{border-color:var(--border);background:var(--surface-3)}.guide-bubble-task.done .guide-task-text{color:var(--text-sub);text-decoration:line-through}.guide-bubble-actions{display:flex;align-items:center;gap:8px;margin-top:14px}.guide-bubble-end{color:var(--text-sub)}@media(prefers-reduced-motion:reduce){#guide-spotlight.stepping{transition:none}}.agent-sep{border:0;border-top:1px solid var(--border);margin:20px 0 12px}
