/**
 * Vandadcast public (RTL-friendly, theme-agnostic baseline).
 *
 * @package Vandadcast
 */

.vandadcast {
	color: var(--vc-color-text, CanvasText);
	background: var(--vc-color-bg, Canvas);
}

.vandadcast-page-header {
	margin-block-end: 1.75rem;
	padding-block-end: 1.25rem;
	border-block-end: var(--vandadcast-border);
}

.vandadcast-page-header__title {
	margin: 0 0 0.5rem;
	font-size: clamp(1.5rem, 2.2vw, 2rem);
	line-height: 1.25;
}

.vandadcast-page-header__desc {
	max-width: 60ch;
	opacity: 0.92;
}

.vandadcast-card-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.vandadcast-card {
	margin: 0;
}

.vandadcast-card__link {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	height: 100%;
	padding: 1rem;
	border-radius: var(--vandadcast-radius);
	border: var(--vandadcast-border);
	background: var(--vandadcast-surface);
	text-decoration: none;
	color: inherit;
	transition: transform 0.12s ease, box-shadow 0.12s ease, border-color 0.12s ease;
}

.vandadcast-card__link:hover,
.vandadcast-card__link:focus-visible {
	transform: translateY(-2px);
	box-shadow: 0 10px 30px color-mix(in srgb, CanvasText 12%, transparent);
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 55%, transparent);
	outline: none;
}

.vandadcast-card__title {
	font-weight: 700;
	font-size: 1.05rem;
}

.vandadcast-card__meta {
	font-size: 0.9rem;
	opacity: 0.8;
}

.vandadcast-card__excerpt {
	font-size: 0.92rem;
	opacity: 0.85;
	line-height: 1.45;
}

.vandadcast-home__title {
	margin: 0 0 1rem;
}

.vandadcast-home__section {
	margin-block-end: 2.25rem;
}

.vandadcast-home__section-title {
	margin: 0 0 0.75rem;
	font-size: 1.15rem;
}

.vandadcast-episode-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

/* Episode row 2.0 (A1) â€” see assets/css/episode-row.css */

.vandadcast-single__header {
	margin-block-end: 1rem;
}

.vandadcast-single__title {
	margin: 0 0 0.5rem;
	font-size: clamp(1.45rem, 2.2vw, 2rem);
}

.vandadcast-single__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
}

.vandadcast-single__cover {
	margin-block: 1rem;
	border-radius: var(--vandadcast-radius);
	overflow: hidden;
	border: var(--vandadcast-border);
}

.vandadcast-single__cover img {
	display: block;
	width: 100%;
	height: auto;
}

.vandadcast-single__player-hint {
	margin-block: 0.75rem 1rem;
	padding: 0.65rem 0.85rem;
	border-radius: var(--vandadcast-radius);
	border: var(--vandadcast-border);
	background: var(--vandadcast-surface);
	font-size: 0.95rem;
}

.vandadcast-single__content {
	margin-block-start: 1rem;
}

.vandadcast-single__download {
	margin-block-start: 1.25rem;
}

.vandadcast-footer-note {
	margin: 2rem auto 0;
	max-width: 70ch;
	padding: 0.75rem 1rem;
	text-align: center;
	font-size: 0.92rem;
	opacity: 0.85;
	border-top: var(--vandadcast-border);
}

/* Sticky player â€” mini / expanded (mobile-first, native controls on desktop) */
#vandadcast-sticky-root {
	--vc-player-h-mini: 3.5rem;
	--vc-player-h-expanded: min(45vh, 320px);
	--vc-safe-bottom: env(safe-area-inset-bottom, 0px);
	position: fixed;
	inset-inline: 0;
	inset-block-end: 0;
	z-index: var(--vc-z-player, 100050);
	isolation: isolate;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	transform: translate3d(0, calc(100% + 24px), 0);
	visibility: hidden;
	transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.28s ease;
	padding-inline: max(0.5rem, env(safe-area-inset-left, 0px)) max(0.5rem, env(safe-area-inset-right, 0px));
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

#vandadcast-sticky-root.is-reduced-motion {
	transition: none;
}

#vandadcast-sticky-root.is-visible {
	transform: translate3d(0, 0, 0);
	visibility: visible;
	pointer-events: auto;
	box-shadow: 0 -8px 32px color-mix(in srgb, CanvasText 12%, transparent);
}

body.vandadcast-player-on {
	padding-block-end: calc(var(--vc-player-h-mini, 3.5rem) + var(--vc-safe-bottom, 0px) + 0.75rem);
	scroll-padding-bottom: calc(var(--vc-player-h-mini, 3.5rem) + var(--vc-safe-bottom, 0px) + 1rem);
}

body.vandadcast-player-expanded {
	padding-block-end: calc(var(--vc-player-h-mini, 3.5rem) + var(--vc-player-h-expanded, 320px) + var(--vc-safe-bottom, 0px) + 0.75rem);
	scroll-padding-bottom: calc(var(--vc-player-h-mini, 3.5rem) + var(--vc-player-h-expanded, 320px) + var(--vc-safe-bottom, 0px) + 1rem);
}

.vandadcast-sticky__expand-panel {
	position: relative;
	max-height: 0;
	overflow: hidden;
	opacity: 0;
	background: color-mix(in srgb, Canvas 94%, CanvasText 4%);
	border-block-start: var(--vandadcast-border);
	border-start-start-radius: 16px;
	border-start-end-radius: 16px;
	transition: max-height 0.32s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.24s ease;
	padding-inline: 1rem;
}

#vandadcast-sticky-root.is-expanded .vandadcast-sticky__expand-panel {
	max-height: var(--vc-player-h-expanded, 320px);
	opacity: 1;
	padding-block: 0.65rem 0.85rem;
}

#vandadcast-sticky-root.is-reduced-motion.is-expanded .vandadcast-sticky__expand-panel {
	transition: none;
}

.vandadcast-sticky__expand-panel[hidden] {
	display: block;
	max-height: 0;
	opacity: 0;
	padding-block: 0;
}

#vandadcast-sticky-root.is-expanded .vandadcast-sticky__expand-panel[hidden] {
	display: block;
}

.vandadcast-sticky__handle {
	width: 2.5rem;
	height: 4px;
	margin: 0.35rem auto 0.65rem;
	border-radius: 999px;
	background: color-mix(in srgb, CanvasText 22%, transparent);
}

.vandadcast-sticky__collapse {
	position: absolute;
	inset-block-start: 0.45rem;
	inset-inline-end: 0.65rem;
	width: 2.75rem;
	height: 2.75rem;
	min-width: 44px;
	min-height: 44px;
	border: 0;
	border-radius: 999px;
	background: color-mix(in srgb, CanvasText 8%, transparent);
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
	color: inherit;
}

.vandadcast-sticky__expand-art {
	display: flex;
	justify-content: center;
	margin-block-end: 0.65rem;
}

.vandadcast-sticky__expand-art img {
	width: 120px;
	height: 120px;
	border-radius: 14px;
	object-fit: cover;
	border: var(--vandadcast-border);
}

.vandadcast-sticky__expand-title {
	margin: 0 0 0.75rem;
	text-align: center;
	font-weight: 700;
	font-size: 1rem;
	line-height: 1.35;
	padding-inline: 1.5rem;
}

