I don't think this is true. The biggest problem is people who write CSS do it as if they want CSS to be something else and are trying to force it to be that.
Writing CSS using ITCSS (Inverted Triangle CSS) [1] solves so many of the issues devs complain about it. It's simple: create layers in specificity order. Don't fight the cascade; make it work for you.
Writing good CSS isn't about getting the syntax right; it's about getting the architecture right [2].
Harry Robert's video does a great job of describing all the pain points ITCSS solves [3].
[1]: https://dev.to/carlillo/understanding-itcss-real-case-using-...
[2]: https://www.xfive.co/blog/itcss-scalable-maintainable-css-ar...