/**
 * Progress
 */
.progress {
  display: flex;
  flex-basis: 100%;
  position: relative;
  overflow: hidden;
  background: var(--progress--background);
  border-radius: var(--progress--border-radius, var(--progress--border-top-left-radius, var(--border-top-left-radius)) var(--progress--border-top-right-radius, var(--border-top-right-radius)) var(--progress--border-bottom-right-radius, var(--border-bottom-right-radius)) var(--progress--border-bottom-left-radius, var(--border-bottom-left-radius)));
  border-color: var(--progress--border-color, var(--progress--border-top-color, var(--border-top-color)) var(--progress--border-right-color, var(--border-right-color)) var(--progress--border-bottom-color, var(--border-bottom-color)) var(--progress--border-left-color, var(--border-left-color)));
  border-style: var(--progress--border-style, var(--progress--border-top-style, var(--border-top-style)) var(--progress--border-right-style, var(--border-right-style)) var(--progress--border-bottom-style, var(--border-bottom-style)) var(--progress--border-left-style, var(--border-left-style)));
  border-width: var(--progress--border-width, var(--progress--border-top-width, var(--border-top-width)) var(--progress--border-right-width, var(--border-right-width)) var(--progress--border-bottom-width, var(--border-bottom-width)) var(--progress--border-left-width, var(--border-left-width)));
  box-shadow: var(--progress--box-shadow, var(--progress--box-shadow-x-offset, var(--box-shadow-offset-x)) var(--progress--box-shadow-y-offset, var(--box-shadow-offset-y)) var(--progress--box-shadow-blur-radius, var(--box-shadow-blur-radius)) var(--progress--box-shadow-spread-radius, var(--box-shadow-spread-radius)) var(--progress--box-shadow-color, var(--box-shadow-color)));
  height: var(--progress--height);
}

/**
 * Color variants
 */
.progress.-light {
  --progress--background: var(--progress--light--background, var(--color-light));
  --progress--border-top-color: var(
      --progress--light--border-top-color,
      var(--color-light-shade-50)
  );
  --progress--border-right-color: var(
      --progress--light--border-right-color,
      var(--color-light-shade-50)
  );
  --progress--border-bottom-color: var(
      --progress--light--border-bottom-color,
      var(--color-light-shade-50)
  );
  --progress--border-left-color: var(
      --progress--light--border-left-color,
      var(--color-light-shade-50)
  );
}
.progress.-dark {
  --progress--background: var(--progress--dark--background, var(--color-dark));
  --progress--border-top-color: var(
      --progress--dark--border-top-color,
      var(--color-dark-tint-50)
  );
  --progress--border-right-color: var(
      --progress--dark--border-right-color,
      var(--color-dark-tint-50)
  );
  --progress--border-bottom-color: var(
      --progress--dark--border-bottom-color,
      var(--color-dark-tint-50)
  );
  --progress--border-left-color: var(
      --progress--dark--border-left-color,
      var(--color-dark-tint-50)
  );
}

/**
 * Size variants
 */
.progress.-sm {
  --progress--border-top-left-radius: var(
      --progress--sm--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-sm))
  );
  --progress--border-top-right-radius: var(
      --progress--sm--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-sm))
  );
  --progress--border-bottom-right-radius: var(
      --progress--sm--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-sm))
  );
  --progress--border-bottom-left-radius: var(
      --progress--sm--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-sm))
  );
  --progress--height: var(--progress--sm--height, calc(0.75rem * var(--size-multiplier-sm)));
}
.progress.-md {
  --progress--border-top-left-radius: var(
      --progress--md--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-md))
  );
  --progress--border-top-right-radius: var(
      --progress--md--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-md))
  );
  --progress--border-bottom-right-radius: var(
      --progress--md--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-md))
  );
  --progress--border-bottom-left-radius: var(
      --progress--md--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-md))
  );
  --progress--height: var(--progress--md--height, calc(0.75rem * var(--size-multiplier-md)));
}
.progress.-lg {
  --progress--border-top-left-radius: var(
      --progress--lg--border-top-left-radius,
      calc(var(--border-top-left-radius) * var(--size-multiplier-lg))
  );
  --progress--border-top-right-radius: var(
      --progress--lg--border-top-right-radius,
      calc(var(--border-top-right-radius) * var(--size-multiplier-lg))
  );
  --progress--border-bottom-right-radius: var(
      --progress--lg--border-bottom-right-radius,
      calc(var(--border-bottom-right-radius) * var(--size-multiplier-lg))
  );
  --progress--border-bottom-left-radius: var(
      --progress--lg--border-bottom-left-radius,
      calc(var(--border-bottom-left-radius) * var(--size-multiplier-lg))
  );
  --progress--height: var(--progress--lg--height, calc(0.75rem * var(--size-multiplier-lg)));
}