.lse-shorts {
	display: grid;
	grid-template-columns: repeat(var(--lse-columns, 3), minmax(0, 1fr));
	gap: 18px;
}

.lse-shorts--homepage-strip .lse-short-card {
	gap: 0;
}

.lse-short-card {
	display: flex;
	flex-direction: column;
	gap: 10px;
	min-width: 0;
}

.lse-short-link,
.lse-short-embed {
	aspect-ratio: var(--lse-aspect-ratio, 9 / 16);
	background: #111;
	border-radius: 8px;
	display: block;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.lse-short-link img {
	height: 100%;
	object-fit: cover;
	transition: transform 180ms ease, filter 180ms ease;
	width: 100%;
}

.lse-short-link:hover img,
.lse-short-link:focus-visible img {
	filter: brightness(0.82);
	transform: scale(1.035);
}

.lse-short-embed,
.lse-playlist-embed iframe {
	border: 0;
}

.lse-play {
	--lse-play-size: 48px;
	background: rgba(255, 255, 255, 0.92);
	border-radius: 999px;
	height: var(--lse-play-size);
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: var(--lse-play-size);
}

.lse-play::before {
	border-bottom: calc(var(--lse-play-size) * 0.21) solid transparent;
	border-left: calc(var(--lse-play-size) * 0.31) solid #111;
	border-top: calc(var(--lse-play-size) * 0.21) solid transparent;
	content: "";
	left: 52%;
	position: absolute;
	top: 50%;
	transform: translate(-40%, -50%);
}

.lse-short-title {
	color: inherit;
	font-size: 16px;
	line-height: 1.3;
	margin: 0;
	overflow-wrap: anywhere;
}

.lse-short-button {
	align-self: flex-start;
	border: 1px solid currentColor;
	border-radius: 6px;
	color: inherit;
	display: inline-flex;
	font-size: 14px;
	line-height: 1;
	padding: 10px 12px;
	text-decoration: none;
}

.lse-short-button:hover,
.lse-short-button:focus-visible {
	text-decoration: underline;
}

.lse-playlist-embed {
	aspect-ratio: 16 / 9;
	background: #111;
	border-radius: 8px;
	overflow: hidden;
	width: 100%;
}

.lse-playlist-embed iframe {
	height: 100%;
	width: 100%;
}

.lse-notice {
	background: #fff8e5;
	border-left: 4px solid #d59600;
	color: #302204;
	padding: 12px 14px;
}

.lse-lightbox {
	align-items: center;
	background: rgba(0, 0, 0, 0.78);
	display: none;
	inset: 0;
	justify-content: center;
	padding: 24px;
	position: fixed;
	z-index: 99999;
}

.lse-lightbox.is-open {
	display: flex;
}

.lse-lightbox__frame {
	aspect-ratio: 9 / 16;
	background: #000;
	border-radius: 8px;
	max-height: min(86vh, 900px);
	max-width: min(92vw, 520px);
	overflow: hidden;
	position: relative;
	width: 100%;
}

.lse-lightbox iframe {
	border: 0;
	height: 100%;
	width: 100%;
}

.lse-lightbox__close {
	align-items: center;
	background: #fff;
	border: 0;
	border-radius: 999px;
	color: #111;
	cursor: pointer;
	display: flex;
	font-size: 28px;
	height: 42px;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 12px;
	top: 12px;
	width: 42px;
	z-index: 2;
}

@media (max-width: 767px) {
	.lse-shorts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
	}
}

@media (max-width: 480px) {
	.lse-shorts {
		grid-template-columns: minmax(0, 1fr);
	}
}
