.budget-color-field small{display:block}.obra360-schedule .schedule-bar{background:var(--phase-color)!important}.obra360-schedule .schedule-bar em{background:color-mix(in srgb,var(--phase-color) 65%,black)!important}.obra360-schedule .schedule-bar strong,.obra360-schedule .schedule-bar-amount{color:#111!important;background:#ffffffed;border-radius:3px;padding:0 3px;text-shadow:none!important}@media print{}

.budget-color-field input[type=color]{padding:2px!important;width:36px!important;height:30px!important;min-height:30px!important;appearance:auto!important}.budget-concept-row>td:first-child{border-left:5px solid var(--item-color,#8bbbe3)}

/* Compact identifier column and passive color markers; editing stays in the form. */
.obra360 .budget-ordered-table table{table-layout:auto}
.obra360 .budget-ordered-table th:first-child,.obra360 .budget-ordered-table .budget-concept-row>td:first-child{width:64px!important;min-width:64px!important;max-width:80px!important;padding-left:12px!important;padding-right:8px!important;overflow-wrap:anywhere}
.obra360 .budget-ordered-table .budget-concept-row>td:first-child{border-left:0!important}
.obra360 .budget-concept-row>td:nth-child(2)>b::before,.obra360 .schedule-task-name>b::before{content:"";display:inline-block;width:8px;height:8px;min-width:8px;border-radius:50%;background:var(--item-color,#8bbbe3);margin-right:7px;vertical-align:middle;box-shadow:0 0 0 1px #80808030}
.obra360 .schedule-group-row>b::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--phase-color,#8bbbe3);margin-right:7px}
@media print{.budget-concept-row>td:nth-child(2)>b::before,.schedule-task-name>b::before{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* Schedule metadata: six aligned cells before the unchanged timeline. */
.obra360-schedule .schedule-month-row,.obra360-schedule .schedule-head,.obra360-schedule .schedule-task-row{grid-template-columns:680px var(--schedule-timeline-width,760px) 54px!important}
.obra360-schedule .schedule-info{display:grid!important;grid-template-columns:44px 246px 110px 70px 105px 105px!important;align-items:center;padding:0!important;gap:0;min-width:0;flex-direction:row}
.obra360-schedule .schedule-info>span,.obra360-schedule .schedule-info>b{box-sizing:border-box;min-width:0;padding:6px 7px!important;margin:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;border-right:1px solid var(--line)}
.obra360-schedule .schedule-info-money,.obra360-schedule .schedule-info-weight{text-align:right;font-variant-numeric:tabular-nums}
.obra360-schedule .schedule-task-row{height:36px!important;min-height:36px!important}
.obra360-schedule .schedule-task-row .schedule-bar{top:5px!important}
.obra360-schedule .schedule-task-row .schedule-unplanned{top:11px!important}
.obra360-schedule .schedule-progress{padding:10px!important}
.obra360-schedule .schedule-phase-summary{left:680px!important}

/* Freeze the complete metadata block while the shared Gantt scrolls. */
.obra360-schedule .schedule-task-name.schedule-info,.obra360-schedule .schedule-head>.schedule-info-head,.obra360-schedule .schedule-month-row>div:first-child{position:sticky!important;left:0;z-index:5;background:#fff!important;box-shadow:2px 0 0 var(--line);isolation:isolate}
.obra360-schedule .schedule-head>.schedule-info-head,.obra360-schedule .schedule-month-row>div:first-child{background:#f5f2ed!important;z-index:8}
.obra360-schedule .schedule-task-row:hover>.schedule-info{background:#fffaf5!important}
.obra360-schedule .schedule-task-row.is-editing>.schedule-info{background:#fff7ef!important}
html[data-theme="dark"] .obra360-schedule .schedule-task-name.schedule-info{background:#20282a!important}
html[data-theme="dark"] .obra360-schedule .schedule-head>.schedule-info-head,html[data-theme="dark"] .obra360-schedule .schedule-month-row>div:first-child{background:#182022!important}
html[data-theme="dark"] .obra360-schedule .schedule-task-row:hover>.schedule-info,html[data-theme="dark"] .obra360-schedule .schedule-task-row.is-editing>.schedule-info{background:#2a3233!important}

/* Quiet month boundaries aligned to the calendar, including printed copies. */
.obra360-schedule .schedule-month-divider{position:absolute;top:0;bottom:0;width:0;border-left:1px solid rgba(87,108,129,.38);pointer-events:none;z-index:1}
.obra360-schedule .schedule-month-scale>span+span{border-left:1px solid rgba(87,108,129,.38)!important}
html[data-theme="dark"] .obra360-schedule .schedule-month-divider{border-left-color:rgba(177,194,210,.32)}

/* Technical-sheet header: quiet blue-grey surfaces and readable calendar ink. */
.obra360-schedule .schedule-board{--schedule-heading-paper:#edf3f7;--schedule-calendar-paper:#f6f9fb;--schedule-heading-ink:#334e63;--schedule-calendar-ink:#516a7e;--schedule-heading-rule:#d3dfe8}
html[data-theme="dark"] .obra360-schedule .schedule-board{--schedule-heading-paper:#243541;--schedule-calendar-paper:#202e38;--schedule-heading-ink:#d3e2ec;--schedule-calendar-ink:#afc3d1;--schedule-heading-rule:#3b505e}
html .obra360-schedule .schedule-board .schedule-month-row,html .obra360-schedule .schedule-board .schedule-month-row>div:first-child{background:var(--schedule-heading-paper)!important;border-bottom:1px solid var(--schedule-heading-rule)!important}
html .obra360-schedule .schedule-board .schedule-head,html .obra360-schedule .schedule-board .schedule-head>.schedule-info-head{background:var(--schedule-calendar-paper)!important;color:var(--schedule-heading-ink)!important;border-bottom:1px solid var(--schedule-heading-rule)!important}
html .obra360-schedule .schedule-board .schedule-month-scale>span{background:var(--schedule-heading-paper)!important;color:var(--schedule-heading-ink)!important;font-weight:700;letter-spacing:.025em;border-left-color:var(--schedule-heading-rule)!important}
html .obra360-schedule .schedule-board .schedule-info-head>span{color:var(--schedule-heading-ink)!important;font-weight:600;letter-spacing:.025em;border-right-color:var(--schedule-heading-rule)}
html .obra360-schedule .schedule-board .schedule-day{color:var(--schedule-calendar-ink)!important;background:var(--schedule-calendar-paper)!important;border-left-color:color-mix(in srgb,var(--schedule-heading-rule) 50%,transparent)!important;font-variant-numeric:tabular-nums}
html .obra360-schedule .schedule-board .schedule-day.weekend{background:var(--schedule-heading-paper)!important}

/* Optional metadata columns; the task identity stays frozen. */
.obra360-schedule .schedule-board .schedule-month-row,.obra360-schedule .schedule-board .schedule-head,.obra360-schedule .schedule-board .schedule-task-row{grid-template-columns:var(--schedule-info-width,680px) var(--schedule-timeline-width,760px) 54px!important}
.obra360-schedule .schedule-board .schedule-phase-summary{left:var(--schedule-info-width,680px)!important}
.obra360-schedule .schedule-details-hidden .schedule-info{grid-template-columns:44px 246px!important}
.obra360-schedule .schedule-details-hidden .schedule-info>:nth-child(n+3){display:none!important}
