.game-page{--g-figure: #9aa9b6;--g-hit: #ef6f5e;--g-mean: #1f2933;--g-stage: #f2f7fb;--frozen: #7cc4ef;--font-game: "Baloo 2", "Trebuchet MS", system-ui, sans-serif}.game{padding-bottom:64px}.game-page h1,.game-page h2,.game-page h3,.game-page h4{font-family:var(--font-game)}.game-title{margin:8px 0 6px;font:800 clamp(38px,6vw,64px)/1 var(--font-game);letter-spacing:-.01em;text-wrap:balance}.game-sub{margin:0 0 26px;font-size:20px;color:var(--muted);max-width:48ch}.cast-row{margin:0 0 30px;padding:16px 18px;border-radius:22px;background:var(--g-stage)}.cast-title,.levels-title{margin:0 0 10px;font:800 24px/1 var(--font-game)}.cast-list{display:flex;flex-wrap:wrap;gap:14px}.cast-card{display:grid;justify-items:center;gap:2px;width:104px;text-align:center}.cast-name{font:700 15px/1.15 var(--font-game)}.cast-card.unmet .cast-name{color:var(--muted)}.levels{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-width:760px}.level-card{width:100%;display:grid;grid-template-columns:60px minmax(0,1fr);gap:16px;align-items:center;text-align:left;padding:14px 18px;border:0;border-radius:20px;background:var(--g-stage);box-shadow:0 5px #d5e0e9;color:var(--ink);cursor:pointer;font:inherit}.level-card:hover{box-shadow:0 5px 0 var(--accent)}.level-card:active{transform:translateY(3px);box-shadow:0 2px #d5e0e9}.level-card.done{background:var(--good-bg);box-shadow:0 5px #b6dcc8}.level-no{display:grid;place-items:center;width:60px;height:60px;border-radius:16px;background:var(--ink);color:#fff;font:800 28px var(--font-game)}.level-card.done .level-no{background:var(--good)}.level-text{display:grid;gap:2px}.level-place{font:700 12px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.level-headline{font:800 22px/1.15 var(--font-game)}.level-lesson{font-size:15px;color:var(--muted)}.level-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:6px 0 12px}.newspaper{padding:14px 22px 16px;border:1px solid var(--line);border-top:5px double var(--ink);border-radius:4px;background:#fff;max-width:820px}.paper-name{font:italic 600 14px Georgia,Times New Roman,serif;color:var(--muted)}.paper-headline{margin:2px 0 6px;font:800 clamp(30px,4.4vw,46px)/1.02 var(--font-game)!important;letter-spacing:-.01em;text-wrap:balance}.paper-story{margin:0;font-size:17px}.stages{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:16px 0;padding:0;counter-reset:stage}.stages li{counter-increment:stage;padding:6px 12px 4px;border-radius:999px;font:700 15px var(--font-game);background:var(--g-stage);color:var(--muted)}.stages li:before{content:counter(stage) " ";opacity:.6}.stages li.past{color:var(--good);background:var(--good-bg)}.stages li.current{background:var(--ink);color:#fff}.btn{font:800 18px var(--font-game);padding:10px 20px 8px;border-radius:14px;border:0;cursor:pointer}.btn:active{transform:translateY(3px)}.btn:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.primary-btn{background:var(--ink);color:#fff;box-shadow:0 4px #0b1217}.primary-btn:active{box-shadow:0 1px #0b1217}.collider-btn{background:var(--role-collider);color:#fff;box-shadow:0 4px #a5281c}.ghost-btn{background:#fff;color:var(--ink);box-shadow:0 4px #c9d4de}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin-top:16px}.watch{padding:clamp(16px,3vw,28px);border-radius:26px;background:var(--g-stage)}.statement{margin:0 0 16px;padding:14px 18px;border-radius:16px;background:#fff;font:800 clamp(24px,3.4vw,34px)/1.12 var(--font-game);text-wrap:balance}.statement small{display:block;margin-top:6px;font:400 17px/1.45 var(--font-body);color:var(--muted)}.crowds{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.crowds.stack{grid-template-columns:minmax(0,1fr)}@media(max-width:600px){.crowds{grid-template-columns:minmax(0,1fr)}}.crowd{background:#fff;border-radius:18px;padding:12px 16px 14px}.crowd h3{display:flex;align-items:center;gap:8px;margin:0;font-size:22px}.crowd .pct{margin-left:auto;font:800 30px var(--font-game);color:var(--g-hit)}.crowd .pct.alt{color:var(--ink)}.crowd svg{width:100%;height:auto;display:block;margin-top:6px}.legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:10px;font-size:15px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}.dot{width:14px;height:14px;border-radius:50%;display:inline-block}.bar-key{width:4px;height:16px;border-radius:2px;background:var(--g-mean);display:inline-block}.gate{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:18px;align-items:center}@media(max-width:760px){.gate{grid-template-columns:minmax(0,1fr)}}.plot{width:100%;height:auto;background:#fff;border-radius:18px;display:block}.plot text{font:600 13px var(--font-body);fill:var(--muted)}.bouncer-box{display:grid;justify-items:center;gap:10px;text-align:center}.bubble{position:relative;padding:10px 14px;border-radius:16px;background:#fff;font:700 17px/1.2 var(--font-game)}.bubble:after{content:"";position:absolute;left:50%;bottom:-9px;width:18px;height:18px;background:#fff;transform:translate(-50%) rotate(45deg)}.stage-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:20px;align-items:start}@media(max-width:900px){.stage-layout{grid-template-columns:minmax(0,1fr)}}.stage-board{background:#fff;border:2px solid var(--line);border-radius:20px;overflow:hidden;transform-origin:50% 100%}.stage-panel{padding:18px 20px;border-radius:22px;background:var(--g-stage)}.stage-panel h3{margin:0 0 8px;font-size:28px;line-height:1.05}.stage-panel p{margin:0 0 12px}.prediction{padding:12px 14px;border-radius:12px;background:#fff;font-size:18px}.meter-label{margin-bottom:0!important;font:700 14px var(--font-ui);color:var(--muted)}.meter{display:block;width:100%;height:auto;margin:4px 0 12px}.meter text{font:700 21px var(--font-ui);fill:var(--ink)}.meter .m-truth{fill:var(--role-outcome)}.scoreboard{display:grid;gap:8px;margin:4px 0 8px}.scoreboard div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 14px;border-radius:12px;background:#fff}.scoreboard b{font:800 30px var(--font-game)}.win{color:var(--good)!important}.lose{color:var(--mistake)!important}.hint-box{padding:12px 14px;border-radius:12px;background:var(--warn-bg)}.freeze-list{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 14px}.freeze-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;border:2px solid var(--line);background:#fff;font:700 16px var(--font-game);cursor:pointer}.freeze-chip:has(input:checked){border-color:var(--frozen);background:#e6f4fc}.new-character{display:grid;grid-template-columns:96px minmax(0,1fr);gap:14px;align-items:center;margin:4px 0 14px;padding:12px 14px;border-radius:16px;background:#fff;border:3px solid var(--c)}.new-character h4{margin:2px 0 4px;font-size:24px;line-height:1.05}.new-character h4 small{font:600 14px var(--font-ui);color:var(--muted)}.new-character p{margin:0 0 4px;font-size:15px}.challenge{margin:4px 0 12px;padding:12px 14px;border-radius:14px;background:#fff;border:2px dashed var(--accent)}.challenge.done{border-style:solid;border-color:var(--good);background:var(--good-bg)}.challenge p{margin:4px 0 0}.prompts{margin:0 0 12px;padding-left:20px;font-size:15px;display:grid;gap:6px}@media(prefers-reduced-motion:no-preference){.stage-board.falling{animation:wobble-fall 1.1s ease-in forwards}@keyframes wobble-fall{0%{transform:rotate(0)}15%{transform:rotate(-2.5deg)}30%{transform:rotate(2.5deg)}45%{transform:rotate(-1.5deg)}60%{transform:rotate(1deg)}to{transform:rotate(4deg) translateY(10px);opacity:.55}}}.stage-board.falling{opacity:.55}.crowd-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font:700 18px var(--font-game)}.crowd-head b{font:800 34px/1 var(--font-game);color:var(--g-hit)}.fig.hit circle,.fig.hit rect{fill:var(--g-hit)}.fig.off circle,.fig.off rect{fill:#d3dbe2}.legend .dot{background:var(--g-hit)}.group-title{margin:10px 0 6px!important;font:800 18px var(--font-game);color:#2b7bb5}.freeze-crowds .crowds{margin-bottom:4px}.freeze-crowds .crowd{padding:8px 12px 10px}.freeze-crowds .crowd-head b{font-size:26px}.tutorial-steps{margin:0 0 14px;padding-left:22px;display:grid;gap:6px;font-size:17px}@media(prefers-reduced-motion:no-preference){.port.pulse .dot{animation:pulse 1.1s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.7)}}}.port.pulse .dot{fill:var(--accent);stroke:var(--accent)}.action-intro{display:grid;grid-template-columns:minmax(0,170px) minmax(0,1fr);gap:14px;align-items:center;margin:0 0 16px;padding:12px 14px;border-radius:16px;background:#fff;border:3px solid var(--accent)}@media(max-width:520px){.action-intro{grid-template-columns:minmax(0,1fr)}}.action-intro svg{width:100%;height:auto}.action-intro h4{margin:2px 0 4px;font-size:26px;line-height:1}.action-intro p{margin:0;font-size:15px}@media(prefers-reduced-motion:no-preference){.anim-poke .finger{animation:press 3s ease-in-out infinite}.anim-poke .snap{animation:snap 3s ease-in infinite;transform-box:fill-box;transform-origin:center}.anim-poke .poked{animation:glow 3s ease-in-out infinite}@keyframes press{0%,15%{transform:translateY(-30px)}35%,75%{transform:translateY(18px)}to{transform:translateY(-30px)}}@keyframes snap{0%,35%{opacity:1;transform:none}55%,85%{opacity:0;transform:translateY(26px) rotate(14deg)}to{opacity:1;transform:none}}@keyframes glow{0%,35%{filter:none}45%,80%{filter:drop-shadow(0 0 7px #fa953d)}to{filter:none}}.anim-freeze .sorter{animation:sort 3.4s ease-in-out infinite}.anim-freeze .ice{animation:ice 3.4s ease-in-out infinite}@keyframes sort{0%,20%{transform:none}50%,85%{transform:translate(var(--dx),var(--dy))}to{transform:none}}@keyframes ice{0%,40%{opacity:0}55%,85%{opacity:1}to{opacity:0}}}@media(prefers-reduced-motion:reduce){.anim-poke .snap{opacity:.25}.anim-freeze .sorter{transform:translate(var(--dx),var(--dy))}}.stage-panel{position:relative;overflow:hidden}.confetti{position:absolute;inset:0;pointer-events:none}.confetti i{position:absolute;top:-12px;left:var(--x);width:9px;height:14px;border-radius:2px;opacity:0}@media(prefers-reduced-motion:no-preference){.confetti i{animation:fall 1.6s ease-in var(--d) 1 forwards}@keyframes fall{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(320px) rotate(300deg)}}}.stage-panel .crowds{grid-template-columns:minmax(0,1fr);gap:8px}.stage-panel .crowd{padding:8px 12px 10px}.stage-panel .crowd-head b{font-size:26px}.newspaper{max-width:none!important;margin:4px 0 0;padding:18px clamp(16px,4vw,48px) 22px!important;border:0!important;border-radius:18px!important;background:#fbfaf7!important;box-shadow:0 1px 0 var(--line),0 10px 24px -18px #1f293359;text-align:center}.paper-name{margin:0;font:700 clamp(22px,3vw,30px)/1 "Source Serif 4",Georgia,serif!important;font-style:normal!important;letter-spacing:.02em;color:var(--ink)!important}.paper-edition{display:flex;justify-content:center;flex-wrap:wrap;gap:4px 22px;margin:10px auto 16px;padding:5px 0;border-block:1px solid #cfd6dc;max-width:760px;font:600 12px var(--font-ui);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.paper-headline{margin:0 auto 8px!important;max-width:22ch}.paper-story{margin:0 auto!important;max-width:60ch}.case-card{display:grid;gap:4px;margin:0 0 14px;padding:14px 20px;border-radius:18px;background:var(--ink);color:#fff}.case-card .label{color:#aebccb}.case-card h2{margin:0;font:800 28px/1.05 var(--font-game)}.case-card p{margin:0;font-size:17px;color:#e6edf3;max-width:70ch}.case-heading{margin:10px 0 -4px;font:800 18px var(--font-game);color:var(--muted);letter-spacing:.01em}.switch-row{display:flex;align-items:center;gap:14px;margin:6px 0 8px;font:800 18px var(--font-game);color:var(--muted)}.switch-row .on{color:var(--ink)}.switch{position:relative;width:84px;height:44px;border-radius:999px;border:3px solid var(--ink);background:#e1e7ee;cursor:pointer;box-shadow:0 4px #c9d4de}.switch[aria-checked=true]{background:var(--role-treatment)}.switch .knob{position:absolute;top:4px;left:4px;width:30px;height:30px;border-radius:50%;background:#fff;border:3px solid var(--ink)}.switch[aria-checked=true] .knob{left:44px}@media(prefers-reduced-motion:no-preference){.switch .knob{transition:left .25s cubic-bezier(.5,1.6,.5,1)}}.switch:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.switch-caption{margin:0 0 6px!important}.diffs{display:grid;gap:8px;margin:10px 0 12px}.diff{padding:10px 14px 8px;border-radius:14px;background:#fff;border:3px solid transparent}.diff.theory{border-color:var(--role-treatment)}.diff.reality{border-color:var(--role-outcome)}.diff p{margin:2px 0 4px!important;font:700 19px/1.2 var(--font-game)}.diff svg{display:block;width:100%;height:auto}.fig.more circle,.fig.more rect{fill:var(--good)}.fig.fewer circle,.fig.fewer rect{fill:var(--mistake)}@media(prefers-reduced-motion:no-preference){.edge.snapping{animation:edge-snap .9s ease-in forwards;transform-box:fill-box;transform-origin:center}@keyframes edge-snap{0%{opacity:1;transform:none}30%{transform:rotate(-4deg)}to{opacity:0;transform:translateY(40px) rotate(18deg)}}}@media(prefers-reduced-motion:no-preference){.stage-board.busted{animation:busted .6s ease-in-out}@keyframes busted{0%,to{transform:none}20%{transform:translate(-10px) rotate(-1deg)}40%{transform:translate(10px) rotate(1deg)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}}.stage-board.busted{border-color:var(--mistake)}@media(prefers-reduced-motion:no-preference){.anim-switch .knob{animation:knob 3s ease-in-out infinite}.anim-switch .snap{animation:snap 3s ease-in infinite;transform-box:fill-box;transform-origin:center}.anim-switch .forced{animation:glow 3s ease-in-out infinite}@keyframes knob{0%,20%{transform:none}35%,85%{transform:translate(38px)}to{transform:none}}@keyframes snap{0%,35%{opacity:1;transform:none}55%,85%{opacity:0;transform:translateY(26px) rotate(14deg)}to{opacity:1;transform:none}}@keyframes glow{0%,35%{filter:none}45%,80%{filter:drop-shadow(0 0 7px #fa953d)}to{filter:none}}}@media(prefers-reduced-motion:reduce){.anim-switch .snap{opacity:.25}.anim-switch .knob{transform:translate(38px)}}.read-on{display:flex;justify-content:center;margin:18px 0 8px}.read-on .btn{font-size:20px;padding:12px 28px 10px}.data-label{margin:0 0 6px;font:700 13px var(--font-ui);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.correlation{margin:-6px 0 14px;padding:10px 14px;border-radius:12px;background:#fff;font-size:17px}.correlation .tag{display:inline-block;margin-right:6px;padding:2px 10px;border-radius:999px;background:var(--ink);color:#fff;font:700 13px var(--font-ui);letter-spacing:.04em;vertical-align:1px}.statement .tag{display:inline-block;margin:0 8px 4px 0;padding:3px 12px 2px;border-radius:999px;background:var(--ink);color:#fff;font:700 15px var(--font-ui);letter-spacing:.04em;vertical-align:6px}.crowd.happen{margin:4px 0 8px}.fig .badge{fill:var(--role-treatment);stroke:#1f2933;stroke-width:1.5}.happen-caption{font:700 19px/1.3 var(--font-game)}.big-result{font:700 21px/1.3 var(--font-game)}@media(prefers-reduced-motion:no-preference){.fig .badge{animation:badge-pop .35s ease-out both}@keyframes badge-pop{0%{transform:scale(0)}to{transform:scale(1)}}.fig .badge{transform-box:fill-box;transform-origin:center}.fig.newly circle:not(.badge),.fig.newly rect{animation:light-up .4s ease-out var(--delay) both}@keyframes light-up{0%{fill:#d3dbe2}to{fill:var(--g-hit)}}.fig.going circle:not(.badge),.fig.going rect{animation:go-out .4s ease-out var(--delay) both}@keyframes go-out{0%{fill:var(--g-hit)}to{fill:#d3dbe2}}.reveal-late{animation:appear .3s ease-out 1.6s both}@keyframes appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}}.case-card{grid-template-columns:120px minmax(0,1fr)!important;align-items:center;column-gap:18px;padding:18px 22px!important}.case-card .detective{width:120px;height:120px}@media(max-width:520px){.case-card{grid-template-columns:minmax(0,1fr)!important}.case-card .detective{width:90px;height:90px}}.case-card{grid-template-columns:170px minmax(0,1fr)!important;padding:26px 28px!important}.case-card .detective{width:170px;height:170px}.case-card h2{font-size:clamp(30px,4vw,42px)!important}.case-card p{font-size:19px!important}.case-card{margin:0 0 16px}.case-card .hunch{margin-top:6px!important;font:700 20px/1.35 var(--font-game)!important;color:#fff!important}.drawn{margin:0 0 12px;padding:10px 14px;border-radius:12px;background:#fff;border:2px dashed var(--line)}.drawn ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px;font-size:17px}.drawn li span{color:var(--muted);margin:0 4px}.legend{gap:6px 22px}.dot.badge-key{background:var(--role-treatment);border:1.5px solid var(--ink);width:13px;height:13px}.crowd.split svg{max-width:560px}.row-label{font:700 13px var(--font-ui);fill:var(--ink);opacity:0}@media(prefers-reduced-motion:no-preference){.fig.sorting{animation:to-group 1.4s ease-in-out forwards}@keyframes to-group{to{transform:translate(var(--dx),var(--dy))}}.row-label{animation:appear-label .4s ease-out 1.4s forwards}@keyframes appear-label{to{opacity:1}}}@media(prefers-reduced-motion:reduce){.fig.sorting{transform:translate(var(--dx),var(--dy))}.row-label{opacity:1}}.fig circle.badge,.fig.hit circle.badge,.fig.off circle.badge{fill:var(--role-treatment);stroke:var(--ink);stroke-width:1.5}.action-intro.text-only{grid-template-columns:minmax(0,1fr)}
