CSS3 pseudo-class selectors such as :not() do not parse correctly when doing "or" selectors.
For example, this parses correctly:
but this does not parse correctly
CSS3 pseudo-classes can absolutely have "or" selectors (comma-separated selectors) as arguments to the pseudo-classes. I would write this up as a bug and take a look at enhancing DomQuery to solve that issue.