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

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(1turn);
  }
}

$base-class: 'loader';

.#{$base-class} {
  &-spinner {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border-radius: 50%;
    animation: rotate 1s infinite linear;
    border-width: 3px;
    border-style: solid;
    border-color: #deeefd;
    border-top-color: $primary-color;

    &--thin {
      border-width: 2px;
    }

    &--medium {
      border-width: 3px;
    }

    &--thick {
      border-width: 4px;
    }

    &-wrapper {
      opacity: 1;
      visibility: visible;
      flex-shrink: 0;
      width: 36px;
      height: 36px;

      &--small {
        width: 15px;
        height: 15px;
      }

      &--medium {
        width: 36px;
        height: 36px;
      }

      &--large {
        width: 56px;
        height: 56px;
      }

      &--hidden {
        opacity: 0;
        visibility: hidden;
      }
    }
  }

  &-label {
    margin: 0 10px;
    opacity: 0.8;
    font-size: 15px;
    color: #4e5665;
  }

  &-wrapper {
    opacity: 1;
    visibility: visible;
    display: inline-flex;
    flex-wrap: nowrap;
    align-items: center;
    flex-direction: row;

    &--hidden {
      opacity: 0;
      visibility: hidden;
    }
  }
}
