/* Inner pages: episode watch pages, the list, About and the legal pages. Loaded after style.css. */
body.page{background:radial-gradient(ellipse at 75% -10%,rgba(142,197,255,.10),transparent 55%),radial-gradient(ellipse at 5% 105%,rgba(246,194,122,.07),transparent 50%),var(--bg);min-height:100vh}
body.page::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.55;
  background-image:radial-gradient(1px 1px at 12% 18%,#fff,transparent),radial-gradient(1px 1px at 78% 12%,#cfe2ff,transparent),radial-gradient(1.5px 1.5px at 44% 72%,#ffe7a8,transparent),
  radial-gradient(1px 1px at 90% 60%,#fff,transparent),radial-gradient(1px 1px at 22% 88%,#cfe2ff,transparent),radial-gradient(1px 1px at 63% 38%,#fff,transparent),radial-gradient(1.2px 1.2px at 33% 45%,#fff,transparent)}
.wrap{position:relative;z-index:1;max-width:1180px;margin:0 auto;padding:calc(var(--nav) + 40px) var(--gutter) 70px}
.wrap h1{font-family:var(--wide);font-weight:700;font-size:clamp(24px,3.2vw,40px);line-height:1.18;text-transform:uppercase;letter-spacing:.02em;margin-bottom:12px}
.wrap .lead{font-size:17px;line-height:1.65;color:var(--ink);margin-bottom:20px}
.wrap p{line-height:1.7;color:var(--dim);margin-bottom:14px}
.wrap h2{font-family:var(--wide);font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2);margin:34px 0 14px}
.wrap a{color:var(--gold2)} .wrap a:hover{text-decoration:underline}
.wrap .m{font-family:var(--wide);font-size:10px;letter-spacing:.2em;color:var(--faint);text-transform:uppercase;margin-bottom:20px}
.wrap .note{font-size:13px;color:var(--faint);border-left:2px solid var(--line);padding-left:14px;margin-top:22px}
.wrap .btn{color:var(--gold2)} .wrap .btn:hover{text-decoration:none}

/* prose pages */
.prose{max-width:780px}
.prose ul{margin:0 0 16px 20px;color:var(--dim);line-height:1.7}
.prose ul.ticks,.watch ul.ticks{list-style:none;margin-left:0}
ul.ticks li{position:relative;padding-left:22px;margin-bottom:10px;color:var(--dim);line-height:1.65}
ul.ticks li::before{content:'';position:absolute;left:2px;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 10px var(--gold)}
ul.ticks b,.prose b{color:var(--ink)}
.prose .meta{font-size:12px;color:var(--faint)}
.center{text-align:center;min-height:70vh;display:flex;flex-direction:column;justify-content:center;align-items:center}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0}
.tile{padding:22px;border-radius:16px;border:1px solid var(--panelb);background:rgba(4,6,16,.84)}
.tile h3{font-family:var(--wide);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2);margin-bottom:10px}
.tile p{font-size:14px}

