:root{
  --bg:#0b0a08; --bg2:#13110d; --bg3:#1c1914; --line:#2c2820; --line2:#3d372c;
  --tx:#efe7d6; --tx2:#ada492; --tx3:#736b5c;
  --amb:#e8a33d; --amb2:#9c6720; --cold:#86a9c9; --cold2:#2b3f55; --red:#d8452b; --green:#93ad7f;
  --paper:#efe6d2; --ink:#1d1a15;
  --disp:'Archivo',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace; --serif:'Source Serif 4',Georgia,serif; --cour:'Courier Prime','Courier New',monospace;
  --hdr0:rgba(11,10,8,.98); --hdr1:rgba(11,10,8,.92); --hdr2:rgba(11,10,8,.78); --tick1:rgba(255,255,255,.05); --tick2:rgba(255,255,255,.1); --evbg:rgba(19,17,13,.85); --shadow:rgba(0,0,0,.5);
  --pad:clamp(16px,4vw,56px); --max:1320px; --topH:56px;
}
*{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--tx);font-family:var(--serif);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
::selection{background:var(--amb);color:#000}
:focus-visible{outline:2px solid var(--amb);outline-offset:2px}
.mono{font-family:var(--mono)}
.grain{pointer-events:none;position:fixed;inset:0;z-index:100;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{background-position:0 0}20%{background-position:-37px 21px}40%{background-position:23px -41px}60%{background-position:-19px -13px}80%{background-position:43px 37px}100%{background-position:0 0}}
@media (prefers-reduced-motion:reduce){.grain{animation:none}*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* header */
.top{position:fixed;top:0;left:0;right:0;z-index:60;height:var(--topH);display:flex;align-items:center;gap:20px;padding:0 var(--pad);background:linear-gradient(var(--hdr1),var(--hdr2));backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:transform .35s}
.top.hide{transform:translateY(-100%)}
.mark{display:flex;align-items:baseline;gap:8px;text-decoration:none}
.mark-n{font-family:var(--disp);font-weight:900;font-stretch:125%;letter-spacing:.14em;font-size:18px}
.mark-e{font-family:var(--mono);font-size:11px;color:#000;background:var(--amb);padding:1px 6px;letter-spacing:.08em;font-weight:600}
.nav{display:flex;gap:2px;margin-left:auto}
.nav a{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--tx2);padding:6px 10px;border:1px solid transparent;white-space:nowrap}
.nav a:hover{color:var(--tx)}
.nav a.on{color:var(--amb);border-color:var(--line2)}
.menu-btn{display:none;margin-left:auto;background:none;border:1px solid var(--line2);width:40px;height:36px;padding:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;cursor:pointer}
.menu-btn span{display:block;width:18px;height:1.5px;background:var(--tx)}
@media (max-width:1240px){
  .lang{margin-left:auto}
  .menu-btn{display:flex;margin-left:10px}
  .nav{position:fixed;top:var(--topH);left:0;right:0;flex-direction:column;background:var(--hdr0);border-bottom:1px solid var(--line);padding:8px var(--pad) 18px;display:none}
  .nav.open{display:flex}
  .nav a{font-size:15px;padding:12px 0;border:0;border-bottom:1px solid var(--line)}
}
main{min-height:100vh;outline:none}
.view{padding-top:var(--topH)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.kick{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--amb)}
.kick.cold{color:var(--cold)}
.h-disp{font-family:var(--disp);font-weight:800;font-stretch:112%;letter-spacing:-.01em;line-height:1.02;margin:0}
.sec-h{padding:clamp(56px,9vw,120px) 0 28px}
.sec-h h1{font-size:clamp(40px,7vw,96px)}
.sec-h p{max-width:62ch;color:var(--tx2);font-size:18px;margin:18px 0 0}
.chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:11px;letter-spacing:.05em;padding:3px 8px;border:1px solid var(--line2);color:var(--tx2);text-decoration:none;white-space:nowrap;background:none;cursor:pointer}
a.chip:hover,button.chip:hover{border-color:var(--amb);color:var(--tx)}
.chip.on{background:var(--amb);color:#000;border-color:var(--amb)}
.chips{display:flex;flex-wrap:wrap;gap:6px}
.tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;border:1px solid currentColor}
.tag.real{color:var(--cold)} .tag.fictiv{color:var(--tx3)} .tag.ai{color:var(--amb)}

/* ===== FILM: prologue ===== */
.pro{position:relative}
.pro-step{position:relative;height:100svh;min-height:560px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.pro-bg{position:absolute;inset:-4%;background-size:cover;background-position:center;opacity:0;transform:scale(1.06);transition:opacity 1.6s ease,transform 8s ease-out;filter:saturate(.85)}
.pro-step.in .pro-bg{opacity:1;transform:scale(1)}
.pro-step::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.75) 100%);pointer-events:none}
.letter{position:absolute;left:0;right:0;height:9vh;background:#000;z-index:3}
.letter.t{top:0;display:none}.letter.b{bottom:0}
.pro-txt{position:relative;z-index:4;text-align:center;padding:0 var(--pad);opacity:0;transform:translateY(16px);transition:opacity 1.2s .5s,transform 1.2s .5s}
.pro-step.in .pro-txt{opacity:1;transform:none}
.pro-date{font-family:var(--mono);font-size:clamp(14px,1.6vw,18px);letter-spacing:.32em;text-transform:uppercase;color:var(--cold)}
.pro-line{font-family:var(--serif);font-style:italic;font-size:clamp(22px,3.2vw,40px);max-width:24ch;margin:16px auto 0;line-height:1.25}
.pulse{width:min(520px,80vw);height:60px;margin:22px auto 0;display:block}
.pulse path{fill:none;stroke:var(--red);stroke-width:2;stroke-dasharray:800;stroke-dashoffset:800}
.pro-step.in .pulse path{animation:beat 2.4s linear infinite}
@keyframes beat{0%{stroke-dashoffset:800}70%{stroke-dashoffset:0}100%{stroke-dashoffset:0;opacity:0}}
.pro-doc{position:absolute;z-index:2;right:8vw;top:50%;width:min(360px,42vw);transform:translateY(-50%) rotate(2.5deg);box-shadow:0 30px 80px rgba(0,0,0,.7);opacity:0;transition:opacity 1.4s .3s}
.pro-step.in .pro-doc{opacity:.95}
.pro-step.doc .pro-txt{text-align:left;margin-right:auto;max-width:640px;padding-left:max(var(--pad),6vw)}
.pro-step.doc .pro-line{margin-left:0}
.yr{font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:clamp(90px,20vw,280px);line-height:.85;color:var(--amb);letter-spacing:-.02em;mix-blend-mode:screen}
.title-card{background:#000}
.t-nadia{font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:clamp(72px,17vw,250px);letter-spacing:.1em;line-height:.9;margin:0;padding-left:.1em}
.t-ep{font-family:var(--mono);letter-spacing:.4em;text-transform:uppercase;color:var(--amb);font-size:clamp(12px,1.4vw,16px);margin-top:18px}
.t-meta{margin-top:30px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.scroll-cue{position:absolute;bottom:12vh;left:50%;transform:translateX(-50%);z-index:5;font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--tx3);text-transform:uppercase;animation:cue 2s ease-in-out infinite}
@keyframes cue{50%{transform:translate(-50%,6px);opacity:.5}}
.skip{position:absolute;right:var(--pad);bottom:calc(9vh + 14px);z-index:6;background:rgba(0,0,0,.4);border:1px solid var(--line2);color:var(--tx2);font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:6px 10px;cursor:pointer;text-decoration:none}

/* logline + synopsis */
.logline{padding:clamp(70px,10vw,140px) 0 40px;border-bottom:1px solid var(--line)}
.logline p{font-family:var(--serif);font-size:clamp(24px,3vw,40px);line-height:1.3;max-width:28ch;margin:18px 0 0}
.facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:48px 0 0}
.facts div{background:var(--bg);padding:18px 20px}
.facts b{display:block;font-family:var(--disp);font-weight:800;font-size:clamp(28px,3.4vw,44px);line-height:1;color:var(--amb)}
.facts span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx2)}
@media(max-width:720px){.facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.syn{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(24px,5vw,80px);padding:clamp(56px,8vw,110px) 0}
.syn h2{font-size:clamp(30px,4vw,54px);position:sticky;top:calc(var(--topH) + 30px);align-self:start}
.syn-body p{font-size:clamp(18px,1.6vw,21px);margin:0 0 1.1em;max-width:60ch;overflow-wrap:break-word}
.syn-body p a{color:var(--amb);text-decoration:none;font-family:var(--mono);font-size:.7em;letter-spacing:.04em;white-space:nowrap}
.syn-note{font-family:var(--mono);font-size:12px;color:var(--tx3);border-top:1px solid var(--line);padding-top:14px;margin-top:20px}
@media(max-width:820px){.syn{grid-template-columns:minmax(0,1fr)}.syn h2{position:static}}

/* score strip */
.score{padding:40px 0 80px;overflow-x:clip}
.score-h{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.score-h h2{font-size:clamp(26px,3vw,40px)}
.score-legend{display:flex;gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;color:var(--tx2)}
.score-legend i{display:inline-block;width:10px;height:10px;margin-right:6px;vertical-align:-1px}
.strip{display:flex;height:120px;gap:2px;align-items:stretch}
.strip a{position:relative;flex:1 1 auto;min-width:3px;text-decoration:none;display:flex;flex-direction:column;justify-content:flex-end;transition:transform .2s}
.strip a:hover{transform:translateY(-6px)}
.strip a .bar{height:100%;border-top:3px solid var(--amb2)}
.strip a .bar.d{background:linear-gradient(#5a4220,#2a2016)}
.strip a .bar.n{background:linear-gradient(#22303f,#141a22)}
.strip a .bar.x{background:#2a2620}
.strip a.ch0 .bar{border-top-color:var(--cold)}
.strip a:nth-child(odd) .bar{opacity:.92}
.strip a .num{position:absolute;bottom:-20px;left:0;font-family:var(--mono);font-size:9px;color:var(--tx3)}
.strip a .tip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translateX(-50%);background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:11px;padding:6px 8px;white-space:nowrap;opacity:0;pointer-events:none;z-index:5;transition:opacity .15s}
.strip a:hover .tip,.strip a:focus .tip{opacity:1}
.strip-ch{display:flex;gap:2px;margin-top:30px}
.strip-ch div{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--tx2);border-top:1px solid var(--line2);padding-top:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
@media(max-width:720px){.strip{height:80px}.strip a .num{display:none}.strip-ch{display:none}}

/* chapters */
.chap{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;border-top:1px solid var(--line)}
.chap-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.08);transition:transform 2.4s ease-out;will-change:transform}
.chap.in .chap-bg{transform:scale(1)}
.chap::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(11,10,8,.15) 0%,rgba(11,10,8,.15) 40%,rgba(11,10,8,.92) 88%,var(--bg) 100%)}
.chap-in{position:relative;z-index:2;width:100%;padding:0 var(--pad) clamp(40px,7vw,90px);max-width:var(--max);margin:0 auto}
.chap-n{font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:clamp(70px,13vw,190px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px var(--amb);opacity:.85}
.chap.c0 .chap-n{-webkit-text-stroke-color:var(--cold)}
.chap h2{font-size:clamp(36px,6vw,84px);margin-top:10px}
.chap-w{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;font-size:13px;color:var(--amb);margin-top:12px}
.chap.c0 .chap-w{color:var(--cold)}
.chap-d{font-size:clamp(18px,1.8vw,22px);max-width:52ch;margin:14px 0 22px;color:#ded5c2}
.chap-sc{display:flex;gap:6px;flex-wrap:wrap}
.chap-sc a{font-family:var(--mono);font-size:12px;text-decoration:none;color:var(--tx);background:rgba(0,0,0,.45);border:1px solid var(--line2);padding:6px 9px;backdrop-filter:blur(4px);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chap-sc a:hover{border-color:var(--amb);color:var(--amb)}
.chap-sc a b{color:var(--amb);font-weight:600;margin-right:6px}
.ai-mark{position:absolute;z-index:3;top:calc(var(--topH) + 14px);right:var(--pad);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--tx2);background:rgba(0,0,0,.5);padding:3px 7px}
.fin{padding:clamp(80px,12vw,160px) 0;text-align:center}
.fin h2{font-size:clamp(28px,4vw,54px)}
.fin .chips{justify-content:center;margin-top:24px}
.fin .chip{font-size:13px;padding:10px 14px}

/* ===== SCENES ===== */
.sv{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:calc(100vh - var(--topH))}
.rail{position:sticky;top:var(--topH);height:calc(100vh - var(--topH));overflow-y:auto;border-right:1px solid var(--line);background:var(--bg2);scrollbar-width:thin}
.rail-tools{position:sticky;top:0;background:var(--bg2);padding:12px;border-bottom:1px solid var(--line);z-index:2;display:flex;gap:6px;flex-wrap:wrap}
.rail-tools input{flex:1 1 100%;background:var(--bg);border:1px solid var(--line2);color:var(--tx);font-family:var(--mono);font-size:12px;padding:8px 10px}
.rail-ch{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--amb);padding:16px 14px 6px}
.rail-ch.c0{color:var(--cold)}
.rail-list a{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:baseline;padding:7px 14px;text-decoration:none;color:var(--tx2);font-family:var(--mono);font-size:11.5px;border-left:2px solid transparent}
.rail-list a:hover{background:var(--bg3);color:var(--tx)}
.rail-list a.on{background:var(--bg3);color:var(--tx);border-left-color:var(--amb)}
.rail-list a .rn{color:var(--tx3)}
.rail-list a .rl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rail-list a .rm{color:var(--tx3);font-size:10px}
.rail-list a .flag{color:var(--red)}
.sc-main{min-width:0}
.sc-hero{position:relative;height:min(62vh,620px);min-height:340px;overflow:hidden;background:#000}
.sc-hero img{width:100%;height:100%;object-fit:cover;opacity:.9;animation:kb 18s ease-out both}
@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
.sc-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.05) 40%,rgba(11,10,8,.95))}
.sc-hero .letter{height:5%}
.sc-hd{position:absolute;z-index:4;left:0;right:0;bottom:0;padding:0 clamp(18px,3.5vw,48px) 26px}
.sc-num{font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:clamp(56px,8vw,110px);line-height:.8;color:var(--amb)}
.sc-num.c0{color:var(--cold)}
.sc-slug{font-family:var(--cour);font-weight:700;font-size:clamp(18px,2.2vw,28px);text-transform:uppercase;margin-top:10px;letter-spacing:.02em;overflow-wrap:anywhere}
.sc-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.sc-meta .chip{background:rgba(0,0,0,.5)}
.sc-cap{position:absolute;z-index:4;top:14px;right:16px;font-family:var(--mono);font-size:10px;color:var(--tx2);background:rgba(0,0,0,.55);padding:3px 7px;max-width:60%;text-align:right}
.sc-thumbs{position:absolute;z-index:5;right:16px;bottom:26px;display:flex;gap:6px}
.sc-thumbs button{width:64px;height:40px;padding:0;border:1px solid var(--line2);background:#000 center/cover;cursor:pointer;opacity:.7}
.sc-thumbs button.on,.sc-thumbs button:hover{opacity:1;border-color:var(--amb)}
@media(max-width:720px){.sc-thumbs{position:static;padding:10px 18px 0;background:var(--bg)}.sc-cap{display:none}}
.sc-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(20px,3vw,44px);padding:28px clamp(18px,3.5vw,48px) 60px}
.sc-sum{font-size:19px;line-height:1.5;color:var(--tx);margin:0 0 24px;max-width:62ch;border-left:2px solid var(--amb);padding-left:16px}
.sc-sum small{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--tx3);margin-bottom:6px}
.page{background:var(--paper);color:var(--ink);font-family:var(--cour);font-size:16px;line-height:1.45;padding:clamp(22px,4vw,56px) clamp(18px,5vw,72px);box-shadow:0 20px 60px rgba(0,0,0,.5);position:relative}
.page::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 20% 0%,rgba(255,255,255,.35),transparent 60%),radial-gradient(ellipse at 100% 100%,rgba(120,90,40,.12),transparent 60%)}
.page .ph{font-weight:700;text-transform:uppercase;margin:0 0 1.2em}
.page .pa{margin:0 0 1em;overflow-wrap:break-word}
.page .pc{text-transform:uppercase;margin:1.2em 0 0 38%;font-weight:400}
.page .pp{margin:0 0 0 30%;max-width:40%}
.page .pd{margin:0 18% 1em 22%;overflow-wrap:break-word}
.page .pt{text-align:right;text-transform:uppercase;margin:1em 0}
@media(max-width:620px){.page{font-size:14.5px}.page .pc{margin-left:24%}.page .pd{margin:0 4% 1em 10%}.page .pp{margin-left:16%;max-width:70%}}
.sc-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}
.sc-nav a{flex:1;text-decoration:none;border:1px solid var(--line2);padding:12px 14px;font-family:var(--mono);font-size:12px;color:var(--tx2);min-width:0}
.sc-nav a:hover{border-color:var(--amb);color:var(--tx)}
.sc-nav a span{display:block;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:4px}
.sc-nav a.nx{text-align:right}
.card{border:1px solid var(--line);background:var(--bg2);margin-bottom:14px}
.card h3{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--tx2);margin:0;padding:12px 14px;border-bottom:1px solid var(--line);font-weight:500}
.card .cb{padding:12px 14px;font-size:15px}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 14px;font-family:var(--mono);font-size:12px}
.kv dt{color:var(--tx3)} .kv dd{margin:0;color:var(--tx)}
.note{padding:10px 0;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.45}
.note:last-child{border-bottom:0}
.note b{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:3px}
.note.Epocă b,.note.Continuitate b,.note.Structură b{color:var(--red)} .note.Fapt b{color:var(--cold)} .note[class*="De"] b{color:var(--amb)}
.note small{display:block;font-family:var(--mono);font-size:10px;color:var(--tx3);margin-top:4px}
.fact{border-color:var(--cold2)} .fact h3{color:var(--cold)}
.snd{font-size:14px;color:var(--tx2);font-style:italic;margin:0 0 8px}
.cast-ch{display:flex;flex-wrap:wrap;gap:5px}
.toggle-read{margin-left:auto}
@media(max-width:1100px){.sc-body{grid-template-columns:minmax(0,1fr)}}
@media(max-width:860px){
  .sv{grid-template-columns:minmax(0,1fr)}
  .rail{position:static;height:auto;max-height:none;border-right:0;border-bottom:1px solid var(--line)}
  .rail-list{display:none}
  .rail.open .rail-list{display:block;max-height:55vh;overflow-y:auto}
}
.read-all .rd-sc{margin-bottom:40px}
.read-head{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:24px clamp(18px,3.5vw,48px);border-bottom:1px solid var(--line)}
.read-wrap{max-width:900px;margin:0 auto;padding:30px clamp(14px,3vw,30px) 80px}
.rd-ch{font-family:var(--disp);font-weight:800;font-size:clamp(28px,4vw,46px);margin:50px 0 18px;color:var(--amb)}
.rd-ch.c0{color:var(--cold)}
.rd-sc .page{margin-bottom:0}
.rd-num{font-family:var(--mono);font-size:11px;color:var(--tx3);margin:0 0 6px;display:flex;justify-content:space-between}
.rd-num a{color:var(--amb);text-decoration:none}

