.rfzj_video_card {
	display: flex;
	overflow: hidden;
	flex-direction: column;
	width: 100%;
	max-width: 420px;
	border: 1px solid var(--rfzj_color_border);
	border-radius: 18px;
	background: var(--rfzj_color_panel);
	box-shadow: 0 12px 28px rgba(0, 0, 0, .06);
	transition: border-color var(--rfzj_transition), box-shadow var(--rfzj_transition), transform var(--rfzj_transition);
}

.rfzj_video_card:hover {
	border-color: rgba(0, 0, 0, .14);
	box-shadow: 0 18px 36px rgba(0, 0, 0, .1);
	transform: translateY(-2px);
}

.rfzj_video_card__media {
	position: relative;
	display: block;
	overflow: hidden;
	aspect-ratio: 16 / 9;
	background: #f5f5f7;
	text-decoration: none;
}

.rfzj_video_card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform var(--rfzj_transition);
}

.rfzj_video_card:hover .rfzj_video_card__media img {
	transform: scale(1.025);
}

.rfzj_video_card__play {
	position: absolute;
	top: 50%;
	left: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .9);
	box-shadow: 0 12px 26px rgba(0, 0, 0, .18);
	transform: translate(-50%, -50%);
}

.rfzj_video_card__play::before {
	width: 0;
	height: 0;
	margin-left: 4px;
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	border-left: 16px solid var(--rfzj_color_blue);
	content: "";
}

.rfzj_video_card__duration {
	position: absolute;
	right: 12px;
	bottom: 12px;
	height: 24px;
	padding: 0 8px;
	border-radius: 999px;
	background: rgba(0, 0, 0, .62);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	line-height: 24px;
}

.rfzj_video_card__body {
	display: grid;
	gap: 9px;
	padding: 16px;
}

.rfzj_video_card__title {
	display: -webkit-box;
	overflow: hidden;
	min-height: 46px;
	color: var(--rfzj_color_text);
	font-size: 17px;
	font-weight: 800;
	line-height: 1.35;
	text-decoration: none;
	text-overflow: ellipsis;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.rfzj_video_card__title:hover,
.rfzj_video_card__title:focus {
	color: var(--rfzj_color_text);
	text-decoration: none;
}

.rfzj_video_card__meta {
	display: flex;
	min-width: 0;
	gap: 8px;
	color: var(--rfzj_color_subtle);
	font-size: 13px;
	line-height: 1.35;
}

.rfzj_video_card__meta span,
.rfzj_video_card__meta time {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.rfzj_video_card__meta time::before {
	margin-right: 8px;
	content: "/";
	opacity: .55;
}

.rfzj_video_card__cta {
	justify-self: start;
}

@media (max-width: 640px) {
	.rfzj_video_card {
		max-width: none;
		border-radius: 16px;
	}
}
