.cbekm-verification {
	--cbekm-blue: #1167dc;
	--cbekm-blue-dark: #0d55bd;
	--cbekm-blue-soft: #eef5ff;
	--cbekm-border: #e6ebf3;
	--cbekm-text: #111b3d;
	--cbekm-muted: #67728a;
	--cbekm-green: #17a34a;
	--cbekm-green-soft: #f4fff8;
	box-sizing: border-box;
	color: var(--cbekm-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	margin: 32px auto;
	max-width: 1080px;
	width: min(100%, 1080px);
}

.cbekm-verification *,
.cbekm-verification *::before,
.cbekm-verification *::after {
	box-sizing: border-box;
}

.cbekm-search-card,
.cbekm-result-card,
.cbekm-alert {
	background: #fff;
	border: 1px solid var(--cbekm-border);
	border-radius: 8px;
	box-shadow: 0 18px 45px rgba(25, 44, 88, 0.06);
}

.cbekm-search-card {
	margin: 0 auto 34px;
	padding: 32px 48px;
}

.cbekm-search-heading {
	align-items: center;
	display: flex;
	gap: 24px;
	margin-bottom: 24px;
}

.cbekm-heading-icon {
	align-items: center;
	background: var(--cbekm-blue-soft);
	border-radius: 999px;
	color: var(--cbekm-blue);
	display: inline-flex;
	flex: 0 0 64px;
	height: 64px;
	justify-content: center;
	width: 64px;
}

.cbekm-heading-icon svg {
	height: 34px;
	width: 34px;
}

.cbekm-search-title {
	color: var(--cbekm-text);
	display: block;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.25;
	margin: 0 0 7px;
}

.cbekm-search-subtitle {
	color: var(--cbekm-muted);
	display: block;
	font-size: 16px;
	line-height: 1.45;
}

.cbekm-verification-form {
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1fr) auto;
	margin: 0 0 22px;
}

.cbekm-verification-form input[type="text"] {
	background: #fff;
	border: 1px solid #d9e0ea;
	border-radius: 8px;
	box-shadow: inset 0 1px 2px rgba(20, 35, 70, 0.04);
	color: var(--cbekm-text);
	font-size: 18px;
	font-weight: 700;
	height: 66px;
	letter-spacing: 0;
	line-height: 1.2;
	min-width: 0;
	padding: 0 22px;
	width: 100%;
}

.cbekm-verification-form input[type="text"]:focus {
	border-color: var(--cbekm-blue);
	box-shadow: 0 0 0 4px rgba(17, 103, 220, 0.12);
	outline: none;
}

.cbekm-verification-form button {
	align-items: center;
	background: var(--cbekm-blue);
	border: 0;
	border-radius: 8px;
	box-shadow: 0 10px 20px rgba(17, 103, 220, 0.22);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	font-size: 15px;
	font-weight: 800;
	gap: 12px;
	height: 66px;
	justify-content: center;
	line-height: 1;
	padding: 0 28px;
	text-transform: uppercase;
	transition: background-color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
	white-space: nowrap;
}

.cbekm-verification-form button:hover,
.cbekm-verification-form button:focus {
	background: var(--cbekm-blue-dark);
	box-shadow: 0 12px 24px rgba(13, 85, 189, 0.28);
	transform: translateY(-1px);
}

.cbekm-verification svg {
	display: block;
	fill: none;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.cbekm-verification-form button svg {
	height: 25px;
	width: 25px;
}

.cbekm-helper-text {
	align-items: center;
	color: var(--cbekm-muted);
	display: flex;
	font-size: 15px;
	gap: 11px;
	line-height: 1.45;
	margin: 0;
}

.cbekm-helper-text svg {
	color: var(--cbekm-blue);
	flex: 0 0 20px;
	height: 20px;
	width: 20px;
}

.cbekm-result-card {
	background: linear-gradient(180deg, #fbfffd 0%, var(--cbekm-green-soft) 100%);
	margin: 0 auto;
	padding: 28px;
}

.cbekm-result-header {
	align-items: center;
	display: flex;
	gap: 28px;
	margin: 0 0 26px;
}

.cbekm-badge {
	color: var(--cbekm-green);
	display: inline-flex;
	flex: 0 0 92px;
	height: 92px;
	width: 92px;
}

.cbekm-badge svg {
	fill: #22c55e;
	stroke: #fff;
	stroke-width: 4;
}

.cbekm-result-header h3 {
	color: #078a3b;
	font-size: 28px;
	font-weight: 800;
	line-height: 1.2;
	margin: 0 0 10px;
}

.cbekm-result-header p {
	color: #33415f;
	font-size: 16px;
	line-height: 1.5;
	margin: 0;
}

.cbekm-detail-grid {
	display: grid;
	gap: 22px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cbekm-detail-column {
	background: #fff;
	border: 1px solid var(--cbekm-border);
	border-radius: 8px;
	overflow: hidden;
}

.cbekm-detail-row {
	align-items: center;
	border-bottom: 1px solid var(--cbekm-border);
	display: grid;
	gap: 16px;
	grid-template-columns: 26px minmax(128px, 0.95fr) minmax(0, 1.25fr);
	min-height: 58px;
	padding: 14px 18px;
}

.cbekm-detail-row:last-child {
	border-bottom: 0;
}

.cbekm-row-icon {
	color: var(--cbekm-blue);
	display: inline-flex;
	height: 24px;
	width: 24px;
}

.cbekm-row-icon svg {
	height: 24px;
	width: 24px;
}

.cbekm-row-label,
.cbekm-row-value {
	font-size: 15px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.cbekm-row-label {
	color: var(--cbekm-text);
	font-weight: 800;
}

.cbekm-row-value {
	color: #25304f;
	font-weight: 700;
}

.cbekm-alert {
	color: #9f1d1d;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	padding: 22px 28px;
	text-align: center;
}

.cbekm-alert-invalid {
	background: #fff7f7;
	border-color: #ffd7d7;
}

@media (max-width: 820px) {
	.cbekm-search-card,
	.cbekm-result-card {
		padding: 24px;
	}

	.cbekm-verification-form,
	.cbekm-detail-grid {
		grid-template-columns: 1fr;
	}

	.cbekm-verification-form button {
		width: 100%;
	}

	.cbekm-result-header {
		align-items: flex-start;
		gap: 18px;
	}
}

@media (max-width: 560px) {
	.cbekm-verification {
		margin: 20px auto;
	}

	.cbekm-search-card,
	.cbekm-result-card {
		padding: 18px;
	}

	.cbekm-search-heading {
		align-items: flex-start;
		gap: 16px;
	}

	.cbekm-heading-icon {
		flex-basis: 52px;
		height: 52px;
		width: 52px;
	}

	.cbekm-search-title {
		font-size: 20px;
	}

	.cbekm-search-subtitle,
	.cbekm-helper-text,
	.cbekm-row-label,
	.cbekm-row-value {
		font-size: 14px;
	}

	.cbekm-verification-form input[type="text"],
	.cbekm-verification-form button {
		height: 58px;
	}

	.cbekm-result-header {
		display: block;
	}

	.cbekm-badge {
		height: 72px;
		margin-bottom: 12px;
		width: 72px;
	}

	.cbekm-result-header h3 {
		font-size: 24px;
	}

	.cbekm-detail-row {
		gap: 10px;
		grid-template-columns: 24px 1fr;
	}

	.cbekm-row-value {
		grid-column: 2;
	}
}