/* v18.3 — Gestão de custos */
.cost-alert{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:14px 0;padding:15px 18px;border:1px solid;border-radius:12px}.cost-alert strong{font-size:14px}.cost-alert span{font-size:13px}.cost-alert.critical{color:#8f1d17;background:#fff1f0;border-color:#f4b4ae}.cost-alert.warning{color:#815200;background:#fff8e1;border-color:#efd281}.cost-alert.healthy{color:#126247;background:#ecf9f3;border-color:#9cd9c1}.cost-alert.neutral{color:#42566a;background:#f3f6f8;border-color:#d6e0e7}.cost-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:14px 0}.cost-kpis article{display:grid;gap:8px;padding:16px;background:#fff;border:1px solid #dce5ed;border-radius:12px;box-shadow:0 2px 6px #19334c0a}.cost-kpis span{font-size:12px;font-weight:750;color:#617589;text-transform:uppercase;letter-spacing:.04em}.cost-kpis strong{font-size:24px;color:#183653}.cost-kpis article.negative strong{color:#b42318}.cost-kpis article.positive strong{color:#167653}.cost-chart{margin-bottom:16px}.cost-bar-row{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:18px;align-items:center;padding:11px 0;border-bottom:1px solid #edf1f4}.cost-bar-row>div:first-child{display:grid;gap:3px}.cost-bar-row small{color:#687b8d}.cost-bars{position:relative;height:30px;border-radius:7px;background:#f0f4f7;overflow:hidden}.cost-bars span{position:absolute;left:0;height:11px;border-radius:0 6px 6px 0}.cost-bars .planned{top:3px;background:#5273d8}.cost-bars .forecast{bottom:3px;background:#1d9a6c}.cost-bars .forecast.over{background:#d34b4b}.cost-chart-legend{display:flex;gap:18px;margin-top:14px;color:#526174;font-size:12px;font-weight:700}.cost-chart-legend span:before{content:'';display:inline-block;width:12px;height:8px;border-radius:3px;margin-right:6px;background:#5273d8}.cost-chart-legend .forecast:before{background:#1d9a6c}@media(max-width:850px){.cost-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.cost-bar-row{grid-template-columns:1fr;gap:7px}.cost-alert{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.cost-kpis{grid-template-columns:1fr}}

/* Painel consolidado de custos · comparações com o mesmo recorte e referências coerentes. */
.cost-overview{overflow:hidden;border:1px solid #d9e3ec;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.cost-overview>.panel-head{align-items:flex-start;padding:20px 22px 12px;border-bottom:1px solid #edf2f6}
.cost-overview>.panel-head h2{margin:4px 0 5px;color:#123451;font-size:22px}
.cost-overview>.panel-head .section-note{max-width:900px;line-height:1.5}
.cost-overview-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;padding:12px 18px 20px;margin:0}
.cost-overview-kpis .cost-kpi{display:flex;min-width:0;min-height:112px;flex-direction:column;justify-content:space-between;gap:7px;padding:14px 15px;border:1px solid #e0e8ef;border-left:4px solid #2563eb;border-radius:12px;background:#fff;box-shadow:0 3px 10px #1836530a;text-align:left;transition:transform .15s ease,box-shadow .15s ease}
.cost-overview-kpis .cost-kpi:hover,.cost-overview-kpis .cost-kpi:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px #18365314;outline:2px solid #79a9d2;outline-offset:1px}
.cost-overview-kpis .cost-kpi.green{border-left-color:#15945e}.cost-overview-kpis .cost-kpi.amber{border-left-color:#e3971c}.cost-overview-kpis .cost-kpi.red{border-left-color:#d64045}
.cost-overview-kpis .cost-kpi small{color:#617589;font-size:11px;font-weight:700;letter-spacing:.02em}
.cost-overview-kpis .cost-kpi strong{overflow-wrap:anywhere;color:#183653;font-size:clamp(17px,1.6vw,22px);line-height:1.15}
.cost-overview-kpis .cost-kpi.red strong{color:#b42318}
.cost-overview-kpis .cost-kpi>span{color:#74869a;font-size:11px;line-height:1.35}
.cost-chart-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px;padding:0 18px 20px}
.cost-chart-card{min-width:0;padding:16px;border:1px solid #e2eaf0;border-radius:14px;background:#fff}
.cost-chart-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.cost-chart-heading h3{margin:0 0 4px;color:#173f5f;font-size:15px}
.cost-chart-heading p{margin:0;color:#73869a;font-size:11px;line-height:1.4}
.cost-chart-heading>span{flex:0 0 auto;padding:4px 8px;border-radius:99px;background:#eff4f8;color:#5c7084;font-size:10px;font-weight:700}
.cost-project-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(160px,1.1fr);gap:14px;align-items:center;padding:11px 0;border-bottom:1px solid #edf1f4}
.cost-project-title{display:grid;min-width:0;gap:4px}.cost-project-title strong{overflow-wrap:anywhere;color:#263f56;font-size:12px;line-height:1.35}.cost-project-title small{color:#7b8c9d;font-size:10px}
.cost-project-bars{display:grid;min-width:0;grid-template-columns:auto minmax(30px,1fr);gap:4px 9px;align-items:center}
.cost-project-value{display:flex;min-width:0;justify-content:space-between;gap:6px;color:#718396;font-size:10px}.cost-project-value strong{color:#41596f;font-size:10px;white-space:nowrap}.cost-project-value strong.over{color:#b42318}
.cost-project-track,.cost-category-track{height:7px;overflow:hidden;border-radius:99px;background:#edf2f6}.cost-project-track i,.cost-category-track i{display:block;height:100%;border-radius:inherit}.cost-project-track i.budget{background:#96a7ba}.cost-project-track i.used,.cost-category-track i{background:#2573d8}.cost-project-track i.used.over{background:#d64045}
.cost-category-row{display:grid;gap:7px;padding:12px 0;border-bottom:1px solid #edf1f4}.cost-category-row>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.cost-category-row strong{overflow-wrap:anywhere;color:#344f67;font-size:12px;line-height:1.35}.cost-category-row b{flex:0 0 auto;color:#183653;font-size:11px;white-space:nowrap}
.cost-chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:14px;color:#617589;font-size:10px;font-weight:650}.cost-chart-legend span{display:flex;align-items:center;gap:6px}.cost-chart-legend i{display:inline-block;width:12px;height:7px;border-radius:99px}.cost-chart-legend i.budget{background:#96a7ba}.cost-chart-legend i.used{background:#2573d8}
.cost-chart-footnote{margin-top:13px;color:#7b8c9d;font-size:10px;line-height:1.45}
.cost-empty-state{display:grid;gap:4px;min-height:120px;align-content:center;text-align:center;color:#728499;font-size:12px}.cost-empty-state strong{color:#40576c;font-size:13px}
@media(max-width:1060px){.cost-overview-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.cost-chart-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.cost-overview-kpis{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 12px 14px}.cost-chart-grid{grid-template-columns:1fr;padding:0 12px 14px}.cost-overview>.panel-head{padding:16px 14px 10px}.cost-project-row{grid-template-columns:minmax(0,1fr);gap:8px}}
@media(max-width:440px){.cost-overview-kpis{grid-template-columns:1fr}.cost-overview-kpis .cost-kpi{min-height:92px}}
@media print{.cost-overview-kpis{grid-template-columns:repeat(5,minmax(0,1fr))!important;padding:8px 0 14px}.cost-overview-kpis .cost-kpi{min-height:84px;box-shadow:none}.cost-chart-grid{grid-template-columns:1.2fr .8fr!important;padding:0 0 10px}.cost-chart-card{padding:10px}.cost-project-row{grid-template-columns:minmax(110px,.9fr) minmax(150px,1.1fr)}}
