.dating-engine-profiles {
	--de-profiles-button: var(--de-profiles-button-color);
	--de-profiles-button-hover: var(--de-profiles-button-hover-color);
	color: var(--de-text, #172033);
}

.dating-engine-profiles *,
.dating-engine-profiles *::before,
.dating-engine-profiles *::after {
	box-sizing: border-box;
}

.dating-engine-profiles .dating-engine-profiles__result-count {
	margin: 0 0 18px !important;
	font-size: 0.98rem;
	font-weight: 800;
	color: var(--de-muted, #657287);
}

.dating-engine-profiles .dating-engine-profiles__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-auto-rows: 1fr;
	gap: 28px;
	align-items: stretch;
}

.dating-engine-profiles .dating-engine-profiles__card {
	display: flex;
	flex-direction: column;
	height: 100%;
	min-height: 535px;
	overflow: hidden;
	background: var(--de-surface, #ffffff);
	border: 1px solid var(--de-border, rgba(218, 224, 235, 0.95));
	border-radius: 8px;
	box-shadow: 0 14px 34px rgba(17, 24, 39, 0.08);
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.dating-engine-profiles .dating-engine-profiles__card:hover,
.dating-engine-profiles .dating-engine-profiles__card:focus-within {
	border-color: var(--de-border, rgba(218, 224, 235, 1));
	box-shadow: 0 22px 48px rgba(17, 24, 39, 0.13);
	transform: translateY(-3px);
}

.dating-engine-profiles .dating-engine-profiles__media {
	display: block;
	position: relative;
	flex: 0 0 auto;
	width: 100%;
	height: 350px;
	overflow: hidden;
	background: var(--de-surface-alt, #eef2f7);
	text-decoration: none;
}

.dating-engine-profiles .dating-engine-profiles__media::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 38%;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(20, 25, 38, 0), rgba(20, 25, 38, 0.28));
	opacity: 0;
	transition: opacity 0.22s ease;
}

.dating-engine-profiles .dating-engine-profiles__media:hover::after,
.dating-engine-profiles .dating-engine-profiles__media:focus::after {
	opacity: 1;
}

.dating-engine-profiles .dating-engine-profiles__photo {
	display: block;
	width: 100% !important;
	height: 350px !important;
	max-width: none !important;
	object-fit: cover !important;
	object-position: center 24% !important;
	transition: transform 0.26s ease;
}

.dating-engine-profiles .dating-engine-profiles__media:hover .dating-engine-profiles__photo,
.dating-engine-profiles .dating-engine-profiles__media:focus .dating-engine-profiles__photo {
	transform: scale(1.025);
}

.dating-engine-profiles .dating-engine-profiles__photo--placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 64px;
	background: linear-gradient(135deg, #f7f8fb, #e5eaf1);
}
.dating-engine-profiles__photo--placeholder svg { width: 100%; height: 100%; }
.dating-engine-profile-avatar__halo { fill: rgba(255,255,255,.55); }
.dating-engine-profile-avatar__head, .dating-engine-profile-avatar__body { fill: #aab4c3; }

.dating-engine-profiles .dating-engine-profiles__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-height: 185px;
	padding: 20px 22px 22px;
}

.dating-engine-profiles .dating-engine-profiles__name {
	margin: 0 0 10px !important;
	font-size: 1.45rem !important;
	font-weight: 800 !important;
	line-height: 1.14 !important;
	letter-spacing: 0;
	color: var(--de-profiles-button) !important;
}

.dating-engine-profiles .dating-engine-profiles__name a {
	color: inherit !important;
	text-decoration: none !important;
}

.dating-engine-profiles .dating-engine-profiles__name a:hover,
.dating-engine-profiles .dating-engine-profiles__name a:focus {
	color: var(--de-profiles-button-hover) !important;
	text-decoration: none !important;
}

.dating-engine-profiles .dating-engine-profiles__meta {
	margin: 3px 0 !important;
	color: var(--de-muted, #657287) !important;
	font-size: 1rem !important;
	font-weight: 500 !important;
	line-height: 1.42 !important;
}

.dating-engine-profiles .dating-engine-profiles__search {
	margin: 12px 0 0 !important;
	color: var(--de-muted, #8a94a6) !important;
	font-size: 0.88rem !important;
	font-weight: 400 !important;
	line-height: 1.4 !important;
}

.dating-engine-profiles .dating-engine-profiles__action {
	margin: auto 0 0 !important;
	padding-top: 18px !important;
}

.dating-engine-profiles .dating-engine-profiles__action a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	min-height: 34px !important;
	padding: 7px 13px !important;
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	color: var(--de-profiles-button) !important;
	background: var(--de-field, #ffffff) !important;
	border: 1px solid rgba(222, 86, 126, 0.5) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	text-decoration: none !important;
	transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.dating-engine-profiles .dating-engine-profiles__action a:hover,
.dating-engine-profiles .dating-engine-profiles__action a:focus {
	color: #ffffff !important;
	background: var(--de-profiles-button-hover) !important;
	border-color: var(--de-profiles-button-hover) !important;
	text-decoration: none !important;
	transform: translateY(-1px);
}

.dating-engine-profiles .dating-engine-profiles__empty {
	padding: 22px;
	color: var(--de-muted, #657287);
	background: var(--de-field, #ffffff);
	border: 1px solid #dfe5ef;
	border-radius: 8px;
}

.dating-engine-profiles .dating-engine-profiles__pagination {
	margin-top: 34px;
}

.dating-engine-profiles .dating-engine-profiles__pagination ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0;
	margin: 0;
	list-style: none;
}

.dating-engine-profiles .dating-engine-profiles__pagination a,
.dating-engine-profiles .dating-engine-profiles__pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	padding: 6px 10px;
	color: var(--de-muted, #657287);
	background: var(--de-field, #ffffff);
	border: 1px solid #dfe5ef;
	border-radius: 6px;
	text-decoration: none;
}

.dating-engine-profiles .dating-engine-profiles__pagination a:hover,
.dating-engine-profiles .dating-engine-profiles__pagination a:focus {
	color: var(--de-profiles-button-hover);
	border-color: var(--de-profiles-button-hover);
}

.dating-engine-profiles .dating-engine-profiles__pagination .current {
	color: #ffffff;
	background: var(--de-profiles-button);
	border-color: var(--de-profiles-button);
}

@media (max-width: 1024px) {
	.dating-engine-profiles .dating-engine-profiles__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 26px;
	}

	.dating-engine-profiles .dating-engine-profiles__media,
	.dating-engine-profiles .dating-engine-profiles__photo {
		height: 340px !important;
	}
}

@media (max-width: 640px) {
	.dating-engine-profiles .dating-engine-profiles__grid {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.dating-engine-profiles .dating-engine-profiles__card {
		min-height: 0;
	}

	.dating-engine-profiles .dating-engine-profiles__media,
	.dating-engine-profiles .dating-engine-profiles__photo {
		height: clamp(320px, 92vw, 420px) !important;
	}

	.dating-engine-profiles .dating-engine-profiles__body {
		padding: 20px;
	}
}
