/* =====================================================================
   REAL OR FAKE — cream journal pages over a pulsar radar.
   Font sizes stay on the 8px grid. Real = signal (mint), Fake = noise (pink).
   ===================================================================== */
:root{--rf-paper:#f3ead2;--rf-paper2:#fbf6e6;--rf-edge:#d9cba6;--rf-ink:#1e1610;--rf-ink2:#6e5e44;--rf-rule:#c9bb98;--rf-real:#0d8f63;--rf-fake:#d0285e;--rf-mint:#2ee6a8;--rf-pink:#ff5fb4}

/* ---------- radar backdrop ---------- */
.rf-radar{position:fixed;left:50%;top:436px;width:860px;height:860px;transform:translate(-50%,-50%);z-index:1;pointer-events:none;border-radius:50%;opacity:.55;
  background:repeating-radial-gradient(circle,transparent 0 84px,rgba(95,243,255,.2) 84px 86px);-webkit-mask:radial-gradient(circle,#000 52%,transparent 70%);mask:radial-gradient(circle,#000 52%,transparent 70%)}
.rf-radar .rf-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(transparent 0 290deg,rgba(95,243,255,.04) 290deg,rgba(95,243,255,.16) 345deg,rgba(160,250,255,.42) 359deg,transparent 360deg);animation:rfSpin 4.4s linear infinite}
.rf-radar .rf-cross{position:absolute;inset:0;background:linear-gradient(rgba(95,243,255,.16),rgba(95,243,255,.16)) center/2px 100% no-repeat,linear-gradient(rgba(95,243,255,.16),rgba(95,243,255,.16)) center/100% 2px no-repeat}
.rf-radar .rf-blip{position:absolute;width:8px;height:8px;background:#9ff8ff;box-shadow:0 0 12px #5ff3ff;opacity:0;animation:rfBlip 4.4s steps(1) infinite}
.rf-radar .b1{left:72%;top:30%;animation-delay:.5s}.rf-radar .b2{left:24%;top:62%;animation-delay:2.7s}.rf-radar .b3{left:58%;top:78%;animation-delay:1.6s;background:#ff8ad8;box-shadow:0 0 12px #ff5fb4}
@keyframes rfSpin{to{transform:rotate(360deg)}}
@keyframes rfBlip{0%{opacity:1;transform:scale(1.6)}8%{opacity:.8;transform:none}30%{opacity:.25}45%,100%{opacity:0}}

/* ---------- side labels (desktop) ---------- */
.rf-side{--k:0;position:fixed;top:436px;z-index:2;transform:translateY(-50%) scale(calc(1 + var(--k) * .18));display:flex;flex-direction:column;align-items:center;gap:4px;opacity:calc(.34 + var(--k) * .66);transition:opacity .12s,transform .12s;pointer-events:none}
.rf-side b{font-weight:700;font-size:32px;letter-spacing:4px}.rf-side span{font-size:16px;letter-spacing:6px;text-transform:uppercase}
.rf-side.rf-l{right:calc(50% + 336px);color:#ff8fc8}.rf-side.rf-r{left:calc(50% + 336px);color:#7af5c8}
.rf-side b,.rf-side span{text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rf-side.hot.rf-l b{text-shadow:0 0 18px #ff5fb4,2px 0 #07051a,-2px 0 #07051a}.rf-side.hot.rf-r b{text-shadow:0 0 18px #2ee6a8,2px 0 #07051a,-2px 0 #07051a}
@media (max-width:1040px){.g-realfake .rf-side{display:none}}

/* ---------- stage + deck ---------- */
.g-realfake .rf-stage{top:164px;width:min(600px,92vw);gap:14px}
.rf-deck{position:relative;height:420px;perspective:1600px}
.rf-card{--lr:0;--lf:0;position:absolute;inset:0;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;will-change:transform}
.rf-card.drag{cursor:grabbing}
.rf-card.spring{transition:transform .45s cubic-bezier(.2,1.7,.4,1)}
.rf-card.throw{transition:transform .22s cubic-bezier(.3,.8,.4,1)}
.rf-card.flip{transition:transform .5s cubic-bezier(.2,1.4,.4,1);cursor:default}
.rf-card.deal{animation:rfDeal .45s cubic-bezier(.2,1.35,.4,1) both}
@keyframes rfDeal{from{transform:translateY(-90px) rotate(-7deg) scale(.88);opacity:0}}
.rf-card.fly-l,.rf-card.fly-r,.rf-card.fly-up{transition:transform .3s cubic-bezier(.5,0,.8,.5),opacity .3s;opacity:0}
.rf-card.fly-l{transform:translate(-130%,60px) rotate(-28deg)!important}.rf-card.fly-r{transform:translate(130%,60px) rotate(28deg)!important}.rf-card.fly-up{transform:translateY(-120%) rotate(-6deg)!important}
.rf-card.static{animation:shx .35s 2}
.rf-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .62s cubic-bezier(.3,1.3,.4,1)}
.rf-inner.flipped{transform:rotateY(180deg)}

/* ---------- the journal page ---------- */
.rf-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;display:flex;flex-direction:column;overflow:hidden;padding:24px 28px 20px;color:var(--rf-ink);
  background:radial-gradient(rgba(120,96,50,.09) 1px,transparent 1.5px) 0 0/6px 6px,linear-gradient(180deg,var(--rf-paper2),var(--rf-paper) 30%,#ece1c3);
  box-shadow:inset 0 0 0 4px #2a2140,inset 0 0 0 8px var(--rf-paper2),inset 0 -14px 0 4px rgba(190,170,120,.25),8px 8px 0 rgba(4,2,16,.55)}
.rf-back{transform:rotateY(180deg)}
.rf-front::before{content:'';position:absolute;right:0;top:0;width:32px;height:32px;background:linear-gradient(225deg,#07051a 0 50%,#d3c398 50% 62%,#e4d7b2 62%);z-index:1}
.rf-mast{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:16px;line-height:24px}
.rf-jn{font-weight:700;letter-spacing:4px}.rf-ms{color:var(--rf-ink2);letter-spacing:2px;margin-right:24px}
.rf-rule{flex:none;height:10px;border-top:4px solid var(--rf-ink);border-bottom:2px solid var(--rf-ink);margin:6px 0 12px}
.rf-tags{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:16px;line-height:24px}
.rf-field{background:var(--rf-ink);color:var(--rf-paper);padding:0 10px;letter-spacing:2px;text-transform:uppercase}
.rf-era{border:2px solid var(--rf-ink);padding:0 8px;line-height:20px;letter-spacing:1px}
.rf-diff{display:flex;gap:3px;margin-left:auto}.rf-diff i{width:10px;height:10px;border:2px solid var(--rf-ink2)}.rf-diff i.on{background:var(--rf-ink);border-color:var(--rf-ink)}
.rf-title{--blur:0px;margin:20px 0 0;font-weight:700;color:var(--rf-ink);letter-spacing:1px;filter:blur(var(--blur));text-wrap:pretty}
.rf-front{--blur:0px}.rf-front .rf-title{filter:blur(var(--blur))}
.rf-title.tl-s{font-size:32px;line-height:40px}.rf-title.tl-m,.rf-title.tl-l{font-size:24px;line-height:32px}
.rf-lines{flex:1;min-height:0;margin-top:20px;display:flex;flex-direction:column;gap:10px;overflow:hidden}
.rf-lines i{flex:none;display:block;height:4px;background:#d8cba8}.rf-lines i:nth-child(4n){margin-bottom:6px}
.rf-foot{flex:none;display:flex;justify-content:space-between;font-size:16px;line-height:24px;color:var(--rf-ink2);border-top:2px solid var(--rf-rule);padding-top:6px;margin-top:8px}
.rf-lean{position:absolute;top:34%;font-weight:700;font-size:48px;line-height:56px;letter-spacing:6px;padding:0 16px;border:6px solid currentColor;pointer-events:none;z-index:2;background:rgba(251,246,230,.6)}
.rf-lean-r{left:28px;color:var(--rf-real);opacity:var(--lr);transform:rotate(-14deg) scale(calc(.7 + var(--lr) * .3))}
.rf-lean-f{right:28px;color:var(--rf-fake);opacity:var(--lf);transform:rotate(14deg) scale(calc(.7 + var(--lf) * .3))}
.rf-noise{position:absolute;inset:8px;width:calc(100% - 16px);height:calc(100% - 16px);image-rendering:pixelated;opacity:0;pointer-events:none;z-index:3;transition:opacity .2s}

/* back of the card */
.rf-verdict{display:flex;align-items:center;gap:16px;flex-wrap:wrap;min-height:72px}
.rf-vstamp{font-weight:700;font-size:48px;line-height:56px;letter-spacing:8px;padding:0 16px 0 22px;border:6px solid currentColor;transform:rotate(-5deg);opacity:0;box-shadow:inset 0 0 0 2px rgba(251,246,230,.6)}
.rf-vstamp.slam{animation:rfSlam .42s cubic-bezier(.2,1.6,.4,1) both}
@keyframes rfSlam{0%{opacity:0;transform:scale(2.6) rotate(-22deg)}60%{opacity:1;transform:scale(.92) rotate(-4deg)}100%{opacity:1;transform:rotate(-5deg)}}
.v-real .rf-vstamp{color:var(--rf-real)}.v-fake .rf-vstamp{color:var(--rf-fake)}
.rf-vsub{font-size:16px;line-height:24px;letter-spacing:2px;color:var(--rf-ink2);text-transform:uppercase}
.rf-btitle{margin-top:12px;font-size:16px;line-height:24px;font-weight:700;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;border-left:4px solid var(--rf-rule);padding-left:12px}
.rf-cite{margin-top:8px;font-size:16px;line-height:24px;color:var(--rf-ink2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rf-cite b{color:var(--rf-ink);font-weight:700}
.rf-ig{align-self:flex-start;margin-top:10px;display:inline-flex;align-items:center;gap:10px;background:#2a1c08;color:#ffd34d;padding:4px 12px 4px 8px;font-size:16px;line-height:24px;font-weight:700;letter-spacing:2px;box-shadow:4px 4px 0 rgba(120,80,10,.35);animation:rfIg 1.6s ease-in-out infinite}
@keyframes rfIg{50%{box-shadow:4px 4px 0 rgba(120,80,10,.35),0 0 16px rgba(255,211,77,.7)}}
.rf-blurb{margin:14px 0 0;font-size:24px;line-height:32px;flex:1;min-height:0;overflow:hidden}
.rf-src{flex:none;align-self:flex-start;margin-top:8px;font-size:16px;line-height:24px;color:#2a4fc4;text-decoration:none;border-bottom:2px solid currentColor;padding:4px 0}.rf-src:hover,.rf-src:focus-visible{color:#c42a8a;outline:none}
.rf-slam{position:absolute;right:16px;top:44px;z-index:4;font-weight:700;font-size:32px;line-height:40px;letter-spacing:4px;white-space:nowrap;color:#e0204a;border:6px solid #e0204a;padding:2px 16px;background:rgba(255,236,236,.72);transform:rotate(9deg);animation:rfSlam2 .38s cubic-bezier(.2,1.7,.4,1) both;box-shadow:0 0 0 3px rgba(255,236,236,.6),6px 6px 0 rgba(120,0,30,.25)}
.rf-slam.nosig{color:#5a5a7a;border-color:#5a5a7a}
.rf-slam.fooled{top:auto;bottom:24px;left:auto;right:24px;transform:rotate(8deg);color:#a86a00;border-color:#d89a10;background:rgba(255,240,190,.7);font-size:32px;line-height:40px;animation-name:rfSlam3}
@keyframes rfSlam2{0%{opacity:0;transform:scale(3) rotate(30deg)}65%{opacity:1;transform:scale(.9) rotate(7deg)}100%{opacity:1;transform:rotate(9deg)}}
@keyframes rfSlam3{0%{opacity:0;transform:scale(3) rotate(20deg)}65%{opacity:1;transform:scale(.9) rotate(6deg)}100%{opacity:1;transform:rotate(8deg)}}

/* briefing + countdown */
.rf-brief{cursor:default}
.rf-howto{margin:16px 0 0;font-size:24px;line-height:32px}.rf-howto.sm{font-size:16px;line-height:24px;color:var(--rf-ink2)}
.rf-how{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.rf-how>div,.rfh-how>div:not(.rfh-mid){display:flex;flex-direction:column;align-items:center;padding:12px 8px;border:4px solid currentColor}
.rf-how b{font-weight:700;font-size:24px;letter-spacing:4px}.rf-how span{font-size:16px;color:var(--rf-ink2)}
.rf-how .h-f{color:var(--rf-fake);background:rgba(208,40,94,.07)}.rf-how .h-r{color:var(--rf-real);background:rgba(13,143,99,.07)}
.rf-count{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}
.rf-count b{font-weight:700;font-size:88px;line-height:1;color:#dffcff;text-shadow:-4px 0 #ff3d9a,4px 0 #2ef0ff,0 0 32px rgba(95,243,255,.8);animation:rfCount .56s cubic-bezier(.2,1.6,.4,1) both}
.rf-count span{font-size:16px;letter-spacing:6px;text-transform:uppercase;color:var(--cyan);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
@keyframes rfCount{0%{transform:scale(2.4);opacity:0}60%{transform:scale(.9);opacity:1}100%{transform:none}}

/* ---------- timer ---------- */
.rf-timer{display:flex;align-items:center;gap:12px;height:32px;transition:opacity .2s}
.rf-timer.off{visibility:hidden}.rf-timer.done{opacity:.35}
.rf-tl{font-size:16px;letter-spacing:4px;text-transform:uppercase;color:var(--cyan);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rf-cells{flex:1;display:flex;gap:3px;height:16px;padding:4px;background:rgba(10,7,36,.85);box-shadow:0 0 0 2px #2f2878}
.rf-cells i{flex:1;background:#1a1450}
.rf-cells i.hi{background:var(--cyan);box-shadow:0 0 6px rgba(95,243,255,.7)}.rf-cells i.mid{background:var(--gold);box-shadow:0 0 6px rgba(255,211,77,.7)}.rf-cells i.lo{background:var(--pink);box-shadow:0 0 8px rgba(255,95,180,.9)}
.rf-timer b{width:40px;text-align:right;font-weight:700;font-size:24px;color:#fff;text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rf-timer.low b{color:var(--pink);animation:lowpulse .5s steps(2) infinite}

/* ---------- call buttons ---------- */
.rf-btns{display:grid;grid-template-columns:1fr 1fr;gap:16px;min-height:72px}
.rf-btns .btn{min-height:72px;font-size:24px;letter-spacing:6px;display:flex;align-items:center;justify-content:center;gap:12px}
.rf-b.rf-fake{border-color:var(--rf-pink);color:#ffc0e0;box-shadow:0 0 16px rgba(255,95,180,.4)}
.rf-b.rf-real{border-color:var(--rf-mint);color:#c0ffe8;box-shadow:0 0 16px rgba(46,230,168,.4)}
.rf-b.rf-fake:hover{box-shadow:0 0 28px rgba(255,95,180,.7)}.rf-b.rf-real:hover{box-shadow:0 0 28px rgba(46,230,168,.7)}
.rf-b .ar{font-size:24px}.rf-b.rf-fake .ar{animation:rfNudgeL 1.2s steps(2) infinite}.rf-b.rf-real .ar{animation:rfNudgeR 1.2s steps(2) infinite}
@keyframes rfNudgeL{50%{transform:translateX(-4px)}}@keyframes rfNudgeR{50%{transform:translateX(4px)}}
.rf-b:disabled{opacity:.35;cursor:default}.rf-b.chosen{opacity:1;color:#0a0724}.rf-b.rf-fake.chosen{background:var(--rf-pink)}.rf-b.rf-real.chosen{background:var(--rf-mint)}
.rf-btns .rf-next,.rf-btns .rf-go{grid-column:1/-1;animation:rfIn .3s cubic-bezier(.2,1.5,.4,1) both}
@keyframes rfIn{from{opacity:0;transform:translateY(10px)}}
.btn:focus-visible,.rfp-b:focus-visible{outline:4px solid #fff;outline-offset:4px}

/* ---------- HUD: streak flame ---------- */
.hud.rf-hud .dist{display:flex;align-items:center;gap:10px;color:#ffb84a}
.hud.rf-hud .rf-sn{font-weight:700}
.hud.rf-hud .dist[data-lv="0"]{color:#8a82c8}.hud.rf-hud .dist[data-lv="2"]{color:#ffd34d;text-shadow:0 0 12px rgba(255,180,60,.7)}
.hud.rf-hud .dist[data-lv="3"]{color:#9ff8ff;text-shadow:0 0 14px rgba(95,243,255,.8)}.hud.rf-hud .dist[data-lv="4"]{color:#ffd8f4;text-shadow:-2px 0 rgba(255,61,154,.7),2px 0 rgba(46,240,255,.7),0 0 16px rgba(192,124,255,.9)}
.rf-fl{display:flex;transform-origin:50% 100%}.rf-fl svg{display:block}
.dist:not([data-lv="0"]) .rf-fl{animation:rfFlick .36s steps(2) infinite}
.dist[data-lv="4"] .rf-fl{animation-duration:.24s}
@keyframes rfFlick{50%{transform:scaleY(1.1) scaleX(.94) translateY(-1px)}}
.rf-pop{animation:bump .4s cubic-bezier(.2,1.8,.4,1)}

/* ---------- mobile ---------- */
@media (max-width:700px){
  .g-realfake .rf-stage{top:152px;gap:10px}
  .rf-radar{top:400px;width:150vw;height:150vw}
  .rf-deck{height:min(400px,calc(100svh - 152px - 236px))}
  .rf-face{padding:18px 20px 14px}
  .rf-jn{letter-spacing:2px}.rf-ms{margin-right:20px;letter-spacing:0}
  .rf-title{margin-top:14px}.rf-title.tl-s,.rf-title.tl-m{font-size:24px;line-height:32px}.rf-title.tl-l{font-size:16px;line-height:24px}
  .rf-lean{font-size:32px;line-height:40px;border-width:4px}
  .rf-vstamp{font-size:32px;line-height:40px;border-width:4px;letter-spacing:6px}
  .rf-verdict{min-height:56px;gap:8px 12px}
  .rf-blurb{font-size:16px;line-height:24px;margin-top:10px}
  .rf-slam{font-size:24px;line-height:32px;border-width:4px;padding:2px 10px;right:12px;top:22px;letter-spacing:3px}
  .rf-howto{font-size:16px;line-height:24px}
  .rf-timer{height:24px}.rf-tl{display:none}
  .rf-btns{gap:12px;min-height:64px}.rf-btns .btn{min-width:0;min-height:64px;letter-spacing:2px;padding:8px;gap:8px}
  .rf-ms{display:none}.rf-jn{letter-spacing:2px}
  .rf-vsub{display:none}.rf-btitle{-webkit-line-clamp:2;margin-top:8px}.rf-cite{-webkit-line-clamp:1;margin-top:4px}.rf-ig{margin-top:6px}
  .rf-slam{font-size:16px!important;line-height:24px!important;letter-spacing:2px!important;border-width:4px!important;padding:2px 8px!important;top:30px!important;right:10px!important}
  .hud.rf-hud{grid-template-columns:88px 76px 88px;gap:6px;top:10px}.hud.rf-hud .box{padding:4px 8px;height:56px}.hud.rf-hud .label{letter-spacing:1px}
  .hud.rf-hud .val{font-size:24px;line-height:32px}
  .hud.rf-hud .pip{width:5px;height:12px}.hud.rf-hud .pips{gap:1px;padding-top:10px}.hud.rf-hud .pipcap{letter-spacing:1px}.hud.rf-hud .pcl{display:none}
  .hud.rf-hud .rf-fl svg{width:20px;height:26px}
  .rf-count b{font-size:64px}
}
@media (max-height:820px) and (min-width:701px){.rf-deck{height:360px}}

/* =====================================================================
   LIVE · host big screen
   ===================================================================== */
.rfh{width:min(1400px,98vw);display:flex;flex-direction:column;align-items:center;gap:16px}
.rf-radar.host{top:420px;width:1100px;height:1100px;opacity:.45}
.rfh-top{position:relative;z-index:3;width:min(1100px,100%);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 48px}
.rfh-brand{font-weight:700;font-size:24px;letter-spacing:6px;color:#fff;text-shadow:-2px 0 #ff3d9a,2px 0 #2ef0ff}.rfh-brand i{font-style:normal;color:var(--ink-3);font-weight:400;font-size:16px;letter-spacing:4px}
.rfh-code{font-size:16px;letter-spacing:4px;color:var(--ink-2);text-transform:uppercase;background:var(--panel);padding:4px 16px}.rfh-code b{font-size:32px;color:var(--cyan);letter-spacing:8px;vertical-align:-4px}
.rfh-round{justify-self:end;white-space:nowrap;font-size:16px;letter-spacing:4px;text-transform:uppercase;color:var(--ink-2)}
.rfh-top>*{text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}.rfh-brand{text-shadow:-2px 0 #ff3d9a,2px 0 #2ef0ff,0 2px #07051a}
.rfh-intro{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:24px;margin-top:6vh;text-align:center}
.rfh-logo{font-size:88px;line-height:1}.rfh-logo span{font-size:40px;color:var(--ink-2);text-shadow:none;letter-spacing:4px;vertical-align:16px}.rfh-logo.sm{font-size:48px}
.rfh-sub{font-size:24px;color:var(--ink);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rfh-how{display:grid;grid-template-columns:220px 1fr 220px;gap:24px;align-items:center;width:min(1100px,92vw)}
.rfh-how>div:not(.rfh-mid){background:var(--panel)}.rfh-how b{font-weight:700;font-size:32px;letter-spacing:4px}.rfh-how span{font-size:16px;letter-spacing:6px;text-transform:uppercase}
.rfh-how .h-f{color:#ff8fc8}.rfh-how .h-r{color:#7af5c8}.rfh-mid{font-size:24px;line-height:32px;color:var(--ink-2);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rfh-aboard{font-size:24px;letter-spacing:4px;text-transform:uppercase;color:var(--ink-2);background:var(--panel);padding:8px 24px}.rfh-aboard b{font-size:48px;color:var(--gold);vertical-align:-8px;margin-right:8px}
.rfh-ctl{display:flex;gap:16px;align-items:center;justify-content:center}
.rfh-card-wrap{position:relative;z-index:3;width:100%;display:grid;grid-template-columns:1fr minmax(0,900px) 1fr;align-items:center;gap:24px}
.rfh-card-wrap .rf-side{position:static;transform:none;opacity:.85}.rfh-card-wrap .rf-side b{font-size:32px;white-space:nowrap}
.rf-card.rf-big{position:relative;inset:auto;height:500px;cursor:default;perspective:1800px}
.rf-big .rf-face{padding:32px 40px 24px}
.rf-big .rf-mast{font-size:24px;line-height:32px}.rf-big .rf-tags{font-size:24px;line-height:32px}.rf-big .rf-era{line-height:28px}
.rf-big .rf-diff i{width:16px;height:16px}
.rf-big .rf-title.tl-s{font-size:56px;line-height:64px}.rf-big .rf-title.tl-m{font-size:40px;line-height:48px}.rf-big .rf-title.tl-l{font-size:32px;line-height:40px}
.rf-big .rf-vstamp{font-size:64px;line-height:72px}.rf-big .rf-vsub,.rf-big .rf-cite,.rf-big .rf-ig{font-size:24px;line-height:32px}
.rf-big .rf-btitle{font-size:24px;line-height:32px;-webkit-line-clamp:2}.rf-big .rf-blurb{font-size:32px;line-height:40px}.rf-big .rf-src{display:none}
.rf-big .rf-foot{font-size:16px}
.rfh-bar{position:relative;z-index:3;width:min(1100px,96vw);display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px}
.rfh-timer{flex:1 1 480px;display:flex;align-items:center;gap:16px}.rfh-timer .rf-cells{height:24px}
.rfh-timer b{width:56px;text-align:right;font-weight:700;font-size:40px;color:#fff;text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rfh-votes{display:flex;flex-direction:column;align-items:flex-end;background:var(--panel);padding:4px 16px}.rfh-votes b{font-weight:700;font-size:32px;color:var(--gold)}
.rf-lane{order:5;flex:1 1 100%;display:flex;gap:8px;height:40px;overflow:hidden;align-items:center}
.rf-vchip{display:flex;align-items:center;gap:6px;background:var(--panel);border:2px solid #2f2878;padding:2px 10px;font-size:16px;white-space:nowrap;animation:pipPop .45s cubic-bezier(.2,1.7,.35,1)}
.rfh-split{flex:1 1 640px;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sp{background:var(--panel);padding:8px 16px 12px;transition:opacity .3s}
.sp-h{display:flex;align-items:baseline;gap:12px}.sp-l{font-weight:700;font-size:32px;letter-spacing:4px}.sp-n{font-size:16px;color:var(--ink-3)}.sp-p{margin-left:auto;font-weight:700;font-size:32px}
.sp-t{height:24px;margin-top:6px;background:#140f3c;box-shadow:inset 0 0 0 2px #2f2878}
.sp-t i{display:block;height:100%;width:var(--w);animation:rfGrow 1s cubic-bezier(.2,1.25,.4,1) .35s both}
@keyframes rfGrow{from{width:0}}
.sp-f .sp-l,.sp-f .sp-p{color:#ff8fc8}.sp-f .sp-t i{background:repeating-linear-gradient(90deg,var(--rf-pink) 0 12px,#d0408e 12px 16px)}
.sp-r .sp-l,.sp-r .sp-p{color:#7af5c8}.sp-r .sp-t i{background:repeating-linear-gradient(90deg,var(--rf-mint) 0 12px,#14b884 12px 16px)}
.sp.right{box-shadow:0 0 0 4px currentColor,0 0 24px rgba(255,255,255,.2)}.sp-f.right{color:var(--rf-pink)}.sp-r.right{color:var(--rf-mint)}.sp.wrong{opacity:.5}
.rfh-fast{flex:1 1 100%;order:4;font-size:24px;color:var(--ink-2);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}.rfh-fast b{color:var(--gold)}
.rfh-board{position:relative;z-index:3;width:min(920px,94vw);margin-top:8px}
.rfh-rows{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}
.rfh-rows li{display:grid;grid-template-columns:48px 48px 1fr 72px 56px 72px 88px;align-items:center;gap:12px;padding:8px 16px;background:#0d0a30;border-left:6px solid #2a2470;font-size:24px;animation:rfRow .5s cubic-bezier(.2,1.4,.4,1) var(--d) both}
@keyframes rfRow{from{opacity:0;transform:translateX(-40px)}}
.rfh-rows .rk{color:var(--ink-3);font-weight:700}.rfh-rows .nm{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rfh-rows .sc{text-align:right;font-weight:700;color:var(--gold)}
.rfh-rows .st{display:flex;align-items:center;gap:4px;color:#ffb84a;font-size:16px}.rfh-rows .dl{color:var(--rf-mint);font-size:16px;text-align:right}
.rfh-rows .mv{font-size:16px}.rfh-rows .mv.up{color:var(--rf-mint)}.rfh-rows .mv.dn{color:#ff8fc8}
.rfh-rows li.top1{border-left-color:#ffd34d;background:#1e1530}.rfh-rows li.top2{border-left-color:#c9d0e0}.rfh-rows li.top3{border-left-color:#ff9a3c}.rfh-rows li.empty{display:block;text-align:center;color:var(--ink-3)}
.rfh-board .rfh-ctl{margin-top:20px}
.rfh-final{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:8px}
.rfh-pod{display:flex;align-items:flex-end;gap:24px;margin-top:8px}
.pd{width:240px;display:flex;flex-direction:column;align-items:center;gap:6px;animation:rfPod .7s cubic-bezier(.2,1.5,.4,1) both}.pd2{animation-delay:.35s}.pd3{animation-delay:.6s}.pd1{animation-delay:.9s}
@keyframes rfPod{from{opacity:0;transform:translateY(60px)}}
.pd .nm{font-weight:700;font-size:24px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}.pd .sc{font-size:32px;font-weight:700;color:var(--gold);text-shadow:2px 0 #07051a,-2px 0 #07051a}
.pd .blk{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:12px;background:var(--panel);box-shadow:inset 0 6px 0 currentColor}
.pd .blk b{font-size:64px;line-height:1;font-weight:700}.pd .blk small{font-size:16px;color:var(--ink-2)}
.pd1 .blk{height:220px;color:#ffd34d}.pd2 .blk{height:160px;color:#c9d0e0}.pd3 .blk{height:120px;color:#ff9a3c}.pd.empty{visibility:hidden}
.pd1 .av svg{animation:novaBob 1.2s ease-in-out infinite}
.rfh-rest{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;width:min(920px,94vw);counter-reset:r 3}
.rfh-rest li{display:flex;justify-content:space-between;background:#0d0a30;padding:6px 12px;font-size:16px;counter-increment:r}.rfh-rest li::before{content:counter(r);color:var(--ink-3);margin-right:8px}.rfh-rest .nm{flex:1}.rfh-rest .sc{color:var(--gold)}

/* =====================================================================
   LIVE · phone
   ===================================================================== */
.rfp-root{justify-content:flex-start}
.rfp{position:relative;width:min(440px,100%);display:flex;flex-direction:column;gap:14px;z-index:2}
.rf-radar.phone{top:50%;width:150vw;height:150vw;max-width:900px;max-height:900px;opacity:.4}
.rfp>*:not(.rf-radar){position:relative;z-index:2}
.rfp-panel{text-align:center}
.rfp-logo{font-size:40px;margin-top:8px}.rfp-logo span{font-size:24px;color:var(--ink-2);text-shadow:none}
.rfp-t{font-size:16px;line-height:24px;color:var(--ink-2)}
.rfp-how{display:grid;grid-template-columns:1fr 1fr;gap:8px}.rfp-how span{padding:8px;font-weight:700;font-size:16px;letter-spacing:4px;border:2px solid currentColor}.rfp-how .h-f{color:#ff8fc8}.rfp-how .h-r{color:#7af5c8}
.rfp-wait{margin-top:16px;font-size:16px;color:var(--cyan);animation:lowpulse 1.4s steps(2) infinite}
.rfp-top{display:flex;justify-content:space-between;align-items:center}
.rfp-sec{font-size:16px;color:var(--ink-2);background:var(--panel);padding:2px 12px}.rfp-sec b{font-weight:700;font-size:32px;color:#fff}.rfp-sec.low b{color:var(--pink)}
.rf-card.rf-mini{position:relative;inset:auto;cursor:default;touch-action:auto}
.rf-mini .rf-inner{height:auto}.rf-mini .rf-front{position:relative;padding:16px 20px 20px;min-height:180px}
.rf-mini .rf-title{margin-top:12px}.rf-mini .rf-title.tl-s,.rf-mini .rf-title.tl-m{font-size:24px;line-height:32px}.rf-mini .rf-title.tl-l{font-size:16px;line-height:24px}
.rfp-btns{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:180px}
.rfp-b{font-family:var(--px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:180px;background:var(--panel-solid);border:4px solid;cursor:pointer;color:#fff;touch-action:manipulation;transition:transform .08s}
.rfp-b:active{transform:scale(.96)}
.rfp-b b{font-weight:700;font-size:32px;letter-spacing:4px}.rfp-b small{font-size:16px;letter-spacing:4px;text-transform:uppercase;opacity:.7}.rfp-b .ar{font-size:32px}
.rfp-b.rf-fake{border-color:var(--rf-pink);color:#ffc0e0;box-shadow:0 0 20px rgba(255,95,180,.4),inset 0 -8px 0 rgba(255,95,180,.25)}
.rfp-b.rf-real{border-color:var(--rf-mint);color:#c0ffe8;box-shadow:0 0 20px rgba(46,230,168,.4),inset 0 -8px 0 rgba(46,230,168,.25)}
.rfp-locked{grid-column:1/-1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:180px;background:var(--panel);border:4px solid currentColor;animation:rfIn .3s cubic-bezier(.2,1.5,.4,1) both;overflow:hidden}
.rfp-locked b{font-weight:700;font-size:40px;letter-spacing:6px}.rfp-locked small{font-size:16px;color:var(--ink-2)}
.rfp-locked.v-real{color:var(--rf-mint)}.rfp-locked.v-fake{color:var(--rf-pink)}.rfp-locked.v-none{color:#8a82c8}
.rfp-ping{position:absolute;left:50%;top:50%;width:40px;height:40px;margin:-20px;border:2px solid currentColor;border-radius:50%;animation:rfPing 1.6s ease-out infinite;opacity:0}
@keyframes rfPing{0%{transform:scale(.4);opacity:.8}100%{transform:scale(9);opacity:0}}
.rfp-res{display:flex;flex-direction:column;gap:14px;text-align:center}
.rfp-ans{background:var(--rf-paper);color:var(--rf-ink);padding:12px 16px;box-shadow:inset 0 0 0 4px #2a2140,6px 6px 0 rgba(4,2,16,.55);display:flex;flex-direction:column;align-items:center}
.rfp-ans b{font-weight:700;font-size:48px;line-height:56px;letter-spacing:8px;border:6px solid currentColor;padding:0 16px;transform:rotate(-4deg);margin:6px 0;animation:rfSlam .42s cubic-bezier(.2,1.6,.4,1) both}
.rfp-ans.v-real b{color:var(--rf-real)}.rfp-ans.v-fake b{color:var(--rf-fake)}.rfp-ans .label{color:var(--rf-ink2)}.rfp-ans small{font-size:16px;color:var(--rf-ink2)}
.rfp-me{background:var(--panel);padding:16px;display:flex;flex-direction:column;align-items:center;gap:6px;min-height:160px;justify-content:center}
.rfp-ic{display:flex;justify-content:center}.rfp-ic canvas{display:block}
.rfp-tn{font-weight:700;font-size:32px;letter-spacing:4px}.rfp-pts{font-size:24px}
.rfp-st{display:flex;align-items:center;gap:8px;color:#ffb84a;font-size:16px}
.rfp-x{font-weight:700;font-size:40px;letter-spacing:6px;color:#ff4f6a;border:6px solid currentColor;padding:0 12px;transform:rotate(-8deg)}.rfp-x.slam{animation:rfSlam .4s cubic-bezier(.2,1.6,.4,1) both}
.rfp-res.none .rfp-x{color:#8a82c8}
.rfp-tot{display:flex;justify-content:center;gap:24px;font-size:16px;color:var(--ink-2)}.rfp-tot b{font-size:24px;color:var(--gold)}
.rfp-blurb{margin:0;font-size:16px;line-height:24px;color:var(--ink-2);background:rgba(10,7,30,.75);padding:8px 12px}
.rfp-rows{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:4px;text-align:left}
.rfp-rows li{display:grid;grid-template-columns:32px 1fr auto;gap:8px;padding:6px 10px;background:#0d0a30;font-size:16px}.rfp-rows li.mine{background:#1a0c36;box-shadow:inset 4px 0 0 var(--pink)}.rfp-rows b{color:var(--gold)}.rfp-rows .nm{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.rfp-rank{font-weight:700;font-size:88px;line-height:1;margin-top:8px;color:var(--gold);text-shadow:-4px 0 rgba(255,61,154,.7),4px 0 rgba(46,240,255,.7),0 0 30px rgba(255,211,77,.7);animation:rfCount .7s cubic-bezier(.2,1.6,.4,1) both}
.rfp-of{font-size:16px;color:var(--ink-2)}.rfp-fs{margin-top:8px;font-size:24px}.rfp-fs b{color:var(--gold)}

/* =====================================================================
   CLEARANCE LADDER
   ===================================================================== */
.rf-clr{--c:#aeb6cc;position:relative;display:flex;align-items:center;gap:14px;height:48px;padding:0 16px 0 20px;background:var(--panel);box-shadow:inset 6px 0 0 var(--c),inset 0 -2px 0 rgba(255,255,255,.04);
  clip-path:polygon(0 8px,4px 8px,4px 4px,8px 4px,8px 0,calc(100% - 8px) 0,calc(100% - 8px) 4px,calc(100% - 4px) 4px,calc(100% - 4px) 8px,100% 8px,100% calc(100% - 8px),calc(100% - 4px) calc(100% - 8px),calc(100% - 4px) calc(100% - 4px),calc(100% - 8px) calc(100% - 4px),calc(100% - 8px) 100%,8px 100%,8px calc(100% - 4px),4px calc(100% - 4px),4px calc(100% - 8px),0 calc(100% - 8px))}
.rf-cl-l{font-size:16px;letter-spacing:2px;text-transform:uppercase;color:var(--ink-3)}
.rf-rungs{display:flex;gap:4px;align-items:flex-end}
.rf-rungs i{width:20px;background:#1e1756;box-shadow:inset 0 0 0 2px #2c2470}
.rf-rungs i:nth-child(1){height:8px}.rf-rungs i:nth-child(2){height:12px}.rf-rungs i:nth-child(3){height:16px}.rf-rungs i:nth-child(4){height:20px}
.rf-rungs i.on{background:var(--c);box-shadow:0 0 8px var(--c)}
.rf-rungs i.cur{animation:stratoGlow 1.4s ease-in-out infinite}
.rf-cl-n{font-weight:700;font-size:24px;letter-spacing:1px;color:var(--c);text-shadow:0 0 12px var(--c),2px 0 #07051a;white-space:nowrap}
.rf-cl-p{margin-left:auto;display:flex;align-items:center;gap:6px}.rf-cl-p small{display:none}
.rf-cl-p i{width:14px;height:14px;background:#1e1756;box-shadow:inset 0 0 0 2px #3a3290}.rf-cl-p i.on{background:var(--gold);box-shadow:0 0 10px var(--gold);animation:pipPop .5s cubic-bezier(.2,1.7,.35,1)}
.rf-cl-p em{font-style:normal;font-weight:700;font-size:16px;letter-spacing:4px;color:#e0c0ff;text-shadow:-2px 0 rgba(255,61,154,.7),2px 0 rgba(46,240,255,.7);animation:glitchLoop 2.2s steps(1) infinite}
.rf-clr[data-lv="4"] .rf-cl-n{text-shadow:-2px 0 rgba(255,61,154,.8),2px 0 rgba(46,240,255,.8),0 0 16px var(--c);animation:glitchLoop 2.2s steps(1) infinite}
.rf-clr.up{animation:rfClrUp .6s cubic-bezier(.2,1.7,.4,1)}@keyframes rfClrUp{30%{transform:scale(1.05);filter:brightness(1.8)}}
.rf-clr.down{animation:shx .4s}.rf-clr.down .rf-cl-n{color:#ff8fa0}
.rf-clr.tick .rf-cl-p{animation:bump .35s cubic-bezier(.2,1.8,.4,1)}
.rf-demo{position:absolute;right:12px;top:8px;font-weight:700;font-size:16px;letter-spacing:3px;color:#ff4f6a;border:3px solid currentColor;padding:0 8px;background:rgba(40,0,10,.8);transform:rotate(-6deg);animation:rfSlam .35s cubic-bezier(.2,1.6,.4,1) both}
.rf-lvchip{margin-left:auto;font-weight:700;font-size:16px;letter-spacing:2px;color:#0a0724;background:var(--c);padding:0 8px;box-shadow:2px 2px 0 rgba(30,22,16,.4)}
.rf-promo{--c:#2ee6a8;position:fixed;left:50%;top:44%;z-index:8;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 64px;pointer-events:none;text-align:center;animation:rfPromoIn .4s cubic-bezier(.2,1.5,.4,1) both}
.rf-promo::before{content:'';position:absolute;inset:-20% -30%;background:radial-gradient(closest-side,rgba(8,6,26,.85),rgba(8,6,26,.6) 50%,transparent);z-index:-1}
.rf-pst{font-weight:700;font-size:48px;line-height:56px;letter-spacing:8px;color:var(--c);border:6px solid var(--c);padding:0 20px;background:rgba(8,6,26,.6);transform:rotate(-5deg);box-shadow:0 0 28px var(--c),inset 0 0 18px color-mix(in srgb,var(--c) 40%,transparent);animation:rfSlam .5s cubic-bezier(.2,1.6,.4,1) both}
.rf-promo b{font-weight:700;font-size:64px;line-height:72px;letter-spacing:6px;color:#fff;text-shadow:-4px 0 #ff3d9a,4px 0 #2ef0ff,0 0 32px var(--c);animation:novaLetter .7s cubic-bezier(.2,1.9,.35,1) .15s both}
.rf-promo small{font-size:16px;letter-spacing:4px;text-transform:uppercase;color:var(--ink-2);text-shadow:2px 0 #07051a,-2px 0 #07051a,0 2px #07051a,0 -2px #07051a}
.rf-promo.out{animation:revealOut .3s both}
@keyframes rfPromoIn{from{opacity:0;transform:translate(-50%,-40%) scale(.8)}}
.rf-promo.host b{font-size:88px;line-height:96px}
@media (max-width:700px){
  .rf-clr{height:40px;gap:10px;padding:0 12px 0 16px}.rf-cl-l{display:none}.rf-rungs i{width:14px}.rf-cl-n{font-size:16px;letter-spacing:2px}.rf-cl-p small{display:none}.rf-cl-p i{width:12px;height:12px}
  .rf-demo{right:8px;top:6px}
  .rf-promo{padding:24px 16px;width:92vw}.rf-pst{font-size:24px;line-height:32px;border-width:4px;letter-spacing:4px}.rf-promo b{font-size:32px;line-height:40px;letter-spacing:3px}
}
.nb{font-weight:400}

.rf-deck{transition:opacity .25s,filter .25s}.rf-deck.dim{opacity:.22;filter:blur(1px)}
.rf-big .rf-noise{max-height:100%}
.rfh-mid b{color:var(--gold);font-weight:400}
.rfh-split{flex:1 1 100%}.sp-h{white-space:nowrap}
.rfp{margin-top:32px}

/* briefing card grows with its content (no clipped rules text) */
.rf-deck:has(.rf-brief){height:auto}
.rf-card.rf-brief{position:relative;inset:auto}
.rf-brief .rf-face.rf-front{position:relative;inset:auto}
.rf-go{white-space:nowrap}
.rf-how b{white-space:nowrap}
/* streak box: more breathing room around the flame + count */
.hud.rf-hud .box:first-child{padding:8px 24px 8px 20px}
.hud.rf-hud .dist{gap:12px;padding-top:2px}
@media (max-width:700px){
  .rf-how{gap:8px;margin-top:14px}.rf-how>div{padding:8px 4px;border-width:3px}
  .rf-how b{font-size:16px;letter-spacing:2px}.rf-how span{font-size:16px;text-align:center;line-height:20px}
  .rf-go{padding:14px 16px}
  .hud.rf-hud .box:first-child{padding:4px 12px}
}
@media (max-width:700px){.rf-go{max-width:100%;letter-spacing:2px}}
