.sterling-button {
  align-content: center;
  align-items: center;
  appearance: none;
  background-color: var(--stsv-button__background-color);
  border-color: var(--stsv-button__border-color);
  border-radius: 8px;
  border-style: solid;
  border-width: var(--stsv-button__border-width);
  box-sizing: border-box;
  color: var(--stsv-button__color);
  cursor: pointer;
  display: inline-flex;
  flex-direction: row;
  font: inherit;
  justify-content: center;
  justify-items: center;
  column-gap: 0.25em;
  overflow: hidden;
  padding: 0.5em 1em;
  text-decoration: none;
  text-overflow: ellipsis;
  transition:
    background-color 250ms,
    color 250ms,
    border-color 250ms;
  white-space: nowrap;
  user-select: none;
}

.sterling-button:not(:disabled):hover {
  background-color: var(--stsv-button__background-color--hover);
  border-color: var(--stsv-button__border-color--hover);
  color: var(--stsv-button__color--hover);
}

.sterling-button:not(:disabled):active {
  background-color: var(--stsv-button__background-color--active);
  border-color: var(--stsv-button__border-color--active);
  color: var(--stsv-button__color--active);
}

.sterling-button:not(:disabled):focus-visible {
  border-color: var(--stsv-button__border-color--focus);
  outline-color: var(--stsv-common__outline-color);
  outline-offset: 0;
  outline-style: solid;
  outline-width: var(--stsv-common__outline-width);
}

@media (prefers-reduced-motion) {
  .sterling-button {
    transition: none;
  }
}
