Ok, I managed to fix my problems. If anyone's interested:
- It seems that the querystring gets added to the URL of the embedded flash file when using Safari. Adding "Location=Lobby&LocationId=1" to the end of the embedded page URL will get the chat working again. Alternately, you can edit EmbedChannel.ascx so that these values are passed on to the flash file.
- I got around the menu issue by detecting whether a Mozilla browser is being used and then serving it a HTML 4.0 DOCTYPE instead of the XHTML. It's not ideal, but it works.