.xb-gantt{--xb-line:rgb(var(--c-line,235 235 235));--xb-line-soft:rgb(var(--c-line,235 235 235)/0.6);--xb-surface:rgb(var(--c-surface,250 250 250));--xb-ink:rgb(var(--c-ink,23 23 23));--xb-ink-soft:rgb(var(--c-ink-soft,102 102 102));--xb-ink-faint:rgb(var(--c-ink-faint,153 153 153));--xb-accent-rgb:var(--brand-accent-rgb,37 99 235);--xb-critical-rgb:194 72 59;--xb-font:var(--font-sans,ui-sans-serif),ui-sans-serif,system-ui,sans-serif;height:var(--xb-gantt-height,clamp(480px,68vh,860px));border:1px solid var(--xb-line);border-radius:10px;overflow:hidden;background:var(--xb-surface);display:flex;flex-direction:column}.xb-gantt>.wx-theme{flex:1 1 auto;min-height:0}.xb-gantt .wx-gantt,.xb-gantt .wx-theme .wx-theme{height:100%}.xb-gantt.xb-gantt-seamless{border:0;border-radius:0}.xb-gantt .wx-willow-dark-theme,.xb-gantt .wx-willow-theme{--wx-font-family:var(--xb-font);--wx-font-size:12.5px;--wx-font-size-md:12.5px;--wx-font-size-sm:11px;--wx-line-height:16px;--wx-line-height-sm:14px;--wx-font-weight:400;--wx-font-weight-md:500;--wx-font-weight-b:600;--wx-background:var(--xb-surface);--wx-background-alt:rgb(var(--c-sunk,239 239 239));--wx-background-hover:rgb(var(--c-ink,23 23 23)/0.05);--wx-color-font:var(--xb-ink);--wx-color-font-alt:var(--xb-ink-soft);--wx-color-font-disabled:var(--xb-ink-faint);--wx-color-primary:rgb(var(--xb-accent-rgb));--wx-color-primary-font:rgb(var(--c-bg,255 255 255));--wx-color-primary-selected:rgb(var(--xb-accent-rgb)/0.16);--wx-color-link:rgb(var(--xb-accent-rgb));--wx-color-danger:rgb(var(--xb-critical-rgb));--wx-icon-color:var(--xb-ink-faint);--wx-border-color:var(--xb-line);--wx-border:1px solid var(--xb-line);--wx-border-radius:6px;--wx-radius-major:8px;--wx-shadow-light:0 1px 2px rgb(0 0 0/0.06);--wx-shadow-medium:0 4px 16px rgb(0 0 0/0.12);--wx-box-shadow:0 1px 2px rgb(0 0 0/0.06);--wx-scrollbar-width:10px;--wx-gantt-border-color:var(--xb-line);--wx-gantt-border:1px solid var(--xb-line);--wx-gantt-form-header-border:1px solid var(--xb-line);--wx-gantt-icon-color:var(--xb-ink-faint);--wx-gantt-select-color:rgb(var(--c-ink,23 23 23)/0.06);--wx-gantt-bar-border-radius:3px;--wx-gantt-milestone-border-radius:1px;--wx-gantt-bar-font:500 11.5px var(--xb-font);--wx-gantt-bar-shadow:none;--wx-gantt-task-color:rgb(var(--xb-accent-rgb)/0.28);--wx-gantt-task-fill-color:rgb(var(--xb-accent-rgb)/0.62);--wx-gantt-task-border-color:rgb(var(--xb-accent-rgb)/0.66);--wx-gantt-task-border:1px solid rgb(var(--xb-accent-rgb)/0.66);--wx-gantt-task-font-color:var(--xb-ink);--wx-gantt-milestone-color:var(--xb-ink);--wx-gantt-critical-color:rgb(var(--xb-critical-rgb));--wx-gantt-progress-border-color:var(--xb-ink-faint);--wx-gantt-link-color:rgb(var(--c-ink,23 23 23)/0.25);--wx-gantt-link-color-hovered:rgb(var(--c-ink,23 23 23)/0.65);--wx-gantt-link-critical-color:rgb(var(--xb-critical-rgb)/0.55);--wx-gantt-link-critical-color-hovered:rgb(var(--xb-critical-rgb));--wx-gantt-link-marker-background:var(--xb-surface);--wx-gantt-link-marker-color:rgb(var(--xb-accent-rgb));--wx-grid-header-font:500 11px var(--xb-font);--wx-grid-header-font-color:var(--xb-ink-faint);--wx-grid-header-text-transform:none;--wx-grid-header-shadow:none;--wx-grid-body-font:400 12.5px var(--xb-font);--wx-grid-body-font-color:var(--xb-ink);--wx-grid-body-row-border:1px solid var(--xb-line);--wx-grid-body-cell-border:1px solid transparent;--wx-table-header-background:var(--xb-surface);--wx-table-border:1px solid var(--xb-line);--wx-timescale-font:500 11px var(--xb-font);--wx-timescale-font-color:var(--xb-ink-soft);--wx-timescale-border:1px solid var(--xb-line-soft);--wx-timescale-shadow:none}.xb-gantt[data-xb-gantt-theme=dark] .wx-willow-dark-theme{--wx-gantt-task-color:rgb(var(--xb-accent-rgb)/0.34);--wx-gantt-task-fill-color:rgb(var(--xb-accent-rgb)/0.68);--wx-gantt-task-border-color:rgb(var(--xb-accent-rgb)/0.78);--wx-gantt-task-border:1px solid rgb(var(--xb-accent-rgb)/0.78);--wx-gantt-link-color:rgb(var(--c-ink,237 237 237)/0.35)}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.wx-task:not(.wx-split):hover{background-color:rgb(var(--xb-accent-rgb)/.34)}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.wx-task.critical{background-color:rgb(var(--xb-critical-rgb)/.26);border-color:rgb(var(--xb-critical-rgb)/.75)}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.wx-task.critical:hover{background-color:rgb(var(--xb-critical-rgb)/.36)}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.wx-task.critical .wx-progress-percent{background-color:rgb(var(--xb-critical-rgb)/.6)}.xb-gantt[data-xb-gantt-theme=dark] .wx-gantt-holidays>.xb-alt-month,.xb-gantt[data-xb-gantt-theme=dark] .wx-gantt-holidays>.xb-weekend,.xb-gantt[data-xb-gantt-theme=dark] .wx-scale .wx-cell.xb-alt-month,.xb-gantt[data-xb-gantt-theme=dark] .wx-scale .wx-cell.xb-weekend{background:rgb(var(--c-ink,237 237 237)/.07)}.xb-gantt[data-xb-gantt-theme=dark] .wx-gantt-holidays>.xb-alt-month.xb-weekend,.xb-gantt[data-xb-gantt-theme=dark] .wx-scale .wx-cell.xb-alt-month.xb-weekend{background:rgb(var(--c-ink,237 237 237)/.09)}.xb-gantt[data-xb-gantt-renderer-compact] .xb-gantt-superscale{display:none}.xb-gantt-superscale{display:flex;height:28px;background:var(--xb-surface);border-bottom:1px solid var(--xb-line)}.xb-gantt-superscale-lead{flex:0 0 auto;border-right:1px solid var(--xb-line)}.xb-gantt-superscale-window{flex:1 1 auto;overflow:hidden;position:relative}.xb-gantt-superscale-track{position:relative;height:100%;will-change:transform}.xb-gantt-superscale-cell{position:absolute;top:0;height:100%;display:inline-flex;align-items:center;padding-left:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-weight:600;font-size:11px;letter-spacing:.01em;color:var(--xb-ink);border-right:1px solid var(--xb-line-soft)}.xb-gantt-skeleton{flex:1 1 auto;min-height:0;padding:18px 16px;display:flex;flex-direction:column;gap:14px;overflow:hidden}.xb-gantt-skeleton-row{height:14px;border-radius:4px;background:linear-gradient(90deg,rgb(var(--c-ink,23 23 23)/.05) 25%,rgb(var(--c-ink,23 23 23)/.09) 42%,rgb(var(--c-ink,23 23 23)/.05) 60%);background-size:300% 100%;animation:xb-gantt-shimmer 1.6s ease-in-out infinite}@keyframes xb-gantt-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.xb-gantt-skeleton-row{animation:none}}.xb-gantt .wx-scale{border-bottom:1px solid var(--xb-line)}.xb-gantt .wx-grid .wx-header,.xb-gantt .wx-scale{background:var(--xb-surface);position:sticky;top:0;z-index:6}.xb-gantt .wx-scale .wx-row:first-child .wx-cell{font-weight:600;font-size:11px;letter-spacing:.01em;color:var(--xb-ink)}.xb-gantt .wx-scale .wx-row:last-child .wx-cell{font-size:10.5px;font-variant-numeric:tabular-nums;color:var(--xb-ink-soft)}.xb-gantt .wx-scale .wx-cell-value{padding-left:10px;padding-right:10px}.xb-gantt .wx-scale .wx-cell.xb-weekend{color:var(--xb-ink-faint);background:rgb(var(--c-ink,23 23 23)/.055)}.xb-gantt .wx-scale .wx-cell.xb-data-date{color:rgb(var(--xb-accent-rgb));background:rgb(var(--xb-accent-rgb)/.1);box-shadow:inset 0 -2px 0 rgb(var(--xb-accent-rgb))}.xb-gantt .wx-scale .wx-cell.xb-today{color:var(--xb-ink);box-shadow:inset 0 -2px 0 var(--xb-ink-faint)}.xb-gantt .wx-scale .wx-cell.xb-alt-month{background:rgb(var(--c-ink,23 23 23)/.035)}.xb-gantt .wx-scale .wx-cell.xb-alt-month.xb-weekend{background:rgb(var(--c-ink,23 23 23)/.08)}.xb-gantt .wx-gantt-holidays>.xb-data-date,.xb-gantt .wx-gantt-holidays>.xb-today,.xb-gantt .wx-gantt-holidays>.xb-weekend{position:absolute;top:0;height:100%;pointer-events:none}.xb-gantt .wx-gantt-holidays>.xb-weekend{background:rgb(var(--c-ink,23 23 23)/.055)}.xb-gantt .wx-gantt-holidays>.xb-alt-month{background:rgb(var(--c-ink,23 23 23)/.05)}.xb-gantt .wx-gantt-holidays>.xb-alt-month.xb-weekend{background:rgb(var(--c-ink,23 23 23)/.08)}.xb-gantt .wx-gantt-holidays>.xb-today:before{content:"";position:absolute;top:0;bottom:0;left:calc(var(--xb-today-frac, 0) * 100%);border-left:1px dashed var(--xb-ink-faint)}.xb-gantt .wx-gantt-holidays>.xb-data-date:after{content:"";position:absolute;top:0;bottom:0;left:calc(var(--xb-data-frac, 0) * 100%);border-left:2px solid rgb(var(--xb-accent-rgb)/.8)}.xb-gantt .wx-area>div:not([class]){background:repeating-linear-gradient(to bottom,transparent 0 calc(var(--xb-row-h, 30px) - 1px),var(--xb-line) calc(var(--xb-row-h, 30px) - 1px) var(--xb-row-h,30px)),repeating-linear-gradient(to right,transparent 0 calc(var(--xb-cell-w, 46px) - 1px),var(--xb-line) calc(var(--xb-cell-w, 46px) - 1px) var(--xb-cell-w,46px))!important}.xb-gantt .wx-bar{text-align:left}.xb-gantt .wx-bar .wx-text-out,.xb-gantt .wx-bar.wx-task:not(.wx-milestone) .wx-content{display:none}.xb-gantt .wx-bar.wx-task:not(.wx-split):hover{background-color:rgb(var(--xb-accent-rgb)/.26);box-shadow:none}.xb-gantt .wx-bar.wx-task.critical{background-color:rgb(var(--xb-critical-rgb)/.26);border-color:rgb(var(--xb-critical-rgb)/.62)}.xb-gantt .wx-bar.wx-task.critical:hover{background-color:rgb(var(--xb-critical-rgb)/.36)}.xb-gantt .wx-bar.wx-task.critical .wx-progress-percent{background-color:rgb(var(--xb-critical-rgb)/.58)}.xb-gantt .wx-bar.wx-milestone.critical-milestone .wx-content{background-color:rgb(var(--xb-critical-rgb))}.xb-gantt .wx-bar.wx-milestone.critical-milestone{border-color:rgb(var(--xb-critical-rgb))}.xb-gantt .wx-line>.wx-line-draw{stroke-width:1}.xb-gantt .wx-line-selectable:hover>.wx-line-draw{stroke-width:1.5}@media (hover:hover) and (pointer:fine){.xb-gantt .wx-bar .wx-link{opacity:0;transition:opacity .12s}.xb-gantt .wx-bar:focus-visible .wx-link,.xb-gantt .wx-bar:hover .wx-link{opacity:1}}.xb-gantt .wx-table-container{border-right:1px solid var(--xb-line)}.xb-gantt .wx-grid .wx-header .wx-cell{padding:0 8px;border-bottom:1px solid var(--xb-line)}.xb-gantt .wx-grid .wx-header .wx-cell:first-child{padding-left:12px}.xb-gantt .wx-grid .wx-body .wx-cell{padding:0 8px}.xb-gantt .wx-grid .wx-body .wx-cell:first-child{padding-left:12px}.xb-gantt .wx-grid .wx-body .wx-row:hover{background:rgb(var(--c-ink,23 23 23)/.04)}.xb-gantt[data-xb-gantt-flat] .wx-toggle-placeholder{display:none}.xb-gantt-name-band .xb-gantt-name-text{font-weight:600;font-size:11.5px;letter-spacing:.01em}.xb-gantt .wx-bar.band{pointer-events:none;height:8px!important;margin-top:8px;border:0;border-radius:2px;background-color:rgb(var(--c-ink,23 23 23)/.18)}.xb-gantt .wx-bar.band .wx-progress-percent,.xb-gantt .wx-bar.band .wx-progress-wrapper{border-radius:2px}.xb-gantt .wx-bar.band .wx-progress-percent{background-color:rgb(var(--c-ink,23 23 23)/.45)}.xb-gantt .wx-bar.band .wx-content{display:none}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.band{background-color:rgb(var(--c-ink,237 237 237)/.22)}.xb-gantt[data-xb-gantt-theme=dark] .wx-bar.band .wx-progress-percent{background-color:rgb(var(--c-ink,237 237 237)/.5)}.xb-gantt .wx-grid .wx-body .wx-cell.wx-text-center{font-variant-numeric:tabular-nums;color:var(--xb-ink-soft)}.xb-gantt-name{display:flex;align-items:center;gap:8px;min-width:0;width:100%}.xb-gantt-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.xb-gantt-name-critical{font-weight:500}.xb-gantt-mark{flex:0 0 auto;width:6px;height:6px}.xb-gantt-mark-milestone{background:var(--xb-ink);transform:rotate(45deg)}.xb-gantt-mark-critical{background:rgb(var(--xb-critical-rgb));border-radius:50%}.xb-gantt .wx-chart,.xb-gantt .wx-gantt,.xb-gantt .wx-table-container{scrollbar-width:thin;scrollbar-color:var(--xb-line) transparent}.xb-gantt ::-webkit-scrollbar{width:10px;height:10px}.xb-gantt ::-webkit-scrollbar-thumb{background:var(--xb-line);border-radius:9999px}.xb-gantt ::-webkit-scrollbar-thumb:hover{background:var(--xb-ink-faint)}.xb-gantt ::-webkit-scrollbar-track{background:transparent}@media (max-width:1199px){.xb-gantt{--xb-gantt-height:clamp(460px,66vh,760px)}.xb-gantt .wx-link{width:20px;height:20px}}