.der-report-modal .modal-body { background:#f5f7fa; }
.der-report-filters { position:sticky; top:-1rem; z-index:3; box-shadow:0 3px 12px rgba(0,0,0,.06); }
.der-kpi-card { border:0; box-shadow:0 2px 10px rgba(23,55,78,.08); overflow:hidden; }
.der-kpi-card .card-body { min-height:92px; }
.der-kpi-value { font-size:1.7rem; font-weight:700; line-height:1; color:#1f4e78; }
.der-kpi-label { font-size:.78rem; color:#647483; margin-top:.5rem; }
.der-bars { min-height:210px; }
.der-bar-row { display:grid; grid-template-columns:minmax(105px,38%) 1fr 42px; gap:.5rem; align-items:center; margin:.48rem 0; font-size:.78rem; }
.der-bar-label { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.der-bar-track { height:12px; background:#e6edf3; border-radius:999px; overflow:hidden; }
.der-bar-fill { height:100%; min-width:2px; background:linear-gradient(90deg,#2f75b5,#5b9bd5); border-radius:999px; }
.der-bar-fill.warning { background:linear-gradient(90deg,#c65911,#ed7d31); }
.der-bar-value { font-weight:700; text-align:right; }
.der-trend { display:flex; align-items:flex-end; gap:8px; min-height:180px; padding-top:20px; overflow-x:auto; }
.der-trend-group { min-width:48px; flex:1; text-align:center; }
.der-trend-bars { height:135px; display:flex; justify-content:center; align-items:flex-end; gap:3px; }
.der-trend-column { width:13px; min-height:2px; border-radius:4px 4px 0 0; background:#2f75b5; }
.der-trend-column.fiscalizacao { background:#ed7d31; }
.der-trend-label { font-size:.65rem; margin-top:.35rem; color:#667788; }
.der-trend-legend { font-size:.75rem; color:#667788; }
@media (max-width:768px){.der-bar-row{grid-template-columns:100px 1fr 35px}.der-report-filters{position:static}.der-kpi-value{font-size:1.35rem}}
