This way, if all the CTAborders change to a green color (GrassGreen for example), then I only have to point CTAborders to the new green color and I don't have to hunt around for all the design files trying to find all the CTAborders and then change them to the new green color.
So I addressed this by creating a table of backgrounds that have designated color styles.
So there’s a button background. And a secondary button background (which includes a border)
The default styling for Background/Button is OceanBlue, no stroke.
The default styling for Background/SecondaryButton is White, OceanBlue stroke (1.5px)
So I definitely see what you mean — but generating this table of backgrounds only needs to occur once.
I will say that all of this works better if you’re really operating using component-based design.
I wouldn’t have to hunt around the design to edit all my CTA borders because there’s only one CTA component, which I change and the instances reflect that change globally.