/* Gantt workspace: compact rows, a bounded viewport, and a single time scale. */
.main:has(.gantt-toolbar) #content-area{min-height:0;overflow:visible}
.gantt-toolbar{display:grid!important;grid-template-columns:1fr auto;padding:10px!important;gap:8px!important;margin-bottom:8px}
.gantt-toolbar-main{grid-column:1}.gantt-toolbar-actions{grid-column:2;grid-row:1}
.gantt-view-controls{grid-column:1/-1;gap:8px!important}
.gantt-guide{grid-column:1/-1;font-size:.75rem!important;font-weight:400!important}.gantt-guide::before{display:none}
.gantt-toolbar .btn,.gantt-scale-btn,.gantt-filter select{min-height:32px!important;font-size:.78rem!important;padding:5px 9px!important}
.gantt-summary{font-size:.78rem!important}.gantt-range-label{font-size:.88rem!important}
.gantt-navigation{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0;color:#667085;font-size:.75rem}
.gantt-navigation button{padding:6px 10px;min-height:32px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:#344054;cursor:pointer}
.gantt-navigation button[aria-pressed="true"]{background:#eaf2ff;border-color:#84adff;color:#1849a9}
.gantt-navigation button:disabled{opacity:.4;cursor:default}
.gantt-pan{display:flex;align-items:center;gap:8px;margin-left:auto}
.gantt-pan input{width:clamp(90px,15vw,220px);padding:0;accent-color:#175cd3;cursor:ew-resize}
.gantt-wrap{margin-top:0!important;max-height:var(--g-height,60vh);overflow:auto;scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:#98a2b3 #f2f4f7;overscroll-behavior-x:contain;border-color:#d0d5dd!important;border-radius:8px!important}
.gantt-wrap::-webkit-scrollbar{width:12px;height:12px}.gantt-wrap::-webkit-scrollbar-thumb{background:#98a2b3;border:3px solid #f2f4f7;border-radius:8px}.gantt-wrap::-webkit-scrollbar-track{background:#f2f4f7}
.gantt-head-row,.g-row,body.layout-mobile .gantt-head-row,body.layout-mobile .g-row{grid-template-columns:var(--g-label-w) var(--g-timeline-w)!important}
.gantt-head-label,.g-head{height:44px!important;background:#f8fafc!important;color:#475467!important;border-color:#e4e7ec!important}
.gantt-head-label{font-size:.8rem!important;padding:0 12px!important;z-index:12;box-shadow:2px 0 4px #1018280a}
.g-head div{flex:none;overflow:hidden;padding:0!important;color:#475467!important;border-color:#e4e7ec!important;font-size:.72rem!important;font-weight:600!important}
.g-head div.current{background:#eff4ff!important;color:#175cd3!important;box-shadow:inset 0 -3px 0 #175cd3!important}
.g-row{min-height:64px!important;border-bottom:1px solid #eaecf0!important}
.g-label,.g-track{min-height:64px!important}.g-label{align-items:center;padding-top:7px!important;padding-bottom:7px!important;border-right:1px solid #d0d5dd!important;box-shadow:2px 0 4px #1018280a}
.g-row.is-category .g-label{background:#f8fafc!important;border-left:3px solid #98a2b3!important}
.g-label-title,.g-row.is-category .g-label-title{font-size:.86rem!important;line-height:1.4!important}
.g-title-row{gap:5px!important}.g-title-row .dot,.g-tree-guide{display:none}
.g-toggle,.g-toggle-spacer{width:22px!important;height:24px!important;font-size:.72rem!important;background:transparent!important}
.g-level{min-width:0!important;padding:2px 4px!important;font-size:.6rem!important}.g-child-count{padding:1px 5px!important;font-size:.62rem!important}
.g-label-meta{gap:4px!important;flex-wrap:nowrap!important;white-space:nowrap!important;overflow:hidden!important;font-size:.67rem!important}
.g-label-meta>span:first-child{overflow:hidden;text-overflow:ellipsis}.g-progress{font-size:.67rem!important;flex-shrink:0}.g-progress-track{display:none}
.g-period-edit{min-height:24px!important;padding:2px 5px!important;font-size:.65rem!important;flex-shrink:0}
.g-label-actions{gap:3px!important;margin-left:4px!important}.g-add-child{min-height:24px!important;padding:2px 5px!important;font-size:.65rem!important}.g-label-actions .icon-btn{height:24px!important;width:22px!important;font-size:.85rem!important}
.g-track{background-color:#fff!important;background-image:repeating-linear-gradient(90deg,transparent 0,transparent calc(var(--g-grid-w) - 1px),#edf0f4 calc(var(--g-grid-w) - 1px),#edf0f4 var(--g-grid-w))!important}
.g-row:nth-child(even) .g-track{background-color:#fafbfc!important}.g-band.month{background:transparent!important;border:0}.g-band.week{background:#175cd309!important;border:0}
.g-today-line{width:2px;opacity:.75}.g-bar{top:20px!important;height:24px!important;border:0!important;border-radius:5px!important;box-shadow:none!important;overflow:hidden!important;min-width:3px}
.g-bar.overdue{outline:0!important}.g-bar-label{font-size:.65rem!important;font-weight:600!important}
.g-deadline{top:10px;height:44px!important;border-left-width:1px}.g-deadline-label{top:-6px;padding:1px 4px;font-size:.58rem;box-shadow:none;color:#93370d;background:#fff7ed;border:0}.g-deadline::after{width:5px;height:5px;left:-3px;box-shadow:none;border:0}
.g-outside-range{height:64px!important;font-size:.72rem!important;font-weight:400}
.gantt-wrap:focus-visible,.gantt-navigation button:focus-visible{outline:3px solid #84adff;outline-offset:2px}
.g-label.overdue::after{display:none!important}.g-label-meta .overdue-badge,.g-label-meta .reason-required-btn{display:none!important}
.g-label{position:sticky!important;left:0;z-index:3}
.g-label-actions{position:static;flex-direction:column;opacity:1;pointer-events:auto}
.g-label-actions .g-add-child{font-size:0!important;width:22px;min-height:22px!important;padding:0!important}
.g-label-actions .g-add-child::after{content:'＋';font-size:12px}
.g-label-meta>span:first-child{flex:1}.g-label-meta .g-period-edit{margin-left:auto}
.gantt-scale-btn{white-space:nowrap!important}
.g-label-main{gap:4px}.g-label button.check{align-self:center}.g-row.is-completed .g-label-title{text-decoration:line-through;color:#667085!important}.g-row.is-completed .g-bar{opacity:.55}
@media(max-width:768px){.main:has(.gantt-toolbar) .topbar{flex-direction:column;align-items:stretch;gap:8px;padding:10px!important}.main:has(.gantt-toolbar) .topbar h1{font-size:1.1rem!important}.main:has(.gantt-toolbar) .top-actions .btn{font-size:.75rem!important;padding:6px 9px!important;min-height:32px!important}.gantt-view-controls .gantt-scale{width:100%}.gantt-scale-btn{flex:1!important}.gantt-toolbar-main{gap:6px!important}}
@media(max-width:768px){.gantt-toolbar{grid-template-columns:1fr}.gantt-toolbar-actions{grid-row:auto;grid-column:1}.gantt-view-controls{gap:6px!important}.gantt-scale{width:auto}.gantt-view-controls .date-nav{width:auto}.gantt-range-label{width:auto}.gantt-pan{margin-left:0}.gantt-guide{display:none}.g-label-actions{display:none}.g-level{display:none}.g-period-edit{font-size:0!important;width:24px}.g-period-edit::before{content:'📅';font-size:12px}.g-label-title{font-size:.8rem!important}.g-label-meta{font-size:.6rem!important}.g-label{padding-left:6px!important}.g-head small{display:none}}
