.eb-progress-bar {
	--eb-progress-bar-thickness: 26px;
	--eb-progress-bar-length: 220px;
	--eb-progress-circle-size: 160px;
	--eb-progress-grid-columns: 3;
	--eb-progress-bar-label-gap: 16px;
	--eb-progress-bar-icon-size: 16px;
	--eb-progress-bar-icon-gap: 8px;
	--eb-progress-bar-vertical-inside-gap: 4px;
	--eb-progress-bar-vertical-title-max-height: 88px;
	--eb-progress-animation-duration: 1200ms;
	--eb-progress-animation-delay: 0ms;
	--eb-progress-animation-easing: ease;
	background: #eff3f8;
	border-radius: 24px;
	padding: 28px 30px;
}

.eb-progress-bar__heading {
	margin: 0 0 24px;
	color: #1a2232;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
}

.eb-progress-bar__items {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.eb-progress-bar--vertical .eb-progress-bar__items {
	flex-direction: row;
	align-items: flex-end;
}

.eb-progress-bar--circle .eb-progress-bar__items {
	display: grid;
	grid-template-columns: repeat(var(--eb-progress-grid-columns), minmax(0, 1fr));
	align-items: flex-start;
	justify-content: stretch;
	gap: 24px;
	width: 100%;
	min-width: 0;
	overflow-y: visible;
}

.eb-progress-bar--half-circle .eb-progress-bar__items {
	display: grid;
	grid-template-columns: repeat(var(--eb-progress-grid-columns), minmax(0, 1fr));
	align-items: flex-start;
	justify-content: stretch;
	gap: 24px;
	width: 100%;
	min-width: 0;
	overflow-y: visible;
}

.eb-progress-bar--circle .eb-progress-bar__items,
.eb-progress-bar--half-circle .eb-progress-bar__items {
	display: grid !important;
	grid-template-columns: repeat(var(--eb-progress-grid-columns), minmax(0, 1fr)) !important;
	align-items: flex-start !important;
	justify-content: stretch !important;
	width: 100% !important;
	min-width: 0 !important;
}

.eb-progress-bar__items--circle,
.eb-progress-bar__items--half-circle {
	display: grid !important;
	grid-template-columns: repeat(var(--eb-progress-grid-columns), minmax(0, 1fr)) !important;
	align-items: flex-start !important;
	justify-content: stretch !important;
	gap: 24px !important;
	width: 100% !important;
	min-width: 0 !important;
	overflow-y: visible;
}

.eb-progress-bar--circle .eb-progress-bar__item,
.eb-progress-bar--half-circle .eb-progress-bar__item {
	width: 100% !important;
	max-width: var(--eb-progress-circle-size) !important;
	justify-self: center;
}

.eb-progress-bar__items--circle .eb-progress-bar__item,
.eb-progress-bar__items--half-circle .eb-progress-bar__item {
	width: 100% !important;
	max-width: var(--eb-progress-circle-size) !important;
	justify-self: center;
}

.eb-progress-bar__item {
	min-width: 0;
	width: 100%;
}

.eb-progress-bar--vertical .eb-progress-bar__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1 1 0;
	width: auto;
}

.eb-progress-bar--circle .eb-progress-bar__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: var(--eb-progress-circle-size);
}

.eb-progress-bar--half-circle .eb-progress-bar__item {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	max-width: var(--eb-progress-circle-size);
}

.eb-progress-bar__meta {
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 10px;
	width: 100%;
}

.eb-progress-bar__meta--below {
	margin-top: 10px;
	margin-bottom: 0;
}

.eb-progress-bar__meta--start {
	justify-content: flex-start;
}

.eb-progress-bar__meta--end {
	justify-content: flex-end;
}

.eb-progress-bar__meta--between {
	justify-content: space-between;
}

.eb-progress-bar-align-left .eb-progress-bar__meta {
	align-items: flex-start;
}

