/* public/css/despesa.css — estilos exclusivos da página Despesas */

.desp-kpis { display:grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap:1rem; margin-bottom:1.25rem; }
.desp-kpi {
  border-radius:12px; padding:1.1rem 1.25rem; color:#fff;
  display:flex; align-items:center; gap:1rem; box-shadow:var(--shadow-sm);
}
.desp-kpi .ic { width:48px; height:48px; border-radius:10px;
  background:rgba(255,255,255,.2); display:grid; place-items:center; font-size:1.5rem; flex-shrink:0; }
.desp-kpi .lab { font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.5px; opacity:.95; }
.desp-kpi .val { font-size:1.6rem; font-weight:800; line-height:1.1; margin-top:.2rem; }

.desp-kpi.k-despesas { background: linear-gradient(135deg,#dc2626,#b91c1c); }
.desp-kpi.k-entradas { background: linear-gradient(135deg,#10b981,#059669); }
.desp-kpi.k-faturado { background: linear-gradient(135deg,#2691d1,#1e6fa3); }
.desp-kpi.k-lucro    { background: linear-gradient(135deg,#f59e0b,#d97706); }

.desp-filter {
  background:#fff; border:1px solid var(--gray-200); border-radius:var(--radius);
  padding:1rem 1.25rem; margin-bottom:1.25rem; box-shadow:var(--shadow-sm);
  display:flex; flex-wrap:wrap; gap:.75rem; align-items:end;
}
.desp-filter .ff { display:flex; flex-direction:column; gap:.3rem; }
.desp-filter label { font-size:.8rem; font-weight:600; color:var(--gray-700); margin:0; }
.desp-filter .form-control, .desp-filter .form-select { min-width:160px; }

.desp-status {
  display:inline-block; padding:.25rem .55rem; border-radius:6px;
  font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.3px;
}
.desp-status.s-paga      { background:#dcfce7; color:#166534; }
.desp-status.s-pendente  { background:#fef3c7; color:#92400e; }
.desp-status.s-cancelada { background:#fee2e2; color:#991b1b; }

.desp-money-out { color:#dc2626; font-weight:700; }
.desp-money-in  { color:#10b981; font-weight:700; }

.desp-actions { display:inline-flex; gap:.3rem; }
.desp-actions .btn-sm { padding:.3rem .55rem; }
