/* The Screening Room. Charcoal room, orange is the only light. House lights bring up the cream page at the end. */
:root{
  --char:#1A1816; --char2:#121110; --cream:#F5F2EC; --o:#E85A0C; --o2:#FF7A33;
  --bg:#1A1816; --ink:#F5F2EC; --mut:#B8B0A5; --soft:#D9D3CA; --line:rgba(245,242,236,.14); --line2:rgba(245,242,236,.28);
  --panel:#211F1C; --panel2:#2A2724;
  --ease:cubic-bezier(.2,.7,.2,1); --glide:.7s;
  --vh:1vh; --stageH:300px;
}
html.lights{--bg:#F5F2EC; --ink:#1A1816; --mut:#5f584e; --soft:#3a3631; --line:rgba(26,24,22,.12); --line2:rgba(26,24,22,.25); --panel:#FFFFFF; --panel2:#EFEAE2}
*{box-sizing:border-box}
html{overflow-x:clip;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color .9s var(--ease),color .9s var(--ease);min-height:100vh}
button{font:inherit;color:inherit}
a{color:inherit}
.skip{position:absolute;left:-9999px}
.skip:focus{left:1rem;top:1rem;background:var(--cream);color:var(--char);padding:.5rem .8rem;z-index:99}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--o2);outline-offset:3px}

