@font-face{font-family:Outfit;src:url(/assets/outfit.ttf)format("truetype");font-weight:100 900;font-display:swap}:root{color:#fff4dd;font-synthesis:none;--teal:#29e1d5;--cream:#fff4dd;--gold:#ffcf7a;--ink:#082c38;background:#05141e;font-family:Outfit,sans-serif}*{box-sizing:border-box}body{overscroll-behavior:none;margin:0;overflow:hidden}button{font:inherit;cursor:pointer;color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline-offset:5px;outline:3px solid #fff1ad}button:disabled{cursor:wait;filter:saturate(.4)}[hidden]{display:none!important}#app{width:100%;height:100dvh;overflow:hidden}.screen{position:absolute;inset:0}.ambient{filter:blur(4px);background:linear-gradient(90deg,#04141de8,#071c2e80,#04141de8),url(/assets/village.webp) 50%/cover;position:absolute;inset:0;transform:scale(1.03)}.menu{isolation:isolate;background-image:url(/assets/start.webp);background-position:50%;background-size:cover}.menu:before{content:"";z-index:-1;background:linear-gradient(90deg,#03152590 0%,#03152530 36%,#0000 65%);position:absolute;inset:0}.menu-content{flex-direction:column;align-items:flex-start;width:min(38vw,540px);max-height:94dvh;display:flex;position:absolute;top:50%;left:clamp(28px,5.5vw,100px);transform:translateY(-50%)}.brand{white-space:nowrap;letter-spacing:-.045em;align-items:center;gap:9px;font-size:clamp(20px,2.15vw,34px);font-weight:400;display:flex}.brand img{object-fit:contain;width:1.8em;height:1.65em}.eyebrow{letter-spacing:.18em;color:#9bc7d1;font-size:10px;font-weight:700}.menu .eyebrow{color:#9bd0d7;letter-spacing:.19em;margin-top:27px;font-size:9px}.game-title{letter-spacing:-.065em;filter:drop-shadow(0 7px #020e1a);text-shadow:1px 2px #1fd4c9,3px 5px #174352,5px 8px #040e1c;font-style:italic;font-weight:950;line-height:.78;transform:rotate(-3deg)}.game-title span{display:block}.game-title span:first-child{color:#fff2d7}.game-title span:last-child{color:#29e1d5}.menu .game-title{margin:28px 0 27px;font-size:clamp(80px,9.7vw,165px);position:relative}.menu .game-title:after{content:"";background:linear-gradient(90deg,#0000,#d9feff 20%,#21dddb 80%,#0000);height:5px;display:block;position:absolute;bottom:-15px;left:10px;right:0;transform:skew(-35deg);box-shadow:0 4px 20px #2ed5e966}.tagline{letter-spacing:-.025em;text-shadow:0 2px 8px #061523;margin:14px 0 25px;font-size:clamp(18px,1.7vw,27px);font-weight:700;line-height:1.3}.tagline span{color:#d6e6e9;font-size:.8em;font-weight:450}.menu-actions{flex-direction:column;gap:14px;width:min(100%,365px);display:flex}.arcade{letter-spacing:.025em;background:linear-gradient(#0c4b59,#062733);border:2px solid #a58e6d;border-radius:19px;justify-content:center;align-items:center;gap:24px;font-weight:800;text-decoration:none;transition:transform .12s,filter .12s;display:flex;position:relative;box-shadow:inset 0 2px 1px #ffffff50,0 5px #020f1a,0 7px #796b57,0 14px 25px #010b1690}.arcade:after{content:"";pointer-events:none;border:1px solid #52deef88;border-radius:13px;position:absolute;inset:4px}.arcade:hover{filter:brightness(1.16);transform:translateY(-2px)}.arcade:active{transform:translateY(4px);box-shadow:inset 0 2px 1px #ffffff50,0 1px #020f1a}.arcade svg{fill:#fff4dd;filter:drop-shadow(0 2px 2px #093139);width:28px;height:28px}.primary{text-shadow:0 3px #053b4b;background:radial-gradient(at 50% 0,#47f3eb80,#0000 60%),linear-gradient(#078997,#05717b 48%,#063b4b 95%);min-height:69px;padding:17px 27px;font-size:clamp(23px,2.2vw,34px)}.primary:after{border:2px solid #75ffff;box-shadow:inset 0 0 9px #1dddec,0 0 12px #1dddec55}.secondary{border-radius:14px;min-height:47px;padding:12px 22px;font-size:14px}.secondary:after{border-radius:9px}.secondary span{border:1px solid #7da5a9;border-radius:50%;width:19px;height:19px;font-size:12px;line-height:17px}.loading{color:#a9c7ce;margin:21px 0 0;font-size:11px}.menu-meta{letter-spacing:.12em;color:#9db9c3;align-items:center;gap:12px;margin-top:20px;font-size:10px;display:flex}.menu-meta b{color:#fff1d4;margin-left:4px;font-size:13px}.menu-meta i{background:#9db9c366;width:1px;height:13px}.menu-top{align-items:center;gap:15px;display:flex;position:absolute;top:24px;right:26px}.version{color:#c9e0e1;letter-spacing:.16em;text-shadow:0 2px 5px #000;font-size:9px}.icon-button{background:linear-gradient(#174b57,#061e2c);border:1px solid #bc9b65;border-radius:13px;place-items:center;width:42px;height:42px;font-size:21px;font-weight:800;display:grid;box-shadow:inset 0 1px #f5e3bd77,0 3px #020c16,0 5px 12px #0007}.icon-button.muted{opacity:.55}.scene-caption{text-align:right;text-shadow:0 3px 10px #021426;position:absolute;bottom:32px;right:40px}.scene-caption span{letter-spacing:.2em;color:#a8d9df;font-size:9px;display:block}.scene-caption b{font-size:26px;font-weight:600}.menu-snow{pointer-events:none;background-image:radial-gradient(2px 2px at 10% 20%,#fff9 40%,#0000),radial-gradient(2px 2px at 60% 70%,#fff9 40%,#0000),radial-gradient(1px 1px at 80% 10%,#fff9 40%,#0000);background-size:280px 280px,380px 380px,180px 180px;animation:24s linear infinite snowfall;position:absolute;inset:0}@keyframes snowfall{to{background-position:120px 560px,-100px 760px,40px 360px}}.game{background:linear-gradient(90deg,#031723cc,#0000,#031723cc);justify-content:center;align-items:center;display:flex}#arena{background:#081d34;flex-shrink:0;width:min(60dvh,560px);height:100dvh;position:relative;overflow:hidden;box-shadow:0 0 0 1px #90c4d42a,0 0 0 7px #04141b66,0 0 90px #000c}canvas{touch-action:none;width:100%;height:100%;display:block}.side{flex-direction:column;justify-content:center;align-self:stretch;width:clamp(180px,23vw,340px);padding:34px;display:flex;position:relative}.side .brand{font-size:22px}.side .game-title{margin:32px 0;font-size:clamp(54px,6vw,91px)}.side-rule{background:linear-gradient(90deg,#98bbbd55,#0000);height:1px;margin:10px 0 24px}.side p{color:#bed5de;font-size:16px;line-height:1.6}.side small{color:#94b0be;font-size:11px;line-height:1.7}.key-guide{color:#aac7ce;letter-spacing:.1em;margin:25px 0 15px;font-size:10px;line-height:3.5}.key-guide kbd{text-align:center;color:#a4fff6;background:linear-gradient(#174956,#061e2c);border:1px solid #6b9a9e;border-radius:6px;min-width:30px;margin-right:6px;font:700 17px/29px Outfit;display:inline-block;box-shadow:0 3px #021521}.key-guide span{margin-left:4px}.key-guide .space-key{color:#ffe6ce;background:linear-gradient(#953741,#521c30);width:69px;font-size:11px}.side-bottom{letter-spacing:.14em;color:#6f929f;font-size:8px;position:absolute;bottom:25px}.reward-panel{border-top:1px solid #7c9b9a55;border-bottom:1px solid #7c9b9a55;padding:23px 0}.reward-panel>b{letter-spacing:-.035em;margin-top:14px;font-size:23px;display:block}.reward-panel p{margin:10px 0 3px;font-size:12px}.reward-panel small{font-size:9px}.reward-meter{background:#010f1c;border:1px solid #b69c65;border-radius:10px;height:11px;margin-top:15px;padding:2px}.reward-meter i{background:linear-gradient(#fff1aa,#ffbc53);border-radius:10px;width:0;height:100%;transition:width .2s;display:block;box-shadow:0 0 10px #ffd37155}.power-guide{margin-top:35px}.power-guide>div{align-items:center;gap:12px;margin:20px 0;display:flex}.power-guide i{border:1px solid var(--power);color:var(--power);background:#052631;border-radius:10px;flex-shrink:0;place-items:center;width:37px;height:37px;font-size:21px;font-style:normal;display:grid;box-shadow:inset 0 0 12px #ffffff08}.power-guide span{letter-spacing:.04em;font-size:10px;font-weight:700}.power-guide small{letter-spacing:0;margin-top:4px;font-size:10px;font-weight:400;line-height:1.4;display:block}.best-panel{margin-top:25px}.best-panel span{letter-spacing:.14em;color:#83aeb8;font-size:9px;display:block}.best-panel strong{color:#ffe1a1;font-size:30px}.hud{padding:calc(16px + env(safe-area-inset-top)) 18px 32px;pointer-events:none;background:linear-gradient(#021325e8,#021325b8 65%,#0000);justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:0;left:0;right:0}.hud button{pointer-events:auto}.hud-label{letter-spacing:.13em;color:#c1d8df;font-size:9px;font-weight:700}.score-block>b{letter-spacing:-.045em;text-shadow:0 3px #0009;font-variant-numeric:tabular-nums;font-size:39px;line-height:1.08;display:block}.hearts{white-space:nowrap;letter-spacing:0;color:#ff6b78;letter-spacing:0;text-shadow:0 2px #7e203d,0 0 13px #ff6a7922;gap:2px;font-size:23px;line-height:1.3;display:flex}.hearts .empty{color:#233a50;text-shadow:none;-webkit-text-stroke:1px #89a3b9}.hud-centre{text-align:center;padding-top:4px}.hud-centre>span{letter-spacing:.09em;color:#b3cfd9;font-size:8px;display:block}.hud-centre>b{font-size:19px;line-height:1.7}.hud-buttons{gap:8px;display:flex}.hud-buttons .icon-button{border-radius:10px;width:34px;height:34px;font-size:18px}#combo{color:#ffd578;font-size:13px;font-weight:850;transition:transform .15s}.hot{transform:scale(1.1)}.power-tray{top:calc(122px + env(safe-area-inset-top));pointer-events:none;flex-direction:column;gap:7px;display:flex;position:absolute;left:14px}.start-hint{text-align:center;pointer-events:none;text-shadow:0 3px 12px #001727;position:absolute;top:39%;left:0;right:0}.start-hint b{color:#fff2c9;font-size:34px;font-style:italic;font-weight:900}.start-hint span{color:#d6f8fc;background:#06213cbd;border-radius:20px;width:max-content;max-width:90%;margin:7px auto;padding:7px 13px;font-size:12px;display:block}.danger{letter-spacing:.1em;white-space:nowrap;color:#ffdb92;background:#512932d9;border:1px solid #e4a658;border-radius:20px;padding:7px 15px;font-size:10px;font-weight:800;animation:1s infinite danger;position:absolute;bottom:134px;left:50%;transform:translate(-50%)}@keyframes danger{50%{filter:brightness(1.5)}}.bottom-status{color:#c6e4e9;letter-spacing:.07em;text-shadow:0 2px 4px #011326;justify-content:space-between;font-size:9px;font-weight:600;display:flex;position:absolute;bottom:112px;left:18px;right:18px}.control-deck{padding:12px 16px calc(12px + env(safe-area-inset-bottom));touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(at 50% 0,#175263,#071c29 75%);border-top:3px solid #ac8d62;border-radius:18px 18px 0 0;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -3px #05202a,inset 0 3px #e2d9bd65,0 -7px 30px #020d2c66}.control{touch-action:none;background:radial-gradient(circle at 35% 20%,#53cddc,#126377 40%,#073249 80%);border:2px solid #c1a371;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;display:flex;position:relative;box-shadow:0 0 0 4px #04131c,0 0 0 5px #647f81,0 5px 0 4px #020f19,inset 0 3px 5px #f4ffff99,inset 0 -6px 10px #021b37,0 0 22px #00bfc52b}.control:after{content:"";border:2px solid #63f8fa;border-radius:50%;position:absolute;inset:3px;box-shadow:0 0 7px #32e4f3,inset 0 0 5px #2ccee3}.control svg{fill:#fff2d4;filter:drop-shadow(0 3px 2px #03142f);width:33px;height:33px}.control.jump{background:radial-gradient(circle at 36% 18%,#ffb3a2,#e94147 30%,#aa1935 65%,#58152b);border-color:#ffcb70;flex-direction:column;gap:0;width:80px;height:80px;box-shadow:0 0 0 4px #2f211e,0 0 0 5px #b68a52,0 5px 0 4px #04131c,inset 0 3px 5px #ffedcb99,inset 0 -6px 10px #64122d,0 0 24px #ffae3d33}.jump:after{border-color:#ffd76f;box-shadow:0 0 9px #ffaf4b,inset 0 0 5px #fcb166}.jump svg{height:28px}.jump span{text-shadow:0 2px #73172b;font-size:13px;font-weight:900;line-height:1.2}.control.pressed{filter:brightness(1.25);transform:translateY(4px)scale(.97)}.countdown{text-shadow:0 7px #05212f;color:#ffedbd;background:#041b3366;place-items:center;font-size:110px;font-style:italic;font-weight:950;display:grid;position:absolute;inset:0}.modal-layer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;background:#02111fc9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-layer>section{text-align:center;background:radial-gradient(at top,#164451,#071d2e 65%);border:1px solid #d7b87c;border-radius:25px;outline:none;width:100%;max-width:460px;max-height:94dvh;padding:34px;overflow:auto;box-shadow:0 0 0 5px #051825,0 0 0 6px #609caa4d,0 25px 100px #0008}.modal-layer h2{letter-spacing:-.055em;margin:14px 0 10px;font-size:38px;font-style:italic;line-height:1.1}.modal-layer p{color:#b7d3db;font-size:14px;line-height:1.55}.modal-layer .arcade{width:100%;min-height:60px;margin-top:20px;font-size:23px}.modal-layer .secondary{min-height:45px;font-size:13px}.text-button{color:#a8c5cd;text-underline-offset:4px;background:0 0;border:0;margin-top:23px;padding:8px;font-size:12px;text-decoration:underline}.modal-mark{color:#77f4e5;margin-bottom:18px;font-size:32px}.final-score{letter-spacing:-.05em;color:#ffde97;text-shadow:0 4px #372d25;margin:25px 0;font-size:65px;font-weight:900;line-height:1.2}.final-score small{letter-spacing:.2em;color:#a2bdc9;text-shadow:none;font-size:10px;font-weight:600;display:block}.run-stats{border-top:1px solid #acc6c433;border-bottom:1px solid #acc6c433;justify-content:space-around;padding:18px 0;display:flex}.run-stats b{font-size:23px}.run-stats span{color:#9fb9c8;letter-spacing:.14em;margin-top:3px;font-size:8px;display:block}.earned{padding:20px 0 0}.earned>span{color:#80f5db;letter-spacing:.13em;font-size:13px;font-weight:700}.earned p{margin:6px 0;font-size:12px}.earned small{color:#91aab7;font-size:10px}.instructions{margin:24px 0}.instructions>div{text-align:left;gap:15px;margin:20px 0;display:flex}.instructions b{color:#46dfd0;font-size:23px;line-height:1.5}.instructions p{margin:0;font-size:12px}.instructions strong{color:#fff3d5;margin-bottom:4px;font-size:15px;display:block}@media (width>=1500px){.side{width:350px;padding:50px}.side .game-title{font-size:100px}}@media (width<=1050px){.side{width:23vw;padding:22px}.side .brand{font-size:17px}.side .game-title{font-size:62px}.power-guide small{font-size:9px}.side p{font-size:13px}.reward-panel>b{font-size:19px}}@media (width<=780px){.side{display:none}#arena{width:min(100vw,60dvh);height:100dvh}.menu-content{width:48vw;left:25px}.menu .game-title{font-size:clamp(76px,12vw,115px)}.scene-caption{display:none}.menu .eyebrow{font-size:7px}.menu-meta{font-size:8px}.menu-top{top:16px;right:16px}.version{font-size:7px}.menu-actions{width:100%}.primary{min-height:60px;font-size:25px}.tagline{font-size:20px}}@media (width<=600px) and (orientation:portrait){.menu{background-position:66%;background-size:auto 100%}.menu:before{background:linear-gradient(#03162900 35%,#0316298a 62%,#031629ee 81%,#021322 98%)}.menu-content{top:auto;bottom:calc(24px + env(safe-area-inset-bottom));width:auto;max-height:90dvh;left:25px;right:25px;transform:none}.menu-content>.brand{filter:drop-shadow(0 3px 5px #02101f);font-size:22px;position:fixed;top:calc(100% - 100dvh + 50px);left:0}.menu .eyebrow{display:none}.menu .game-title{width:max-content;margin:0 0 20px;font-size:clamp(79px,24vw,126px);line-height:.78;transform:rotate(-4deg)}.menu .game-title span{display:inline}.menu .game-title span:last-child{margin-left:9px}.menu .game-title{letter-spacing:-.065em;font-size:clamp(50px,12.6vw,77px)}.menu .game-title:after{bottom:-11px}.tagline{margin:10px 0 19px;font-size:22px}.tagline span{font-size:15px}.menu-actions{gap:13px;max-width:420px}.primary{min-height:64px;font-size:29px}.secondary{min-height:43px;font-size:12px}.loading{margin-top:17px;font-size:10px}.menu-meta{margin-top:13px;font-size:8px}.menu-top .version{display:none}.menu-top{top:calc(18px + env(safe-area-inset-top));right:18px}.menu-top .icon-button{width:37px;height:37px}#arena{width:100vw;height:100dvh;box-shadow:none}.hud{padding-left:16px;padding-right:16px}.hud-centre{padding-top:6px}.hud-centre>span{font-size:7px}.score-block>b{font-size:35px}.control-deck{padding:12px 19px calc(12px + env(safe-area-inset-bottom))}.bottom-status{bottom:calc(111px + env(safe-area-inset-bottom))}.danger{bottom:calc(133px + env(safe-area-inset-bottom))}.control{width:64px;height:64px}.control.jump{width:76px;height:76px}.modal-layer>section{padding:27px 23px}.modal-layer h2{font-size:33px}}@media (height<=690px) and (orientation:portrait){.menu-content{bottom:16px}.menu-content>.brand{font-size:18px;top:calc(100% - 100dvh + 40px)}.menu .game-title{margin-bottom:15px;font-size:12vw}.tagline{margin:7px 0 13px;font-size:19px}.menu-actions{gap:10px}.primary{min-height:54px;font-size:25px}.secondary{min-height:37px}.loading{display:none}.menu-meta{margin-top:19px}.control-deck{padding-top:9px;padding-bottom:10px}.control{width:52px;height:52px}.control.jump{width:62px;height:62px}.bottom-status{bottom:90px}.danger{bottom:111px}.hud{padding-top:10px}.power-tray{top:110px}.modal-layer>section{padding:22px}.final-score{margin:13px 0;font-size:48px}.run-stats{padding:12px 0}.earned{padding-top:14px}.modal-layer .arcade{margin-top:14px}}@media (height<=520px) and (orientation:landscape){.menu-content{width:40vw;max-height:94dvh;left:30px}.menu .brand{font-size:16px}.menu .eyebrow{display:none}.menu .game-title{margin:17px 0;font-size:75px}.tagline{margin:8px 0 12px;font-size:16px}.menu-actions{gap:10px}.primary{min-height:45px;padding:8px 20px;font-size:22px}.secondary{min-height:32px;padding:6px 16px;font-size:10px}.loading,.menu-meta{display:none}.menu .game-title:after{bottom:-9px}.side{width:27vw;padding:22px;display:flex}.side .brand{font-size:15px}.side .game-title{margin:18px 0;font-size:47px}.side-rule,.side-bottom,.power-guide,.side>p,.side>small,.side>.eyebrow,.best-panel{display:none}.reward-panel{padding:15px 0}.reward-panel>b{font-size:16px}.side .key-guide{margin:4px 0}.game{justify-content:space-around}#arena{width:60dvh}.hud{padding:8px 9px}.hud-label{font-size:6px}.score-block>b{font-size:22px}.hearts{font-size:15px}.hud-centre>span{font-size:5px}.hud-centre>b{font-size:12px}.hud-buttons{gap:4px}.hud-buttons .icon-button{border-radius:7px;width:23px;height:23px;font-size:12px}#combo{font-size:9px}.control-deck{padding:7px 10px}.control{width:34px;height:34px}.control.jump{width:42px;height:42px}.control svg{width:20px;height:20px}.jump svg{height:19px}.jump span{font-size:8px}.control:after{border-width:1px;inset:2px}.bottom-status{font-size:6px;bottom:62px;left:9px;right:9px}.danger{padding:4px 7px;font-size:7px;bottom:78px}.power-tray{top:75px;left:8px}.start-hint b{font-size:22px}.start-hint span{font-size:7px}.modal-layer>section{max-height:92dvh}.hud-buttons .sound-toggle{display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.mobile-perk{display:none}@media (width<=780px){.mobile-perk{top:calc(99px + env(safe-area-inset-top));pointer-events:none;align-items:center;gap:12px;display:flex;position:absolute;left:16px;right:16px}.mobile-perk>span{letter-spacing:.07em;color:#ffdf9c;text-shadow:0 2px 4px #00162a;font-size:8px;font-weight:700}.mobile-perk>div{background:#021927b0;border:1px solid #aa9a6c88;border-radius:7px;flex:1;height:5px}.mobile-perk i{background:#ffd275;border-radius:7px;width:0;height:100%;transition:width .2s;display:block;box-shadow:0 0 8px #ffcf7a44}.power-tray{top:calc(124px + env(safe-area-inset-top))}}@media (width<=600px) and (orientation:portrait){.menu-content>.brand{left:25px;top:calc(26px + env(safe-area-inset-top))}}@media (height<=520px) and (orientation:landscape){.mobile-perk{display:none}.power-tray{top:75px}}.game-title{transform:rotate(-3deg)skew(-7deg)}@media (width<=600px) and (orientation:portrait){.menu .game-title{transform:rotate(-3deg)skew(-7deg)}}#app{position:relative}html{overflow:hidden}.game,.game *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.game img{-webkit-user-drag:none}.control>*{pointer-events:none}.control-deck{min-height:133px;padding:12px 24px calc(12px + env(safe-area-inset-bottom))}.thumbstick{touch-action:none;cursor:grab;background:radial-gradient(circle,#07232e 35%,#0b3a49 62%,#030f1c 64%,#31515c 68%,#102632 72%);border:2px solid #b69c70;border-radius:50%;flex-shrink:0;width:104px;height:104px;position:relative;box-shadow:0 4px #010d17,inset 0 2px 2px #e1e1c970,0 0 0 4px #04131c,0 0 0 5px #526d76,0 0 24px #22cdcc22}.thumbstick:after{content:"";pointer-events:none;border:1px solid #49d3dd66;border-radius:50%;position:absolute;inset:10px}.stick-knob{width:50%;height:50%;transform:translate(var(--stick-x,0px),var(--stick-y,0px));z-index:1;pointer-events:none;background:radial-gradient(circle at 35% 25%,#71eee7,#1997a6 38%,#064151 80%);border:2px solid #8bffff;border-radius:50%;transition:transform .12s ease-out;position:absolute;top:25%;left:25%;box-shadow:inset 0 3px 4px #eaffff99,inset 0 -4px 6px #031929,0 5px #031a28,0 8px 13px #000b,0 0 10px #2df6e344}.stick-knob i{background:#052e4533;border:1px solid #e0ffff65;border-radius:50%;position:absolute;inset:31%}.thumbstick.pressed{cursor:grabbing}.thumbstick.pressed .stick-knob{filter:brightness(1.12);transition:none}.stick-arrow{color:#8ad6d5;pointer-events:none;font-size:29px;font-weight:600;position:absolute;top:50%;transform:translateY(-54%)}.stick-left{left:7px}.stick-right{right:7px}.deck-label{letter-spacing:-.04em;color:#fff1d15c;text-align:center;pointer-events:none;font-size:16px;font-style:italic;font-weight:900;line-height:.9;transform:skew(-7deg)}.deck-label b{color:#61d7d36b}.control-deck .jump{width:84px;height:84px}.bottom-status{bottom:calc(143px + env(safe-area-inset-bottom))}.danger{bottom:calc(164px + env(safe-area-inset-bottom))}@media (height<=690px) and (orientation:portrait){.control-deck{min-height:109px;padding:10px 22px calc(10px + env(safe-area-inset-bottom))}.thumbstick{width:84px;height:84px}.control-deck .jump{width:70px;height:70px}.bottom-status{bottom:calc(118px + env(safe-area-inset-bottom))}.danger{bottom:calc(139px + env(safe-area-inset-bottom))}}@media (height<=520px) and (orientation:landscape){.control-deck{min-height:72px;padding:7px 13px}.thumbstick{width:55px;height:55px}.thumbstick:after{inset:5px}.stick-arrow{font-size:18px}.stick-left{left:3px}.stick-right{right:3px}.control-deck .jump{width:46px;height:46px}.deck-label{font-size:10px}.bottom-status{bottom:80px}.danger{bottom:95px}.hearts{gap:1px;font-size:13px}.hud-centre>span{max-width:66px}}#arena{container-type:inline-size}.toast{--announcement-color:#9dfff0;z-index:5;pointer-events:none;text-align:center;opacity:0;filter:drop-shadow(0 5px #021423cc);width:94%;transition:opacity .18s,transform .18s;position:absolute;top:27%;left:3%;transform:translateY(-8px)scale(.95)}.toast.show{opacity:1;transform:none}.toast:before{content:"";background:radial-gradient(ellipse,color-mix(in srgb,var(--announcement-color) 28%,transparent),transparent 68%);z-index:-1;width:68%;height:110%;position:absolute;top:-10%;left:16%}.announcement-mark{color:var(--announcement-color);text-shadow:0 0 15px var(--announcement-color),0 2px #062134;font-size:clamp(23px,9cqw,40px);font-style:normal;font-weight:950;line-height:1;display:block}.announcement-title{letter-spacing:-.045em;color:#fff5d9;-webkit-text-stroke:4px #082239;paint-order:stroke fill;text-shadow:0 3px 0 #0d4450,0 5px 0 #041221,0 0 24px color-mix(in srgb,var(--announcement-color) 55%,transparent);padding:3px 3px 8px;font-size:clamp(23px,9cqw,45px);font-style:italic;font-weight:950;line-height:1.04;display:block;transform:rotate(-3deg)skew(-7deg)}.announcement-sub{color:var(--announcement-color);letter-spacing:.04em;text-shadow:0 2px 2px #00111e,0 0 5px #00111e,1px 0 2px #00111e,-1px 0 2px #00111e;font-size:clamp(9px,2.85cqw,14px);font-weight:800;display:block}.announcement-sub:before,.announcement-sub:after{content:"✦";color:#fff1b0;margin:0 8px;font-size:.75em;display:inline-block}.toast.show .announcement-title{animation:.55s cubic-bezier(.2,.8,.25,1) both arcade-pop}.toast.show .announcement-mark{animation:.6s ease-out both arcade-star}.announcement-sparks{pointer-events:none;position:absolute;inset:0}.announcement-sparks i{background:var(--announcement-color);transform-origin:0 0;opacity:0;border-radius:60%;width:5px;height:15px;position:absolute;top:40%;left:50%}.toast.show .announcement-sparks i{--angle:calc(var(--n)*45deg);animation:.65s ease-out both arcade-spark}@keyframes arcade-pop{0%{opacity:0;transform:rotate(-7deg)skew(-7deg)scale(.45)}50%{opacity:1;transform:rotate(-2deg)skew(-7deg)scale(1.12)}75%{transform:rotate(-4deg)skew(-7deg)scale(.97)}to{transform:rotate(-3deg)skew(-7deg)scale(1)}}@keyframes arcade-star{0%{opacity:0;transform:scale(.3)rotate(-50deg)}70%{opacity:1;transform:scale(1.2)rotate(8deg)}to{transform:scale(1)}}@keyframes arcade-spark{0%{opacity:0;transform:rotate(var(--angle)) translateY(-20px) scale(.2)}25%{opacity:.9}to{opacity:0;transform:rotate(var(--angle)) translateY(-90px) scale(.3)}}.voucher{--ticket-color:#ffe183;top:calc(128px + env(safe-area-inset-top));z-index:4;pointer-events:none;transform-origin:100% 0;filter:drop-shadow(0 4px #031522)drop-shadow(0 0 12px #ffd66645);width:clamp(112px,35cqw,168px);transition:transform .35s,opacity .25s;position:absolute;right:15px;transform:rotate(5deg)}.voucher-ticket{background:linear-gradient(130deg,#fff9d9,var(--ticket-color) 52%,#ddac61);clip-path:polygon(0 0,100% 0,100% 42%,96% 50%,100% 58%,100% 100%,0 100%,0 58%,4% 50%,0 42%);color:#0b3542;border:2px solid #fff0b0;border-radius:5px;min-height:88px;display:flex;position:relative;box-shadow:inset 0 0 0 2px #7d613d99}.voucher-ticket:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 30%,#fff9 46%,#0000 62%);position:absolute;inset:0;transform:translate(-150%)}.voucher.arriving .voucher-ticket:after{animation:.8s ease-out .55s both ticket-shine}.voucher-stub{background:#fff3d34d;border-right:2px dashed #82683b99;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:26%;display:flex}.voucher-stub img{object-fit:contain;filter:brightness(.55);width:24px;height:24px}.voucher-stub span{letter-spacing:.02em;text-align:center;font-size:6px;font-weight:900;line-height:1.1}.voucher-face{text-align:center;flex:1;padding:7px 3px 6px;position:relative}.voucher-caption{letter-spacing:.08em;white-space:nowrap;font-size:8px;font-weight:950;display:block}.voucher-face strong{letter-spacing:-.08em;text-shadow:0 1px #fff8;font-size:clamp(28px,10cqw,45px);font-style:italic;font-weight:950;line-height:1.06;display:block}.voucher-face strong b{font-weight:950}.voucher-face em{margin-left:1px;font-size:.62em}.voucher-face strong small{letter-spacing:-.03em;margin-left:4px;font-size:10px}.voucher-tier{letter-spacing:.15em;font-size:8px;font-weight:900;display:block}.voucher-code{letter-spacing:.06em;white-space:nowrap;margin-top:5px;font-size:11px;font-weight:850;display:block}.voucher-message{letter-spacing:.02em;text-align:center;color:#fff6db;text-shadow:0 2px 3px #001526,0 0 4px #001526;white-space:nowrap;margin-top:6px;font-size:9px;font-weight:850}.voucher-sparks{color:#fff2af;pointer-events:none;opacity:0;font-size:29px;position:absolute;inset:-14px}.voucher-sparks>i{font-size:24px;font-style:normal;position:absolute;top:45%;right:0}.voucher-sparks>b{font-size:19px;position:absolute;bottom:-5px;left:30%}.voucher.arriving{animation:.95s both ticket-bounce}.voucher.arriving .voucher-sparks{animation:1.2s .2s both ticket-sparks}.voucher.compact{opacity:.9;transform:rotate(4deg)scale(.76)}.voucher.compact .voucher-message{opacity:0}@keyframes ticket-bounce{0%{opacity:0;transform:translate(130%,-45px)rotate(28deg)scale(.55)}45%{opacity:1;transform:translate(-9px,8px)rotate(-10deg)scale(1.06)}65%{transform:translate(4px,-6px)rotate(9deg)scale(.97)}82%{transform:translate(-2px,2px)rotate(2deg)scale(1.02)}to{transform:rotate(5deg)}}@keyframes ticket-shine{to{transform:translate(150%)}}@keyframes ticket-sparks{0%{opacity:0;transform:scale(.5)rotate(-10deg)}35%{opacity:1}to{opacity:0;transform:scale(1.25)rotate(12deg)}}.is-paused .toast *,.is-paused .voucher,.is-paused .voucher *,.is-paused .voucher-ticket:after{animation-play-state:paused!important}@media (height<=690px) and (orientation:portrait){.voucher{top:117px;right:13px}.toast{top:220px}}@media (height<=520px) and (orientation:landscape){.voucher{width:106px;top:78px;right:8px}.voucher-ticket{min-height:67px}.voucher-face{padding:4px 2px}.voucher-face strong{font-size:27px}.voucher-face strong small{font-size:8px}.voucher-caption,.voucher-tier{font-size:6px}.voucher-code{letter-spacing:.02em;font-size:8px}.voucher-stub img{width:18px;height:18px}.voucher-stub span{font-size:5px}.voucher-message{margin-top:3px;font-size:6px}.toast{top:46%}.announcement-title{font-size:22px}.announcement-mark{font-size:23px}.announcement-sub{font-size:7px}}@media (prefers-reduced-motion:reduce){.toast,.voucher{transition:none}.toast.show .announcement-sparks,.voucher-sparks{display:none}.voucher.arriving{opacity:1;transform:rotate(5deg)}}.heart-icon{filter:drop-shadow(0 2px #7e203d);width:1em;height:1.3em;display:block;overflow:visible}.heart-icon path{fill:currentColor;stroke:#ffb8be;stroke-width:.7px}.hearts .empty .heart-icon{filter:none}.hearts .empty .heart-icon path{fill:none;stroke:#8198ae;stroke-width:1.5px;opacity:.75}.hearts .lost .heart-icon{animation:.6s ease-out heart-lost}@keyframes heart-lost{0%{filter:drop-shadow(0 0 7px #ff6481);transform:scale(1.3)}45%{transform:scale(.8)}to{filter:none;transform:scale(1)}}.run-result h2{margin-bottom:18px}.result-voucher{filter:drop-shadow(0 4px #031522);width:218px;max-width:100%;margin:0 auto 12px}.result-reward-label{letter-spacing:.13em;color:#bcdfdf;margin-bottom:10px;font-size:9px;font-weight:850;display:block}.result-voucher .voucher-ticket{min-height:106px;transform:rotate(-3deg)}.result-voucher .voucher-face{padding:10px 3px}.result-voucher .voucher-face strong{font-size:57px;line-height:1.1}.result-voucher .voucher-caption,.result-voucher .voucher-tier{font-size:9px}.result-voucher .voucher-stub img{width:32px;height:32px}.result-voucher .voucher-stub span{font-size:7px}.result-redemption{color:#a7c2ce;margin:16px 0 0;font-size:10px;line-height:1.4;display:block}.result-no-voucher{padding:12px 0 0}.result-no-voucher b{color:#ffdf9b;font-size:12px}.result-no-voucher p{margin:5px 0;font-size:12px}.run-result .final-score{margin:12px 0;font-size:47px}.run-result .run-stats{padding:12px 0}.run-result .arcade{min-height:54px;margin-top:16px}.run-result .shop-coffees{color:#ffe4ab;background:linear-gradient(#61482d,#322b25);border-color:#d3ad6e;min-height:45px;margin-top:13px;font-size:15px}.run-result .shop-coffees:after{border-color:#cfaa6666}.run-result .shop-coffees svg{fill:#ffe4ab;width:20px;height:20px}.run-result .text-button{margin-top:13px}.hearts{grid-template-columns:repeat(5,1em);gap:1px 3px;width:max-content;font-size:18px;line-height:1;display:grid}.heart-icon{height:1.1em}.power-tray{top:calc(148px + env(safe-area-inset-top))}.voucher{top:calc(152px + env(safe-area-inset-top))}@media (width<=780px){.mobile-perk{top:calc(122px + env(safe-area-inset-top))}.power-tray{top:calc(148px + env(safe-area-inset-top))}}@media (height<=690px) and (orientation:portrait){.voucher{top:145px}}@media (height<=520px) and (orientation:landscape){.hearts{gap:0 2px;font-size:11px}.power-tray{top:85px}.voucher{top:88px}}.toast.goal .announcement-title{letter-spacing:-.025em;font-size:clamp(22px,7.3cqw,34px)}.toast.goal .announcement-mark{font-size:23px}.toast.goal .announcement-sub{font-size:9px}.power-tray{grid-template-columns:44px;align-items:start;gap:6px;display:grid}.power-tile{border:1px solid var(--power);background:linear-gradient(145deg,color-mix(in srgb,var(--power) 24%,#06202e),#041722 75%);width:44px;height:44px;box-shadow:inset 0 1px 0 #ffffff40,0 3px 0 #020b14,0 0 10px color-mix(in srgb,var(--power) 15%,transparent);color:var(--power);border-radius:8px;flex-direction:column;align-items:center;display:flex;position:relative}.power-dial{place-items:center;width:30px;height:30px;margin-top:1px;display:grid;position:relative}.power-dial svg{fill:none;stroke-width:2.5px;width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.dial-track{stroke:currentColor;opacity:.18}.dial-left{stroke:currentColor;stroke-dasharray:100;stroke-linecap:round}.power-dial b{text-shadow:0 0 8px;font-size:16px;line-height:1}.power-tile strong{font-variant-numeric:tabular-nums;color:#fff7df;font-size:10px;line-height:11px}.power-tile.expiring{border-style:dashed}@media (width<=780px) and (orientation:portrait){.power-tray{grid-template-columns:36px;gap:5px}.power-tile{border-radius:6px;width:36px;height:36px}.power-dial{width:25px;height:25px;margin-top:0}.power-dial b{font-size:14px}.power-tile strong{font-size:9px;line-height:9px}}@media (height<=520px) and (orientation:landscape){.power-tray{grid-template-columns:29px;gap:4px}.power-tile{border-radius:5px;width:29px;height:29px}.power-dial{width:20px;height:20px;margin-top:0}.power-dial b{font-size:11px}.power-tile strong{font-size:7px;line-height:8px}}.result-voucher .voucher-code{letter-spacing:.08em;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;margin-top:8px;font-size:17px}
