/* Previously — podcast episode sheet + featured row (2026-09-26).
   Scoped to #epModal / .ep-* / .pod-feat-*. No global resets. */
:root{
  --brand-red:#E8321E;      /* Rewind Red — accents/LIVE only, never buttons */
  --brand-bg:#101114;       /* Deep Charcoal */
  --brand-ink:#EDE6D6;      /* Warm Bone */
  --brand-action:#2B2B30;   /* Action Graphite — primary CTAs (Emerald's replacement) */
  --brand-secondary:#F4F1EA;/* Pearl/Ivory — secondary buttons */
  --pod-accent:#2B2B30;          /* graphite (retired emerald #0E5F45) */
  --pod-accent-text:#EDE6D6;     /* warm bone for small text on dark */
  --pod-accent-soft:rgba(43,43,48,.16);
}

/* ---------- Episode sheet (bottom sheet on phone, centered modal on desktop) ---------- */
#epModal{z-index:130}
.ep-panel{
  position:relative;width:min(560px,calc(100vw - 32px));max-height:92dvh;overflow-y:auto;
  background:var(--surface);border:1px solid var(--line-strong);border-radius:20px;
  padding:26px 24px calc(24px + env(safe-area-inset-bottom));
  box-shadow:var(--shadow);overscroll-behavior:contain;
}
.ep-handle{display:none;width:44px;height:5px;border-radius:999px;background:var(--line-strong);margin:0 auto 16px}
.ep-kicker{
  margin:0 44px 10px 0;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:var(--pod-accent-text);
}
.ep-title{
  margin:0 44px 10px 0;font-family:"Inter","Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:clamp(24px,5vw,32px);font-weight:720;line-height:1.12;letter-spacing:-.015em;color:var(--ink);
}
.ep-meta{margin:0 0 18px;font-size:13px;color:var(--muted);line-height:1.5}
.ep-about{
  margin:0 0 20px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);
}
.ep-about-label{margin:0 0 6px;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ep-about-text{margin:0;font-size:13.5px;line-height:1.6;color:var(--copy)}
.ep-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 6px}
.ep-follow{
  display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border-radius:999px;
  border:1px solid var(--line-strong);background:transparent;color:var(--ink);
  font-size:13px;font-weight:740;cursor:pointer;transition:border-color .18s,background .18s,transform .12s;
}
.ep-follow:hover{border-color:var(--pod-accent-text);background:var(--pod-accent-soft)}
.ep-follow:active{transform:scale(.96)}
.ep-follow .ep-follow-icon{font-size:16px;font-weight:700;line-height:1}
.ep-follow.is-on{border-color:var(--pod-accent);color:var(--pod-accent-text);background:var(--pod-accent-soft)}
[data-theme="light"] .ep-follow.is-on{color:var(--pod-accent)}

/* Related coverage */
.ep-news{margin:22px 0 0;border-top:1px solid var(--line);padding-top:20px}
.ep-news h3{margin:0 0 6px;font-size:16px;font-weight:780;color:var(--ink)}
.ep-news-sub{margin:0 0 8px;font-size:13px;line-height:1.55;color:var(--muted)}
.ep-news-list{display:flex;flex-direction:column}
.ep-article{
  display:flex;align-items:center;gap:14px;padding:14px 4px;border-bottom:1px solid var(--line);
  text-decoration:none;color:inherit;transition:background .15s;
}
.ep-article:last-child{border-bottom:0}
.ep-article:hover{background:var(--surface-2)}
.ep-article:focus-visible{outline:2px solid var(--pod-accent-text);outline-offset:2px;border-radius:8px}
.ep-article-main{min-width:0;flex:1}
.ep-article-top{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.ep-outlet{
  display:inline-block;padding:3px 9px;border-radius:999px;background:var(--pod-accent-soft);
  color:var(--pod-accent-text);font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;
}
[data-theme="light"] .ep-outlet{color:var(--pod-accent)}
.ep-date{font-size:12px;color:var(--muted);white-space:nowrap}
.ep-headline{display:block;font-size:14.5px;font-weight:620;line-height:1.45;color:var(--ink)}
.ep-go{flex:none;color:var(--pod-accent-text)}
[data-theme="light"] .ep-go{color:var(--pod-accent)}

/* Phone: bottom sheet */
@media (max-width:640px){
  #epModal{align-items:flex-end;padding:0}
  .ep-panel{
    width:100%;max-width:100%;border-radius:20px 20px 0 0;
    border-left:0;border-right:0;border-bottom:0;
    animation:epUp .3s cubic-bezier(.32,.72,.28,1);
  }
  .ep-handle{display:block}
}
@keyframes epUp{from{transform:translateY(56px);opacity:.55}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.ep-panel{animation:none}}

/* Tappable episode rows in the show modal */
#podEps .pod-ep-static{cursor:pointer}
#podEps .pod-ep-static:focus-visible{outline:2px solid var(--pod-accent-text);outline-offset:2px}

/* ---------- Featured today row ---------- */
.pod-feat{margin:30px 0 10px}
.pod-feat-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.pod-feat-head h3{margin:0;font-size:21px;font-weight:800;letter-spacing:-.01em;color:var(--ink)}
.pod-feat-sub{margin:0;font-size:13px;color:var(--muted)}
.pod-feat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.pod-feat-card{
  position:relative;display:flex;flex-direction:column;align-items:stretch;text-align:left;
  padding:20px;border:1px solid rgba(43,43,48,.7);border-radius:18px;background:var(--surface);
  color:inherit;font:inherit;cursor:pointer;
  box-shadow:0 14px 34px rgba(0,0,0,.28);
  transition:transform .16s ease,border-color .18s,box-shadow .18s;
}
.pod-feat-card:hover{transform:translateY(-3px);border-color:var(--pod-accent);box-shadow:0 20px 44px rgba(0,0,0,.36)}
.pod-feat-card:active{transform:translateY(-1px)}
.pod-feat-card:focus-visible{outline:2px solid var(--pod-accent-text);outline-offset:3px}
/* Featured artwork (James, 2026-09-26): podcast artwork is square — the old
   104px-tall banner slot crushed it (blurred crops, cut-off titles). Square
   tile shows the art whole; the initials fallback stays centered via the
   base .pod-tile flex rules. */
.pod-feat-card .pod-tile{aspect-ratio:1/1;height:auto;margin-bottom:16px;border-radius:14px}
.pod-feat-tag{
  align-self:flex-start;margin:0 0 12px;padding:5px 12px;border-radius:999px;
  border:1px solid rgba(237,230,214,.3);color:var(--brand-ink,#EDE6D6);
  font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;
}
.pod-feat-name{font-size:17px;font-weight:760;color:var(--ink);line-height:1.3;margin-bottom:4px}
.pod-feat-hosts{font-size:13px;color:var(--muted);margin-bottom:10px}
.pod-feat-blurb{
  font-family:Georgia,"Times New Roman",serif;font-style:italic;
  font-size:14.5px;line-height:1.55;color:var(--copy);
}
@media (max-width:900px){
  .pod-feat-grid{
    display:flex;overflow-x:auto;gap:14px;padding:4px 2px 14px;
    scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
  }
  .pod-feat-card{flex:0 0 264px;scroll-snap-align:start}
}
@media (prefers-reduced-motion:reduce){.pod-feat-card{transition:none}}
