.annual-dashboard { background: #f5f7fb; }
.annual-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.annual-heading h2 { margin:0 0 8px; font-size:20px; }
.annual-heading p, .annual-note, #dashboard-estado { color:var(--text-secondary); font-size:12px; }
.annual-heading label { display:flex; align-items:center; gap:10px; font-weight:600; }
.annual-heading select { min-width:105px; }
.annual-kpis { grid-template-columns:repeat(4,minmax(0,1fr)); }
.annual-dashboard .kpi-card, .annual-dashboard .panel-card { border-radius:12px; border:1px solid #e3e9f1; box-shadow:0 2px 8px #102b5010; }
.annual-dashboard .kpi-value { font-size:clamp(20px,2.2vw,30px); overflow-wrap:anywhere; }
.annual-dashboard small { color:var(--text-secondary); font-size:11px; }
.income { color:#139a70; } .expense { color:#df5264; } .profit,.fleet-profit { color:#087ef0; } .salary { color:#bc7800; }
.annual-dashboard .negative { color:#cc3547; }
.annual-columns { display:grid; grid-template-columns:1.3fr 1fr; gap:20px; margin-bottom:20px; }
.annual-dashboard h2.panel-title { margin:0; }
.fleet-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:16px; }
.fleet-card { border:1px solid #e3e9f1; border-radius:10px; padding:18px; min-width:0; }
.fleet-card h3 { margin:0; font-size:20px; display:flex; flex-wrap:wrap; align-items:center; gap:10px; overflow-wrap:anywhere; }
.fleet-card p { color:var(--text-secondary); font-size:12px; margin:16px 0 10px; }
.fleet-status { font-size:10px; color:#137557; background:#e1f6ed; padding:5px 8px; border-radius:20px; }
.fleet-profit { font-size:28px; overflow-wrap:anywhere; }
.fleet-card dl { display:grid; grid-template-columns:1fr auto; gap:8px; font-size:12px; margin-bottom:0; }
.fleet-card dd { margin:0; text-align:right; }
.unit-chart { display:flex; flex-direction:column; gap:20px; min-height:220px; justify-content:center; }
.unit-bar-row { display:grid; grid-template-columns:minmax(65px,1fr) 2fr minmax(105px,1fr); gap:12px; align-items:center; font-size:12px; }
.unit-bar-row > span { overflow-wrap:anywhere; } .unit-bar-row strong { text-align:right; }
.unit-track { background:#edf2f8; border-radius:5px; height:22px; overflow:hidden; }
.unit-bar { background:#087ef0; height:100%; border-radius:5px; } .unit-bar.loss { background:#df5264; }
.annual-dashboard tfoot th { border-top:1px solid #ddd; padding:12px; }
.annual-note { line-height:1.6; }
@media(max-width:1100px) { .annual-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); } .annual-columns { grid-template-columns:1fr; } }
@media(max-width:600px) { .annual-heading { align-items:flex-start; flex-direction:column; } .annual-kpis { grid-template-columns:1fr; } .fleet-grid { grid-template-columns:1fr; } .unit-bar-row { gap:6px; grid-template-columns:65px 1fr 100px; } }