/* The room: vignette, one projector beam, faint grain */
.room{position:fixed;inset:0;pointer-events:none;z-index:0;transition:opacity .9s var(--ease)}
.room::before{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 20%,rgba(26,24,22,0) 45%,#0f0e0d 100%)}
.room .beam{position:absolute;left:50%;top:-10vh;width:140vw;max-width:1500px;height:85vh;transform:translateX(-50%);background:radial-gradient(50% 60% at 50% 0%,rgba(245,242,236,.085),rgba(245,242,236,0) 70%);animation:beam 1.2s var(--ease) both}
.room .grain{position:absolute;inset:0;opacity:.05;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='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
html.lights .room{opacity:0}
@keyframes beam{from{opacity:0}to{opacity:1}}

/* Header */
.head{position:sticky;top:0;z-index:30;background:rgba(26,24,22,.82);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid var(--line);transition:background-color .9s var(--ease)}
html.lights .head{background:rgba(245,242,236,.86)}
.top{max-width:1140px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem 16px}
.brand a{display:inline-flex;align-items:center;border-radius:50%;padding:3px;background:var(--cream);box-shadow:0 0 0 1px rgba(245,242,236,.2),0 0 18px rgba(245,242,236,.12);transition:background-color .9s}
html.lights .brand a{background:transparent;box-shadow:none;padding:0}
.topbar-logo{height:32px;width:auto;display:block}
.topbar-name{font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.strip{display:flex;align-items:center;gap:6px}
.slot{display:inline-flex;align-items:center;gap:6px;height:28px;min-width:28px;padding:0 8px;border-radius:6px;border:1px solid var(--line2);font-family:'Bebas Neue',sans-serif;font-size:17px;line-height:1;color:var(--mut);transition:background-color .6s var(--ease),border-color .6s,color .6s}
.slot .lbl{display:none;font-family:'Oswald',sans-serif;font-size:11px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.slot.now{border-color:var(--o);color:var(--ink)}
.slot.lit{background:var(--o);border-color:var(--o);color:var(--char)}
.slot.pop{animation:slotpop .6s var(--ease)}
@keyframes slotpop{0%{transform:scale(1)}40%{transform:scale(1.25)}100%{transform:scale(1)}}
.score{margin-left:6px;font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);white-space:nowrap}
.score b{font-family:'Bebas Neue',sans-serif;font-weight:400;font-size:19px;letter-spacing:.02em;color:var(--ink);margin-left:3px;display:inline-block}
.score b.bump{animation:slotpop .5s var(--ease)}
@media (min-width:980px){.slot.lit .lbl{display:inline}}

main{position:relative;z-index:1;display:block;outline:none}
.wrap{max-width:1140px;margin:0 auto;padding:0 16px}
.narrow{max-width:760px;margin-left:auto;margin-right:auto}

/* Type */
.eyebrow{font-family:'Oswald',sans-serif;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--o2)}
html.lights .eyebrow{color:#B8440A}
h1,h2{font-family:'Bebas Neue',sans-serif;font-weight:400;letter-spacing:.01em;line-height:.92;margin:0}
.btn{appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:.85rem 1.5rem;border-radius:12px;background:var(--o);color:var(--char);font-family:'Oswald',sans-serif;font-weight:600;font-size:17px;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;box-shadow:0 10px 30px rgba(232,90,12,.28);transition:transform .15s var(--ease),box-shadow .2s,background-color .2s,opacity .2s}
.btn:hover{background:var(--o2)}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.35;cursor:not-allowed;box-shadow:none}
.btn .arr{display:inline-block;width:18px;height:18px}
.btn-quiet{appearance:none;cursor:pointer;background:none;border:1px solid var(--line2);color:var(--ink);border-radius:10px;min-height:44px;padding:.55rem 1rem;font-family:'Oswald',sans-serif;font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem}
.btn-quiet:hover{border-color:var(--o)}
.link{appearance:none;background:none;border:0;padding:0;cursor:pointer;color:var(--ink);text-decoration:underline;text-decoration-color:var(--o);text-underline-offset:3px;font-size:inherit}

/* Landing */
.lobby{padding-top:28px;padding-bottom:20px;text-align:center}
.reel{position:relative;overflow:hidden;margin:0 0 26px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.reel-track{display:flex;gap:10px;width:max-content;padding:14px 0;animation:reel 60s linear infinite}
.reel .frame{position:relative;width:150px;height:92px;flex:none;border-radius:6px;overflow:hidden;background:#0d0c0b;box-shadow:0 0 0 1px rgba(245,242,236,.14);opacity:0;animation:frameon .5s var(--ease) forwards}
.reel .frame img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9)}
.reel::before,.reel::after{content:"";position:absolute;left:0;right:0;height:8px;background-image:radial-gradient(circle,rgba(245,242,236,.28) 1.6px,transparent 2px);background-size:14px 8px;z-index:2}
.reel::before{top:2px}.reel::after{bottom:2px}
@keyframes reel{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes frameon{to{opacity:1}}
.lobby h1{font-size:clamp(3.4rem,15vw,7.6rem);color:var(--cream);margin:.3rem 0 .9rem;text-shadow:0 0 40px rgba(245,242,236,.08)}
.lobby .lead{font-size:1.08rem;color:var(--soft);max-width:560px;margin:0 auto 1.4rem}
.lobby .vs{font-family:'Oswald',sans-serif;font-size:15px;letter-spacing:.03em;color:var(--cream);margin:0 0 .9rem}
.lobby .vs b{color:var(--o2);font-weight:600}
.lobby .notice{font-size:.9rem;color:var(--mut);max-width:520px;margin:1rem auto 0}
.tomq{max-width:640px;margin:2.4rem auto 0;padding:1.4rem 0 0;border-top:1px solid var(--line);text-align:left;display:grid;grid-template-columns:auto 1fr;gap:.2rem .9rem}
.tomq .qm{font-family:'Bebas Neue',sans-serif;font-size:4rem;line-height:.8;color:var(--o)}
.tomq blockquote{margin:0;font-style:italic;font-size:1.15rem;line-height:1.45;color:var(--cream)}
.tomq .cred{grid-column:2;font-size:.85rem;color:var(--mut);margin:.5rem 0 0}
.tomq .cred a{white-space:nowrap}
@media (min-width:860px){.lobby{padding-top:40px;padding-bottom:30px}.reel .frame{width:200px;height:122px}}

/* Round */
.round{padding-top:16px;padding-bottom:12px}
.marquee{display:flex;align-items:center;justify-content:space-between;gap:.8rem;margin-bottom:.35rem}
.marquee .eyebrow{white-space:nowrap}
.q{font-family:'Oswald',sans-serif;font-weight:500;font-size:clamp(1.25rem,4.9vw,1.8rem);line-height:1.2;letter-spacing:.005em;margin:0 0 .35rem;color:var(--cream)}
.hint{font-size:.95rem;color:var(--mut);margin:0 0 .9rem}

.stage{position:relative;display:flex;height:var(--stageH);border-radius:14px;overflow:hidden;background:#0b0a09;box-shadow:0 0 0 1px rgba(245,242,236,.14),0 30px 80px rgba(0,0,0,.55);isolation:isolate;user-select:none;-webkit-user-select:none}
.pane{position:relative;height:100%;width:50%;flex:none;overflow:hidden;transition:width var(--glide) var(--ease);cursor:pointer;perspective:1200px;background:#0b0a09}
.round:not([data-phase="call"]) .pane{cursor:default}
.flip{position:absolute;inset:0;transform-style:preserve-3d;transition:transform .6s var(--ease)}
.pane.flipped .flip{transform:rotateY(180deg)}
.face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.back{transform:rotateY(180deg);background:linear-gradient(160deg,#2A2724,#171513);display:flex;flex-direction:column;justify-content:center;padding:18px;border:1px solid rgba(245,242,236,.1)}
.back .k{font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}
.back .big{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,8vw,3.2rem);line-height:.95;color:var(--cream);margin:.2rem 0 .4rem}
.back .big.win{color:var(--o2)}
.back .s{font-size:.92rem;line-height:1.4;color:var(--soft)}
.stills{position:absolute;inset:0}
.stills img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s linear;transform:scale(1.12)}
.stills img.on{opacity:1}
.pane .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,10,9,.55) 0%,rgba(11,10,9,0) 26%,rgba(11,10,9,0) 45%,rgba(11,10,9,.94) 100%)}
.pane .rim{position:absolute;inset:0;border:1px solid rgba(245,242,236,.1);pointer-events:none;transition:box-shadow .3s var(--ease)}
.pane.backed .rim{box-shadow:inset 0 0 0 3px var(--o)}
.cap{position:absolute;left:0;right:0;bottom:0;padding:14px 14px 13px;transition:opacity .3s}
.cap .meta{font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.05em;color:var(--soft);line-height:1.3;margin-top:3px}
.cap .name{font-family:'Oswald',sans-serif;font-weight:600;font-size:clamp(1rem,4.3vw,1.3rem);line-height:1.12;color:var(--cream)}
.tag{display:inline-block;white-space:nowrap;margin-bottom:6px;font-family:'Oswald',sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--char);background:var(--o);padding:4px 8px;border-radius:5px;opacity:0;transform:translateY(-4px);transition:opacity .25s,transform .25s var(--ease)}
.pane:not(.backed) .tag{display:none}
.pane.backed .tag{opacity:1;transform:none}
.pane.mid .watch span{display:none}
.pane.mid .watch{padding:0 8px}
.watch{position:absolute;top:10px;left:10px;display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:0 12px 0 8px;border-radius:999px;border:1px solid rgba(245,242,236,.45);background:rgba(11,10,9,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:var(--cream);font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,opacity .3s}
.watch:hover{border-color:var(--o)}
.watch svg{width:22px;height:22px}
.pane.slim .cap,.pane.slim .watch,.pane.slim .tag,.pane.slim .ov{opacity:0;pointer-events:none}
.ov{position:absolute;left:10px;right:10px;top:60px;padding:10px 12px;border-radius:10px;background:rgba(11,10,9,.78);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);opacity:0;transform:translateY(8px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.ov.on{opacity:1;transform:none}
.ov .big{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.2rem,9vw,3.4rem);line-height:.9;color:var(--cream)}
.ov .big.win{color:var(--o2)}
.ov .s{font-size:.9rem;line-height:1.35;color:var(--cream);margin-top:.25rem;text-shadow:0 1px 8px rgba(0,0,0,.8)}
.round[data-round="2"].revealed .cap .meta{display:none}

/* Seam, readout, ghost */
.seam{position:absolute;top:0;bottom:0;left:50%;width:0;z-index:3;pointer-events:none;transition:left var(--glide) var(--ease)}
.seam::before{content:"";position:absolute;top:0;bottom:0;left:-1.5px;width:3px;background:var(--o);box-shadow:0 0 16px rgba(232,90,12,.75),0 0 2px rgba(232,90,12,1)}
.readout{position:absolute;top:50%;left:50%;z-index:5;transform:translate(-50%,-50%);background:var(--o);color:var(--char);font-family:'Bebas Neue',sans-serif;font-size:20px;line-height:1;letter-spacing:.03em;padding:7px 10px 6px;border-radius:7px;white-space:nowrap;box-shadow:0 8px 24px rgba(0,0,0,.45);pointer-events:none;transition:left var(--glide) var(--ease),opacity .3s}
.readout.idle{background:var(--char);color:var(--cream);box-shadow:0 0 0 1px var(--o),0 8px 24px rgba(0,0,0,.45)}
.readout.big{font-size:28px;padding:8px 13px 7px}
.ghost{position:absolute;top:0;bottom:0;left:50%;width:0;z-index:4;pointer-events:none;opacity:0;transition:opacity .3s}
.ghost.on{opacity:1}
.ghost::before{content:"";position:absolute;top:0;bottom:0;left:-1px;border-left:2px dashed rgba(245,242,236,.85)}
.ghost-lbl{position:absolute;top:58px;z-index:5;font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--char);background:var(--cream);padding:4px 7px;border-radius:5px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .3s,left var(--glide) var(--ease)}
.ghost-lbl.on{opacity:1}
.leader{position:absolute;inset:0;z-index:8;display:flex;align-items:center;justify-content:center;background:rgba(11,10,9,.62);cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s}
.leader.on{opacity:1;pointer-events:auto}
.leader .dial{position:relative;width:118px;height:118px;border-radius:50%;border:3px solid var(--cream);display:flex;align-items:center;justify-content:center;background:conic-gradient(rgba(245,242,236,.22) var(--sweep,0deg),rgba(245,242,236,0) 0)}
.leader .dial::before,.leader .dial::after{content:"";position:absolute;background:rgba(245,242,236,.55)}
.leader .dial::before{left:50%;top:-14px;bottom:-14px;width:1px}
.leader .dial::after{top:50%;left:-14px;right:-14px;height:1px}
.leader .n{position:relative;z-index:1;font-family:'Bebas Neue',sans-serif;font-size:64px;line-height:1;color:var(--cream)}
.leader .skipnote{position:absolute;bottom:12px;left:0;right:0;text-align:center;font-size:.8rem;color:var(--mut)}

/* Film player inside the stage */
.vid{position:absolute;inset:0;z-index:6;background:#000;display:none}
.vid.show{display:block}
.vid .host,.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vidbar{position:absolute;left:0;right:0;bottom:0;z-index:7;display:flex;gap:8px;justify-content:space-between;align-items:center;padding:10px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.75))}
.vidbar button{appearance:none;cursor:pointer;min-height:40px;padding:0 12px;border-radius:9px;border:1px solid rgba(245,242,236,.5);background:rgba(11,10,9,.6);color:var(--cream);font-family:'Oswald',sans-serif;font-size:13px;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:6px}
.vidbar .mutedtag{font-family:'Oswald',sans-serif;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.stage.watching .seam,.stage.watching .readout,.stage.watching .ghost,.stage.watching .ghost-lbl{opacity:0}
.stage.watching .pane{cursor:default}
.pane.slim .vid{opacity:0}

/* Call controls */
.controls{margin-top:14px;display:grid;gap:12px}
.size{display:grid;gap:10px;transition:opacity .3s}
.size.off{opacity:.45}
.size-top{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}
.size-top .lbl{font-family:'Oswald',sans-serif;font-weight:500;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--soft)}
.size-top output{font-family:'Bebas Neue',sans-serif;font-size:22px;letter-spacing:.02em;color:var(--o2)}
.size.off output{color:var(--mut);font-family:'DM Sans',sans-serif;font-size:14px}
.range{-webkit-appearance:none;appearance:none;width:100%;height:44px;background:transparent;margin:0;cursor:pointer;touch-action:pan-y}
.range::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--o) var(--fill,0%),rgba(245,242,236,.18) var(--fill,0%))}
.range::-moz-range-track{height:6px;border-radius:3px;background:rgba(245,242,236,.18)}
.range::-moz-range-progress{height:6px;border-radius:3px;background:var(--o)}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;border-radius:50%;background:var(--cream);border:4px solid var(--o);box-shadow:0 2px 10px rgba(0,0,0,.5)}
.range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--cream);border:4px solid var(--o)}
.range:disabled{cursor:not-allowed}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{appearance:none;cursor:pointer;min-height:44px;padding:0 12px;border-radius:10px;border:1px solid var(--line2);background:transparent;color:var(--cream);font-family:'Oswald',sans-serif;font-size:14px;letter-spacing:.03em;transition:background-color .2s,border-color .2s,color .2s;flex:1 1 auto}
.chip:hover{border-color:var(--o)}
.chip[aria-pressed="true"]{background:var(--o);border-color:var(--o);color:var(--char);font-weight:600}
.chip:disabled{cursor:not-allowed}
.lockrow{display:flex;justify-content:flex-end}
.lockrow .btn{width:100%}
@media (min-width:860px){.lockrow .btn{width:auto;min-width:260px}.controls{grid-template-columns:1fr auto;align-items:end;gap:24px}.controls.nosize{grid-template-columns:1fr}.chip{flex:0 1 auto}}

