.fab-button {
  min-height: 38px;
  margin-bottom: 0;
  padding: 6px 12px;
  display: inline-flex;
  align-items: center;
  border: 1px solid #c9c9c9;
  border-radius: 4px;
  background-color: #fbfbfb;
  background-image: none;
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
  font-weight: normal;
  text-decoration: none;
  color: black;
  white-space: nowrap;
  touch-action: manipulation;
  cursor: pointer;
  user-select: none;

  &:hover {
    background-color: #f2f2f2;
    color: black;
    border-color: #aaaaaa;
    text-decoration: none;
  }

  &:active {
    color: black;
    background-color: #f2f2f2;
    border-color: #aaaaaa;
    outline: 0;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
  }


  &[disabled] {
    color: #3a3a3a;
  }

  &[disabled]:hover {
    color: #3a3a3a;
  }

  &--icon {
    margin-right: 0.5em;
    display: flex;
  }
  &--icon-only {
    display: flex;
  }

  // color variants
  @mixin colorVariant($color, $textColor) {
    border-color: $color;
    background-color: $color;
    color: $textColor;
    &:hover {
      border-color: $color;
      background-color: $color;
      color: $textColor;
      opacity: 0.75;
    }
  }
  &.is-info {
    @include colorVariant(var(--information), var(--gray-soft-lightest));
  }
  &.is-secondary {
    @include colorVariant(var(--secondary), var(--secondary-text-color));
  }
  &.is-black {
    @include colorVariant(var(--gray-hard-darkest), var(--gray-soft-lightest));
  }
  &.is-main {
    @include colorVariant(var(--main), var(--main-text-color));
  }
}
