cara... te falar que eu tbm acho isso um abuso.. fora que por vezes, no mesmo framework, mas em versões diferentes, as nomenclaturas mudam.
o que pode resolver boa parte desses problemas que tu listou é o esquema de extender um estilo. estou meio por fora, nao sei se o css nativo já tem isso, mas com os pré-processadores tem como. aí vc faria como na programação normal, como se estivesse extendendo uma classe do yarn, maven, composer...
o que tu acha? Será que resolveria nosso drama?