.raf-button {
  /* reset */
  border: none;
  margin: 0;
  padding: 0;
  width: auto;
  overflow: visible;
  background: transparent;

  /* Normalize `line-height`. Cannot be changed from `normal` in Firefox 4+. */
  line-height: normal;

  /* Corrects font smoothing for webkit */
  -webkit-font-smoothing: inherit;
  -moz-osx-font-smoothing: inherit;
  text-align: inherit;

  /* Corrects inability to style clickable `input` types in iOS */
  -webkit-appearance: none;
  outline: none;

  /* endreset */

  padding: 8px 16px;
  min-width: 70px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  color: white;
  font-size: 14px;
  font-weight: 800;
  margin: 3px;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;

  &:disabled {
    cursor: not-allowed;

    &:active {
      box-shadow: none;
    }
  }

  &--primary {
    background-color: $primary;

    &:disabled {
      // color-mod(var(primary) tint(35%));
      background-color: tint($primary, 35%);
    }

    &:active {
      box-shadow: 0 0 0 3px shade($primary, 10%); // color-mod(var(primary) shade(10%));
    }
  }

  &--info {
    background-color: $info;

    &:disabled {
      // color-mod(var(info) tint(35%));
      background-color: tint($info, 35%);
    }

    &:active {
      box-shadow: 0 0 0 3px shade($info, 10%); // color-mod(var(info) shade(10%));
    }
  }

  &--faded {
    // color-mod(var(faded) shade(30%));
    background-color: shade($faded, 30%);

    &:disabled {
      // color(color-mod(var(faded) shade(30%)) tint(35%));
      background-color: tint(shade($faded, 30%), 35%);
    }

    &:active {
      box-shadow: 0 0 0 3px shade(shade($faded, 30%), 10%); // color(color-mod(var(faded) shade(30%)) shade(10%));
    }
  }
}