/* After the lock */
.after{display:grid;gap:14px;margin-top:14px}
.blk{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 16px;opacity:0;transform:translateY(12px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.blk.in{opacity:1;transform:none}
.verdict{font-family:'Oswald',sans-serif;font-weight:500;font-size:1.2rem;line-height:1.3;margin:0 0 .8rem;color:var(--ink)}
.verdict b{color:var(--o2);font-weight:600}
.nums{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.num .nm{font-family:'Oswald',sans-serif;font-size:14px;letter-spacing:.02em;color:var(--soft);line-height:1.25;min-height:2.5em}
.num .v{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;line-height:1;color:var(--cream);font-variant-numeric:tabular-nums;margin-top:.2rem}
.num .v.win{color:var(--o2)}
.num .u{font-size:.85rem;color:var(--mut)}
.ratio{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--line)}
.rb{font-family:'Bebas Neue',sans-serif;font-size:1.9rem;line-height:1;letter-spacing:.02em;color:var(--cream)}
.rb.o{color:var(--o2)}
.rs{font-size:.85rem;line-height:1.35;color:var(--mut);margin-top:.25rem}
.credit{font-size:.84rem;color:var(--mut);margin:.8rem 0 0;display:flex;flex-wrap:wrap;gap:.3rem .9rem;align-items:center}
.credit .link{color:var(--soft)}
.tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:.9rem}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.stat .v{font-family:'Bebas Neue',sans-serif;font-size:2.6rem;line-height:1;color:var(--o2)}
.stat .l{font-size:.92rem;line-height:1.35;color:var(--soft);margin-top:.2rem}
.blk h3{font-family:'Oswald',sans-serif;font-weight:500;font-size:1.15rem;line-height:1.3;margin:0 0 .6rem;color:var(--ink)}
.blk p{margin:0 0 .6rem}
.blk .small{font-size:.88rem;color:var(--mut)}

/* Round 1: the series chart */
.bars{position:relative;height:170px;display:flex;align-items:flex-end;gap:3px;margin:1rem 0 .4rem;padding-top:10px}
.bars .bar{flex:1;min-width:0;background:rgba(232,90,12,.72);border-radius:2px 2px 0 0;height:0;transition:height .45s var(--ease)}
.bars .bar.first{background:var(--o2)}
.bars .ref{position:absolute;left:0;right:0;border-top:2px dashed var(--cream);opacity:0;transition:opacity .4s}
.bars .ref.on{opacity:.9}
.bars .ref span{position:absolute;right:0;bottom:4px;font-size:.78rem;color:var(--cream);background:var(--panel);padding:0 4px;border-radius:3px}
.axis{display:flex;justify-content:space-between;font-size:.78rem;color:var(--mut)}
.tally{display:flex;align-items:baseline;gap:.6rem;margin:.6rem 0 0;flex-wrap:wrap}
.tally .v{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;line-height:1;color:var(--o2);font-variant-numeric:tabular-nums}
.tally .l{font-size:.95rem;color:var(--soft)}

/* Round 2: seats */
.seats{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;max-width:270px;margin:.9rem 0 .5rem}
.seat{aspect-ratio:1;border-radius:4px 4px 2px 2px;background:rgba(245,242,236,.13);transition:background-color .3s}
.seat.on{background:var(--o)}
.seatrow{display:grid;gap:14px;align-items:center}
@media (min-width:640px){.seatrow{grid-template-columns:270px 1fr;gap:28px}}
.pct{font-family:'Bebas Neue',sans-serif;font-size:3.4rem;line-height:1;color:var(--o2)}

/* Round 3: squares */
.squares{display:grid;gap:3px;margin:1rem 0 .5rem;max-width:620px}
.sq{aspect-ratio:1;border-radius:2px;background:rgba(245,242,236,.07);position:relative;overflow:hidden}
.sq.call{box-shadow:inset 0 0 0 1px rgba(245,242,236,.7)}
.sq i{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--o);transition:width .12s linear}
.sq.one i{background:var(--cream)}
.legend{display:flex;flex-wrap:wrap;gap:.4rem 1rem;font-size:.82rem;color:var(--mut)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend i{display:inline-block;width:12px;height:12px;border-radius:2px}

/* Why */
.opts{display:grid;gap:10px;margin-top:.4rem}
.opt{appearance:none;cursor:pointer;text-align:left;width:100%;min-height:56px;padding:14px 16px;border-radius:12px;border:1px solid var(--line2);background:transparent;color:var(--ink);font-size:1rem;line-height:1.4;position:relative;transition:border-color .2s,background-color .2s,transform .15s}
.opt:hover{border-color:var(--o)}
.opt.press{background:rgba(232,90,12,.14);border-color:var(--o);transform:scale(.99)}
.opt:disabled{cursor:default}
.opt.right{border-color:var(--o);background:rgba(232,90,12,.12)}
.opt.mine:not(.right){border-style:dashed}
.opt .otag{display:inline-block;margin:0 0 6px;font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.opt.right .otag{color:var(--o2)}
.opt.mine:not(.right) .otag{color:var(--soft)}
.whyline{font-family:'Oswald',sans-serif;font-size:1.1rem;margin:.9rem 0 0}

/* Quote card and ticket */
.quote{display:grid;grid-template-columns:auto 1fr;gap:.2rem .9rem;background:linear-gradient(160deg,#24211E,#181614);border-color:rgba(245,242,236,.12)}
.quote .qm{font-family:'Bebas Neue',sans-serif;font-size:3.6rem;line-height:.8;color:var(--o)}
.quote blockquote{margin:0;font-style:italic;font-size:1.12rem;line-height:1.5;color:var(--cream)}
.quote .cite{grid-column:2;font-size:.86rem;color:var(--mut);margin-top:.5rem}
.fact{border-left:3px solid var(--o)}
.fact p{font-size:1.05rem;color:var(--cream)}
.endrow{display:flex;flex-direction:column;gap:14px;align-items:stretch}
@media (min-width:860px){.endrow{flex-direction:row;align-items:center;justify-content:space-between}}
.ticket{position:relative;display:flex;align-items:center;gap:12px;background:var(--cream);color:var(--char);border-radius:8px;padding:10px 14px 10px 20px;-webkit-mask:radial-gradient(circle 5px at 0 50%,transparent 98%,#000) left/100% 16px repeat-y;mask:radial-gradient(circle 5px at 0 50%,transparent 98%,#000);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.ticket .tn{font-family:'Bebas Neue',sans-serif;font-size:2rem;line-height:1;color:var(--o)}
.ticket .tt{font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6b6459}
.ticket .tr{font-family:'Oswald',sans-serif;font-weight:600;font-size:1rem;line-height:1.2}
.ticket.print{animation:print .6s var(--ease) both}
@keyframes print{from{clip-path:inset(0 0 100% 0);transform:translateY(-8px)}to{clip-path:inset(0 0 0 0);transform:none}}
.flyer{position:fixed;z-index:60;pointer-events:none;margin:0}
.marks{display:inline-flex;gap:5px;margin-left:auto}
.mk{width:14px;height:14px;border-radius:3px;border:2px solid #b3aa9e}
.mk.on{background:var(--o);border-color:var(--o)}

/* Result and finale */
.result{padding-top:34px;padding-bottom:10px;text-align:center}
.bigscore{font-family:'Bebas Neue',sans-serif;font-size:clamp(6rem,30vw,10rem);line-height:.85;color:var(--ink);margin:.4rem 0 .2rem;font-variant-numeric:tabular-nums}
.bigscore .of{color:var(--o2)}
.result .sub{color:var(--mut);margin:0 0 1.6rem}
.stubs{display:grid;grid-template-columns:1fr 1fr;gap:10px;text-align:left;margin:0 auto 1.8rem;max-width:900px}
@media (min-width:860px){.stubs{grid-template-columns:repeat(4,1fr)}}
.stub{background:var(--cream);color:var(--char);border-radius:8px;padding:12px 12px 12px 18px;-webkit-mask:radial-gradient(circle 5px at 0 50%,transparent 98%,#000) left/100% 16px repeat-y;mask:radial-gradient(circle 5px at 0 50%,transparent 98%,#000);opacity:0;transform:translateY(10px);transition:opacity .5s var(--ease),transform .5s var(--ease)}
.stub.in{opacity:1;transform:none}
.stub .tt{font-family:'Oswald',sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#6b6459}
.stub .tr{font-family:'Oswald',sans-serif;font-weight:600;font-size:.98rem;line-height:1.2;margin:.15rem 0 .5rem;min-height:2.4em}
.stub .ms{display:flex;gap:12px;font-size:.8rem;color:#4a4640}
.stub .ms span{display:inline-flex;align-items:center;gap:5px}
html.lights .stub{box-shadow:0 0 0 1px rgba(26,24,22,.12)}
.finale{padding-top:40px;padding-bottom:10px}
.finale h2{font-size:clamp(2.6rem,11vw,4rem);color:var(--ink);margin:.3rem 0 1.4rem}
.ladder{list-style:none;margin:0;padding:0;position:relative}
.ladder::before{content:"";position:absolute;left:21px;top:10px;bottom:10px;width:2px;background:var(--line2)}
.rung{position:relative;display:grid;grid-template-columns:44px 1fr;gap:14px;padding:0 0 22px;opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.rung.in{opacity:1;transform:none}
.rung .n{width:44px;height:44px;border-radius:50%;background:var(--o);color:var(--char);display:flex;align-items:center;justify-content:center;font-family:'Bebas Neue',sans-serif;font-size:24px;position:relative;z-index:1}
.rung h3{font-family:'Oswald',sans-serif;font-weight:600;font-size:1.15rem;line-height:1.2;margin:.55rem 0 .3rem;color:var(--ink)}
.rung p{margin:0;color:var(--soft)}
.princ{margin:1.2rem 0 0;padding:1.2rem 0 0;border-top:1px solid var(--line)}
.princ ul{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:8px}
.princ li{font-family:'Oswald',sans-serif;font-weight:500;font-size:1.15rem;line-height:1.25;color:var(--ink)}
.princ li::before{content:"";display:inline-block;width:8px;height:8px;background:var(--o);border-radius:2px;margin-right:10px;vertical-align:.18em}
.closing{margin:2.6rem 0 0}
.closing p.cq{font-family:'Oswald',sans-serif;font-weight:500;font-size:clamp(1.3rem,5vw,1.8rem);line-height:1.3;color:var(--ink);margin:.5rem 0 0}
.cta{margin:2.4rem 0 0;background:var(--o);color:var(--char);border-radius:18px;padding:30px 20px;text-align:center}
.cta h2{font-size:clamp(2.6rem,12vw,5rem);color:var(--char);line-height:.92;margin:0 0 .8rem}
.cta p{font-size:1.1rem;margin:0 auto 1.4rem;max-width:520px}
.cta .btn{background:var(--char);color:var(--cream);box-shadow:0 12px 30px rgba(26,24,22,.3)}
.cta .btn:hover{background:#000}
.after-cta{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:1.2rem 0 0}
.foot{position:relative;z-index:1;max-width:1140px;margin:3rem auto 0;padding:1.4rem 16px calc(2rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);font-size:.85rem;color:var(--mut)}

/* Sources sheet */
.sheet-back{position:fixed;inset:0;z-index:70;background:rgba(0,0,0,.55)}
.sheet{position:fixed;left:0;right:0;bottom:0;z-index:71;max-height:82vh;display:flex;flex-direction:column;background:#F5F2EC;color:#1A1816;border-radius:18px 18px 0 0;box-shadow:0 -20px 60px rgba(0,0,0,.4);max-width:760px;margin:0 auto;animation:sheetin .35s var(--ease)}
@keyframes sheetin{from{transform:translateY(100%)}to{transform:none}}
.sheet-grip{width:44px;height:5px;border-radius:3px;background:#C8C2BA;margin:10px auto 0}
.sheet-head{display:flex;align-items:center;justify-content:space-between;padding:8px 18px 6px}
.sheet-head h3{font-family:'Oswald',sans-serif;font-weight:600;font-size:1.2rem;margin:0}
.sheet-close{appearance:none;border:1px solid #C8C2BA;background:none;border-radius:10px;min-height:40px;padding:0 14px;cursor:pointer;font-family:'Oswald',sans-serif;letter-spacing:.05em;text-transform:uppercase;font-size:13px;color:#1A1816}
.sheet-body{overflow:auto;padding:4px 18px calc(22px + env(safe-area-inset-bottom));font-size:.94rem;line-height:1.5}
.sheet-body ul{margin:0;padding:0 0 0 1.1rem}
.sheet-body li{margin:0 0 .7rem}
.sheet-body a{color:#B8440A}
.sheet-body .sm{color:#5f584e;font-size:.86rem}

.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom));transform:translate(-50%,20px);z-index:80;background:var(--cream);color:var(--char);padding:10px 16px;border-radius:10px;font-size:.95rem;opacity:0;pointer-events:none;transition:opacity .25s,transform .25s var(--ease);box-shadow:0 10px 30px rgba(0,0,0,.35);max-width:calc(100vw - 32px)}
.toast.on{opacity:1;transform:translate(-50%,0)}

/* Desktop */
@media (min-width:860px){
  .round{padding-top:26px;padding-bottom:16px}
  .blk{padding:22px 24px}
  .num .v{font-size:3.2rem}
  .rb{font-size:2.5rem}
  .after{grid-template-columns:1fr 1fr;align-items:start}
  .after>.blk.wide{grid-column:1/-1}
  .q{max-width:900px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .reel-track{animation:none}
}
@media (max-width:859px){.lockrow{position:sticky;bottom:0;z-index:5;margin:0 -16px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(rgba(26,24,22,0),var(--bg) 30%)}}
