@import "./mixins/variables";

.u-progress {
  display: block;
  position: relative;
  height: $bar-height;
  width: 500px;
  max-width: 100%;
}

.u-progress > .bar {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0%;
  transition: width 0.2s $animation-curve-default;
}

.u-progress > .progressbar {
  background-color: $progress-main-color;
  z-index: 1;
  left: 0;
  border-radius: 3px;
}

.u-progress > .bufferbar {
  background-image: linear-gradient(to right, $progress-secondary-color, $progress-secondary-color),
    linear-gradient(to right, $progress-main-color, $progress-main-color);
  background-color:$progress-main-color;
  opacity:0.5;
  filter:alpha(opacity=50) \9; 
  z-index: 0;
  left: 0;
  border-radius: 3px;
}

.u-progress > .auxbar {
  right: 0;
}

// Webkit only
@supports (-webkit-appearance:none) {
  .u-progress:not(.u-progress--indeterminate):not(.u-progress--indeterminate) > .auxbar,
  .u-progress:not(.u-progress__indeterminate):not(.u-progress__indeterminate) > .auxbar {
    background-image: linear-gradient(to right, $progress-secondary-color, $progress-secondary-color),
      linear-gradient(to right, $progress-main-color, $progress-main-color);
    mask: url('#{$progress-image-path}/buffer.svg?embed');
  }
}

.u-progress:not(.u-progress--indeterminate) > .auxbar,
.u-progress:not(.u-progress__indeterminate) > .auxbar {
  background-image: linear-gradient(to right, $progress-fallback-buffer-color, $progress-fallback-buffer-color),
    linear-gradient(to right, $progress-main-color, $progress-main-color);
}

.u-progress.u-progress--indeterminate > .bar1,
.u-progress.u-progress__indeterminate > .bar1 {
  background-color: $progress-main-color;
  animation-name: indeterminate1;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.u-progress.u-progress--indeterminate > .bar3,
.u-progress.u-progress__indeterminate > .bar3 {
  background-image: none;
  background-color: $progress-main-color;
  animation-name: indeterminate2;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.u-progress-primary {
  @include progress-styles-variant($progress-primary-bg,$color-primary-opacity);
}
.u-progress-success {
  @include progress-styles-variant($progress-success-bg,$color-success-opacity);
}
.u-progress-info {
  @include progress-styles-variant($progress-info-bg,$color-info-opacity);
}
.u-progress-danger {
  @include progress-styles-variant($progress-danger-bg,$color-danger-opacity);
}
.u-progress-warning {
  @include progress-styles-variant($progress-warning-bg,$color-warning-opacity);
}
.u-progress-dark {
  @include progress-styles-variant($progress-dark-bg,$color-dark-opacity);
}
.u-progress-sm {
   height:10px;
}
.u-progress-md {
   height:15px;
}
.u-progress-lg {
   height:22px;
}
@keyframes indeterminate1 {
  0% {
    left: 0%;
    width: 0%;
  }
  50% {
    left: 25%;
    width: 75%;
  }
  75% {
    left: 100%;
    width: 0%;
  }
}

@keyframes indeterminate2 {
  0% {
    left: 0%;
    width: 0%;
  }
  50% {
    left: 0%;
    width: 0%;
  }
  75% {
    left: 0%;
    width: 25%;
  }
  100% {
    left: 100%;
    width: 0%;
  }
}
