Flutter web WebSocket realities: wss mixed content, per-origin connection caps, Nginx upgrade headers, subprotocol auth, heartbeats, and when SSE wins.