In https://drafts.css-houdini.org/css-properties-values-api-1/#consume-syntax-descriptor, `|` and any other character are treated basically equivalently, so it means that `<length> <percentage>` is really a syntax for `<length> | <percentage>`, rather than a `<length>`, then a `<percentage>`. Is this intentional? Is there any reason we're closing the gate to more expressive syntaxes that allow multiple keywords?