.sterling-progress {
  align-content: flex-start;
  align-items: flex-start;
  background: var(--stsv-common__background-color);
  border-width: var(--stsv-common__border-width);
  border-style: solid;
  border-color: var(--stsv-common__border-color);
  border-radius: 0;
  box-sizing: border-box;
  display: block;
  height: 1em;
  padding: 0.25em;
  position: relative;
  transition:
    background-color 250ms,
    color 250ms,
    border-color 250ms;
}

.sterling-progress .container {
  display: flex;
  justify-content: flex-start;
  width: 100%;
  height: 100%;
}

.sterling-progress .indicator {
  background-color: var(--stsv-common__border-color);
  box-sizing: border-box;
  height: 100%;
  min-height: 1px;
  transition:
    background-color 250ms,
    color 250ms,
    border-color 250ms;
}

/* ----- vertical ----- */

.sterling-progress.vertical {
  align-items: center;
  align-content: center;
  height: unset;
  width: 1em;
}

.sterling-progress.vertical .container {
  flex-direction: column;
  justify-content: flex-end;
  min-width: unset;
}

.sterling-progress.vertical .indicator {
  height: unset;
  min-height: unset;
  min-width: 1px;
  width: 100%;
}

/* ----- status ----- */

.sterling-progress.info .indicator {
  background-color: var(--stsv-common__border-color--info);
}

.sterling-progress.success .indicator {
  background-color: var(--stsv-common__border-color--success);
}

.sterling-progress.warning .indicator {
  background-color: var(--stsv-common__border-color--warning);
}

.sterling-progress.error .indicator {
  background-color: var(--stsv-common__border-color--error);
}

.sterling-progress.auto-success[data-progress-percent] .indicator {
  background-color: var(--stsv-common__border-color--info);
}

.sterling-progress.auto-success[data-progress-percent='100'] .indicator {
  background-color: var(--stsv-common__border-color--success);
}

/* ----- prefers-reduced-motion ----- */

@media (prefers-reduced-motion) {
  .sterling-progress,
  .sterling-progress .indicator {
    transition: none;
  }
}