.eb-progress-bar-align-center .eb-progress-bar__meta {
	align-items: center;
}

.eb-progress-bar-align-right .eb-progress-bar__meta {
	align-items: flex-end;
}

.eb-progress-bar--circle .eb-progress-bar__meta,
.eb-progress-bar--half-circle .eb-progress-bar__meta {
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	text-align: center;
}

.eb-progress-bar--circle .eb-progress-bar__meta--start,
.eb-progress-bar--circle .eb-progress-bar__meta--end,
.eb-progress-bar--circle .eb-progress-bar__meta--between,
.eb-progress-bar--half-circle .eb-progress-bar__meta--start,
.eb-progress-bar--half-circle .eb-progress-bar__meta--end,
.eb-progress-bar--half-circle .eb-progress-bar__meta--between {
	justify-content: center;
}

.eb-progress-bar__bar-row {
	display: flex;
	align-items: center;
	gap: var(--eb-progress-bar-label-gap);
	width: 100%;
	min-width: 0;
}

.eb-progress-bar__bar-row--circle {
	width: auto;
	justify-content: center;
}

.eb-progress-bar--vertical .eb-progress-bar__bar-row {
	flex-direction: column;
	align-items: center;
	width: auto;
}

.eb-progress-bar__track {
	position: relative;
	flex: 1 1 auto;
	width: auto;
	max-width: none;
	min-width: 0;
	height: var(--eb-progress-bar-thickness);
	background-color: #cfd7e3;
	border-radius: 999px;
	overflow: hidden;
}

.eb-progress-bar--without-inactive-bar .eb-progress-bar__track {
	background-color: transparent;
	overflow: visible;
}

.eb-progress-bar--vertical .eb-progress-bar__track {
	width: var(--eb-progress-bar-thickness);
	height: var(--eb-progress-bar-length);
	max-width: none;
	min-height: 180px;
	overflow: visible;
}

.eb-progress-bar__fill {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 0 14px;
	background-color: #18c96d;
	border-radius: inherit;
	max-width: 100%;
}

.eb-progress-bar--animated.eb-progress-bar--horizontal .eb-progress-bar__fill {
	animation: eb-progress-fill-horizontal var(--eb-progress-animation-duration) var(--eb-progress-animation-easing) both;
	animation-delay: calc(var(--eb-progress-animation-delay) + var(--eb-progress-item-delay, 0ms));
}

.eb-progress-bar--animated.eb-progress-bar--vertical .eb-progress-bar__fill {
	animation: eb-progress-fill-vertical var(--eb-progress-animation-duration) var(--eb-progress-animation-easing) both;
	animation-delay: calc(var(--eb-progress-animation-delay) + var(--eb-progress-item-delay, 0ms));
}

.eb-progress-bar__title-below {
	margin-top: 8px;
}

.eb-progress-bar__circle {
	position: relative;
	width: var(--eb-progress-circle-size);
	height: var(--eb-progress-circle-size);
	overflow: visible;
}

.eb-progress-bar__half-circle {
	position: relative;
	width: var(--eb-progress-circle-size);
	height: calc(var(--eb-progress-circle-size) * 0.6);
	overflow: visible;
}

.eb-progress-bar__circle-svg {
	display: block;
	width: 100%;
	height: 100%;
	transform: rotate(-90deg);
	overflow: visible;
}

.eb-progress-bar__half-circle-svg {
	display: block;
	width: 100%;
	height: 100%;
	overflow: visible;
}

.eb-progress-bar__circle-track,
.eb-progress-bar__circle-fill {
	fill: none;
	stroke-width: 10;
}

.eb-progress-bar__half-circle-track,
.eb-progress-bar__half-circle-fill {
	fill: none;
	stroke-width: 10;
	stroke-linecap: butt;
}

.eb-progress-bar__circle-track {
	stroke: #cfd7e3;
}

.eb-progress-bar__half-circle-track {
	stroke: #cfd7e3;
}

