Done. I've written the December 2025 MBR narrative to `/output/mbr-narrative.md`. The narrative includes:

- **Headline**: December revenue slightly beat budget at $827K vs $824K, but operating income fell $5K short at $8K.
- **Month & YTD tables**: Full P&L breakdown showing the $5K operating income miss driven by gross margin compression.
- **Drivers**: Other operating costs exceeded budget by $6K; COGS ran $6K over; but year to date COGS was $196K favorable, partially offset by the $362K revenue shortfall and $38K salary overage.
- **KPIs**: Four exceptions with the longest streaks: Days sales outstanding off target for 3 months at 51.2 days vs. 45.0, and on-time delivery also off 3 months at 93.3% vs. 95.0%.
- **Data notes**: File hashes and row counts for audit trail.

Both `output/mbr.json` (script output) and `output/mbr-narrative.md` (narrative) are ready.