/* ===== TIMELINE ===== */
.tl-ctrl{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:0 0 18px}
.tl-ctrl .lbl{font-family:var(--mono);font-size:11px;color:var(--tx3);letter-spacing:.1em;text-transform:uppercase;margin-right:4px}
.seg{display:inline-flex;border:1px solid var(--line2)}
.seg button{background:none;border:0;border-right:1px solid var(--line2);font-family:var(--mono);font-size:12px;color:var(--tx2);padding:8px 12px;cursor:pointer}
.seg button:last-child{border-right:0}
.seg button.on{background:var(--amb);color:#000}
.years{display:flex;gap:4px;flex-wrap:wrap}
.years button{background:none;border:1px solid var(--line);font-family:var(--mono);font-size:11px;color:var(--tx2);padding:5px 7px;cursor:pointer}
.years button.on{border-color:var(--amb);color:var(--amb)}
.years button.has{color:var(--tx)}
.tl-box{position:relative;border:1px solid var(--line);background:var(--bg2)}
.tl-scroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;cursor:grab}
.tl-scroll.drag{cursor:grabbing}
.tl-canvas{position:relative}
.tl-lanes{position:absolute;left:0;top:0;bottom:0;width:116px;z-index:6;background:linear-gradient(90deg,var(--bg2) 80%,transparent);pointer-events:none}
.tl-lane-l{position:absolute;left:12px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2);display:flex;align-items:center;gap:6px}
.tl-lane-l i{width:8px;height:8px;border-radius:50%;display:inline-block}
.tl-row{position:absolute;left:0;right:0;border-top:1px solid var(--line)}
.tl-tick{position:absolute;top:0;bottom:0;border-left:1px solid var(--tick1)}
.tl-tick span{position:absolute;top:6px;left:4px;font-family:var(--mono);font-size:11px;color:var(--tx3);white-space:nowrap}
.tl-tick.y span{color:var(--tx);font-size:12px;font-weight:600}
.tl-tick.y{border-left-color:var(--tick2)}
.tl-gap{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(135deg,transparent 0 6px,var(--tick1) 6px 7px);border-left:1px dashed var(--line2);border-right:1px dashed var(--line2)}
.tl-gap span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-90deg);font-family:var(--mono);font-size:10px;color:var(--tx3);white-space:nowrap;letter-spacing:.2em}
.tl-ev{position:absolute;display:flex;align-items:center;gap:6px;background:none;border:0;padding:0;cursor:pointer;text-align:left;max-width:220px;transform:translateX(-5px)}
.tl-ev i{flex:0 0 auto;width:10px;height:10px;border-radius:50%;background:var(--c);box-shadow:0 0 0 3px var(--bg2)}
.tl-ev.i2 i{width:13px;height:13px}
.tl-ev span{font-family:var(--mono);font-size:11px;color:var(--tx2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--evbg);padding:1px 4px}
.tl-ev.i2 span{color:var(--tx)}
.tl-ev:hover span,.tl-ev.on span{color:#000;background:var(--c)}
.tl-ev img{width:34px;height:24px;object-fit:cover;flex:0 0 auto;border:1px solid var(--line2)}
.tl-now{position:absolute;top:0;bottom:0;width:1px;background:var(--amb);opacity:.4;pointer-events:none}
.tl-det{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;margin-top:18px;min-height:150px}
.tl-card{border:1px solid var(--line);background:var(--bg2);padding:18px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}
.tl-card img{width:160px;height:110px;object-fit:cover;cursor:zoom-in}
.tl-card .d{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.tl-card h3{font-family:var(--disp);font-weight:700;font-size:24px;line-height:1.15;margin:6px 0}
.tl-card p{margin:0;color:var(--tx2);font-size:15px}
.tl-card small{display:block;font-family:var(--mono);font-size:10px;color:var(--tx3);margin-top:10px}
.tl-same h4{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2);margin:0 0 10px;font-weight:500}
.tl-same button{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:7px 0;cursor:pointer;font-size:14px;color:var(--tx)}
.tl-same button:hover{color:var(--amb)}
.tl-same button em{font-style:normal;font-family:var(--mono);font-size:11px;color:var(--c)}
@media(max-width:820px){.tl-det{grid-template-columns:minmax(0,1fr)}.tl-card{grid-template-columns:minmax(0,1fr)}.tl-card img{width:100%;height:180px}}
/* list mode */
.tl-list .yr-b{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;border-top:1px solid var(--line);padding:22px 0}
.tl-list .yr-b>h3{font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:40px;line-height:1;margin:0;color:var(--amb);position:sticky;top:calc(var(--topH) + 10px);align-self:start}
.tl-list .yr-b.y89>h3{color:var(--cold)}
.tl-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 22px}
.tl-col h4{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;display:flex;align-items:center;gap:6px;font-weight:500;color:var(--tx2)}
.tl-col h4 i{width:8px;height:8px;border-radius:50%}
.tl-col button{display:block;width:100%;text-align:left;background:none;border:0;border-left:2px solid var(--c);padding:3px 0 3px 10px;margin:0 0 8px;cursor:pointer;color:var(--tx);font-size:15px;line-height:1.35}
.tl-col button small{display:block;font-family:var(--mono);font-size:10px;color:var(--tx3)}
.tl-col button:hover{color:var(--amb)}
@media(max-width:900px){.tl-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.tl-list .yr-b{grid-template-columns:minmax(0,1fr);gap:10px}.tl-list .yr-b>h3{position:static;font-size:34px}.tl-cols{grid-template-columns:minmax(0,1fr)}}

/* ===== CAST ===== */
.cast{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:80px}
.pcard{background:var(--bg);padding:20px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pcard-top{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:start}
.pcard-ph{width:72px;height:92px;background:var(--bg3) center/cover;filter:grayscale(.3);border:1px solid var(--line2);display:flex;align-items:center;justify-content:center;font-family:var(--disp);font-weight:800;font-size:28px;color:var(--tx3)}
.pcard h3{font-family:var(--disp);font-weight:700;font-size:22px;line-height:1.1;margin:4px 0 6px}
.pcard p{margin:0;font-size:15px;color:var(--tx)}
.pcard .fact{font-family:var(--mono);font-size:11px;color:var(--cold)}
.heat{display:grid;grid-template-columns:repeat(56,minmax(0,1fr));gap:1px;margin-top:auto}
.heat a{height:14px;background:var(--bg3);display:block}
.heat a.y{background:var(--amb)}
.heat a.y.c0{background:var(--cold)}
.pcard-stat{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--tx3)}

