biome_css_parser 0.5.8

Biome's CSS parser
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
---
source: crates/biome_css_parser/tests/spec_test.rs
expression: snapshot
---
## Input

```css
a {
    background: linear-gradient(white, gray);
    background: linear-gradient(yellow, blue);
    background: linear-gradient(to bottom, yellow, blue);
    background: linear-gradient(180deg, yellow, blue);
    background: linear-gradient(to top, blue, yellow);
    background: linear-gradient(to bottom, yellow 0%, blue 100%);
    background: linear-gradient(135deg, yellow, blue);
    background: linear-gradient(-45deg, blue, yellow);
    background: linear-gradient(yellow, blue 20%, #0f0);
    background: linear-gradient(to top right, red, white, blue);
    background: linear-gradient(0deg, blue, green 40%, red);
    background: linear-gradient(.25turn, red 10%, blue);
    background: linear-gradient(45deg, red 0 50%, blue 50% 100%);
}
```


## AST

```
CssRoot {
    bom_token: missing (optional),
    rules: CssRuleList [
        CssQualifiedRule {
            prelude: CssSelectorList [
                CssCompoundSelector {
                    nesting_selectors: CssNestedSelectorList [],
                    simple_selector: CssTypeSelector {
                        namespace: missing (optional),
                        ident: CssIdentifier {
                            value_token: IDENT@0..2 "a" [] [Whitespace(" ")],
                        },
                    },
                    sub_selectors: CssSubSelectorList [],
                },
            ],
            block: CssDeclarationOrRuleBlock {
                l_curly_token: L_CURLY@2..3 "{" [] [],
                items: CssDeclarationOrRuleList [
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@3..18 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@18..20 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@20..35 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@35..36 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@36..41 "white" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@41..43 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@43..47 "gray" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@47..48 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@48..49 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@49..64 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@64..66 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@66..81 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@81..82 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@82..88 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@88..90 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@90..94 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@94..95 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@95..96 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@96..111 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@111..113 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@113..128 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@128..129 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@129..132 "to" [] [Whitespace(" ")],
                                                        },
                                                        CssIdentifier {
                                                            value_token: IDENT@132..138 "bottom" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@138..140 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@140..146 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@146..148 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@148..152 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@152..153 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@153..154 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@154..169 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@169..171 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@171..186 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@186..187 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@187..190 "180" [] [],
                                                            unit_token: IDENT@190..193 "deg" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@193..195 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@195..201 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@201..203 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@203..207 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@207..208 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@208..209 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@209..224 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@224..226 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@226..241 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@241..242 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@242..245 "to" [] [Whitespace(" ")],
                                                        },
                                                        CssIdentifier {
                                                            value_token: IDENT@245..248 "top" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@248..250 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@250..254 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@254..256 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@256..262 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@262..263 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@263..264 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@264..279 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@279..281 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@281..296 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@296..297 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@297..300 "to" [] [Whitespace(" ")],
                                                        },
                                                        CssIdentifier {
                                                            value_token: IDENT@300..306 "bottom" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@306..308 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@308..315 "yellow" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@315..316 "0" [] [],
                                                            percent_token: PERCENT@316..317 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@317..319 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@319..324 "blue" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@324..327 "100" [] [],
                                                            percent_token: PERCENT@327..328 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@328..329 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@329..330 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@330..345 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@345..347 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@347..362 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@362..363 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@363..366 "135" [] [],
                                                            unit_token: IDENT@366..369 "deg" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@369..371 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@371..377 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@377..379 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@379..383 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@383..384 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@384..385 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@385..400 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@400..402 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@402..417 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@417..418 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@418..421 "-45" [] [],
                                                            unit_token: IDENT@421..424 "deg" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@424..426 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@426..430 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@430..432 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@432..438 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@438..439 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@439..440 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@440..455 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@455..457 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@457..472 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@472..473 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@473..479 "yellow" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@479..481 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@481..486 "blue" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@486..488 "20" [] [],
                                                            percent_token: PERCENT@488..489 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@489..491 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssColor {
                                                            hash_token: HASH@491..492 "#" [] [],
                                                            value_token: CSS_COLOR_LITERAL@492..495 "0f0" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@495..496 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@496..497 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@497..512 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@512..514 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@514..529 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@529..530 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@530..533 "to" [] [Whitespace(" ")],
                                                        },
                                                        CssIdentifier {
                                                            value_token: IDENT@533..537 "top" [] [Whitespace(" ")],
                                                        },
                                                        CssIdentifier {
                                                            value_token: IDENT@537..542 "right" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@542..544 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@544..547 "red" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@547..549 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@549..554 "white" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@554..556 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@556..560 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@560..561 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@561..562 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@562..577 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@577..579 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@579..594 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@594..595 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@595..596 "0" [] [],
                                                            unit_token: IDENT@596..599 "deg" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@599..601 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@601..605 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@605..607 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@607..613 "green" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@613..615 "40" [] [],
                                                            percent_token: PERCENT@615..616 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@616..618 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@618..621 "red" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@621..622 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@622..623 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@623..638 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@638..640 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@640..655 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@655..656 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@656..659 ".25" [] [],
                                                            unit_token: IDENT@659..663 "turn" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@663..665 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@665..669 "red" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@669..671 "10" [] [],
                                                            percent_token: PERCENT@671..672 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@672..674 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@674..678 "blue" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@678..679 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@679..680 ";" [] [],
                    },
                    CssDeclarationWithSemicolon {
                        declaration: CssDeclaration {
                            property: CssGenericProperty {
                                name: CssIdentifier {
                                    value_token: IDENT@680..695 "background" [Newline("\n"), Whitespace("    ")] [],
                                },
                                colon_token: COLON@695..697 ":" [] [Whitespace(" ")],
                                value: CssGenericComponentValueList [
                                    CssFunction {
                                        name: CssIdentifier {
                                            value_token: IDENT@697..712 "linear-gradient" [] [],
                                        },
                                        l_paren_token: L_PAREN@712..713 "(" [] [],
                                        items: CssParameterList [
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssRegularDimension {
                                                            value_token: CSS_NUMBER_LITERAL@713..715 "45" [] [],
                                                            unit_token: IDENT@715..718 "deg" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@718..720 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@720..724 "red" [] [Whitespace(" ")],
                                                        },
                                                        CssNumber {
                                                            value_token: CSS_NUMBER_LITERAL@724..726 "0" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@726..728 "50" [] [],
                                                            percent_token: PERCENT@728..729 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                            COMMA@729..731 "," [] [Whitespace(" ")],
                                            CssParameter {
                                                any_css_expression: CssListOfComponentValuesExpression {
                                                    css_component_value_list: CssComponentValueList [
                                                        CssIdentifier {
                                                            value_token: IDENT@731..736 "blue" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@736..738 "50" [] [],
                                                            percent_token: PERCENT@738..740 "%" [] [Whitespace(" ")],
                                                        },
                                                        CssPercentage {
                                                            value_token: CSS_NUMBER_LITERAL@740..743 "100" [] [],
                                                            percent_token: PERCENT@743..744 "%" [] [],
                                                        },
                                                    ],
                                                },
                                            },
                                        ],
                                        r_paren_token: R_PAREN@744..745 ")" [] [],
                                    },
                                ],
                            },
                            important: missing (optional),
                        },
                        semicolon_token: SEMICOLON@745..746 ";" [] [],
                    },
                ],
                r_curly_token: R_CURLY@746..748 "}" [Newline("\n")] [],
            },
        },
    ],
    eof_token: EOF@748..748 "" [] [],
}
```

