I'm working on a new theme for CAREO that is defined completely via CSS. No tables, no image spacers, no HTML hacks. This will provide yet ANOTHER layer of theming for CAREO - at the CSS/presentation layer.
It's going to mean risking breakage on older, crappy browsers (like Netscape 4.7 etc... - which is still the institutional standard on campus here), but it's an OPTIONAL theme, which can be used only if desired. That's kinda the whole point of theming - you don't even have to know the other themes exist.
Currently, there are several old-school HTML-hack themes (CAREO, Alexandria, Commons, Default, COHERE, STLHE), the RSS theme, and the new CSS theme. None of them are even aware of each other, except for default, which is used to render components which aren't specifically defined in any of the other themes.
I'm realizing that I've got a LOT to learn about CSS. I only use the most basic set now (and probably somewhat incorrectly to boot). To do this right, I'll have to get a much better understanding of CSS, inheritance of styles, etc... Probably an O'Rielly book on the subject.