.finance-chart{border:1px solid #e1e5e5;border-radius:13px;background:#fff;padding:22px;box-shadow:0 2px 1px #25282905;min-width:0}
.finance-chart h3{color:#303536;font-size:18px;margin:0 0 8px}
.finance-chart-note{color:#60696c;font-size:13px;line-height:1.6;margin:0 0 18px;max-width:75ch}
.finance-pie-layout{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);align-items:center;gap:32px}
.finance-pie-layout svg{display:block;width:100%;max-width:280px;margin:auto}
.finance-legend{padding:0;margin:0;list-style:none;display:grid;gap:0;font-size:14px;min-width:0}
.finance-legend li{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf0f1}
.finance-legend strong,.finance-legend small{font-variant-numeric:tabular-nums}.finance-legend small{color:#60696c;min-width:48px;text-align:right}
.finance-swatch{width:11px;height:11px;border-radius:3px}.finance-empty{padding:28px 0;color:#60696c;text-align:center}
.finance-columns-scroll{overflow-x:auto;overscroll-behavior-x:contain}.finance-columns-scroll:focus-visible{outline:2px solid #b84b10;outline-offset:3px}.finance-columns-scroll svg{display:block;width:100%;max-height:370px;font-family:inherit}.finance-axis{fill:#4e585c;font-size:12px;font-variant-numeric:tabular-nums}
.finance-report-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.finance-report-charts>.panel{margin:0}
.finance-expenses-summary .value{font-size:clamp(16px,2.3vw,28px);font-variant-numeric:tabular-nums;white-space:nowrap}
.finance-chart-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.finance-chart-heading h3{margin:0;min-width:0}
.finance-chart-expand{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:8px;border:1px solid #e1e5e5;border-radius:8px;background:#fff;color:#60696c}
.finance-chart-expand:hover{background:#fff3e9;border-color:#f7c3a1;color:#ad460d}.finance-chart-expand:focus-visible{outline:2px solid #b84b10;outline-offset:3px}.finance-chart-expand svg{width:18px;height:18px;pointer-events:none}
.finance-chart-expanded-backdrop .modal{width:min(1400px,96vw);max-width:96vw;max-height:94vh;max-height:94dvh}
.finance-chart-expanded-backdrop .modal-head{align-items:center;gap:16px}.finance-chart-expanded-backdrop .modal-head h2{min-width:0}.finance-chart-expanded-backdrop .close{flex-shrink:0}
.finance-chart-expanded-backdrop .modal-body{min-width:0;overflow-x:hidden;overscroll-behavior:contain}
.finance-expanded-chart{min-width:0}.finance-expanded-chart .finance-columns-scroll{overflow:visible}
.finance-expanded-chart .finance-columns-scroll svg{width:100%;min-width:0;max-width:100%;height:auto;max-height:none}
.finance-expanded-chart .finance-legend{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
@media(max-width:700px){.finance-chart-expanded-backdrop{padding:8px}.finance-chart-expanded-backdrop .modal{width:100%;max-width:100%;max-height:96vh;max-height:96dvh}.finance-chart-expanded-backdrop .modal-body{padding:16px}.finance-expanded-chart .finance-legend{grid-template-columns:1fr}.finance-chart-expand{flex-basis:40px;width:40px;height:40px}}
@media(max-width:1100px){.finance-report-charts{grid-template-columns:1fr}}
@media(max-width:700px){.finance-chart{padding:18px}.finance-pie-layout{grid-template-columns:1fr;gap:12px}.finance-pie-layout svg{max-width:230px}.finance-legend{font-size:12px}.finance-legend li{gap:7px}.finance-chart h3{font-size:16px}}
