I've seen CSS parsers in other languages, and they don't look very complex (the grammar is remarkably simple). I want one in C# (er, .NET), but I can't seem to find one, and I'd rather not write one if I can reasonably avoid it. Does one exist?
A quick search turned up this, but I've never used it: http://www.codeproject.com/KB/recipes/CSSParser.aspx
And a slightly slower search turns up this one: http://blog.dynamicprogrammer.com/2008/01/20/CSSParserClassInNET.aspx
Here you can find another one especially for C# with sample source.
I wrote one, using the grammar specified in the CSS 2.1 spec. I have also released it now: for details, see http://www.modeltext.com/css/
There is a CSS grammar file for GoldParser:
http://www.devincook.com/goldparser/grammars/index.htm
GoldParser is easy to include in a C# project, and generates an real LALR parser - not some regex hack.
Have you tried the one featured in JsonFx? It's written in C#, parses CSS3 syntax and is distributed under a MIT style license.