/** @type {import('stylelint').Config} */ const config = { extends: ['stylelint-config-standard'], rules: { // CSS custom properties (design tokens) — allowed anywhere 'custom-property-pattern': null, // CSS Modules compose pattern 'value-keyword-case': ['lower', { camelCaseSvgKeywords: true }], // Allow CSS nesting (supported by PostCSS preset-env) 'no-descending-specificity': null, }, overrides: [ { files: ['**/*.module.css'], rules: { // CSS Modules classes are accessed as JS identifiers, so camelCase is idiomatic 'selector-class-pattern': [ '^[a-z][a-zA-Z0-9]*$', { message: 'Expected class selector to be camelCase (CSS Modules)' }, ], // :local() and :global() selectors in CSS Modules 'selector-pseudo-class-no-unknown': [ true, { ignorePseudoClasses: ['local', 'global'] }, ], }, }, ], }; export default config;