.vandadcast-sticky__seek-wrap {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	margin-block-end: 0.75rem;
}

.vandadcast-sticky__time {
	flex: 0 0 auto;
	font-size: 0.78rem;
	font-variant-numeric: tabular-nums;
	opacity: 0.85;
	min-width: 2.5rem;
}

.vandadcast-sticky__seek {
	flex: 1 1 auto;
	min-width: 0;
	height: 2.75rem;
	min-height: 44px;
	margin: 0;
	accent-color: var(--vandadcast-player-primary);
	cursor: pointer;
}

.vandadcast-sticky__expand-controls {
	display: flex;
	justify-content: center;
}

.vandadcast-sticky__mini {
	background: color-mix(in srgb, Canvas 92%, CanvasText 5%);
	backdrop-filter: blur(14px) saturate(1.2);
	-webkit-backdrop-filter: blur(14px) saturate(1.2);
	border-block-start: var(--vandadcast-border);
	padding-block-end: var(--vc-safe-bottom, 0px);
}

.vandadcast-sticky__inner {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 0.55rem 0.75rem;
	padding: 0.55rem 0.65rem;
	min-height: var(--vc-player-h-mini, 3.5rem);
	max-width: 100%;
}

.vandadcast-sticky__art {
	flex: 0 0 auto;
	width: 52px;
	height: 52px;
	border-radius: 10px;
	overflow: hidden;
	border: var(--vandadcast-border);
	background: var(--vandadcast-surface);
}

.vandadcast-sticky__art img {
	display: block;
	width: 52px;
	height: 52px;
	object-fit: cover;
}

.vandadcast-sticky__art.is-empty {
	background: linear-gradient(
		135deg,
		color-mix(in srgb, var(--vandadcast-player-primary) 35%, transparent),
		color-mix(in srgb, var(--vandadcast-player-accent) 35%, transparent)
	);
}

.vandadcast-sticky__text {
	flex: 1 1 140px;
	min-width: 0;
}

.vandadcast-sticky__title {
	font-weight: 700;
	font-size: 0.98rem;
	line-height: 1.25;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.vandadcast-sticky__hint {
	font-size: 0.78rem;
	opacity: 0.72;
	margin-block-start: 0.15rem;
}

.vandadcast-sticky__play-toggle {
	flex: 0 0 auto;
	width: 2.75rem;
	height: 2.75rem;
	min-width: 44px;
	min-height: 44px;
	border: 0;
	border-radius: 999px;
	background: var(--vandadcast-player-primary);
	color: #fff;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0;
}

.vandadcast-sticky__play-icon {
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 12px;
	border-color: transparent transparent transparent currentColor;
	margin-inline-start: 3px;
}

.vandadcast-sticky__play-toggle.is-playing .vandadcast-sticky__play-icon {
	width: 12px;
	height: 14px;
	border: 0;
	margin-inline-start: 0;
	background: linear-gradient(to right, currentColor 0 35%, transparent 35% 65%, currentColor 65% 100%);
}

.vandadcast-sticky__audio {
	flex: 1 1 200px;
	min-width: 0;
	width: min(100%, 560px);
	max-width: 100%;
	min-height: 40px;
	height: auto;
	vertical-align: middle;
}

.vandadcast-sticky__transport {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	flex: 0 0 auto;
}

.vandadcast-sticky__transport--expand {
	justify-content: center;
	gap: 0.5rem;
}

.vandadcast-sticky__skip {
	width: 2.75rem;
	height: 2.75rem;
	min-width: 44px;
	min-height: 44px;
	border-radius: 999px;
	border: 2px solid color-mix(in srgb, var(--vandadcast-player-primary) 50%, transparent);
	background: transparent;
	color: var(--vandadcast-player-primary);
	font-size: 1.35rem;
	line-height: 1;
	cursor: pointer;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.15s ease, opacity 0.15s ease;
}

.vandadcast-sticky__skip:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.vandadcast-sticky__skip:not(:disabled):hover,
.vandadcast-sticky__skip:not(:disabled):focus-visible {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 12%, transparent);
	outline: none;
}

.vandadcast-sticky__rate {
	min-width: 2.75rem;
	height: 2.75rem;
	min-height: 44px;
	padding: 0 0.45rem;
	border-radius: 8px;
	border: 1px solid color-mix(in srgb, CanvasText 14%, transparent);
	background: color-mix(in srgb, Canvas 92%, CanvasText 4%);
	font: inherit;
	font-size: 0.82rem;
	font-weight: 650;
	cursor: pointer;
	color: inherit;
}

.vandadcast-sticky__rate:hover,
.vandadcast-sticky__rate:focus-visible {
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	outline: none;
}

@media (max-width: 720px) {
	.vandadcast-sticky__play-toggle {
		display: inline-flex;
	}

	.vandadcast-sticky__audio--native {
		position: absolute;
		width: 1px;
		height: 1px;
		opacity: 0;
		pointer-events: none;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
	}

	.vandadcast-sticky__inner {
		flex-wrap: nowrap;
	}

	.vandadcast-sticky__transport:not(.vandadcast-sticky__transport--expand) {
		display: none;
	}
}

@media (min-width: 721px) {
	.vandadcast-sticky__expand-panel,
	.vandadcast-sticky__play-toggle {
		display: none !important;
	}

	.vandadcast-sticky__mini {
		cursor: default;
	}

	.vandadcast-sticky__inner {
		flex-wrap: wrap;
		align-items: center;
		row-gap: 0.45rem;
	}

	.vandadcast-sticky__transport {
		flex: 0 0 auto;
		order: 1;
	}

	.vandadcast-sticky__art {
		order: 2;
	}

	.vandadcast-sticky__text {
		flex: 1 1 calc(100% - 8rem);
		order: 3;
		min-width: 0;
	}

	.vandadcast-sticky__audio {
		flex: 1 1 100%;
		order: 10;
		width: 100%;
		min-width: 100%;
		min-height: 44px;
	}
}

@media (max-width: 380px) {
	.vandadcast-sticky__title {
		font-size: 0.88rem;
	}
}

/* -------------------------------------------------------------------------
 * Series taxonomy: reuses episode-hub tokens; only deltas here
 * ------------------------------------------------------------------------- */

.vandadcast-tax--series.vandadcast-episode-hub a.vandadcast-episode-hub__share,
.vandadcast-tax--category.vandadcast-episode-hub a.vandadcast-episode-hub__share {
	text-decoration: none;
}

.vandadcast-episode-hub__series-foot {
	margin: 0.75rem 0 0;
	font-size: 0.8rem;
	line-height: 1.45;
	opacity: 0.62;
	max-width: 42rem;
}

.vandadcast-episode-hub__social-chips {
	list-style: none;
	margin: 0.85rem 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.vandadcast-episode-hub__social-chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.1rem;
	padding: 0 0.6rem;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, CanvasText 12%, transparent);
	font-size: 0.8rem;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
	background: color-mix(in srgb, Canvas 95%, CanvasText 2%);
	transition: border-color 0.15s ease, background 0.15s ease;
}

