In Drupal7 the BAT naming scheme was introduced - This splits up the CSS files for a module into 3 different files:
The bare minimum required for the module to function
The CSS needed for the Administration
The optional CSS to make it look pretty.
Optional because it should contain any css that the module creator/maintainer thinks makes things look pretty but obviously this is very dependant on the site.
Unfortunately this was introduced very late in the Drupal7 development, so it was only the system module that really followed these rules before the final release - oooh well the mothership takes care of business:
Core CSS files are copied over & split up for quick cleanup.
In Drupal8 there is a huge effort to get this in as clean ‘n’ mean as possible.
In the future more core modules will be split and added to the Mothership.