/* watch page */
.crumbs{font-size:13px;color:var(--faint);margin-bottom:18px}
.crumbs a{color:var(--dim)}
.ytbox{position:relative;width:100%;aspect-ratio:16/9;border-radius:16px;overflow:hidden;border:1px solid rgba(246,194,122,.35);box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 60px rgba(246,194,122,.08);background:#000;min-width:280px}
.ytbox .play{position:absolute;inset:0;width:100%;height:100%;padding:0;cursor:pointer}
.ytbox .play img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .4s}
.ytbox .play:hover img{transform:scale(1.025);filter:brightness(1.08)}
.ytbox .pbtn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 6px 20px rgba(0,0,0,.7)) drop-shadow(0 0 24px rgba(246,194,122,.45));transition:transform .2s}
.ytbox .play:hover .pbtn{transform:translate(-50%,-50%) scale(1.08)}
.ytbox iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ytbox-note{font-size:12.5px!important;color:var(--faint)!important;margin:10px 0 30px!important}
.cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.main-col ul.kv{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin:6px 0 18px}
.main-col ul.kv li{padding:10px 14px;border-radius:10px;border:1px solid var(--panelb);background:rgba(4,8,18,.55);font-size:14px;color:var(--ink)}
ul.credits{list-style:none}
ul.credits li{font-size:13.5px;color:var(--dim);line-height:1.6;padding:8px 0;border-bottom:1px solid rgba(142,197,255,.08);word-break:break-word}
.transcript{margin-top:28px;border:1px solid var(--panelb);border-radius:14px;padding:16px 20px;background:rgba(4,8,18,.5)}
.transcript summary{cursor:pointer;font-family:var(--wide);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2)}
.transcript p{margin-top:14px;font-size:15px}
.side{position:sticky;top:calc(var(--nav) + 16px)}
.side h2{margin-top:0}
ol.chapters{list-style:none;display:flex;flex-direction:column;gap:2px;margin-bottom:24px}
.chap{width:100%;text-align:left;padding:9px 12px;border-radius:9px;font-size:14px;color:var(--dim);display:flex;gap:12px;align-items:baseline;min-height:36px}
.chap:hover{background:rgba(246,194,122,.08);color:var(--ink)}
.chap .tc{font-family:var(--wide);font-size:10px;letter-spacing:.1em;color:var(--gold);min-width:44px}
.pn{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.pn a{display:block;padding:14px;border-radius:12px;border:1px solid var(--panelb);background:rgba(4,8,18,.55);color:var(--ink);font-size:14px;line-height:1.4}
.pn a:hover{border-color:rgba(246,194,122,.5);text-decoration:none}
.pn .m{display:block;margin-bottom:6px;font-size:9px}

/* list page */
.bar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:8px 0 14px}
.search{flex:1 1 280px;display:flex;align-items:center;gap:10px;padding:0 16px;height:48px;border-radius:999px;border:1px solid var(--panelb);background:rgba(4,8,18,.6);color:var(--dim)}
.search input{flex:1;background:none;border:0;outline:0;color:var(--ink);font:inherit;font-size:15px;min-width:0}
.search:focus-within{border-color:rgba(246,194,122,.6)}
.seg{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}
.seg button{font-family:var(--wide);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;padding:9px 14px 8px;border-radius:999px;border:1px solid var(--panelb);color:var(--dim);background:rgba(4,8,18,.5);min-height:34px}
.seg button[aria-pressed="true"]{border-color:rgba(246,194,122,.8);color:var(--gold2);background:rgba(30,22,6,.5)}
.count{font-family:var(--wide);font-size:9.5px!important;letter-spacing:.22em;color:var(--faint)!important;text-transform:uppercase}
.grid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.card{border-radius:14px;overflow:hidden;border:1px solid rgba(142,197,255,.12);background:rgba(4,8,18,.6);transition:border-color .2s,transform .2s}
.card a{display:block;color:inherit}
.card a:hover{text-decoration:none}
.card:hover{border-color:rgba(246,194,122,.55);transform:translateY(-2px)}
.card.soon:hover{transform:none;border-color:rgba(142,197,255,.12)}
.card .th{display:block;position:relative;aspect-ratio:16/9;background:radial-gradient(circle at 50% 40%,#0b1330,#03050c)}
.card .th img{width:100%;height:100%;object-fit:cover}
.card .ph{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--wide);font-size:14px;letter-spacing:.14em;color:var(--ice);opacity:.7}
.card .st{position:absolute;left:10px;top:10px;font-family:var(--wide);font-size:8.5px;letter-spacing:.18em;padding:6px 10px 5px;border-radius:999px;background:rgba(2,3,10,.75);border:1px solid var(--panelb);color:var(--dim)}
.card .st.live{border-color:rgba(246,194,122,.75);color:var(--gold2)}
.card .c{display:block;padding:14px}
.card .m{display:block;margin-bottom:7px;font-size:8.5px}
.card .t{display:block;font-weight:700;font-size:15px;line-height:1.4;color:var(--ink)}
.card .q{display:block;font-size:13px;color:var(--dim);line-height:1.5;margin-top:8px}
.empty{padding:30px 0}

@media (max-width:900px){.cols{grid-template-columns:1fr}.side{position:static}.tiles{grid-template-columns:1fr}}
@media (max-width:600px){.wrap{padding-top:calc(var(--nav) + 24px)}.ytbox{border-radius:10px}}
body.page .nav{background:rgba(2,3,10,.9);backdrop-filter:blur(10px);border-bottom:1px solid rgba(142,197,255,.08)}
@media (max-width:700px){.seg{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-right:calc(var(--gutter) * -1);scrollbar-width:none}.seg button{flex:none}}
/* colour pass: violet / teal nebula haze behind inner pages */
body.page{background:radial-gradient(ellipse 70% 50% at 82% -8%,rgba(155,124,255,.16),transparent 60%),radial-gradient(ellipse 60% 45% at -5% 30%,rgba(95,227,208,.07),transparent 60%),
  radial-gradient(ellipse 60% 50% at 50% 115%,rgba(246,194,122,.08),transparent 60%),radial-gradient(ellipse 40% 30% at 70% 60%,rgba(255,122,217,.05),transparent 60%),var(--bg)}
.wrap h2{background:linear-gradient(90deg,#FFE7A8,#F6C27A 50%,#B79CFF);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
ul.ticks li::before{background:linear-gradient(135deg,#F6C27A,#B79CFF);box-shadow:0 0 10px rgba(183,156,255,.6)}
.ytbox{box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 70px rgba(155,124,255,.14),0 0 40px rgba(246,194,122,.10)}
.card:hover{border-color:rgba(183,156,255,.55);box-shadow:0 20px 50px -20px rgba(155,124,255,.45)}
.seg button[aria-pressed="true"]{background:linear-gradient(120deg,rgba(40,28,8,.7),rgba(40,24,70,.6))}
/* QA audit fixes: phone player at least 200 px tall (YouTube minimum), tiles headings, privacy table */
@media (max-width:600px){.ytbox{aspect-ratio:auto;height:max(220px,56.25vw)}}
.tile h2{font-family:var(--wide);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold2);margin:0 0 10px;background:none;-webkit-text-fill-color:currentColor}
.tbl{width:100%;border-collapse:collapse;font-size:13.5px;color:var(--dim);margin:6px 0 18px;display:block;overflow-x:auto}
.tbl th,.tbl td{text-align:left;padding:9px 10px;border-bottom:1px solid rgba(142,197,255,.12);vertical-align:top}
.tbl th{color:var(--ink);font-weight:700}
/* sources page */
.prose.wide{max-width:1100px}
.tblwrap{overflow-x:auto;margin-bottom:10px}
.tbl.src{display:table;min-width:760px}
.tbl.src td.num{color:var(--gold2);font-weight:700;white-space:nowrap}
.tbl a{word-break:break-all}
.src-ep h3{font-size:15px;margin:22px 0 8px}
.src-ep h3 a{color:var(--ink)}
