.wpym-grid {
	display: grid !important;
	grid-template-columns: repeat(var(--wpym-columns, 3), minmax(0, 1fr)) !important;
	gap: 20px;
	margin: 1.5em 0;
	list-style: none;
	padding: 0;
}

@media (max-width: 782px) {
	.wpym-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 480px) {
	.wpym-grid {
		grid-template-columns: 1fr !important;
	}
}

.wpym-video-card {
	display: flex;
	flex-direction: column;
	background: transparent;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 8px;
	overflow: hidden;
	box-shadow: none;
	min-width: 0;
}

.wpym-video-thumb {
	position: relative;
	cursor: pointer;
	aspect-ratio: 16 / 9;
	background: #000;
	overflow: hidden;
}

.wpym-video-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.2s ease;
}

.wpym-video-thumb:hover img {
	transform: scale(1.03);
}

.wpym-video-thumb iframe {
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
}

.wpym-play-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 56px;
	height: 56px;
	line-height: 56px;
	text-align: center;
	background: rgba(0, 0, 0, 0.65);
	color: #fff;
	border-radius: 50%;
	font-size: 20px;
	padding-left: 4px;
	box-sizing: border-box;
}

.wpym-video-meta {
	padding: 10px 12px 14px;
}

.wpym-video-title {
	display: block;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	margin-bottom: 6px;
	color: inherit;
}

.wpym-video-title:hover {
	text-decoration: underline;
}

.wpym-video-sub {
	display: flex;
	justify-content: space-between;
	font-size: 0.85em;
	opacity: 0.7;
	gap: 8px;
}

.wpym-stats-table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.5em 0;
}

.wpym-stats-table th,
.wpym-stats-table td {
	text-align: left;
	padding: 10px 12px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.wpym-stats-table th {
	font-weight: 700;
	border-bottom-width: 2px;
}

.wpym-stats-channel {
	display: flex;
	align-items: center;
	gap: 8px;
}

.wpym-stats-avatar {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	object-fit: cover;
}

.wpym-notice {
	padding: 12px 16px;
	background: #fff8e5;
	border-left: 4px solid #dba617;
}

.wpym-stats-errors {
	font-size: 0.85em;
	opacity: 0.75;
}
