}
if (
- (n.type !== 'pseudo' && n.type !== 'combinator') ||
- (n.type !== 'pseudo' &&
- n.type !== 'combinator' &&
- n.type !== 'universal') ||
- (n.type === 'pseudo' &&
- (n.value === ':is' || n.value === ':where') &&
- !node)
++ (n.type !== 'pseudo' && n.type !== 'combinator' && n.type !== 'universal') ||
+ (isPseudoClassIsOrWhere(n) &&
+ (!node ||
+ n.nodes.some(
+ s =>
+ // has nested :is or :where
+ s.nodes.some(x => isPseudoClassIsOrWhere(x)) ||
+ // has non-pseudo selector
+ !s.nodes.some(x => x.type === 'pseudo'),
+ )))
) {
node = n
+ starNode = null
}
})