/* Caixa e bancos (#919) no molde config (#146 · onda 5). Só tokens do DS. */
.fc .ds-molde-corpo > .principal { display: grid; gap: var(--ds-s4); }
.fc-atencao { color: var(--ink-warn); }
.fc-meta { color: var(--muted); font-size: var(--ds-fs-sm); }
.fc-meta.atrasado { color: var(--ink-err); }
.fc-aviso { margin: 0; padding: var(--ds-s2) var(--ds-s3); border: 1px solid var(--line); border-radius: var(--ds-r); background: var(--panel); display: flex; gap: var(--ds-s2); align-items: center; }
.fc-empresas { display: flex; gap: var(--ds-s1); }
.fc-kpis { display: grid; gap: var(--ds-s3); grid-template-columns: repeat(4, minmax(0, 1fr)); }
.fc-bloco { background: var(--panel); border: 1px solid var(--line); border-radius: var(--ds-r-lg); padding: var(--ds-s3) var(--ds-s4); display: grid; gap: var(--ds-s2); min-width: 0; }
.fc-bloco h3 { margin: 0; font-size: var(--ds-fs); display: flex; gap: var(--ds-s2); align-items: center; }
.fc-fontes, .fc-inbox, .fc-lista { list-style: none; margin: 0; padding: 0; }
.fc-fonte { display: grid; grid-template-columns: minmax(0, 2fr) auto minmax(0, 2fr) auto; gap: var(--ds-s3); align-items: center; min-height: 40px; padding: var(--ds-s1) 0; }
.fc-fonte + .fc-fonte, .fc-inbox-linha + .fc-inbox-linha, .fc-lista li + li { border-top: 1px solid var(--line-soft); }
.fc-fonte .nm { display: flex; flex-direction: column; min-width: 0; }
.fc-fonte .nm span { color: var(--muted); font-size: var(--ds-fs-sm); }
.fc-fonte .inf { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fc-upload { cursor: pointer; }
.fc-inbox-linha { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: var(--ds-s3); align-items: center; padding: var(--ds-s2) 0; }
.fc-inbox-id { display: flex; flex-direction: column; min-width: 0; }
.fc-desc { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fc-valor { font-weight: 600; white-space: nowrap; }
.fc .entra { color: var(--ink-ok); }
.fc .sai { color: var(--ink-err); }
.fc-inbox-acao { display: flex; gap: var(--ds-s2); align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.fc-fixa { display: inline-flex; gap: var(--ds-s1); align-items: center; font-size: var(--ds-fs-sm); color: var(--muted); }
.fc-tabela { width: 100%; border-collapse: collapse; font-size: var(--ds-fs-sm); }
.fc-tabela th, .fc-tabela td { padding: var(--ds-s1) var(--ds-s2); border-bottom: 1px solid var(--line-soft); text-align: left; }
.fc-tabela th { color: var(--muted); font-weight: 500; }
.fc .num { text-align: right; font-variant-numeric: tabular-nums; }
.fc-lista li { display: grid; grid-template-columns: minmax(0, 1fr) auto auto auto; gap: var(--ds-s3); align-items: center; padding: var(--ds-s1) 0; }
.fc-lista li > span:first-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.fc-duas { display: grid; gap: var(--ds-s4); grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 760px) {
  .fc-kpis, .fc-duas { grid-template-columns: minmax(0, 1fr); }
  .fc-fonte, .fc-inbox-linha, .fc-lista li { grid-template-columns: minmax(0, 1fr) auto; }
  .fc-fonte .inf, .fc-inbox-acao { grid-column: 1 / -1; justify-content: flex-start; }
}
