<?xml version="1.0" encoding="utf-8"?>
<button type="button" class="button">Button</button>
<?xml version="1.0" encoding="utf-8"?>
<button type="button" class="button"><svg class="button_icon" data-location="before"><use xlink:href="#tick" /></svg> Button</button>
JS
<?xml version="1.0" encoding="utf-8"?>
<div class="button-group">
<label class="button js-button" aria-checked="true">
<input type="radio" name="options" id="option1" checked> Radio
</label>
<label class="button js-button">
<input type="radio" name="options" id="option2"> Radio
</label>
<label class="button js-button">
<input type="radio" name="options" id="option3"> Radio
</label>
</div>
<label class="button js-button">
<input type="checkbox"> Toggle
</label>
Template
@mixin buttonVariables
var(--button-bg-color),
var(--button-txt-color),
var(--button-height),
var(--button-font-size),
var(--button-font-weight),
var(--button-font-family),
var(--button-border-width),
var(--button-border-radius),
var(--button-focus-outline-width),
var(--button-focus-outline-offset),
var(--button-focus-outline-opacity),
var(--button-focus-outline-blur),
var(--button-expand-max),
var(--button-shadow);
@mixin buttonSelectors
.button,
.button_icon,
[aria-pressed="true"];