CSS can be a mess. It needs to have standards and rules to avoid a mess. Here is a good speech with recomendations to follow:
http://denisejacobs.com/speaking/talks/scalable-modular-css-ftw/
Remember also about the css standards developed during the years of practice in wordpress. I mentioned them here: https://looksok.wordpress.com/2014/10/11/web-development-done-well-wordpress-web-coding-standards/