Keep the number of files down - reducing http requests is obviously an important part of site performance, but also I personally find it difficult to manage multiple files (base,mid,smartphone, etc) when authoring (What goes where? Is this being included or not?)
Enhance up and let the cascade work for you - starting declarations with the most universal properties and ending with smartphone flourishes (-webkit-border-radius et all) help keeps things in order for me. It can get a little confusing declaring 'background' 3-4 times but following that top-to-bottom, left-to-right model of enhancement allows the experience to scale quite nicely as browser support increases. It's important to manage client/team expectations and help them understand why every platform (WP7, Blackberry <6.0, etc) don't have all the rounded corners, gradients, etc and explain why the page speed > aesthetic consistency in the mobile web.
Reduce images where possible - you said you are using CSS gradients and other CSS techniques to