.spectrum-ProgressBar {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-flow: row wrap;
      flex-flow: row wrap;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  width: var(--spectrum-progressbar-large-width, var(--spectrum-global-dimension-size-2400));
  vertical-align: top;
}

.spectrum-ProgressBar-track {
  overflow: hidden;
  width: var(--spectrum-progressbar-large-width, var(--spectrum-global-dimension-size-2400));
  height: var(--spectrum-progressbar-large-height, var(--spectrum-global-dimension-size-75));
  border-radius: var(--spectrum-progressbar-large-border-radius);
  z-index: 1;
}

.spectrum-ProgressBar-fill {
  border: none;
  height: var(--spectrum-progressbar-large-height, var(--spectrum-global-dimension-size-75));

  transition: width 1s;
}

[dir="ltr"] .spectrum-ProgressBar-label,[dir="ltr"] 
.spectrum-ProgressBar-percentage {
  text-align: left;
}

[dir="rtl"] .spectrum-ProgressBar-label,[dir="rtl"] 
.spectrum-ProgressBar-percentage {
  text-align: right;
}

.spectrum-ProgressBar-label,
.spectrum-ProgressBar-percentage {
  font-size: var(--spectrum-fieldlabel-text-size, var(--spectrum-global-dimension-font-size-75));
  font-weight: var(--spectrum-fieldlabel-text-font-weight, var(--spectrum-global-font-weight-regular));
  line-height: var(--spectrum-fieldlabel-text-line-height, var(--spectrum-global-font-line-height-small));
  margin-bottom: var(--spectrum-progressbar-large-label-gap-y, var(--spectrum-global-dimension-size-115));
}

.spectrum-ProgressBar-label {
  -ms-flex: 1 1 0%;
      flex: 1 1 0%;
}

[dir="ltr"] .spectrum-ProgressBar-percentage {
  margin-left: var(--spectrum-progressbar-small-label-gap-x, var(--spectrum-global-dimension-size-150));
}

[dir="rtl"] .spectrum-ProgressBar-percentage {
  margin-right: var(--spectrum-progressbar-small-label-gap-x, var(--spectrum-global-dimension-size-150));
}

.spectrum-ProgressBar-percentage {
  -ms-flex-item-align: start;
      align-self: flex-start;
}

.spectrum-ProgressBar--sideLabel {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-flow: row;
      flex-flow: row;
  -ms-flex-pack: justify;
      justify-content: space-between;
  width: auto;
}

