.lg-workspace{--lg-label-width:270px;--lg-blue:#195ba9;--lg-blue-bg:#dcecff;--lg-green:#186745;--lg-green-bg:#d5f0e2;--lg-amber:#85510e;--lg-amber-bg:#ffebc4;--lg-red:#a32f39;--lg-red-bg:#fbdce1;--lg-neutral:#586578;--lg-neutral-bg:#e4e9f0;color:var(--ink);padding:16px 20px 20px;min-width:0}
.lg-toolbar,.lg-navigation,.lg-scale{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lg-toolbar{justify-content:space-between;gap:12px}.lg-scale{padding:3px;background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;gap:3px}.lg-control{border:1px solid var(--line);background:var(--surface);min-height:36px;border-radius:9px;padding:6px 11px;font-size:12px;white-space:nowrap}.lg-scale .lg-control{border-color:transparent;background:transparent}.lg-scale [aria-pressed=true]{background:var(--accent);color:#fff;box-shadow:0 2px 8px #1747781c}.lg-control:hover,.lg-edit:hover{border-color:var(--accent)}.lg-date-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.lg-date-label input{background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:6px 9px;min-height:36px;max-width:148px}.lg-scope{margin:12px 0 5px;color:var(--ink);font-size:12px;font-weight:550}.lg-legend{margin:0 0 12px;color:var(--muted);font-size:11px}
.lg-scroll{overflow:auto;max-width:100%;max-height:650px;position:relative;border:1px solid var(--line);border-radius:14px;background:var(--surface);overscroll-behavior:contain}.lg-grid{width:calc(var(--lg-label-width) + var(--lg-track-width));min-width:100%}.lg-row{display:grid;grid-template-columns:var(--lg-label-width) var(--lg-track-width);border-bottom:1px solid var(--line);min-height:94px}.lg-row:last-child{border-bottom:0}.lg-row:hover .lg-label,.lg-row:hover .lg-track{background-color:var(--surface-soft)}.lg-head{position:sticky;top:0;z-index:4;min-height:64px;background:var(--surface-soft)}.lg-label{position:sticky;left:0;background:var(--surface);z-index:2;border-right:1px solid var(--line);padding:10px 12px;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:6px;box-shadow:3px 0 5px #203b5d06}.lg-head-label{font-size:12px;justify-content:center;background:var(--surface-soft);z-index:5;font-weight:650}.lg-task{min-height:0;padding:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left;border-radius:4px;max-width:100%;line-height:1.45}.lg-task:hover{background:transparent;color:var(--accent)}.lg-number{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.lg-title{font-size:12px;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.lg-meta{display:flex;align-items:center;flex-wrap:wrap;gap:4px 7px;font-size:10px;max-width:100%;padding-right:35px}.lg-owner,.lg-related{flex-basis:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);min-width:0}.lg-status{border-radius:5px;padding:1px 5px;white-space:nowrap;font-size:10px}.lg-edit{position:absolute;right:8px;bottom:8px;padding:1px 5px;min-height:24px;border:1px solid var(--line);font-size:10px;border-radius:6px;color:var(--accent);background:var(--surface)}
.lg-header-track{background:var(--surface-soft);min-width:0}.lg-months,.lg-days{display:grid;grid-template-columns:repeat(var(--lg-days),var(--lg-day-width))}.lg-months{height:30px;border-bottom:1px solid var(--line)}.lg-month{font-size:11px;font-weight:600;padding:5px 8px;white-space:nowrap;overflow:hidden;border-right:1px solid var(--line)}.lg-days{height:33px}.lg-day{text-align:center;padding:7px 0;font-size:10px;color:var(--muted);border-right:1px solid var(--line)}.lg-weekend{background:color-mix(in srgb,var(--accent) 6%,var(--surface-soft))}.lg-today-day{background:var(--lg-red-bg);color:var(--lg-red);font-weight:800}.lg-track{position:relative;min-width:0;min-height:94px;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--lg-day-width) - 1px),var(--line) calc(var(--lg-day-width) - 1px),var(--line) var(--lg-day-width))}.lg-today-line{position:absolute;top:0;bottom:0;width:2px;background:var(--lg-red);opacity:.75;z-index:1;pointer-events:none}.lg-bar{position:absolute;top:19px;height:29px;min-height:29px;border-radius:6px;padding:4px 7px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:1px solid currentColor;line-height:19px;font-size:11px;font-weight:600;z-index:2}.lg-bar:hover{filter:brightness(.95);outline:2px solid var(--accent);outline-offset:1px}.lg-row-dates{position:absolute;top:57px;white-space:nowrap;font-size:10px;color:var(--muted);background:var(--surface);border-radius:3px;padding:0 3px;max-width:260px;overflow:hidden;text-overflow:ellipsis;z-index:1;pointer-events:none}.lg-partial{text-align:center;padding:4px 0;background:var(--surface)!important;border-style:dashed;border-radius:5px}.lg-tone-active{color:var(--lg-blue);background:var(--lg-blue-bg)}.lg-tone-done{color:var(--lg-green);background:var(--lg-green-bg)}.lg-tone-pending{color:var(--lg-amber);background:var(--lg-amber-bg)}.lg-tone-risk,.lg-overdue{color:var(--lg-red);background:var(--lg-red-bg)}.lg-due-soon{color:var(--lg-amber);background:var(--lg-amber-bg)}.lg-tone-neutral{color:var(--lg-neutral);background:var(--lg-neutral-bg)}.lg-overdue-text{color:var(--lg-red)}
.lg-additional{border:1px solid var(--line);border-radius:12px;margin-top:15px;overflow:hidden;background:var(--surface)}.lg-additional h3{margin:0;padding:10px 14px;background:var(--surface-soft);font-size:12px;font-weight:600}.lg-additional-row{display:grid;grid-template-columns:var(--lg-label-width) minmax(0,1fr);border-top:1px solid var(--line)}.lg-additional .lg-label{position:relative;box-shadow:none}.lg-additional-meta{padding:12px 15px;display:flex;gap:5px;align-items:flex-start;flex-direction:column;font-size:12px;min-width:0;overflow-wrap:anywhere}.lg-additional-meta small{font-size:11px;color:var(--muted)}.lg-additional-meta small.lg-overdue-text{color:var(--lg-red)}.lg-additional-meta .lg-control{font-size:11px;padding:3px 8px;min-height:28px;margin-top:3px}.lg-empty{padding:22px;color:var(--muted);font-size:13px;background:var(--surface-soft);border-radius:12px}.lg-window-empty{position:sticky;left:0;width:min(560px,100%);border-radius:0;margin:0}
body[data-theme=dark] .lg-workspace{--lg-blue:#aed2ff;--lg-blue-bg:#183b64;--lg-green:#a4e8c7;--lg-green-bg:#174c37;--lg-amber:#f8d18b;--lg-amber-bg:#513e20;--lg-red:#ffb7bd;--lg-red-bg:#5b2732;--lg-neutral:#ced8e6;--lg-neutral-bg:#354254}body[data-theme=dark] .lg-scale [aria-pressed=true]{background:var(--lg-blue-bg);color:var(--lg-blue);border-color:var(--lg-blue)}
@media(max-width:700px){.lg-workspace{--lg-label-width:205px;padding:12px}.lg-toolbar{align-items:flex-start}.lg-navigation{gap:6px}.lg-date-label{flex-basis:100%;margin-top:2px}.lg-label{padding:9px}.lg-scroll{max-height:560px}.lg-additional-row{grid-template-columns:minmax(0,1fr)}.lg-additional .lg-label{border-right:0;border-bottom:1px solid var(--line)}.lg-title{font-size:11px}.lg-legend{line-height:1.65}.lg-scope{line-height:1.65}}
@media(forced-colors:active){.lg-bar,.lg-status,.lg-today-day{border:1px solid CanvasText}.lg-today-line{background:CanvasText}.lg-scale [aria-pressed=true]{outline:2px solid Highlight}}
.lg-tree-label{padding-left:calc(30px + var(--lg-depth,0)*13px)}.lg-tree-toggle{position:absolute;left:calc(5px + var(--lg-depth,0)*13px);top:20px;width:24px;min-height:26px;padding:0;border-radius:6px;font-size:17px;line-height:26px;color:var(--accent)}.lg-tree-toggle:hover{background:var(--lg-blue-bg)}.lg-relation-caption{font-size:10px;color:var(--muted);line-height:1.5;max-width:100%;overflow-wrap:anywhere;padding-right:34px}.lg-hierarchy-row[data-depth="0"]>.lg-label{box-shadow:inset 3px 0 0 var(--lg-blue),3px 0 5px #203b5d06}.lg-hierarchy-row:not([data-depth="0"])>.lg-label{background:color-mix(in srgb,var(--accent) 3%,var(--surface))}.lg-unavailable{cursor:default;color:var(--muted)}.lg-date-notice{position:sticky;left:var(--lg-label-width);display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:min(360px,var(--lg-track-width));padding:12px 14px;font-size:12px;color:var(--muted);background:var(--surface);min-height:94px}.lg-date-notice small{font-size:10px}.lg-date-notice .lg-control{font-size:11px;min-height:27px;padding:3px 8px}.lg-more-row{min-height:45px}.lg-more-row .lg-label{justify-content:center;padding-top:6px;padding-bottom:6px}.lg-more{min-height:29px;padding:3px 5px;border:1px solid var(--line);border-radius:7px;font-size:11px;color:var(--accent);text-align:left;white-space:normal}.lg-more-note{padding:12px 14px;font-size:11px;color:var(--muted);background:var(--surface-soft)}
@media(max-width:700px){.lg-tree-label{padding-left:calc(27px + var(--lg-depth,0)*10px)}.lg-tree-toggle{left:calc(2px + var(--lg-depth,0)*10px)}.lg-date-notice{width:285px}.lg-relation-caption{font-size:9px}}

/* Compact table rhythm: one task, one row, aligned with the date grid. */
.lg-workspace{--lg-label-width:330px;padding:12px}
.lg-scroll{max-height:none;overscroll-behavior:auto;border-radius:10px}
.lg-row,.lg-track{min-height:38px;height:38px}
.lg-head{height:54px;min-height:54px}.lg-months{height:25px}.lg-days{height:28px}.lg-day{padding:5px 0}
.lg-label{padding-top:0;padding-bottom:0;justify-content:center;gap:0;overflow:hidden}
.lg-task{display:flex;flex-direction:row;align-items:center;gap:7px;width:100%;padding-right:42px;white-space:nowrap;overflow:hidden}
.lg-number{flex:none}.lg-title{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:12px;font-weight:500}
.lg-meta,.lg-relation-caption,.lg-row-dates{display:none}
.lg-tree-toggle{top:6px;min-height:24px;height:24px;line-height:24px}
.lg-edit{display:none}.lg-create-child{position:absolute;right:8px;top:7px;width:24px;height:24px;min-height:24px;padding:0;border:1px solid transparent;border-radius:5px;background:transparent;color:var(--muted);font-size:17px}
.lg-create-child:hover,.lg-create-child:focus-visible{background:var(--lg-blue-bg);color:var(--accent);border-color:var(--line)}
.lg-bar{top:7px;min-height:24px;height:24px;padding:1px 7px;line-height:20px;border-radius:5px;font-weight:500}
.lg-date-notice{position:relative;left:0;min-height:38px;height:38px;padding:0 10px;flex-direction:row;align-items:center;white-space:nowrap;overflow:hidden;font-size:11px;background:transparent;width:100%;pointer-events:none}
.lg-date-notice small{display:none}.lg-date-notice .lg-control{pointer-events:auto;min-height:24px;margin-left:7px}
.lg-project-row,.lg-project-row .lg-track{height:32px;min-height:32px;background-color:var(--surface-soft)}
.lg-project-label{font-size:12px;font-weight:650;background:var(--surface-soft)}
.lg-track{touch-action:pan-y;cursor:crosshair;user-select:none}.lg-track button{cursor:pointer}
.lg-track[data-create-child="true"]{outline:2px solid var(--accent);outline-offset:-2px}
.lg-range-selection{position:absolute;top:3px;bottom:3px;z-index:3;pointer-events:none;border:1px solid var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent);border-radius:4px;color:var(--ink);font-size:10px;line-height:28px;white-space:nowrap;overflow:hidden}
.lg-range-selection[hidden]{display:none}
.lg-track{isolation:isolate;z-index:0;overflow:hidden}
.lg-label{z-index:3;background-color:var(--surface)}
.lg-draft-row .lg-label{color:var(--accent);background:var(--surface-soft);font-size:11px}
.lg-draft-label span{max-width:100%;padding-right:28px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.lg-draft-track{background-color:color-mix(in srgb,var(--accent) 5%,var(--surface));box-shadow:inset 0 0 0 1px var(--accent)}
.lg-project-label{padding-right:38px}.lg-project-label .lg-create-child{top:4px}
.lg-track:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media(max-width:700px){.lg-workspace{--lg-label-width:235px}.lg-scroll{max-height:none}.lg-task{gap:4px}.lg-number{font-size:9px}}

.lg-bar.lg-draggable{cursor:grab;touch-action:none;padding-left:calc(var(--lg-handle-width,11px) + 1px);padding-right:calc(var(--lg-handle-width,11px) + 1px)}
.lg-bar.lg-draggable:active{cursor:grabbing}
.lg-bar.lg-drag-source{opacity:.42}
.lg-resize-handle{position:absolute;top:0;bottom:0;width:var(--lg-handle-width,11px);cursor:ew-resize;background:currentColor;opacity:.16;touch-action:none}
.lg-resize-start{left:0;border-radius:4px 0 0 4px}
.lg-resize-end{right:0;border-radius:0 4px 4px 0}
.lg-bar.lg-draggable:hover .lg-resize-handle,.lg-bar.lg-draggable:focus-visible .lg-resize-handle{opacity:.32}
.lg-schedule-ghost{position:absolute;top:6px;height:26px;z-index:3;box-sizing:border-box;pointer-events:none;border:2px dashed var(--accent);border-radius:5px;background:color-mix(in srgb,var(--accent) 24%,var(--surface));color:var(--ink);font-size:10px;line-height:22px;padding:0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lg-schedule-outside{opacity:.65}
.lg-schedule-pending{border-style:solid}
@media(forced-colors:active){.lg-schedule-ghost{border-color:Highlight;background:Canvas;color:CanvasText}.lg-resize-handle{opacity:1;border-left:1px solid CanvasText}}

/* Keep the project Gantt description readable when a resizable drawer narrows the list. */
.task-list-workspace[data-page="project-gantt"] .tl-heading {
  flex-wrap: wrap;
  align-items: flex-start;
}
.task-list-workspace[data-page="project-gantt"] .tl-heading > div:first-child {
  flex: 1 1 540px;
  min-width: 0;
}
.task-list-workspace[data-page="project-gantt"] .tl-heading > .tl-actions {
  flex: 0 0 auto;
}
.task-list-workspace[data-page="project-gantt"] .tl-heading p {
  max-width: 100%;
}
