CSS introdujo recientemente la capacidad de definir tus propias capas de cascada, y parece que está ganando soporte en los navegadores. Esperemos que pronto esté disponible en todos los navegadores principales.
Referencias:
Me preguntaba si se está discutiendo incluir esto en la base de código de Discourse.
Creo que podría ser una gran adición y podría ayudar con las dificultades de especificidad y también puede ayudarnos a evitar usar el flag !important.
Quizás se podría definir un conjunto de capas en la base de código principal. Quizás algo como:
@layer base, layout, theme, utilities;
y los desarrolladores de temas pueden aprovechar la capa “theme” para agregar fácilmente personalizaciones sin tener que ser tan específicos con los selectores o usar flags !important.