/* THIS! Originals (Theme 1.36). Each show brings its own colors (--sh-bg, --sh-fg, --sh-ac from /this/v1/shows), so a new
   show looks like itself with no theme change. Square corners and hairlines echo the Originals brand guides. */
.sh-page,.sh-card,.shp{--sh-bg:#0E0F12;--sh-fg:#EFE8DC;--sh-ac:#E11D2E;--sh-mute:color-mix(in srgb,var(--sh-fg) 66%,transparent);--sh-line:color-mix(in srgb,var(--sh-fg) 18%,transparent)}
.sh-eyebrow{font:600 12px/1.3 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.24em;text-transform:uppercase;color:var(--sh-ac)}

/* ---------- Show page ---------- */
.sh-page{background:var(--sh-bg);color:var(--sh-fg);min-height:60vh}
.sh-page a{color:inherit}
.sh-hero{padding:40px 0 34px;border-bottom:1px solid var(--sh-line);background:radial-gradient(90% 120% at 15% 0%,color-mix(in srgb,var(--sh-fg) 7%,transparent),transparent 60%)}
.sh-hero-in{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:center}
.sh-hero-sm .sh-hero-in{grid-template-columns:140px minmax(0,1fr);gap:24px}
.sh-cover img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.sh-title{margin:10px 0 0;font:700 clamp(36px,5vw,64px)/1.02 "IBM Plex Serif",Georgia,serif;letter-spacing:-.01em;color:var(--sh-fg)}
.sh-title span{display:block;margin-top:6px;font-size:.45em;font-weight:400;font-style:italic;color:var(--sh-mute)}
.sh-billing{margin:14px 0 0;max-width:640px;font:400 19px/1.5 "IBM Plex Serif",Georgia,serif;color:var(--sh-mute)}
.sh-when{margin:16px 0 0;font:600 13px/1.4 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--sh-fg)}
.sh-count{color:var(--sh-ac)}
.sh-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.sh-play,.sh-ghost{display:inline-flex;align-items:center;gap:8px;min-height:46px;padding:0 20px;border:1px solid var(--sh-fg);background:var(--sh-fg);color:var(--sh-bg)!important;font:700 15px Inter,system-ui,sans-serif;cursor:pointer;text-decoration:none!important;border-radius:0}
.sh-ghost{background:transparent;color:var(--sh-fg)!important;border-color:var(--sh-line)}
.sh-ghost:hover{border-color:var(--sh-fg)}
.sh-listens{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.sh-listen{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:1px solid var(--sh-line);background:transparent;color:var(--sh-fg)!important;font:500 13.5px Inter,system-ui,sans-serif;text-decoration:none!important;cursor:pointer;border-radius:0}
.sh-listen b{font-weight:700}
.sh-listen:hover{border-color:var(--sh-fg)}
.sh-fic{margin:18px 0 0;font:500 12px/1.5 "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.06em;color:var(--sh-mute)}
.sh-tabs{position:sticky;top:0;z-index:5;background:var(--sh-bg);border-bottom:1px solid var(--sh-line)}
.sh-tabs .wrap{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.sh-tabs a{padding:14px 14px;white-space:nowrap;font:600 14px Inter,system-ui,sans-serif;color:var(--sh-mute);text-decoration:none}
.sh-tabs a:hover{color:var(--sh-fg)}
.sh-body{padding-top:36px;padding-bottom:60px}
.sh-sec{margin-top:52px}.sh-sec:first-child{margin-top:0}
.sh-sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.sh-h2{margin:0;font:700 30px/1.15 "IBM Plex Serif",Georgia,serif;color:var(--sh-fg)}
.sh-more{font:600 14px Inter,system-ui,sans-serif;color:var(--sh-ac)!important;text-decoration:none}
.sh-empty,.sh-loading{margin:18px 0 0;padding:18px;border:1px dashed var(--sh-line);color:var(--sh-mute);font-size:15px;line-height:1.5}
.sh-back{margin:0 0 18px;font:600 14px Inter,system-ui,sans-serif}
.sh-back a{color:var(--sh-ac)!important;text-decoration:none}
/* Episodes */
.sh-eps{list-style:none;margin:20px 0 0;padding:0}
.sh-ep{border-top:1px solid var(--sh-line);padding:18px 0}
.sh-ep:last-child{border-bottom:1px solid var(--sh-line)}
.sh-ep-top{display:flex;align-items:center;gap:16px}
.sh-ep-art{width:72px;height:72px;object-fit:cover;flex-shrink:0}
.sh-ep-txt{flex:1;min-width:0}
.sh-ep-meta{margin:0;font:600 12px "IBM Plex Mono",ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--sh-mute)}
.sh-ep-h{margin:6px 0 0;font:600 21px/1.25 "IBM Plex Serif",Georgia,serif;color:var(--sh-fg)}
.sh-ep-trailer .sh-ep-h{font-weight:400;font-style:italic}
.sh-play-sm{min-height:42px;padding:0 16px;flex-shrink:0}
.sh-ep.is-on .sh-play-sm{background:var(--sh-ac);border-color:var(--sh-ac);color:#fff!important}
.sh-resume{margin:8px 0 0;font-size:13px;color:var(--sh-ac)}
.sh-chaps,.sh-notes{margin-top:10px}
.sh-chaps summary,.sh-notes summary{cursor:pointer;font:600 13px Inter,system-ui,sans-serif;color:var(--sh-mute)}
.sh-chaps ol{list-style:none;margin:8px 0 0;padding:0;columns:2;column-gap:24px}
.sh-chaps li{break-inside:avoid}
.sh-chaps button{display:flex;gap:10px;width:100%;padding:7px 0;border:0;background:none;color:var(--sh-fg);font:400 14px/1.4 Inter,system-ui,sans-serif;text-align:left;cursor:pointer}
.sh-chaps button span{font-family:"IBM Plex Mono",monospace;color:var(--sh-ac);min-width:48px}
.sh-chaps button:hover{text-decoration:underline}
.sh-notes-in{margin-top:8px;font-size:15px;line-height:1.6;color:var(--sh-mute)}
.sh-notes-in a{color:var(--sh-fg)!important}
/* Cast (spoiler-free, from show.cast) */
.sh-cast{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}
.sh-cast li{border:1px solid var(--sh-line);padding:16px;display:flex;flex-direction:column;gap:4px}
.sh-cast img{width:72px;height:72px;object-fit:cover;margin-bottom:8px}
.sh-cast b{font:700 18px "IBM Plex Serif",Georgia,serif}
.sh-cast span{font-size:13px;color:var(--sh-mute)}
.sh-cast em{margin-top:6px;font:italic 15px/1.45 "IBM Plex Serif",Georgia,serif;color:var(--sh-fg)}
.sh-how{margin:18px 0 0;padding-left:20px;line-height:1.6;color:var(--sh-mute)}
.sh-how b{color:var(--sh-fg)}

/* ---------- Clue board, polls, trivia ---------- */
.sh-inter{margin-top:18px}
.sh-itabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--sh-line)}
.sh-itabs button{border:0;background:none;color:var(--sh-mute);font:600 15px Inter,system-ui,sans-serif;padding:12px 14px;border-bottom:3px solid transparent;cursor:pointer}
.sh-itabs button span{font:600 11px "IBM Plex Mono",monospace;color:var(--sh-ac);margin-left:4px}
.sh-itabs button[aria-selected="true"]{color:var(--sh-fg);border-bottom-color:var(--sh-ac)}
.sh-ipane{padding-top:20px}
.sh-clues{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}
/* Case-file cards: Bone paper, typewriter labels, a red file stamp */
.sh-clue{position:relative;background:#EFE8DC;color:#17191E;padding:22px 20px 18px;border-top:6px solid #B8893B;box-shadow:0 10px 24px rgba(0,0,0,.35);font-family:"IBM Plex Serif",Georgia,serif}
.sh-clue::after{content:"";position:absolute;right:14px;top:14px;width:36px;height:36px;border:2px solid #B3121F;border-radius:50%;opacity:.55;transform:rotate(-12deg)}
.sh-clue-k{margin:0;font:600 11px/1.3 "IBM Plex Mono",monospace;letter-spacing:.2em;text-transform:uppercase;color:#7A6A4F}
.sh-clue-k span{display:block;margin-top:2px;color:#B3121F}
.sh-clue-t{margin:12px 0 0;font-size:17px;line-height:1.5}
.sh-clue-q{margin:10px 0 0;font:italic 14px/1.45 "IBM Plex Serif",Georgia,serif;color:#5B4A2A}
.sh-clue-share{margin-top:14px;border:1px solid #17191E;background:none;color:#17191E;font:600 13px Inter,system-ui,sans-serif;padding:7px 12px;cursor:pointer}
.sh-clue.is-locked{background:repeating-linear-gradient(135deg,#2A2C31 0 10px,#24262B 10px 20px);color:#C9C2B6;border-top-color:#5B6B7A;box-shadow:none}
.sh-clue.is-locked::after{display:none}
.sh-clue.is-locked .sh-clue-k{color:#9AA3AD}
.sh-clue-lock{margin:16px 0 0;font:700 24px "IBM Plex Mono",monospace;letter-spacing:.3em;text-transform:uppercase;color:#E8E1D5}
.sh-clue.is-locked .sh-clue-q{color:#B9B2A6}
.sh-note{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--sh-mute)}
.sh-poll,.sh-triv{border:1px solid var(--sh-line);padding:20px;margin-bottom:16px}
.sh-poll-k{margin:0;font:600 11px "IBM Plex Mono",monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--sh-ac)}
.sh-poll-q{margin:8px 0 0;font:600 22px/1.3 "IBM Plex Serif",Georgia,serif;color:var(--sh-fg)}
.sh-opts{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin-top:14px}
.sh-opts button{text-align:left;border:1px solid var(--sh-line);background:transparent;color:var(--sh-fg);font:600 15px/1.35 Inter,system-ui,sans-serif;padding:13px 14px;cursor:pointer;border-radius:0}
.sh-opts button:hover:not(:disabled){border-color:var(--sh-fg)}
.sh-opts button.mine{border-color:var(--sh-ac);box-shadow:inset 3px 0 0 var(--sh-ac)}
.sh-opts button.right{border-color:#3FB37F;background:rgba(63,179,127,.14)}
.sh-opts button:disabled{cursor:default}
.sh-voted{margin:14px 0 0;font-size:15px;color:var(--sh-fg)}
.sh-bars{list-style:none;margin:14px 0 0;padding:0}
.sh-bars li{position:relative;display:flex;justify-content:space-between;gap:10px;padding:11px 12px;margin-bottom:6px;border:1px solid var(--sh-line);overflow:hidden}
.sh-bar{position:absolute;inset:0 auto 0 0;width:var(--p);background:color-mix(in srgb,var(--sh-ac) 28%,transparent)}
.sh-bars b,.sh-bars i{position:relative;font-style:normal}
.sh-bars li.mine{border-color:var(--sh-ac)}

/* ---------- THIS! Originals row (/radio/ and home) ---------- */
.sh-row{padding:34px 0;background:#0A111C;color:#F5F7FA}
.sh-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.sh-row-h{margin:0;font:700 28px/1.2 "IBM Plex Serif",Georgia,serif;color:#F5F7FA}
.sh-row-h .sh-eyebrow{display:block;margin-bottom:4px;color:#FFB020;font-size:11px}
.sh-row-sub{margin:0;font-size:14px;color:#93A1B5}
.sh-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px;margin-top:18px}
.sh-card{display:grid;grid-template-columns:132px minmax(0,1fr);gap:16px;background:var(--sh-bg);color:var(--sh-fg);border:1px solid var(--sh-line);padding:14px}
.sh-card.is-on{border-color:var(--sh-ac)}
.sh-card-art img{display:block;width:132px;height:132px;object-fit:cover}
.sh-card-b{min-width:0;display:flex;flex-direction:column}
.sh-pill{margin:0;font:600 11px/1.3 "IBM Plex Mono",monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--sh-ac)}
.sh-card-h{margin:6px 0 0;font:700 21px/1.15 "IBM Plex Serif",Georgia,serif}
.sh-card-h a{color:var(--sh-fg)!important;text-decoration:none}
.sh-card-p{margin:6px 0 0;font-size:14px;line-height:1.45;color:var(--sh-mute);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.sh-card-a{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:auto;padding-top:12px}
.sh-card .sh-play{min-height:38px;padding:0 14px;font-size:14px}
.sh-card .sh-more{font-size:13.5px}
.sh-card .sh-fic{margin-top:10px;font-size:10.5px}

/* ---------- House promos picked from /shows/rotation ---------- */
[data-show-slot][hidden]{display:none!important}
.shp{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;background:var(--sh-bg);color:var(--sh-fg)!important;text-decoration:none!important;border:1px solid var(--sh-line);padding:14px;font-family:Inter,system-ui,sans-serif}
.shp:hover .shp-cta{text-decoration:underline}
.shp-media{display:block;width:220px;aspect-ratio:16/9;object-fit:cover}
.shp-tall{width:110px;aspect-ratio:9/16}
.shp-k{margin:0;font:600 11px/1.3 "IBM Plex Mono",monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--sh-ac)}
.shp-h{margin:6px 0 0;font:700 21px/1.2 "IBM Plex Serif",Georgia,serif}
.shp-p{margin:6px 0 0;font-size:14.5px;line-height:1.45;color:var(--sh-mute)}
.shp-cta{display:inline-block;margin-top:10px;font-weight:700;font-size:14px;color:var(--sh-ac)}
.shp-billboard,.shp-sticky{grid-template-columns:1fr;padding:10px 16px;text-align:center}
.shp-billboard .shp-copy,.shp-sticky .shp-copy{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:4px 14px}
.shp-billboard .shp-h,.shp-sticky .shp-h{margin:0;font-size:17px}
.shp-billboard .shp-cta,.shp-sticky .shp-cta{margin:0}
.shp-billboard .shp-p{margin:0;font-size:13.5px}
.shp-rail{grid-template-columns:110px minmax(0,1fr)}
.shp-article{margin:28px 0}

@media (max-width:860px){
  .sh-hero-in{grid-template-columns:1fr;gap:22px}
  .sh-cover img{width:180px}
  .sh-hero-sm .sh-hero-in{grid-template-columns:96px minmax(0,1fr)}
  .sh-chaps ol{columns:1}
  .shp-media{width:140px}
  .shp{grid-template-columns:1fr}
  .shp-rail,.shp-endcard{grid-template-columns:96px minmax(0,1fr)}
}
@media (max-width:480px){
  .sh-card{grid-template-columns:96px minmax(0,1fr);gap:12px;padding:12px}
  .sh-card-art img{width:96px;height:96px}
  .sh-cards{grid-template-columns:1fr}
  .sh-ep-art{width:56px;height:56px}
  .sh-ep-top{flex-wrap:wrap}
  .sh-play-sm{width:100%;justify-content:center}
  .sh-title{font-size:36px}
}

/* Theme 1.36: house-promo slots and the generic phone bar */
.tn-slot[hidden]{display:none!important}
.tn-slot-article{margin:28px 0}
.tn-slot-endcard,.tn-slot-rail{margin:18px 0}
.tn-slot.shp-bar{position:fixed;left:0;right:0;bottom:0;z-index:60;transform:translateY(110%);transition:transform .3s ease;padding:0 0 env(safe-area-inset-bottom)}
.tn-slot.shp-bar.is-in{transform:none}
.tn-slot.shp-bar .shp-sticky{border-radius:0;box-shadow:0 -6px 20px rgba(0,0,0,.25);padding-right:48px}
.shp-x{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;font-size:20px;line-height:1;cursor:pointer}
@media (min-width:861px){.tn-slot.shp-bar{display:none!important}}
@media (prefers-reduced-motion:reduce){.tn-slot.shp-bar{transition:none}}
/* Trailers (vertical videos): a swipe strip on phones, one row on desktop */
.sh-trailers{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;-webkit-overflow-scrolling:touch}
.sh-trailers video{flex:0 0 auto;width:min(42vw,200px);min-width:0;max-width:none;aspect-ratio:9/16;height:auto;border-radius:10px;background:#000;scroll-snap-align:start;object-fit:cover}
@media (min-width:861px){.sh-trailers{display:grid;grid-template-columns:repeat(6,1fr);overflow:visible}.sh-trailers video{width:100%}}
