.selah-podcast {
	--selah-container-gap: 18px;
	--selah-tagline-color: inherit;
	--selah-heading-color: inherit;
	--selah-intro-color: inherit;
	--selah-hero-gap: 24px;
	--selah-hero-content-gap: 10px;
	--selah-hero-cover-width: 34%;
	--selah-hero-cover-ratio: 1 / 1;
	--selah-hero-cover-fit: cover;
	--selah-hero-cover-radius: 12px;
	--selah-hero-source-color: inherit;
	--selah-hero-title-color: inherit;
	--selah-hero-meta-color: inherit;
	--selah-hero-description-color: inherit;
	--selah-list-columns: 3;
	--selah-list-gap: 14px;
	--selah-list-card-gap: 20px;
	--selah-list-content-gap: 10px;
	--selah-list-cover-width: 160px;
	--selah-list-cover-ratio: 1 / 1;
	--selah-list-cover-fit: cover;
	--selah-list-cover-radius: 12px;
	--selah-list-source-color: inherit;
	--selah-list-title-color: inherit;
	--selah-list-meta-color: inherit;
	--selah-list-description-color: inherit;
	--selah-player-width: 100%;
	--selah-button-color: inherit;
	--selah-button-bg: transparent;
	--selah-button-hover-color: inherit;
	--selah-button-hover-bg: rgba(0, 0, 0, 0.06);
	--selah-button-radius: 8px;
	--selah-button-padding: 8px 12px;
	--selah-button-gap: 10px;
	--selah-chapters-color: inherit;
	--selah-chapters-hover-color: inherit;
	--selah-chapters-gap: 4px;
	box-sizing: border-box;
	padding: 32px;
	border-radius: 20px;
	background: #f7f7f8;
}

.selah-podcast *,
.selah-podcast *::before,
.selah-podcast *::after {
	box-sizing: inherit;
}

.selah-podcast__inner {
	display: grid;
	gap: var(--selah-container-gap);
}

.selah-podcast__tagline,
.selah-podcast__heading,
.selah-podcast__intro,
.selah-episode__source,
.selah-episode__title,
.selah-episode__meta,
.selah-episode__description {
	margin: 0;
}

.selah-podcast__tagline {
	color: var(--selah-tagline-color);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.72;
}

.selah-podcast__heading {
	color: var(--selah-heading-color);
}

.selah-podcast__intro {
	color: var(--selah-intro-color);
}

.selah-podcast__intro > :first-child,
.selah-episode__description > :first-child {
	margin-top: 0;
}

.selah-podcast__intro > :last-child,
.selah-episode__description > :last-child {
	margin-bottom: 0;
}

.selah-podcast__notice,
.selah-podcast__cache-note {
	display: grid;
	gap: 6px;
	padding: 18px;
	border: 1px dashed currentColor;
	border-radius: 12px;
	opacity: 0.82;
}

.selah-podcast__cache-note {
	font-size: 0.9rem;
}

.selah-podcast__hero {
	display: grid;
}

.selah-podcast__episode-list {
	display: grid;
	gap: var(--selah-list-gap);
}

.selah-podcast__episode-list--grid {
	grid-template-columns: repeat(var(--selah-list-columns), minmax(0, 1fr));
}

.selah-episode {
	display: grid;
	align-items: start;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.82);
}

.selah-episode--hero {
	grid-template-columns: var(--selah-hero-cover-width) minmax(0, 1fr);
	gap: var(--selah-hero-gap);
	padding: 24px;
}

.selah-episode--list {
	grid-template-columns: var(--selah-list-cover-width) minmax(0, 1fr);
	gap: var(--selah-list-card-gap);
	padding: 18px;
}

.selah-episode--hero.selah-episode--image-right {
	grid-template-columns: minmax(0, 1fr) var(--selah-hero-cover-width);
}

.selah-episode--list.selah-episode--image-right {
	grid-template-columns: minmax(0, 1fr) var(--selah-list-cover-width);
}

.selah-episode--image-right .selah-episode__cover {
	order: 2;
}

.selah-episode--image-right .selah-episode__content {
	order: 1;
}

.selah-episode--image-top,
.selah-episode--no-cover {
	grid-template-columns: minmax(0, 1fr);
}

.selah-episode--image-top .selah-episode__cover {
	width: 100%;
	max-width: 100%;
}

.selah-episode--hero .selah-episode__cover {
	width: var(--selah-hero-cover-width);
	max-width: 100%;
	aspect-ratio: var(--selah-hero-cover-ratio);
	border-radius: var(--selah-hero-cover-radius);
}

.selah-episode--hero:not(.selah-episode--image-top) .selah-episode__cover {
	width: 100%;
}