.eb-progress-bar__circle-fill {
	stroke: #18c96d;
	stroke-linecap: round;
}

.eb-progress-bar__half-circle-fill {
	stroke: #18c96d;
	stroke-linecap: butt;
}

.eb-progress-bar--animated .eb-progress-bar__circle-fill,
.eb-progress-bar--animated .eb-progress-bar__half-circle-fill {
	animation: eb-progress-stroke-offset var(--eb-progress-animation-duration) var(--eb-progress-animation-easing) both;
	animation-delay: calc(var(--eb-progress-animation-delay) + var(--eb-progress-item-delay, 0ms));
}

.eb-progress-bar__circle-value {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #182131;
	font-size: 22px;
	font-weight: 700;
}

.eb-progress-bar__half-circle-value {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 2px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #182131;
	font-size: 22px;
	font-weight: 700;
}

.eb-progress-bar--circle.eb-progress-bar--title-before .eb-progress-bar__item,
.eb-progress-bar--half-circle.eb-progress-bar--title-before .eb-progress-bar__item {
	width: auto;
}

.eb-progress-bar--circle.eb-progress-bar--title-inside .eb-progress-bar__circle-value,
.eb-progress-bar--half-circle.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value {
	flex-direction: column;
	gap: 6px;
	padding: 12px;
	text-align: center;
}

.eb-progress-bar--circle.eb-progress-bar--title-inside .eb-progress-bar__circle-value .eb-progress-bar__label--title,
.eb-progress-bar--half-circle.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value .eb-progress-bar__label--title {
	color: #1f2b3d;
	justify-content: center;
	text-align: center;
}

.eb-progress-bar--circle.eb-progress-bar--title-inside .eb-progress-bar__circle-value .eb-progress-bar__label--percentage,
.eb-progress-bar--half-circle.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value .eb-progress-bar__label--percentage {
	color: #182131;
	text-align: center;
}

.eb-progress-bar__circle-title {
	margin-top: 14px;
	text-align: center;
}

.eb-progress-bar__circle-title .eb-progress-bar__label--title {
	color: #1f2b3d;
	justify-content: center;
}

.eb-progress-bar--vertical .eb-progress-bar__fill {
	left: 0;
	right: 0;
	top: auto;
	bottom: 0;
	width: 100%;
	height: 0;
	padding: 12px 8px;
	flex-direction: column;
	align-items: center;
	justify-content: flex-end;
	overflow: visible;
}

.eb-progress-bar__label {
	display: inline-flex;
	align-items: center;
	gap: var(--eb-progress-bar-icon-gap);
	line-height: 1.2;
}

.eb-progress-bar-align-left .eb-progress-bar__label {
	text-align: left;
}

.eb-progress-bar-align-center .eb-progress-bar__label {
	justify-content: center;
	text-align: center;
}

.eb-progress-bar-align-right .eb-progress-bar__label {
	justify-content: flex-end;
	text-align: right;
}

.eb-progress-bar-align-left .eb-progress-bar__meta,
.eb-progress-bar-align-left .eb-progress-bar__circle-title {
	align-items: flex-start !important;
	text-align: left !important;
}

.eb-progress-bar-align-center .eb-progress-bar__meta,
.eb-progress-bar-align-center .eb-progress-bar__circle-title {
	align-items: center !important;
	text-align: center !important;
}

.eb-progress-bar-align-right .eb-progress-bar__meta,
.eb-progress-bar-align-right .eb-progress-bar__circle-title {
	align-items: flex-end !important;
	text-align: right !important;
}

.eb-progress-bar-align-left .eb-progress-bar__label,
.eb-progress-bar-align-left .eb-progress-bar__circle-title .eb-progress-bar__label--title {
	justify-content: flex-start !important;
	text-align: left !important;
}

