The problem is that people don't treat css as code. If you use styled components or css in js you'll treat it as code.
Nobody would change private properties in a js class from outside that class. Same to css, you should not change css attributes from parents. Those are private to their component they are rendering.
If you need that, provide a public attribute to the component and he'll change it's design.
Do this, and css is very maintainable.