// Convention in this test file: // - The case should be preserved for things prefixed with "Keep". // - The case should always be preserved for element names and attribute names // in selectors, as well as function names and property keywords. // - Other things should mostly be lowercase. // - The `/*:*/` comments are just to bust the `isLikelySCSS` check. @IMPORT Keep; HTML#KeepId.KeepClass, a[HREF=KeepAttrValue]:HOVER::FIRST-letter, svg[viewBox] linearGradient, :Not(:NTH-child(2N+1)) { COLOR: #AAbbCC; BACKGROUND-image: URL("KeepString"); Margin: 5PX .2E10Em; --Keep-custom-Prop: red; background: Var(--Keep-custom-Prop); animation-name: KeepAnimationName; important: something !IMPORTANT; font-family: INITIAL; padding: UNSET; border: INHERIT; all: REVERT; -WEBKIT-USER-SELECT: none; -MOZ-USER-SELECT: none; -MS-USER-SELECT: none; USER-SELECT: none; } @keyframes KeepAnimationName { FROM { prop: val; } @{KeepInterpolationVar} { prop: val; } TO { prop: val; } } @custom-media --KeepCustomMedia screen and (width >= 768px); @media (--KeepCustomMedia) {} @KeepDetachedRuleset: /*:*/ { BACKGROUND: RED; } %KeepScssPlaceholderSelector { prop: val; } @KeepTopLevelVar: val; $KeepScssVar: val; .Keep(@Keep: 12e03PX) when (@Keep=Case) /*:*/ { @KeepVar: KeepName; /*:*/ @{KeepInterpolationVar}: val; $KeepScssVar: val; @extend %KeepScssPlaceholderSelector; @{Keep}[@{Keep}][@{Keep}^=@{Keep-1A}]:@{Keep} { prop: val; } &Keep & Element { prop: val; } @KeepDetachedRuleset(); &:EXTEND(.Keep ALL); .Keep; .Keep(); .Keep(4PX)!IMPORTANT; .Keep() when (@Keep=Keep); .Keep() when (@Keep=12PX); .Keep() when (@Keep=Keep12PX); } .Keep (@Keep) when (lightness(@Keep) >= 12PX) and (@Keep > 0) {} .Keep (@Keep) when (lightness(@Keep) != '12PX') and (@Keep != "12PX") {} .Keep (@Keep) when (lightness(@Keep) >= Keep12PX) and (@Keep > @Keep12E5) {} .Keep(@Keep: 12PX; @Keep: @Keep12PX; ...) /*:*/ {} .Keep(@Keep: '12PX'; @Keep: "12PX"; ...) /*:*/ {} @MEDIA (MIN-WIDTH: 700PX) /*:*/ {} @MEDIA (@{Keep}: @{Keep}) {} @KEYFRAMES identifier { FROM { margin-top: 50px; } 50% { margin-top: 150px; } TO { margin-top: 100px; } } @-WEBKIT-KEYFRAMES float-up { FROM { margin-top: 50px; } 50% { margin-top: 150px; } TO { margin-top: 100px; } } .foo { color: hsl(0.75TURN, 60%, 70%); } p:FIRST-CHILD { color: lime; background-color: black; padding: 5px; } a::AFTER { content: "→"; } a:AFTER { content: "→"; } ::-WEBKIT-PROGRESS-BAR { background-color: orange; } TABLE {} .foo { &-KeepSelector {} &-KeepSelector & .KeepClassSelector {} &-100\.200 {} }