﻿.steps {
	display: flex;
	align-items: center;
	width: 100%;
	margin: 25px 0;
}

.step {
	display: flex;
	align-items: center;
	color: #aaa;
	white-space: nowrap;
}

	.step.active {
		color: #222;
		font-weight: bold;
	}

	.step.completed {
		color: #3A9D68;
	}

.step-number {
	width: 32px;
	height: 32px;
	min-width: 32px;
	border-radius: 50%;
	background: #eee;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-right: 8px;
}

.step.active .step-number {
	background: #222;
	color: white;
}

.step.completed .step-number {
	background: #3A9D68;
	color: white;
}

.step-line {
	flex: 1;
	height: 1px;
	background: #ddd;
	margin: 0 12px;
}

.step.skip {
	color: #aaa;
	opacity: 0.65;
}

	.step.skip .step-number {
		background: #eee;
		color: #999;
	}

	.step.skip .step-text {
		text-decoration: line-through;
	}

/* ========================================================= */
/* DARK MODE                                                   */
/* ========================================================= */

body.dark-mode .step {
	color: #888;
}

	body.dark-mode .step.active {
		color: #FAFAFA;
	}

	body.dark-mode .step.completed {
		color: #55B87D;
	}

body.dark-mode .step-number {
	background: #4a4a4a;
}

body.dark-mode .step.active .step-number {
	background: #FAFAFA;
	color: #222;
}

body.dark-mode .step.completed .step-number {
	background: #55B87D;
	color: white;
}

/* Dark mode */
body.dark-mode .step.skip {
	color: #777;
}

	body.dark-mode .step.skip .step-number {
		background: #383838;
		color: #777;
	}

/* ========================================================= */
/* MOBILE                                                      */
/* ========================================================= */

.mobile-progress {
	display: none;
}

@media (max-width: 680px) {

	.steps {
		display: none;
	}

	.mobile-progress {
		display: block;
		margin: 20px 0 25px 0;
	}

	.mobile-progress-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 8px;
		font-size: 14px;
		color: #777;
	}

		.mobile-progress-header strong {
			color: #222;
			font-size: 16px;
		}

	.mobile-progress-bar {
		height: 5px;
		width: 100%;
		background: #e5e5e5;
		border-radius: 5px;
		overflow: hidden;
	}

	.mobile-progress-value {
		height: 100%;
		width: 0%;
		background: #333;
		border-radius: 5px;
	}


	/* ------------------------------------------------------- */
	/* MOBILE - DARK MODE                                      */
	/* ------------------------------------------------------- */

	body.dark-mode .mobile-progress-header {
		color: #999;
	}

		body.dark-mode .mobile-progress-header strong {
			color: #FAFAFA;
		}

	body.dark-mode .mobile-progress-bar {
		background: #3a3a3a;
	}

	body.dark-mode .mobile-progress-value {
		background: #FAFAFA;
	}
}
