.game-loading-visual{--loading-accent:var(--accent-cyan);display:grid;justify-items:center;gap:14px;width:240px;max-width:100%;margin:0 auto;color:var(--loading-accent);isolation:isolate}.loading-diagram{position:relative;width:240px;height:140px;max-width:none;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 10% 90%,transparent);mask-image:linear-gradient(transparent,#000 10% 90%,transparent)}.loading-diagram>img,.loading-route{position:absolute;top:0;right:0;bottom:0;left:0;width:240px;height:140px;max-width:none;-o-object-fit:contain;object-fit:contain;pointer-events:none}.loading-diagram>img{opacity:.7}.loading-route{fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;filter:drop-shadow(0 0 5px color-mix(in srgb,currentColor 60%,transparent))}.loading-route-under{opacity:.1}.loading-route-progress{opacity:.7}.loading-route-point{position:absolute;left:0;top:0;width:5px;height:5px;border-radius:50%;background:currentColor;box-shadow:0 0 10px 2px currentColor;offset-path:var(--loading-route);offset-rotate:0deg;animation:loading-route-travel 2.8s linear infinite}.loading-scene-scan{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;background:linear-gradient(transparent,color-mix(in srgb,currentColor 12%,transparent),transparent);height:30px;animation:loading-scene-scan 3s ease-in-out infinite}.loading-segments{display:flex;gap:4px;width:100%;height:3px}.loading-segments i{flex:1;border-radius:1px;background:color-mix(in srgb,currentColor 15%,transparent)}.loading-segments [data-filled]{background:currentColor;box-shadow:0 0 6px color-mix(in srgb,currentColor 40%,transparent)}.game-loading-visual[data-motion=scan] .loading-scene-scan,.game-loading-visual[data-motion=signal] .loading-scene-scan{opacity:1}.game-loading-visual[data-motion=signal] .loading-route-point{animation-timing-function:steps(24,end);animation-duration:2s}.game-loading-visual[data-motion=gravity] .loading-route-point{animation-timing-function:steps(4,end);animation-duration:3s}.game-loading-visual[data-motion=swing] .loading-route-point{animation-direction:alternate;animation-timing-function:cubic-bezier(.4,0,.6,1);animation-duration:1.6s}.game-loading-visual[data-motion=flight] .loading-route-point{animation-timing-function:cubic-bezier(.45,0,.8,1);animation-duration:2.4s}.game-loading-visual[data-motion=rush] .loading-route-point{animation-duration:1.3s}.game-loading-visual[data-motion=connect] .loading-route-point{animation-timing-function:steps(6,end);animation-duration:3s}.game-loading-visual[data-paused=true] :is(.loading-route-point,.loading-scene-scan){animation-play-state:paused}@keyframes loading-route-travel{0%{offset-distance:0%}to{offset-distance:100%}}@keyframes loading-scene-scan{0%{transform:translateY(-30px)}to{transform:translateY(170px)}}@media(prefers-reduced-motion:reduce){.loading-route-point,.loading-scene-scan{animation:none}.loading-route-point{offset-distance:50%}}@media(max-height:520px){.game-loading-visual{gap:6px}.loading-diagram{height:88px}.loading-diagram>img,.loading-route{height:140px;transform:scale(.65);transform-origin:120px 0}.loading-route-point{display:none}}.platform-game-load[data-loader]{padding:clamp(16px,3vw,32px);color:var(--stage-ink);background:var(--stage-scrim)}.platform-game-load[data-loader] .platform-game-art{z-index:0}.platform-game-load[data-loader] .platform-game-art img{filter:blur(2px);transform:scale(1.035)}.platform-game-load[data-loader] .platform-game-load-copy{box-sizing:border-box;width:min(760px,100%);padding:clamp(18px,3vw,32px);display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;justify-items:stretch;gap:28px;max-height:100%;overflow-y:auto;border:1px solid color-mix(in srgb,var(--game-accent,var(--accent-cyan)) 32%,#ffffff1c);border-radius:20px;background:linear-gradient(140deg,#101827eb,#070b18eb);text-align:left;text-shadow:none;box-shadow:0 24px 80px #0004}.platform-game-load[data-loader] .platform-game-load-copy>*{margin:0;min-width:0}.platform-game-load[data-loader] .game-loading-information{width:auto;max-width:none;display:grid;gap:12px;min-width:0}.platform-game-load[data-loader] .game-loading-information .eyebrow{margin:0;font:600 10px/1.6 var(--font-mono,monospace);letter-spacing:.17em;color:var(--stage-ink-soft)}.platform-game-load[data-loader] .game-loading-information h1{margin:0;font:800 clamp(20px,3vw,32px)/1.12 Inter,sans-serif;letter-spacing:-.035em;color:var(--stage-ink);overflow-wrap:anywhere}.platform-game-load[data-loader] .game-loading-measure{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font:500 12px/1.4 Inter,sans-serif;color:var(--stage-ink-soft)}.platform-game-load[data-loader] .game-loading-measure .platform-game-load-count{margin:0;font:600 15px/1.2 var(--font-mono,monospace)!important;letter-spacing:0;color:var(--stage-ink)}.platform-game-load[data-loader] progress{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:0;width:100%;max-width:none;height:3px;margin:0;border-radius:4px;overflow:hidden;background:#ffffff20;accent-color:var(--game-accent,var(--accent-cyan));box-shadow:none}.platform-game-load[data-loader] progress::-webkit-progress-bar{background:#ffffff20}.platform-game-load[data-loader] progress::-webkit-progress-value{background:var(--game-accent,var(--accent-cyan));-webkit-transition:none;transition:none;box-shadow:none}.platform-game-load[data-loader] progress::-moz-progress-bar{background:var(--game-accent,var(--accent-cyan));-moz-transition:none;transition:none}.platform-game-load[data-loader] .platform-game-load-tip{min-height:4.95em;margin:0;font:400 12px/1.65 Inter,sans-serif;color:var(--stage-ink-soft);max-width:none;letter-spacing:0}.platform-game-load[data-loader] .platform-game-load-copy>:not(.game-loading-visual):not(.game-loading-information){grid-column:1/-1;max-width:100%;margin-top:0;font-size:11px}.platform-game-load[data-loader] .game-wordmark{--wordmark-width:100%;--wordmark-height:clamp(28px,7vh,60px)}@media(max-width:600px){.platform-game-load[data-loader] .platform-game-load-copy{grid-template-columns:1fr;gap:18px;width:min(400px,100%)}.platform-game-load[data-loader] .game-loading-information{text-align:center}.platform-game-load[data-loader] .game-loading-information h1{font-size:23px}.platform-game-load[data-loader] .platform-game-load-tip{min-height:6.6em}.platform-game-load[data-loader] .platform-game-load-copy>:not(.game-loading-visual):not(.game-loading-information){display:none}}@media(max-height:520px){.platform-game-load[data-loader] .platform-game-load-copy{grid-template-columns:160px minmax(0,1fr);gap:18px;padding:14px 20px;max-height:100%;overflow:auto}.platform-game-load[data-loader] .game-loading-visual{width:160px}.platform-game-load[data-loader] .loading-diagram{width:160px;height:95px}.platform-game-load[data-loader] .loading-diagram>img,.platform-game-load[data-loader] .loading-route{transform:scale(.66);transform-origin:0 0}.platform-game-load[data-loader] .game-loading-information{gap:7px;text-align:left}.platform-game-load[data-loader] .game-loading-information h1{font-size:22px}.platform-game-load[data-loader] .platform-game-load-tip{font-size:11px;line-height:1.4}.platform-game-load[data-loader] .platform-game-load-copy>:not(.game-loading-visual):not(.game-loading-information){display:none}}.level-card{position:relative;isolation:isolate;overflow:hidden;overflow:clip;aspect-ratio:var(--level-card-ratio, 16 / 9);align-self:stretch;justify-self:stretch;text-shadow:0 1px 2px rgb(0 0 0 / .85),0 0 12px rgb(0 0 0 / .5)}.level-card-art{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;border-radius:inherit;background:#0b0c0e;pointer-events:none}.level-card-art img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 45%;object-position:50% 45%;transition:transform .35s ease,filter .2s ease}.level-card-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(0deg,#08080aeb,#08080abd 42%,#08080a33 74%,#08080a05)}.level-card[data-scrim=left] .level-card-art:before{background:linear-gradient(90deg,#08080aeb,#08080ab8 38%,#08080a26 78%,#08080a0d)}.level-card[data-scrim=full] .level-card-art:before{background:linear-gradient(0deg,#08080af0,#08080ac7 45%,#08080a80)}.level-card-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;box-shadow:inset 0 0 0 2px var(--game-accent, currentColor);opacity:0;transition:opacity .15s ease}.level-card:is([aria-selected=true],[aria-pressed=true],[aria-checked=true],[data-selected=true]) .level-card-art:after{opacity:1}.level-card:is([aria-selected=false],[aria-pressed=false],[aria-checked=false]) .level-card-art img{filter:brightness(.78) saturate(.9)}.level-card:hover:not(:disabled) .level-card-art img{transform:scale(1.05);filter:none}.level-card:is(:disabled,[data-locked=true]) .level-card-art img{filter:grayscale(1) brightness(.5);transform:none}@media(prefers-reduced-motion:reduce){.level-card-art img,.level-card-art:after{transition:none}.level-card:hover:not(:disabled) .level-card-art img{transform:none}}.platform-call{--call: var(--game-accent, #ffd66b);--ink: var(--call-ink, #fff);position:relative;display:grid;justify-items:center;margin:0;pointer-events:none;z-index:var(--z-hud, 5);font-size:clamp(1rem,2.6vw,1.65rem);font-family:var(--call-font, inherit);--call-lean: 1;--call-tilt: 0deg;--call-lean-skew: calc(var(--call-skew, -12deg) * var(--call-lean));rotate:var(--call-tilt);line-height:1;animation:call-out 1.7s cubic-bezier(.5,0,.9,.2) both}.platform-trick-call{position:absolute;top:32%;left:50%;translate:-50% 0}.platform-call-flash{position:absolute;left:50%;top:50%;width:9em;height:9em;margin:-4.5em;border-radius:50%;background:radial-gradient(circle,#fff 0%,color-mix(in srgb,var(--call) 90%,#fff) 18%,transparent 62%);mix-blend-mode:screen;display:var(--call-flash, block);animation:call-flash .32s ease-out both}.platform-call-flash:after{content:"";position:absolute;top:32%;right:32%;bottom:32%;left:32%;border:.32em solid var(--call);border-radius:50%;filter:blur(1px);animation:call-ring .55s cubic-bezier(.1,.7,.3,1) both}.platform-call-plate{position:relative;overflow:hidden;display:grid;justify-items:center;gap:.12em;padding:.38em 1.3em .42em 1.5em;border-left:var(--call-edge, .28em solid var(--call));border-radius:var(--call-radius, .18em .55em .18em .55em);background:var(--call-plate, linear-gradient(105deg, #0d0b16f0 0%, #0d0b16d8 70%, #1a1428c0 100%));box-shadow:var(--call-frame, 0 .35em 1.4em #0009, inset 0 0 0 1px #ffffff14, 0 0 1.2em color-mix(in srgb, var(--call) 55%, transparent));transform:skew(var(--call-lean-skew));animation:call-plate 1.7s cubic-bezier(.18,1.35,.3,1) both}.platform-call-plate>*{transform:skew(calc(-1 * var(--call-lean-skew)))}.platform-call-plate:after{content:"";position:absolute;top:-50%;bottom:-50%;left:-40%;width:34%;background:var(--call-sweep, linear-gradient(100deg, transparent 0%, #ffffff55 45%, #ffffffb0 50%, #ffffff55 55%, transparent 100%));transform:skew(calc(-1 * var(--call-lean-skew))) translate(0);animation:call-sweep .7s cubic-bezier(.3,0,.2,1) .18s both}.platform-call-title{font-weight:var(--call-weight, 900);font-style:var(--call-style, italic);letter-spacing:var(--call-tracking, .06em);text-transform:var(--call-case, uppercase);white-space:nowrap;color:var(--ink);text-shadow:var(--call-shadow, 0 2px 0 #000, 0 0 14px color-mix(in srgb, var(--call) 60%, transparent))}.platform-call-points{font-weight:var(--call-weight, 900);font-style:var(--call-style, italic);font-size:1.15em;letter-spacing:.02em;color:var(--call);font-variant-numeric:tabular-nums;text-shadow:0 2px 0 #000,0 0 18px var(--call);animation:call-points .5s cubic-bezier(.2,1.6,.4,1) .16s both}.platform-call-row{display:flex;align-items:baseline;gap:.45em}.platform-call-sub{font-size:.5em;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--ink) 82%,transparent)}.platform-call-note{font-size:.42em;font-weight:800;letter-spacing:.24em;text-transform:uppercase;color:var(--call)}.platform-call[data-bad=true]{--call: var(--call-bad, #ff4b3a)}.platform-call[data-bad=true] .platform-call-plate{animation-name:call-plate-bad}.platform-call[data-bad=true] .platform-call-plate:after{display:none}.platform-call[data-bad=true] .platform-call-title{letter-spacing:calc(var(--call-tracking, .06em) + .12em);color:color-mix(in srgb,var(--call) 22%,var(--ink))}.platform-call[data-weight=minor]{font-size:clamp(.82rem,1.9vw,1.2rem)}.platform-call[data-weight=minor] .platform-call-flash{display:none}.platform-call[data-weight=epic]{font-size:clamp(1.2rem,3.2vw,2.05rem)}.platform-call[data-weight=epic] .platform-call-flash{width:12em;height:12em;margin:-6em}.platform-call[data-kind=combo] .platform-call-plate{box-shadow:var(--call-frame, 0 .35em 1.4em #0009, inset 0 0 0 1px #ffffff14, 0 0 1.2em color-mix(in srgb, var(--call) 55%, transparent)),.3em .28em 0 -.03em color-mix(in srgb,var(--call) 60%,#000),.58em .54em 0 -.07em color-mix(in srgb,var(--call) 30%,#000)}.platform-call[data-kind=combo] .platform-call-note{margin-top:.22em;padding:.3em .7em .26em;border-radius:var(--call-radius, .18em);background:var(--call);color:#0b0a10;font-size:.48em;letter-spacing:.2em;text-shadow:none}.platform-call[data-kind=landing]{--call-lean: 0}.platform-call[data-kind=landing] .platform-call-plate{border-left:0;padding-inline:1.9em;clip-path:polygon(0 0,100% 0,calc(100% - .7em) 50%,100% 100%,0 100%,.7em 50%);animation-name:call-ribbon}.platform-call[data-kind=landing] .platform-call-title{letter-spacing:calc(var(--call-tracking, .06em) + .14em)}.platform-call[data-kind=feat]{--call-lean: 1.45}.platform-call[data-kind=feat] .platform-call-plate{animation-name:call-dash}.platform-call[data-kind=feat]:before{content:"";position:absolute;right:calc(100% - .5em);top:24%;bottom:24%;width:2.8em;background:repeating-linear-gradient(180deg,var(--call) 0 .1em,transparent .1em .34em);-webkit-mask-image:linear-gradient(90deg,transparent,#000);mask-image:linear-gradient(90deg,transparent,#000);opacity:.8;animation:call-streak .5s ease-out both}.platform-call[data-kind=crash]{--call-lean: 0;--call-tilt: -2.5deg}.platform-call[data-kind=crash] .platform-call-plate{border-left:0;padding-inline:1.3em 1.5em;clip-path:polygon(0 5%,17% 0,43% 7%,70% 0,100% 6%,97% 31%,100% 53%,96% 77%,100% 100%,65% 94%,38% 100%,12% 95%,0 100%,3% 64%,0 37%)}.platform-call[data-kind=crash] .platform-call-points{display:none}@keyframes call-ribbon{0%{opacity:0;transform:scaleX(.08)}18%{opacity:1;transform:scaleX(1.05)}28%,to{transform:scaleX(1)}}@keyframes call-dash{0%{opacity:0;transform:skew(var(--call-lean-skew)) translate(-2.4em);filter:blur(6px)}18%{opacity:1;transform:skew(var(--call-lean-skew)) translate(.18em);filter:blur(0)}30%,to{transform:skew(var(--call-lean-skew)) translate(0)}}@keyframes call-streak{0%{opacity:0;transform:translate(1.6em) scaleX(.2)}40%{opacity:.9}to{opacity:.75;transform:none}}@keyframes call-flash{0%{opacity:0;transform:scale(.2)}25%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}@keyframes call-ring{0%{opacity:1;transform:scale(.3);border-width:.4em}to{opacity:0;transform:scale(2.8);border-width:.04em}}@keyframes call-plate{0%{opacity:0;transform:skew(var(--call-lean-skew)) scale(2.2) rotate(-4deg);filter:blur(8px)}16%{opacity:1;transform:skew(var(--call-lean-skew)) scale(.96) rotate(0);filter:blur(0)}26%{transform:skew(var(--call-lean-skew)) scale(1.05)}38%{transform:skew(var(--call-lean-skew)) scale(1)}to{transform:skew(var(--call-lean-skew)) scale(1)}}@keyframes call-plate-bad{0%{opacity:0;transform:skew(var(--call-lean-skew)) scale(1.6);filter:blur(5px)}12%{opacity:1;transform:skew(var(--call-lean-skew)) scale(1) translate(-9px);filter:blur(0)}18%{transform:skew(var(--call-lean-skew)) translate(9px)}24%{transform:skew(var(--call-lean-skew)) translate(-6px)}30%{transform:skew(var(--call-lean-skew)) translate(4px)}36%{transform:skew(var(--call-lean-skew)) translate(0)}to{transform:skew(var(--call-lean-skew)) translate(0)}}@keyframes call-sweep{0%{transform:skew(calc(-1 * var(--call-lean-skew))) translate(0)}to{transform:skew(calc(-1 * var(--call-lean-skew))) translate(420%)}}@keyframes call-points{0%{opacity:0;transform:scale(2.4)}60%{opacity:1;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes call-out{0%,74%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-1.6em,-.6em)}}@media(prefers-reduced-motion:reduce){.platform-call,.platform-call-plate,.platform-call-points,.platform-call[data-kind] .platform-call-plate{animation:call-still 1.7s ease-out both}.platform-call-flash,.platform-call-plate:after,.platform-call:before{display:none}@keyframes call-still{0%{opacity:0}8%{opacity:1}78%{opacity:1}to{opacity:0}}}
