fix(page): preserve window size during drag-out-of-maximize
When a drag is initiated from the maximized state, startDrag() restores
the window to the exact preMaximizeWindowBounds width and height (bypassing
computeWindowBounds margin math so headless/test runs match non-headless
byte-for-byte). However, the subsequent mousemove handler for that same
drag was re-calling setWindowBounds(computeWindowBounds(screenBounds)),
which re-added MARGIN*2 on top of screenBounds.width -- causing a ~16px
width growth on every drag-out-of-maximize (visible as 800 then 816 in the
page-layout.spec.ts:672 assertion under headless Playwright, where the
ipc.ts canvas margin adjustment is skipped).
Fix: capture the restored window size in dragOutOfMaximizeWindowSize at
the moment startDrag exits maximize; during the ongoing drag, the
mousemove handler overrides computed width/height with this captured
value so the window only pans (x/y) and does not resize. Cleared on
mouseup.