Why do you want to separate the CSS and HTML? They’re both style info, especially in component design.
Classes are a tool for selecting markup to style. Sure, you can create a class for every single CSS rule you write, but just because you can doesn't mean you should.