"Cascading" stylesheets are so named because styles cascade from the outermost to the innermost element.
For instance, a list item could inherit styles from the surrounding DIV and BODY elements.
Where styles are defined differently at 2 levels, the nearest takes precedence.
This makes it all too easy to slip into the bad habit of deploying catch-all stylesheets and changing specifics at the
element level, rather than specifying only the styles you need. Where different teams are involved, they might each provide their
own stylesheet. Since everything is corrected at the element level, there will be no obvious difference in appearance
but bandwidth and processor time is wasted in deploying and parsing multiple stylesheets.
The Firebug extension for Firefox and Fiddler will both show the download (and uncompressed) size of all stylesheets. Firebug will additionally show how styles have been determined for each element, showing where styles are being overriden.
Given the additional benefits in terms of latency and parallel downloading, it makes sense to combine stylesheets into a single file.
If your CSS editor has a browser that can show the style names alphabetically, this will help to identify duplicate and contradictory
style declarations.
CSSTidy
Writing better CSS
Find unused CSS selectors