GridStack v12 removeInternalForSave() deletes w/h properties from
save() output when they equal minW/minH (or 1). This caused
_removeDemoView() to pass h:undefined to grid.update(), which
GridStack then defaulted to h:1, shrinking all tiles.
Fix: save layout by reading node properties directly instead of
using _grid.save(false), ensuring w and h are always preserved.