.timeline-container {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 0;
}

.timeline-container .item {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	flex: 1 0 0;
	width: 0;
}

.timeline-container .item[data-progress='open'] {
	opacity: 0.5;
}

.timeline-container .item[data-progress='progress'] .divider {
	background: linear-gradient(90deg, #33a193 0%, #33a193 50%, #d2d9dc 50%, rgba(227, 232, 239, 0.5) 100%);
}

.timeline-container .item[data-progress='done'] .divider {
	background-color: var(--theme-palette-color-1);
}

.timeline-container .item-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.25rem;
	background-color: var(--theme-palette-color-1);
	border-radius: 9999px;
	width: 2.5rem;
	height: 2.5rem;
}

.timeline-container .item-icon svg {
	color: var(--theme-palette-color-8);
}

.timeline-container .item .divider-up {
	width: 2px;
	height: 24px;
	background-color: var(--theme-palette-color-6);
	margin: 0.25rem 0;
}

.timeline-container .item .divider {
	width: 100%;
	height: 2px;
	background-color: var(--theme-palette-color-6);
}

.timeline-container .item .item-content {
	text-align: center;
	margin-top: 0.5rem;
}

.timeline-container .item .item-content p {
	margin: 0;
}

.timeline-container .item .item-content p.item-title {
	font-size: 1.125rem;
}

.timeline-container .item .item-content p.item-subtitle {
	font-size: 0.875rem;
	opacity: 0.5;
}

@media (max-width: 781px) {
	.timeline-container .item {
		flex-basis: 100%;
		align-items: flex-start;
		padding-bottom: 2rem;
	}

	.timeline-container .item[data-progress='progress'] .divider {
		background: linear-gradient(
			180deg,
			#33a193 0%,
			#33a193 20px,
			#d2d9dc 20px,
			rgba(227, 232, 239, 0.5) 100%
		);
	}

	.timeline-container .item-icon {
		margin-left: 2rem;
	}

	.timeline-container .item .divider-up {
		position: absolute;
		top: 0.875rem;
		left: 4px;
		width: 24px;
		height: 2px;
	}

	.timeline-container .item .divider {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		height: unset;
		width: 2px;
	}

	.timeline-container .item .item-content {
		text-align: left;
		margin-left: 2rem;
	}
}
