/* SWD Project plan — stages as bars across week columns. */
.swd-gantt .gn__cols, .swd-gantt .gn__row { display: grid; grid-template-columns: minmax(200px, 1.1fr) repeat(var(--cols), minmax(0, .4fr)); align-items: center; }
.swd-gantt .gn__cols span { padding-left: 8px; border-left: 1px solid var(--edge); font-size: 13px; color: var(--muted-d); }
.swd-gantt .gn__cols span:first-child { border: 0; }
.swd-gantt .gn__rows { display: grid; margin: 6px 0 0; }
.swd-gantt .gn__row { padding: 14px 0; border-top: 1px solid var(--edge); }
.swd-gantt .gn__txt { padding-right: 24px; }
.swd-gantt .gn__txt b { display: block; font-size: 19px; font-weight: 500; letter-spacing: -.02em; }
.swd-gantt .gn__txt span { font-size: 14px; color: var(--muted); }
.swd-gantt .gn__bar { grid-column: calc(var(--s) + 1) / calc(var(--e) + 1); height: 34px; border-radius: 10px; background: linear-gradient(90deg, var(--a, var(--acc)), var(--a2, #B58CFF)); transform-origin: left; transition: transform 1s cubic-bezier(.2,.7,.2,1); transition-delay: calc(var(--i) * .1s); }
.swd-gantt[data-pending] .gn__bar { transform: scaleX(0); }
@media (max-width: 760px) {
	.swd-gantt .gn__cols { display: none; }
	.swd-gantt .gn__row { grid-template-columns: repeat(var(--cols), minmax(0, 1fr)); row-gap: 10px; }
	.swd-gantt .gn__txt { grid-column: 1 / -1; padding: 0; }
	.swd-gantt .gn__bar { grid-row: 2; grid-column: var(--s) / var(--e); height: 14px; }
}
