/* Scoped report layout; values and labels remain readable at every card width. */
#content:has(#expense-year) .report-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
.report-card .finance-card-preview{container-type:inline-size}
.finance-card-visuals{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:start;margin-block:16px}
.finance-card-visuals>*{min-width:0}.finance-card-visuals h4,.income-payment-pie h4{margin:0 0 16px;font-size:1rem;color:var(--ink);line-height:1.5}
.report-card .finance-period-caption{font-size:.9rem;color:var(--muted);padding-block:10px;border-block:1px solid var(--line);margin:14px 0}
.finance-value-line{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 10px;margin-block:12px 7px;font-size:.9rem;color:var(--ink)}
.finance-value-line strong,.finance-balance strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.finance-comparison-track{height:14px;border-radius:7px;overflow:hidden;background:var(--surface-subtle);border:1px solid var(--line)}
.finance-comparison-track i{display:block;height:100%;border-radius:5px;min-width:0;max-width:100%}
.finance-comparison-track .finance-mini-income{background:var(--success)}.finance-comparison-track .finance-mini-expenses{background:var(--warning)}
.finance-balance{display:grid;gap:8px;padding:14px;margin-block:20px 0;border-radius:12px;border:1px solid var(--line);background:var(--surface-subtle)}
.report-card .finance-balance span{color:var(--muted);font-weight:500;font-size:.85rem}.finance-balance strong{font-size:1.15rem;color:var(--ink)}
.income-payment-pie{min-width:0}.income-pie-donut{display:block;width:min(100%,190px);height:auto;margin:0 auto 16px;direction:ltr}
.income-pie-donut circle{transition:none}.income-pie-total{fill:var(--ink);font-size:21px;font-weight:800}.income-pie-caption{fill:var(--muted);font-size:10px}
.income-pie-legend{display:grid;gap:10px;list-style:none;padding:0;margin:0}.income-pie-legend li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;border-block-end:1px solid var(--line);padding-block-end:10px;font-size:.85rem}
.income-pie-legend .income-pie-key{display:flex;gap:7px;align-items:center;min-width:0;overflow-wrap:anywhere;color:var(--ink);font-size:.85rem}
.income-pie-key i{width:11px;height:11px;flex:0 0 11px;border-radius:50%}.income-pie-legend strong{color:var(--ink);white-space:nowrap;font-variant-numeric:tabular-nums}.income-pie-legend small{grid-column:1/-1;color:var(--muted)}
.income-pie-empty{display:grid;place-items:center;width:150px;height:150px;border:18px solid var(--line);border-radius:50%;padding:14px;text-align:center;line-height:1.6;font-size:.85rem;margin:12px auto;color:var(--muted)}
.finance-overview-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:28px;align-items:start;padding-block-start:20px}
.finance-overview-layout>*{min-width:0}.finance-overview-layout .finance-chart{margin:0}.finance-overview-layout .income-payment-pie{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-subtle)}
.report-card #export-detailed-annual{margin-block-start:10px;max-width:100%;white-space:normal}.report-card>button{max-width:100%;white-space:normal}
@container (max-width:390px){.finance-card-visuals{grid-template-columns:minmax(0,1fr)}.income-pie-legend li{grid-template-columns:minmax(0,1fr) auto}}
@media(max-width:1100px){.finance-overview-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.finance-card-visuals{grid-template-columns:minmax(0,1fr)}.income-pie-donut{width:170px}.finance-overview-layout{gap:20px}.income-pie-legend li{font-size:.9rem}}
@media print{.finance-overview-layout{display:block}.income-payment-pie{break-inside:avoid}.income-pie-legend{grid-template-columns:1fr 1fr}}
