NS 4 has a different way of storing the styles than other browsers. They use three arrays - document.tags, document.classes and document.ids - which store the styles. Since a LAYER (or a DIV that is positioned) has it's own DOCUMENT, I would expect it to have it's own style arrays. If nothing is specified, they are probably empty. I don't know if there is any inheritance. You could try repeating your style definitions inside the LAYER.
I don't know anything about Opera. According to W3C recommendations, browsers are supposed to ignore any tag that it does not recognize and it's contents. However, I know that IE does not follow this recommendation.