/* HacerPerú Blocks - yt-feed (formato vertical) */
.hpb-yt {
	--hpb-yt-avatar: 72px;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: var(--hpb-card-bg);
	border: 1px solid var(--hpb-card-border);
	box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

/* Portada */
.hpb-yt__banner {
	position: relative;
	display: block;
	flex: none;
	height: 110px;
	overflow: hidden;
	background: #d9d9d9;
}
.hpb-block .hpb-yt__banner img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	margin: 0;
	object-fit: cover;
	object-position: center center;
}

/* Perfil */
.hpb-yt__profile {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	flex: none;
	padding: 12px 14px 0;
}
.hpb-yt__profile--over { padding-top: 0; }
.hpb-yt__avatar-link { flex: none; position: relative; z-index: 2; display: block; }
.hpb-yt__profile--over .hpb-yt__avatar-link { margin-top: calc(var(--hpb-yt-avatar) / -2); }
.hpb-block .hpb-yt__avatar {
	display: block;
	width: var(--hpb-yt-avatar);
	height: var(--hpb-yt-avatar);
	max-width: none;
	margin: 0;
	border: 3px solid var(--hpb-card-bg);
	border-radius: 50%;
	background: #fff;
	object-fit: cover;
}
.hpb-yt__id {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}
.hpb-yt__profile--over .hpb-yt__id { padding-top: 8px; }
.hpb-block a.hpb-yt__name {
	color: var(--hpb-text);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.25;
	overflow-wrap: anywhere;
}
.hpb-yt__handle {
	color: #6b6b6b;
	font-size: 13px;
	line-height: 1.3;
}

/* Estadísticas y botón */
.hpb-yt__stats {
	display: flex;
	flex-wrap: wrap;
	flex: none;
	gap: 4px 14px;
	padding: 10px 14px 0;
	color: #555;
	font-size: 12px;
	line-height: 1.4;
}
.hpb-yt__stats strong { color: var(--hpb-text); }
.hpb-block a.hpb-yt__subscribe {
	display: inline-block;
	align-self: flex-start;
	flex: none;
	margin: 12px 14px 0;
	padding: 8px 18px;
	background: var(--hpb-accent);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.3;
}
.hpb-block a.hpb-yt__subscribe:hover { opacity: .9; }
.hpb-yt--fallback .hpb-yt__subscribe { margin: 0 0 12px; }
.hpb-yt__notice {
	margin: 0 0 10px;
	padding: 10px 12px;
	border-left: 4px solid var(--hpb-accent);
	background: #fff6f6;
	font-size: 13px;
	line-height: 1.5;
	color: #3a3a3a;
}

/* Videos */
.hpb-yt__heading {
	flex: none;
	margin: 16px 14px 8px;
	padding: 0 0 6px;
	border-bottom: 2px solid var(--hpb-line);
	color: var(--hpb-text);
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
}
.hpb-yt__videos {
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-height: 0;
	padding: 4px 14px 14px;
}
.hpb-yt__video {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}
.hpb-yt__thumb {
	position: relative;
	flex: 0 0 118px;
	width: 118px;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	background: #e6e6e6;
}
.hpb-block .hpb-yt__thumb img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	max-height: none;
	margin: 0;
	object-fit: cover;
}
.hpb-yt__dur {
	position: absolute;
	right: 4px;
	bottom: 4px;
	z-index: 2;
	padding: 1px 5px;
	border-radius: 3px;
	background: rgba(0,0,0,.8);
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.5;
}
.hpb-yt__dur--live { background: #cc0000; }
.hpb-yt__vbody {
	position: relative;
	z-index: 2;
	flex: 1;
	min-width: 0;
	pointer-events: none;
}
.hpb-yt__vbody a { pointer-events: auto; }
.hpb-yt__vtitle {
	display: -webkit-box;
	margin: 0 0 4px;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	color: var(--hpb-text);
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
}
.hpb-yt__vtitle a:hover { color: var(--hpb-accent); }
.hpb-yt__vmeta {
	display: block;
	color: #6b6b6b;
	font-size: 12px;
	line-height: 1.4;
}

/* Diseño tarjetas: miniatura arriba */
.hpb-yt--cards .hpb-yt__video { flex-direction: column; gap: 8px; }
.hpb-yt--cards .hpb-yt__thumb { flex: none; width: 100%; }
.hpb-yt--cards .hpb-yt__vbody { width: 100%; }
