/* ==========================================================================
   Clientes, Serviços e Financeiro
   ========================================================================== */
.filtro-select { min-width: 190px; }
.metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--sp-2); }
.metrics > div { padding: var(--sp-3); border: 1px solid var(--border); border-radius: var(--r-md); background: var(--surface-2); min-width: 0; }
.metrics dt { font-size: var(--fs-xs); color: var(--text-2); }
.metrics dd { font-size: var(--fs-lg); font-weight: var(--fw-semibold); margin-top: 2px; overflow-wrap: anywhere; }
.hist { display: flex; flex-direction: column; border: 1px solid var(--border); border-radius: var(--r-md); overflow: hidden; }
.hist li + li { border-top: 1px solid var(--border); }
.hist button { display: flex; align-items: center; gap: var(--sp-3); width: 100%; padding: var(--sp-3); border: 0; background: var(--surface); text-align: left; border-radius: 0; }
.hist button:hover { background: var(--surface-2); }

/* Caixa: recebido × pendente × previsto */
.caixa { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--surface); border: 1px solid var(--border); border-radius: var(--r-lg); box-shadow: var(--sh-1); overflow: hidden; }
.caixa-col { padding: var(--sp-5); display: grid; gap: 2px; align-content: start; border-right: 1px solid var(--border); min-width: 0; }
.caixa-col:nth-child(3) { border-right: 0; }
.caixa-rotulo { display: flex; align-items: center; gap: var(--sp-2); font-weight: var(--fw-medium); color: var(--text-2); }
.caixa-valor { font-size: var(--fs-3xl); font-weight: var(--fw-semibold); letter-spacing: -0.02em; line-height: 1.2; overflow-wrap: anywhere; }
.caixa-nota { font-size: var(--fs-sm); color: var(--text-3); }
.caixa-barra { grid-column: 1 / -1; padding: 0 var(--sp-5) var(--sp-5); }
@media (max-width: 720px) {
  .caixa { grid-template-columns: 1fr; }
  .caixa-col { border-right: 0; border-bottom: 1px solid var(--border); padding: var(--sp-4); grid-template-columns: 1fr auto; align-items: baseline; }
  .caixa-col:nth-child(3) { border-bottom: 0; }
  .caixa-nota { grid-column: 1; grid-row: 2; }
  .caixa-valor { font-size: var(--fs-xl); grid-column: 2; grid-row: 1 / 3; align-self: center; }
  .caixa-barra { padding: var(--sp-3) var(--sp-4) var(--sp-4); border-top: 1px solid var(--border); }
}
.seg-bar { display: flex; height: 10px; border-radius: var(--r-pill); overflow: hidden; background: var(--surface-3); gap: 2px; }
.seg-bar > span { display: block; height: 100%; }
.fin-grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: var(--sp-5); align-items: start; }
.fin-grid + .fin-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 900px) { .fin-grid, .fin-grid + .fin-grid { grid-template-columns: minmax(0, 1fr); } }
.hbars { display: grid; gap: var(--sp-4); }
.hbars li { display: grid; gap: 6px; }
