Vaadin lets you build secure, UX-first PWAs entirely in Java.
Free ebook & tutorial.
That's because some properties (text alignment into TextFields for example) would IMHO be better handled at code level instead of css level.
For instance, creating a numeric field and putting its text right-formatted is not a matter of "taste" (css) but rather a functionality matter.
For you particular case, I think the best solution is to add a stylename describing the purpose (e.g. "numericField") to all TextFields that should be right aligned and then adding a CSS rule for .numericField to your theme. In that way the functionality is still controlled through your application logic, but the means for realizing the functionality happens to use some CSS.
Thanks, Leif, I already used the CSS-way - and now I can see the point for it being the only one solution :)