/* chart.css — .chart-*: grafik batang HTML (berdampingan atau bertumpuk); tampil langsung (tanpa animasi tumbuh) */
.chart-root{margin:0}
.chart-plot{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;height:var(--h,200px)}
.chart-y{display:flex;flex-direction:column;justify-content:space-between;padding-bottom:22px;font-size:var(--fs-xs);color:var(--text-3);text-align:right;font-variant-numeric:tabular-nums;line-height:1}
.chart-cols{display:flex;gap:10px;min-width:0;background-image:linear-gradient(to bottom,var(--line) 1px,transparent 1px);background-size:100% calc((100% - 22px) / 2)}
.chart-col{flex:1;display:flex;flex-direction:column;align-items:center;min-width:0}
.chart-bars{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:4px;border-bottom:1px solid var(--line-strong)}
.chart-bar{display:block;width:min(26px,40%);height:calc(var(--v) * 100%);border-radius:6px 6px 2px 2px;transition:filter var(--dur-fast)}
.chart-bar:hover{filter:brightness(1.12)}
/* Bertumpuk: .chart-stack setinggi jumlah kolom, segmen seri pertama di bawah */
.chart-stack{display:flex;flex-direction:column-reverse;width:min(26px,40%);height:calc(var(--v) * 100%);border-radius:6px 6px 2px 2px;overflow:hidden}
.chart-seg{display:block;width:100%;min-height:0;transition:filter var(--dur-fast)}
.chart-seg:hover{filter:brightness(1.12)}
.chart-bar--rev{background:linear-gradient(180deg,var(--rev-0),var(--rev-1))}
.chart-bar--cash{background:linear-gradient(180deg,var(--cash-0),var(--cash-1))}
.chart-bar--exp{background:linear-gradient(180deg,var(--exp-0),var(--exp-1))}
/* Dua nada brand (ikut warna brand di Pengaturan): tua untuk seri pertama, muda untuk seri kedua */
.chart-bar--brand{background:linear-gradient(180deg,var(--brand),var(--brand-2))}
.chart-bar--brand-soft{background:var(--brand-tint)}
.chart-x{height:22px;line-height:22px;font-size:var(--fs-xs);font-weight:600;color:var(--text-3)}
.chart-legend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:var(--fs-xs);color:var(--text-2)}
.chart-key{display:inline-flex;align-items:center;gap:6px}
.chart-dot{width:10px;height:10px;border-radius:3px}
.chart-dot--rev{background:var(--rev-1)}
.chart-dot--cash{background:var(--cash-1)}
.chart-dot--exp{background:var(--exp-1)}
.chart-dot--brand{background:var(--brand-2)}
.chart-dot--brand-soft{background:var(--brand-tint)}
.chart-note{color:var(--text-3)}

@media (max-width:767px){
  .chart-cols{gap:6px}
  .chart-bar,.chart-stack{width:min(18px,40%)}
}
