// core_functions/color/rgb/multi_argument_var/1_of_3
// var() is substituted before parsing, so it may contain multiple arguments.
a {b: rgb(var(--foo), 3, 0.4)}

// core_functions/color/rgb/two_args/opaque_to/partial
a {b: rgb(#123, 0.5)}

// core_functions/color/rgb/four_args/special_functions/calc/arg_2/args
a {b: rgb(blue, calc(0.4))}

// core_functions/color/rgb/four_args/special_functions/var/arg_2/args/alpha
a {b: rgb(blue, var(--foo))}

// core_functions/color/rgb/one_arg/alpha/in_gamut/transparent
a {b: rgb(0 255 127 / 0)}

// core_functions/color/rgb/one_arg/no_alpha/unitless/named
a {b: rgb($channels: 0 255 127)}

// core_functions/color/rgb/one_arg/special_functions/no_alpha/calc/arg_1
a {b: rgb(calc(1) 2 3)}

// core_functions/color/rgba/one_arg/special_functions/alpha/multi_argument_var/1_of_1
a {b: rgba(var(--foo) / 0.4)}

// core_functions/color/rgb/four_args/special_functions/calc/arg_1
a {b: rgb(calc(1), 2, 3, 0.4)}

// core_functions/color/hsl/four_args/basic
basic {
  transparent: hsl(180, 60%, 50%, 0);
  opaque: hsl(180, 60%, 50%, 1);
  partial: hsl(180, 60%, 50%, 0.5);
  named: hsl($hue: 180, $saturation: 60%, $lightness: 50%, $alpha: 0.4);
}

// core_functions/color/hsl/one_arg/alpha
basic {
  transparent: hsl(180 60% 50% / 0);
  opaque: hsl(180 60% 50% / 1);
  partial: hsl(180 60% 50% / 0.5);
  named: hsl($channels: 180 60% 50% / 0.4);

  // Extra parens shouldn't cause the slash to be forced into division.
  parenthesized: (hsl(180 60% 50% / 0.4));
}

// core_functions/color/rgba/one_arg/alpha
basic {
  transparent: rgba(0 255 127 / 0);
  opaque: rgba(190 173 237 / 1);
  partial: rgba(18 52 86 / 0.5);
  percent: rgba(18 52 86 / 50%);
  named: rgba($channels: 0 255 127 / 0.3);

  // Extra parens shouldn't cause the slash to be forced into division.
  parenthesized: (rgba(0 255 127 / 0.3));
}
