:root{--blue:#468bea;--yellow:#ffdf45;--ink:#2c2220;--cream:#f9f6f3;--neutral:#f2ece2;--orange:#e66305;--line:#ded8ce;--muted:#756d66;--green:#397b59;font-family:-apple-system,BlinkMacSystemFont,'SF Pro Text','Segoe UI',sans-serif;color:var(--ink);background:var(--cream);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #145bc2;outline-offset:4px}button{border:0}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Clash Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;letter-spacing:-.045em}h1{font-size:clamp(45px,5.2vw,77px);line-height:1.03;font-weight:750;margin-bottom:25px}h2{font-size:34px;line-height:1.12;margin-bottom:14px}p{line-height:1.55}.topbar{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2%;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;font-weight:780;font-size:38px;letter-spacing:-2px}.brand-dot{color:var(--blue)}.event-label{font-size:10px;letter-spacing:2px;display:flex;align-items:center;gap:12px}.event-label b{background:var(--yellow);padding:7px;letter-spacing:0;font-size:12px}.topbar nav{display:flex;align-items:center;gap:24px}.text-button{background:none;font-size:12px;font-weight:600;min-height:44px;padding:8px}.text-button span{margin-left:7px}.sound-button{border:1px solid var(--line);border-radius:8px;background:transparent;padding:8px 12px;min-height:44px}.sound-button span{font-size:11px;margin-left:5px}main{min-height:calc(100dvh - 157px)}footer{min-height:63px;margin:0 4.2%;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted)}footer>div{display:flex;align-items:center;gap:12px}#mode-label{text-transform:uppercase;letter-spacing:1px;font-size:9px}.eyebrow{font-family:ui-monospace,monospace;font-size:11px;letter-spacing:1.5px;font-weight:700;text-transform:uppercase;margin-bottom:22px;display:flex;align-items:center;gap:9px}.eyebrow::before{content:'';width:7px;height:7px;background:var(--orange)}.hero{display:grid;grid-template-columns:34% 66%;padding:40px 4.2% 28px;align-items:center;max-width:1600px;margin:auto;min-height:calc(100dvh - 157px);overflow:hidden}.hero-copy{padding-bottom:10px;position:relative;z-index:1}.hero-copy h1 span{color:var(--blue)}.hero-copy>p{max-width:330px;color:#6c635d;font-size:16px;margin-bottom:30px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:58px;border-radius:8px;padding:16px 24px;font-size:15px;font-weight:700;transition:transform .15s,box-shadow .15s}.primary{background:var(--yellow);box-shadow:0 4px 0 #d3b526}.primary:hover{transform:translateY(-2px);box-shadow:0 6px 0 #d3b526}.primary:active{transform:translateY(2px);box-shadow:0 2px 0 #d3b526}.secondary{background:white;border:1px solid var(--line);min-height:50px}.blue-button{background:var(--blue);color:#fff;box-shadow:0 4px 0 #2963b4}.hero-note{display:flex;gap:18px;font-size:11px;color:var(--muted);margin-top:22px}.hero-note b{color:var(--ink)}.world-panel{position:relative;isolation:isolate}.world-panel::before{content:'';position:absolute;inset:6% -7% 6% -3%;background:#e8eff4;border-radius:45% 45% 36% 38%;z-index:-1}.world-panel canvas{width:100%;display:block;image-rendering:pixelated}.scene-tag{position:absolute;top:2%;left:8%;border:1px solid #d5dee3;background:var(--cream);padding:10px 14px;border-radius:6px;display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:1.2px;font-family:ui-monospace,monospace;box-shadow:0 4px 0 #d9e2e8}.live-dot{height:6px;width:6px;background:#5b9b6e;box-shadow:0 0 0 3px #dbeadd}.scene-ticket{position:absolute;right:0;top:7%;background:var(--yellow);padding:16px 18px;transform:rotate(7deg);border-radius:2px;box-shadow:4px 5px 0 #cfbd75;font-family:ui-monospace,monospace;font-size:11px;line-height:1.6}.scene-ticket strong{display:block;font-size:19px}.world-caption{font-size:10px;font-family:ui-monospace,monospace;letter-spacing:1px;text-align:center;color:#71808b;margin-top:-12px}.how-strip{display:flex;gap:16px;align-items:center;margin-top:31px;font-size:11px;color:var(--muted)}.how-strip i{font-style:normal;background:var(--neutral);border:1px solid var(--line);border-radius:5px;padding:6px;color:var(--ink);margin-right:4px}.form-layout{max-width:1120px;margin:auto;padding:40px 5%;display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:70px;min-height:calc(100dvh - 157px)}.form-layout h1{font-size:51px}.form-layout .world-panel{margin-top:0}.form-layout .world-panel canvas{margin-top:-30px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:30px}.small{font-size:12px;color:var(--muted);line-height:1.5}.tabs{display:flex;gap:5px;background:var(--neutral);padding:5px;border-radius:8px;margin-bottom:22px}.tabs button{flex:1;min-height:43px;background:transparent;border-radius:6px;font-size:13px}.tabs button.selected{background:white;box-shadow:0 1px 5px #0001;font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin-bottom:15px}.field input{border:1px solid #d5d0c7;background:#fdfcfb;border-radius:6px;padding:12px;width:100%;height:47px;font-size:15px}.check{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.5;margin:15px 0;cursor:pointer}.check input{width:19px;height:19px;flex:0 0 19px;accent-color:var(--blue);margin:0}.full{width:100%}.form-error{font-size:13px;color:#a43a16;background:#fff0e7;padding:10px;border-radius:4px}.rehearsal-notice{background:#fff5c7;border-left:3px solid #d5ad00;padding:10px 12px;font-size:12px;line-height:1.5;margin-bottom:18px}.mission-list{display:grid;gap:15px;margin:26px 0}.mission-list div{display:flex;gap:15px;font-size:14px;line-height:1.5}.mission-list b{background:var(--blue);color:#fff;min-width:30px;height:30px;display:grid;place-items:center;border-radius:5px}.game{padding:24px 4.2% 26px;max-width:1500px;margin:auto}.game-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.game-header .eyebrow{margin:0 0 6px}.game-header h2{font-size:27px;margin:0}.scoreboard{display:flex;gap:28px;align-items:center}.scoreboard>div{font-family:ui-monospace,monospace;font-weight:700;font-size:24px}.scoreboard small{display:block;font-family:inherit;font-size:9px;color:var(--muted);letter-spacing:1px;margin-bottom:5px}.scoreboard span{font-size:11px;color:var(--muted)}.game-layout{display:grid;grid-template-columns:1fr 320px;gap:30px;align-items:center}.game-world{position:relative}.game-world .world-panel::before{inset:2% 0 5%;border-radius:24px}.game-world canvas{margin-top:-10px}.stage-track{display:flex;gap:7px;justify-content:center}.stage-pill{flex:1;font-size:10px;padding:10px 6px;border-bottom:3px solid #ded9d0;color:var(--muted);text-align:center}.stage-pill.active{border-color:var(--blue);color:#185cb9;font-weight:700}.stage-pill.done{border-color:var(--green);color:var(--green)}.operator-target{position:absolute;transform:translate(-50%,-50%);background:var(--yellow);border:3px solid var(--ink);box-shadow:4px 4px 0 #2c222033;min-width:58px;min-height:52px;font-family:ui-monospace,monospace;font-size:12px;font-weight:800;padding:10px;animation:float 1s steps(2) infinite;z-index:2}.operator-target:after{content:'';position:absolute;bottom:-11px;left:20px;width:12px;height:12px;background:var(--yellow);border-right:3px solid var(--ink);border-bottom:3px solid var(--ink);transform:rotate(45deg)}@keyframes float{50%{margin-top:-6px}}.mission-panel{background:white;border:1px solid var(--line);border-radius:12px;padding:25px}.mission-panel h3{font-size:25px}.mission-panel p{font-size:14px;color:var(--muted)}.pixel-icon{width:48px;height:48px;background:var(--yellow);display:grid;place-items:center;font-family:ui-monospace,monospace;font-size:24px;font-weight:800;box-shadow:4px 4px 0 #d9c36b;margin-bottom:23px}.metric{border-top:1px solid var(--line);padding-top:14px;margin-top:15px}.metric-line{display:flex;justify-content:space-between;font-size:11px;margin-bottom:8px}.meter{height:6px;background:var(--neutral)}.meter i{display:block;height:100%;background:var(--blue);transition:width .4s}.fiction{font-size:9px;color:var(--muted);margin-top:14px}.game-hint{font-family:ui-monospace,monospace;font-size:11px;text-align:center;color:#6c7b86;margin:0 0 12px}.challenge-overlay{position:fixed;inset:0;background:#1f2e4199;backdrop-filter:blur(3px);z-index:10;display:grid;place-items:center;padding:20px}.challenge-card{width:min(600px,100%);background:var(--cream);border:3px solid var(--ink);box-shadow:9px 9px 0 #2226;border-radius:4px;padding:29px;max-height:92dvh;overflow:auto}.challenge-top{display:flex;justify-content:space-between;gap:10px;font-family:ui-monospace,monospace;font-size:10px;color:#71685f;letter-spacing:1px;margin-bottom:20px}.points-tag{background:var(--yellow);color:var(--ink);padding:5px 8px}.challenge-card h2{font-size:31px}.challenge-card>p{font-size:16px;line-height:1.5;margin-bottom:22px}.answer-list{display:grid;gap:10px}.answer{display:flex;align-items:center;text-align:left;gap:13px;width:100%;border:1px solid #d4cdc1;border-radius:6px;background:white;padding:14px;font-size:14px;line-height:1.4;min-height:58px}.answer:hover{border-color:var(--blue);background:#edf4ff}.answer .key{font:12px ui-monospace,monospace;background:var(--neutral);min-width:27px;height:27px;display:grid;place-items:center}.answer.chosen{background:#e3efff;border-color:var(--blue)}.order-actions{display:flex;gap:12px;margin-top:16px}.feedback-symbol{font:40px ui-monospace,monospace;color:var(--green);margin:10px 0 20px}.feedback-tag{font-size:11px;color:var(--green);font-weight:700;margin-bottom:22px;letter-spacing:1px}.result{max-width:1120px;padding:45px 5%;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;min-height:calc(100dvh - 157px)}.result h1{font-size:54px}.score-large{font:700 76px ui-monospace,monospace;letter-spacing:-6px;margin:18px 0}.score-large span{font:14px ui-monospace,monospace;letter-spacing:0;color:var(--muted)}.rank-badge{display:inline-block;padding:10px 15px;background:var(--yellow);font-size:13px;border-radius:4px}.benefit-list{display:flex;flex-wrap:wrap;gap:7px;margin:22px 0}.benefit-list span{background:var(--neutral);padding:8px 10px;border-radius:5px;font-size:11px}.leaderboard{max-width:1000px;padding:40px 5%;margin:auto}.leaderboard-heading{display:flex;justify-content:space-between;align-items:center}.leaderboard h1{font-size:46px}.board-row{display:grid;grid-template-columns:50px 1fr 100px 100px;align-items:center;gap:12px;padding:18px 20px;background:white;border-bottom:1px solid var(--line);font-size:15px}.board-row.first{background:#fff3b0}.board-row.head{background:transparent;text-transform:uppercase;font-size:10px;letter-spacing:1px;color:var(--muted)}.board-row strong{font-family:ui-monospace,monospace}.board-row .time{font-size:12px;color:var(--muted)}.board-empty{padding:40px;text-align:center;background:white;border:1px solid var(--line);border-radius:12px;color:var(--muted)}.board-footer{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:15px}.board-footer p{font-size:11px;color:var(--muted);max-width:430px}.loading{padding:100px;text-align:center}#toast{position:fixed;z-index:30;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:16px 24px;max-width:90%;border-radius:8px;font-size:14px;box-shadow:0 4px 18px #0003}dialog{border:1px solid var(--line);border-radius:12px;padding:35px;width:min(560px,90%);box-shadow:0 20px 100px #0003}dialog::backdrop{background:#26324166}dialog p{font-size:14px;white-space:pre-line}.close{float:right;background:var(--neutral);font-size:25px;width:40px;height:40px;border-radius:50%}.admin{max-width:1200px;margin:auto;padding:35px 4%}.admin h1{font-size:38px}.admin-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:25px;flex-wrap:wrap}.admin-toolbar input{padding:12px;border:1px solid var(--line);border-radius:6px;flex:1}.admin table{width:100%;border-collapse:collapse;font-size:12px;background:white}.admin td,.admin th{text-align:left;padding:12px;border-bottom:1px solid var(--line)}.admin th{background:var(--neutral)}.table-scroll{overflow:auto}.admin details{background:white;border:1px solid var(--line);padding:16px;border-radius:8px;margin-bottom:12px}.admin summary{cursor:pointer;font-size:14px}.admin pre{white-space:pre-wrap;font-size:11px;line-height:1.6;max-height:300px;overflow:auto}.admin .secondary{font-size:12px;min-height:42px;padding:10px 13px}.admin .card{margin-bottom:25px}.admin label{font-size:13px}.admin-login{max-width:430px;margin:80px auto}.winner-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.connection-banner{font-size:12px;background:#fff0d3;padding:12px;text-align:center}@media(min-width:1500px){.hero{max-height:900px}}@media(max-width:1050px){.topbar{height:76px}.hero{padding-top:35px;grid-template-columns:36% 64%;min-height:calc(100dvh - 139px)}h1{font-size:49px}.hero-copy>p{font-size:14px}.scene-ticket{font-size:9px;padding:12px}.scene-ticket strong{font-size:16px}.event-label{font-size:8px}.game-layout{grid-template-columns:1fr 260px;gap:18px}.mission-panel{padding:20px}.form-layout{gap:35px;padding:30px 4%}.form-layout h1{font-size:43px}.game{padding-top:18px}.game-header{margin-bottom:8px}.game-world canvas{margin-top:0}.hero-note{gap:10px}.how-strip{gap:8px;font-size:10px}footer{font-size:9px}.result{gap:25px;padding:30px 4%}.result h1{font-size:46px}}@media(max-width:760px){.event-label{display:none}.topbar{padding:0 5%;height:72px}.brand{font-size:31px}.topbar nav{gap:10px}.hero{display:flex;flex-direction:column;padding:35px 6% 25px;text-align:center}.hero-copy h1{font-size:48px}.hero-copy>p{margin-left:auto;margin-right:auto}.eyebrow,.hero-note,.how-strip{justify-content:center}.hero-copy{width:100%}.hero-copy .primary{width:100%}.hero .world-panel{width:100%;margin-top:25px;max-width:580px}.hero-copy>p{max-width:400px}.scene-tag{font-size:8px;padding:7px}.scene-ticket{right:1%;top:3%}.how-strip{margin-top:22px}footer{padding:12px 0;flex-direction:column;gap:0}.form-layout{grid-template-columns:1fr;gap:15px;padding:25px 5%}.form-intro .world-panel{display:none}.form-layout h1{font-size:35px}.form-intro p{margin-bottom:0}.form-intro .eyebrow{justify-content:flex-start}.card{padding:22px}.game-layout{grid-template-columns:1fr}.mission-panel{padding:16px}.mission-panel .pixel-icon{display:none}.mission-panel h3{font-size:23px;margin-bottom:6px}.mission-panel p{margin-bottom:8px}.metrics{display:flex;gap:15px}.metric{flex:1}.game-header h2{font-size:21px}.game-header .eyebrow{font-size:9px;justify-content:flex-start}.scoreboard{gap:15px}.scoreboard>div{font-size:20px}.game-hint{margin:0;font-size:10px}.stage-pill{font-size:9px;padding:8px 1px}.challenge-card{padding:22px}.challenge-card h2{font-size:28px}.result{grid-template-columns:1fr;text-align:center;padding:30px 5%;gap:25px}.result h1{font-size:42px}.result .benefit-list{justify-content:center}.result .world-panel{display:none}.score-large{font-size:65px}.leaderboard{padding:30px 5%}.leaderboard h1{font-size:34px}.leaderboard-heading{align-items:flex-start}.board-row{grid-template-columns:30px 1fr 65px 65px;font-size:13px;padding:15px 9px;gap:7px}.board-footer{flex-direction:column}.winner-list{grid-template-columns:1fr}.operator-target{min-height:44px;min-width:44px;font-size:10px;padding:7px}.mission-list{text-align:left}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
.inline-link{font:inherit;text-decoration:underline;background:none;padding:0;min-height:24px}.result-time{margin-top:15px}.game .eyebrow::before{background:var(--blue)}
.form-note{margin-top:16px}
.pixel-celebration{position:fixed;inset:0;pointer-events:none;z-index:20;overflow:hidden}.pixel-celebration i{position:absolute;top:-20px;width:9px;height:9px;animation:pixel-fall 3s steps(25) forwards}@keyframes pixel-fall{to{transform:translate(60px,110dvh) rotate(540deg);opacity:0}}
@media(min-width:761px) and (max-height:850px){.game-layout{grid-template-columns:minmax(0,1fr) 285px}.game-world .world-panel{max-width:calc((100dvh - 285px)*1.47);margin:0 auto}.game .mission-panel{padding:17px}.game .mission-panel .pixel-icon{width:35px;height:35px;font-size:20px;margin-bottom:14px}.game .mission-panel h3{font-size:24px}.game .mission-panel .eyebrow{font-size:9px;margin-bottom:12px}.game .mission-panel p{font-size:12px}.game .metric{margin-top:10px;padding-top:10px}.game{padding-bottom:16px}.game-header h2{font-size:24px}}
/* Official supplied artwork: intrinsic proportions, one pictogram of clear space. */
.topbar .brand{display:flex;align-items:center;justify-content:center;padding:20px;flex:0 0 auto;line-height:0;letter-spacing:normal}
.topbar .brand img{display:block;width:156px;height:auto;max-width:100%;object-fit:contain}
.brand-dot{display:none}
.world-panel canvas{aspect-ratio:1000/680}
.hero .scene-tag{left:4%;top:1%}.hero .scene-ticket{right:0;top:0;transform:rotate(5deg)}
@media(max-width:760px){.topbar .brand{padding:16px 8px}.topbar .brand img{width:122px}.hero .scene-ticket{font-size:8px;padding:9px}.hero .scene-ticket strong{font-size:13px}.hero .scene-tag{font-size:7px;left:0}}
@media(min-width:761px) and (max-height:850px){.game-world .world-panel{max-width:calc((100dvh - 265px)*1.47)}.game .mission-panel{padding:16px}.game .mission-panel .pixel-icon{display:none}.game .mission-panel .secondary{min-height:46px}.game .mission-panel h3{font-size:23px}}
.hero .scene-tag{top:-5%}.hero .scene-ticket{top:-5%}
/* Extend the alert's touch area over the seated adviser beneath it. */
.operator-target::before{content:'';position:absolute;left:0;right:0;top:100%;height:80px;background:transparent}
/* Score feedback: one short reward beat; never delays the next challenge. */
.score-feedback-card{width:min(620px,100%)}
.score-feedback-card .challenge-top{margin-bottom:14px}
.score-reward{position:relative;text-align:center;padding:18px 12px 14px;margin-bottom:16px;background:var(--yellow);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--blue);isolation:isolate}
.score-reward-label{font:700 10px ui-monospace,monospace;letter-spacing:2px;margin-bottom:3px}
.score-reward-points{position:relative;font:900 clamp(46px,7.5vw,78px)/1.08 ui-monospace,monospace;letter-spacing:-4px;font-variant-numeric:tabular-nums;white-space:nowrap;transform-origin:center}
.score-reward--gain .score-reward-points{animation:score-pop 750ms cubic-bezier(.2,.8,.3,1) both}
.score-reward--gain{animation:score-glow 800ms ease-out both}
.score-reward--loss{background:var(--neutral);box-shadow:5px 5px 0 var(--orange)}
.score-reward--loss .score-reward-points{animation:score-settle 650ms ease-out both}
.score-reward--neutral{background:var(--neutral);box-shadow:5px 5px 0 var(--blue)}
.score-reward--neutral .score-reward-points{animation:score-settle 600ms ease-out both}
.feedback-total{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:4px 0 15px;margin-bottom:20px;font:700 11px ui-monospace,monospace}
.feedback-total>span{letter-spacing:1px;color:var(--muted)}
.feedback-total b{font-size:30px;font-variant-numeric:tabular-nums;letter-spacing:-1px}
.feedback-total small{font-size:11px;color:var(--muted)}
.feedback-total>strong{background:var(--yellow);padding:8px;color:var(--ink);white-space:nowrap}
.score-sparkles{position:absolute;inset:0;pointer-events:none;z-index:-1}
.score-sparkles i{position:absolute;left:8%;top:32%;width:7px;height:7px;background:var(--blue);box-shadow:7px 0 var(--blue),0 7px var(--blue);opacity:0;--dx:-15px;--dy:-18px}
.score-sparkles i:nth-child(2){left:88%;top:24%;--dx:14px;--dy:-15px}
.score-sparkles i:nth-child(3){left:14%;top:75%;--dx:-12px;--dy:14px}
.score-sparkles i:nth-child(4){left:84%;top:77%;--dx:18px;--dy:12px}
.score-sparkles i:nth-child(5){left:32%;top:10%;--dx:-6px;--dy:-13px;width:5px;height:5px}
.score-sparkles i:nth-child(6){left:68%;top:85%;--dx:7px;--dy:14px;width:5px;height:5px}
.score-reward--gain .score-sparkles i{animation:score-sparkle 800ms steps(6,end) both}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0!important;margin:-1px!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@keyframes score-pop{0%{transform:scale(.8)}40%{transform:scale(1.08)}70%{transform:scale(.98)}100%{transform:scale(1)}}
@keyframes score-glow{0%{box-shadow:5px 5px 0 var(--blue),0 0 0 0 #468bea38}50%{box-shadow:5px 5px 0 var(--blue),0 0 0 8px #468bea18}100%{box-shadow:5px 5px 0 var(--blue),0 0 0 12px #468bea00}}
@keyframes score-settle{0%{transform:translateY(-5px);opacity:.65}100%{transform:translateY(0);opacity:1}}
@keyframes score-sparkle{0%{opacity:0;transform:translate(0,0) scale(.5)}25%{opacity:.8}100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(1)}}
@media(max-width:480px){.score-reward-points{font-size:46px;letter-spacing:-3px}.feedback-total{gap:6px;font-size:9px}.feedback-total b{font-size:26px}.feedback-total>strong{padding:6px}.score-reward{padding:16px 6px}}
@media(min-width:761px) and (max-height:850px){.score-feedback-card{padding:24px 28px}.score-feedback-card .score-reward{padding:14px 10px 12px}.score-feedback-card>p{margin-bottom:16px}.score-feedback-card .feedback-tag{margin-bottom:18px}}
@media(prefers-reduced-motion:reduce){.score-reward,.score-reward-points,.score-sparkles i{animation:none!important}.score-sparkles{display:none}}
/* Clear mission and one-screen results, with only the ranking list scrolling. */
.mission-intro{max-width:1200px;margin:auto;padding:26px 4.2%;min-height:calc(100dvh - 157px);display:grid;grid-template-columns:1fr 1.08fr;gap:42px;align-items:center}
.mission-scene h1{font-size:clamp(34px,4vw,52px);margin-bottom:8px}.mission-scene h1 span{color:var(--blue)}.mission-scene .eyebrow{margin-bottom:15px}.mission-scene .world-panel{max-width:430px;margin:0 auto}.mission-start{padding:26px}.mission-start .eyebrow{margin-bottom:16px}.mission-start h2{font-size:32px;margin-bottom:14px}.mission-start>p{font-size:15px;margin-bottom:14px}.mission-steps{list-style:none;display:grid;gap:12px;padding:0;margin:20px 0}.mission-steps li{display:flex;align-items:center;gap:12px;font-size:14px;line-height:1.4}.mission-steps b{flex:0 0 30px;height:30px;display:grid;place-items:center;background:var(--blue);color:white;font:700 16px ui-monospace,monospace;box-shadow:3px 3px 0 #2c222020}.start-challenge{min-height:76px;font-size:19px;letter-spacing:.4px;border:2px solid var(--ink);box-shadow:5px 5px 0 var(--ink);gap:15px}.mission-start .start-rules{font-size:11px;line-height:1.45;margin:20px 0 8px}.mission-start .start-connection{font-size:11px;margin:0}.first-move-hint{background:var(--yellow);border:2px solid var(--ink);padding:12px 8px;margin:0 0 12px;color:var(--ink);font-size:12px;font-weight:700;text-transform:none}
.results-layout{height:calc(100dvh - 157px);min-height:530px;max-width:1500px;margin:auto;padding:24px 4.2%;display:grid;grid-template-columns:minmax(290px,.85fr) minmax(0,1.2fr);gap:30px;align-items:stretch}
.final-summary{display:flex;flex-direction:column;justify-content:center;min-width:0}.final-summary>.eyebrow{margin-bottom:10px}.final-summary h1{font-size:36px;line-height:1.05;margin-bottom:10px}.final-intro{font-size:13px;line-height:1.45;max-width:340px;margin-bottom:16px}.final-score-label{font:700 11px ui-monospace,monospace;letter-spacing:1.5px}.final-score{font:800 clamp(64px,8vw,104px)/1.12 ui-monospace,monospace;letter-spacing:-6px;font-variant-numeric:tabular-nums;white-space:nowrap;margin:4px 0 12px}.final-score span{font:700 16px ui-monospace,monospace;letter-spacing:0}.final-rank{display:flex;align-items:center;gap:12px;align-self:flex-start;background:var(--yellow);padding:10px 14px;font:700 13px ui-monospace,monospace;box-shadow:4px 4px 0 var(--blue)}.final-rank strong{font-size:24px}.final-outcome{margin:18px 0 12px;font-size:11px}.final-brand-message{font-size:12px;line-height:1.45;margin-bottom:18px}.finish-challenge{min-height:62px;font-size:13px;gap:10px;white-space:normal}.reset-note{font-size:10px;margin:12px 0 0}
.results-board{min-width:0;min-height:0;display:flex;flex-direction:column;background:white;border:2px solid var(--ink);box-shadow:5px 5px 0 #2c222018;padding:20px 18px 12px}.results-board-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.results-board-heading .eyebrow{font-size:9px;letter-spacing:.7px;margin-bottom:10px}.results-board-heading h2{font-size:26px;line-height:1.08;margin-bottom:8px}.board-star{font:32px ui-monospace,monospace;background:var(--yellow);box-shadow:3px 3px 0 var(--blue);padding:2px 8px}.results-board-tools{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:0 8px;margin-bottom:6px}.results-board-tools p{font-size:10px;margin:0}.results-board-tools .text-button{font-size:10px;padding:4px;min-height:44px}.ranking-scroll{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable;min-height:0;flex:1;border:1px solid var(--line);background:var(--cream)}.ranking-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px;table-layout:fixed}.ranking-table thead th{position:sticky;top:0;z-index:1;background:var(--ink);color:var(--cream);text-align:left;font:700 10px ui-monospace,monospace;padding:13px 9px}.ranking-table thead th:first-child{width:82px}.ranking-table thead th:last-child{width:80px;text-align:right}.ranking-table td,.ranking-table tbody th{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left;background:white;font-weight:500;overflow-wrap:anywhere}.ranking-table td:last-child{text-align:right;font:700 15px ui-monospace,monospace}.ranking-table tbody th{font-weight:600}.rank-medal{display:inline-grid;place-items:center;min-width:32px;min-height:32px;font:700 13px ui-monospace,monospace}.rank-medal.gold{background:#ffdf45;border:2px solid #9d7800;box-shadow:2px 2px 0 #9d7800}.rank-medal.silver{background:#e3e9f0;border:2px solid #778491;box-shadow:2px 2px 0 #778491}.rank-medal.bronze{background:#edc5a3;border:2px solid #976238;box-shadow:2px 2px 0 #976238}.ranking-table .current-player>*{background:#e5efff;border-top:2px solid var(--blue);border-bottom:2px solid var(--blue)}.ranking-table .current-player>*:first-child{border-left:3px solid var(--blue)}.ranking-table .current-player>*:last-child{border-right:3px solid var(--blue)}.you-badge{display:inline-block;font:700 9px ui-monospace,monospace;background:var(--ink);color:white;padding:4px 5px;margin-left:5px;vertical-align:middle}.ranking-table td.ranking-empty{text-align:center;font:13px/1.6 -apple-system,BlinkMacSystemFont,sans-serif;padding:30px 14px}.ranking-note{font-size:9px;color:var(--muted);line-height:1.45;margin:10px 0 0}.standalone-ranking{max-height:65dvh;min-height:140px}.results-layout~.pixel-celebration{animation:results-celebration-fade 1.5s both}@keyframes results-celebration-fade{80%{opacity:1}100%{opacity:0}}
@media(min-width:761px) and (max-height:800px){.mission-intro{gap:28px;padding-top:20px;padding-bottom:20px}.mission-start{padding:22px}.mission-start h2{font-size:29px}.mission-steps{margin:16px 0}.results-layout{padding-top:20px;padding-bottom:20px;gap:24px}.final-summary h1{font-size:32px}.final-score{font-size:80px}.final-intro{font-size:12px;margin-bottom:12px}.final-outcome{margin:14px 0 10px}.final-brand-message{margin-bottom:14px}}
@media(max-width:760px){.mission-intro{grid-template-columns:1fr;gap:20px;padding:24px 5%}.mission-scene h1{font-size:34px}.mission-scene .world-panel{display:none}.start-challenge{font-size:16px;min-height:70px}.results-layout{height:auto;min-height:0;display:flex;flex-direction:column;padding:22px 5%;gap:20px}.final-summary{position:sticky;top:0;z-index:2;background:var(--cream);padding:10px 0;border-bottom:1px solid var(--line)}.final-summary h1{font-size:28px}.final-intro,.final-brand-message,.final-outcome{display:none}.final-score{font-size:64px;margin:3px 0 10px}.final-rank{padding:6px 10px}.final-rank strong{font-size:20px}.finish-challenge{margin-top:14px;min-height:54px}.reset-note{font-size:9px;margin-top:8px}.results-board{height:58dvh;min-height:320px;padding:16px 12px 10px}.results-board-heading h2{font-size:23px}.ranking-table thead th:first-child{width:70px}.ranking-table thead th:last-child{width:70px}}
