---
source: crates/biome_css_parser/tests/spec_test.rs
expression: snapshot
---
## Input
```css
#selector, #important, #from {
}
```
## AST
```
CssRoot {
bom_token: missing (optional),
rules: CssRuleList [
CssQualifiedRule {
prelude: CssSelectorList [
CssCompoundSelector {
nesting_selectors: CssNestedSelectorList [],
simple_selector: missing (optional),
sub_selectors: CssSubSelectorList [
CssIdSelector {
hash_token: HASH@0..1 "#" [] [],
name: CssCustomIdentifier {
value_token: IDENT@1..9 "selector" [] [],
},
},
],
},
COMMA@9..11 "," [] [Whitespace(" ")],
CssCompoundSelector {
nesting_selectors: CssNestedSelectorList [],
simple_selector: missing (optional),
sub_selectors: CssSubSelectorList [
CssIdSelector {
hash_token: HASH@11..12 "#" [] [],
name: CssCustomIdentifier {
value_token: IDENT@12..21 "important" [] [],
},
},
],
},
COMMA@21..23 "," [] [Whitespace(" ")],
CssCompoundSelector {
nesting_selectors: CssNestedSelectorList [],
simple_selector: missing (optional),
sub_selectors: CssSubSelectorList [
CssIdSelector {
hash_token: HASH@23..24 "#" [] [],
name: CssCustomIdentifier {
value_token: IDENT@24..29 "from" [] [Whitespace(" ")],
},
},
],
},
],
block: CssDeclarationOrRuleBlock {
l_curly_token: L_CURLY@29..30 "{" [] [],
items: CssDeclarationOrRuleList [],
r_curly_token: R_CURLY@30..33 "}" [Newline("\n"), Newline("\n")] [],
},
},
],
eof_token: EOF@33..34 "" [Newline("\n")] [],
}
```
## CST
```
0: CSS_ROOT@0..34
0: (empty)
1: CSS_RULE_LIST@0..33
0: CSS_QUALIFIED_RULE@0..33
0: CSS_SELECTOR_LIST@0..29
0: CSS_COMPOUND_SELECTOR@0..9
0: CSS_NESTED_SELECTOR_LIST@0..0
1: (empty)
2: CSS_SUB_SELECTOR_LIST@0..9
0: CSS_ID_SELECTOR@0..9
0: HASH@0..1 "#" [] []
1: CSS_CUSTOM_IDENTIFIER@1..9
0: IDENT@1..9 "selector" [] []
1: COMMA@9..11 "," [] [Whitespace(" ")]
2: CSS_COMPOUND_SELECTOR@11..21
0: CSS_NESTED_SELECTOR_LIST@11..11
1: (empty)
2: CSS_SUB_SELECTOR_LIST@11..21
0: CSS_ID_SELECTOR@11..21
0: HASH@11..12 "#" [] []
1: CSS_CUSTOM_IDENTIFIER@12..21
0: IDENT@12..21 "important" [] []
3: COMMA@21..23 "," [] [Whitespace(" ")]
4: CSS_COMPOUND_SELECTOR@23..29
0: CSS_NESTED_SELECTOR_LIST@23..23
1: (empty)
2: CSS_SUB_SELECTOR_LIST@23..29
0: CSS_ID_SELECTOR@23..29
0: HASH@23..24 "#" [] []
1: CSS_CUSTOM_IDENTIFIER@24..29
0: IDENT@24..29 "from" [] [Whitespace(" ")]
1: CSS_DECLARATION_OR_RULE_BLOCK@29..33
0: L_CURLY@29..30 "{" [] []
1: CSS_DECLARATION_OR_RULE_LIST@30..30
2: R_CURLY@30..33 "}" [Newline("\n"), Newline("\n")] []
2: EOF@33..34 "" [Newline("\n")] []
```