.task-tracker-workspace .workspace-gallery { max-width:none; padding:40px 32px 90px; }
.task-tracker-workspace .workspace-gallery>:not(.workspace-title):not(.task-tracker):not(.workspace-folder-section),.task-tracker-workspace .workspace-title>.create-new,.task-tracker-workspace .surface-tools>:not(.workspace-options-dropdown) { display:none!important; }
.task-tracker { margin-top:26px; background:var(--panel,#fff); color:var(--ink); border:1px solid var(--line); border-radius:12px; box-shadow:0 6px 24px #00000008; }
.task-tracker[hidden] { display:none; }
.task-tracker-workspace :is(.workspace-settings-btn,.workspace-options-dropdown,.create-new,.surface-tools) { display:none!important; }
.task-tracker { position:relative; }
.task-start-guide { text-align:center; box-sizing:border-box; width:min(520px,calc(100% - 48px)); padding:24px; margin:auto; flex:none; color:var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))); background:var(--empty-color,var(--appearance-color,var(--panel,#fff))); border:1px solid color-mix(in srgb,var(--empty-ink,var(--appearance-ink,var(--ink,#17212e))) 16%,transparent); border-radius:18px; box-shadow:inset 0 3px 9px rgba(0,0,0,.2),inset 0 1px 3px rgba(0,0,0,.15),0 1px 0 rgba(255,255,255,.22); }
.task-start-guide[hidden],.task-start-arrow[hidden] { display:none; }
.task-start-guide h3 { color:inherit; font-size:24px; margin:0 0 14px; }
.task-start-guide p { font-size:14px; line-height:1.8; max-width:420px; margin:0 auto; }
.task-start-arrow { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; color:var(--muted); }
.task-starting .task-table-scroll { display:none; }
.task-tracker-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:20px 22px; border-bottom:1px solid var(--line); }
.task-tracker-toolbar>div { margin-right:auto; }
.task-tracker h2 { font-size:19px; margin:0 0 5px; }
.task-tracker-toolbar p { font-size:12px; color:var(--muted); margin:0; }
:is(.task-tracker,.task-columns-dialog) button { border:1px solid var(--line); border-radius:7px; background:var(--panel,#fff); color:var(--ink); padding:9px 12px; font:600 12px 'Plus Jakarta Sans',sans-serif; cursor:pointer; }
:is(.task-tracker,.task-columns-dialog) button:hover { background:color-mix(in srgb,#277a50 10%,var(--panel,#fff)); }
:is(.task-tracker,.task-columns-dialog) button:disabled { opacity:.45; cursor:default; }
.task-tracker button[data-task-add],.task-columns-dialog button[type=submit] { background:#277a50; border-color:#277a50; color:#fff; }
.task-tracker-filters { display:flex; align-items:end; flex-wrap:wrap; gap:14px; padding:16px 22px; }
.task-tracker-filters label,.task-columns-dialog label { display:flex; flex-direction:column; gap:6px; font-size:11px; font-weight:600; }
.task-tracker-filters [data-task-search] { width:260px; max-width:100%; }
:is(.task-tracker,.task-columns-dialog) :is(input,textarea,select) { font:12px 'Plus Jakarta Sans',sans-serif; color:var(--ink); background:var(--panel,#fff); border:1px solid var(--line); border-radius:6px; padding:9px; min-width:0; }
:is(.task-tracker,.task-columns-dialog) :is(input,textarea,select,button,summary):focus-visible { outline:2px solid #277a50; outline-offset:1px; }
.task-tracker [data-task-status] { margin-left:auto; max-width:420px; font-size:11px; color:var(--muted); }
.task-tracker .task-error,.task-columns-dialog [data-column-error] { color:#bb4141; }
html[data-theme=dark] :is(.task-tracker .task-error,.task-columns-dialog [data-column-error]) { color:#ffaaa5; }
.task-table-scroll { overflow:auto; max-height:calc(100dvh - 340px); min-height:190px; border-radius:0 0 12px 12px; }
.task-tracker table { border-collapse:separate; border-spacing:0; width:max-content; min-width:100%; table-layout:fixed; font-size:12px; }
.task-tracker th,.task-tracker td { padding:6px 8px; border-bottom:1px solid var(--line); border-right:1px solid var(--line); text-align:left; vertical-align:middle; }
.task-tracker thead th { position:sticky; top:0; z-index:2; background:var(--panel,#fff); font-size:11px; height:44px; }
.task-tracker th[scope=row] { color:var(--muted); text-align:center; font-weight:400; }
.task-tracker th button { display:flex; justify-content:space-between; gap:8px; width:100%; text-align:left; border:0; padding:6px 2px; }
.task-tracker th[aria-sort=ascending] button span { transform:rotate(180deg); }
.task-tracker th:not([aria-sort=none]) button { color:var(--workspace-color,#277a50); }
.task-tracker td :is(input:not([type=checkbox]),select,textarea) { width:100%; border-color:transparent; background:transparent; min-height:36px; }
.task-tracker td :is(input,select,textarea):hover { border-color:var(--line); }
.task-tracker td textarea { resize:vertical; line-height:1.5; }
.task-tracker td input[type=checkbox] { width:18px; height:18px; accent-color:#277a50; }
.task-row-actions details { position:relative; }
.task-row-actions summary { list-style:none; cursor:pointer; padding:9px; text-align:center; border-radius:6px; }
.task-row-actions summary::-webkit-details-marker { display:none; }
.task-row-actions details>div { position:absolute; z-index:5; top:100%; right:0; width:150px; padding:5px; background:var(--panel); border:1px solid var(--line); border-radius:8px; box-shadow:0 5px 20px #0002; }
.task-row-actions details:not([open])>div { display:none; }
.task-row-actions button { width:100%; text-align:left; border:0; }
.task-tracker [data-task-empty] { text-align:center; padding:35px 15px; color:var(--muted); }
.task-sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.task-columns-dialog { width:min(850px,calc(100vw - 24px)); max-height:calc(100dvh - 40px); padding:24px; border:1px solid var(--line); border-radius:14px; background:var(--panel,#fff); color:var(--ink); overflow:auto; }
.task-columns-dialog::backdrop { background:#101c1680; }
.task-columns-dialog h2 { margin:0 0 8px; font-size:22px; }
.task-columns-dialog header p { color:var(--muted); font-size:12px; line-height:1.6; margin:0 0 22px; }
.task-column-list { display:flex; flex-direction:column; gap:12px; margin-bottom:16px; }
.task-column-list section { display:grid; grid-template-columns:minmax(140px,1fr) 125px 90px auto; gap:10px; align-items:end; padding:14px; border:1px solid var(--line); border-radius:9px; }
.task-column-options { grid-column:1/4; grid-row:2; }
.task-column-options[hidden] { display:none; }
.task-column-actions { display:flex; gap:5px; align-self:end; }
.task-column-actions button { padding:8px; }
.task-columns-dialog footer { display:flex; gap:10px; justify-content:flex-end; margin-top:20px; }
@media(max-width:650px) { .task-tracker-workspace .workspace-gallery { padding:24px 12px 90px; }.task-tracker-toolbar,.task-tracker-filters { padding:14px; }.task-tracker-filters label { flex:1; }.task-tracker [data-task-status] { flex-basis:100%; margin-left:0; }.task-column-list section { grid-template-columns:1fr 1fr; }.task-column-options { grid-column:1/-1; grid-row:auto; }.task-column-actions { flex-wrap:wrap; }.task-table-scroll { max-height:60dvh; } }
/* Keep task rows inside a bounded viewport above the application footer. */
.task-tracker-workspace .workspace-gallery { padding-bottom:var(--task-footer-space,36px); }
.task-table-scroll { max-height:none; min-height:0; overscroll-behavior:contain; }
.task-tracker table { min-width:0; }
.task-tracker [hidden] { display:none!important; }
.task-tracker tbody th,.task-tracker td { position:relative; }
.task-tracker td :is(input,textarea,select):disabled { opacity:1; color:var(--ink); -webkit-text-fill-color:var(--ink); }
.task-tracker td textarea { resize:none; height:36px; min-height:0; }
.task-tracker th [data-task-drag] { width:24px; display:inline-flex; justify-content:center; padding:3px; cursor:grab; touch-action:none; }
.task-tracker [data-task-name] { width:calc(100% - 28px); padding:5px; font-weight:600; }
.task-tracker th .task-resize { position:absolute; padding:0; margin:0; border:0; border-radius:0; background:transparent; touch-action:none; z-index:4; }
.task-tracker th .column-resize { top:0; right:-3px; width:8px; height:100%; cursor:col-resize; }
.task-tracker th .row-resize { bottom:-3px; left:0; width:100%; height:8px; cursor:row-resize; }
.task-tracker th .task-resize:hover,.task-tracker th .task-resize:focus-visible { background:#277a5066; }
.task-tracker.task-dragging { user-select:none; }
.task-tracker .task-drop-target { outline:2px solid #277a50; outline-offset:-2px; }
.task-tracker button[data-task-edit][aria-pressed=true] { border-color:#277a50; color:#277a50; }
/* Task Tracker occupies the workspace surface instead of an inset card. */
.task-tracker-workspace .workspace-gallery { display:flex!important; flex-direction:column; box-sizing:border-box; width:100%; max-width:none; min-height:0!important; padding:0 0 var(--task-footer-space,36px); overflow:hidden; }
.task-tracker-workspace .workspace-title { flex:none; margin:0; padding:18px 24px; }
.task-tracker-workspace .workspace-title>.surface-options { top:18px; right:24px; }
.task-tracker-workspace .task-tracker { display:flex; flex-direction:column; flex:1; min-height:0; margin:0; border:0; border-top:1px solid var(--line); border-radius:0; box-shadow:none; }
.task-tracker-workspace .task-tracker-toolbar,.task-tracker-workspace .task-tracker-filters { flex:none; }
.task-tracker-workspace .task-table-scroll { flex:1; height:0!important; min-height:0; max-height:none; border-radius:0; }
@media(max-width:650px) { .task-tracker-workspace .workspace-title { padding:14px 12px; }.task-tracker-workspace .workspace-title>.surface-options { top:14px; right:12px; } }
/* A single compact toolbar leaves the rest of the workspace for task rows. */
.task-tracker-workspace .workspace-gallery>.workspace-title { display:none!important; }
.task-tracker-toolbar { position:relative; padding:12px 20px; flex-wrap:nowrap; gap:10px; }
.task-tracker-toolbar h2 { margin:0 auto 0 0; white-space:nowrap; }
.task-toolbar-actions { display:flex; align-items:center; gap:6px; }
.task-toolbar-actions>button,.task-toolbar-popover>summary { display:inline-flex; align-items:center; justify-content:center; box-sizing:border-box; width:36px; height:36px; padding:0; border:1px solid var(--line); border-radius:7px; background:var(--panel,#fff); color:var(--ink); cursor:pointer; }
.task-toolbar-popover { position:relative; }
.task-toolbar-popover>summary { list-style:none; }
.task-toolbar-popover>summary::-webkit-details-marker { display:none; }
.task-toolbar-popover>label { position:absolute; top:calc(100% + 8px); right:0; z-index:10; display:flex; flex-direction:column; gap:8px; width:250px; max-width:calc(100vw - 32px); padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--panel,#fff); color:var(--ink); box-shadow:0 8px 24px #0002; font-size:12px; }
.task-toolbar-popover:not([open])>label { display:none; }
.task-toolbar-popover input,.task-toolbar-popover select { width:100%; }
.task-toolbar-actions .task-control-active { border-color:#277a50; background:color-mix(in srgb,#277a50 15%,var(--panel)); }
.task-tracker-toolbar>[data-task-status].task-error { position:absolute; top:100%; right:12px; z-index:11; padding:10px; background:var(--panel); border:1px solid currentColor; border-radius:6px; }
@media(max-width:650px) { .task-tracker-toolbar { padding:10px 12px; gap:6px; }.task-tracker-toolbar h2 { font-size:16px; }.task-toolbar-actions { gap:4px; }.task-toolbar-actions>button,.task-toolbar-popover>summary { width:32px; height:36px; }.task-toolbar-popover>label { position:fixed; top:auto; right:12px; margin-top:8px; } }
@media(max-width:360px) { .task-tracker-toolbar { flex-wrap:wrap; } }
.task-tracker,.task-column-tray { color-scheme:light; }
html[data-theme=dark] :is(.task-tracker,.task-column-tray) { color-scheme:dark; }
:is(.task-tracker,.task-column-tray) select,:is(.task-tracker,.task-column-tray) option { color:var(--ink); background-color:var(--panel,#fff); }
.task-column-tray { position:fixed; top:64px; right:0; bottom:60px; z-index:200; width:min(340px,100vw); overflow:auto; box-sizing:border-box; padding:20px; background:var(--panel,#fff); color:var(--ink); border-left:1px solid var(--line); box-shadow:-10px 0 30px #0002; }
.task-column-tray header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:24px; }
.task-column-tray h2 { margin:0; font-size:19px; }
.task-column-tray label { display:flex; flex-direction:column; gap:8px; margin:16px 0; font-size:12px; }
.task-column-tray [hidden] { display:none; }
.task-column-tray :is(input,select,textarea,button) { box-sizing:border-box; font:inherit; padding:10px; border:1px solid var(--line); border-radius:6px; background:var(--panel,#fff); color:var(--ink); min-width:0; }
.task-column-tray button { cursor:pointer; }
.task-column-tray footer { display:flex; gap:10px; justify-content:flex-end; flex-wrap:wrap; margin-top:20px; }
.task-column-tray button[type=submit] { background:#277a50; color:white; }
.task-column-tray [data-column-error] { color:#bb4141; font-size:12px; }
html[data-theme=dark] .task-column-tray [data-column-error] { color:#ffaaa5; }
.task-column-selected { box-shadow:inset 0 -3px #277a50; }
.task-editing th[data-task-header] { cursor:pointer; }
.task-tracker th [data-task-select] { display:inline-flex; width:calc(100% - 28px); padding:5px; vertical-align:middle; font-weight:600; }
html[data-theme] :is(.task-tracker,.task-column-tray) :is(select,option) { background-color:var(--panel,#fff); color:var(--ink); }
.task-expanding-search { display:flex; align-items:center; gap:6px; position:relative; }
.task-expanding-search>[data-task-search-toggle] { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; flex:none; }
.task-expanding-search>[data-task-search] { width:220px; height:36px; }
.task-tracker:not(.task-editing) td select { appearance:none; -webkit-appearance:none; background-image:none; padding-right:9px; }
.task-progress-cell { display:flex; align-items:center; gap:8px; }
.task-tracker .task-progress-cell input { width:64px!important; flex:none; }
.task-progress { height:12px; flex:1; min-width:36px; background:color-mix(in srgb,var(--ink) 15%,var(--panel)); border-radius:8px; overflow:hidden; }
.task-progress>span { display:block; height:100%; background:var(--progress-color); }
.task-progress.segmented { border-radius:0; mask-image:repeating-linear-gradient(to right,#000 0,#000 calc(10% - 3px),transparent calc(10% - 3px),transparent 10%); }
.task-progress.ring { flex:none; width:32px; height:32px; min-width:0; border-radius:50%; background:conic-gradient(var(--progress-color) var(--progress),color-mix(in srgb,var(--ink) 15%,var(--panel)) 0); mask-image:radial-gradient(circle,transparent 48%,black 51%); }
.task-progress.ring>span { display:none; }
.task-progress-cell small { white-space:nowrap; }
.task-tracker .task-link { max-width:100%; text-align:left; overflow:hidden; text-overflow:ellipsis; color:var(--workspace-color,#277a50); text-decoration:underline; }
.task-column-tray fieldset { border:1px solid var(--line); border-radius:8px; margin:16px 0; }
@media(max-width:800px) { .task-expanding-search>[data-task-search] { position:absolute; right:calc(100% + 6px); top:0; z-index:12; width:min(210px,calc(100vw - 220px)); background:var(--panel); } }
/* Column settings and deletion are available directly in editable headers. */
.task-column-heading { display:flex; align-items:center; flex-wrap:wrap; gap:3px; }
.task-tracker .task-column-heading [data-task-select] { width:auto; flex:1; min-width:35px; padding:6px; border:1px solid var(--line); border-radius:5px; background:color-mix(in srgb,#277a50 8%,var(--panel)); overflow-wrap:anywhere; }
.task-tracker .task-column-heading [data-task-select]:hover { border-color:#277a50; background:color-mix(in srgb,#277a50 18%,var(--panel)); }
.task-column-icons { display:flex; gap:3px; margin-left:auto; }
.task-tracker .task-column-icons button { display:inline-flex; align-items:center; justify-content:center; width:26px; height:28px; padding:3px; border:1px solid var(--line); border-radius:5px; }
.task-tracker .task-column-icons button[data-task-column-delete]:hover:not(:disabled) { color:#b83c3c; border-color:currentColor; }
.task-tracker thead th { height:64px; }
.task-tracker .task-index-row th { height:28px; padding:2px 8px; background:color-mix(in srgb,#277a50 10%,var(--panel)); }
.task-tracker .task-index-row button { justify-content:center; font-weight:700; border:1px solid var(--line); border-radius:4px; }
.task-tracker.task-editing .task-name-row th { top:28px; }
.task-tracker th [data-task-row-index] { display:block; text-align:center; justify-content:center; width:100%; padding:2px; border:1px solid var(--line); border-radius:4px; font-weight:600; }
.task-tracker td[data-task-cell-id] { background:var(--cell-background,var(--panel)); color:var(--cell-color,var(--ink)); text-align:var(--cell-align,left); }
.task-tracker td[data-task-cell-id] :is(input,textarea,select,button,span,small) { color:var(--cell-color,var(--ink)); -webkit-text-fill-color:var(--cell-color,var(--ink)); text-align:var(--cell-align,left); }
.task-selected { outline:2px solid #277a50; outline-offset:-2px; }
.task-format-fields { border:1px solid var(--line); border-radius:8px; margin-top:16px; }
.task-column-tray [data-selection-error] { color:#c95757; font-size:12px; }
.task-toolbar-actions { flex-wrap:wrap; justify-content:flex-end; }
.task-column-tray input[type=color] { width:48px; height:32px; padding:2px; }
.task-tracker tbody th[scope=row] { position:sticky; left:0; z-index:1; background:var(--panel); }
.task-tracker .task-progress-entry,.task-column-tray .task-progress-entry { display:flex; align-items:center; flex:none; gap:3px; margin:0; padding:2px 6px; border:1px solid var(--line); border-radius:6px; background:var(--panel); }
.task-tracker .task-progress-entry input,.task-column-tray .task-progress-entry input { width:54px!important; min-height:32px; padding:4px; background:var(--panel); border:0; }
.task-progress-entry:focus-within { outline:2px solid #277a50; }
.task-progress-entry b { font-size:12px; }
.task-progress { background:color-mix(in srgb,var(--progress-color) 24%,var(--panel)); }
.task-progress.segmented.milestones { display:flex; gap:3px; mask-image:none; background:transparent; }
.task-progress.milestones>.milestone-segment { position:relative; height:100%; background:color-mix(in srgb,var(--segment-color) 25%,var(--panel)); }
.task-progress .milestone-segment i { display:block; height:100%; background:var(--segment-color); }
.task-progress .milestone-segment:is(.warning,.overdue) { background:var(--segment-color); }
.task-progress-settings h3 { font-size:16px; }.task-progress-settings h4 { margin:22px 0 8px; }
.task-progress-settings fieldset { border:1px solid var(--line); border-radius:8px; margin:16px 0; padding:12px; }
.progress-help { font-size:11px; line-height:1.5; color:var(--muted); }
.progress-colors { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.progress-threshold { display:flex; align-items:center; gap:8px; }.progress-threshold label { flex:1; min-width:0; }
.task-progress-settings [data-progress-error] { font-size:12px; color:#c95757; }
.task-progress.ring { background:conic-gradient(var(--progress-color) var(--progress),color-mix(in srgb,var(--progress-color) 24%,var(--panel)) 0); }
.task-progress-settings summary { cursor:pointer; font-size:12px; padding:6px 0; }
/* One resizable, responsive inspector for every tracker selection. */
.task-column-tray { width:min(420px,100vw); padding:0 0 0 12px; overflow:hidden; container-type:inline-size; }
.task-column-tray>form { height:100%; overflow:auto; overscroll-behavior:contain; padding:0 20px 24px; display:grid; grid-template-columns:minmax(0,1fr); align-content:start; gap:12px; }
.task-column-tray>form>* { min-width:0; margin:0; }
.task-column-tray header { position:sticky; top:0; z-index:3; background:var(--panel,#fff); padding:18px 0 12px; border-bottom:1px solid var(--line); }
.task-column-tray header h2 { font-size:18px; overflow-wrap:anywhere; }
.task-column-tray label { margin:10px 0; line-height:1.4; min-width:0; }
.task-column-tray label :is(input:not([type=checkbox]):not([type=color]),select,textarea) { width:100%; max-width:100%; }
.task-column-tray :is(small,.progress-help) { line-height:1.5; }
.task-column-tray [data-tray-resize] { position:absolute; left:0; top:0; bottom:0; width:12px; cursor:ew-resize; touch-action:none; z-index:5; background:color-mix(in srgb,var(--ink) 4%,var(--panel)); }
.task-column-tray [data-tray-resize]::after { content:''; position:absolute; top:45%; left:4px; width:3px; height:48px; border-radius:3px; background:color-mix(in srgb,var(--ink) 40%,var(--panel)); }
.task-column-tray [data-tray-resize]:is(:hover,:focus-visible) { background:color-mix(in srgb,#277a50 20%,var(--panel)); outline:2px solid #277a50; outline-offset:-2px; }
.task-column-tray .task-format-fields { padding:12px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 16px; }
.task-column-tray .task-format-fields :is(button,label:last-of-type) { grid-column:1/-1; }
.task-column-tray .task-format-fields label { margin:0; }
.task-progress-settings { min-width:0; display:grid; gap:12px; }
.task-progress-settings .progress-panel { min-width:0; border:1px solid var(--line); border-radius:8px; }
.task-progress-settings .progress-panel>summary { padding:12px; font-weight:600; overflow-wrap:anywhere; }
.task-progress-settings .progress-panel>summary small { float:right; font-weight:400; color:var(--muted); }
.task-progress-settings .progress-panel-body { padding:0 12px 12px; }
.task-progress-settings .progress-panel-body>.progress-help { margin:0 0 12px; }
.task-progress-settings .progress-panel .progress-panel { margin:12px 0; }
.task-progress-settings .milestone-list fieldset { border:0; margin:0; padding:0; min-width:0; }
.task-progress-settings .milestone-list .progress-panel>summary { background:color-mix(in srgb,#277a50 6%,var(--panel)); border-radius:7px; }
.task-column-tray .settings-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:0 16px; }
.task-column-tray .settings-check { flex-direction:row; align-items:center; }
.task-progress-settings .progress-colors label { flex-direction:row; align-items:center; justify-content:space-between; gap:6px; }
.task-progress-settings .progress-colors { gap:0 16px; }
.task-progress-settings .progress-colors input { flex:none; }
.task-progress-settings .settings-remove { font-size:11px; margin-top:10px; color:var(--muted); }
.task-column-tray [role=alert]:empty { display:none; }
.task-tracker:not(.task-editing) td[data-task-cell-id] [disabled] { pointer-events:none; }
@container (min-width:560px) {
 .task-column-tray>form { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; }
 .task-column-tray>form>:is(header,fieldset,footer,section,p,small) { grid-column:1/-1; }
 .task-column-tray .settings-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .task-column-tray .task-format-fields { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .task-column-tray .task-format-fields label:last-of-type { grid-column:auto; }
 .task-column-tray .task-format-fields button { justify-self:start; }
}
@media(max-width:480px) { .task-column-tray>form { padding:0 12px 18px; }.task-progress-settings .progress-colors { grid-template-columns:minmax(0,1fr); } }
.task-column-tray [hidden] { display:none!important; }
.task-tracker .task-table-scroll { margin-right:var(--task-inspector-width,0px); }
.task-column-tray .task-cell-value { grid-column:1/-1; display:grid; gap:8px; font-size:12px; }
.task-column-tray .task-progress-entry { flex-direction:row; }
.task-column-tray .task-cell-value>:is(input,select,textarea) { width:100%; }
.task-toolbar-popover>.task-zoom-panel { position:absolute; top:calc(100% + 8px); right:0; z-index:10; width:250px; max-width:calc(100vw - 24px); padding:14px; border:1px solid var(--line); border-radius:8px; background:var(--panel,#fff); color:var(--ink); box-shadow:0 8px 24px #0002; }
.task-toolbar-popover:not([open])>.task-zoom-panel { display:none; }
.task-zoom-panel label { display:block; margin:0 0 14px; font-size:12px; }
.task-zoom-panel output { float:right; font-variant-numeric:tabular-nums; }
.task-zoom-panel input[type=range] { display:block; width:100%; margin:12px 0 0; padding:0; accent-color:#277a50; cursor:ew-resize; }
.task-zoom-panel select { display:block; margin-top:8px; }
.task-zoom-panel small { display:block; line-height:1.5; font-size:11px; color:var(--muted); }
.task-tracker:not(.task-editing) .task-table-scroll { cursor:grab; }
.task-table-scroll.task-panning,.task-table-scroll.task-panning * { cursor:grabbing!important; user-select:none; }
/* Every workspace can contain registers and other files alongside its tracker. */
.task-tracker-workspace .workspace-gallery>.workspace-title{display:none!important}
.task-tracker-workspace .workspace-title>.create-new,.task-tracker-workspace .workspace-title>.surface-options{display:none!important}
.task-tracker-workspace .workspace-gallery>.workspace-folder-section{display:block!important;flex:none;max-height:180px;overflow:auto;padding:0 24px}
.task-tracker-workspace .workspace-folder-section:not(:has(.folder-file,.workspace-folder,.local-linked-file)){display:none!important}
.task-tracker-workspace .workspace-title>.create-new{top:18px;right:72px}
@media(max-width:650px){.task-tracker-workspace .workspace-title>.create-new{top:14px;right:60px}.task-tracker-workspace .workspace-folder-section{padding:0 12px}}




/* Column titles follow the same alignment as their column cells. */
.task-tracker th[data-task-header],.task-tracker th[data-task-header] :is([data-task-select],[data-task-sort]){text-align:var(--cell-align,left)}
.task-tracker th[data-task-header] :is([data-task-select],[data-task-sort]){display:block}

/* Resize from either edge along every visible column cell. */
.task-tracker :is(th,td) .column-resize{position:absolute;top:0;right:0;width:6px;height:100%;padding:0;border:0;border-radius:0;background:transparent;touch-action:none;cursor:col-resize;z-index:4}
.task-tracker :is(th,td) .column-resize-left{left:0;right:auto}
.task-tracker :is(th,td) .column-resize:is(:hover,:focus-visible){background:#277a5066}
.task-tracker .task-index-row th{position:relative}

/* Reserve equal space on both sides so title text shares the cell center. */
.task-column-heading{position:relative;display:block;padding-inline:27px}
.task-tracker .task-column-heading [data-task-drag]{position:absolute;left:0;top:50%;translate:0 -50%}
.task-tracker .task-column-heading [data-task-select]{width:100%;min-width:0}
.task-tracker th[data-task-header] [data-task-sort]{position:relative;padding-inline:27px}
.task-tracker th[data-task-header] [data-task-sort]>span{position:absolute;right:6px;top:50%;translate:0 -50%}

/* Column reorder handles belong beside the letter, above the title. */
.task-index-heading{position:relative;padding-inline:27px}
.task-tracker .task-index-heading [data-task-drag]{position:absolute;left:0;top:50%;translate:0 -50%}

/* Title text uses the same full-width inset as task text inputs. */
.task-column-heading{padding-inline:0}
.task-tracker th[data-task-header] :is([data-task-select],[data-task-sort]){box-sizing:border-box;width:100%;padding:9px;border-width:1px;border-style:solid}
.task-tracker th[data-task-header] [data-task-sort]{border-color:transparent}
.task-tracker th[data-task-header] [data-task-sort]>span{right:-7px;width:8px;font-size:10px}


/* A single shadow belongs to the complete table, above its own backdrop. */
.task-tracker{position:relative;isolation:isolate}
.task-tracker .task-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;background:#e2e5eb}
html[data-theme=dark] .task-backdrop{background:#10131a}
.task-tracker-toolbar{position:relative;z-index:2;background:var(--panel,#fff)}
.task-tracker .task-table-scroll{position:relative;z-index:1;background:transparent;padding:16px;box-sizing:border-box}
.task-tracker table{background:var(--panel,#fff);box-shadow:0 5px 18px #00000030,0 1px 4px #00000018}
html[data-theme=dark] .task-tracker table{box-shadow:0 7px 24px #00000085,0 1px 5px #00000055}
.task-start-guide,.task-start-arrow{z-index:1}
.task-load-more-cell{text-align:center;padding:18px 10px;color:var(--muted);font-size:12px}
.task-load-more-cell button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;margin-right:10px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--ink);font:inherit;cursor:pointer}

.tracker-appearance-dialog .appearance-targets,.tracker-appearance-dialog .appearance-accent-controls>label,.tracker-appearance-dialog .appearance-accent-controls>small{display:none}

/* Column names have their own surface and independent cell formatting. */
.task-tracker .task-name-row th{background:var(--cell-background,color-mix(in srgb,var(--ink) 10%,var(--panel,#fff)));color:var(--cell-color,var(--ink));text-align:var(--cell-align,left)}

.task-tracker .task-name-row th :is([data-task-select],[data-task-sort]){background:transparent;color:inherit;-webkit-text-fill-color:currentColor}
.task-tracker .task-name-row th [data-task-select]:hover{background:color-mix(in srgb,currentColor 8%,transparent)}

/* Round the table surface without clipping sticky headers or row menus. */
.task-tracker table{border-radius:14px}
.task-tracker thead tr:first-child th:first-child{border-top-left-radius:14px}
.task-tracker thead tr:first-child th:last-child{border-top-right-radius:14px}
.task-tracker tbody tr:last-child th:first-child{border-bottom-left-radius:14px}
.task-tracker tbody tr:last-child td:last-child{border-bottom-right-radius:14px}
.task-tracker .task-name-row th:first-child{text-align:center}
