.game-ui{--run-control-width:112px;color:#12364b;pointer-events:none;font-family:system-ui,sans-serif;position:absolute;inset:0}.game-ui [hidden]{display:none!important}.game-ui h1,.game-ui h2,.game-ui p{margin:0;position:static}.game-ui h1{font-size:clamp(1.1rem,3vw,1.65rem)}.game-ui h2{margin-bottom:.5rem;font-size:1.1rem}.game-header{padding:max(.6rem, env(safe-area-inset-top)) max(.8rem, env(safe-area-inset-right)) .6rem max(.8rem, env(safe-area-inset-left));background:#f2faffed;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.game-header span{font-size:.9rem;font-weight:700}.game-hud{top:max(.75rem, env(safe-area-inset-top));left:max(.75rem, env(safe-area-inset-left));right:calc(max(.75rem, env(safe-area-inset-right)) + var(--run-control-width) + 12px);box-sizing:border-box;background:#f2faffed;border:1px solid #c1d9e5;border-radius:.85rem;gap:.45rem;max-width:460px;padding:.65rem .75rem;font-size:.8rem;display:grid;position:absolute;box-shadow:0 3px 14px #173f5618}.hud-level{white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.hud-readouts{grid-template-columns:1.2fr 1.2fr 1fr;gap:.3rem;font-weight:650;display:grid}.hud-readouts span{white-space:nowrap;min-width:0}.hud-progress-label{color:#36596b;justify-content:space-between;margin-bottom:.2rem;font-size:.68rem;display:flex}.hud-progress-label [data-finish-marker]:before{content:"⚑ "}.hud-progress progress{accent-color:#16718a;background:#d6e5ed;border:none;border-radius:1rem;width:100%;height:7px;display:block;overflow:hidden}.hud-progress progress::-webkit-progress-bar{background:#d6e5ed}.hud-progress progress::-webkit-progress-value{background:#16718a;border-radius:1rem}.hud-progress progress::-moz-progress-bar{background:#16718a;border-radius:1rem}.game-ui [data-pause]{top:calc(max(.75rem, env(safe-area-inset-top)) + 52px);right:max(.75rem, env(safe-area-inset-right));width:var(--run-control-width);height:44px;font-size:.8rem;position:fixed}.game-ui[data-phase=running] .game-header{top:max(.75rem, env(safe-area-inset-top));right:max(.75rem, env(safe-area-inset-right));background:0 0;padding:0;position:absolute}.game-ui[data-phase=running] .game-header h1,.game-ui[data-phase=running] [data-wallet]{display:none}.game-ui[data-phase=running] [data-mute]{width:var(--run-control-width);white-space:nowrap;height:44px;padding:.3rem}@media (width<=600px){.game-hud{gap:.35rem;padding:.5rem;font-size:.7rem}.hud-level{font-size:.75rem}.hud-readouts{grid-template-columns:1.15fr 1fr;row-gap:.25rem}.hud-readouts [data-speed]{grid-row:2}.hud-readouts [data-coins]{text-align:right;grid-area:1/2}}.game-ui button{pointer-events:auto;color:#fff;min-height:44px;font:inherit;cursor:pointer;background:#175777;border:2px solid #175777;border-radius:.6rem;padding:.5rem .75rem;font-weight:650}.game-ui button:focus-visible{outline-offset:-2px;outline:2px solid #fff}.game-ui button.secondary:focus-visible,.game-ui[data-shopping=true] button:focus-visible{outline-color:#214f70}.game-ui button:disabled{color:#495d68;cursor:default;background:#d6e1e7;border-color:#a5b8c3}.game-ui button.secondary{color:#175777;background:#fff}.menu-panel{pointer-events:auto;overscroll-behavior:contain;box-sizing:border-box;background:#f8fcffef;border:1px solid #b5cedc;border-radius:1rem;width:min(520px,100% - 24px);max-height:calc(100% - 100px);padding:1rem;position:absolute;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 8px 30px #173f562a}.menu-panel section+section{margin-top:1rem}.menu-panel p{margin:.5rem 0;line-height:1.35}.shop-grid{grid-template-columns:repeat(3,1fr);gap:.6rem;display:grid}.shop-grid button{font-size:.85rem}.shop-grid small{text-align:center}.charge-display{background:#f8fcffed;border-radius:.6rem;padding:1rem;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.charge-display label{align-items:center;gap:.5rem;display:flex}.storage-notice{bottom:max(.5rem, env(safe-area-inset-bottom));background:#fff0c8;border-radius:.5rem;padding:.5rem;font-size:.8rem;left:.75rem;right:.75rem;position:absolute!important}@media (width<=400px){.menu-panel{padding:.75rem}.shop-grid{gap:.35rem}.shop-grid button{padding:.4rem}}@media (height<=450px){.menu-panel{max-height:calc(100% - 70px);padding:.65rem;top:60px;transform:translate(-50%)}.menu-panel section+section{margin-top:.6rem}}.game-hud span{font-variant-numeric:tabular-nums}.steering-controls{inset-inline:max(.75rem, env(safe-area-inset-left)) max(.75rem, env(safe-area-inset-right));bottom:max(1rem, env(safe-area-inset-bottom));justify-content:space-between;gap:1rem;display:flex;position:absolute}.steering-controls button{touch-action:none;-webkit-user-select:none;user-select:none;min-width:96px;min-height:64px;font-size:1.1rem}.game-ui:has(.storage-notice:not([hidden])) .steering-controls{bottom:calc(max(1rem, env(safe-area-inset-bottom)) + 4rem)}@media (height<=450px){.steering-controls button{min-height:56px}}.header-settings{align-items:center;gap:.5rem;display:flex}.header-settings button{padding:.3rem .5rem;font-size:.8rem}@media (width<=480px){.game-header{flex-wrap:wrap}.header-settings{margin-left:auto}}.launch-controls{pointer-events:none;position:absolute;inset:0}.launch-controls [data-back]{top:76px;left:max(.75rem, env(safe-area-inset-left));position:absolute}.launch-options{bottom:max(1rem, env(safe-area-inset-bottom));right:max(.75rem, env(safe-area-inset-right));align-items:center;gap:.75rem;display:flex;position:absolute}.control-help{pointer-events:auto;font-size:.8rem}.control-help summary{cursor:pointer;box-sizing:border-box;background:#f8fcffed;border-radius:.6rem;min-height:44px;padding:.8rem}.control-help p{box-sizing:border-box;background:#f8fcff;border:1px solid #b5cedc;border-radius:.6rem;width:min(300px,100vw - 32px);padding:.75rem;line-height:1.4;bottom:calc(100% + .5rem);right:0;position:absolute!important}.charge-display{padding:.5rem .75rem;font-size:.85rem;top:17%;bottom:auto}.charge-display strong{font-variant-numeric:tabular-nums;text-align:right;min-width:4ch}.pull-cue{white-space:nowrap;background:#f8fcffdc;border-radius:2rem;padding:.35rem .6rem;font-size:.85rem;font-weight:650;top:49%;left:50%;transform:translate(-50%);position:absolute!important}@media (width<=480px){.launch-controls [data-back]{top:108px}.charge-display{top:24%}}@media (height<=450px){.launch-controls [data-back]{top:65px}.charge-display{top:20%}.pull-cue{top:48%}}.best-marker-label{box-sizing:border-box;color:#fff;text-align:center;pointer-events:none;background:#0b5966ed;border-radius:.4rem;max-width:180px;padding:.25rem .45rem;font:650 .7rem system-ui,sans-serif;position:absolute;transform:translate(-50%,-100%)}.best-marker-label[hidden]{display:none}.record-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.record-confetti i{top:0;left:calc(var(--piece) * 6% + 2%);opacity:0;width:6px;height:9px;animation:record-fall 1.5s ease-out calc(var(--piece) * 35ms) 1;background:#cc8a15;position:absolute}.record-confetti i:nth-child(2n){background:#087f83}.record-confetti i:nth-child(3n){background:#d45661}@keyframes record-fall{0%{opacity:.85;transform:translateY(-12px)rotate(0)}80%{opacity:.7}to{opacity:0;transform:translateY(150px)rotate(230deg)}}@media (prefers-reduced-motion:reduce){.record-confetti{display:none}.record-confetti i{animation:none}}.game-ui[data-shopping=true]{overscroll-behavior:contain;padding:0 max(.6rem, env(safe-area-inset-right)) max(.6rem, env(safe-area-inset-bottom)) max(.6rem, env(safe-area-inset-left));flex-direction:column;align-items:center;font-family:ui-rounded,SF Pro Rounded,Arial Rounded MT Bold,system-ui,sans-serif;display:flex;overflow-y:auto}.game-ui[data-shopping=true]:before{content:"";pointer-events:none;z-index:-1;background:linear-gradient(#addff66e,#0000 45%);position:fixed;inset:0}.game-ui[data-shopping=true] .game-header{padding:max(.75rem, env(safe-area-inset-top)) .3rem .5rem;background:0 0;flex:none;align-self:stretch}.game-ui[data-shopping=true] .game-header>h1{display:none}.game-ui[data-shopping=true] .header-settings{justify-content:space-between;gap:.5rem;width:100%;margin:0}.game-ui[data-shopping=true] [data-wallet]{overflow-wrap:anywhere;background:#f9fdffe8;border:2px solid #fff;border-radius:2rem;max-width:calc(100% - 56px);padding:.6rem .8rem;font-size:.8rem;font-weight:850;box-shadow:0 3px #619aac26}.game-ui[data-shopping=true] [data-wallet]:before{content:"★";color:#966012;background:#ffcc3c;border:2px solid #ffe69c;border-radius:50%;place-items:center;width:1.35rem;height:1.35rem;margin-right:.45rem;display:inline-grid}.game-ui [data-settings]{color:#245d73;background:#f5fcffee;border:2px solid #fff;border-radius:50%;flex-shrink:0;place-items:center;width:max(44px,2.5rem);height:max(44px,2.5rem);padding:0;font-size:1.35rem;display:grid;box-shadow:0 3px #619aac26}.arcade-brand{text-align:center;color:#22576e;flex:none;padding:.6rem 0 0}.arcade-brand .arcade-eyebrow{display:none}.game-ui .arcade-logo{letter-spacing:-.055em;text-transform:uppercase;color:#fffdf3;text-shadow:0 3px #28586f,0 5px #28586f;margin:.75rem 0 0;font-size:clamp(2.1rem,9vw,3.4rem);font-weight:1000;line-height:.95;transform:rotate(-4deg)}.arcade-logo span{display:block}.arcade-logo span:last-child{color:#ffdb65}.game-ui[data-shopping=true] .menu-panel{width:min(100%,430px);max-height:none;box-shadow:none;background:linear-gradient(#e9f8ff00,#e9f8ffb8);border:0;border-radius:1.2rem;flex:none;margin:auto 0 0;padding:.35rem .35rem .2rem;position:relative;top:auto;bottom:auto;left:auto;overflow:visible;transform:none}.game-ui[data-shopping=true] .menu-panel section+section{margin-top:0}.ready-level{color:#235a72;text-shadow:0 1px #fff;font-size:.8rem;font-weight:900}.shop-heading{justify-content:space-between;align-items:baseline;gap:.4rem;margin:.3rem 0 .6rem;display:flex}.game-ui .shop-heading h2{text-transform:uppercase;letter-spacing:.1em;color:#587b8a;margin:0;font-size:.62rem}.game-ui .shop-heading [data-best]{color:#587b8a;text-align:right;margin:0;font-size:.6rem}.shop-grid{gap:.55rem}.upgrade-card{background:#426d88;border:1px solid #386582;border-radius:.7rem;flex-direction:column;align-items:center;gap:.14rem;min-width:0;padding:.4rem .3rem .35rem;display:flex;box-shadow:0 2px #315872}.upgrade-art{background:linear-gradient(#e4f6ff,#f8fcff);border-radius:.4rem;flex-shrink:0;width:100%;height:68px;display:block}.upgrade-title{text-align:center;color:#fff;text-shadow:0 1px #244b65;order:-1;font-size:.72rem;font-weight:850;line-height:1.1}.upgrade-rank{color:#fff;font-size:.6rem;font-weight:750}.game-ui .upgrade-card button{color:#654912;background:linear-gradient(#ffe780,#ffc438);border:0;border-radius:.4rem;flex-wrap:wrap;justify-content:center;align-items:center;column-gap:.3rem;width:100%;min-height:44px;margin-top:.15rem;padding:.25rem .2rem;font-size:.64rem;font-weight:850;display:flex;box-shadow:0 2px #d7ae46}.upgrade-card button small{white-space:normal;font-size:.65rem}.game-ui .upgrade-card button:disabled{color:#405c6e;background:#c3d9e5;box-shadow:0 1px #375e76}.upgrade-details,.run-details{pointer-events:auto;color:#36576a;font-size:.72rem}.upgrade-details[open],.run-details[open]{background:#f4fbfff5;border-radius:1rem;padding:.4rem}.upgrade-details summary,.run-details summary{text-align:center;overflow-wrap:anywhere;cursor:pointer;align-content:center;min-height:44px;padding:.4rem 0;font-weight:750;line-height:1.4;list-style:none;display:block}.upgrade-details summary:after,.run-details summary:after{content:"⌄";margin-left:.4rem}.upgrade-details[open] summary:after,.run-details[open] summary:after{content:"⌃"}.upgrade-details summary::-webkit-details-marker{display:none}.run-details summary::-webkit-details-marker{display:none}.upgrade-details[open],.run-details[open]{padding-bottom:.5rem}.upgrade-details article,.upgrade-details>div{border-top:1px solid #d8e8ed;padding:.45rem .5rem;line-height:1.45}.upgrade-details [data-level],.upgrade-details [data-effect]{display:block}.rank-pips{gap:3px;margin:.3rem 0;display:flex}.rank-pips i{background:#d5e1e7;border-radius:3px;flex:1;height:4px}.rank-pips i.filled{background:#eab236}.game-ui[data-shopping=true] [data-play],.game-ui[data-shopping=true] [data-retry]{color:#583e0d;letter-spacing:.02em;background:linear-gradient(#ffda57,#ffca31);border:1px solid #b9891f;border-radius:.7rem;width:100%;min-height:52px;padding:.65rem;font-size:1.3rem;font-weight:950;transition:transform .12s,box-shadow .12s;box-shadow:0 2px #b9891f}.game-ui[data-shopping=true] [data-play]:after,.game-ui[data-shopping=true] [data-retry]:after{content:" ▶";margin-left:.4rem;font-size:.85rem}.game-ui[data-shopping=true] [data-play]:active,.game-ui[data-shopping=true] [data-retry]:active{transform:translateY(1px);box-shadow:0 1px #b9891f}.game-ui [data-home]{color:#416878;background:0 0;border:0;align-self:center;min-width:70px;font-size:.7rem}.arcade-result{text-align:center;flex:none;width:min(100%,440px);padding:.1rem .5rem .6rem;position:relative}.game-ui .arcade-result h2{text-transform:uppercase;letter-spacing:.12em;color:#486b7b;margin:.3rem 0;font-size:.65rem}.game-ui .result-outcome{color:#486b7b;font-size:.65rem}.game-ui .result-record{color:#765416;background:#fff0b8;border-radius:2rem;margin-top:.45rem;padding:.35rem .7rem;font-size:.68rem;font-weight:900;display:inline-block;transform:rotate(-3deg)}[data-result-distance]{letter-spacing:-.07em;color:#164c65;text-shadow:0 2px #fff9;font-size:clamp(2.7rem,15vw,5rem);font-weight:1000;line-height:1.25;display:block}[data-result-reward]{color:#7b5417;background:#fff5cc;border:2px solid #fff9;border-radius:2rem;padding:.45rem .9rem;font-size:1.05rem;font-weight:900;display:inline-block;margin-top:.3rem!important}[data-result-reward]:before{content:"★ ";color:#d8a020}.game-ui[data-shopping=true] .storage-notice{flex:none;width:min(100%,430px);margin:.6rem 0 0;font-size:.72rem;bottom:auto;left:auto;right:auto;position:relative!important}.settings-dialog{pointer-events:auto;color:#234e62;background:#f1faff;border:2px solid #fff;border-radius:1.7rem;width:min(92vw,400px);max-height:calc(100% - 32px);padding:1.2rem;overflow:auto;box-shadow:0 16px 60px #12344855}.settings-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#12344880}.settings-heading{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.settings-dialog h2{margin-bottom:1rem;font-size:1.4rem;font-weight:900}.settings-dialog button{margin:.3rem 0}.settings-dialog [data-settings-close]{float:right;color:#234e62;background:#dceef6;border:0;border-radius:50%;min-width:44px}.settings-dialog [data-menu-mute]{border-radius:1rem;width:100%;display:block}.settings-dialog [data-reset]{color:#7a5050;background:0 0;border:0;margin:1rem auto 0;font-size:.8rem;display:block}.settings-dialog [data-confirm] p{margin:1rem 0;line-height:1.5}@media (height<=700px) and (width<=639px){.arcade-brand{padding-top:.1rem}.game-ui .arcade-logo{margin-top:.5rem;font-size:2rem}.game-ui[data-shopping=true] .menu-panel{padding:.25rem}.upgrade-art{height:48px}.shop-heading{margin:.2rem 0 .4rem}.arcade-result{padding-top:0}[data-result-distance]{font-size:2.8rem;display:block}[data-result-reward]{font-size:.85rem}}@media (width>=640px){.game-ui[data-shopping=true]{align-items:flex-start}.game-ui[data-shopping=true] .menu-panel{right:max(1.2rem, env(safe-area-inset-right));bottom:max(1.2rem, env(safe-area-inset-bottom));background:#e9f8ffe8;width:min(430px,48%);max-height:calc(100% - 90px);margin:0;position:absolute;overflow:auto}.arcade-brand,.arcade-result{width:48%;margin-top:1rem}.game-ui .arcade-logo{font-size:clamp(2rem,5vw,4rem)}.game-ui[data-shopping=true] .storage-notice{width:45%;bottom:1rem;left:1rem;position:absolute!important}}@media (height<=450px) and (width>=640px){.arcade-brand,.arcade-result{margin-top:0}.arcade-brand .arcade-eyebrow{display:none}.game-ui .arcade-logo{margin:0;font-size:1.65rem}.game-ui[data-shopping=true] .menu-panel{max-height:calc(100% - 66px);padding:.5rem .65rem;bottom:.5rem;right:.6rem}.upgrade-art{height:26px}.upgrade-card{gap:.05rem;padding:.2rem}.shop-heading{margin:.2rem 0 .3rem}[data-result-distance]{font-size:2.8rem;display:block}[data-result-reward]{padding:.2rem .6rem;font-size:.85rem}}@media (prefers-reduced-motion:reduce){.game-ui button{transition:none!important}}.game-ui[data-shopping=true] .menu-panel{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem .25rem;display:grid}.game-ui[data-shopping=true] .menu-panel :is([data-shop],[data-results],.result-actions,.home-action){display:contents}[data-ready],.shop-heading,.shop-grid,[data-play],[data-retry]{grid-column:1/-1}[data-ready]{order:0}.shop-heading{order:1}.shop-grid{order:2}.game-ui[data-shopping=true] :is([data-play],[data-retry]){order:3;margin:.55rem 0 .3rem}.upgrade-details,.run-details,[data-home]{order:4}.game-ui[data-phase=ready] .upgrade-details{grid-column:1/-1}.upgrade-details[open],.run-details[open]{order:5;grid-column:1/-1}.upgrade-details summary,.run-details summary{font-size:.64rem}.game-ui[data-shopping=true] [data-home]{justify-self:center}.slide-cue{bottom:max(5rem, env(safe-area-inset-bottom));white-space:nowrap;pointer-events:none;background:#f8fcffdc;border-radius:2rem;padding:.45rem .8rem;font-size:.9rem;left:50%;transform:translate(-50%);position:absolute!important}.pickup-feedback{top:max(8.5rem, calc(env(safe-area-inset-top) + 7.5rem));color:#543b08;pointer-events:none;background:#ffd54a;border:2px solid #fff6cf;border-radius:2rem;padding:.45rem .85rem;font-size:1rem;font-weight:900;left:50%;transform:translate(-50%);box-shadow:0 3px #c58d22;position:absolute!important}.game-ui:has([data-pickup-feedback]:not([hidden])) [data-coins]{color:#80520a;background:#fff0b4;border-radius:.3rem}@media (height<=450px){.pickup-feedback{top:7rem}}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden}body{color:#12364b;font-family:system-ui,sans-serif}#app{position:relative}.game-scene{touch-action:none;position:absolute;inset:0}canvas{display:block}.dev-state{clip-path:inset(50%);pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}
