/* Progress Bar
------------------------------------- */
.elematic-progress-bar-wrapper {
  overflow: hidden;
  margin-bottom: 25px;
}

.elematic-progress-bar-wrapper .elematic-progress-bar {
  border-radius: 3px;
  position: relative;
}

.elematic-progress-bar-wrapper .elematic-progressbar-content {
  overflow: visible;
  border-radius: 3px;
}

.elematic-progressbar-content {
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  font-size: .75rem;
  background-color: #e9ecef;
}

/* base bar */
.elematic-progressbar-content .elematic-progress-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #fff;
  background-color: #111;
  /* horizontal animation */
  transition: width 0.6s ease;
}

.elematic-progress-bar-striped {
  background-image: linear-gradient(
    45deg,
    rgba(255, 255, 255, .15) 25%,
    transparent 25%,
    transparent 50%,
    rgba(255, 255, 255, .15) 50%,
    rgba(255, 255, 255, .15) 75%,
    transparent 75%,
    transparent
  );
  background-size: 1rem 1rem;
}

.elematic-progress-bar-wrapper .elematic-progressbar-content .percent-label {
  position: absolute;
  right: 0;
  top: -39px;
  color: #111;
}

.elematic-progress-text-inner {
  position: relative;
}

.elematic-progress-text-inner .elematic_progress_title {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-100%);
  z-index: 9;
  margin: 0;
  color: #fff;
}

.elematic-progress-value-inner .elematic-progressbar-content .percent-label {
  right: 50px;
  top: 50%;
  transform: translateY(-50%);
}

.elematic-progress-bar-wrapper p {
  color: #666666;
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 17px;
  display: inline-block;
}

.elematic-progressbar-value-bottom .elematic-progressbar-content .percent-label::after {
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 5px solid #111;
  content: "";
  height: 0;
  left: 50%;
  margin-left: -6px;
  position: absolute;
  top: 100%;
  width: 0;
}

.elematic-progress-indicator .elematic-progressbar-content .elematic-progress-bar::after {
  background: #fff none repeat scroll 0 0;
  border: 4px solid #111;
  border-radius: 100%;
  content: "";
  height: 24px;
  position: absolute;
  right: -1px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
}

/* Vertical Progress Bar */
.elematic-progress-bar-wrapper.elematic-progress-bar-style-vertical {
  display: flex;
  flex-direction: column;
  overflow-y: hidden;
  /* this is the total column height; adjust if you want */
  height: 390px;
}

.elematic-progress-bar-style-vertical {
  position: relative;
  padding-top: 41px;
}

.elematic-progress-bar-style-vertical .elematic-progressbar-content {
  width: 100%;
  padding-top: 40px;
  height: 100%;           /* <-- explicit height so % on bar works */
  display: flex;
  align-items: flex-end;
  background: transparent;
  overflow: hidden;
}

/* vertical bar: animate height instead of width */
.elematic-progress-bar-style-vertical .elematic-progressbar-content .elematic-progress-bar {
  width: 100%;
  height: 0;              /* start collapsed */
  transition: height 0.6s ease;
}

.elematic-progress-bar-style-vertical.elematic-progress-bar-wrapper .elematic_progress_title {
  order: 1;
}

.elematic-progress-bar-style-vertical.elematic-progress-value-inner .elematic-progressbar-content .percent-label {
  position: absolute;
  top: -36px;
  left: 50%;
  transform: translateX(-50%);
  right: auto;
}

/* group wrapper */
.elematic-progressbar-list {
  width: 100%;
}

/* vertical: show items side by side */
.elematic-progressbar-list-vertical {
  display: flex;
  gap: 30px;              /* spacing between columns */
  align-items: flex-end;  /* align bars at bottom */
}

/* each vertical item behaves like a column */
.elematic-progressbar-list-vertical .elematic-progress-bar-wrapper {
  flex: 1 1 0;
  margin-bottom: 0;       /* override horizontal spacing rule */
}


/* ---------------------------------------------------------
   EOF
------------------------------------------------------------ */