I will keep an eye on Espresso. At the moment, however, I don't think Textmate has anything to worry about. Will see if sugars will change that. Also, if Textmate becomes so stale as to push to find other solutions (Textmate developers: hint. hint.)
I'm a fan of CSSEdit, their previous app; I never in a zillion years thought I'd think a special-purpose editor for CSS would be useful (I'm an Emacs person), but CSSEdit winds up on my screen every time I do anything webby.
I wrote a minor mode for Emacs a while ago that does something similar to what it looks like CSSEdit does. It uses MozRepl to update the current css of a page in Firefox so you can have a live preview as you work on a css file.
I don't really ever work with CSS these days so it doesn't get much use. It's a little flaky as I've only ever had to get it to work for me. But if anyone is interested I could put it up somewhere.
I liked what I saw of CSSEdit but I just didn't find it to be a big enough win over emacs + Firebug. I try stuff out in Firebug and then, if it works, I edit it into the CSS file with emacs. Since most of the time I'm editing JS or a PHP template or HTML or something in tandem with the CSS, I need to be bouncing over to emacs all the time anyway.
Have I not found the secret killer feature? I own CSSEdit, so I could start using it again tomorrow if I had a good reason!
Yeah, I thought about it when I wrote that comment, and I cannot figure out what the killer feature is; I just do all my CSS editing by slurping up application.css into CSSEdit, making things the way I want them, and then c-p'ing them back into application.css.
I spend a bit of time in Firebug too, but I never use it for CSS editing.
I guess one obvious great feature of CSSEdit is that it's immediately apparent that you can use it to... dynamically edit CSS. It's in the name and everything!
Whereas I'm not sure I'd have realized that you can edit the CSS in a Firebug document if I hadn't clicked on the right-hand panel accidentally one day. Or maybe that's one of the things I picked up from watching John Resig demo something. They should ship a copy of John Resig along with Firebug.
If I remember right, CSSEdit also has a generally clearer UI than Firebug, and of course it actually saves your experiments rather than requiring you to switch to emacs to make them permanent, which might actually be a bigger workflow improvement than I imagine. Maybe I'll try it out some more.
My Firebug addiction is at the point now where I can barely think about CSS without firing it up. The most painful part of a project is still IE-compatibility but no longer just because of general quirkiness - it's more about being forced off of Firebug to make edits.
This is a big overlooked weakness of both Emacs and Vi(m). After about five years of using Vi I switched to a friendlier editor, NEdit; within a couple months, I was better at using NEdit than I was at Vi, mainly because of discoverability. I then used (X)Emacs for a couple of years (mainly for Python programming, though the original motivation was learning Lisp), and found it rather opaque. Now I use TextMate, and I've had the same basic experience as with NEdit.
Emacs is open source, but so scriptable that I don't think I've ever talked with anyone who's ever delved into the C code. Textmate, on the other hand, is not open source, and so you depend entirely on the author to provide you with timely updates and features. It may be scriptable to some degree, but if you want to do something more with it, you simply can't.