.vandadcast-episode-hub__social-chip:hover,
.vandadcast-episode-hub__social-chip:focus-visible {
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	outline: none;
}

.vandadcast-episode-hub__term-desc :where(p, ul, ol) {
	margin-block: 0 0.65rem;
}

.vandadcast-episode-hub__term-desc :where(a) {
	color: var(--vandadcast-player-primary);
	text-decoration-thickness: 1px;
}

.vandadcast-episode-hub__series-episodes {
	margin-block-start: 0.25rem;
}

.vandadcast-episode-hub__series-episodes-head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.65rem 1rem;
	margin-block-end: 0.35rem;
}

.vandadcast-episode-hub__series-episodes .vandadcast-episode-hub__section-title {
	margin-block-end: 0;
}

.vandadcast-episode-hub__sort {
	flex-shrink: 0;
}

.vandadcast-episode-hub__sort-link {
	font-size: 0.84rem;
	font-weight: 650;
	color: var(--vandadcast-player-primary);
	text-decoration: none;
	white-space: nowrap;
}

.vandadcast-episode-hub__sort-link:hover,
.vandadcast-episode-hub__sort-link:focus-visible {
	text-decoration: underline;
	outline: none;
}

.vandadcast-episode-hub__series-episodes .vandadcast-episode-hub__aside-count {
	margin-block-end: 0.5rem;
}

.vandadcast-episode-hub__pagination {
	margin-block-start: 1.15rem;
}

.vandadcast-episode-hub__pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	justify-content: center;
}

.vandadcast-episode-hub__pagination a,
.vandadcast-episode-hub__pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 2.25rem;
	padding: 0.32rem 0.55rem;
	border-radius: 8px;
	border: 1px solid color-mix(in srgb, CanvasText 11%, transparent);
	text-decoration: none;
	font-size: 0.84rem;
	color: inherit;
}

.vandadcast-episode-hub__pagination a:hover,
.vandadcast-episode-hub__pagination a:focus-visible {
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	color: var(--vandadcast-player-primary);
	outline: none;
}

.vandadcast-episode-hub__side-meta-item--text {
	font-weight: 650;
	opacity: 0.88;
}

.vandadcast-episode-hub__aside-note {
	margin: 0 0 0.75rem;
	font-size: 0.82rem;
	line-height: 1.55;
	opacity: 0.78;
}

.vandadcast-episode-hub__comments-fold--aside {
	border: none;
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.vandadcast-episode-hub__comments-fold--aside .vandadcast-episode-hub__comments-sum {
	padding: 0 0 0.65rem;
	border-block-end: none;
}

.vandadcast-episode-hub__comments-fold--aside .vandadcast-episode-hub__comments-panel {
	padding: 0;
	border: none;
}

.vandadcast-episode-hub__feed-comments {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.vandadcast-episode-hub__feed-comment {
	display: grid;
	grid-template-columns: 40px minmax(0, 1fr);
	gap: 0.55rem;
	align-items: start;
	padding: 0.5rem 0;
	border-block-end: 1px solid color-mix(in srgb, CanvasText 7%, transparent);
}

.vandadcast-episode-hub__feed-comment:last-child {
	border-block-end: none;
	padding-block-end: 0;
}

.vandadcast-episode-hub__feed-avatar-img {
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 999px;
}

.vandadcast-episode-hub__feed-comment-head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.35rem;
	margin-block-end: 0.25rem;
	font-size: 0.78rem;
}

.vandadcast-episode-hub__feed-comment-author {
	font-weight: 700;
}

.vandadcast-episode-hub__feed-comment-time {
	opacity: 0.65;
	font-variant-numeric: tabular-nums;
}

.vandadcast-episode-hub__feed-comment-text {
	font-size: 0.82rem;
	line-height: 1.55;
	opacity: 0.92;
}

.vandadcast-episode-hub__feed-comment-text :where(p) {
	margin: 0 0 0.35rem;
}

.vandadcast-episode-hub__feed-comment-foot {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem 0.65rem;
	margin-block-start: 0.35rem;
	font-size: 0.76rem;
}

.vandadcast-episode-hub__feed-comment-link {
	color: var(--vandadcast-player-primary);
	font-weight: 600;
	text-decoration: none;
}

.vandadcast-episode-hub__feed-comment-link:hover,
.vandadcast-episode-hub__feed-comment-link:focus-visible {
	text-decoration: underline;
	outline: none;
}

/* -------------------------------------------------------------------------
 * Single episode hub (Castbox-like, RTL, playlist sidebar)
 * ------------------------------------------------------------------------- */

.vandadcast-episode-hub {
	font-family: inherit;
	max-width: 1200px;
	margin-inline: auto;
	padding-block: 1rem 2.5rem;
	padding-inline: clamp(0.75rem, 2vw, 1.25rem);
	box-sizing: border-box;
}

.vandadcast-episode-hub *,
.vandadcast-episode-hub *::before,
.vandadcast-episode-hub *::after {
	box-sizing: border-box;
}

.vandadcast-episode-hub__crumbs {
	margin-block-end: 1.25rem;
}

.vandadcast-episode-hub__crumbs-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem 0.5rem;
	font-size: 0.88rem;
	opacity: 0.78;
}

.vandadcast-episode-hub__crumbs-list a {
	color: inherit;
	text-decoration: none;
	font-weight: 600;
}

.vandadcast-episode-hub__crumbs-list a:hover,
.vandadcast-episode-hub__crumbs-list a:focus-visible {
	color: var(--vandadcast-player-primary);
	text-decoration: underline;
	outline: none;
}

.vandadcast-episode-hub__crumbs-current {
	font-weight: 700;
	opacity: 1;
	color: CanvasText;
}

.vandadcast-episode-hub__crumbs-sep {
	opacity: 0.45;
	user-select: none;
}

.vandadcast-episode-hub__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 32%);
	gap: clamp(1.25rem, 3vw, 2rem);
	align-items: start;
}

.vandadcast-episode-hub__hero {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 1.25rem 1.75rem;
	margin-block-end: 2rem;
	padding-block-end: 1.75rem;
	border-block-end: var(--vandadcast-border);
}

.vandadcast-episode-hub__hero-cover {
	width: min(100%, 220px);
	aspect-ratio: 1 / 1;
	border-radius: calc(var(--vandadcast-radius) + 2px);
	overflow: hidden;
	border: var(--vandadcast-border);
	box-shadow: 0 16px 48px color-mix(in srgb, CanvasText 9%, transparent);
}

.vandadcast-episode-hub__hero-cover img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vandadcast-episode-hub__hero-cover--placeholder {
	min-height: 200px;
}

.vandadcast-episode-hub__hero-text {
	flex: 1 1 240px;
	min-width: 0;
}

.vandadcast-episode-hub__title {
	margin: 0 0 0.5rem;
	font-size: clamp(1.5rem, 2.6vw, 2.15rem);
	line-height: 1.22;
	font-weight: 800;
	letter-spacing: -0.02em;
}

.vandadcast-episode-hub__submeta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.25rem;
	margin-block-end: 0.65rem;
	font-size: 0.92rem;
	opacity: 0.88;
}

