What if you want a button that looks like a like and a link that looks like a button. In your case you will have to overwrite "button" selector, which is with very high specificiy and to override the main selector styles.
button.link { color: white; border: 0; background: none... }
and then copy the relevant for only a link styles to your link selector ( a ).This works good for small code base, but once you go to several pages and need specific links it starts to make a lot of problems.
I stopped using this way of styling buttons not so long ago and I switched it to :
<button class='button'></button>
<button class='button button-primary'></button>
<button class='button button-danger'></button>
And also for links <a class='link'>Link</a>
<a class='link link-primary'></a>
And then I can easily switch <button class='link link-primary'></button>
<a class='button button-danger'></a>
without touching my code.Same applies for input[type='...'] rules. I just add class name.