The problem with CSS is the cascade and how it is not scoped. It's like global variables in code. And that can be traced back to it's roots 20+ years ago as a way to style "documents" vs applications that are naturally composed of self-contained UI components.