.gantt-wrap[data-v-74d72c04]{display:flex;flex-direction:column;height:100%;background:#fff}.gantt-toolbar[data-v-74d72c04]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-bottom:1px solid #ebeef5;flex-wrap:wrap;gap:8px}.gantt-toolbar .gantt-project-info[data-v-74d72c04]{font-size:14px;font-weight:700;color:#303133;white-space:nowrap}.gantt-toolbar .gantt-legend[data-v-74d72c04]{display:flex;flex-wrap:wrap;gap:12px}.gantt-toolbar .gantt-legend .legend-item[data-v-74d72c04]{display:inline-flex;align-items:center;font-size:12px;color:#606266}.gantt-toolbar .gantt-legend .legend-item .dot[data-v-74d72c04]{display:inline-block;width:12px;height:12px;border-radius:2px;margin-right:4px}.gantt-toolbar .gantt-scale[data-v-74d72c04]{display:flex;align-items:center;flex-wrap:wrap;gap:4px}.gantt-toolbar .gantt-scale .scale-label[data-v-74d72c04]{font-size:13px;color:#606266}.gantt-body[data-v-74d72c04]{flex:1;overflow:auto;position:relative}.gantt-loading-mask[data-v-74d72c04]{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;color:#909399;background:hsla(0,0%,100%,.8);z-index:10}.gantt-loading-mask .is-loading[data-v-74d72c04]{-webkit-animation:rotating-74d72c04 1s linear infinite;animation:rotating-74d72c04 1s linear infinite}@-webkit-keyframes rotating-74d72c04{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes rotating-74d72c04{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.gantt-empty[data-v-74d72c04]{text-align:center;color:#909399;padding:40px}.gantt-scroll[data-v-74d72c04]{display:flex;min-height:100%}.gantt-left[data-v-74d72c04]{flex-shrink:0;width:360px;border-right:2px solid #dcdfe6;position:sticky;left:0;z-index:2;background:#fff}.gantt-right[data-v-74d72c04]{flex:1;overflow-x:auto;position:relative}.gantt-row[data-v-74d72c04]{display:flex;height:42px;align-items:stretch;border-bottom:1px solid #f0f0f0;cursor:pointer}.gantt-row[data-v-74d72c04]:hover{background:#f5f7fa}.gantt-header-row[data-v-74d72c04]{position:sticky;top:0;z-index:3;background:#fafbfd;cursor:default;height:48px}.gantt-header-row[data-v-74d72c04]:hover{background:#fafbfd}.gantt-title-cell[data-v-74d72c04]{width:220px;display:flex;align-items:center;padding:0 8px;font-size:13px;border-right:1px solid #f0f0f0;overflow:hidden}.gantt-title-cell .toggle-icon[data-v-74d72c04]{display:inline-flex;width:18px;align-items:center;justify-content:center;cursor:pointer;color:#409eff;margin-right:2px;flex-shrink:0}.gantt-title-cell .toggle-icon-placeholder[data-v-74d72c04]{display:inline-block;width:18px;flex-shrink:0}.gantt-title-cell .eye-icon[data-v-74d72c04]{display:inline-flex;width:18px;align-items:center;justify-content:center;cursor:pointer;color:#c0c4cc;margin-right:4px;flex-shrink:0}.gantt-title-cell .eye-icon[data-v-74d72c04]:hover{color:#f56c6c}.gantt-title-cell .task-title-text[data-v-74d72c04]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-title-cell .reported-badge[data-v-74d72c04]{background:#67c23a}.gantt-title-cell .overdue-badge[data-v-74d72c04],.gantt-title-cell .reported-badge[data-v-74d72c04]{flex-shrink:0;margin-left:6px;padding:0 5px;height:16px;line-height:16px;border-radius:8px;color:#fff;font-size:11px;font-weight:700}.gantt-title-cell .overdue-badge[data-v-74d72c04]{background:#f56c6c}.gantt-info-cell[data-v-74d72c04]{width:70px;display:flex;align-items:center;padding:0 4px;font-size:12px;color:#606266;border-right:1px solid #f0f0f0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-info-cell-time[data-v-74d72c04]{width:76px;font-size:11px;justify-content:center}.gantt-left .gantt-header-row .gantt-info-cell[data-v-74d72c04],.gantt-left .gantt-header-row .gantt-title-cell[data-v-74d72c04]{font-weight:700;color:#303133;justify-content:center;text-align:center}.gantt-right .gantt-header-row[data-v-74d72c04]{display:flex}.date-cell[data-v-74d72c04]{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #ebeef5;font-size:11px;color:#606266;overflow:hidden;white-space:nowrap}.date-cell.is-weekend[data-v-74d72c04]{background:#fafafa}.date-cell.is-today[data-v-74d72c04]{background:#ecf5ff;color:#409eff;font-weight:700}.date-cell .date-month[data-v-74d72c04]{font-size:11px;color:#303133;font-weight:500;white-space:nowrap}.date-cell .date-day[data-v-74d72c04]{font-size:12px;white-space:nowrap}.bar-track[data-v-74d72c04]{position:relative;height:100%;display:flex}.bar-bg-cell[data-v-74d72c04]{flex-shrink:0;height:100%;border-right:1px solid #f5f5f5}.bar-bg-cell.is-weekend[data-v-74d72c04]{background:#fafafa}.bar-bg-cell.is-today[data-v-74d72c04]{background:#ecf5ff}.task-bar[data-v-74d72c04]{position:absolute;top:8px;height:26px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#fff;overflow:hidden;z-index:1;transition:all .2s}.task-bar[data-v-74d72c04]:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:2}.task-bar .bar-percent[data-v-74d72c04]{position:relative;z-index:2;text-shadow:0 1px 1px rgba(0,0,0,.3);white-space:nowrap;padding:0 4px}.task-bar .bar-report-flag[data-v-74d72c04]{position:relative;z-index:3;flex-shrink:0;margin-left:4px;width:16px;height:16px;line-height:16px;text-align:center;border-radius:50%;background:#67c23a;color:#fff;font-size:11px;font-weight:700;box-shadow:0 0 0 1px hsla(0,0%,100%,.9)}.task-bar .task-bar-progress[data-v-74d72c04]{position:absolute;left:0;top:0;bottom:0;background:hsla(0,0%,100%,.35);z-index:1}.task-bar-no-date[data-v-74d72c04]{position:absolute;left:4px;top:8px;font-size:11px;color:#c0c4cc}.bar-pending[data-v-74d72c04]{background:#909399}.bar-running[data-v-74d72c04]{background:#409eff}.bar-overdue-running[data-v-74d72c04]{background:#fab6b6;color:#909399}.bar-review[data-v-74d72c04]{background:#e6a23c}.bar-overdue-review[data-v-74d72c04]{background:#f56c6c}.bar-done[data-v-74d72c04]{background:#67c23a}