/* ===== SETS ===== */
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:28px}
.stats div{background:var(--bg);padding:16px 18px}
.stats b{display:block;font-family:var(--disp);font-size:34px;font-weight:800;line-height:1;color:var(--amb)}
.stats span{font-family:var(--mono);font-size:11px;color:var(--tx2);text-transform:uppercase;letter-spacing:.06em}
@media(max-width:720px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.sets{width:100%;border-collapse:collapse;margin-bottom:80px;font-size:15px}
.sets th{font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx3);text-align:left;font-weight:500;padding:10px 10px;border-bottom:1px solid var(--line2);cursor:pointer;white-space:nowrap}
.sets td{padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:top}
.sets td:first-child{font-family:var(--disp);font-weight:700;font-size:17px}
.sets .bar{height:6px;background:var(--amb);display:block;margin-top:6px;opacity:.8}
.sets .chips{gap:4px}
.sets .chip{font-size:10.5px;padding:2px 6px}
.tbl-wrap{overflow-x:auto}
@media(max-width:720px){.sets thead{display:none}.sets tr{display:block;border-bottom:1px solid var(--line);padding:12px 0}.sets td{display:block;border:0;padding:3px 0}.sets td.hm{display:none}}

/* ===== VISUAL ===== */
.vis-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:22px}
.vis-tabs button{font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;padding:9px 14px;border:1px solid var(--line2);background:none;color:var(--tx2);cursor:pointer}
.vis-tabs button.on{background:var(--amb);color:#000;border-color:var(--amb)}
.vis-tabs button em{font-style:normal;opacity:.6;margin-left:6px}
.vis-intro{max-width:70ch;color:var(--tx2);margin:0 0 22px;font-size:15px}
.grid{columns:4 260px;column-gap:10px;margin-bottom:80px}
.grid figure{break-inside:avoid;margin:0 0 10px;position:relative;cursor:zoom-in;background:var(--bg2);border:1px solid var(--line)}
.grid img{width:100%;height:auto}
.grid figcaption{padding:8px 10px;font-size:13px;line-height:1.35;color:var(--tx2)}
.grid figcaption b{display:block;font-family:var(--mono);font-size:10px;color:var(--tx3);font-weight:400;margin-bottom:2px}
.grid.kf{columns:2 420px}
.grid.kf figcaption{font-size:15px;color:var(--tx)}
.flag-t{display:block;color:var(--red);font-family:var(--mono);font-size:10.5px;margin-top:4px}

/* ===== PRODUCTION ===== */
.prod-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;margin-bottom:80px}
@media(max-width:900px){.prod-grid{grid-template-columns:minmax(0,1fr)}}
.mot{border-top:1px solid var(--line);padding:16px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px}
.mot h3{font-family:var(--disp);font-weight:700;font-size:20px;margin:0}
.mot p{margin:0;color:var(--tx2);font-size:15px;grid-column:1/-1}
.mot .chips{grid-column:1/-1}
.filter-row{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}
.nl .note{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px}
.nl .note a{font-family:var(--mono);font-size:12px;color:var(--amb);text-decoration:none}
.h2s{font-family:var(--disp);font-weight:800;font-size:clamp(26px,3vw,38px);margin:0 0 14px}
.sndl div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:12px;border-top:1px solid var(--line);padding:10px 0;font-size:15px;color:var(--tx)}
.sndl a{font-family:var(--mono);font-size:12px;color:var(--amb);text-decoration:none}

/* ===== SOURCES ===== */
.src{max-width:900px;padding-bottom:90px}
.src h2{font-family:var(--disp);font-weight:800;font-size:28px;margin:40px 0 12px}
.src li{margin:0 0 10px;color:var(--tx);overflow-wrap:anywhere}
.src a{color:var(--amb)}
.src p{color:var(--tx2)}

/* lightbox */
.lb{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:40px 60px}
.lb[hidden]{display:none}
.lb figure{margin:0;max-width:100%;max-height:100%;display:flex;flex-direction:column;align-items:center}
.lb img{max-width:100%;max-height:calc(100vh - 160px);object-fit:contain}
.lb figcaption{margin-top:12px;font-size:15px;color:var(--tx2);max-width:80ch;text-align:center}
.lb figcaption a{color:var(--amb)}
.lb-x{position:absolute;top:12px;right:16px;background:none;border:0;font-size:36px;color:var(--tx);cursor:pointer;line-height:1}
.lb-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:0;font-size:48px;color:var(--tx2);cursor:pointer;padding:10px}
.lb-p{left:8px}.lb-n{right:8px}
@media(max-width:620px){.lb{padding:50px 10px}.lb-nav{font-size:34px;top:auto;bottom:10px;transform:none}}

.foot{border-top:1px solid var(--line);padding:30px var(--pad);font-family:var(--mono);font-size:11px;color:var(--tx3);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s,transform .9s}
.reveal.in{opacity:1;transform:none}

