fix(spend): lay the activity heatmap out as a complete block (#208)

The Usage & Spend heatmap sized its cells as squares capped at 1.15 grid
units and took one column per week of the selected range, so the default
30-day range drew a 108-pixel patch stranded beside an empty half of the
tab, a partial final week cut a week-wide notch out of it, and the 7-day
range collapsed into a single stack of squares that repeated the chart
above it one day per row.

Cells now stretch into the width a short range leaves unused, bounded at
three times their own height so they keep reading as heatmap cells rather
than bars competing with the chart. The grid is padded at the oldest end
through the shared CostPresentation.spendHeatmapCells layout, so the block
stays a full rectangle; padded slots render as faint no-data cells and stay
out of hover, the readout, and the reading order. Ranges that fill a single
week column hide the heatmap entirely.

Cell height keeps its existing cap, so the section's hierarchy is unchanged:
the daily chart still outranks the heatmap.

Documentation: usage guide heatmap description, changelog Unreleased, and
the regenerated Usage & Spend README screenshot.

Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
30de3f3a69Simone committed on 9/10/2026, 4:32:28 PM· committed by GitHubparent3a6ae8b
7 files changedLine totals unavailable