Per-campaign gross-vs-net rollup with LEFT JOIN — extending the M5 refund lesson into a multi-table join.