Why the hell does a rule talk about consistent padding and then not use css variable? A class name .card is a sure thing to conflict somewhere. Typography inheritance is another good way how to introduce hard to debug bugs. Global scope css - ewww (use only absolute minimum necessary).
Please use css-in-js, Tailwind, shadow dom or at the bare minimum css modules. Friends and future you will thank you.
But hey, maybe they are building some blog. I live in the apps world.
Also some rules are valid like the one about not using margin on the component itself.