## CST

```
0: CSS_ROOT@0..748
  0: (empty)
  1: CSS_RULE_LIST@0..748
    0: CSS_QUALIFIED_RULE@0..748
      0: CSS_SELECTOR_LIST@0..2
        0: CSS_COMPOUND_SELECTOR@0..2
          0: CSS_NESTED_SELECTOR_LIST@0..0
          1: CSS_TYPE_SELECTOR@0..2
            0: (empty)
            1: CSS_IDENTIFIER@0..2
              0: IDENT@0..2 "a" [] [Whitespace(" ")]
          2: CSS_SUB_SELECTOR_LIST@2..2
      1: CSS_DECLARATION_OR_RULE_BLOCK@2..748
        0: L_CURLY@2..3 "{" [] []
        1: CSS_DECLARATION_OR_RULE_LIST@3..746
          0: CSS_DECLARATION_WITH_SEMICOLON@3..49
            0: CSS_DECLARATION@3..48
              0: CSS_GENERIC_PROPERTY@3..48
                0: CSS_IDENTIFIER@3..18
                  0: IDENT@3..18 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@18..20 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@20..48
                  0: CSS_FUNCTION@20..48
                    0: CSS_IDENTIFIER@20..35
                      0: IDENT@20..35 "linear-gradient" [] []
                    1: L_PAREN@35..36 "(" [] []
                    2: CSS_PARAMETER_LIST@36..47
                      0: CSS_PARAMETER@36..41
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@36..41
                          0: CSS_COMPONENT_VALUE_LIST@36..41
                            0: CSS_IDENTIFIER@36..41
                              0: IDENT@36..41 "white" [] []
                      1: COMMA@41..43 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@43..47
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@43..47
                          0: CSS_COMPONENT_VALUE_LIST@43..47
                            0: CSS_IDENTIFIER@43..47
                              0: IDENT@43..47 "gray" [] []
                    3: R_PAREN@47..48 ")" [] []
              1: (empty)
            1: SEMICOLON@48..49 ";" [] []
          1: CSS_DECLARATION_WITH_SEMICOLON@49..96
            0: CSS_DECLARATION@49..95
              0: CSS_GENERIC_PROPERTY@49..95
                0: CSS_IDENTIFIER@49..64
                  0: IDENT@49..64 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@64..66 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@66..95
                  0: CSS_FUNCTION@66..95
                    0: CSS_IDENTIFIER@66..81
                      0: IDENT@66..81 "linear-gradient" [] []
                    1: L_PAREN@81..82 "(" [] []
                    2: CSS_PARAMETER_LIST@82..94
                      0: CSS_PARAMETER@82..88
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@82..88
                          0: CSS_COMPONENT_VALUE_LIST@82..88
                            0: CSS_IDENTIFIER@82..88
                              0: IDENT@82..88 "yellow" [] []
                      1: COMMA@88..90 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@90..94
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@90..94
                          0: CSS_COMPONENT_VALUE_LIST@90..94
                            0: CSS_IDENTIFIER@90..94
                              0: IDENT@90..94 "blue" [] []
                    3: R_PAREN@94..95 ")" [] []
              1: (empty)
            1: SEMICOLON@95..96 ";" [] []
          2: CSS_DECLARATION_WITH_SEMICOLON@96..154
            0: CSS_DECLARATION@96..153
              0: CSS_GENERIC_PROPERTY@96..153
                0: CSS_IDENTIFIER@96..111
                  0: IDENT@96..111 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@111..113 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@113..153
                  0: CSS_FUNCTION@113..153
                    0: CSS_IDENTIFIER@113..128
                      0: IDENT@113..128 "linear-gradient" [] []
                    1: L_PAREN@128..129 "(" [] []
                    2: CSS_PARAMETER_LIST@129..152
                      0: CSS_PARAMETER@129..138
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@129..138
                          0: CSS_COMPONENT_VALUE_LIST@129..138
                            0: CSS_IDENTIFIER@129..132
                              0: IDENT@129..132 "to" [] [Whitespace(" ")]
                            1: CSS_IDENTIFIER@132..138
                              0: IDENT@132..138 "bottom" [] []
                      1: COMMA@138..140 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@140..146
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@140..146
                          0: CSS_COMPONENT_VALUE_LIST@140..146
                            0: CSS_IDENTIFIER@140..146
                              0: IDENT@140..146 "yellow" [] []
                      3: COMMA@146..148 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@148..152
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@148..152
                          0: CSS_COMPONENT_VALUE_LIST@148..152
                            0: CSS_IDENTIFIER@148..152
                              0: IDENT@148..152 "blue" [] []
                    3: R_PAREN@152..153 ")" [] []
              1: (empty)
            1: SEMICOLON@153..154 ";" [] []
          3: CSS_DECLARATION_WITH_SEMICOLON@154..209
            0: CSS_DECLARATION@154..208
              0: CSS_GENERIC_PROPERTY@154..208
                0: CSS_IDENTIFIER@154..169
                  0: IDENT@154..169 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@169..171 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@171..208
                  0: CSS_FUNCTION@171..208
                    0: CSS_IDENTIFIER@171..186
                      0: IDENT@171..186 "linear-gradient" [] []
                    1: L_PAREN@186..187 "(" [] []
                    2: CSS_PARAMETER_LIST@187..207
                      0: CSS_PARAMETER@187..193
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@187..193
                          0: CSS_COMPONENT_VALUE_LIST@187..193
                            0: CSS_REGULAR_DIMENSION@187..193
                              0: CSS_NUMBER_LITERAL@187..190 "180" [] []
                              1: IDENT@190..193 "deg" [] []
                      1: COMMA@193..195 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@195..201
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@195..201
                          0: CSS_COMPONENT_VALUE_LIST@195..201
                            0: CSS_IDENTIFIER@195..201
                              0: IDENT@195..201 "yellow" [] []
                      3: COMMA@201..203 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@203..207
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@203..207
                          0: CSS_COMPONENT_VALUE_LIST@203..207
                            0: CSS_IDENTIFIER@203..207
                              0: IDENT@203..207 "blue" [] []
                    3: R_PAREN@207..208 ")" [] []
              1: (empty)
            1: SEMICOLON@208..209 ";" [] []
          4: CSS_DECLARATION_WITH_SEMICOLON@209..264
            0: CSS_DECLARATION@209..263
              0: CSS_GENERIC_PROPERTY@209..263
                0: CSS_IDENTIFIER@209..224
                  0: IDENT@209..224 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@224..226 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@226..263
                  0: CSS_FUNCTION@226..263
                    0: CSS_IDENTIFIER@226..241
                      0: IDENT@226..241 "linear-gradient" [] []
                    1: L_PAREN@241..242 "(" [] []
                    2: CSS_PARAMETER_LIST@242..262
                      0: CSS_PARAMETER@242..248
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@242..248
                          0: CSS_COMPONENT_VALUE_LIST@242..248
                            0: CSS_IDENTIFIER@242..245
                              0: IDENT@242..245 "to" [] [Whitespace(" ")]
                            1: CSS_IDENTIFIER@245..248
                              0: IDENT@245..248 "top" [] []
                      1: COMMA@248..250 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@250..254
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@250..254
                          0: CSS_COMPONENT_VALUE_LIST@250..254
                            0: CSS_IDENTIFIER@250..254
                              0: IDENT@250..254 "blue" [] []
                      3: COMMA@254..256 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@256..262
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@256..262
                          0: CSS_COMPONENT_VALUE_LIST@256..262
                            0: CSS_IDENTIFIER@256..262
                              0: IDENT@256..262 "yellow" [] []
                    3: R_PAREN@262..263 ")" [] []
              1: (empty)
            1: SEMICOLON@263..264 ";" [] []
          5: CSS_DECLARATION_WITH_SEMICOLON@264..330
            0: CSS_DECLARATION@264..329
              0: CSS_GENERIC_PROPERTY@264..329
                0: CSS_IDENTIFIER@264..279
                  0: IDENT@264..279 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@279..281 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@281..329
                  0: CSS_FUNCTION@281..329
                    0: CSS_IDENTIFIER@281..296
                      0: IDENT@281..296 "linear-gradient" [] []
                    1: L_PAREN@296..297 "(" [] []
                    2: CSS_PARAMETER_LIST@297..328
                      0: CSS_PARAMETER@297..306
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@297..306
                          0: CSS_COMPONENT_VALUE_LIST@297..306
                            0: CSS_IDENTIFIER@297..300
                              0: IDENT@297..300 "to" [] [Whitespace(" ")]
                            1: CSS_IDENTIFIER@300..306
                              0: IDENT@300..306 "bottom" [] []
                      1: COMMA@306..308 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@308..317
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@308..317
                          0: CSS_COMPONENT_VALUE_LIST@308..317
                            0: CSS_IDENTIFIER@308..315
                              0: IDENT@308..315 "yellow" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@315..317
                              0: CSS_NUMBER_LITERAL@315..316 "0" [] []
                              1: PERCENT@316..317 "%" [] []
                      3: COMMA@317..319 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@319..328
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@319..328
                          0: CSS_COMPONENT_VALUE_LIST@319..328
                            0: CSS_IDENTIFIER@319..324
                              0: IDENT@319..324 "blue" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@324..328
                              0: CSS_NUMBER_LITERAL@324..327 "100" [] []
                              1: PERCENT@327..328 "%" [] []
                    3: R_PAREN@328..329 ")" [] []
              1: (empty)
            1: SEMICOLON@329..330 ";" [] []
          6: CSS_DECLARATION_WITH_SEMICOLON@330..385
            0: CSS_DECLARATION@330..384
              0: CSS_GENERIC_PROPERTY@330..384
                0: CSS_IDENTIFIER@330..345
                  0: IDENT@330..345 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@345..347 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@347..384
                  0: CSS_FUNCTION@347..384
                    0: CSS_IDENTIFIER@347..362
                      0: IDENT@347..362 "linear-gradient" [] []
                    1: L_PAREN@362..363 "(" [] []
                    2: CSS_PARAMETER_LIST@363..383
                      0: CSS_PARAMETER@363..369
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@363..369
                          0: CSS_COMPONENT_VALUE_LIST@363..369
                            0: CSS_REGULAR_DIMENSION@363..369
                              0: CSS_NUMBER_LITERAL@363..366 "135" [] []
                              1: IDENT@366..369 "deg" [] []
                      1: COMMA@369..371 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@371..377
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@371..377
                          0: CSS_COMPONENT_VALUE_LIST@371..377
                            0: CSS_IDENTIFIER@371..377
                              0: IDENT@371..377 "yellow" [] []
                      3: COMMA@377..379 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@379..383
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@379..383
                          0: CSS_COMPONENT_VALUE_LIST@379..383
                            0: CSS_IDENTIFIER@379..383
                              0: IDENT@379..383 "blue" [] []
                    3: R_PAREN@383..384 ")" [] []
              1: (empty)
            1: SEMICOLON@384..385 ";" [] []
          7: CSS_DECLARATION_WITH_SEMICOLON@385..440
            0: CSS_DECLARATION@385..439
              0: CSS_GENERIC_PROPERTY@385..439
                0: CSS_IDENTIFIER@385..400
                  0: IDENT@385..400 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@400..402 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@402..439
                  0: CSS_FUNCTION@402..439
                    0: CSS_IDENTIFIER@402..417
                      0: IDENT@402..417 "linear-gradient" [] []
                    1: L_PAREN@417..418 "(" [] []
                    2: CSS_PARAMETER_LIST@418..438
                      0: CSS_PARAMETER@418..424
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@418..424
                          0: CSS_COMPONENT_VALUE_LIST@418..424
                            0: CSS_REGULAR_DIMENSION@418..424
                              0: CSS_NUMBER_LITERAL@418..421 "-45" [] []
                              1: IDENT@421..424 "deg" [] []
                      1: COMMA@424..426 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@426..430
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@426..430
                          0: CSS_COMPONENT_VALUE_LIST@426..430
                            0: CSS_IDENTIFIER@426..430
                              0: IDENT@426..430 "blue" [] []
                      3: COMMA@430..432 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@432..438
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@432..438
                          0: CSS_COMPONENT_VALUE_LIST@432..438
                            0: CSS_IDENTIFIER@432..438
                              0: IDENT@432..438 "yellow" [] []
                    3: R_PAREN@438..439 ")" [] []
              1: (empty)
            1: SEMICOLON@439..440 ";" [] []
          8: CSS_DECLARATION_WITH_SEMICOLON@440..497
            0: CSS_DECLARATION@440..496
              0: CSS_GENERIC_PROPERTY@440..496
                0: CSS_IDENTIFIER@440..455
                  0: IDENT@440..455 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@455..457 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@457..496
                  0: CSS_FUNCTION@457..496
                    0: CSS_IDENTIFIER@457..472
                      0: IDENT@457..472 "linear-gradient" [] []
                    1: L_PAREN@472..473 "(" [] []
                    2: CSS_PARAMETER_LIST@473..495
                      0: CSS_PARAMETER@473..479
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@473..479
                          0: CSS_COMPONENT_VALUE_LIST@473..479
                            0: CSS_IDENTIFIER@473..479
                              0: IDENT@473..479 "yellow" [] []
                      1: COMMA@479..481 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@481..489
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@481..489
                          0: CSS_COMPONENT_VALUE_LIST@481..489
                            0: CSS_IDENTIFIER@481..486
                              0: IDENT@481..486 "blue" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@486..489
                              0: CSS_NUMBER_LITERAL@486..488 "20" [] []
                              1: PERCENT@488..489 "%" [] []
                      3: COMMA@489..491 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@491..495
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@491..495
                          0: CSS_COMPONENT_VALUE_LIST@491..495
                            0: CSS_COLOR@491..495
                              0: HASH@491..492 "#" [] []
                              1: CSS_COLOR_LITERAL@492..495 "0f0" [] []
                    3: R_PAREN@495..496 ")" [] []
              1: (empty)
            1: SEMICOLON@496..497 ";" [] []
          9: CSS_DECLARATION_WITH_SEMICOLON@497..562
            0: CSS_DECLARATION@497..561
              0: CSS_GENERIC_PROPERTY@497..561
                0: CSS_IDENTIFIER@497..512
                  0: IDENT@497..512 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@512..514 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@514..561
                  0: CSS_FUNCTION@514..561
                    0: CSS_IDENTIFIER@514..529
                      0: IDENT@514..529 "linear-gradient" [] []
                    1: L_PAREN@529..530 "(" [] []
                    2: CSS_PARAMETER_LIST@530..560
                      0: CSS_PARAMETER@530..542
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@530..542
                          0: CSS_COMPONENT_VALUE_LIST@530..542
                            0: CSS_IDENTIFIER@530..533
                              0: IDENT@530..533 "to" [] [Whitespace(" ")]
                            1: CSS_IDENTIFIER@533..537
                              0: IDENT@533..537 "top" [] [Whitespace(" ")]
                            2: CSS_IDENTIFIER@537..542
                              0: IDENT@537..542 "right" [] []
                      1: COMMA@542..544 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@544..547
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@544..547
                          0: CSS_COMPONENT_VALUE_LIST@544..547
                            0: CSS_IDENTIFIER@544..547
                              0: IDENT@544..547 "red" [] []
                      3: COMMA@547..549 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@549..554
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@549..554
                          0: CSS_COMPONENT_VALUE_LIST@549..554
                            0: CSS_IDENTIFIER@549..554
                              0: IDENT@549..554 "white" [] []
                      5: COMMA@554..556 "," [] [Whitespace(" ")]
                      6: CSS_PARAMETER@556..560
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@556..560
                          0: CSS_COMPONENT_VALUE_LIST@556..560
                            0: CSS_IDENTIFIER@556..560
                              0: IDENT@556..560 "blue" [] []
                    3: R_PAREN@560..561 ")" [] []
              1: (empty)
            1: SEMICOLON@561..562 ";" [] []
          10: CSS_DECLARATION_WITH_SEMICOLON@562..623
            0: CSS_DECLARATION@562..622
              0: CSS_GENERIC_PROPERTY@562..622
                0: CSS_IDENTIFIER@562..577
                  0: IDENT@562..577 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@577..579 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@579..622
                  0: CSS_FUNCTION@579..622
                    0: CSS_IDENTIFIER@579..594
                      0: IDENT@579..594 "linear-gradient" [] []
                    1: L_PAREN@594..595 "(" [] []
                    2: CSS_PARAMETER_LIST@595..621
                      0: CSS_PARAMETER@595..599
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@595..599
                          0: CSS_COMPONENT_VALUE_LIST@595..599
                            0: CSS_REGULAR_DIMENSION@595..599
                              0: CSS_NUMBER_LITERAL@595..596 "0" [] []
                              1: IDENT@596..599 "deg" [] []
                      1: COMMA@599..601 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@601..605
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@601..605
                          0: CSS_COMPONENT_VALUE_LIST@601..605
                            0: CSS_IDENTIFIER@601..605
                              0: IDENT@601..605 "blue" [] []
                      3: COMMA@605..607 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@607..616
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@607..616
                          0: CSS_COMPONENT_VALUE_LIST@607..616
                            0: CSS_IDENTIFIER@607..613
                              0: IDENT@607..613 "green" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@613..616
                              0: CSS_NUMBER_LITERAL@613..615 "40" [] []
                              1: PERCENT@615..616 "%" [] []
                      5: COMMA@616..618 "," [] [Whitespace(" ")]
                      6: CSS_PARAMETER@618..621
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@618..621
                          0: CSS_COMPONENT_VALUE_LIST@618..621
                            0: CSS_IDENTIFIER@618..621
                              0: IDENT@618..621 "red" [] []
                    3: R_PAREN@621..622 ")" [] []
              1: (empty)
            1: SEMICOLON@622..623 ";" [] []
          11: CSS_DECLARATION_WITH_SEMICOLON@623..680
            0: CSS_DECLARATION@623..679
              0: CSS_GENERIC_PROPERTY@623..679
                0: CSS_IDENTIFIER@623..638
                  0: IDENT@623..638 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@638..640 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@640..679
                  0: CSS_FUNCTION@640..679
                    0: CSS_IDENTIFIER@640..655
                      0: IDENT@640..655 "linear-gradient" [] []
                    1: L_PAREN@655..656 "(" [] []
                    2: CSS_PARAMETER_LIST@656..678
                      0: CSS_PARAMETER@656..663
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@656..663
                          0: CSS_COMPONENT_VALUE_LIST@656..663
                            0: CSS_REGULAR_DIMENSION@656..663
                              0: CSS_NUMBER_LITERAL@656..659 ".25" [] []
                              1: IDENT@659..663 "turn" [] []
                      1: COMMA@663..665 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@665..672
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@665..672
                          0: CSS_COMPONENT_VALUE_LIST@665..672
                            0: CSS_IDENTIFIER@665..669
                              0: IDENT@665..669 "red" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@669..672
                              0: CSS_NUMBER_LITERAL@669..671 "10" [] []
                              1: PERCENT@671..672 "%" [] []
                      3: COMMA@672..674 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@674..678
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@674..678
                          0: CSS_COMPONENT_VALUE_LIST@674..678
                            0: CSS_IDENTIFIER@674..678
                              0: IDENT@674..678 "blue" [] []
                    3: R_PAREN@678..679 ")" [] []
              1: (empty)
            1: SEMICOLON@679..680 ";" [] []
          12: CSS_DECLARATION_WITH_SEMICOLON@680..746
            0: CSS_DECLARATION@680..745
              0: CSS_GENERIC_PROPERTY@680..745
                0: CSS_IDENTIFIER@680..695
                  0: IDENT@680..695 "background" [Newline("\n"), Whitespace("    ")] []
                1: COLON@695..697 ":" [] [Whitespace(" ")]
                2: CSS_GENERIC_COMPONENT_VALUE_LIST@697..745
                  0: CSS_FUNCTION@697..745
                    0: CSS_IDENTIFIER@697..712
                      0: IDENT@697..712 "linear-gradient" [] []
                    1: L_PAREN@712..713 "(" [] []
                    2: CSS_PARAMETER_LIST@713..744
                      0: CSS_PARAMETER@713..718
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@713..718
                          0: CSS_COMPONENT_VALUE_LIST@713..718
                            0: CSS_REGULAR_DIMENSION@713..718
                              0: CSS_NUMBER_LITERAL@713..715 "45" [] []
                              1: IDENT@715..718 "deg" [] []
                      1: COMMA@718..720 "," [] [Whitespace(" ")]
                      2: CSS_PARAMETER@720..729
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@720..729
                          0: CSS_COMPONENT_VALUE_LIST@720..729
                            0: CSS_IDENTIFIER@720..724
                              0: IDENT@720..724 "red" [] [Whitespace(" ")]
                            1: CSS_NUMBER@724..726
                              0: CSS_NUMBER_LITERAL@724..726 "0" [] [Whitespace(" ")]
                            2: CSS_PERCENTAGE@726..729
                              0: CSS_NUMBER_LITERAL@726..728 "50" [] []
                              1: PERCENT@728..729 "%" [] []
                      3: COMMA@729..731 "," [] [Whitespace(" ")]
                      4: CSS_PARAMETER@731..744
                        0: CSS_LIST_OF_COMPONENT_VALUES_EXPRESSION@731..744
                          0: CSS_COMPONENT_VALUE_LIST@731..744
                            0: CSS_IDENTIFIER@731..736
                              0: IDENT@731..736 "blue" [] [Whitespace(" ")]
                            1: CSS_PERCENTAGE@736..740
                              0: CSS_NUMBER_LITERAL@736..738 "50" [] []
                              1: PERCENT@738..740 "%" [] [Whitespace(" ")]
                            2: CSS_PERCENTAGE@740..744
                              0: CSS_NUMBER_LITERAL@740..743 "100" [] []
                              1: PERCENT@743..744 "%" [] []
                    3: R_PAREN@744..745 ")" [] []
              1: (empty)
            1: SEMICOLON@745..746 ";" [] []
        2: R_CURLY@746..748 "}" [Newline("\n")] []
  2: EOF@748..748 "" [] []

```