I agree with you completely but one of the things I always struggle thinking about is what a potential alternate to CSS even looks like. Although there are so many things wrong with it, you can pull off just about any look and feel you want with it. I mean, at least we're not using Swing or handing the decorating off to the OS or something.
In an ideal world, what's the best way to decorate HTML?
I think bootstrap (and similar frameworks) are the closest thing we have. It makes simple tasks like "put these things in a nice grid" or "center this thing" so much easier than if you were using raw CSS.
Bootstrap gets a lot of flak for its styles, but I think its real value is in making layout somewhat sane.
In an ideal world, what's the best way to decorate HTML?