@import 'theme-colors';
@import 'variables-responsive';

$im-btn-primary-font-size: 13px;
$im-btn-primary-padding: 10px 24px;

$im-btn-secondary-font-size: 12px;
$im-btn-secondary-padding: 6px 32px;

$im-btn-small-padding: 6px 10px;

.im-btn,
.im-btn.mat-button {
  font-size: $im-btn-primary-font-size;
  padding: $im-btn-primary-padding;
  font-weight: 700;
  cursor: pointer;
  color: #ffffff;
  background-color: $im-primary-red;
  border: 1px solid $im-primary-red;
  border-radius: 5px;
  line-height: 1.4em;

  &[disabled],
  &.active {
    background-color: $im-faded-red;
    border-color: $im-faded-red;
  }

  &:not([disabled]):hover {
    background-color: $im-primary-red-hover;
    border-color: $im-primary-red-hover;
  }

  &:hover .mat-button-focus-overlay {
    opacity: 0;
  }

  &.im-btn-smaller {
    font-size: $im-btn-secondary-font-size;
    padding: $im-btn-secondary-padding;
  }
  &.im-btn-small {
    font-size: $im-btn-secondary-font-size;
    padding: $im-btn-small-padding;
    min-width: 0;
  }
}

.im-btn-secondary,
.im-btn-secondary.mat-button {
  font-size: $im-btn-secondary-font-size;
  padding: $im-btn-secondary-padding;
  font-weight: 700;
  cursor: pointer;
  color: $im-primary-red;
  border: 1px solid $im-primary-red;
  background-color: #ffffff;
  border-radius: 5px;
  line-height: 1.4em;

  &[disabled],
  &.active {
    border-color: $im-faded-red;
    color: $im-faded-red;
  }

  &:not([disabled]):hover {
    color: #ffffff;
    background-color: $im-primary-red;
    border-color: $im-primary-red;
  }

  &:hover .mat-button-focus-overlay {
    opacity: 0;
  }

  &.im-btn-small {
    padding: $im-btn-small-padding;
    min-width: 0;
  }

  &.im-btn-large {
    font-size: $im-btn-primary-font-size;
    padding: $im-btn-primary-padding;
  }

  .icon {
    font-size: 16px;
    line-height: 1;
    vertical-align: text-top;
    margin-right: 2px;
  }
  &.im-btn-icon-only .icon {
    margin-right: 0;
  }
}

.btn-vertical {
  padding: 4px 8px 2px!important;
  margin-right: 15px;

  &:last-of-type {
    margin-right: 0;
  }

  .mat-button-wrapper {
    display: block;
    text-align: center;
  }

  .icon {
    display: inline-block;
    margin-right: 0!important;
    margin-bottom: 2px;
  }
  &.im-btn-icon-only .icon {
    margin-bottom: 0;
  }

  .text {
    display: block;
    font-size: 9px;
  }

  @media(min-width: $im-min-tablet-width) {
    padding: 6px 10px!important;

    .text {
      display: inline-block;
    }
    .icon {
      margin-right: 2px!important;
      margin-bottom: 0;
    }
    &.im-btn-icon-only .icon {
      margin-right: 0!important;
    }
  }
}

.im-icon-gray {
  padding: 6px;
  color: $im-medium-gray;
}

.im-close-btn {
  position: absolute;
  top: -24px;
  right: -24px;
  padding: 15px;
  font-size: 15px;
  cursor: pointer;
  user-select: none;
}