.vandadcast-episode-hub__engage-wrap {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.vandadcast-episode-hub__engage-ico {
	opacity: 0.85;
	color: var(--vandadcast-player-primary);
}

.vandadcast-episode-hub__engage-num {
	font-weight: 750;
	font-variant-numeric: tabular-nums;
}

.vandadcast-episode-hub__pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	margin-block-end: 1rem;
}

.vandadcast-episode-hub__pill {
	font-size: 0.82rem;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	border: 1px solid color-mix(in srgb, CanvasText 12%, transparent);
	background: var(--vandadcast-surface);
}

.vandadcast-episode-hub__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.65rem;
}

.vandadcast-episode-hub__play-main {
	width: 3.5rem;
	height: 3.5rem;
	border-radius: 999px;
	border: 3px solid color-mix(in srgb, var(--vandadcast-player-primary) 55%, transparent);
	background: transparent;
	color: var(--vandadcast-player-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: background 0.15s ease, transform 0.12s ease;
}

.vandadcast-episode-hub__play-main:hover,
.vandadcast-episode-hub__play-main:focus-visible {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 12%, transparent);
	outline: none;
}

.vandadcast-episode-hub__play-main.is-playing {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 18%, transparent);
}

.vandadcast-episode-hub__share {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.55rem 1.1rem;
	border-radius: 999px;
	border: 2px solid color-mix(in srgb, var(--vandadcast-player-primary) 50%, transparent);
	background: transparent;
	color: var(--vandadcast-player-primary);
	font: inherit;
	font-weight: 650;
	font-size: 0.95rem;
	cursor: pointer;
	transition: background 0.15s ease;
}

.vandadcast-episode-hub__share:hover,
.vandadcast-episode-hub__share:focus-visible {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 8%, transparent);
	outline: none;
}

.vandadcast-episode-hub__dl {
	display: inline-flex;
	align-items: center;
	padding: 0.5rem 0.95rem;
	border-radius: 10px;
	background: var(--vandadcast-player-primary);
	color: #fff;
	text-decoration: none;
	font-weight: 650;
	font-size: 0.92rem;
}

.vandadcast-episode-hub__dl:hover,
.vandadcast-episode-hub__dl:focus-visible {
	filter: brightness(1.06);
	outline: 2px solid color-mix(in srgb, var(--vandadcast-player-accent) 55%, transparent);
	outline-offset: 2px;
}

.vandadcast-episode-hub__section-title {
	margin: 0 0 0.75rem;
	font-size: 1.08rem;
	font-weight: 800;
}

.vandadcast-episode-hub__desc-block {
	margin-block-end: 2rem;
}

.vandadcast-episode-hub__desc-body--full {
	line-height: 1.85;
	font-size: 1rem;
}

.vandadcast-episode-hub__desc-teaser {
	margin: 0 0 0.65rem;
	line-height: 1.85;
	font-size: 0.98rem;
	color: color-mix(in srgb, CanvasText 92%, transparent);
}

.vandadcast-episode-hub__desc-teaser p {
	margin: 0;
}

.vandadcast-episode-hub__desc-more {
	border: 1px solid color-mix(in srgb, CanvasText 10%, transparent);
	border-radius: 10px;
	background: color-mix(in srgb, Canvas 97%, CanvasText 2%);
	overflow: hidden;
	margin: 0;
}

.vandadcast-episode-hub__desc-more-sum {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	padding: 0.45rem 0.75rem;
	cursor: pointer;
	font-weight: 600;
	font-size: 0.88rem;
	color: var(--vandadcast-player-primary);
	list-style: none;
	user-select: none;
}

.vandadcast-episode-hub__desc-more-sum::-webkit-details-marker {
	display: none;
}

.vandadcast-episode-hub__desc-more[open] .vandadcast-episode-hub__chev {
	transform: rotate(180deg);
}

.vandadcast-episode-hub__desc-full {
	padding: 0 0.85rem 1rem;
	line-height: 1.85;
	font-size: 0.98rem;
	border-top: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
}

.vandadcast-episode-hub__chev {
	flex-shrink: 0;
	color: var(--vandadcast-player-primary);
	transition: transform 0.2s ease;
}

.vandadcast-episode-hub__chev--sm {
	vertical-align: middle;
}

.vandadcast-episode-hub__comments-block {
	margin-block-start: 0.5rem;
}

.vandadcast-episode-hub__comments-fold {
	border: var(--vandadcast-border);
	border-radius: var(--vandadcast-radius);
	background: var(--vandadcast-surface);
	overflow: hidden;
}

.vandadcast-episode-hub__comments-sum {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.65rem;
	padding: 0.75rem 1rem;
	cursor: pointer;
	font-weight: 700;
	font-size: 1.02rem;
	list-style: none;
}

.vandadcast-episode-hub__comments-sum::-webkit-details-marker {
	display: none;
}

.vandadcast-episode-hub__comments-sum-text {
	flex: 1;
	min-width: 0;
}

.vandadcast-episode-hub__comments-sum-chev {
	display: flex;
	color: var(--vandadcast-player-primary);
}

.vandadcast-episode-hub__comments-fold[open] .vandadcast-episode-hub__comments-sum .vandadcast-episode-hub__chev {
	transform: rotate(180deg);
}

.vandadcast-episode-hub__comments-panel {
	padding: 0 1rem 1.1rem;
	border-top: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
}

.vandadcast-episode-hub__comments-panel-cta {
	margin: 0 0 0.65rem;
	font-size: 0.9rem;
}

.vandadcast-episode-hub__comments-cta {
	font-weight: 650;
	color: var(--vandadcast-player-primary);
	text-decoration: none;
}

.vandadcast-episode-hub__comments-cta:hover,
.vandadcast-episode-hub__comments-cta:focus-visible {
	text-decoration: underline;
	outline: none;
}

.vandadcast-episode-hub__aside {
	position: sticky;
	top: 0.75rem;
	border: var(--vandadcast-border);
	border-radius: var(--vandadcast-radius);
	background: color-mix(in srgb, Canvas 96%, CanvasText 2%);
	padding: 1rem 0.85rem 1.1rem;
	max-height: calc(100vh - 8rem);
	overflow: auto;
}

.vandadcast-episode-hub__aside-count {
	margin: 0 0 0.35rem;
	font-size: 0.82rem;
	font-weight: 650;
	letter-spacing: 0.02em;
	opacity: 0.72;
}

.vandadcast-episode-hub__aside-title {
	margin: 0 0 0.65rem;
	font-size: 1rem;
	font-weight: 800;
}

.vandadcast-episode-hub__aside-search {
	width: 100%;
	box-sizing: border-box;
	margin: 0 0 0.75rem;
	padding: 0.5rem 0.65rem;
	border-radius: 10px;
	border: 1px solid color-mix(in srgb, CanvasText 12%, transparent);
	background: Canvas;
	color: CanvasText;
	font: inherit;
	font-size: 0.88rem;
	direction: rtl;
}

.vandadcast-episode-hub__aside-search:focus-visible {
	outline: 2px solid color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	outline-offset: 2px;
}

.vandadcast-episode-hub__aside-empty {
	margin: 0;
	font-size: 0.9rem;
	opacity: 0.78;
	line-height: 1.55;
}

.vandadcast-episode-hub__side-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.45rem;
}