[dir="ltr"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-label {
    margin-right: var(--spectrum-progressbar-large-label-gap-x, var(--spectrum-global-dimension-size-150));
}

[dir="rtl"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-label {
    margin-left: var(--spectrum-progressbar-large-label-gap-x, var(--spectrum-global-dimension-size-150));
}

.spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-label {
    margin-bottom: 0;
  }

[dir="ltr"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-percentage {
    text-align: right;
}

[dir="rtl"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-percentage {
    text-align: left;
}

[dir="ltr"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-percentage {
    margin-left: var(--spectrum-progressbar-large-label-gap-x, var(--spectrum-global-dimension-size-150));
}

[dir="rtl"] .spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-percentage {
    margin-right: var(--spectrum-progressbar-large-label-gap-x, var(--spectrum-global-dimension-size-150));
}

.spectrum-ProgressBar--sideLabel .spectrum-ProgressBar-percentage {
    -ms-flex-order: 3;
        order: 3;
    margin-bottom: 0;
  }

.spectrum-ProgressBar--small {
  min-width: var(--spectrum-progressbar-small-width, var(--spectrum-global-dimension-size-2400));
}

.spectrum-ProgressBar--small .spectrum-ProgressBar-fill {
    height: var(--spectrum-progressbar-small-height, var(--spectrum-global-dimension-size-50));
  }

.spectrum-ProgressBar--small .spectrum-ProgressBar-track {
    height: var(--spectrum-progressbar-small-height, var(--spectrum-global-dimension-size-50));
    border-radius: var(--spectrum-progressbar-small-border-radius);
  }

.spectrum-ProgressBar--indeterminate .spectrum-ProgressBar-fill {
  width: var(--spectrum-progressbar-large-indeterminate-fill-width, var(--spectrum-global-dimension-size-1700));
  position: relative;
  animation-timing-function: var(--spectrum-progressbar-large-indeterminate-animation-ease, var(--spectrum-global-animation-ease-in-out));
  will-change: transform;
}

[dir="ltr"] .spectrum-ProgressBar--indeterminate .spectrum-ProgressBar-fill {
  animation: indeterminate-loop-ltr
    var(--spectrum-progressbar-large-indeterminate-duration, var(--spectrum-global-animation-duration-2000)) infinite;
}

[dir="rtl"] .spectrum-ProgressBar--indeterminate .spectrum-ProgressBar-fill {
  animation: indeterminate-loop-rtl
    var(--spectrum-progressbar-large-indeterminate-duration, var(--spectrum-global-animation-duration-2000)) infinite;
}

@keyframes indeterminate-loop-ltr {
  from {
    transform: translate(
      calc(-1 * var(--spectrum-progressbar-large-indeterminate-fill-width, var(--spectrum-global-dimension-size-1700)))
    );
  }
  to {
    transform: translate(var(--spectrum-progressbar-large-width, var(--spectrum-global-dimension-size-2400)));
  }
}

@keyframes indeterminate-loop-rtl {
  from {
    transform: translate(var(--spectrum-progressbar-large-width, var(--spectrum-global-dimension-size-2400)));
  }
  to {
    transform: translate(calc(-1 * var(--spectrum-progressbar-large-width, var(--spectrum-global-dimension-size-2400))));
  }
}

.spectrum-ProgressBar .spectrum-ProgressBar-fill {
    background: var(--spectrum-progressbar-large-track-fill-color, var(--spectrum-global-color-blue-500));
  }

.spectrum-ProgressBar .spectrum-ProgressBar-track {
    background-color: var(--spectrum-progressbar-large-track-color, var(--spectrum-alias-track-color-default));
  }

.spectrum-ProgressBar.spectrum-ProgressBar--overBackground .spectrum-ProgressBar-fill {
      background: var(--spectrum-progressbar-large-over-background-track-fill-color, var(--spectrum-global-color-static-white));
    }

.spectrum-ProgressBar.spectrum-ProgressBar--overBackground .spectrum-ProgressBar-label,
    .spectrum-ProgressBar.spectrum-ProgressBar--overBackground .spectrum-ProgressBar-percentage {
      color: var(--spectrum-progressbar-large-over-background-track-fill-color, var(--spectrum-global-color-static-white));
    }

.spectrum-ProgressBar.spectrum-ProgressBar--overBackground .spectrum-ProgressBar-track {
      background-color: var(--spectrum-progressbar-large-over-background-track-color, var(--spectrum-alias-track-color-over-background));
    }

.spectrum-ProgressBar.is-positive .spectrum-ProgressBar-fill {
      background: var(--spectrum-meter-large-track-color-positive, var(--spectrum-semantic-positive-color-status));
    }

.spectrum-ProgressBar.is-warning .spectrum-ProgressBar-fill {
      background: var(--spectrum-meter-large-track-color-warning, var(--spectrum-semantic-notice-color-status));
    }

.spectrum-ProgressBar.is-critical .spectrum-ProgressBar-fill {
      background: var(--spectrum-meter-large-track-color-critical, var(--spectrum-semantic-negative-color-status));
    }

.spectrum-ProgressBar-label,
.spectrum-ProgressBar-percentage {
  color: var(--spectrum-fieldlabel-text-color, var(--spectrum-alias-label-text-color));
}

.spectrum-ProgressBar-label,
.spectrum-ProgressBar-percentage {
  color: var(--spectrum-fieldlabel-text-color, var(--spectrum-alias-label-text-color));
}

.spectrum-ProgressBar-label,
.spectrum-ProgressBar-percentage {
  color: var(--spectrum-fieldlabel-text-color, var(--spectrum-alias-label-text-color));
}
