@font-face{font-family:'Space Mono';src:url('./brand-assets/space-mono-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Space Mono';src:url('./brand-assets/space-mono-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
@font-face{font-family:Arcade;src:url('./brand-assets/press-start-2p.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--paper:#232323;--ink:#fff;--muted:#b6b6b6;--line:#494949;--accent:#ba0005;--font:'Space Mono',monospace;--display:Arcade,monospace;--field:#1d1d1d;--focus:#fa6464;color-scheme:dark;background:var(--paper)}
body{background:var(--paper);color:var(--ink);transition:background .25s,color .25s}
.site-announcement{position:relative;display:grid;place-items:center;min-height:46px;padding:12px max(5%,calc((100% - 1250px)/2));overflow:hidden;border-bottom:1px solid #ff5961;background:#ba0005;color:#fff;text-align:center;isolation:isolate}
.site-announcement:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(0,0,0,.16) 14px 19px,transparent 19px 28px);background-size:40px 40px;animation:announcement-stripes 1.2s linear infinite;pointer-events:none;z-index:-1}
.site-announcement p{margin:0;font:400 clamp(9px,1.15vw,12px)/1.7 var(--display);letter-spacing:.1px;text-wrap:balance}
.site-announcement p:before,.site-announcement p:after{content:'+';display:inline-block;margin:0 14px;color:#ffd4d6;font:700 12px/1 var(--font)}


.site-header{background:#fff;color:#232323;max-width:none;height:94px;padding:0 max(5%,calc((100% - 1250px)/2));border-bottom:0}.wordmark{display:block;line-height:0}.wordmark img{display:block;width:260px;height:auto;transform:none;image-rendering:auto}.header-right{font-size:10px;letter-spacing:1px;font-weight:400;gap:32px}.text-link{height:94px;position:relative;padding:0;gap:8px}.text-link.active:after{content:'';position:absolute;left:0;right:0;bottom:21px;height:2px;background:#ba0005}.text-link:hover{color:#ba0005}
main{max-width:1250px;padding:34px 0 0;margin:auto}.stage-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px;padding:0 0 22px;border-bottom:1px solid var(--line)}.stage-heading .eyebrow{color:var(--muted);font-size:8px;letter-spacing:2px}.stage-heading h1{font:400 clamp(22px,2.5vw,36px)/1.4 Arcade,monospace;letter-spacing:0;margin:10px 0 0}.title-brand,.title-game{display:inline-block;white-space:nowrap}.title-cursor{color:#ef4f4f;display:inline-block;animation:cursor 1.5s steps(2,end) infinite}.stage-heading p{font-size:9px;letter-spacing:1px;line-height:1.9;text-align:right;margin:0}.stage-heading p>span{letter-spacing:0;color:var(--muted);font-size:11px}
.arcade{grid-template-columns:minmax(0,1fr) 350px;gap:68px}.game-column{position:relative;padding:0 48px 0 0}.game-column:before{content:'';position:absolute;inset:56px auto auto -48px;width:215px;height:215px;background:url('./brand-assets/emblem.png') center/contain no-repeat;filter:invert(1);mix-blend-mode:screen;opacity:.07;pointer-events:none;z-index:0}.game-meta{font-size:8px;letter-spacing:1px;margin:0 auto 14px;max-width:470px}.live-dot{border-radius:0;background:#e34141;width:5px;height:5px;box-shadow:0 0 0 3px #e3414118}.icon-button{font-size:8px;color:var(--muted);letter-spacing:.8px;padding:10px 0}.game-shell{width:360px;max-width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:360/560;margin:auto;border:4px solid #111;box-shadow:0 0 0 1px #555,0 8px 0 #111,0 9px 0 #555;background:#b9e0e7;overflow:hidden}.game-shell canvas{image-rendering:pixelated}.game-controls{max-width:470px;margin:24px auto 0;font-size:9px}.game-controls>span:last-child{max-width:none}kbd{border:1px solid #777;border-bottom-width:3px;border-radius:0;background:transparent;color:var(--ink);padding:3px 6px;font-size:8px}
.game-intro{padding-top:49px;color:#23362e;animation:arrive .5s ease-out both}.game-eyebrow{font:400 9px Arcade,monospace;letter-spacing:0}.game-intro h2{font:400 34px/1.3 Arcade,monospace;letter-spacing:-2px;margin:25px 0 18px;color:#fff5ce;text-shadow:3px 0 #344b38,-3px 0 #344b38,0 3px #344b38,0 -3px #344b38,4px 5px #344b38}.game-intro p{font:400 11px/1.75 var(--font);margin:0;color:#263a30}.tap-cue{display:block;font:400 28px Arcade,monospace;margin-top:12px;animation:tap 1.5s ease-in-out infinite;color:#344b38}.overlay-bottom{margin-bottom:71px;gap:13px}.start-hint{color:#2a443a;font:700 7px/1.6 var(--font);letter-spacing:.8px;max-width:220px}.game-button{background:#ba0005;border:2px solid #3d080a;color:#fff;box-shadow:inset 0 2px #ff817b,0 4px #590609;min-width:210px;min-height:48px;font:400 11px/1.5 var(--font);letter-spacing:0;padding:12px 15px;gap:10px;align-items:center}.game-button span{font-family:var(--font);font-size:16px}.game-button:hover{background:#d21116;transform:translateY(-2px)}.game-button:active{transform:translateY(3px);box-shadow:inset 0 2px #ff817b,0 1px #590609}.game-score{font:400 38px Arcade,monospace;top:29px;color:white;-webkit-text-stroke:0;text-shadow:3px 0 #283b30,-3px 0 #283b30,0 3px #283b30,0 -3px #283b30,3px 5px #283b30}
.side-column{padding:3px 0 0}.side-column .eyebrow{font-size:8px;letter-spacing:1.5px;color:var(--muted)}.tiny-cross{color:#e64a4a;font-size:16px;margin-right:6px}.side-column h2{font:400 42px/.94 var(--display);letter-spacing:-2px;margin:14px 0 12px}.red-period{color:#ee4c4c}.intro-copy,.player-panel>p{font:400 11px/1.6 var(--font);color:var(--muted);margin-bottom:19px}form>label,.name-fields label{font-size:10px;font-weight:400;margin-top:12px;margin-bottom:7px;color:var(--ink)}input:not([type=checkbox]){height:43px;background:var(--field);border:1px solid #626262;color:var(--ink);font-size:12px;padding:12px}input:not([type=checkbox]):focus{background:var(--field);border-color:var(--focus);outline-color:var(--focus)}input::placeholder{color:#969696}.name-fields{gap:12px}.consent{margin:15px 0 16px}.consent legend{font-size:9px;font-weight:400}.check-label{font-size:9px;margin:8px 0;line-height:1.5}.check-label input{width:14px;height:14px;accent-color:#ba0005}.primary-button{background:#ba0005;border:1px solid #e13235;color:white;font-size:10px;letter-spacing:1.3px;min-height:48px;padding:14px 17px;font-weight:400;box-shadow:0 3px #650005}.primary-button:hover{background:#d10b11;transform:translateY(-2px)}.primary-button:active{transform:translateY(2px);box-shadow:0 1px #650005}.privacy-copy{font-size:9px;line-height:1.6;margin-top:13px;color:var(--muted)}.inline-button{border-color:#7c7c7c}.inline-button:hover{color:var(--ink);border-color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline-color:var(--focus)}.form-error{background:#5b1118;color:white}
.leaderboard{margin-top:28px;padding-top:22px;border-color:var(--line)}.leaderboard-header h2{font:400 15px/1.4 var(--display);letter-spacing:-.3px;margin:0;gap:14px}.board-cross{color:#e44b4b}.board-period{font-size:7px;letter-spacing:1px;color:var(--muted)}.board-caption{font-size:7px;letter-spacing:.5px;line-height:1.7;margin:8px 0 15px}.board-head{font-size:7px;padding-bottom:10px;letter-spacing:.7px}.leaderboard-list{max-height:194px}.leaderboard-list li{padding:10px 0;font-size:11px;grid-template-columns:28px 1fr auto;gap:7px}.rank{border-radius:0;width:22px;height:21px;font:400 10px var(--font);color:var(--muted)}.leaderboard-list li:first-child .rank{background:#ba0005;color:#fff}.leader-score{font:700 12px var(--font);color:var(--ink)}.board-refresh{font-size:8px;margin-top:12px}.leaderboard-empty{font-size:10px}.personal-best{margin:25px 0}.personal-best strong{font:400 32px Arcade,monospace}.personal-best>span{font-size:9px}.player-panel h2{font-size:40px}
.result-overlay,.pause-overlay{background:#ece4c4ed;color:#24362d;padding:25px}.result-overlay h2,.pause-overlay h2{font:400 27px/1.4 Arcade,monospace;margin:20px 0;color:#ba0005;text-shadow:2px 2px white}.result-score{font:400 42px/1.5 Arcade,monospace}.result-overlay .eyebrow{font-size:7px}.result-unit{font-size:8px;letter-spacing:1px}.result-overlay p,.pause-overlay p{font-size:11px;min-height:25px}.result-overlay .primary-button,.pause-overlay .primary-button{font:400 11px/1.5 var(--font);letter-spacing:0;margin-top:18px}.result-overlay .primary-button span,.pause-overlay .primary-button span{font-family:var(--font)}.how-to{margin:35px 0 0;border-color:var(--line);padding:22px 0;gap:30px}.how-to>div>span{font:400 13px Arcade,monospace;color:#d85151}.how-to>div{gap:15px}.how-to p,.how-to strong{font-size:10px}.how-to strong{font-weight:400}.how-to p{margin:0}.how-to strong{margin-bottom:2px}
footer{max-width:1250px;border-color:var(--line);padding:24px 0;gap:15px;justify-content:start;align-items:center;font-size:9px;letter-spacing:1.2px;line-height:1.9;font-weight:400}footer>img{width:39px;height:39px;object-fit:contain;filter:invert(1);mix-blend-mode:screen}.footer-sub{font-size:7px;color:var(--muted)}footer>a{margin-left:auto;text-decoration:none;font-size:8px}dialog{background:var(--paper);border-color:var(--line);color:var(--ink)}dialog h2{font-family:var(--display);font-weight:400;letter-spacing:-1.5px}dialog::backdrop{background:#000a}

@keyframes cursor{0%,80%{opacity:1}81%,100%{opacity:0}}@keyframes tap{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes announcement-stripes{from{background-position:0 0}to{background-position:-40px 0}}
@media(min-width:1440px){main,footer{max-width:1160px}.arcade{grid-template-columns:minmax(0,1fr) 370px;gap:76px}.game-shell{width:385px}.game-intro{padding-top:52px}.game-intro h2{font-size:38px}.side-column h2{font-size:45px}.game-meta,.game-controls{max-width:480px}}
@media(max-width:1320px){main,footer{margin-left:6%;margin-right:6%}.arcade{gap:50px}.game-column{padding-right:15px}.game-column:before{left:-30px}}
@media(min-width:721px) and (max-height:850px){.site-header,.text-link{height:76px}.wordmark img{width:225px}main{padding-top:22px}.stage-heading{margin-bottom:22px;padding-bottom:17px}.game-shell{width:310px;height:auto;min-height:0;max-height:none}.game-intro{padding-top:33px}.game-intro h2{font-size:29px;margin-top:20px;margin-bottom:14px}.game-intro p{font-size:10px}.tap-cue{font-size:20px;margin-top:10px}.overlay-bottom{margin-bottom:54px;gap:8px}.game-button{min-height:43px;font-size:8px;min-width:186px;padding:10px 14px}.side-column h2{font-size:36px}.intro-copy{margin-bottom:15px}.game-controls{margin-top:21px}.leaderboard{margin-top:24px}}
@media(max-width:1050px){.arcade{grid-template-columns:minmax(0,1fr) 310px;gap:32px}.game-column{padding:0}.game-column:before{display:none}.header-right{gap:22px;font-size:9px}.wordmark img{width:220px}.side-column h2{font-size:36px}}
@media(max-width:720px){.site-header{height:75px;padding:0 5%;gap:15px}.wordmark img{width:180px}.header-right{gap:15px;font-size:8px;letter-spacing:.3px}.text-link{height:75px}.text-link.active:after{bottom:14px}.store-link{display:none}.stage-heading{margin-bottom:19px;padding-bottom:17px;gap:10px;flex-direction:column;align-items:flex-start}.stage-heading .eyebrow{font-size:7px;letter-spacing:1.5px}.stage-heading h1{font-size:clamp(20px,4.7vw,30px)}.stage-heading p{font-size:7px;letter-spacing:.4px;text-align:left}.stage-heading p>span{font-size:9px}main{padding-top:24px;margin:0 5%}.arcade{grid-template-columns:1fr;gap:38px}.game-meta{font-size:7px;margin-bottom:11px}.game-shell{width:min(360px,calc((100svh - 240px)*.64286));min-width:min(260px,100%);height:auto;min-height:0;max-height:none;aspect-ratio:360/560}.game-intro{padding-top:35px}.game-intro h2{font-size:30px;margin-top:21px;margin-bottom:13px}.game-intro p{font-size:10px;line-height:1.6}.game-eyebrow{font-size:8px}.tap-cue{font-size:23px;margin-top:10px}.overlay-bottom{margin-bottom:56px;gap:9px}.start-hint{font-size:7px}.game-button{font-size:8px;min-width:191px;min-height:44px;padding:10px 14px}.game-controls{font-size:8px;gap:10px;margin-top:21px}.side-column{padding:27px 0 0;border-top:1px solid var(--line)}.side-column h2{font-size:44px}.intro-copy{font-size:13px;margin-bottom:23px}.side-column .eyebrow{font-size:8px}form>label,.name-fields label{font-size:12px;margin-top:17px}.name-fields{gap:13px}input:not([type=checkbox]){font-size:16px;height:49px}.consent legend,.check-label{font-size:11px}.consent{margin:20px 0}.check-label{margin:11px 0}.check-label input{width:16px;height:16px}.primary-button{font-size:11px;min-height:50px}.privacy-copy{font-size:10px}.leaderboard{margin-top:29px;padding-top:25px}.leaderboard-header h2{font-size:19px}.board-period{font-size:8px}.board-caption{font-size:8px;margin-top:12px}.board-head{font-size:8px}.leaderboard-list{max-height:300px}.leaderboard-list li{font-size:12px;padding:13px 0}.rank{font-size:8px}.leader-score{font-size:11px}.board-refresh{font-size:10px;margin-top:15px}.how-to{grid-template-columns:1fr;gap:20px;margin-top:33px;padding:25px 0}.how-to strong{display:block;font-size:11px}.how-to p{font-size:11px}.how-to>div>span{font-size:14px}footer{margin:0 5%;padding:25px 0;font-size:8px}footer>a{font-size:7px}footer>img{width:34px;height:34px}footer>span:last-child{display:block}.result-overlay h2,.pause-overlay h2{font-size:24px}.result-score{font-size:37px}dialog{padding:28px}}
@media(max-width:380px){.wordmark img{width:154px}.header-right{gap:11px;font-size:7px}.stage-heading p{font-size:6px}.game-controls{font-size:7px}}
@media(max-width:720px){.site-announcement{min-height:44px;padding:10px 5%}.site-announcement p{font-size:9px;line-height:1.65}.site-announcement p:before,.site-announcement p:after{margin:0 7px;font-size:10px}}
body{min-height:100svh}
@media(min-width:721px){.game-shell{width:clamp(280px,calc((100svh - 355px)*.642857),385px)}}
.side-column .leaderboard-header h2{font:400 18px/1.4 var(--display);letter-spacing:-.4px;margin:0}
@media(max-width:720px){.side-column .leaderboard-header h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Embedded layout uses content height so Shopify iframe resizing stays stable. */
.is-embedded body{min-height:0}
.is-embedded .game-shell{width:385px;max-width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:360/560}
@media(max-width:720px){.is-embedded .game-shell{width:360px}}

/* Username entry, discount claims, and weekly reward rules. */
.stage-heading h1{margin-top:0}
.game-meta{justify-content:flex-end}
.game-controls{justify-content:center}
.registration form>label:first-child{margin-top:0;font-size:16px;line-height:1.4}
.field-hint{margin:7px 0 15px;color:var(--muted);font-size:10px;line-height:1.6}
#join-button,#claim-submit{margin-top:18px}
.side-column .player-panel h2{font:400 24px/1.3 var(--display);letter-spacing:0;overflow-wrap:anywhere;margin-top:0}
.personal-best{margin:18px 0}
.prize-panel{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}
.side-column .prize-panel h2{font:400 17px/1.45 var(--display);letter-spacing:0;margin:0 0 9px}
.prize-panel p{font-size:11px;line-height:1.6;color:var(--muted);margin:6px 0}
.prize-panel #claim-success{color:var(--ink)}
.prize-panel .primary-button{margin:14px 0 9px}
.prize-panel .inline-button{font-size:11px;margin:6px 0}
.leaderboard-header{margin-bottom:16px}
.leaderboard-list{max-height:none}
.leaderboard .board-caption{font-size:10px;line-height:1.6;letter-spacing:0;color:var(--muted);margin:10px 0 14px}
.game-rules{border-top:1px solid var(--line);margin-top:34px;padding:24px 0;display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:30px}
.game-rules h2{font:400 19px/1.4 var(--display);letter-spacing:0;margin:0 0 8px}
.rules-heading p{font-size:9px;line-height:1.6;letter-spacing:.5px;color:var(--muted);margin:0}
.game-rules .reward-rules{margin:0;padding:0;list-style:none;color:var(--muted);font-size:12px;line-height:1.7}
.reward-rules>li{display:grid;grid-template-columns:150px 1fr;gap:18px;padding:11px 0;border-bottom:1px solid var(--line)}
.reward-rules>li:first-child{padding-top:0}
.reward-rules strong{font-weight:700;color:var(--ink)}
.rules-detail{font-size:10px;line-height:1.7;color:var(--muted);margin:15px 0 0}
dialog{max-height:calc(100svh - 32px);overflow:auto}
dialog h2{font-size:26px;line-height:1.3;letter-spacing:0;margin:7px 0 16px}
#claim-dialog .claim-note{font-size:11px;line-height:1.6;margin:17px 0 0}
.result-overlay:has(#result-claim:not([hidden])) h2{font-size:24px;margin:8px 0}
.result-overlay:has(#result-claim:not([hidden])) .result-score{font-size:34px}
.result-overlay:has(#result-claim:not([hidden])) p{min-height:0;margin:8px 0}
.result-overlay:has(#result-claim:not([hidden])) .result-unit{margin:7px 0}
.result-overlay:has(#result-claim:not([hidden])) .primary-button{min-height:42px;margin-top:12px;padding:11px 15px}
.result-overlay:has(#result-claim:not([hidden])) #replay-button{background:transparent;color:#24362d;border-color:#637063;box-shadow:none}
@media(max-width:720px){
  .registration form>label:first-child{font-size:18px}
  .field-hint{font-size:11px}
  .side-column .player-panel h2{font-size:26px}
  .side-column .prize-panel h2{font-size:19px}
  .prize-panel p{font-size:12px}
  .game-rules{grid-template-columns:1fr;gap:17px;padding:24px 3%}
  .game-rules .reward-rules{font-size:12px}
  .reward-rules>li{grid-template-columns:1fr;gap:3px;padding:14px 0}
  .rules-heading p,.rules-detail{font-size:11px}
  .is-embedded .game-rules{padding-left:0;padding-right:0}
}

/* Pixel display lettering with Space Mono for labels, controls and body copy. */
.marketing-consent .check-label{font:400 11px/1.65 var(--font);color:var(--muted);cursor:pointer}
.marketing-consent legend{font:400 11px/1.6 var(--font);color:var(--ink)}
.marketing-consent .check-label input{width:17px;height:17px;margin-top:2px}
kbd{font-family:var(--font)}
.side-column .player-panel h2{font-size:16px;line-height:1.7;text-transform:uppercase}
.side-column .prize-panel h2,.side-column .leaderboard-header h2{font:400 13px/1.8 var(--display);letter-spacing:0}
.game-rules h2{font-size:16px;line-height:1.75}
dialog h2{font-size:18px;line-height:1.7;text-transform:uppercase}
.game-button{font-size:11px}
.start-hint{font-size:8px;letter-spacing:0}
.result-overlay .primary-button,.pause-overlay .primary-button{font-family:var(--font);font-size:11px}
.leader-score{font-family:var(--font);font-size:12px}
.rank{font-family:var(--font);font-size:10px}
@media(max-width:720px){
  .side-column .player-panel h2{font-size:18px}
  .side-column .prize-panel h2,.side-column .leaderboard-header h2{font-size:14px}
  dialog h2{font-size:16px}
  .game-button,.result-overlay .primary-button,.pause-overlay .primary-button{font-size:11px}
}

/* Keep the entry, standings, prizes and information in one reading order. */
.leaderboard-header{margin-bottom:12px}
.prizes,.game-info{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}
.side-column .prizes h2,.game-info h2{font:400 13px/1.8 var(--display);letter-spacing:0;margin:0 0 18px}
.prizes{min-height:106px}
.prizes h2{margin-bottom:22px}
.prize-podium{display:grid;grid-template-columns:.82fr 1fr 1.18fr 1fr .82fr;align-items:end;gap:3px;min-height:160px;margin:0;padding:24px 0 0;list-style:none;border-bottom:1px solid #646464}
.podium-step{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;min-width:0;padding:13px 2px 7px;color:#171717;border:1px solid #777;border-bottom:0;overflow:visible;animation:podium-rise .48s cubic-bezier(.2,.8,.2,1) both;transition:transform .18s ease,filter .18s ease}
.podium-step:hover{transform:translateY(-4px);filter:brightness(1.08)}
.podium-place{font:400 clamp(6px,1vw,8px)/1.3 var(--display);white-space:nowrap}
.podium-step strong{font:700 clamp(9px,1.4vw,12px)/1.3 var(--font);white-space:nowrap}
.podium-first{grid-column:3;grid-row:1;height:148px;background:linear-gradient(135deg,#fff0a6 0%,#d7a813 42%,#fff0a0 64%,#aa7800 100%);border-color:#ffe88a;box-shadow:0 0 0 1px #7b5800,0 0 25px #e4b52b36;animation-delay:.18s}
.podium-first:before{content:'★';position:absolute;top:-25px;left:50%;transform:translateX(-50%);color:#ffd95a;font:400 16px/1 var(--display);text-shadow:0 0 12px #ffc800}
.podium-second{grid-column:2;grid-row:1;height:119px;background:linear-gradient(135deg,#f1f1ef 0%,#9fa3a4 45%,#e2e3df 68%,#767b7c 100%);border-color:#dfe1df;animation-delay:.1s}
.podium-third{grid-column:4;grid-row:1;height:101px;background:linear-gradient(135deg,#e0a06d 0%,#8f4f27 48%,#c98654 70%,#6e371e 100%);border-color:#cf8c5d;color:#fff7ed;animation-delay:.26s}
.podium-fourth{grid-column:1;grid-row:1;height:78px;background:linear-gradient(135deg,#afa69a,#6e675f);border-color:#9d958a;color:#fff;animation-delay:.04s}
.podium-fifth{grid-column:5;grid-row:1;height:64px;background:linear-gradient(135deg,#8b8b87,#565653);border-color:#777;color:#fff;animation-delay:.32s}
.prize-copy{margin:17px 0 0;color:var(--muted);font-size:10px;line-height:1.7}
.info-list{margin:0;padding-left:18px;color:var(--muted);font-size:11px;line-height:1.8}
.info-list li{padding-left:4px;margin-bottom:16px}
.info-list li::marker{color:var(--ink)}
.sign-off{color:var(--ink);font-size:12px;line-height:1.7;margin:23px 0 0}
.game-info{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:30px;margin-top:34px;padding-bottom:30px}
.game-info h2{font-size:16px;margin:0}
.info-body{min-width:0}
.player-reward{margin-top:20px;padding-top:17px;border-top:1px solid var(--line)}
.player-reward p{font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0}
.player-reward .primary-button{margin-top:12px}
.player-reward .inline-button{font-size:11px}
.player-reward #claim-success{color:var(--ink)}
#claim-form .marketing-consent{margin:20px 0 0}
#claim-dialog .claim-note{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}
.dialog-close{font:400 24px/1 var(--font);width:40px;height:40px;padding:8px;top:6px;right:6px}
@keyframes podium-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:720px){
  .side-column .prizes h2,.game-info h2{font-size:14px}
  .prizes,.game-info{margin-top:28px;padding-top:24px}
  .info-list{font-size:12px;line-height:1.8}
  .game-info{grid-template-columns:1fr;gap:18px;padding-bottom:30px}
  .prize-podium{min-height:182px;gap:4px;padding-top:26px}
  .podium-first{height:168px}.podium-second{height:135px}.podium-third{height:114px}.podium-fourth{height:88px}.podium-fifth{height:72px}
  .podium-place{font-size:clamp(6px,2vw,8px)}.podium-step strong{font-size:clamp(9px,3vw,12px)}
  .prize-copy{font-size:11px}
  .wordmark img{width:clamp(120px,36vw,180px)}
  .header-right{gap:13px;font-size:7px}
}

/* Weekly leaderboard history keeps the date in the center like an arcade score selector. */
.leaderboard-week-nav{display:grid;grid-template-columns:38px minmax(0,1fr) 38px;align-items:stretch;gap:8px;margin:0 0 12px;padding:9px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.leaderboard-week-copy{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center}
.leaderboard-week-range{overflow:hidden;max-width:100%;font:700 9px/1.45 var(--font);font-variant-numeric:tabular-nums;letter-spacing:.15px;text-overflow:ellipsis;white-space:nowrap}
.leaderboard-week-status{font:400 7px/1.4 var(--font);letter-spacing:.8px;color:var(--muted)}
.week-nav-button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:1px solid #686868;background:#1d1d1d;color:var(--ink);font:700 18px/1 var(--font);box-shadow:0 2px #111;transition:border-color .15s,color .15s,transform .15s,background .15s}
.week-nav-button:not(:disabled):hover{border-color:#e14549;background:#2a2020;color:#ff6669;transform:translateY(-1px)}
.week-nav-button:not(:disabled):active{transform:translateY(1px);box-shadow:none}
.week-nav-button:disabled{cursor:default;opacity:.25}
.leaderboard.is-loading .leaderboard-week-range{animation:week-loading 1s steps(2,end) infinite}
.leaderboard-empty{display:flex;align-items:center;justify-content:space-between;gap:12px}
.leaderboard-retry{flex:0 0 auto;border:0;border-bottom:1px solid #777;background:transparent;color:var(--ink);padding:3px 0;font:400 8px/1.5 var(--font);letter-spacing:.5px}
.leaderboard-retry:hover{border-color:#ef5458;color:#ef5458}
.screen-reader-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@keyframes week-loading{0%,49%{opacity:1}50%,100%{opacity:.42}}
@media(max-width:720px){
  .leaderboard-week-nav{grid-template-columns:44px minmax(0,1fr) 44px;gap:9px;margin-bottom:14px;padding:10px 0}
  .week-nav-button{width:44px;height:44px;font-size:20px}
  .leaderboard-week-range{font-size:10px;white-space:normal}
  .leaderboard-week-status{font-size:8px}
  .leaderboard-retry{font-size:9px}
}

/* Permanent high scores sit below the weekly rules, across the full page. */
.all-time-board{display:grid;grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);gap:30px;margin:8px 0 38px;padding:30px 0 5px;border-top:1px solid var(--line);scroll-margin-top:28px}
.all-time-intro h2{margin:0;font:400 clamp(15px,1.65vw,20px)/1.75 var(--display);letter-spacing:0}
.all-time-intro p{max-width:245px;margin:14px 0 0;color:var(--muted);font:400 9px/1.8 var(--font);letter-spacing:.5px}
.all-time-results{min-width:0}
.all-time-columns{display:flex;justify-content:space-between;gap:12px;padding:0 0 12px;border-bottom:1px solid var(--line);color:var(--muted);font:400 8px/1.6 var(--font);letter-spacing:.4px}
.all-time-list{margin:0;padding:0;list-style:none}
.all-time-list li{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:54px;padding:11px 0;border-bottom:1px solid var(--line);font:400 12px/1.5 var(--font)}
.all-time-list .rank{width:32px;height:30px;color:var(--muted);font:400 9px/1 var(--font)}
.all-time-list li:first-child .rank{background:var(--accent);color:#fff}
.all-time-list .leader-name{min-width:0}
.all-time-list .leader-score{font:700 15px/1.4 var(--font);font-variant-numeric:tabular-nums}
.all-time-empty{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid var(--line);color:var(--muted);font:400 11px/1.6 var(--font)}
.all-time-note{margin:13px 0 0;color:var(--muted);font:400 9px/1.7 var(--font)}
@media(max-width:720px){
  .all-time-board{grid-template-columns:1fr;gap:21px;margin:4px 0 29px;padding:28px 0 0}
  .all-time-intro h2{font-size:clamp(14px,3.8vw,18px)}
  .all-time-intro p{max-width:none;margin-top:10px;font-size:9px}
  .all-time-list li{grid-template-columns:34px minmax(0,1fr) auto;gap:9px;min-height:54px;font-size:12px}
  .all-time-list .leader-score{font-size:14px}
  .all-time-note{font-size:10px}
}
