You may find
this helpful regarding CSS support in HTML email. Depending on the service/client, the support can range from basically the same as a modern browser, to almost none. I had to deal with that for a work project last year and my short advice to you would be -- use as basic CSS as possible, use it in style attributes instead of relying on selectors.
Javascript in email is something you shouldn't even attempt. It has been the source of many exploits in past and most modern clients will simply not execute it or severely limit what it can do.