With tools like Sass and Compass, you can use partials to sort your CSS better than ever before, but you can also go horribly wrong:
CSS is built around the cascade, which takes into account both code order and selector specificity. Any sorting technique that is based around function rather than cascade is bound to cause conflicts.
If you try to sort by functions (layout, typography, style), you end up repeating selectors and creating new specificity wars. Instead, use the cascade itself to help you sort. Start general, then get specific:
3) Helpers (clearfix, classes to @extend)
4) Page Layout (the shell)
5) Elements by type (classes)
6) Elements by module (IDs)
and so on...