@import '../../variables.scss';

#{$biz-css-prefix}-button {
  border: 2px dashed var(--color-primary-50);
  height: 40px;
  width: 295px;
  border-radius: 20px;
  cursor: pointer;

  [class^="icon-"], [class*=" icon-"] {
    vertical-align: -10%;
  }

  &:disabled {
    color: var(--color-gray-40);
    background-color: var(--color-gray-20);
    border: 1px solid var(--color-gray-30);
    cursor: no-drop;
    .au-button-inner {
      text-decoration: none;
    }
    &:hover, &:focus, &:active {
      color: var(--color-gray-40);
      background-color: var(--color-gray-20);
      border: 1px solid var(--color-gray-30);
    }
  }

  &-sm {
    width: 280px;
    font-size: 13px;
    height: 38px;
    line-height: 18px;
    padding: 8px 15px;
    i {
      margin: 0 10px;
      font-size: 13px;
    }
  }

  &-md {
    width: 295px;
    font-size: 14px;
    line-height: 20px;
    padding: 9px 20px;
    i {
      margin: 0 10px;
      font-size: 14px;
    }
  }

  &-lg {
    width: 315px;
    height: 43px;
    font-size: 16px;
    line-height: 24px;
    padding: 9px 25px;
    i {
      margin: 0 10px;
      font-size: 16px;
    }
  }

  &-square {
    border-radius: 4px !important;
    padding: 0 12px;
    width: auto;
  }

  &-full {
    width: 99.99%;
  }

  &-circle {
    border-radius: 50%;
    text-align: center;
    width: 34px !important;
    height: 34px;
    padding: 0 !important;
    line-height: 32px !important;

    &.au-button-sm {
      width: 26px !important;
      height: 26px;
      line-height: 24px !important;

      i {
        font-size: 12px;
        margin: 0;
      }
    }

    &.au-button-lg {
      width: 44px !important;
      height: 44px;
      line-height: 43px !important;

      i {
        vertical-align: -3%;
      }
    }
  }

  &-primary {
    color: #fff;
    background-color: var(--color-primary-50);
    border: 1px solid var(--color-primary-50);
    &:hover,&:focus {
      background-color: var(--color-primary-40);
      border: 1px solid var(--color-primary-40);
    }
    &:active {
      background-color: var(--color-primary-60);
      border: 1px solid var(--color-primary-60);
    }
  }

  &-secondary {
    background: #FFFFFF;
    border-radius: 20px;
    color: var(--color-primary-50);
    border: 1px solid var(--color-primary-50);
    &:hover,&:focus {
      color: var(--color-primary-50);
      border: 1px solid var(--color-primary-50);
    }
    &:active {
      color: var(--color-primary-60);
      border: 1px solid var(--color-primary-60);
    }
  }

  &-danger {
    color: #fff;
    background-color: var(--color-error-50);
    border: 1px solid var(--color-error-50);
    &:hover,&:focus {
      color: var(--color-error-50);
      background-color: #fff;
      border: 1px solid var(--color-error-50);
    }
    &:active {
      color: var(--color-error-60);
      background-color: #fff;
      border: 1px solid var(--color-error-60);
    }
  }

  &-ghost {
    background: transparent;
    border-radius: 20px;
    color: var(--color-gray-90);
    border: 1px solid var(--color-gray-40);
    &:hover,&:focus {
      color: var(--color-gray-50);
    }
    &:active {
      color: var(--color-gray-60);
    }
  }


  &-link {
    border: none !important;
    background: none !important;
    width: auto !important;
    padding: 0 !important;

    &:disabled {
      color: var(--color-gray-40);
    }
  }

  &-link.au-button-primary {
    color: var(--color-primary-50);
  }

  &-link.au-button-secondary {
    color: var(--color-gray-70);
  }

  &-link.au-button-danger {
    color: var(--color-error-50);
  }

  &-link.au-button-ghost {
    color: var(--color-gray-90);
  }

  i {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 10px;
    vertical-align: 1%;
  }

  .arrow-left {
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-right: 10px;
    border: 2px solid #fff;
    border-left-width: 0;
    border-bottom-width: 0;
    vertical-align: 1%;
    transform: matrix(-0.71,0.71,0.71,0.71,0,0);
  }

  .arrow-right {
    display: inline-block;
    width: 8px;
    height: 8px;
    border: 2px solid #fff;
    border-left-width: 0;
    border-bottom-width: 0;
    vertical-align: 1%;
    margin-left: 5px;
    transform: matrix(0.71,0.71,-0.71,0.71,0,0);
  }
}