.selah-episode--list .selah-episode__cover {
	width: var(--selah-list-cover-width);
	max-width: 100%;
	aspect-ratio: var(--selah-list-cover-ratio);
	border-radius: var(--selah-list-cover-radius);
}

.selah-episode--list:not(.selah-episode--image-top) .selah-episode__cover {
	width: 100%;
}

.selah-episode__cover {
	overflow: hidden;
	background: #ececf0;
}

.selah-episode__cover img {
	display: block;
	width: 100%;
	height: 100%;
}

.selah-episode--hero .selah-episode__cover img {
	object-fit: var(--selah-hero-cover-fit);
}

.selah-episode--list .selah-episode__cover img {
	object-fit: var(--selah-list-cover-fit);
}

.selah-episode__content {
	display: grid;
	min-width: 0;
}

.selah-episode--hero .selah-episode__content {
	gap: var(--selah-hero-content-gap);
}

.selah-episode--list .selah-episode__content {
	gap: var(--selah-list-content-gap);
}

.selah-episode__source {
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	opacity: 0.72;
}

.selah-episode--hero .selah-episode__source {
	color: var(--selah-hero-source-color);
}

.selah-episode--list .selah-episode__source {
	color: var(--selah-list-source-color);
}

.selah-episode__title {
	font-size: clamp(1.05rem, 2vw, 1.35rem);
	line-height: 1.25;
}

.selah-episode--hero .selah-episode__title {
	color: var(--selah-hero-title-color);
	font-size: clamp(1.35rem, 3vw, 2rem);
}

.selah-episode--list .selah-episode__title {
	color: var(--selah-list-title-color);
}

.selah-episode__meta {
	font-size: 0.9rem;
	opacity: 0.72;
}

.selah-episode--hero .selah-episode__meta {
	color: var(--selah-hero-meta-color);
}

.selah-episode--list .selah-episode__meta {
	color: var(--selah-list-meta-color);
}

.selah-episode--hero .selah-episode__description {
	color: var(--selah-hero-description-color);
}

.selah-episode--list .selah-episode__description {
	color: var(--selah-list-description-color);
}

.selah-episode__player {
	width: var(--selah-player-width);
	max-width: 100%;
}

.selah-episode__audio {
	display: block;
	width: 100%;
	min-width: 0;
}

.selah-podcast__subscriptions,
.selah-episode__transcripts {
	display: flex;
	flex-wrap: wrap;
	gap: var(--selah-button-gap);
}

.selah-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: fit-content;
	padding: var(--selah-button-padding);
	border-radius: var(--selah-button-radius);
	background: var(--selah-button-bg);
	color: var(--selah-button-color);
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.selah-button:hover,
.selah-button:focus-visible {
	background: var(--selah-button-hover-bg);
	color: var(--selah-button-hover-color);
}

.selah-episode__chapters {
	color: var(--selah-chapters-color);
	padding: 10px 12px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 10px;
}

.selah-episode__chapters summary {
	cursor: pointer;
	font-weight: 700;
}

.selah-episode__chapters ol {
	display: grid;
	gap: var(--selah-chapters-gap);
	margin: 10px 0 0;
	padding-inline-start: 22px;
}

.selah-chapter-jump {
	display: inline-flex;
	gap: 8px;
	align-items: baseline;
	padding: 4px 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: start;
	cursor: pointer;
}

.selah-chapter-jump:hover,
.selah-chapter-jump:focus-visible {
	color: var(--selah-chapters-hover-color);
}

.selah-chapter-jump span {
	font-variant-numeric: tabular-nums;
	opacity: 0.65;
}

.selah-podcast :focus-visible {
	outline: 3px solid currentColor;
	outline-offset: 3px;
}

@media (max-width: 767px) {
	.selah-podcast {
		padding: 20px;
	}

	.selah-episode--hero,
	.selah-episode--list {
		grid-template-columns: minmax(88px, 30%) minmax(0, 1fr);
	}

	.selah-episode--hero.selah-episode--image-right,
	.selah-episode--list.selah-episode--image-right {
		grid-template-columns: minmax(0, 1fr) minmax(88px, 30%);
	}

	.selah-episode--image-top,
	.selah-episode--no-cover,
	.selah-podcast__episode-list--grid .selah-episode--list {
		grid-template-columns: minmax(0, 1fr);
	}

	.selah-podcast__episode-list--grid .selah-episode__cover {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.selah-episode--hero,
	.selah-episode--list,
	.selah-episode--hero.selah-episode--image-right,
	.selah-episode--list.selah-episode--image-right {
		grid-template-columns: minmax(0, 1fr);
	}

	.selah-episode--image-right .selah-episode__cover,
	.selah-episode--image-right .selah-episode__content {
		order: initial;
	}

	.selah-episode__cover {
		max-width: 100%;
	}
}
