Please close if this is intended behaviour.
When I parse an ID or Class selector that starts with a hyphen or number this does not throw an error.
Example:
const { createParser } = require('css-selector-parser'); // v3.0.0
const parse = createParser({ strict: true, syntax: 'selectors-3' }); // Have also used css3 as syntax
const selectorWithANumber = parse('#123');
const selectorWithAHyphen = parse('.-foo');
Both return the ast rather than throwing an error