.vandadcast-episode-hub__side-row {
	display: grid;
	grid-template-columns: 56px minmax(0, 1fr) auto;
	align-items: center;
	gap: 0.65rem;
	padding: 0.55rem 0.5rem;
	border-radius: 10px;
	border: 1px solid transparent;
	transition: border-color 0.15s ease, background 0.15s ease;
}

.vandadcast-episode-hub__side-row:hover {
	background: color-mix(in srgb, CanvasText 4%, transparent);
}

.vandadcast-episode-hub__side-row.is-current {
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	background: color-mix(in srgb, var(--vandadcast-player-primary) 8%, transparent);
}

.vandadcast-episode-hub__side-thumb {
	display: block;
	width: 56px;
	height: 56px;
	border-radius: 8px;
	overflow: hidden;
	border: 1px solid color-mix(in srgb, CanvasText 10%, transparent);
	flex-shrink: 0;
}

.vandadcast-episode-hub__side-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.vandadcast-episode-hub__side-title {
	font-weight: 700;
	font-size: 0.88rem;
	line-height: 1.35;
	color: inherit;
	text-decoration: none;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.vandadcast-episode-hub__side-title:hover,
.vandadcast-episode-hub__side-title:focus-visible {
	color: var(--vandadcast-player-primary);
	outline: none;
}

.vandadcast-episode-hub__side-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem 0.65rem;
	font-size: 0.72rem;
	opacity: 0.72;
	margin-block-start: 0.2rem;
}

.vandadcast-episode-hub__side-meta-item {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
}

.vandadcast-episode-hub__ico {
	flex-shrink: 0;
	opacity: 0.85;
}

.vandadcast-episode-hub__side-tools {
	display: flex;
	gap: 0.15rem;
	margin-block-start: 0.25rem;
}

.vandadcast-episode-hub__side-tool {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	height: 1.75rem;
	border-radius: 999px;
	color: inherit;
	opacity: 0.65;
	text-decoration: none;
}

.vandadcast-episode-hub__side-tool:hover,
.vandadcast-episode-hub__side-tool:focus-visible {
	opacity: 1;
	background: color-mix(in srgb, CanvasText 6%, transparent);
	outline: none;
}

.vandadcast-episode-hub__side-play {
	width: 2.35rem;
	height: 2.35rem;
	border-radius: 999px;
	border: 2px solid color-mix(in srgb, var(--vandadcast-player-primary) 50%, transparent);
	background: transparent;
	color: var(--vandadcast-player-primary);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	padding: 0;
}

.vandadcast-episode-hub__side-play:hover,
.vandadcast-episode-hub__side-play:focus-visible {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 12%, transparent);
	outline: none;
}

.vandadcast-episode-hub__side-play--empty {
	visibility: hidden;
	pointer-events: none;
}

