/* EVEO Dedicated Server Calculator V2 */

.eveo-ds-v2,
.eveo-ds-v2 *,
.eveo-ds-v2 *::before,
.eveo-ds-v2 *::after {
	box-sizing: border-box;
}

.eveo-ds-v2 {
	--ds-v2-bg: #f6f7f9;
	--ds-v2-surface: #ffffff;
	--ds-v2-border: #e2e5ea;
	--ds-v2-text: #20242c;
	--ds-v2-muted: #687180;
	--ds-v2-brand: #8b0d19;

	width: 100%;
	color: var(--ds-v2-text);
	font-family: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", Roboto, sans-serif;
}

.eveo-ds-v2__shell {
	width: min(100%, 1120px);
	margin: 0 auto;
	padding: 32px;
	background: var(--ds-v2-bg);
	border: 1px solid var(--ds-v2-border);
	border-radius: 8px;
}

.eveo-ds-v2__header {
	display: grid;
	gap: 4px;
	margin-bottom: 24px;
}

.eveo-ds-v2__eyebrow {
	margin: 0;
	color: var(--ds-v2-brand);
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
}

.eveo-ds-v2__title {
	margin: 0;
	color: var(--ds-v2-text);
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1.15;
}

.eveo-ds-v2__stage {
	min-height: 360px;
	display: grid;
	place-items: center;
	padding: 32px;
	background: var(--ds-v2-surface);
	border: 1px solid var(--ds-v2-border);
	border-radius: 8px;
}

.eveo-ds-v2__placeholder {
	display: grid;
	justify-items: center;
	gap: 14px;
	text-align: center;
}

.eveo-ds-v2__placeholder-mark {
	width: 44px;
	height: 44px;
	border: 2px solid var(--ds-v2-brand);
	border-radius: 8px;
	position: relative;
}

.eveo-ds-v2__placeholder-mark::before,
.eveo-ds-v2__placeholder-mark::after {
	content: "";
	position: absolute;
	background: var(--ds-v2-brand);
}

.eveo-ds-v2__placeholder-mark::before {
	top: 20px;
	left: 10px;
	right: 10px;
	height: 2px;
}

.eveo-ds-v2__placeholder-mark::after {
	top: 10px;
	bottom: 10px;
	left: 20px;
	width: 2px;
}

.eveo-ds-v2__placeholder-text {
	margin: 0;
	max-width: 360px;
	color: var(--ds-v2-muted);
	font-size: 14px;
	line-height: 1.5;
}

@media (max-width: 640px) {
	.eveo-ds-v2__shell {
		padding: 20px;
	}

	.eveo-ds-v2__title {
		font-size: 24px;
	}

	.eveo-ds-v2__stage {
		min-height: 280px;
		padding: 24px;
	}
}
