%a {
  font-weight: normal;
  border-radius: size(get("border.radius"));
  cursor: pointer;
  text-decoration: none;
  font-size: size(get("size.medium.font-size"));
  display: inline-flex;
  align-items: center;
  // display: flex;
  // align-items: center;
  // @extend %padding-button, %padding-button-medium, %size-medium, %ghost, %ghost-secondary;

  &[class^='#{get("icon.prefix")}'], &[class*=' #{get("icon.prefix")}'] {
    @extend %size-medium, %padding-button-medium;

    display: inline-flex;
    align-items: center;
  }

  @each $size, $value in get("size") {
    &.#{$size} {
      @extend %size-#{$size}, %padding-button-#{$size};

      &[class^='#{get("icon.prefix")}'], &[class*=' #{get("icon.prefix")}'] {
        @extend %size-#{$size}, %padding-button-#{$size};
      }

      &:hover {
        text-decoration: none;
      }
    }
  }

  @each $type in get("type") {
    @each $color, $value in get("color.list") {
      $selector: if($type==fill, "&.#{$color}", "&.#{$type}.#{$color}");
      #{$selector}, &-#{$type}-#{"" + $color} {
        @extend %button-#{"" + $type}-#{"" + $color};
      }
    }
  }

  @each $type in get("type") {
    @if ($type!=fill) {
      &.#{$type}, &-#{$type} {
        @extend %#{$type}, %#{$type}-secondary;
      }
    }
  }

  &:active, &:focus {
    box-shadow: none;
  }

  &.icon-left {
    &::before {
      left: size(-1px);
    }
  }

  &.icon-right {
    &::before {
      right: size(-1px);
    }
  }

  &.inline {
    @extend %ghost;

    padding: 0;
  }
}
