You have made some bad decisions if you find yourself 15 divs deep.
There is a surprisingly small amount of content out there on how to competently engineer your CSS (and a lot of it is bad). Most people don't even think it's something you do.
But basic things like making your general rules generic and pushing context descriptively into the HTML go a long way into making your code understandable.
Sure, if you have some general rules that apply to all your widgets. If you are talking about something more specific, you are better with a more specific name.
There is a surprisingly small amount of content out there on how to competently engineer your CSS (and a lot of it is bad). Most people don't even think it's something you do.
But basic things like making your general rules generic and pushing context descriptively into the HTML go a long way into making your code understandable.