def visit_rule(node)
parent_resolved_rules = parent.is_a?(Sass::Tree::RuleNode) ? parent.resolved_rules : nil
node.resolved_rules ||= node.parsed_rules.resolve_parent_refs(parent_resolved_rules)
yield
rules = node.children.select {|c| c.is_a?(Sass::Tree::RuleNode) || c.bubbles?}
props = node.children.reject {|c| c.is_a?(Sass::Tree::RuleNode) || c.bubbles? || c.invisible?}
unless props.empty?
node.children = props
rules.each {|r| r.tabs += 1} if node.style == :nested
rules.unshift(node)
end
rules.last.group_end = true unless parent.is_a?(Sass::Tree::RuleNode) || rules.empty?
rules
end