.eb-progress-bar-align-center .eb-progress-bar__label,
.eb-progress-bar-align-center .eb-progress-bar__circle-title .eb-progress-bar__label--title {
	justify-content: center !important;
	text-align: center !important;
}

.eb-progress-bar-align-right .eb-progress-bar__label,
.eb-progress-bar-align-right .eb-progress-bar__circle-title .eb-progress-bar__label--title {
	justify-content: flex-end !important;
	text-align: right !important;
}

.eb-progress-bar-align-left .eb-progress-bar__circle-value,
.eb-progress-bar-align-left .eb-progress-bar__half-circle-value {
	justify-content: flex-start !important;
	text-align: left !important;
}

.eb-progress-bar-align-center .eb-progress-bar__circle-value,
.eb-progress-bar-align-center .eb-progress-bar__half-circle-value {
	justify-content: center !important;
	text-align: center !important;
}

.eb-progress-bar-align-right .eb-progress-bar__circle-value,
.eb-progress-bar-align-right .eb-progress-bar__half-circle-value {
	justify-content: flex-end !important;
	text-align: right !important;
}

.eb-progress-bar-align-left.eb-progress-bar--title-inside .eb-progress-bar__circle-value,
.eb-progress-bar-align-left.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value {
	align-items: flex-start !important;
}

.eb-progress-bar-align-center.eb-progress-bar--title-inside .eb-progress-bar__circle-value,
.eb-progress-bar-align-center.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value {
	align-items: center !important;
}

.eb-progress-bar-align-right.eb-progress-bar--title-inside .eb-progress-bar__circle-value,
.eb-progress-bar-align-right.eb-progress-bar--title-inside .eb-progress-bar__half-circle-value {
	align-items: flex-end !important;
}

.eb-progress-bar__label--title {
	color: #ffffff;
	font-size: 20px;
	font-weight: 600;
}

.eb-progress-bar--title-before .eb-progress-bar__label--title,
.eb-progress-bar--title-above .eb-progress-bar__label--title,
.eb-progress-bar--title-below .eb-progress-bar__label--title,
.eb-progress-bar__title-below .eb-progress-bar__label--title,
.eb-progress-bar__meta--below .eb-progress-bar__label--title {
	color: #1f2b3d;
}

.eb-progress-bar__label--percentage {
	color: #182131;
	font-size: 20px;
	font-weight: 700;
	flex-shrink: 0;
	white-space: nowrap;
	text-align: right;
}

.eb-progress-bar--circle .eb-progress-bar__label--percentage,
.eb-progress-bar--half-circle .eb-progress-bar__label--percentage {
	text-align: center;
}

.eb-progress-bar__label--badge {
	position: absolute;
	right: 0;
	top: 0;
	transform: translate(50%, calc(-100% - 10px));
	padding: 6px 10px;
	border-radius: 6px;
	background: #5c7cff;
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	z-index: 2;
}

.eb-progress-bar__label--badge::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -4px;
	width: 8px;
	height: 8px;
	background: inherit;
	transform: translateX(-50%) rotate(45deg);
}

.eb-progress-bar--without-inactive-bar .eb-progress-bar__label--badge {
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: #182131;
	font-size: 16px;
	line-height: 1.2;
}

.eb-progress-bar--without-inactive-bar .eb-progress-bar__label--badge::after {
	content: none;
}

.eb-progress-bar--percentage-inside .eb-progress-bar__label--percentage {
	color: #ffffff;
}

.eb-progress-bar__icon,
.eb-progress-bar__icon i,
.eb-progress-bar__icon svg {
	display: inline-flex;
	width: var(--eb-progress-bar-icon-size);
	height: var(--eb-progress-bar-icon-size);
	fill: currentColor;
}

.eb-progress-bar__title-text {
	white-space: nowrap;
}

.eb-progress-bar--horizontal .eb-progress-bar__label--title {
	flex-shrink: 0;
}

