7b0dbd2242
A transparent, frameless, always-on-top window that renders the real chat surface, so its composer is the app's composer rather than a lookalike that drifts. Main owns the window, its remembered geometry, and click-through. Leaving is a handoff, not a window close. The gateway binds a session's event stream to exactly one socket, so a turn started in the HUD streams only there and the app window hears nothing — no deltas, no turn-complete, no draft clear, and nothing to poll for mid-turn. So the app re-resumes the session the HUD ended on, which rebinds the transport, reconciles the transcript, and picks up an in-flight turn. Main carries the session id across, since it is the only party that outlives the HUD's renderer.