Not a Twitch staff member here, but the login screen will usually open in a _top tab in a browser context. I’m guessing that in an app frame, there’s no parent to open in so it defaults to the given frame which is giving you your rough experience.
I’m not sure if embeds are intended to be used in anything but a browser context; given the parent checking needing to be a domain name, I’m inclined to think not.
JM2C.