/* ==== extracted inline block 1 ==== */

  :root{
    --bg:#101114; /* 2026-09-27: brand charcoal */
    --panel:#111418;
    --panel2:#151a20;
    --ink:#efe9db;
    --muted:#9aa0a8;
    --faint:#8d8478; /* a11y 2026-09-27: was #626a74 (3.45:1) */
    --line:#22282f;
    --rewind:#E8321E;
    --rewind-bright:#F0563F;
    --rewind-soft:rgba(232,50,30,.12);
    --rewind-glow:rgba(232,50,30,.32);
    --graphite:#2B2B30;
    --bone:#EDE6D6;
    --pearl:#F4F1EA;
    --fill:#E8321E;
    --serif:Georgia,'Times New Roman',serif;
    --sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  }
  *{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
  html,body{margin:0;padding:0}
  body{
    background:var(--bg);
    color:var(--ink);
    font-family:var(--sans);
    min-height:100vh;
    background-image:radial-gradient(120% 60% at 50% -10%, rgba(232,50,30,.07), transparent 60%);
  }
  .page{max-width:480px;margin:0 auto;padding:0 18px 120px}

  /* ---------- masthead ---------- */
  .masthead{padding:22px 0 6px}
  .backlink{
    display:inline-block;margin-bottom:14px;font-size:12.5px;letter-spacing:.08em;
    color:var(--rewind-bright);text-decoration:none;text-transform:uppercase;
  }
  .backlink:hover{text-decoration:underline}
  .brandrow{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
  .wordmark{font-family:var(--serif);font-size:21px;letter-spacing:.14em;color:var(--ink)}
  .boardpill{
    display:inline-flex;align-items:center;gap:7px;
    font-size:10.5px;letter-spacing:.18em;color:var(--rewind-bright);
    border:1px solid rgba(232,50,30,.5);border-radius:999px;padding:6px 11px;
    background:var(--rewind-soft);text-transform:uppercase;
  }
  .boardpill .dot{width:7px;height:7px;border-radius:50%;background:var(--rewind)}
  .boardpill.live .dot{animation:pulse 1.6s infinite}
  @keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(232,50,30,.5)}50%{opacity:.55;box-shadow:0 0 0 6px rgba(232,50,30,0)}}
  h1{font-family:var(--serif);font-weight:400;font-size:29px;line-height:1.18;margin:0 0 8px}
  .sub{color:var(--muted);font-size:13.5px;letter-spacing:.02em;margin-bottom:14px}
  .notice{
    border:1px solid var(--line);border-left:3px solid var(--rewind);
    background:var(--panel);border-radius:8px;
    padding:10px 12px;font-size:11.5px;line-height:1.55;color:var(--muted);
  }
  .notice b{color:var(--ink);letter-spacing:.08em;font-size:10.5px}
  .morebtn{
    background:none;border:none;padding:0;margin:0 0 0 2px;cursor:pointer;
    font:inherit;font-size:inherit;color:var(--fill);font-weight:600;
    text-decoration:underline;text-underline-offset:2px;white-space:nowrap;
  }
  .morebtn:hover{opacity:.75}

  /* ---------- video ---------- */
  #watch{margin-top:18px}
  .video-wrap{
    position:relative;width:100%;aspect-ratio:16/9;border-radius:12px;overflow:hidden;
    background:#000;border:1px solid var(--line);
  }
  .video-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
  .video-fallback{
    position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
    background:radial-gradient(80% 90% at 50% 20%, #141a20, #0a0c0e);
    text-align:center;padding:20px;
  }
  .video-fallback[hidden]{display:none}
  .vf-t{font-family:var(--serif);font-size:19px;margin:0 0 8px;color:var(--ink)}
  .vf-s{font-size:13px;color:var(--muted);margin:0 0 14px;line-height:1.5}
  .vf-btn{
    background:var(--graphite);color:var(--bone);border:none;border-radius:8px;
    font-size:13px;font-weight:600;letter-spacing:.06em;padding:10px 22px;cursor:pointer;
    min-height:44px; /* a11y 2026-09-27: 44px tap target */
  }
  .vf-btn:active{transform:scale(.96)}
  .vf-link{display:inline-flex;align-items:center;min-height:24px;margin-top:12px;font-size:12.5px;color:var(--rewind-bright)}
  .video-meta{
    display:flex;justify-content:space-between;align-items:baseline;
    margin-top:8px;font-size:11.5px;color:var(--faint);letter-spacing:.05em;
  }
  /* story-sync bar: desktop only (hidden on mobile, zero visual change) */
  .stage-bar{display:none}

  /* ---------- sections ---------- */
  section{margin-top:26px}
  .sec-head{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}
  .sec-num{font-family:var(--serif);font-style:italic;color:var(--rewind-bright);font-size:15px}
  .sec-head h2{font-family:var(--serif);font-weight:400;font-size:20px;margin:0;letter-spacing:.02em}
  .sec-hint{margin-left:auto;font-size:11px;color:var(--faint);letter-spacing:.06em;text-transform:uppercase}

  /* ---------- who's who ---------- */
  .cards{
    display:flex;gap:10px;overflow-x:auto;padding:12px 2px 14px;
    scroll-snap-type:x mandatory;scrollbar-width:none;
  }
  .cards::-webkit-scrollbar{display:none}
  .card{
    flex:0 0 150px;scroll-snap-align:start;cursor:pointer;
    background:var(--panel);border:1px solid var(--line);border-radius:12px;
    padding:13px 12px;position:relative;
    transition:border-color .25s, box-shadow .25s, transform .15s;
  }
  .card:active{transform:scale(.97)}
  .card .nm{font-family:var(--serif);font-size:15px;line-height:1.25;margin-bottom:5px}
  .card .rl{font-size:11px;line-height:1.5;color:var(--muted)}
  .card .nowtag{
    display:none;position:absolute;top:8px;right:8px;
    font-size:9px;letter-spacing:.14em;color:var(--bone);font-weight:700;
    background:var(--rewind);border-radius:4px;padding:3px 6px;
  }
  .card.active{
    border-color:var(--rewind);
    box-shadow:0 0 0 1px var(--rewind), 0 6px 24px rgba(232,50,30,.18);
    background:linear-gradient(180deg, rgba(232,50,30,.14), var(--panel) 70%);
  }
  .card.active .nowtag{display:block}
  .card.active .rl{color:var(--ink)}

  /* ---------- storyline ---------- */
  .timeline{position:relative;margin:12px 0 0;padding:4px 0 4px 6px}
  .timeline::before{
    content:"";position:absolute;left:17px;top:14px;bottom:14px;width:2px;
    background:var(--line);border-radius:2px;
  }
  .beat{
    position:relative;display:flex;gap:14px;padding:11px 4px 11px 0;cursor:pointer;
    border-radius:10px;
  }
  .beat:active{background:rgba(255,255,255,.03)}
  .beat .rail{flex:0 0 24px;position:relative}
  .beat .bdot{
    position:absolute;left:50%;top:15px;transform:translate(-50%,0);
    width:11px;height:11px;border-radius:50%;
    background:#2b323b;border:2px solid var(--faint);
    transition:all .3s;z-index:1;
  }
  .beat .btxt{flex:1;min-width:0}
  .beat .bdate{font-size:10px;letter-spacing:.16em;color:var(--faint);margin-bottom:3px;text-transform:uppercase}
  .beat .blabel{font-size:14px;line-height:1.45;color:var(--muted);transition:color .3s}
  .beat .here{display:none;margin-top:7px}
  .beat.active .bdot{
    background:var(--rewind-bright);border-color:var(--rewind-bright);
    box-shadow:0 0 0 5px rgba(232,50,30,.18), 0 0 14px rgba(232,50,30,.7);
    animation:pulse 1.6s infinite;
  }
  .beat.active .blabel{color:var(--ink);font-weight:600}
  .beat.active .bdate{color:var(--rewind-bright)}
  .beat.active .here{display:inline-block}
  .here{
    font-size:9.5px;font-weight:700;letter-spacing:.16em;color:var(--bone);
    background:var(--rewind);border-radius:5px;padding:4px 8px;
    animation:pulse 1.6s infinite;
  }
  .beat.past .blabel{color:var(--faint)}
  .beat.past .bdot{background:#5c1f14;border-color:#5c1f14}

  /* ---------- chapters ---------- */
  .chapters{list-style:none;margin:10px 0 0;padding:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--panel)}
  .chapters li{
    display:flex;align-items:center;gap:12px;padding:13px 14px;cursor:pointer;
    border-bottom:1px solid var(--line);
  }
  .chapters li:last-child{border-bottom:none}
  .chapters li:active{background:rgba(255,255,255,.04)}
  .chapters .cnum{font-family:var(--serif);font-style:italic;color:var(--faint);font-size:14px;flex:0 0 20px}
  .chapters .ct{flex:1;font-size:14px;color:var(--muted)}
  .chapters .cts{font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums}
  .chapters li.active{background:var(--rewind-soft);box-shadow:inset 3px 0 0 var(--rewind)}
  .chapters li.active .ct{color:var(--ink);font-weight:600}
  .chapters li.active .cts{color:var(--rewind-bright);font-weight:700}
  .chapters li.active .cnum{color:var(--rewind-bright)}

  .foot{
    margin-top:28px;font-size:11px;line-height:1.7;color:var(--faint);
    border-top:1px solid var(--line);padding-top:14px;
  }
  .foot p{margin:0 0 8px}

  /* ---------- transport ---------- */
  .transport{
    position:fixed;left:0;right:0;bottom:0;z-index:20;
    background:rgba(10,12,14,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-top:1px solid var(--line);
    padding:10px 18px calc(12px + env(safe-area-inset-bottom));
  }
  .transport .inner{max-width:480px;margin:0 auto;display:flex;align-items:center;gap:14px}
  #playBtn{
    flex:0 0 54px;width:54px;height:54px;border-radius:50%;border:none;cursor:pointer;
    background:var(--graphite);display:flex;align-items:center;justify-content:center;
    box-shadow:0 4px 18px rgba(0,0,0,.5);
  }
  #playBtn:active{transform:scale(.94)}
  #playBtn svg{width:22px;height:22px;fill:var(--bone)}
  #playBtn:disabled{opacity:.45;box-shadow:none;cursor:default}
  .scrub-wrap{flex:1;min-width:0}
  .times{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
  .times span{font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
  #speedBtn{
    background:none;border:1px solid var(--line);color:var(--rewind-bright);
    font-size:10.5px;letter-spacing:.1em;border-radius:6px;padding:3px 8px;cursor:pointer;
    font-variant-numeric:tabular-nums;min-width:44px;
  }
  #speedBtn:active{background:var(--rewind-soft)}
  #speedBtn:disabled{opacity:.4;cursor:default}
  input[type=range]{
    -webkit-appearance:none;appearance:none;width:100%;height:26px;background:transparent;cursor:pointer;margin:0;
  }
  input[type=range]::-webkit-slider-runnable-track{height:5px;border-radius:3px;background:var(--trackfill,#2a2f36)}
  input[type=range]::-webkit-slider-thumb{
    -webkit-appearance:none;width:19px;height:19px;border-radius:50%;margin-top:-7px;
    background:var(--ink);border:3px solid var(--rewind);
    box-shadow:0 2px 8px rgba(0,0,0,.5);
  }
  input[type=range]::-moz-range-track{height:5px;border-radius:3px;background:#2a2f36}
  input[type=range]::-moz-range-progress{height:5px;border-radius:3px;background:var(--rewind)}
  input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--ink);border:3px solid var(--rewind)}

  @media (min-width:700px){
    body{background-image:radial-gradient(60% 40% at 50% 0%, rgba(232,50,30,.07), transparent 70%)}
  }
  @media (min-width:900px){
    .page{max-width:1060px;padding:0 32px 120px}
    .masthead{max-width:760px}
    h1{font-size:38px}
    .video-wrap{max-width:880px}
    .card{flex:0 0 168px}
    .transport .inner{max-width:720px}
  }

/* ==== extracted inline block 2 ==== */

  /* ============================================================
     DESKTOP / LAPTOP LAYER — min-width queries only.
     Mobile (<768px) rendering is untouched: .stage-bar stays
     display:none and the video/sections keep their mobile styles.
     The real YouTube player lives in #watch, which takes the
     story-sync stage position on desktop.
     ============================================================ */

  @media (prefers-reduced-motion:reduce){
    .beat.active .bdot, .here, .boardpill.live .dot{animation:none !important}
    .card:hover{transform:none !important}
  }

  /* ---------- tablet bridge ---------- */
  @media (min-width:768px) and (max-width:1023px){
    .page{max-width:780px;padding:0 30px 130px}
    h1{font-size:40px}
    .cards{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible;gap:12px}
    .card{flex:none}
    .transport .inner{max-width:780px}
  }

  /* ---------- laptop / desktop ---------- */
  @media (min-width:1024px){
    body{background-image:radial-gradient(70% 45% at 50% 0%, rgba(232,50,30,.07), transparent 70%)}

    .page{
      max-width:1320px;padding:0 44px 170px;margin:0 auto;
      display:grid;column-gap:44px;row-gap:48px;
      grid-template-columns:minmax(0,1fr) 384px;
      grid-template-areas:
        "hero hero"
        "watch story"
        "who story"
        "chapters story"
        "foot foot";
    }
    section{margin-top:0}

    /* ----- cinematic hero ----- */
    .masthead{grid-area:hero;position:relative;padding:88px 0 60px;overflow:hidden}
    .masthead::after{
      content:"203";position:absolute;right:-6px;top:6px;
      font-family:var(--serif);font-size:clamp(210px,26vw,380px);line-height:.8;
      color:transparent;-webkit-text-stroke:1px rgba(237,230,214,.10);
      pointer-events:none;user-select:none;letter-spacing:-.02em;
    }
    .brandrow{margin-bottom:24px;position:relative;z-index:1}
    .wordmark{font-size:24px}
    .boardpill{
      color:var(--rewind-bright);border-color:rgba(232,50,30,.5);
      background:var(--rewind-soft);
    }
    .boardpill .dot{background:var(--rewind)}
    .backlink{position:relative;z-index:1}
    .masthead h1{
      font-size:clamp(54px,6vw,92px);line-height:1.0;letter-spacing:-.015em;
      max-width:11ch;position:relative;z-index:1;margin-bottom:14px;
      text-shadow:0 2px 44px rgba(0,0,0,.65);
    }
    .sub{font-size:15px;position:relative;z-index:1;margin-bottom:18px}
    .notice{
      max-width:680px;font-size:12.5px;position:relative;z-index:1;
      border-left-color:var(--rewind);
    }

    .sec-head{margin-bottom:8px}
    .sec-head h2{font-size:24px}
    .sec-num{color:var(--rewind-bright)}

    /* ----- video + story-sync stage ----- */
    #watch{grid-area:watch;margin:0;min-width:0}
    .stage-frame{
      border-radius:18px;overflow:hidden;border:1px solid var(--line);
      background:linear-gradient(165deg,#171a20 0%,#0b0d10 55%,#08090b 100%);
    }
    .stage-frame .video-wrap{border:none;border-radius:0;max-width:none}
    .stage-bar{
      display:flex;align-items:center;gap:18px;
      padding:18px 22px;border-top:1px solid var(--line);
      background:radial-gradient(58% 75% at 72% 16%, rgba(232,50,30,.10), transparent 62%);
    }
    .stage-play{
      flex:0 0 56px;width:56px;height:56px;border-radius:50%;
      border:1px solid rgba(237,230,214,.22);background:var(--graphite);
      cursor:pointer;display:flex;align-items:center;justify-content:center;
      transition:border-color .25s, transform .15s;
    }
    .stage-play:hover{border-color:var(--rewind-bright)}
    .stage-play:active{transform:scale(.93)}
    .stage-play svg{width:22px;height:22px;fill:var(--bone)}
    .stage-play:disabled{opacity:.45;cursor:default}
    .stage-meta{flex:1;min-width:0}
    .stage-kicker{
      display:flex;align-items:center;gap:12px;margin-bottom:8px;
      font-size:10.5px;letter-spacing:.24em;color:var(--muted);
    }
    .stage-live{
      color:var(--rewind-bright);border:1px solid rgba(232,50,30,.55);
      border-radius:999px;padding:4px 11px;font-size:9.5px;letter-spacing:.2em;
    }
    .stage-live.following{background:var(--rewind);color:var(--bone);border-color:var(--rewind)}
    .stage-title{
      font-family:var(--serif);font-size:clamp(22px,2vw,30px);line-height:1.15;
      color:var(--bone);font-weight:400;
    }
    .stage-sub{margin-top:6px;font-size:13px;color:var(--muted)}
    .stage-times{
      font-size:13.5px;color:var(--muted);font-variant-numeric:tabular-nums;
      white-space:nowrap;
    }
    .video-meta{margin-top:10px}

    /* ----- who's who: true grid ----- */
    #who{grid-area:who;min-width:0}
    #who .cards{
      display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
      overflow:visible;padding:14px 2px;
    }
    #who .card{flex:none;padding:20px 17px;min-height:158px}
    #who .card:hover{transform:translateY(-3px);border-color:#3a424c}
    #who .card .nm{font-size:16.5px}
    #who .card .rl{font-size:12px}
    #who .card.active{
      border-color:var(--rewind);
      box-shadow:0 0 0 1px var(--rewind), 0 10px 34px var(--rewind-glow);
      background:linear-gradient(180deg, rgba(232,50,30,.14), var(--panel) 75%);
    }
    #who .card.active .nowtag{background:var(--rewind);color:var(--bone)}

    /* ----- storyline: sticky right rail ----- */
    #story{
      grid-area:story;position:sticky;top:24px;align-self:start;
      max-height:calc(100vh - 48px);overflow-y:auto;min-width:0;
      background:var(--panel);border:1px solid var(--line);border-radius:16px;
      padding:24px 22px;scrollbar-width:thin;scrollbar-color:#3a424c transparent;
    }
    #story .timeline{margin-top:14px}
    #story .beat{padding:13px 6px}
    #story .beat .blabel{font-size:13.5px}
    #story .beat.active .bdot{
      background:var(--rewind);border-color:var(--rewind);
      box-shadow:0 0 0 5px rgba(232,50,30,.16), 0 0 16px var(--rewind-glow);
    }
    #story .beat.active .bdate{color:var(--rewind-bright)}
    #story .here{background:var(--rewind);color:var(--bone)}
    #story .beat.past .bdot{background:#5c1f14;border-color:#5c1f14}

    /* ----- chapters: scannable two-column ----- */
    #chapters{grid-area:chapters;min-width:0}
    #chapters .chapters{
      display:grid;grid-template-columns:1fr 1fr;gap:12px;
      border:none;background:none;overflow:visible;
    }
    #chapters .chapters li{
      background:var(--panel);border:1px solid var(--line);border-radius:12px;
    }
    #chapters .chapters li:last-child{border-bottom:1px solid var(--line)}
    #chapters .chapters li:hover{border-color:#3a424c}
    #chapters .chapters li.active{
      background:var(--rewind-soft);box-shadow:inset 3px 0 0 var(--rewind);
    }
    #chapters .chapters li.active .cts{color:var(--rewind-bright)}
    #chapters .chapters li.active .cnum{color:var(--rewind-bright)}

    .foot{grid-area:foot;max-width:760px}

    /* ----- transport: graphite, red progress ----- */
    .transport .inner{max-width:1320px}
    #playBtn{background:var(--graphite);box-shadow:0 4px 18px rgba(0,0,0,.5)}
    #playBtn svg{fill:var(--bone)}
    #speedBtn{color:var(--rewind-bright)}
    input[type=range]::-webkit-slider-thumb{border-color:var(--rewind)}
    input[type=range]::-moz-range-progress{background:var(--rewind)}
    input[type=range]::-moz-range-thumb{border-color:var(--rewind)}
  }

  /* ---------- very wide ---------- */
  @media (min-width:1600px){
    .page{max-width:1500px}
    #who .cards{grid-template-columns:repeat(5,1fr)}
    .transport .inner{max-width:1500px}
  }

/* ---------- initial icon state (CSP hardening, 2026-09-27) ----------
   style-src is 'self' (no 'unsafe-inline'), so the pause glyphs can no
   longer hide via style="display:none" in the markup — the CSP blocks it
   and both icons render. Hidden here instead; the player JS toggles them
   via el.style.display (CSSOM), which the CSP permits. */
#icoPause,
#stageIcoPause {
  display: none;
}

/* 2026-09-27: legal disclaimer as a page-level note (one canonical footer only). */
.sb-legal{max-width:480px;margin:40px auto 60px;padding:18px;border:1px solid var(--line);
  border-radius:12px;color:var(--faint);font-size:12.5px;line-height:1.65}
.sb-legal p{margin:0 0 8px}
.sb-legal p:last-child{margin-bottom:0}
