#mlk-km-root {
	/* Local scope and design tokens */
	isolation: isolate;
	--mlk-primary: #152e42;
	--mlk-text: #1b191a;
	--mlk-bg: #ffffff;
	--mlk-border: #d0d6dc;
	--mlk-gap: 16px;
	--mlk-gap-lg: 24px;
	--mlk-primary-hover: #0e2335;
	font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
	color: var(--mlk-text);
}

#mlk-km-root *,
#mlk-km-root *::before,
#mlk-km-root *::after {
	box-sizing: border-box;
}

/* Ensure elements with the hidden attribute are actually hidden,
   even if a more specific rule sets display. */
#mlk-km-root [hidden] {
	display: none !important;
}

#mlk-km-root .mlk-km-card {
	background: var(--mlk-bg);
	border: 1px solid var(--mlk-border);
	padding: var(--mlk-gap-lg);
	max-width: 720px;
}

#mlk-km-root .mlk-km-title {
	margin: 0 0 var(--mlk-gap-lg) 0;
	font-size: 1.5rem;
	line-height: 1.2;
	color: var(--mlk-text);
	font-weight: 700;
}

#mlk-km-root .mlk-km-form {
	display: grid;
	gap: var(--mlk-gap);
}

#mlk-km-root .mlk-km-field {
	display: grid;
	gap: 8px;
}

#mlk-km-root .mlk-km-label {
	font-weight: 600;
	color: var(--mlk-text);
}

#mlk-km-root .mlk-km-input {
	appearance: none;
	width: 100%;
	border: 1px solid var(--mlk-border);
	padding: 10px 12px;
	background: #ffffff;
	color: var(--mlk-text);
	border-radius: 0;
	outline: none;
}

#mlk-km-root .mlk-km-input:focus {
	border-color: var(--mlk-primary);
	box-shadow: 0 0 0 2px rgba(21, 46, 66, 0.2);
}

#mlk-km-root .mlk-km-actions {
	margin-top: 4px;
}

#mlk-km-root .mlk-km-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--mlk-primary);
	color: #ffffff;
	border: 1px solid var(--mlk-primary);
	padding: 10px 16px;
	border-radius: 0;
	cursor: pointer;
	text-decoration: none;
}

#mlk-km-root .mlk-km-button:hover,
#mlk-km-root .mlk-km-button:focus-visible {
	background: var(--mlk-primary-hover);
	border-color: var(--mlk-primary-hover);
}

#mlk-km-root .mlk-km-button[disabled] {
	opacity: 0.7;
	cursor: not-allowed;
}

#mlk-km-root .mlk-km-error {
	margin-top: 8px;
	color: var(--mlk-text);
}

#mlk-km-root .mlk-km-success {
	margin: 8px 0;
	padding: 10px 12px;
	border: 1px solid var(--mlk-border);
	background: #ffffff;
	color: var(--mlk-text);
}

#mlk-km-root .mlk-km-note {
	margin-bottom: 20px;
	font-size: 0.95rem;
	color: var(--mlk-text);
}

#mlk-km-root .mlk-km-result {
	margin-top: var(--mlk-gap-lg);
	display: grid;
	gap: var(--mlk-gap);
}

#mlk-km-root .mlk-km-package {
	border: 1px solid var(--mlk-border);
	padding: var(--mlk-gap);
	background: #ffffff;
}

#mlk-km-root .mlk-km-summary {
	display: grid;
	gap: 6px;
	margin-bottom: var(--mlk-gap);
}

#mlk-km-root .mlk-km-summary-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#mlk-km-root .mlk-km-contact {
	display: grid;
	gap: var(--mlk-gap);
}

#mlk-km-root .mlk-km-package-title {
	margin: 0 0 8px 0;
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--mlk-text);
}

#mlk-km-root .mlk-km-package-price {
	margin: 0 0 12px 0;
	font-weight: 700;
}

#mlk-km-root .mlk-km-desc {
	margin: 0 0 var(--mlk-gap) 0;
	line-height: 1.5;
}

#mlk-km-root .mlk-km-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--mlk-primary);
	color: #ffffff;
	border: 1px solid var(--mlk-primary);
	padding: 10px 16px;
	text-decoration: none;
	border-radius: 0;
}

#mlk-km-root .mlk-km-cta:hover {
	background: var(--mlk-primary-hover);
	border-color: var(--mlk-primary-hover);
}

@media (max-width: 600px) {
	#mlk-km-root .mlk-km-card {
		padding: var(--mlk-gap);
	}
}

#mlk-km-root .mlk-km-pfron-options {
		display: flex;
		gap: 12px;
		align-items: center;
		flex-wrap: wrap;
}

#mlk-km-root .mlk-km-pfron-count {
		display: grid;
		gap: 8px;
}


