/* Episode pages (written by build-episodes.mjs). Layout only, on site.css tokens. */

/* Header nav: a plain horizontal list that wraps; the header grows to fit it. */
.site-header:has(.ep-head-nav) { height: auto; min-height: var(--header-h); }
.site-header:has(.ep-head-nav) .site-header__inner { flex-wrap: wrap; padding-block: var(--space-2); }
.ep-head-nav { flex: 1; }
.ep-head-nav ul { display: flex; flex-wrap: wrap; align-items: center; gap: 0 var(--space-4); }

/* One show */
.ep > .container > * { max-width: 72ch; }
.ep > .container > * + * { margin-top: var(--space-5); }
.ep > .container > h1 { margin-top: var(--space-3); }
.ep h2 { margin-top: var(--space-7); font-family: var(--font-mono); font-size: var(--fs-mono); letter-spacing: var(--track-mono); text-transform: uppercase; }
.ep p + p { margin-top: var(--space-4); }
.ep__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); font-family: var(--font-mono); font-size: var(--fs-mono); line-height: var(--lh-mono); }
.ep__facts dt { color: var(--muted); text-transform: uppercase; letter-spacing: var(--track-mono); }
@media (max-width: 639px) { .ep__facts { grid-template-columns: 1fr; } }
.ep__video { aspect-ratio: 16 / 9; background: var(--ink); }
.ep__video iframe { display: block; width: 100%; height: 100%; border: 0; background: var(--ink); }
.ep__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.ep__chapters { display: grid; gap: var(--space-2); }
.ep__chapters a { text-decoration: none; }
.ep__chapters .mono { font-family: var(--font-mono); font-size: var(--fs-mono); margin-right: var(--space-2); }
@media (hover: hover) { .ep__chapters a:hover { text-decoration: underline; text-underline-offset: 3px; } }
.ep__nav { display: flex; flex-wrap: wrap; gap: var(--space-4) var(--space-6); padding-top: var(--space-5); border-top: var(--border-hair) solid var(--rule); }
.ep__nav a { display: grid; gap: var(--space-1); min-height: var(--tap); flex: 1 1 16rem; text-decoration: none; font-weight: var(--weight-strong); }
.ep__nav .mono { font-family: var(--font-mono); font-size: var(--fs-mono-s); letter-spacing: var(--track-mono); text-transform: uppercase; font-weight: 400; }

/* Every show */
.ep-index .lead { margin-top: var(--space-4); }
.ep-year { margin-top: var(--space-8); }
.ep-list { display: grid; gap: var(--space-2); margin-top: var(--space-4); }
.ep-list li { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-1) var(--space-3); }
.ep-list .mono { flex: none; font-family: var(--font-mono); font-size: var(--fs-mono); color: var(--muted); }
.ep-list a { min-width: 0; text-decoration: none; }
@media (hover: hover) { .ep-list a:hover { text-decoration: underline; text-underline-offset: 3px; } }

/* Footer */
.ep-foot { display: grid; gap: var(--space-3); }
.ep-foot__links { display: flex; flex-wrap: wrap; gap: 0 var(--space-5); }