@media (max-width: 960px) {
	.vandadcast-episode-hub__layout {
		grid-template-columns: 1fr;
	}

	.vandadcast-episode-hub__aside {
		position: static;
		max-height: none;
		order: 2;
	}

	.vandadcast-episode-hub__main {
		order: 1;
	}

	.vandadcast-episode-hub__hero {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.vandadcast-episode-hub__submeta,
	.vandadcast-episode-hub__pills,
	.vandadcast-episode-hub__actions {
		justify-content: center;
	}
}

/* -------------------------------------------------------------------------
 * Single episode hub â€” mobile tabs, sticky actions, responsive layout (phase 2)
 * Scoped to body.vandadcast-single-episode-hub (tax hubs unchanged).
 * ------------------------------------------------------------------------- */

body.vandadcast-single-episode-hub .vandadcast-episode-hub__mobile-actions,
body.vandadcast-single-episode-hub .vandadcast-episode-hub__mobile-tabs {
	display: none;
}

body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero-cover {
	aspect-ratio: 16 / 9;
	width: min(100%, 320px);
}

@media (max-width: 767px) {
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__layout {
		grid-template-columns: 1fr;
		gap: 0;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
		margin-block-end: 0;
		padding-block-end: 1rem;
		border-block-end: 0;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero-cover {
		aspect-ratio: 1 / 1;
		width: min(100%, 280px);
		margin-inline: auto;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero-text {
		width: 100%;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__actions--desktop {
		display: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__mobile-actions {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		gap: 0.5rem;
		position: sticky;
		top: 0;
		z-index: 100040;
		margin-block: 0 0.75rem;
		padding: 0.55rem 0.65rem;
		border-radius: var(--vandadcast-radius);
		border: var(--vandadcast-border);
		background: color-mix(in srgb, Canvas 94%, CanvasText 4%);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__play-main--mobile {
		width: auto;
		min-height: 44px;
		padding: 0 1rem;
		border-radius: 999px;
		gap: 0.4rem;
		font: inherit;
		font-weight: 650;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__play-main--mobile span {
		font-size: 0.92rem;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__share--mobile,
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__dl--mobile {
		min-height: 44px;
		padding: 0.5rem 0.9rem;
		font-size: 0.88rem;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__mobile-tabs {
		display: block;
		margin-block-end: 0.75rem;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__tablist {
		display: flex;
		gap: 0.35rem;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		padding-block-end: 0.15rem;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__tablist::-webkit-scrollbar {
		display: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__tab {
		flex: 1 0 auto;
		min-height: 44px;
		padding: 0.45rem 0.85rem;
		border-radius: 999px;
		border: 1px solid color-mix(in srgb, CanvasText 14%, transparent);
		background: var(--vandadcast-surface);
		font: inherit;
		font-size: 0.86rem;
		font-weight: 650;
		cursor: pointer;
		white-space: nowrap;
		color: inherit;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__tab.is-active {
		background: color-mix(in srgb, var(--vandadcast-player-primary) 14%, Canvas);
		border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
		color: var(--vandadcast-player-primary);
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__region {
		display: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__region.is-vc-active {
		display: block;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__aside.vandadcast-episode-hub__region {
		position: static;
		max-height: none;
		border: 0;
		padding: 0;
		background: transparent;
		box-shadow: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__section-title {
		display: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__comments-sum--desktop {
		display: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__comments-fold--panel {
		border: 0;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__comments-fold--panel .vandadcast-episode-hub__comments-panel {
		display: block;
		padding-block-start: 0;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__side-list--skeleton .vandadcast-episode-hub__side-row {
		pointer-events: none;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__side-list--skeleton .vandadcast-episode-hub__side-thumb,
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__side-list--skeleton .vandadcast-episode-hub__side-title {
		background: linear-gradient(
			90deg,
			color-mix(in srgb, CanvasText 8%, transparent) 0%,
			color-mix(in srgb, CanvasText 14%, transparent) 50%,
			color-mix(in srgb, CanvasText 8%, transparent) 100%
		);
		background-size: 200% 100%;
		animation: vandadcast-skeleton-shimmer 1.2s ease-in-out infinite;
		color: transparent;
		border-radius: 8px;
		min-height: 1rem;
	}

	@keyframes vandadcast-skeleton-shimmer {
		0% { background-position: 100% 0; }
		100% { background-position: -100% 0; }
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__layout {
		grid-template-columns: minmax(0, 1fr) minmax(220px, 30%);
		gap: 1.25rem;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__main,
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__aside {
		order: unset;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero {
		flex-direction: row;
		align-items: flex-start;
		text-align: start;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__submeta,
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__pills,
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__actions--desktop {
		justify-content: flex-start;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__aside {
		position: sticky;
		top: 1rem;
		max-height: calc(100vh - 2rem);
		overflow: auto;
	}
}

@media (min-width: 1024px) {
	body.vandadcast-single-episode-hub .vandadcast-episode-hub__layout {
		grid-template-columns: minmax(0, 1fr) minmax(260px, 32%);
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__hero-cover {
		aspect-ratio: 16 / 9;
		width: min(100%, 340px);
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__region {
		display: block !important;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__region[hidden] {
		display: block !important;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__aside .vandadcast-episode-hub__section-title {
		display: block;
	}

	body.vandadcast-single-episode-hub .vandadcast-episode-hub__comments-sum--desktop {
		display: flex;
	}
}

/* -------------------------------------------------------------------------
 * Tax hub (series + podcast category): Castbox-like hero, Material surfaces, sticky toolbar
 * Scoped to body classes so single-episode hub is unchanged.
 * ------------------------------------------------------------------------- */

body.vandadcast-series-hub-page .vandadcast-episode-hub,
body.vandadcast-category-hub-page .vandadcast-episode-hub {
	--vandadcast-tax-toolbar-offset: 8px;
	max-width: min(1120px, 100%);
	padding-block: clamp(0.65rem, 2vw, 1.1rem) clamp(1.25rem, 4vw, 2.5rem);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-bar,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-bar {
	position: fixed;
	inset-inline: 0;
	top: 0;
	z-index: 100020;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0.45rem clamp(0.75rem, 3vw, 1.25rem);
	background: color-mix(in srgb, Canvas 82%, CanvasText 8%);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	border-block-end: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
	box-shadow: 0 6px 24px color-mix(in srgb, #000 8%, transparent);
	transform: translateY(-110%);
	opacity: 0;
	pointer-events: none;
	transition:
		transform 0.28s cubic-bezier(0.4, 0, 0.2, 1),
		opacity 0.22s ease;
}

body.admin-bar.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-bar,
body.admin-bar.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-bar {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-bar,
	body.admin-bar.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-bar {
		top: 46px;
	}
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-bar.is-visible,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-bar.is-visible {
	transform: translateY(0);
	opacity: 1;
	pointer-events: auto;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-inner,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-inner {
	width: min(1120px, 100%);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-title,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-title {
	font-weight: 800;
	font-size: clamp(0.88rem, 3vw, 1rem);
	line-height: 1.25;
	min-width: 0;
	flex: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-play,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-play {
	flex-shrink: 0;
	width: 2.75rem;
	height: 2.75rem;
	min-width: 44px;
	min-height: 44px;
	border-radius: 999px;
	border: 0;
	background: var(--vandadcast-player-primary);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 4px 14px color-mix(in srgb, var(--vandadcast-player-primary) 35%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sticky-play:focus-visible,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sticky-play:focus-visible {
	outline: 2px solid color-mix(in srgb, var(--vandadcast-player-accent) 70%, transparent);
	outline-offset: 2px;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(1rem, 3vw, 1.5rem);
	margin-block-end: clamp(1.25rem, 4vw, 2rem);
	padding: clamp(1rem, 3vw, 1.5rem);
	border-radius: clamp(1rem, 3vw, 1.35rem);
	border: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
	background: color-mix(in srgb, Canvas 94%, CanvasText 3%);
	box-shadow:
		0 1px 0 color-mix(in srgb, #fff 40%, transparent) inset,
		0 18px 48px color-mix(in srgb, CanvasText 6%, transparent);
}

@media (min-width: 720px) {
	body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax {
		grid-template-columns: min(280px, 34vw) minmax(0, 1fr);
		align-items: center;
		text-align: start;
	}

	body.vandadcast-series-hub-page .vandadcast-episode-hub__hero-text,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__hero-text {
		text-align: start;
	}

	body.vandadcast-series-hub-page .vandadcast-episode-hub__submeta,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__submeta,
	body.vandadcast-series-hub-page .vandadcast-episode-hub__pills,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__pills,
	body.vandadcast-series-hub-page .vandadcast-episode-hub__actions,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__actions {
		justify-content: flex-start;
	}
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__eyebrow,
body.vandadcast-category-hub-page .vandadcast-episode-hub__eyebrow {
	margin: 0 0 0.4rem;
	font-size: 0.72rem;
	font-weight: 750;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--vandadcast-player-primary) 75%, CanvasText);
	opacity: 0.95;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover {
	width: min(100%, 280px);
	margin-inline: auto;
	border-radius: clamp(0.85rem, 2.5vw, 1.1rem);
	position: relative;
	overflow: hidden;
	box-shadow: 0 14px 40px color-mix(in srgb, CanvasText 12%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover:not(.is-loaded)::after,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover:not(.is-loaded)::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		110deg,
		color-mix(in srgb, var(--vandadcast-player-primary) 22%, Canvas) 0%,
		color-mix(in srgb, var(--vandadcast-player-accent) 18%, Canvas) 50%,
		color-mix(in srgb, Canvas 90%, CanvasText 4%) 100%
	);
	background-size: 200% 100%;
	animation: vandadcast-tax-hub-shimmer 1.1s ease-in-out infinite;
}

@keyframes vandadcast-tax-hub-shimmer {
	0% {
		background-position: 100% 0;
	}
	100% {
		background-position: -100% 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover:not(.is-loaded)::after,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover:not(.is-loaded)::after {
		animation: none;
	}
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover img,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover img {
	opacity: 0;
	transition: opacity 0.4s ease;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover.is-loaded img,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover.is-loaded img {
	opacity: 1;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover--placeholder,
body.vandadcast-category-hub-page .vandadcast-episode-hub__hero--tax .vandadcast-episode-hub__hero-cover--placeholder {
	width: min(100%, 280px);
	margin-inline: auto;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__title,
body.vandadcast-category-hub-page .vandadcast-episode-hub__title {
	font-size: clamp(1.45rem, 4.5vw, 2.2rem);
	letter-spacing: -0.03em;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__pill,
body.vandadcast-category-hub-page .vandadcast-episode-hub__pill {
	padding: 0.35rem 0.75rem;
	font-weight: 700;
	background: color-mix(in srgb, var(--vandadcast-player-primary) 10%, Canvas);
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 22%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__play-latest,
body.vandadcast-category-hub-page .vandadcast-episode-hub__play-latest {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	min-height: 2.75rem;
	padding: 0.45rem 1.1rem;
	border-radius: 999px;
	border: 0;
	background: var(--vandadcast-player-primary);
	color: #fff;
	font: inherit;
	font-weight: 800;
	font-size: 0.88rem;
	cursor: pointer;
	box-shadow: 0 6px 20px color-mix(in srgb, var(--vandadcast-player-primary) 32%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__play-latest:hover,
body.vandadcast-category-hub-page .vandadcast-episode-hub__play-latest:hover,
body.vandadcast-series-hub-page .vandadcast-episode-hub__play-latest:focus-visible,
body.vandadcast-category-hub-page .vandadcast-episode-hub__play-latest:focus-visible {
	filter: brightness(1.05);
	outline: none;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__share--primary,
body.vandadcast-category-hub-page .vandadcast-episode-hub__share--primary {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 12%, Canvas);
	border-width: 2px;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__share:not(.vandadcast-episode-hub__share--primary),
body.vandadcast-category-hub-page .vandadcast-episode-hub__share:not(.vandadcast-episode-hub__share--primary) {
	background: Canvas;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__sort-seg,
body.vandadcast-category-hub-page .vandadcast-episode-hub__sort-seg {
	display: inline-flex;
	padding: 3px;
	border-radius: 999px;
	background: color-mix(in srgb, CanvasText 6%, Canvas);
	border: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
	gap: 2px;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__seg-btn,
body.vandadcast-category-hub-page .vandadcast-episode-hub__seg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.25rem;
	padding: 0.28rem 0.85rem;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: 750;
	text-decoration: none;
	color: inherit;
	opacity: 0.82;
	transition: background 0.15s ease, opacity 0.15s ease, color 0.15s ease;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__seg-btn.is-active,
body.vandadcast-category-hub-page .vandadcast-episode-hub__seg-btn.is-active {
	background: Canvas;
	color: var(--vandadcast-player-primary);
	opacity: 1;
	box-shadow: 0 1px 3px color-mix(in srgb, #000 8%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__seg-btn:hover,
body.vandadcast-category-hub-page .vandadcast-episode-hub__seg-btn:hover,
body.vandadcast-series-hub-page .vandadcast-episode-hub__seg-btn:focus-visible,
body.vandadcast-category-hub-page .vandadcast-episode-hub__seg-btn:focus-visible {
	opacity: 1;
	outline: none;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__playlist-toolbar,
body.vandadcast-category-hub-page .vandadcast-episode-hub__playlist-toolbar {
	position: sticky;
	top: var(--vandadcast-tax-toolbar-offset, 8px);
	z-index: 50;
	margin-block-end: 0.75rem;
	padding: 0.65rem clamp(0.5rem, 2vw, 0.85rem);
	border-radius: clamp(0.75rem, 2vw, 1rem);
	background: color-mix(in srgb, Canvas 88%, CanvasText 4%);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid color-mix(in srgb, CanvasText 7%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__playlist-tools,
body.vandadcast-category-hub-page .vandadcast-episode-hub__playlist-tools {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-block-start: 0.65rem;
}

@media (min-width: 520px) {
	body.vandadcast-series-hub-page .vandadcast-episode-hub__playlist-tools,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__playlist-tools {
		flex-direction: row;
		align-items: center;
		gap: 0.75rem;
	}

	body.vandadcast-series-hub-page .vandadcast-episode-hub__playlist-tools .vandadcast-episode-hub__aside-count,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__playlist-tools .vandadcast-episode-hub__aside-count {
		margin: 0;
		flex-shrink: 0;
	}

	body.vandadcast-series-hub-page .vandadcast-episode-hub__playlist-tools .vandadcast-episode-hub__aside-search,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__playlist-tools .vandadcast-episode-hub__aside-search {
		flex: 1;
		margin: 0;
		min-width: 0;
	}
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__series-episodes-head,
body.vandadcast-category-hub-page .vandadcast-episode-hub__series-episodes-head {
	align-items: center;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__side-row--tax,
body.vandadcast-category-hub-page .vandadcast-episode-hub__side-row--tax {
	padding: 0.65rem 0.65rem;
	border-radius: clamp(0.65rem, 2vw, 0.85rem);
	border: 1px solid color-mix(in srgb, CanvasText 7%, transparent);
	background: color-mix(in srgb, Canvas 96%, CanvasText 2%);
	gap: 0.75rem;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__side-row--tax:hover,
body.vandadcast-category-hub-page .vandadcast-episode-hub__side-row--tax:hover {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 5%, Canvas);
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 18%, transparent);
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__side-play,
body.vandadcast-category-hub-page .vandadcast-episode-hub__side-play {
	width: 2.65rem;
	height: 2.65rem;
	min-width: 44px;
	min-height: 44px;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__side-tool,
body.vandadcast-category-hub-page .vandadcast-episode-hub__side-tool {
	width: 2.25rem;
	height: 2.25rem;
	min-width: 44px;
	min-height: 44px;
}

body.vandadcast-series-hub-page .vandadcast-episode-hub__aside--taxonomy-feed,
body.vandadcast-category-hub-page .vandadcast-episode-hub__aside--taxonomy-feed {
	border-radius: clamp(0.85rem, 2.5vw, 1.1rem);
	background: color-mix(in srgb, Canvas 93%, CanvasText 4%);
	box-shadow: 0 1px 0 color-mix(in srgb, #fff 50%, transparent) inset;
}

@media (max-width: 960px) {
	body.vandadcast-series-hub-page .vandadcast-episode-hub__aside--taxonomy-feed,
	body.vandadcast-category-hub-page .vandadcast-episode-hub__aside--taxonomy-feed {
		margin-block-start: 0.5rem;
	}
}

/* -------------------------------------------------------------------------
 * Episode comments (minimal, plugin-owned; RTL)
 * ------------------------------------------------------------------------- */

.vandadcast-cmt {
	font-family: inherit;
}

.vandadcast-cmt__pwd,
.vandadcast-cmt__closed {
	margin: 0 0 1rem;
	font-size: 0.95rem;
	opacity: 0.85;
	line-height: 1.55;
}

.vandadcast-cmt__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.vandadcast-cmt__list .children {
	list-style: none;
	margin: 0.5rem 0 0;
	padding-inline-start: clamp(0.75rem, 2.5vw, 1.75rem);
	border-inline-start: 2px solid color-mix(in srgb, var(--vandadcast-player-primary) 28%, transparent);
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.vandadcast-cmt__item {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	gap: 0.75rem;
	align-items: flex-start;
	padding: 1rem 1rem;
	border-radius: var(--vandadcast-radius);
	border: 1px solid color-mix(in srgb, CanvasText 8%, transparent);
	background: color-mix(in srgb, Canvas 97%, CanvasText 2%);
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.vandadcast-cmt__item:hover {
	border-color: color-mix(in srgb, CanvasText 14%, transparent);
}

.vandadcast-cmt__avatar {
	width: 44px;
	flex-shrink: 0;
}

.vandadcast-cmt__avatar-img {
	display: block;
	width: 44px;
	height: 44px;
	border-radius: 999px;
	object-fit: cover;
}

.vandadcast-cmt__head {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 0.35rem 0.75rem;
	margin-block-end: 0.35rem;
}

.vandadcast-cmt__author {
	font-style: normal;
	font-weight: 750;
	font-size: 0.95rem;
}

.vandadcast-cmt__author a {
	color: inherit;
	text-decoration: none;
}

.vandadcast-cmt__author a:hover,
.vandadcast-cmt__author a:focus-visible {
	color: var(--vandadcast-player-primary);
	text-decoration: underline;
	outline: none;
}

.vandadcast-cmt__time {
	font-size: 0.78rem;
	opacity: 0.55;
	font-variant-numeric: tabular-nums;
}

.vandadcast-cmt__text {
	font-size: 0.92rem;
	line-height: 1.65;
	color: color-mix(in srgb, CanvasText 92%, transparent);
	word-break: break-word;
}

.vandadcast-cmt__text p {
	margin: 0 0 0.5rem;
}

.vandadcast-cmt__text p:last-child {
	margin-block-end: 0;
}

.vandadcast-cmt__moderation {
	font-size: 0.88rem;
	opacity: 0.85;
}

.vandadcast-cmt__foot {
	margin-block-start: 0.5rem;
}

.vandadcast-cmt__foot .comment-reply-link {
	display: inline-flex;
	align-items: center;
	padding: 0.2rem 0.55rem;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 650;
	text-decoration: none;
	color: var(--vandadcast-player-primary);
	border: 1px solid color-mix(in srgb, var(--vandadcast-player-primary) 35%, transparent);
	background: transparent;
	transition: background 0.12s ease;
}

.vandadcast-cmt__foot .comment-reply-link:hover,
.vandadcast-cmt__foot .comment-reply-link:focus-visible {
	background: color-mix(in srgb, var(--vandadcast-player-primary) 10%, transparent);
	outline: none;
}

.vandadcast-cmt__nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 0.5rem;
	margin: 1rem 0 1.5rem;
}

.vandadcast-cmt__nav a {
	display: inline-flex;
	align-items: center;
	padding: 0.45rem 0.85rem;
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: 600;
	text-decoration: none;
	color: inherit;
	border: 1px solid color-mix(in srgb, CanvasText 12%, transparent);
	background: color-mix(in srgb, Canvas 96%, CanvasText 2%);
}

.vandadcast-cmt__nav a:hover,
.vandadcast-cmt__nav a:focus-visible {
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 45%, transparent);
	color: var(--vandadcast-player-primary);
	outline: none;
}

.vandadcast-cform {
	margin-block-start: 0.25rem;
	padding: 1.25rem 1.1rem 1.35rem;
	border-radius: calc(var(--vandadcast-radius) + 2px);
	border: 1px solid color-mix(in srgb, CanvasText 10%, transparent);
	background: linear-gradient(
		165deg,
		color-mix(in srgb, Canvas 98%, CanvasText 1.5%),
		color-mix(in srgb, Canvas 94%, var(--vandadcast-player-primary) 3%)
	);
	box-shadow: 0 12px 40px color-mix(in srgb, CanvasText 6%, transparent);
}

.vandadcast-cform .must-log-in,
.vandadcast-cform .logged-in-as {
	margin: 0 0 1rem;
	font-size: 0.88rem;
	line-height: 1.55;
	opacity: 0.88;
}

.vandadcast-cform .must-log-in a,
.vandadcast-cform .logged-in-as a {
	color: var(--vandadcast-player-primary);
	font-weight: 600;
	text-decoration: none;
}

.vandadcast-cform .must-log-in a:hover,
.vandadcast-cform .logged-in-as a:hover,
.vandadcast-cform .must-log-in a:focus-visible,
.vandadcast-cform .logged-in-as a:focus-visible {
	text-decoration: underline;
	outline: none;
}

.vandadcast-cform__who {
	margin: 0 0 1rem;
	font-size: 0.9rem;
}

.vandadcast-cform__who-label {
	opacity: 0.65;
	margin-inline-end: 0.25rem;
}

.vandadcast-cform__logout {
	font-weight: 600;
	color: var(--vandadcast-player-primary);
	text-decoration: none;
}

.vandadcast-cform__logout:hover,
.vandadcast-cform__logout:focus-visible {
	text-decoration: underline;
	outline: none;
}

.vandadcast-cform__cancel-wrap {
	margin-block-end: 0.75rem;
}

.vandadcast-cform__cancel-wrap #cancel-comment-reply-link {
	font-size: 0.82rem;
	font-weight: 600;
	color: var(--vandadcast-player-primary);
	text-decoration: none;
}

.vandadcast-cform__cancel-wrap #cancel-comment-reply-link:hover,
.vandadcast-cform__cancel-wrap #cancel-comment-reply-link:focus-visible {
	text-decoration: underline;
	outline: none;
}

.vandadcast-cform__form {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.65rem;
}

.vandadcast-cform__row {
	margin: 0;
}

.vandadcast-cform__row--inline {
	margin-block-start: 0.15rem;
}

.vandadcast-cform__label {
	display: block;
	font-size: 0.82rem;
	font-weight: 650;
	margin-block-end: 0.35rem;
	opacity: 0.88;
}

.vandadcast-cform__req {
	color: var(--vandadcast-player-primary);
	text-decoration: none;
	font-weight: 800;
	border: 0;
}

.vandadcast-cform__input,
.vandadcast-cform__textarea {
	width: 100%;
	max-width: 100%;
	font: inherit;
	font-size: 0.95rem;
	padding: 0.55rem 0.75rem;
	border-radius: 10px;
	border: 1px solid color-mix(in srgb, CanvasText 12%, transparent);
	background: Canvas;
	color: inherit;
	transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.vandadcast-cform__textarea {
	min-height: 120px;
	resize: vertical;
	line-height: 1.6;
}

.vandadcast-cform__input:focus,
.vandadcast-cform__textarea:focus {
	outline: none;
	border-color: color-mix(in srgb, var(--vandadcast-player-primary) 55%, transparent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--vandadcast-player-primary) 18%, transparent);
}

.vandadcast-cform__check-wrap {
	display: flex;
	align-items: flex-start;
	gap: 0.45rem;
}

.vandadcast-cform__check {
	margin-block-start: 0.2rem;
	flex-shrink: 0;
	accent-color: var(--vandadcast-player-primary);
}

.vandadcast-cform__check-label {
	font-size: 0.82rem;
	line-height: 1.45;
	opacity: 0.82;
	cursor: pointer;
}

.vandadcast-cform__submit-wrap {
	margin: 0.35rem 0 0;
}

.vandadcast-cform__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 8.5rem;
	padding: 0.6rem 1.35rem;
	border-radius: 999px;
	border: 0;
	background: linear-gradient(
		135deg,
		color-mix(in srgb, var(--vandadcast-player-primary) 92%, #000),
		color-mix(in srgb, var(--vandadcast-player-accent) 88%, #000)
	);
	color: #fff;
	font: inherit;
	font-weight: 750;
	font-size: 0.95rem;
	cursor: pointer;
	box-shadow: 0 4px 16px color-mix(in srgb, var(--vandadcast-player-primary) 35%, transparent);
	transition: transform 0.12s ease, filter 0.12s ease, box-shadow 0.12s ease;
}

.vandadcast-cform__submit:hover,
.vandadcast-cform__submit:focus-visible {
	filter: brightness(1.06);
	transform: translateY(-1px);
	outline: none;
	box-shadow: 0 6px 22px color-mix(in srgb, var(--vandadcast-player-primary) 42%, transparent);
}

.vandadcast-cform__submit:active {
	transform: translateY(0);
}

.vandadcast-cform .comment-notes,
.vandadcast-cform .required-field-message {
	display: none;
}

.vandadcast-cform .comment-reply-title:empty {
	display: none;
}


/* Podcast home legacy styles: assets/css/home-legacy.css (Design B6). */