fix(web): polish terminal drawer lifecycle around the async surface

- re-apply the app theme after the WASM surface mounts so a light/dark
  toggle during loading is not lost until the next toggle
- let the surface's onResize callback be the single channel for PTY
  resize RPCs, removing the duplicate explicit sends on drawer drags
- anchor the selection-action menu to the selection end computed from
  Ghostty cell geometry, replacing the DOM-selection lookup that can
  never match a canvas renderer
- tell the user to close and reopen the terminal when the WASM surface
  fails to initialize, and clarify the exited-attach synchronization
  comment

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
94e34c7decWout Stiens committed on 7/31/2026, 7:21:07 AMparentda91992
1 file changedLine totals unavailable