#railT{display:none}
@media(max-width:860px){#railT{display:inline-flex}}

.pulse path.base{stroke-dasharray:none;stroke-dashoffset:0;opacity:.22;animation:none!important}
.pro-step .ai-mark{top:16px}

.lang{display:flex;border:1px solid var(--line2);flex:none}
.lang button{font-family:var(--mono);font-size:11px;letter-spacing:.08em;background:none;border:0;color:var(--tx3);padding:6px 9px;cursor:pointer}
.lang button+button{border-left:1px solid var(--line2)}
.lang button.on{color:#000;background:var(--amb)}
.lang button:not(.on):hover{color:var(--tx)}

/* prologue tension: heartbeat throb (fx-a) + border searchlight (fx-b) */
.fx-vig{position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse at center,transparent 8%,rgba(0,0,0,.97) 62%);opacity:0}
.pro-step.in .fx-vig{animation:lubdub 1.15s ease-in-out 1.4s infinite}
.fx-vig.soft{background:radial-gradient(ellipse at center,transparent 30%,rgba(0,0,0,.8) 90%)}
@keyframes lubdub{0%{opacity:0}9%{opacity:1}20%{opacity:.3}30%{opacity:.9}55%,100%{opacity:0}}
.pro-step.fx-a.in .pro-bg{animation:throb 1.15s ease-in-out 1.6s infinite}
@keyframes throb{0%{transform:scale(1)}9%{transform:scale(1.05)}20%{transform:scale(1.012)}30%{transform:scale(1.035)}55%,100%{transform:scale(1)}}
.fx-beam{position:absolute;top:-30%;bottom:-30%;left:-60%;width:55%;pointer-events:none;z-index:1;mix-blend-mode:screen;background:linear-gradient(90deg,transparent 0%,rgba(170,200,235,.05) 30%,rgba(205,225,250,.32) 50%,rgba(170,200,235,.05) 70%,transparent 100%);transform:rotate(14deg) translateX(0);filter:blur(6px);opacity:0}
.pro-step.in .fx-beam{animation:sweep 7s cubic-bezier(.45,0,.55,1) 1s infinite}
@keyframes sweep{0%{transform:rotate(14deg) translateX(0);opacity:0}8%{opacity:1}55%{transform:rotate(14deg) translateX(330%);opacity:1}62%,100%{transform:rotate(14deg) translateX(330%);opacity:0}}
.pro-step.fx-b .pro-txt{position:relative;z-index:2}
.pro-step.fx-b.in .pro-date{animation:caught 7s linear 1s infinite}
@keyframes caught{0%,24%,40%,100%{color:var(--cold);text-shadow:none}30%{color:#fff;text-shadow:0 0 18px rgba(205,225,250,.8)}}
.fx-grain{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:overlay}
.pro-step.in .fx-grain{animation:gspike 1.15s steps(1) 1.4s infinite,grain .5s steps(4) infinite}
@keyframes gspike{0%{opacity:.15}10%{opacity:.75}22%{opacity:.25}32%{opacity:.6}55%,100%{opacity:.12}}
.pro-step.fx-c.in .pro-bg{animation:breath 1.15s ease-in-out 1.6s infinite}
@keyframes breath{0%{filter:saturate(.85) brightness(.4);transform:translate(0,0) scale(1)}10%{filter:saturate(.85) brightness(1.25);transform:translate(-2px,1px) scale(1.01)}16%{transform:translate(2px,-1px) scale(1.01)}22%{filter:saturate(.85) brightness(.55);transform:translate(0,0) scale(1)}32%{filter:saturate(.85) brightness(1.1);transform:translate(1px,1px) scale(1.006)}55%,100%{filter:saturate(.85) brightness(.4);transform:none}}
@media (prefers-reduced-motion:reduce){.fx-vig,.fx-beam,.fx-grain,.pro-step[class*="fx-"] .pro-bg,.pro-step.fx-b .pro-date{animation:none!important}.fx-vig{opacity:.4}}
.pro-line{text-wrap:balance}

/* ================= DAY / NIGHT ================= */
html[data-theme="day"]{
  --bg:#f1eadb; --bg2:#e7dec9; --bg3:#dcd0b6; --line:#cdbfa3; --line2:#b3a385;
  --tx:#1e1a14; --tx2:#544b3c; --tx3:#7a6e59;
  --amb:#9a5a0a; --amb2:#c98a35; --cold:#335a80; --cold2:#a9bfd4; --red:#a8321c; --green:#4f6b3b;
  --hdr0:rgba(241,234,219,.98); --hdr1:rgba(241,234,219,.94); --hdr2:rgba(241,234,219,.82);
  --tick1:rgba(0,0,0,.06); --tick2:rgba(0,0,0,.12); --evbg:rgba(241,234,219,.9); --shadow:rgba(60,40,10,.18);
}
html[data-theme="day"] .grain{opacity:.035}
html[data-theme="day"] .page{box-shadow:0 14px 40px var(--shadow);border:1px solid var(--line)}
/* cinematic frames stay dark in day mode */
html[data-theme="day"] :is(.pro,.chap,.sc-hero,.so,.dh,.secs,.s23,.oth-c,.lb,.board,.back89){
  --bg:#0b0a08; --bg2:#13110d; --bg3:#1c1914; --line:#2c2820; --line2:#3d372c;
  --tx:#efe7d6; --tx2:#ada492; --tx3:#736b5c; --amb:#e8a33d; --cold:#86a9c9; --red:#d8452b; color:var(--tx)}
html[data-theme="day"] .chap::before{background:linear-gradient(180deg,rgba(11,10,8,.15) 0%,rgba(11,10,8,.15) 40%,rgba(11,10,8,.92) 88%,#0b0a08 100%)}
html[data-theme="day"] .chap{background:#0b0a08}
html[data-theme="day"] .pro{background:#0b0a08}
html[data-theme="day"] .lang button.on,html[data-theme="day"] .chip.on,html[data-theme="day"] .seg button.on,html[data-theme="day"] .vis-tabs button.on{color:#fff}
html[data-theme="day"] .mark-e{color:#fff}
.theme-btn{flex:none;width:34px;height:30px;display:grid;place-items:center;background:none;border:1px solid var(--line2);color:var(--tx2);cursor:pointer;padding:0}
.theme-btn:hover{color:var(--amb)}
.theme-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
.theme-btn .i-moon{display:none}
html[data-theme="day"] .theme-btn .i-sun{display:none}
html[data-theme="day"] .theme-btn .i-moon{display:block;fill:currentColor;stroke:none}
@media (max-width:1240px){.theme-btn{margin-left:8px}}

/* ================= fixed chrome: logo + episode selector ================= */
.ff-logo{position:fixed;left:14px;bottom:12px;z-index:55;opacity:.85;mix-blend-mode:difference;transition:opacity .2s;line-height:0}
.ff-logo:hover{opacity:1}
.ff-logo img{width:78px;height:auto}
.ep-pill{position:fixed;left:50%;bottom:12px;transform:translateX(-50%);z-index:55;display:flex;align-items:center;gap:2px;padding:4px;background:var(--hdr1);border:1px solid var(--line2);backdrop-filter:blur(8px);font-family:var(--mono)}
.ep-pill .ep-l{font-size:10px;letter-spacing:.14em;color:var(--tx3);padding:0 8px 0 6px}
.ep-pill a{min-width:30px;height:28px;display:grid;place-items:center;font-size:12px;text-decoration:none;color:var(--tx2);border:1px solid transparent}
.ep-pill a:hover{color:var(--tx);border-color:var(--line2)}
.ep-pill a.hot{color:var(--amb)}
.ep-pill a.on{background:var(--amb);color:#000;border-color:var(--amb)}
html[data-theme="day"] .ep-pill a.on{color:#fff}
.foot{padding-bottom:70px}
@media(max-width:560px){.ep-pill{left:auto;right:10px;transform:none}.ep-pill .ep-l{display:none}.ep-pill a{min-width:27px}.ff-logo img{width:64px}}

/* ================= shared series bits ================= */
.subnav{position:sticky;top:var(--topH);z-index:40;background:var(--hdr1);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);transition:top .35s}
body.hdr-hide .subnav{top:0}
.subnav-in{max-width:var(--max);margin:0 auto;padding:0 var(--pad);display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}
.subnav-in::-webkit-scrollbar{display:none}
.subnav button{flex:none;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;background:none;border:0;border-bottom:2px solid transparent;color:var(--tx3);padding:11px 10px 9px;cursor:pointer;white-space:nowrap}
.subnav button:hover{color:var(--tx)}
.subnav button.on{color:var(--amb);border-bottom-color:var(--amb)}
.ser-sec{padding:clamp(70px,9vw,130px) 0 0;scroll-margin-top:100px}
.ser-sec>h2,.d-chr>h2,.d-ph>h2,.d-thr>h2,.rot>h2,.res>h2,.mom h2{font-size:clamp(30px,4.4vw,60px);margin:8px 0 28px}
.ser-src{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-top:18px;max-width:90ch}
.ser-src.last{margin:90px 0 40px;padding-top:20px;border-top:1px solid var(--line)}
.chip.big{font-size:13px;padding:11px 16px;color:var(--tx);border-color:var(--amb)}
.chip.big:hover{background:var(--amb);color:#000}
[id^="s-"],[id^="d-"]{scroll-margin-top:100px}

/* dot matrix */
.dm{display:inline-flex;gap:calc(var(--d)*1.1);--d:7px;vertical-align:middle}
.dm-g{display:grid;grid-template-rows:repeat(7,var(--d));gap:calc(var(--d)*.28);grid-auto-columns:var(--d)}
.dm-g i{width:var(--d);height:var(--d);border-radius:50%;background:rgba(255,255,255,.06)}
.dm.amb .dm-g i.on{background:#ffb347;box-shadow:0 0 calc(var(--d)*1.1) rgba(255,166,50,.85)}
.dm.cold .dm-g i.on{background:#cfe3ff;box-shadow:0 0 calc(var(--d)*1.1) rgba(160,200,255,.7)}
.dm.sm{--d:3px}

/* opening */
.so{position:relative;height:calc(100svh - var(--topH));min-height:560px;display:grid;grid-template-columns:1fr 1fr;background:#000;overflow:hidden}
.so-half{position:relative;overflow:hidden}
.so-bg{position:absolute;inset:0;background:center/cover;filter:grayscale(1) contrast(1.1) brightness(.55);transform:scale(1.08);animation:soZ 18s ease-out forwards}
.so-89 .so-bg{filter:grayscale(1) brightness(.42) sepia(.2) hue-rotate(170deg) saturate(1.6)}
.so-76 .so-bg{filter:grayscale(.6) sepia(.5) brightness(.5) contrast(1.15)}
@keyframes soZ{to{transform:scale(1)}}
.so-half::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),transparent 30%,transparent 55%,rgba(0,0,0,.9))}
.so-cap{position:absolute;z-index:2;left:clamp(16px,3vw,40px);right:clamp(16px,3vw,40px);bottom:clamp(76px,10vh,110px)}
.so-d{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.so-89 .so-d{color:#9fc0e0}.so-76 .so-d{color:#e8a33d}
.so-cap p{font-family:var(--serif);font-size:clamp(15px,1.4vw,19px);color:#ddd4c2;max-width:36ch;margin:6px 0 0}
.so-score{position:absolute;z-index:2;right:clamp(16px,3vw,40px);top:calc(var(--topH) + 30px);padding:14px 16px;background:rgba(0,0,0,.6);border:1px solid #3d372c}
.so-score .dm{--d:9px}
.so-title{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;padding:0 var(--pad)}
.so-title::before{content:"";position:absolute;left:50%;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(239,231,214,.35),transparent)}
.so-title .kick{color:#e8a33d}
.so-title .t-nadia{color:#efe7d6;text-shadow:0 10px 60px rgba(0,0,0,.8);font-size:clamp(64px,15vw,220px)}
.so-theme{font-family:var(--serif);font-size:clamp(19px,2.2vw,30px);color:#efe7d6;max-width:30ch;margin:10px 0 14px;text-shadow:0 2px 20px #000;text-wrap:balance}
.so-fmt{font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:#ada492}
.so-src{font-family:var(--mono);font-size:10px;color:#736b5c;margin-top:8px}
@media(max-width:720px){.so{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.so-title{justify-content:center}.so-title::before{display:none}.so-76 .so-cap{bottom:76px}.so-89 .so-cap{top:calc(var(--topH) + 14px);bottom:auto}.so-score{display:none}.so-score .dm{--d:5px}.so-cap p{font-size:14px}}

.ser-prem{padding:clamp(70px,9vw,120px) 0 0;max-width:1000px}
.ser-prem>p{font-family:var(--serif);font-size:clamp(20px,2.3vw,30px);line-height:1.42;margin:0 0 .8em;text-wrap:pretty}
.ser-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,3vw,44px);margin-top:50px;border-top:1px solid var(--line);padding-top:30px}
.ser-3 p{font-size:16px;color:var(--tx2);margin:10px 0 0}
@media(max-width:860px){.ser-3{grid-template-columns:minmax(0,1fr)}}

/* board */
.board{background:#070605;border:1px solid #2c2820;padding:clamp(10px,2vw,22px);position:relative;font-family:var(--mono);color:#ffb347;box-shadow:inset 0 0 60px rgba(0,0,0,.9)}
.board::after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(0,0,0,.55) 35%,transparent 36%);background-size:3px 3px;mix-blend-mode:multiply}
.board-h,.board-r{display:grid;grid-template-columns:52px minmax(0,1.5fr) minmax(0,1.1fr) minmax(0,1.6fr) 70px;gap:16px;align-items:center}
.board-h{font-size:10px;letter-spacing:.16em;color:#7a5a2a;padding:0 12px 10px;border-bottom:1px dashed #3d2c14}
.board-r{text-decoration:none;padding:14px 12px;border-bottom:1px dashed #2a1f10;color:#ffb347;text-shadow:0 0 8px rgba(255,160,40,.55);position:relative;transition:background .2s}
.board-r:hover,.board-r:focus-visible{background:rgba(255,160,40,.07)}
.b-n{font-size:clamp(22px,2.4vw,32px);font-weight:600}
.b-t{font-size:clamp(14px,1.4vw,19px);font-weight:600;letter-spacing:.08em}
.b-p,.b-l{font-size:12px;color:#d99a40;letter-spacing:.03em}
.b-x{text-align:right;font-size:18px}
.b-q{grid-column:2 / -1;font-family:var(--serif);font-size:15px;color:#c9bfa8;text-shadow:none;max-height:0;overflow:hidden;opacity:0;transition:max-height .35s,opacity .35s}
.board-r:hover .b-q,.board-r:focus-visible .b-q{max-height:80px;opacity:1}
.board-r.r5,.board-r.r6{background:rgba(255,120,20,.05)}
.board-r.r5 .b-n,.board-r.r6 .b-n{color:#fff1d8;text-shadow:0 0 14px rgba(255,170,60,.9)}
@media(max-width:760px){.board-h{display:none}.board-r{grid-template-columns:44px minmax(0,1fr) auto;gap:4px 12px}.b-n{grid-row:span 3}.b-p,.b-l{grid-column:2}.b-x{grid-row:1;grid-column:3}.b-q{grid-column:2 / -1;max-height:none;opacity:1;font-size:14px}}
@media(hover:none){.b-q{max-height:none;opacity:1}}

/* rings */
.rings-wrap{display:grid;grid-template-columns:200px minmax(0,1fr);gap:30px;align-items:start}
.rings-ctl{display:flex;flex-direction:column;gap:6px;position:sticky;top:130px}
.rings-ctl button{font-family:var(--mono);font-size:13px;text-align:left;background:none;border:1px solid var(--line2);color:var(--tx2);padding:9px 12px;cursor:pointer}
.rings-ctl button.on{border-color:var(--amb);color:var(--amb)}
.rings-far{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-top:14px}
.rings-far b{display:block;font-family:var(--disp);font-size:44px;font-weight:800;color:var(--tx);line-height:1}
.rings{width:100%;max-width:820px;height:auto;margin:0 auto;display:block;overflow:visible}
.rings .rg{fill:none;stroke:var(--line2);stroke-dasharray:2 5}
.rings .rg-t{font-family:var(--mono);font-size:10px;fill:var(--tx3)}
.rings .ax{stroke:var(--line);stroke-width:.6}
.rings .pl circle{fill:var(--tx3);transition:fill .3s,r .3s}
.rings .pl text{font-family:var(--mono);font-size:12px;fill:var(--tx2);transition:opacity .3s}
.rings .pl .km{font-size:9.5px;fill:var(--tx3)}
.rings .pl-ray{stroke:var(--amb);stroke-width:1;opacity:0;transition:opacity .4s}
.rings .pl.now circle{fill:var(--amb)}
.rings .pl.now text{fill:var(--tx);font-weight:600}
.rings .pl.now .pl-ray{opacity:.55}
.rings .pl.past circle{fill:var(--tx2)}
.rings .pl.fut{opacity:.16}
.rings-list{list-style:none;padding:0;margin:14px 0 0;font-family:var(--mono);font-size:12px;color:var(--tx2)}
.rings-list li{padding:4px 0;border-top:1px solid var(--line)}
.rings-list b{color:var(--amb);font-weight:500}
@media(max-width:760px){.rings-wrap{grid-template-columns:minmax(0,1fr)}.rings-ctl{position:static;flex-direction:row;flex-wrap:wrap}.rings-ctl button{padding:7px 10px}.rings-far{width:100%;margin-top:4px}.rings-list{width:100%;display:flex;flex-wrap:wrap;gap:4px 16px}.rings-list li{border:0}.rings .pl text{font-size:30px}.rings .pl:not(.now) text{display:none}.rings .pl .km{display:none}.rings .rg-t{font-size:22px}.rings .pl circle{r:9}}

/* threads */
.thr{border-top:1px solid var(--line)}
.thr-r{display:grid;grid-template-columns:170px repeat(6,minmax(0,1fr));border-bottom:1px solid var(--line)}
.thr-h a{font-family:var(--mono);font-size:12px;color:var(--tx2);text-decoration:none;padding:10px 10px}
.thr-h a.hot{color:var(--amb)}
.thr-n{font-family:var(--disp);font-weight:700;font-size:15px;text-align:left;background:none;border:0;color:var(--tx2);padding:14px 10px 14px 0;cursor:pointer}
.thr-c{position:relative;font-size:14px;color:var(--tx2);padding:14px 10px;line-height:1.35;transition:color .3s,background .3s}
.thr-c i{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--amb);transform:scaleX(0);transform-origin:left;transition:transform .5s;opacity:.35}
.thr-c.nil{color:var(--line2)}
.thr.sel .thr-r:not(.on):not(.thr-h) .thr-c{opacity:.7}
.thr-r.on .thr-n{color:var(--amb)}
.thr-r.on .thr-c{color:var(--tx);background:color-mix(in srgb,var(--amb) 7%,transparent)}
.thr-r.on .thr-c i{transform:scaleX(1)}
.thr-r.on .thr-c:nth-child(n+6){background:color-mix(in srgb,var(--amb) 13%,transparent)}
@media(max-width:860px){.thr-h{display:none}.thr-r{grid-template-columns:repeat(2,minmax(0,1fr))}.thr-n{grid-column:1/-1;padding-bottom:4px}.thr-c{padding:6px 10px 10px 34px}.thr-c::before{content:"E" attr(data-j);position:absolute;left:0;top:7px;font-family:var(--mono);font-size:10px;color:var(--amb)}.thr-c i{display:none}.thr.sel .thr-r:not(.on) .thr-c{display:none}}

/* doll */
.doll-in{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,5vw,70px);align-items:center}
.doll-l{list-style:none;padding:0;margin:0;counter-reset:d}
.doll-l li{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:17px}
.doll-l a{font-family:var(--mono);font-size:12px;color:var(--amb);text-decoration:none;padding-top:4px}
.doll-ph .ph{padding:0;border:0;background:none;cursor:zoom-in;display:block;width:100%}
.doll-ph img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(.3) sepia(.15)}
.doll-ph figcaption{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-top:8px}
@media(max-width:860px){.doll-in{grid-template-columns:minmax(0,1fr)}}

/* rules (redacted) */
.rules{list-style:none;padding:0;margin:0}
.rules li{display:grid;grid-template-columns:46px minmax(0,260px) minmax(0,1fr);gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline}
.r-n{font-family:var(--mono);font-size:12px;color:var(--red)}
.rules b{font-family:var(--disp);font-size:clamp(17px,1.6vw,21px);font-weight:700}
.r-d{position:relative;color:var(--tx2);font-size:16px}
.r-bar{position:absolute;inset:-2px -4px;background:var(--tx);transform-origin:right;transition:transform .9s cubic-bezier(.7,0,.2,1) .25s}
.rules li.in .r-bar{transform:scaleX(0)}
@media(max-width:720px){.rules li{grid-template-columns:36px minmax(0,1fr)}.r-d{grid-column:2}}

/* tone */
.tone{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 50px}
.tone div{border-top:1px solid var(--line);padding:16px 0}
.tone dt{font-family:var(--disp);font-weight:700;font-size:19px}
.tone dd{margin:4px 0 0;color:var(--tx2)}
@media(max-width:720px){.tone{grid-template-columns:minmax(0,1fr)}}

/* cast matrix */
.castm{border-top:1px solid var(--line)}
.cm-r{display:grid;grid-template-columns:minmax(0,1fr) repeat(6,44px);align-items:center;border-bottom:1px solid var(--line);padding:9px 0}
.cm-h a{font-family:var(--mono);font-size:11px;color:var(--tx3);text-decoration:none;text-align:center}
.cm-n b{font-family:var(--disp);font-size:16px;font-weight:700}
.cm-n em{font-style:normal;color:var(--red)}
.cm-n small{display:block;font-family:var(--mono);font-size:11px;color:var(--tx3)}
.cm-d{width:11px;height:11px;border-radius:50%;border:1px solid var(--line2);justify-self:center}
.cm-d.on{background:var(--amb);border-color:var(--amb)}
@media(max-width:560px){.cm-r{grid-template-columns:minmax(0,1fr) repeat(6,22px)}.cm-d{width:9px;height:9px}}

/* season timeline */
.stl{border-top:1px solid var(--line)}
.stl-head,.stl-row{display:grid;grid-template-columns:90px repeat(3,minmax(0,1fr));gap:20px}
.stl-head{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:12px 0;border-bottom:1px solid var(--line);position:sticky;top:calc(var(--topH) + 38px);background:var(--bg);z-index:2}
.lane-s{--c:var(--amb)}.lane-r{--c:var(--red)}.lane-w{--c:var(--cold)}
.stl-head span{color:var(--c)}
.stl-row{border-bottom:1px solid var(--line);padding:16px 0}
.stl-row.gap{border-top:3px double var(--line2);margin-top:20px}
.stl-y{font-family:var(--disp);font-weight:800;font-size:30px;line-height:1}
.stl-l{display:none}
.stl-e{display:block;text-decoration:none;font-size:14.5px;line-height:1.4;color:var(--tx2);padding:4px 0 6px 12px;border-left:2px solid var(--c);margin-bottom:8px}
.stl-e:hover{color:var(--tx)}
.stl-e b{font-family:var(--mono);font-weight:500;font-size:11px;color:var(--c);display:block}
.stl-e em{font-style:normal;font-family:var(--mono);font-size:10px;color:var(--tx3)}
@media(max-width:820px){.stl-head{display:none}.stl-row{grid-template-columns:minmax(0,1fr);gap:4px}.stl-c:empty{display:none}.stl-l{display:block;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--c);margin:6px 0 4px}.stl-c:not(:has(a)){display:none}}

/* horizon */
.hor{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px}
.hor-c{background:var(--bg2);padding:26px 22px 30px;border-top:3px solid var(--line2)}
.hor-c.on{border-top-color:var(--amb)}
.hor-n{font-family:var(--disp);font-weight:900;font-size:54px;line-height:1;color:var(--line2)}
.hor-c.on .hor-n{color:var(--amb)}
.hor-c b{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.06em;margin:10px 0 8px}
.hor-c p{margin:0;color:var(--tx2);font-size:16px}
@media(max-width:820px){.hor{grid-template-columns:minmax(0,1fr)}}
.ser-go{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}

/* ================= episode dossier ================= */
.dh{position:relative;min-height:min(92svh,860px);display:flex;align-items:flex-end;overflow:hidden;background:#000}
.dh-bg{position:absolute;inset:0;background:center 30%/cover;filter:grayscale(.35) sepia(.25) brightness(.5) contrast(1.1);transform:scale(1.06);animation:soZ 16s ease-out forwards}
.ep5 .dh-bg,.ep6 .dh-bg{filter:sepia(.35) brightness(.48) contrast(1.15)}
.dh::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5),transparent 35%,rgba(11,10,8,.94) 92%)}
.dh-in{position:relative;z-index:2;max-width:var(--max);margin:0 auto;width:100%;padding:0 var(--pad) clamp(40px,7vh,80px)}
.dh-num{position:absolute;right:var(--pad);bottom:clamp(10px,4vh,40px);font-family:var(--disp);font-weight:900;font-stretch:125%;font-size:clamp(140px,28vw,420px);line-height:.8;color:transparent;-webkit-text-stroke:1.5px rgba(232,163,61,.55);pointer-events:none;z-index:-1}
.wl{color:var(--tx3);text-transform:none;letter-spacing:.04em}
.dh-t{font-size:clamp(46px,8vw,120px);color:var(--tx);margin:8px 0 16px;max-width:14ch;text-wrap:balance}
.dh-meta{display:flex;flex-wrap:wrap;gap:8px 22px;font-family:var(--mono);font-size:12.5px;color:var(--tx2)}
.dh-meta span+span::before{content:"◦ ";color:var(--amb)}
.dh-q{font-family:var(--serif);font-size:clamp(20px,2.3vw,30px);line-height:1.3;max-width:34ch;margin:26px 0 0;color:var(--tx);text-wrap:balance}
.dh-q span{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--amb);margin-bottom:6px}
.dh-cap{position:absolute;z-index:3;top:calc(var(--topH) + 14px);right:var(--pad);font-family:var(--mono);font-size:10px;color:var(--tx2);background:rgba(0,0,0,.55);padding:3px 7px;max-width:50%;text-align:right}
.d-syn{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(30px,5vw,80px);padding:clamp(60px,8vw,110px) 0 0}
.d-syn-t p{font-family:var(--serif);font-size:clamp(18px,1.6vw,21px);line-height:1.6;margin:12px 0 0}
.d-oc{display:flex;flex-direction:column;gap:22px;border-left:1px solid var(--line);padding-left:clamp(18px,3vw,36px)}
.d-oc p{margin:6px 0 0;font-size:17px;color:var(--tx2)}
.d-oc .chip.big{align-self:flex-start;white-space:normal}
@media(max-width:860px){.d-syn{grid-template-columns:minmax(0,1fr)}.d-oc{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:20px}}

.mom{padding:clamp(70px,9vw,120px) 0 0}
.mom-row{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px var(--pad) 18px;scrollbar-width:thin}
.mom-c{flex:0 0 clamp(230px,24vw,300px);scroll-snap-align:start;background:var(--bg2);border:1px solid var(--line);display:flex;flex-direction:column}
.mom-img{display:block;width:100%;aspect-ratio:4/3;border:0;padding:0;background:#000 center/cover;filter:grayscale(.3) sepia(.15);cursor:zoom-in}
.mom-img.none{display:grid;place-items:center;cursor:default;font-family:var(--disp);font-weight:900;font-size:64px;color:var(--line2);background:repeating-linear-gradient(135deg,var(--bg2) 0 8px,var(--bg3) 8px 9px);filter:none}
.mom-t{padding:14px 16px 18px}
.mom-t span{font-family:var(--mono);font-size:11px;color:var(--amb)}
.mom-t b{display:block;font-family:var(--disp);font-size:18px;line-height:1.15;margin:4px 0 6px}
.mom-t p{margin:0;font-size:14.5px;color:var(--tx2);line-height:1.45}

.d-chr{padding:clamp(70px,9vw,120px) 0 0}
.chr-leg{display:flex;gap:18px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;margin:-14px 0 18px}
.chr-leg span{color:var(--c)}.chr-leg i{display:inline-block;width:9px;height:9px;background:var(--c);margin-right:6px}
.chr{list-style:none;margin:0;padding:0;border-left:1px solid var(--line2);margin-left:120px}
.chr li{position:relative;padding:10px 0 14px 22px}
.chr time{position:absolute;right:calc(100% + 16px);top:12px;width:110px;text-align:right;font-family:var(--mono);font-size:12px;color:var(--c)}
.chr i{position:absolute;left:-5px;top:16px;width:9px;height:9px;background:var(--c)}
.chr span{font-size:16px}
@media(max-width:600px){.chr{margin-left:6px}.chr time{position:static;display:block;text-align:left;width:auto}}

.d-ph,.d-thr,.rot,.res{padding:clamp(70px,9vw,120px) 0 0}
.gal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(150px,15vw,220px);gap:6px}
.gal-i{position:relative;padding:0;border:0;background:#000;overflow:hidden;cursor:zoom-in}
.gal-i.w2{grid-column:span 2;grid-row:span 2}
.gal-i img{width:100%;height:100%;object-fit:cover;filter:grayscale(.25) sepia(.12);transition:transform .6s,filter .4s}
.gal-i:hover img{transform:scale(1.04);filter:none}
.gal-i span{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;font-family:var(--mono);font-size:10.5px;color:#efe7d6;text-align:left;background:linear-gradient(transparent,rgba(0,0,0,.85));opacity:0;transition:opacity .3s}
.gal-i:hover span,.gal-i:focus-visible span{opacity:1}
@media(max-width:720px){.gal{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:150px}.gal-i span{opacity:1;font-size:9.5px}}

.dthr{border-top:1px solid var(--line)}
.dthr-r{display:grid;grid-template-columns:200px minmax(0,1fr) 110px;gap:16px;align-items:center;border-bottom:1px solid var(--line);padding:13px 0}
.dthr-r b{font-family:var(--disp);font-size:15px}
.dthr-r span.nil{color:var(--tx3)}
.dthr-pp{display:flex;gap:5px;justify-content:flex-end}
.dthr-pp i{width:12px;height:12px;border:1px solid var(--line2)}
.dthr-pp i:not(.nil){background:var(--line2)}
.dthr-pp i.cur{background:var(--amb);border-color:var(--amb)}
@media(max-width:620px){.dthr-r{grid-template-columns:minmax(0,1fr) auto}.dthr-r>span:nth-child(2){grid-column:1/-1;grid-row:2}}

.rot-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}
.rot-c{background:var(--bg2);padding:16px 18px}
.rot-c ul{list-style:none;padding:0;margin:10px 0 0;font-family:var(--mono);font-size:13px}
.rot-c li{display:flex;justify-content:space-between;border-top:1px dashed var(--line);padding:6px 0}
.rot-c li.ten b{color:var(--amb)}
@media(max-width:820px){.rot-g{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 23 seconds */
.secs{margin-top:clamp(70px,9vw,120px);background:#000;position:relative;overflow:hidden;min-height:60vh;display:grid;place-items:center;text-align:center;scroll-margin-top:100px}
.secs::before{content:"";position:absolute;inset:0;background:url(m_20cb93d21639603f306b958e40f410fa/ser/0613.webp) center/cover;filter:grayscale(1) brightness(.28) contrast(1.2)}
.secs-in{position:relative;z-index:1;padding:60px var(--pad)}
.secs h2{font-size:clamp(46px,8vw,120px);color:#efe7d6;margin:10px 0 26px}
.secs-play{display:inline-flex;align-items:center;gap:14px;font-family:var(--mono);font-size:13px;letter-spacing:.1em;text-transform:uppercase;background:none;border:1px solid #e8a33d;color:#efe7d6;padding:14px 22px;cursor:pointer}
.secs-play:hover{background:#e8a33d;color:#000}
.secs-tri{width:0;height:0;border-left:12px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent}
.s23{position:fixed;inset:0;z-index:210;background:#000;color:#efe7d6;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px}
.s23[hidden]{display:none}
.s23-x{position:absolute;top:14px;right:18px;background:none;border:0;color:#ada492;font-size:34px;cursor:pointer}
.s23-clock{position:absolute;top:22px;left:24px;font-family:var(--mono);font-size:13px;letter-spacing:.14em;color:#736b5c}
.s23-lines{max-width:760px;text-align:center;min-height:5.5em}
.s23-lines p{font-family:var(--serif);font-size:clamp(22px,3.4vw,44px);line-height:1.25;margin:0;display:none}
.s23-lines p.cur{display:block;animation:s23in 1.2s ease}
@keyframes s23in{from{opacity:0;filter:blur(6px)}to{opacity:1;filter:none}}
.s23-beat{position:absolute;left:50%;bottom:90px;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#d8452b;animation:beat 1.05s infinite;opacity:.8}
@keyframes beat{0%,100%{transform:scale(1);opacity:.35}12%{transform:scale(1.8);opacity:.95}24%{transform:scale(1.1);opacity:.5}34%{transform:scale(1.5);opacity:.8}}
.s23-bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:#1c1914}
.s23-bar i{display:block;height:100%;background:#e8a33d;transform:scaleX(0);transform-origin:left}
.s23-skip{position:absolute;bottom:28px;right:24px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:none;border:1px solid #3d372c;color:#ada492;padding:7px 11px;cursor:pointer}
.s23-end{display:none;text-align:center}
.s23.done .s23-lines,.s23.done .s23-skip,.s23.done .s23-beat{display:none}
.s23.done .s23-end{display:block;animation:s23in 1.4s ease}
.s23-board{display:inline-flex;flex-direction:column;align-items:center;gap:22px;background:#050505;border:1px solid #2c2820;padding:30px 40px;margin-bottom:26px}
.s23-num .dm{--d:9px}.s23-sc .dm{--d:15px}
.s23.done .s23-sc .dm-g i.on{animation:flick 1.6s steps(1) 1}
@keyframes flick{0%,10%,22%{opacity:.15}5%,16%,30%,100%{opacity:1}}
.s23-end p{font-family:var(--serif);font-size:clamp(17px,2vw,22px);max-width:40ch;margin:0 auto 22px;color:#ddd4c2}
.s23-btns{display:flex;gap:8px;justify-content:center}
.s23-btns .chip{font-size:12px;padding:9px 14px;color:#efe7d6}
@media(max-width:560px){.s23-board{padding:18px 20px}.s23-sc .dm{--d:9px}.s23-num .dm{--d:6px}}
@media (prefers-reduced-motion:reduce){.s23-beat{animation:none}.s23-lines p.cur,.s23.done .s23-end,.s23.done .s23-sc .dm-g i.on{animation:none}.so-bg,.dh-bg{animation:none;transform:none}.r-bar{display:none}}

/* E6 result */
.res-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:50px;align-items:end}
.podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:4px;text-align:center}
.pd-s{font-family:var(--mono);font-size:14px;color:var(--tx2);margin-bottom:8px}
.pd-b{background:var(--bg3);display:grid;place-items:start center;padding-top:10px}
.pd-b b{font-family:var(--disp);font-weight:900;font-size:40px;color:var(--tx3)}
.pd1 .pd-b{height:190px;background:var(--amb)}.pd1 .pd-b b{color:#000}
.pd2 .pd-b{height:140px}.pd3 .pd-b{height:105px}
.pd1 .pd-s{color:var(--amb);font-size:18px;font-weight:600}
.pd-n{font-family:var(--disp);font-weight:700;font-size:15px;margin-top:10px}
.pd-n small{display:block;font-family:var(--mono);font-weight:400;font-size:11px;color:var(--tx3)}
.medals{list-style:none;padding:0;margin:0}
.medals li{display:grid;grid-template-columns:22px 130px minmax(0,1fr);gap:10px;align-items:center;border-bottom:1px solid var(--line);padding:11px 0}
.medals i{width:16px;height:16px;border-radius:50%}
.m-g i{background:#d9a93a}.m-s i{background:#b9bcc0}.m-b i{background:#a86b3c}
.medals span{font-family:var(--mono);font-size:12.5px;color:var(--tx2)}
.res-note{font-family:var(--serif);font-size:20px;margin:24px 0 0}
@media(max-width:820px){.res-in{grid-template-columns:minmax(0,1fr)}.pd1 .pd-b{height:140px}.pd2 .pd-b{height:100px}.pd3 .pd-b{height:75px}}
.back89{margin-top:clamp(60px,8vw,100px);background:#000 url(m_20cb93d21639603f306b958e40f410fa/ser/0922.webp) center/cover;position:relative}
.back89::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(20,35,55,.55))}
.back89-a{position:relative;display:block;padding:clamp(50px,8vw,100px) var(--pad);text-decoration:none;color:#efe7d6}
.back89-a .kick{color:#9fc0e0}
.back89-a b{display:block;font-family:var(--disp);font-size:clamp(26px,4vw,52px);font-weight:800;margin-top:8px;max-width:20ch}
.back89-a:hover b{color:#9fc0e0}
.pn{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin:70px 0 30px;border-top:1px solid var(--line);padding-top:24px}
.pn a{text-decoration:none}
.pn small{display:block;font-family:var(--mono);font-size:11px;color:var(--tx3)}
.pn b{font-family:var(--disp);font-size:clamp(16px,1.8vw,22px)}
.pn a:hover b{color:var(--amb)}
.pn .r{text-align:right}
.pn-mid{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line2);padding:8px 12px;color:var(--tx2)}
@media(max-width:620px){.pn{grid-template-columns:1fr 1fr}.pn-mid{grid-column:1/-1;grid-row:2;justify-self:center}}

/* E1 tail: the other five */
.others{padding:clamp(80px,10vw,140px) 0 0}
.others h2{font-size:clamp(32px,5vw,70px);margin:8px 0 30px}
.oth-g{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;padding:0 3px;margin-bottom:24px}
.oth-c{position:relative;min-height:440px;overflow:hidden;text-decoration:none;color:#efe7d6;background:#000;display:flex;align-items:flex-end}
.oth-bg{position:absolute;inset:0;background:center/cover;filter:grayscale(.6) sepia(.2) brightness(.42);transition:transform .8s,filter .5s}
.oth-c:hover .oth-bg{transform:scale(1.05);filter:grayscale(.1) sepia(.2) brightness(.5)}
.oth-c::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(0,0,0,.9))}
.oth-in{position:relative;z-index:1;padding:20px 18px 22px}
.oth-n{font-family:var(--disp);font-weight:900;font-size:58px;line-height:1;color:transparent;-webkit-text-stroke:1px #e8a33d}
.oth-c.hot .oth-n{color:#e8a33d;-webkit-text-stroke:0}
.oth-in b{display:block;font-family:var(--disp);font-size:20px;line-height:1.1;margin:6px 0 4px}
.oth-in small{font-family:var(--mono);font-size:11px;color:#ada492}
.oth-in p{font-size:14px;line-height:1.4;color:#ddd4c2;margin:10px 0 12px}
.oth-go{font-family:var(--mono);font-size:11px;color:#e8a33d;letter-spacing:.06em}
@media(max-width:1100px){.oth-g{grid-template-columns:repeat(2,minmax(0,1fr))}.oth-c{min-height:340px}.oth-c:last-child{grid-column:1/-1}}
@media(max-width:560px){.oth-g{grid-template-columns:minmax(0,1fr)}.oth-c{min-height:300px}}

/* ===== LAYER 2: cards, chronology, arcs, gallery, context, Montreal, map, timeline, control room, search, people ===== */
.srch-btn{flex:none;width:34px;height:30px;display:grid;place-items:center;border:1px solid var(--line2);color:var(--tx2);margin-left:8px}
.srch-btn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.srch-btn:hover,.theme-btn:hover{color:var(--amb);border-color:var(--amb)}
.lede2{font-family:var(--serif);font-size:18px;line-height:1.5;color:var(--tx2);max-width:68ch;margin:14px 0 26px}
.lede2 a{color:var(--amb)}
.cards2,.d-chr2,.arcs2,.d-ph2,.ctx2,.days2{padding:84px 0 40px;border-top:1px solid var(--line)}
.cards2 .h-disp,.d-chr2 .h-disp,.arcs2 .h-disp,.d-ph2 .h-disp,.ctx2 .h-disp,.days2 .h-disp,.m-sec .h-disp,.ser-sec .h-disp{font-size:clamp(30px,4.4vw,56px);margin-top:8px}
.pfilter{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 30px}
.pf-l{font-family:var(--mono);font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.12em;margin-right:6px}
.chip.on{border-color:var(--amb);color:var(--amb)}
.act2{margin:34px 0 0}
.act2-h{display:flex;gap:16px;align-items:baseline;border-bottom:1px solid var(--line2);padding-bottom:10px;margin-bottom:18px;flex-wrap:wrap}
.act2-h b{font-family:var(--disp);font-size:22px;font-weight:700;letter-spacing:.01em}
.act2-h span{font-family:var(--mono);font-size:12px;color:var(--tx3)}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.scard{position:relative;background:var(--bg2);border:1px solid var(--line);padding:20px 20px 18px;transition:opacity .35s,border-color .3s;display:block;color:inherit;text-decoration:none}
.scard:hover{border-color:var(--line2)}
.scard.dim{opacity:.18}
.scard.flash{border-color:var(--amb);box-shadow:0 0 0 1px var(--amb)}
.scard-n{font-family:var(--mono);font-size:11px;color:var(--amb);letter-spacing:.1em}
.scard h3{font-family:var(--disp);font-size:20px;line-height:1.15;margin:8px 0 6px;font-weight:700}
.scard-w{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-bottom:10px;letter-spacing:.02em}
.scard p{font-family:var(--serif);font-size:15.5px;line-height:1.55;color:var(--tx2);margin:0}
.scard-pp{display:flex;flex-wrap:wrap;gap:5px;margin-top:14px}
.chip.pc{font-size:10.5px;padding:2px 7px;color:var(--tx3)}
.chip.pc:hover{color:var(--amb);border-color:var(--amb)}
/* chronology */
.c2-f{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:24px}
.c2-f .chip i{display:inline-block;width:8px;height:8px;background:var(--c)}
.chr2{list-style:none;margin:0;padding:0;border-left:1px solid var(--line2)}
.chr2 li{display:grid;grid-template-columns:150px 14px 1fr;gap:10px;padding:10px 0 12px;border-bottom:1px solid var(--line);margin-left:-1px}
.chr2 li[hidden]{display:none}
.chr2 time{font-family:var(--mono);font-size:12px;color:var(--tx2);padding-left:14px}
.chr2 time a{color:var(--amb)}
.chr2 li>i{width:9px;height:9px;background:var(--c);margin-top:5px}
.chr2 li>div{font-family:var(--serif);font-size:16px;line-height:1.5;color:var(--tx)}
.c2-p{font-family:var(--mono);font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.05em}
.c2-u{font-family:var(--mono);font-size:10px;color:var(--red);border:1px solid var(--red);padding:0 5px;margin-left:4px;white-space:nowrap}
.c2-s{display:block;font-family:var(--mono);font-size:10.5px;color:var(--tx3);margin-top:4px}
.chr2.clip li:nth-child(n+37){display:none}
.c2-more{margin-top:18px}
.c2-br{margin:0 0 22px;border:1px solid var(--line);padding:0 14px}
.c2-br summary{cursor:pointer;font-family:var(--mono);font-size:12px;color:var(--tx2);padding:12px 0;letter-spacing:.06em;text-transform:uppercase}
.c2-br .chr2{margin-bottom:14px}
.chr2.sm li{grid-template-columns:1fr;gap:4px}
.chr2.sm li>i{display:none}
.chr2.sm time{padding-left:0}
.chr2.sm li>div{font-size:14px}
/* arcs */
.arcs2-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:40px;align-items:start}
.arcs2-l{display:grid;gap:8px}
.arc2{display:grid;grid-template-columns:150px 1fr;gap:4px 14px;padding:12px 14px;border:1px solid var(--line);background:var(--bg2);color:inherit;text-decoration:none}
.arc2:hover{border-color:var(--amb)}
.arc2 b{font-family:var(--disp);font-size:15px}
.arc2 span{font-family:var(--serif);font-size:15px;line-height:1.45;color:var(--tx2)}
.arc2-pp{grid-column:1;display:flex;gap:3px;align-self:end}
.arc2-pp i{width:12px;height:4px;background:var(--line2)}
.arc2-pp i.y{background:var(--tx3)}
.arc2-pp i.cur{background:var(--amb)}
.rg2{width:100%;height:auto;display:block;background:var(--bg2);border:1px solid var(--line)}
.rg2-e{stroke-width:1.6;opacity:.65;transition:opacity .2s,stroke-width .2s}
.rg2.sel .rg2-e{opacity:.12}
.rg2.sel .rg2-e.hi{opacity:1;stroke-width:3}
.rg2-n circle{fill:var(--bg);stroke:var(--tx2);stroke-width:1.5}
.rg2-n.c circle{fill:var(--amb);stroke:var(--amb)}
.rg2-n text{font-family:var(--mono);font-size:12px;fill:var(--tx)}
.rg2-n:hover circle{stroke:var(--amb)}
.rg2-leg{display:flex;gap:14px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;color:var(--tx3);margin:10px 0}
.rg2-leg i,.rg2-list i{display:inline-block;width:14px;height:3px;margin-right:6px;vertical-align:middle}
.rg2-list{list-style:none;margin:0;padding:0;font-family:var(--serif);font-size:14.5px;color:var(--tx2)}
.rg2-list li{padding:6px 0;border-bottom:1px solid var(--line);cursor:default}
.rg2-list li:hover{color:var(--tx)}
.rg2-list b{font-family:var(--mono);font-size:11.5px;color:var(--tx);font-weight:600;margin-right:4px}
.rg2-list a{color:var(--amb)}
/* gallery + contact sheet */
.seg2{display:inline-flex;border:1px solid var(--line2);margin-bottom:22px}
.seg2 button{background:none;border:0;color:var(--tx2);font-family:var(--mono);font-size:12px;padding:9px 14px;cursor:pointer;letter-spacing:.05em}
.seg2 button.on{background:var(--amb);color:#140f08}
.gal2{display:grid;gap:10px}
.gal2[data-view="g"]{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-auto-rows:190px;grid-auto-flow:dense}
.gal2[data-view="g"] .w2{grid-column:span 2;grid-row:span 2}
.g2{position:relative;padding:0;border:0;background:var(--bg3);cursor:zoom-in;overflow:hidden;display:block;width:100%}
.g2 img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease,filter .4s}
.gal2[data-view="g"] .g2:hover img{transform:scale(1.04)}
.g2-c{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;font-family:var(--mono);font-size:10.5px;line-height:1.35;color:#efe6d6;background:linear-gradient(transparent,rgba(0,0,0,.82));text-align:left;opacity:0;transition:opacity .3s}
.g2:hover .g2-c,.g2:focus-visible .g2-c{opacity:1}
.g2-f{display:none}
.gal2[data-view="c"]{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:4px;background:#0b0907;padding:26px 12px;border:1px solid #2a231b;position:relative}
.gal2[data-view="c"]::before,.gal2[data-view="c"]::after{content:"";position:absolute;left:0;right:0;height:10px;background:repeating-linear-gradient(90deg,transparent 0 10px,#2b241c 10px 20px)}
.gal2[data-view="c"]::before{top:7px}.gal2[data-view="c"]::after{bottom:7px}
.gal2[data-view="c"] .g2{aspect-ratio:1/1;background:#000;border:1px solid #1d1813}
.gal2[data-view="c"] .g2 img{object-fit:contain;filter:grayscale(.15) contrast(1.05)}
.gal2[data-view="c"] .g2:hover img{filter:none}
.gal2[data-view="c"] .g2-c{display:none}
.gal2[data-view="c"] .g2-f{display:block;position:absolute;left:4px;bottom:2px;font-family:var(--mono);font-size:9px;color:#d9a440;letter-spacing:.05em}
/* context */
.ctx-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;margin-top:26px}
.ctx{border:1px solid var(--line);background:var(--bg2);padding:24px 22px;display:flex;flex-direction:column}
.ctx-y{font-family:var(--mono);font-size:12px;color:var(--amb);letter-spacing:.12em}
.ctx h3{font-family:var(--disp);font-size:24px;margin:8px 0 2px}
.ctx-d{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-bottom:12px}
.ctx p{font-family:var(--serif);font-size:15.5px;line-height:1.55;color:var(--tx2);margin:0 0 12px}
.ctx-w{border-left:2px solid var(--amb);padding-left:12px;color:var(--tx)!important}
.ctx-w b{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--amb);margin-right:6px}
.ctx-w a{font-family:var(--mono);font-size:11px;color:var(--amb);margin-left:4px}
.ctx-s{margin-top:auto;display:flex;flex-direction:column;gap:4px}
.ctx-s a{font-family:var(--mono);font-size:10.5px;color:var(--tx3)}
.ctx-s a:hover{color:var(--amb)}
/* days */
.dayl{list-style:none;padding:0;margin:0}
.day2{display:grid;grid-template-columns:200px 1fr;gap:28px;padding:26px 0;border-top:1px solid var(--line)}
.day2-h{display:flex;flex-direction:column;gap:8px;position:sticky;top:calc(var(--topH) + 60px);align-self:start}
.day2-n .dm{--d:7px}
.day2-m{font-family:var(--mono);font-size:12px;color:var(--tx2);text-transform:uppercase;letter-spacing:.14em}
.day2-t{font-family:var(--mono);color:var(--amb);font-size:13px;letter-spacing:2px}
.day2-t small{display:block;font-size:10px;color:var(--tx3);letter-spacing:.05em}
.day2-o{background:var(--bg2);border-left:3px solid var(--amb);padding:12px 14px;font-family:var(--serif);font-size:16px;margin-bottom:12px}
.day2-o b{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.12em;color:var(--amb);margin-right:6px}
.day2-o a{font-family:var(--mono);font-size:11px;color:var(--tx3)}
.day2-b ul{list-style:none;margin:0;padding:0}
.day2-b li{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:8px 0;border-bottom:1px solid var(--line)}
.day2-b li>i{width:8px;height:8px;background:var(--c);margin-top:7px}
.day2-b li>div{font-family:var(--serif);font-size:16px;line-height:1.5}
/* hub */
.hub2{display:flex;flex-wrap:wrap;gap:8px;margin:44px 0 0}
.hub2 a{flex:1 1 170px;border:1px solid var(--line2);padding:12px 14px;color:var(--tx);text-decoration:none;display:flex;flex-direction:column;gap:4px}
.hub2 a:hover{border-color:var(--amb)}
.hub2-k{font-family:var(--mono);font-size:10px;color:var(--tx3);text-transform:uppercase;letter-spacing:.12em}
.hub2 b{font-family:var(--disp);font-size:16px}
.hubg{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:26px}
.hubc{border:1px solid var(--line2);padding:22px 18px 18px;min-height:150px;display:flex;flex-direction:column;gap:6px;color:var(--tx);text-decoration:none;background:var(--bg2);transition:border-color .3s,transform .3s}
.hubc:hover{border-color:var(--amb);transform:translateY(-3px)}
.hubc-n{font-family:var(--mono);font-size:11px;color:var(--amb)}
.hubc b{font-family:var(--disp);font-size:22px;line-height:1.1;margin-top:auto}
.hubc span:last-child{font-family:var(--mono);font-size:11px;color:var(--tx3)}
.kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:26px}
.kpis>div{background:var(--bg);padding:16px 16px 14px;display:flex;flex-direction:column;gap:4px}
.kpis b{font-family:var(--disp);font-size:clamp(26px,3vw,40px);color:var(--amb);font-weight:800}
.kpis span{font-family:var(--mono);font-size:11px;color:var(--tx3)}
/* Montreal */
.mtl-hero{position:relative;min-height:calc(88svh - var(--topH));display:flex;align-items:flex-end;overflow:hidden;background:#07060a;color:#efe6d6}
.mtl-bg{position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:.38;filter:grayscale(.3) contrast(1.1)}
.mtl-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,6,10,.2),rgba(7,6,10,.92))}
.mtl-in{position:relative;z-index:1;padding:0 var(--pad) 64px;max-width:var(--max);margin:0 auto;width:100%}
.mtl-in .kick{color:#e8a33d}
.mtl-in h1{font-size:clamp(54px,10vw,150px);color:#efe6d6}
.mtl-board{display:inline-flex;flex-direction:column;gap:18px;background:#000;padding:22px 26px;border:1px solid #2a2a2a;margin:26px 0 18px}
.mtl-board .dm{--d:11px}
.mtl-boy{font-family:var(--serif);font-size:18px;color:#cfc5b4;max-width:60ch}
.mtl-boy a{color:#e8a33d;font-family:var(--mono);font-size:12px}
.m-sec{padding:64px 0 10px}
.tens{list-style:none;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;padding:0;margin:26px 0 0}
.tens li{border:1px solid var(--line2);padding:16px 10px;display:flex;flex-direction:column;gap:6px;align-items:flex-start;background:var(--bg2)}
.tens-sq{font-family:var(--disp);font-weight:800;font-size:40px;color:var(--amb);line-height:1}
.tens b{font-family:var(--mono);font-size:12px}
.tens li span:last-child{font-family:var(--mono);font-size:11px;color:var(--tx3)}
.mdays{list-style:none;padding:0;margin:24px 0 0}
.mdays li{display:grid;grid-template-columns:110px 1fr 80px;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);align-items:baseline}
.mdays time{font-family:var(--mono);font-size:13px;color:var(--amb)}
.mdays p{margin:0;font-family:var(--serif);font-size:17px;line-height:1.5}
.md-t{font-family:var(--mono);color:var(--amb);letter-spacing:3px;text-align:right}
.gpick{position:sticky;top:calc(var(--topH) + 46px);z-index:5;background:var(--bg);padding:12px 0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:40px}
.gpick>span{font-family:var(--mono);font-size:11px;color:var(--tx3);margin-right:8px}
.team2{display:grid;gap:5px;margin-top:24px}
.tm-r{display:grid;grid-template-columns:34px 170px 1fr 90px;gap:12px;align-items:center;font-family:var(--mono);font-size:13px}
.tm-k{color:var(--tx3)}
.tm-b{height:14px;background:var(--line)}
.tm-b i{display:block;height:100%;background:var(--tx3)}
.tm-r.rou .tm-b i{background:var(--amb)}
.tm-r.rou{color:var(--amb)}
.tm-r b{text-align:right}
.rost{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}
.rost ul{list-style:none;padding:0;margin:10px 0 0}
.rost li{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:13px}
.kick.cold{color:var(--cold)}
.tbl-wrap{overflow-x:auto;margin-top:22px;border:1px solid var(--line)}
.aa2,.fin-c table,.sez-t{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13px}
.aa2 th,.fin-c th,.sez-t thead th{font-weight:500;color:var(--tx3);font-size:11px;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:10px 10px;border-bottom:1px solid var(--line2);white-space:nowrap}
.aa2 td{padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
.aa2 td.sc{position:relative;min-width:84px}
.scb{position:absolute;left:10px;bottom:5px;height:2px;width:calc(var(--v)*60px);background:var(--tx3);opacity:.5}
.ten{color:var(--amb);font-weight:700}
.aa2 td.ten .scb{background:var(--amb);opacity:1}
.aa2 .tot,.fin-c .tot{font-weight:700}
.aa2 tr.p1 td:first-child,.fin-c tr.m1 td:first-child{color:#e8c25c}
.aa2 tr.p2 td:first-child,.fin-c tr.m2 td:first-child{color:#b9c0c8}
.aa2 tr.p3 td:first-child,.fin-c tr.m3 td:first-child{color:#c98a52}
.mono{font-family:var(--mono);color:var(--tx3)}
.fin2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:22px}
.fin-c{border:1px solid var(--line);background:var(--bg2);padding:16px 16px 12px}
.fin-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.fin-h b{font-family:var(--disp);font-size:22px}
.fin-h span{font-family:var(--mono);font-size:11px;color:var(--tx3)}
.fin-c td{padding:7px 6px;border-bottom:1px solid var(--line)}
.fin-c td small{color:var(--tx3)}
.fin-s{font-family:var(--mono);font-size:10.5px;color:var(--tx3);display:inline-block;margin-top:8px}
.mtl.pick [data-g]:not(button):not(.hl){opacity:.28}
.mtl [data-g]{transition:opacity .25s}
.mtl tr.hl td,.mtl li.hl{background:color-mix(in srgb,var(--amb) 14%,transparent)}
.gcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-top:22px}
.gc{border:1px solid var(--line);background:var(--bg2);padding:18px}
.gc.hl{border-color:var(--amb)}
.gc-nat{font-family:var(--mono);font-size:11px;color:var(--tx3);text-transform:uppercase;letter-spacing:.12em}
.gc h3{font-family:var(--disp);font-size:22px;margin:6px 0 12px}
.gc h3 a{color:inherit}
.gc-m{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:12px}
.md{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10.5px;color:var(--tx2);border:1px solid var(--line2);padding:2px 7px}
.md i{width:9px;height:9px;border-radius:50%;background:var(--tx3)}
.md-g i{background:#e8c25c}.md-s i{background:#b9c0c8}.md-b i{background:#c98a52}
.gc dl{margin:0;display:grid;gap:6px}
.gc dl div{display:flex;justify-content:space-between;gap:10px;font-family:var(--mono);font-size:12px;border-top:1px solid var(--line);padding-top:6px}
.gc dt{color:var(--tx3)}
/* map */
.map2-top{display:flex;flex-wrap:wrap;gap:20px 30px;align-items:flex-end;justify-content:space-between;padding-top:40px;padding-bottom:20px}
.map2-top h1,.tl2-top h1,.sez-h h1,.srch h1,.per-h h1{font-size:clamp(38px,6vw,84px);margin-top:6px}
.map2-ctl,.tl2-ctl{display:flex;flex-wrap:wrap;gap:4px}
.map2-ctl button,.tl2-ctl button{background:none;border:1px solid var(--line2);color:var(--tx2);font-family:var(--mono);font-size:12px;padding:8px 12px;cursor:pointer;border-bottom:3px solid var(--ec,var(--line2))}
.map2-ctl button.on,.tl2-ctl button.on{color:var(--tx);background:var(--bg2);border-color:var(--ec,var(--amb))}
.map2-mode{margin:0}
.map2{display:grid;grid-template-columns:minmax(0,1fr) 340px;height:calc(100svh - var(--topH) - 170px);min-height:480px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lmap{height:100%;background:#0d0c0b}
html[data-theme="day"] .lmap{background:#e9e4d8}
.map2-side{overflow:auto;padding:18px 18px 30px;border-left:1px solid var(--line);background:var(--bg)}
.ms-e{margin-bottom:22px}
.ms-e h3{font-family:var(--disp);font-size:17px;margin:0 0 8px;border-left:3px solid var(--ec,var(--amb));padding-left:8px}
.ms-e h3 a{color:inherit}
.ms-e ol{margin:0;padding-left:22px;font-family:var(--mono);font-size:12px;color:var(--tx2)}
.ms-e ol li{padding:3px 0}
.ms-e ol li span{margin-left:8px;color:var(--tx3)}
.ms-e ol li span a{color:var(--amb);margin-right:3px}
.ms-pl{list-style:none;padding:0!important}
.ms-pl button{display:flex;justify-content:space-between;width:100%;background:none;border:0;border-bottom:1px solid var(--line);color:var(--tx);font-family:var(--mono);font-size:12px;padding:6px 0;cursor:pointer}
.ms-pl button:hover{color:var(--amb)}
.leaflet-container{font-family:var(--mono)}
.leaflet-tooltip{font-family:var(--mono);font-size:11px}
/* timeline */
.tl2-top{display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:flex-end;padding-top:40px;padding-bottom:20px}
.tl2{position:relative;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#tl2{width:100%;height:min(560px,calc(100svh - var(--topH) - 230px));min-height:400px;display:block;touch-action:none;cursor:grab;user-select:none}
#tl2:active{cursor:grabbing}
.tl2-ln{fill:var(--bg)}.tl2-ln.o{fill:var(--bg2)}
.tl2-lt{font-family:var(--mono);font-size:10.5px;fill:var(--tx3);text-transform:uppercase;letter-spacing:.06em}
.tl2-g{stroke:var(--line);stroke-width:1}.tl2-g.y{stroke:var(--line2)}
.tl2-yt{font-family:var(--mono);font-size:10.5px;fill:var(--tx3)}
.tl2-ep{opacity:.8;cursor:pointer}
.tl2-et{font-family:var(--mono);font-size:11px;fill:#140f08;font-weight:700;dominant-baseline:middle}
.tl2-d{fill:var(--c);opacity:.78;cursor:pointer;transition:r .15s}
.tl2-d:hover,.tl2-d.on{opacity:1;stroke:var(--tx);stroke-width:1.5}
.tl2-d.u{fill:none;stroke:var(--c);stroke-width:1.4}
.tl2-10{stroke:var(--amb);stroke-dasharray:3 4}
.tl2-cp{fill:none;stroke:var(--amb);stroke-width:1.6}
.tl2-cd{fill:var(--amb);cursor:pointer}
.tl2-mask{fill:var(--bg)}
.tl2-tip{position:absolute;max-width:260px;background:var(--bg3);border:1px solid var(--line2);padding:8px 10px;font-family:var(--serif);font-size:13.5px;line-height:1.4;pointer-events:none;z-index:4}
.tl2-tip b{font-family:var(--mono);font-size:11px;color:var(--amb);display:block}
.tl2-det{padding-top:22px;min-height:180px}
.tl2-card{border-left:3px solid var(--c,var(--amb));padding:6px 0 6px 16px;max-width:80ch}
.tl2-card h3{font-family:var(--disp);font-size:24px;margin:6px 0}
.tl2-card p{font-family:var(--serif);font-size:17px;line-height:1.55;margin:0 0 8px}
.tl2-card .kick a{color:var(--amb)}
/* control room */
.sez-h{padding-top:40px}
.sez-t tbody th{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);font-family:var(--disp);font-size:18px;white-space:nowrap}
.sez-t tbody th small{display:block;font-family:var(--mono);font-size:10.5px;color:var(--tx3);font-weight:400;max-width:180px;white-space:normal}
.sez-t td{padding:10px;border-bottom:1px solid var(--line);position:relative;min-width:90px}
.sz-b{position:absolute;left:10px;bottom:7px;height:3px;width:calc(var(--w) * .8);background:var(--c);opacity:.8}
.sz-l{display:flex;height:10px;width:120px;gap:1px}
.sz-l i{background:var(--c);display:block}
.cov{border:1px solid var(--line);padding:14px;background:var(--bg2);margin:22px 0}
.cov svg{width:100%;height:60px;display:block}
.cov-t{font-family:var(--mono);font-size:7px;fill:var(--tx3)}
.p10w{border:1px solid var(--line);background:var(--bg2);margin-top:22px;padding:10px}
.p10{width:100%;height:auto;display:block}
.p10-g{stroke:var(--line)}.p10-10{stroke:var(--amb);stroke-dasharray:4 4}
.p10-t{font-family:var(--mono);font-size:11px;fill:var(--tx3)}
.p10-l{fill:none;stroke:var(--tx2);stroke-width:1.4}
.p10-d{fill:var(--tx2)}.p10-d.w{fill:var(--amb)}
.castm{display:grid;gap:2px;margin-top:22px;max-width:760px}
.castm .cm-r{display:grid;grid-template-columns:220px repeat(6,1fr);gap:2px;align-items:center}
.cm-n a{color:var(--tx);font-family:var(--mono);font-size:12px;font-weight:500}
.castm .cm-d{width:auto;height:18px;border-radius:1px;border:0;justify-self:stretch;background:var(--line)}
.castm .cm-d.on{background:var(--amb)}
@media(max-width:560px){.castm .cm-r{grid-template-columns:minmax(0,1fr) repeat(6,26px)}.castm .cm-d{width:auto;height:14px}}
/* search, person */
.srch{padding-top:40px}
#sq{width:100%;max-width:760px;font-family:var(--disp);font-size:clamp(22px,3vw,34px);background:none;border:0;border-bottom:2px solid var(--amb);color:var(--tx);padding:10px 0;margin:18px 0 14px;outline:none}
.srch-sug{display:flex;flex-wrap:wrap;gap:6px}
.srch-n{font-family:var(--mono);font-size:12px;color:var(--tx3);margin:26px 0 10px}
.sr-g{margin:24px 0}
.sr-g h2{font-family:var(--mono);font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--amb);border-bottom:1px solid var(--line2);padding-bottom:8px}
.sr-l{list-style:none;padding:0;margin:0}
.sr-l a{display:block;padding:10px 0;border-bottom:1px solid var(--line);color:var(--tx);text-decoration:none}
.sr-l a:hover b{color:var(--amb)}
.sr-l b{font-family:var(--disp);font-size:16px;display:block}
.sr-l span{font-family:var(--serif);font-size:14.5px;color:var(--tx2)}
.per-h{padding-top:40px}
.per-k{display:flex;flex-wrap:wrap;gap:22px;font-family:var(--mono);font-size:12px;color:var(--tx3);margin:6px 0 24px}
.per-k b{color:var(--amb);font-size:20px;font-family:var(--disp);margin-right:4px}
.per-eps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.per-eps a{border:1px solid var(--line);border-top:3px solid var(--line2);padding:12px;color:var(--tx3);text-decoration:none;display:flex;flex-direction:column;gap:6px;min-height:110px}
.per-eps a.on{border-top-color:var(--ec);color:var(--tx);background:var(--bg2)}
.per-eps b{font-family:var(--mono);font-size:12px}
.per-eps span{font-family:var(--serif);font-size:14px;line-height:1.4;color:var(--tx2)}
.scard.sm p{font-size:14.5px}
@media(max-width:1100px){.hubg{grid-template-columns:repeat(3,minmax(0,1fr))}.kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.arcs2-g{grid-template-columns:1fr}.tens{grid-template-columns:repeat(4,minmax(0,1fr))}.per-eps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:860px){.map2{grid-template-columns:1fr;height:auto}.lmap{height:62svh}.map2-side{border-left:0;border-top:1px solid var(--line);max-height:none}.fin2{grid-template-columns:1fr}.day2{grid-template-columns:1fr;gap:12px}.day2-h{position:static;flex-direction:row;align-items:center;gap:16px}}
@media(max-width:720px){.chr2 li{grid-template-columns:1fr;gap:2px;padding-left:12px}.chr2 time{padding-left:0}.chr2 li>i{display:none}.chr2 li{border-left:3px solid var(--c)}.chr2{border-left:0}
 .cgrid{grid-template-columns:1fr}.arc2{grid-template-columns:1fr}.arc2-pp{grid-column:auto}.hubg{grid-template-columns:1fr 1fr}.kpis{grid-template-columns:1fr 1fr}.ctx-g{grid-template-columns:1fr}
 .gal2[data-view="g"]{grid-template-columns:1fr 1fr;grid-auto-rows:140px}.gal2[data-view="c"]{grid-template-columns:repeat(3,1fr)}.tens{grid-template-columns:repeat(3,minmax(0,1fr))}
 .mdays li{grid-template-columns:70px 1fr;gap:10px}.md-t{display:none}.tm-r{grid-template-columns:24px 110px 1fr 70px;gap:8px;font-size:12px}.rost{grid-template-columns:1fr}
 .cm-r{grid-template-columns:130px repeat(6,1fr)}.per-eps{grid-template-columns:1fr 1fr}.mtl-board .dm{--d:7px}.gpick{top:calc(var(--topH) + 40px)}.srch-btn{margin-left:4px}}
.pfilter .chip.on,.c2-f .chip.on,.gpick .chip.on,.srch-sug .chip.on{background:var(--amb);color:#140f08;border-color:var(--amb)}
.c2-f .chip.on i{background:#140f08}
.arcs2 .h-disp,.d-ph2 .h-disp,.ctx2 .h-disp{margin-bottom:24px}

.castm .cm-h{font-family:var(--mono);font-size:11px;color:var(--tx2);text-align:center;letter-spacing:.08em}

/* ===== search 2: palette + results ===== */
.flash{outline:2px solid var(--amb)!important;outline-offset:4px;transition:outline-color .6s}
body.pal-on{overflow:hidden}
.pal{position:fixed;inset:0;z-index:120;background:rgba(5,5,4,.72);backdrop-filter:blur(6px);display:flex;justify-content:center;align-items:flex-start;padding:min(10vh,90px) 16px 16px}
.pal[hidden]{display:none}
.pal-box{width:100%;max-width:820px;max-height:calc(100vh - min(10vh,90px) - 24px);display:flex;flex-direction:column;background:var(--bg2);border:1px solid var(--line2);box-shadow:0 30px 80px var(--shadow)}
.pal-top{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line2)}
.pal-top svg{width:20px;height:20px;fill:none;stroke:var(--amb);stroke-width:2;flex:none}
#palQ{flex:1;min-width:0;background:none;border:0;outline:none;color:var(--tx);font-family:var(--disp);font-size:clamp(18px,2.4vw,24px);padding:4px 0}
#palQ::-webkit-search-cancel-button{display:none}
.pal-x{font-family:var(--mono);font-size:10px;letter-spacing:.1em;border:1px solid var(--line2);background:none;color:var(--tx2);padding:4px 7px;cursor:pointer}
#palF{padding:10px 16px 0}
#palF:empty{display:none}
.sf{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.sf .chip{cursor:pointer;font-size:11px}
.sf .chip b{color:var(--tx3);font-weight:500;margin-left:3px}
.sf .chip.on b{color:inherit}
.sf-e .ep-c{border-color:color-mix(in srgb,var(--ec) 55%,transparent)}
.sf-e .ep-c.on{background:var(--ec);color:#0b0a08;border-color:var(--ec)}
.ys{display:grid;grid-template-columns:repeat(16,1fr);gap:3px;height:46px;margin:6px 0 10px;align-items:end}
.ys-b{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;background:none;border:0;padding:0 0 14px;cursor:pointer}
.ys-b i{display:block;background:var(--amb2);min-height:2px;transition:background .15s}
.ys-b:hover i,.ys-b.on i{background:var(--amb)}
.ys-b.z{cursor:default}.ys-b.z i{background:var(--line2)}
.ys-b span{position:absolute;bottom:0;left:0;right:0;text-align:center;font-family:var(--mono);font-size:9px;color:var(--tx3)}
.ys-b.on span{color:var(--amb)}
.pal-r{overflow:auto;padding:0 16px 8px;flex:1;overscroll-behavior:contain}
.pal-r .sr-g{margin:14px 0}
.pal-r .sr-g h2{font-size:10.5px;margin:0 0 4px;display:flex;justify-content:space-between}
.sr-g h2 span{color:var(--tx3)}
.sr-l2{list-style:none;padding:0;margin:0}
.sr-i{display:flex;gap:12px;align-items:flex-start;padding:9px 8px;margin:0 -8px;border-bottom:1px solid var(--line);color:var(--tx);text-decoration:none;cursor:pointer}
.sr-i.sel,.sr-i:hover{background:var(--bg3)}
.sr-i.sel{box-shadow:inset 2px 0 0 var(--amb)}
.sr-ep{flex:none;font-style:normal;font-family:var(--mono);font-size:10px;font-weight:600;width:26px;text-align:center;padding:2px 0;border:1px solid var(--ec);color:var(--ec);margin-top:2px}
.sr-b{flex:1;min-width:0}
.sr-b b{display:block;font-family:var(--disp);font-weight:600;font-size:15px;line-height:1.3}
.sr-b em{display:block;font-style:normal;font-family:var(--serif);font-size:14px;line-height:1.45;color:var(--tx2);margin-top:2px}
.sr-i small{flex:none;font-family:var(--mono);font-size:11px;color:var(--tx3);margin-top:3px}
.sr-i mark,.sr-l mark{background:none;color:var(--amb);box-shadow:inset 0 -1px 0 var(--amb)}
.sr-ph{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:8px;margin-top:6px}
.sr-f{flex-direction:column;gap:5px;padding:0;margin:0;border:0;background:none;text-align:left}
.sr-f img{width:100%;aspect-ratio:1;object-fit:cover;filter:grayscale(.2)}
.sr-f span{font-family:var(--mono);font-size:10px;line-height:1.35;color:var(--tx2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sr-f.sel{box-shadow:0 0 0 2px var(--amb)}
.sr-more{display:inline-block;margin-top:6px;font-family:var(--mono);font-size:11px;color:var(--amb)}
.pal-empty{padding:16px 0}.pal-empty p{font-family:var(--mono);font-size:12px;color:var(--tx3);margin:0 0 8px}
.pal-empty .pal-hint{margin-top:14px;font-family:var(--serif);font-size:14px;color:var(--tx2);max-width:560px}
.pal-ft{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 16px;border-top:1px solid var(--line2);font-family:var(--mono);font-size:10.5px;color:var(--tx3)}
.pal-ft a{color:var(--amb)}
kbd{font-family:var(--mono);font-size:10px;border:1px solid var(--line2);padding:1px 5px;margin:0 2px;color:var(--tx2)}
#sfil{max-width:900px;margin-top:6px}
.srch .sr-l2{max-width:980px}
.srch .sr-ph{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
@media(max-width:640px){.pal{padding:0}.pal-box{max-height:100vh;height:100%;border:0}.ys{gap:2px}.ys-b span{font-size:8px}.sr-i small{display:none}.pal-ft span:first-child{display:none}}

/* ===== logos ===== */
.ff-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.ff-logo .vt-m{width:auto;height:30px}
.ff-logo .ff-sep{width:1px;height:22px;background:#fff;opacity:.55}
@media(max-width:560px){.ff-logo .vt-m{height:24px}.ff-logo{gap:9px}}
.foot-logos{display:flex;align-items:center;gap:28px;margin-bottom:14px}
.foot-logos .fl-ff{width:110px;height:auto}
.foot-logos .fl-vt{height:56px;width:auto}
.foot-logos .fl-vt.d{display:none}
[data-theme="day"] .foot-logos .fl-ff{filter:invert(1)}
[data-theme="day"] .foot-logos .fl-vt.n{display:none}
[data-theme="day"] .foot-logos .fl-vt.d{display:block}
.foot-logos{flex-basis:100%}
.sf .chip.on{background:var(--amb);color:#140f08;border-color:var(--amb)}
.sf-e .ep-c.on{background:var(--ec);color:#0b0a08;border-color:var(--ec)}
