/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   YouTube Shorts フィード
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* ━━━ セクションヘッダー ━━━ */
.yt-shorts-section .section-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 1rem;
}
.yt-shorts-section__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #FF0000;
	background: #FFEBEB !important;
}
.yt-shorts-section__more {
	font-size: .8rem;
	font-weight: 700;
	color: #FF0000;
	text-decoration: none;
	white-space: nowrap;
	transition: opacity .15s;
}
.yt-shorts-section__more:hover { opacity: .7; }

/* ━━━ グリッドフィード ━━━ */
.yt-shorts-feed {
	display: grid;
	grid-template-columns: repeat( 6, 1fr );
	gap: 1rem;
}

/* ━━━ Shorts カード ━━━ */
.yt-shorts-card {
	text-decoration: none;
	color: var( --c-text );
	display: flex;
	flex-direction: column;
	gap: .5rem;
	transition: transform .2s;
}
.yt-shorts-card:hover {
	transform: translateY( -4px );
}

/* ━━━ サムネイルラッパー（9:16） ━━━ */
.yt-shorts-card__thumb-wrap {
	position: relative;
	aspect-ratio: 9 / 16;
	border-radius: 14px;
	overflow: hidden;
	background: #111;
	box-shadow: 0 4px 16px rgba( 0,0,0,.15 );
}
.yt-shorts-card__thumb {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s;
}
.yt-shorts-card:hover .yt-shorts-card__thumb {
	transform: scale( 1.04 );
}

/* ━━━ 再生ボタンオーバーレイ ━━━ */
.yt-shorts-card__play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba( 0,0,0,.28 );
	opacity: 0;
	transition: opacity .2s;
}
.yt-shorts-card:hover .yt-shorts-card__play {
	opacity: 1;
}
.yt-shorts-card__play svg {
	filter: drop-shadow( 0 2px 6px rgba(0,0,0,.5) );
}

/* ━━━ Shorts バッジ ━━━ */
.yt-shorts-card__badge {
	position: absolute;
	bottom: .5rem;
	left: .5rem;
	display: inline-flex;
	align-items: center;
	gap: .25rem;
	background: #FF0000;
	color: #fff;
	font-size: .62rem;
	font-weight: 800;
	letter-spacing: .04em;
	padding: .2rem .5rem;
	border-radius: 999px;
}

/* ━━━ タイトル ━━━ */
.yt-shorts-card__title {
	font-size: .78rem;
	font-weight: 600;
	line-height: 1.45;
	color: var( --c-text );
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin: 0;
}


/* ━━━ レスポンシブ ━━━ */
@media ( max-width: 1024px ) {
	.yt-shorts-feed { grid-template-columns: repeat( 4, 1fr ); }
}
@media ( max-width: 640px ) {
	.yt-shorts-feed { grid-template-columns: repeat( 3, 1fr ); gap: .6rem; }
}