.eb-progress-bar--title-inside .eb-progress-bar__fill,
.eb-progress-bar--percentage-inside .eb-progress-bar__fill {
	min-width: 72px;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__fill,
.eb-progress-bar--vertical.eb-progress-bar--percentage-inside .eb-progress-bar__fill {
	width: 100%;
	min-width: 0;
	max-width: 100%;
}

.eb-progress-bar--vertical .eb-progress-bar__meta,
.eb-progress-bar--vertical .eb-progress-bar__bar-row {
	width: auto;
}

.eb-progress-bar--vertical .eb-progress-bar__meta {
	flex-direction: column;
	margin-bottom: 14px;
}

.eb-progress-bar--vertical .eb-progress-bar__label--title,
.eb-progress-bar--vertical .eb-progress-bar__label--percentage {
	text-align: center;
	justify-content: center;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__label--title {
	flex: 1 1 auto;
	flex-direction: column;
	gap: var(--eb-progress-bar-vertical-inside-gap);
	min-height: 0;
	max-width: 100%;
	justify-content: flex-start;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__fill {
	gap: var(--eb-progress-bar-vertical-inside-gap);
	justify-content: flex-start;
}

.eb-progress-bar--vertical.eb-progress-bar--percentage-inside .eb-progress-bar__label--percentage {
	margin-top: auto;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__title-text {
	display: block;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: normal;
	line-height: 1;
	letter-spacing: 0.04em;
	max-height: var(--eb-progress-bar-vertical-title-max-height);
	overflow: hidden;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__icon {
	justify-content: center;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__label--has-tooltip {
	position: relative;
	cursor: help;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__label--has-tooltip::after {
	content: attr(data-tooltip);
	position: absolute;
	left: calc(100% + 10px);
	top: 50%;
	transform: translateY(-50%);
	padding: 6px 10px;
	border-radius: 8px;
	background: rgba(24, 33, 49, 0.96);
	color: #ffffff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.3;
	white-space: normal;
	writing-mode: horizontal-tb;
	text-orientation: mixed;
	letter-spacing: normal;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	z-index: 20;
	min-width: 84px;
	max-width: 180px;
	box-shadow: 0 12px 24px rgba(15, 23, 42, 0.18);
	transition: opacity 0.18s ease, visibility 0.18s ease;
}

.eb-progress-bar--vertical.eb-progress-bar--title-inside .eb-progress-bar__label--has-tooltip:hover::after {
	opacity: 1;
	visibility: visible;
}

.eb-progress-bar--vertical .eb-progress-bar__label--badge {
	right: 50%;
	top: 0;
	transform: translate(50%, calc(-100% - 10px));
}

.eb-progress-bar--vertical .eb-progress-bar__title-text {
	white-space: normal;
}

.eb-progress-bar--vertical .eb-progress-bar__meta--end,
.eb-progress-bar--vertical .eb-progress-bar__meta--start,
.eb-progress-bar--vertical .eb-progress-bar__meta--between {
	justify-content: center;
}

@media (max-width: 767px) {
	.eb-progress-bar {
		padding: 22px 20px;
	}

	.eb-progress-bar__heading {
		font-size: 24px;
	}

	.eb-progress-bar__bar-row {
		flex-wrap: wrap;
	}

	.eb-progress-bar__track {
		width: 100%;
	}

	.eb-progress-bar--vertical .eb-progress-bar__items {
		flex-wrap: wrap;
	}
}

@keyframes eb-progress-fill-horizontal {
	from {
		width: 0;
	}

	to {
		width: var(--eb-progress-target-size);
	}
}

@keyframes eb-progress-fill-vertical {
	from {
		height: 0;
	}

	to {
		height: var(--eb-progress-target-size);
	}
}

@keyframes eb-progress-stroke-offset {
	from {
		stroke-dashoffset: var(--eb-progress-dash-start);
	}

	to {
		stroke-dashoffset: var(--eb-progress-dash-end);
	}
}
