@mixin button-variant($background, $border, $active-background: darken($background, 7.5%), $active-border: darken($border, 10%)) {
  background-color: $background;
  border-color: $border;

  &:hover {
    background-color: $active-background;
    border-color: $active-border;
  }

  // Disabled comes first so active can properly restyle
  &.disabled,
  &:disabled {
    background-color: $background;
    border-color: $border;
  }

  &:active,
  &.active {
    background-color: $active-background;
    background-image: none; // Remove the gradient for the pressed/active state
  }
}

@mixin button-alt-variant($color, $color-hover: #fff) {
  color: $color;
  background-color: transparent;
  background-image: none;
  border-color: $color;

  &:hover {
    color: $color-hover;
    background-color: $color;
  }

  // Small fix for teriyaki alt buttons
  &.teriyaki:hover {
    outline-style: solid;
    outline-color: $color;
  }

  &.disabled,
  &:disabled {
    color: $color;
    background-color: transparent;
  }

  &:active,
  &.active {
    color: $color-hover;
    background-color: $color;
  }
}
