.gantt-toggle{display:inline-flex;padding:4px;border-radius:24px;background:#f0eef7;gap:2px;flex-shrink:0}.gantt-view-button{border:0;background:transparent;color:#696080;border-radius:20px;padding:8px 17px;font-weight:700;cursor:pointer;white-space:nowrap}.gantt-view-button.active{background:#7560b5;color:white}.gantt-overview-open{overflow:hidden}.gantt-panel{display:flex;flex-direction:column;gap:10px;box-sizing:border-box;height:min(760px,90vh);margin-top:14px;color:#393449;background:#fff}.gantt-panel.is-expanded{position:fixed;inset:0;z-index:1400;margin:0;width:100%;height:100dvh;padding:14px 18px 10px}.gantt-top{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-shrink:0;min-height:34px}.gantt-title{display:flex;align-items:baseline;gap:14px}.gantt-title h3{font-size:19px;margin:0;white-space:nowrap}.gantt-summary{font-size:12px;color:#8d8499;white-space:nowrap}.gantt-top-actions{display:flex;gap:7px;align-items:center}.gantt-button{border:1px solid #e1dce9;border-radius:6px;background:#fff;padding:6px 10px;color:#75638d;cursor:pointer;font:inherit;font-size:12px;line-height:1.4;white-space:nowrap}.gantt-button:hover{background:#f3eff9}.gantt-button:disabled{opacity:.4;cursor:default}.gantt-button.active{background:#eee7f8;border-color:#b4a0cf;color:#68458c}.gantt-primary{background:#8064ad;color:#fff;border-color:#8064ad}.gantt-primary:hover{background:#6e5299}.gantt-save-status{font-size:11px;color:#6a9d89;margin-right:6px}.gantt-save-status.has-error{color:#c56861}.gantt-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.gantt-navigation,.gantt-filters{display:flex;align-items:center;gap:5px}.gantt-toolbar input,.gantt-toolbar select{width:auto;min-width:0;height:29px;margin:0;border:1px solid #e1dce9;border-radius:6px;background:white;padding:3px 6px;color:#766783;font:inherit;font-size:12px;box-sizing:border-box}.gantt-filters input{width:120px}.gantt-filters select{max-width:120px}.gantt-scroll{flex:1;min-height:0;overflow:auto;border:1px solid #e4deed;border-radius:8px;background:white;isolation:isolate;scrollbar-color:#d1c8df #f8f6fa}.gantt-grid{min-width:100%}.gantt-header,.gantt-row{display:flex}.gantt-header{position:sticky;top:0;z-index:7;height:44px;background:#f8f6fb;border-bottom:1px solid #e2dbe9;box-sizing:border-box}.gantt-corner,.gantt-worker{position:sticky;left:0;flex:0 0 112px;width:112px;box-sizing:border-box;border-right:1px solid #e4deec;background:white;z-index:5;padding:0 10px;display:flex;align-items:center}.gantt-corner{background:#f8f6fb;font-size:12px;font-weight:600;z-index:8}.gantt-worker{gap:3px;font-size:12px;line-height:1.25}.gantt-worker>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1}.gantt-pending{flex-shrink:0;border:0;border-radius:4px;background:#fcf0d9;color:#ad873b;font-size:9px;padding:2px 3px;cursor:pointer}.gantt-axis{position:relative;flex-shrink:0}.gantt-months{height:21px;border-bottom:1px solid #ebe6f0}.gantt-months span{position:absolute;padding:3px 7px;box-sizing:border-box;overflow:hidden;white-space:nowrap;color:#88769d;font-size:10px;border-right:1px solid #e6deed}.gantt-day{position:absolute;top:21px;height:22px;line-height:22px;text-align:center;border-right:1px solid #ebe6f0;box-sizing:border-box;font-size:10px;color:#9689a3}.gantt-day.is-off{background:#eeeaf3;color:#b2a6be}.gantt-day.is-today{background:#e9e0f5;color:#7c51ae;font-weight:bold}.gantt-row{border-bottom:1px solid #ede9f2;box-sizing:content-box}.gantt-row:last-child{border-bottom:0}.gantt-track{position:relative;flex-shrink:0;height:100%;background:repeating-linear-gradient(to right,transparent 0,transparent calc(var(--gantt-day) - 1px),#f0edf5 calc(var(--gantt-day) - 1px),#f0edf5 var(--gantt-day))}.gantt-row:nth-child(odd) .gantt-track{background-color:#fcfbfd}.gantt-off{position:absolute;top:0;bottom:0;background:#f6f3f9;pointer-events:none}.gantt-today{position:absolute;top:0;bottom:0;border-left:1px dashed #b08ccc;opacity:.7;pointer-events:none}.gantt-bar{position:absolute;top:0;min-width:0;box-sizing:border-box;border:1px solid #69aa9b;border-radius:5px;background:#eff8f4;color:#438d7d;font-size:11px;font-weight:600;line-height:1;padding:0 2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;touch-action:pan-y;z-index:2}.gantt-bar.is-current{border-color:#a58ac8;background:#f0eaf9;color:#8962af}.gantt-bar.is-group{border-style:dashed}.gantt-bar.is-small{font-size:8px;letter-spacing:-1px;padding:0}.gantt-bar:hover{filter:brightness(.97);box-shadow:0 0 0 2px #cbbbdf77;z-index:3}.gantt-empty-row{position:absolute;left:10px;top:50%;translate:0 -50%;font-size:10px;color:#b4aabc}.gantt-empty{font-size:12px;color:#a598af;padding:30px}.gantt-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:16px;font-size:10px;color:#a08eab;flex-shrink:0}.gantt-legend{display:flex;gap:12px;white-space:nowrap}.gantt-legend span:before{content:'';display:inline-block;width:7px;height:7px;border-radius:2px;margin-right:4px;background:#a992c8}.gantt-legend .legend-queued:before{background:#7cb7a8}.gantt-notice{position:absolute;z-index:10;right:18px;bottom:38px;max-width:430px;padding:8px 12px;margin:0;border:1px solid #d7e4da;border-radius:7px;background:#f2faf5;box-shadow:0 3px 12px #263b2520;font-size:12px;color:#5d8d70;pointer-events:none}.gantt-detail-layer{position:fixed;inset:0;background:#20182e22;z-index:2500;display:flex;justify-content:flex-end}.gantt-drawer{width:min(490px,92vw);height:100%;background:#fff;box-shadow:-8px 0 35px #22113224;display:flex;flex-direction:column;box-sizing:border-box;color:#47374f}.gantt-drawer-heading{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #ece5f1;flex-shrink:0;font-size:14px}.gantt-drawer-body{overflow:auto;padding:20px;flex:1}.gantt-style-heading{display:flex;gap:15px;align-items:center;margin-bottom:16px}.gantt-style-heading img{width:72px;height:88px;object-fit:contain;border:1px solid #eee7f4;border-radius:8px;background:#fbf9fd}.gantt-style-heading h2{margin:0 0 5px;font-size:25px}.gantt-style-heading p{font-size:12px;color:#99899f;margin:0 0 5px}.gantt-style-heading strong{font-size:13px;color:#8962af}.gantt-facts{display:grid;grid-template-columns:94px 1fr;gap:10px 9px;font-size:12px;margin:16px 0;line-height:1.5}.gantt-facts dt{color:#a394aa}.gantt-facts dd{margin:0;color:#67566d;overflow-wrap:anywhere}.gantt-note-text{white-space:pre-wrap;font-size:12px;color:#9b8da3;line-height:1.5}.gantt-no-image{font-size:10px;color:#a394aa}.gantt-choice-list:empty{display:none}.gantt-choice-list{padding:12px 20px;background:#fcfaff;display:flex;gap:6px;flex-wrap:wrap}.gantt-choice-list p{width:100%;font-size:11px;color:#a090ae;margin:0}.gantt-history{margin-top:22px;border-top:1px solid #e9e1ee;padding-top:17px}.gantt-history h3{font-size:15px;margin:0 0 10px}.gantt-history-toggle{display:flex;gap:6px}.gantt-history-summary{font-size:12px;color:#917d9e;margin:12px 0 6px}.gantt-best-rate{font-size:11px;line-height:1.5;background:#f5f1fa;color:#9274a7;border-radius:5px;padding:8px;margin:7px 0}.gantt-history-item{border-bottom:1px solid #eee8f4;padding:13px 0}.gantt-history-item>div{display:flex;justify-content:space-between;font-size:12px;gap:8px}.gantt-history-item>div span{color:#9d8bab}.gantt-history-item p{font-size:11px;color:#9a8ba5;margin:6px 0}.gantt-history-item small{font-size:10px;color:#aa9db1}.gantt-overlay{position:fixed;inset:0;background:#201b3b66;z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px}.gantt-dialog{background:white;border-radius:14px;box-shadow:0 18px 65px #24183740;padding:24px;width:min(650px,100%);max-height:90vh;overflow:auto;color:#493653;box-sizing:border-box}.gantt-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.gantt-dialog-heading h2{font-size:20px;margin:0}.gantt-muted{font-size:12px;color:#a08eaa;line-height:1.6}.gantt-details{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:14px;background:#f8f5fb;border-radius:8px}.gantt-details small{display:block;font-size:10px;color:#ab9bb4;margin-bottom:5px}.gantt-details strong{font-size:12px}.gantt-date-label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600}.gantt-date-label input{font:inherit;font-weight:400;width:100%;border:1px solid #ddd3e8;border-radius:7px;padding:10px;box-sizing:border-box}.gantt-impact{font-size:12px;background:#f8f6fb;border-radius:8px;padding:14px;margin:14px 0;max-height:230px;overflow:auto}.gantt-impact-row{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid #e8e0ef;flex-wrap:wrap}.gantt-impact-row small{width:100%;text-align:right}.gantt-error{font-size:12px;color:#bf7b70;min-height:0}.gantt-error:empty{display:none}.gantt-dialog-tools{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.gantt-dialog footer{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.gantt-dragging{cursor:ew-resize;user-select:none}.gantt-drag-tip{position:fixed;z-index:3200;background:#705588;color:white;border-radius:7px;padding:10px;box-shadow:0 5px 20px #21142a30;font-size:12px;max-width:290px;pointer-events:none}.gantt-panel button:focus-visible,.gantt-overlay button:focus-visible,.gantt-drawer button:focus-visible{outline:2px solid #bba3d3;outline-offset:2px}.gantt-overview-open .modal.active{z-index:24000}@media(max-width:850px){.gantt-panel.is-expanded{padding:10px}.gantt-title{gap:7px}.gantt-title h3{font-size:16px}.gantt-summary{font-size:10px}.gantt-top-actions{gap:4px}.gantt-save-status{display:none}.gantt-filters input{width:100px}.gantt-toolbar{gap:5px}.gantt-footer{font-size:9px}.gantt-legend{display:none}.gantt-details{grid-template-columns:1fr}}

.gantt-drawer .gantt-style-heading{margin-bottom:12px;align-items:flex-start}.gantt-style-brief{margin:8px 0!important}.gantt-history{margin-top:14px;padding-top:13px}.gantt-people-wrap{overflow-x:auto}.gantt-people{width:100%;border-collapse:collapse;font-size:12px;line-height:1.4;table-layout:fixed}.gantt-people th{background:#f8f5fb;font-weight:500;color:#9b8aa8;text-align:left;padding:7px 5px;font-size:10px;white-space:nowrap}.gantt-people td{padding:10px 5px;border-bottom:1px solid #eee8f3;vertical-align:top;font-size:11px;overflow-wrap:anywhere}.gantt-people th:first-child{width:29%}.gantt-people th:nth-child(2){width:20%}.gantt-people th:nth-child(3){width:25%}.gantt-people th:last-child{width:18%;text-align:right}.gantt-people td:last-child{text-align:right;color:#8962af;font-weight:600}.gantt-people small{display:block;color:#a598af;font-size:9px;margin-top:3px}.gantt-rate-note{font-size:10px;color:#a397ad;line-height:1.5;margin:8px 0}.gantt-extra{margin:14px 0 0;border:1px solid #ece5f1;border-radius:6px;padding:9px 12px}.gantt-extra summary{cursor:pointer;font-size:12px;color:#8b739c}.gantt-extra summary:focus-visible{outline:2px solid #bba3d3;outline-offset:3px}.gantt-history-records{border-top:0;margin-top:16px;padding-top:0}

.gantt-bar{padding:0 9px;text-align:center}.gantt-bar-label{display:block;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.gantt-bar.is-clipped-start{border-left-style:dashed;border-top-left-radius:0;border-bottom-left-radius:0}.gantt-bar.is-clipped-end{border-right-style:dashed;border-top-right-radius:0;border-bottom-right-radius:0}.gantt-resize{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:ew-resize;touch-action:none;border-left:1px solid currentColor;opacity:.18;background:currentColor}.gantt-bar:hover .gantt-resize{opacity:.35}.gantt-bar:has(.gantt-resize){padding-right:11px}.gantt-pending{font-size:9px}
.gantt-scroll{scrollbar-gutter:stable;}

/* First-order highlighting follows the task flag, independently of queue position. */
.gantt-bar.is-first-order{border-color:#c98b2b;background:#fff2d8;color:#8a570c}.gantt-legend .legend-first-order:before{background:#c98b2b}
