.gantt-core{--gantt-bg: #ffffff;--gantt-grid-line: #e8e8e8;--gantt-today: #ff4444;--gantt-weekend-bg: #f9f9f9;--gantt-header-bg: #fafafa;--gantt-header-text: #333333;--gantt-bar-text: #ffffff;--gantt-bar-radius: 4px;--gantt-bar-height: .7;--gantt-arrow-color: #999999;--gantt-bar-progress-fill: rgba(0, 0, 0, .2);--gantt-row-hover: rgba(0, 0, 0, .03);--gantt-row-selected: rgba(25, 118, 210, .08);--gantt-disabled-opacity: 1;--gantt-summary-opacity: 1;--gantt-font: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gantt-font-size: 13px;font-family:var(--gantt-font);font-size:var(--gantt-font-size);background:var(--gantt-bg);overflow:hidden;position:relative}.gantt-core *,.gantt-core *:before,.gantt-core *:after{box-sizing:border-box}.gantt-header{display:flex;background:var(--gantt-header-bg);border-bottom:1px solid var(--gantt-grid-line);overflow:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none}.gantt-header-cell{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--gantt-header-text);font-size:12px;font-weight:500;border-right:1px solid var(--gantt-grid-line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px}.gantt-header-cell--task-list{flex-shrink:0;font-weight:600;border-right:2px solid var(--gantt-grid-line)}.gantt-body{display:flex;position:relative}.gantt-body-inner{display:flex;flex-direction:row}.gantt-timeline-container{overflow:auto;position:relative;flex:1}.gantt-task-list{position:sticky;left:0;z-index:2;background:var(--gantt-bg);border-right:2px solid var(--gantt-grid-line);flex-shrink:0}.gantt-task-list-row{display:flex;align-items:center;border-bottom:1px solid var(--gantt-grid-line);position:relative;padding:0 8px 0 0}.gantt-task-list-row--group{font-weight:600;background:var(--gantt-header-bg)}.gantt-task-list-accent{position:absolute;left:0;top:0;bottom:0;width:3px}.gantt-task-list-toggle{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;border-radius:3px;padding:0;color:var(--gantt-header-text);margin:0 2px}.gantt-task-list-toggle:hover{background:var(--gantt-row-hover)}.gantt-task-list-toggle-spacer{flex-shrink:0;width:20px;margin:0 2px}.gantt-chevron{transition:transform .15s ease;transform:rotate(0)}.gantt-chevron--expanded{transform:rotate(90deg)}.gantt-task-list-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:4px;line-height:1.3}.gantt-grid-line{stroke:var(--gantt-grid-line);stroke-width:1}.gantt-weekend-rect{fill:var(--gantt-weekend-bg)}.gantt-today-line{stroke:var(--gantt-today);stroke-width:2;stroke-dasharray:6 4}.gantt-bar-group{cursor:pointer}.gantt-bar-group:hover .gantt-bar-bg{filter:brightness(1.08)}.gantt-bar-bg{transition:filter .15s ease}.gantt-bar-progress{pointer-events:none}.gantt-bar-label{fill:var(--gantt-bar-text);font-family:var(--gantt-font);font-size:12px;font-weight:500;pointer-events:none;dominant-baseline:central;text-anchor:middle}.gantt-group-row{fill:var(--gantt-header-bg)}.gantt-arrow-path{fill:none;stroke:var(--gantt-arrow-color);stroke-width:1.5}.gantt-arrow-head{fill:var(--gantt-arrow-color)}.gantt-bar-group--summary{cursor:pointer;opacity:var(--gantt-summary-opacity)}.gantt-bar-group--summary .gantt-bar-bg{stroke:var(--gantt-summary-stroke, none);stroke-width:var(--gantt-summary-stroke-width, 0)}.gantt-bar-group--interactive{cursor:grab}.gantt-bar-group--interactive:active{cursor:grabbing}.gantt-bar-group--disabled{opacity:var(--gantt-disabled-opacity);cursor:default}.gantt-bar-resize-handle{fill:transparent;cursor:ew-resize;transition:fill .15s ease}.gantt-bar-group:hover .gantt-bar-resize-handle{fill:#ffffff40}.gantt-bar-progress-handle{fill:#fff;stroke:#0006;stroke-width:1.5;cursor:col-resize;opacity:0;transition:opacity .15s ease}.gantt-bar-group:hover .gantt-bar-progress-handle{opacity:1}.gantt-bar-ghost{opacity:.5;stroke:#333;stroke-width:1;stroke-dasharray:4 2;pointer-events:none}.gantt-bar-ghost-progress{pointer-events:none}.gantt-core--dragging{-webkit-user-select:none;-moz-user-select:none;user-select:none}.gantt-svg--interactive{touch-action:none}
