/* Tela 12 — Fluxo de caixa e conciliação bancária.
   Paleta do gráfico validada para daltonismo contra a superfície branca do painel:
   entradas #12a074 × saídas #b83a3a — ΔE 9.7 (deutan), 29.0 (visão normal). */
.cashflow-section{--chart-inflow:#12a074;--chart-outflow:#b83a3a;--chart-balance:#075e54}
.cashflow-section .report-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.cashflow-section .segmented{align-self:flex-start}

.chart-figure{margin:22px 0 0;padding:16px 4px 4px;border-top:1px solid var(--line)}
.chart-figure figcaption{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;margin-bottom:10px}
.chart-figure figcaption strong{font-size:.95rem}
.chart-figure figcaption .muted{font-size:.8rem}

.chart-legend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:26px}
.chart-legend span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.8rem;font-weight:700}
.chart-legend i{width:12px;height:12px;border-radius:3px;display:block}

.chart-bars{display:flex;align-items:flex-end;gap:6px;height:170px;padding-bottom:1px;border-bottom:1px solid var(--line)}
.chart-column{flex:1 1 0;display:flex;align-items:flex-end;gap:2px;height:100%;min-width:0}
.chart-bar-slot{flex:1 1 0;height:100%;display:flex;align-items:flex-end;min-width:0}
.chart-bar{width:100%;border-radius:4px 4px 0 0;position:relative;transition:filter .15s}
.chart-bar:hover{filter:brightness(.88)}
.chart-bar.inflow{background:var(--chart-inflow)}
.chart-bar.outflow{background:var(--chart-outflow)}
.chart-bar-label{position:absolute;bottom:calc(100% + 5px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:.7rem;font-weight:800;color:var(--text)}
.chart-bar-label.start{left:0;transform:none}
.chart-bar-label.end{left:auto;right:0;transform:none}

.chart-axis{display:flex;gap:6px;margin-top:7px}
.chart-axis span{flex:1 1 0;text-align:center;color:var(--muted);font-size:.68rem;min-width:0;overflow:hidden}

.chart-balance svg{display:block;width:100%;height:130px}
.chart-scale{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:var(--muted);font-size:.72rem}

.chart-table{margin-top:20px;border-top:1px solid var(--line);padding-top:14px}
.chart-table summary{cursor:pointer;font-weight:750;color:var(--green2)}
.chart-table table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.82rem}
.chart-table th,.chart-table td{padding:7px 9px;border-bottom:1px solid var(--line);text-align:right}
.chart-table th:first-child,.chart-table td:first-child{text-align:left}
.chart-table thead th{color:var(--muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}

.reconcile-panel{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}
.reconcile-panel h3{margin:0 0 4px}
.reconcile-panel .muted{margin:0;font-size:.85rem}
.chip{display:inline-block;margin-top:6px;padding:3px 9px;border-radius:99px;font-size:.7rem;font-weight:800;letter-spacing:.03em}
.chip.reconciled{background:#e3f5ee;color:#0a6a50}
.chip.unreconciled{background:#fdeceb;color:#8f2b2b}

@media(max-width:900px){.cashflow-section .report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
  .cashflow-section .report-grid{grid-template-columns:1fr}
  .chart-bars{height:135px}
  .chart-axis span:nth-child(even){visibility:hidden}
  .chart-bar-label{display:none}
}
@media(prefers-reduced-motion:reduce){.chart-bar{transition:none}}
@media(forced-colors:active){.chart-bar{forced-color-adjust:none;border:1px solid CanvasText}.chart-bar.outflow{background:Highlight}}
