e4a05dd468
The mask screen never populated its overlay: pickCalibration set overlay:null and the only thing that computed it (approveMask) was gated behind the Approve button, which is disabled until overlay.slabPx>0 - a chicken-and-egg, so the preview stayed empty and Approve was permanently disabled. Auto-run approveMask() whenever the mask screen is active (and on sheet/sensitivity change) so the overlay and preview render immediately.