@font-face{font-family:Arrows;src:local(Segoe UI Symbol),local(Apple Symbols),local(DejaVu Sans),local(Noto Sans Symbols2),local(Noto Sans Math),local(Arial),local(Helvetica);unicode-range:U+2190-21FF;size-adjust:150%}*,:before,:after{box-sizing:border-box}html,body{color:#f5e9ff;background:#0b0418;height:100%;margin:0;font-family:Arrows,"Press Start 2P",monospace;overflow:hidden}#app{touch-action:none}#app,#app canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.webgl-error{text-align:center;place-items:center;padding:16px;font-size:12px;line-height:1.8;display:grid;position:fixed;inset:0}@keyframes blink{50%{opacity:.35}}.link-toast,.links a{letter-spacing:.05em;text-transform:uppercase;--pixel-color:#ff2a8a;--pixel-fill:#0b0418d9;--pixel-glow:drop-shadow(0 0 8px var(--pixel-color));background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0;font-size:10px}.link-toast:before,.links a:before,.link-toast:after,.links a:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.link-toast:before,.links a:before{border-width:2px 0;inset:0 2px}.link-toast:after,.links a:after{border-width:0 2px;inset:2px 0}.link-toast,.links a{color:#fff;padding:.6em 1.2em;line-height:1.6;text-decoration:none;position:relative}.link-toast:focus-visible,.links a:focus-visible{--pixel-color:#40f0ff;outline:none}.links{z-index:1;gap:12px;display:flex;position:fixed;top:16px;left:16px}.links:not(:focus-within){clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.ui{pointer-events:none;position:fixed;inset:0}.start-hint{letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 6px #ff2a8a,0 0 18px #ff2a8a;--pixel-color:transparent;--pixel-fill:#0b041899;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0;font-size:clamp(8px,1.4vw,12px)}.start-hint:before,.start-hint:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.start-hint:before{border-width:2px 0;inset:0 2px}.start-hint:after{border-width:0 2px;inset:2px 0}.start-hint{white-space:nowrap;color:#fff;margin:0;padding:.6em 1.4em;line-height:1.6;animation:1.6s ease-in-out infinite blink;position:absolute;bottom:max(6vh,84px);left:50%;transform:translate(-50%)}.drive-hint{letter-spacing:.08em;text-transform:uppercase;color:#40f0ff;text-shadow:0 0 8px #40f0ffcc;align-items:center;gap:.6em;height:44px;margin:0;font-size:10px;line-height:1.6;transition:opacity 1.2s .8s;display:flex;position:absolute;bottom:20px;left:20px;right:132px}.drive-hint kbd{--pixel-color:currentColor;--pixel-fill:transparent;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 6px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 6px) no-repeat;border:none;border-radius:0}.drive-hint kbd:before,.drive-hint kbd:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.drive-hint kbd:before{border-width:2px 0 4px;inset:0 2px}.drive-hint kbd:after{border-width:0 2px;inset:2px 0 4px}.drive-hint kbd{min-width:2.2em;font:inherit;text-align:center;--pixel-glow:drop-shadow(0 0 4px #40f0ff99);padding:calc(.45em + 2px) calc(.5em + 2px) calc(.35em + 4px);line-height:1;display:inline-block;position:relative}.drive-hint.is-done{opacity:0}.drive-hint[hidden]{display:none}.link-toast{pointer-events:auto;white-space:nowrap;position:absolute;top:20px;left:50%;transform:translate(-50%)}.link-toast__icon{vertical-align:.125em;fill:currentColor;shape-rendering:crispedges;width:auto;height:.875em}.link-toast[hidden]{display:none}.icon-button{--pixel-color:#40f0ff8c;--pixel-fill:#0b041873;--pixel-glow:drop-shadow(0 0 4px var(--pixel-color));background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0}.icon-button:before,.icon-button:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.icon-button:before{border-width:2px 0;inset:0 2px}.icon-button:after{border-width:0 2px;inset:2px 0}.icon-button{color:#40f0ff;cursor:pointer;pointer-events:auto;width:44px;height:44px;padding:9px;position:absolute;bottom:20px}.icon-button:hover,.icon-button:focus-visible{--pixel-color:#40f0ff;--pixel-glow:drop-shadow(0 0 8px var(--pixel-color));outline:none}.icon-button svg{fill:currentColor;shape-rendering:crispedges;filter:drop-shadow(0 0 4px #40f0ffcc);width:100%;height:100%}.sound-toggle{right:20px}.sound-toggle[aria-pressed=true] .cross,.sound-toggle[aria-pressed=false] .waves{display:none}.pause-button{right:76px}.pause-button:not(.is-paused) .play,.pause-button.is-paused .pause{display:none}.pause-menu{max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);color:inherit;font:inherit;background:0 0;border:0;padding:0;overflow:auto}.pause-menu::backdrop{background:#05010c8c}.pause-menu button{font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.pause-menu__panel{letter-spacing:.05em;text-transform:uppercase;--pixel-color:#ff3fb4d9;--pixel-fill:#0b0418e6;--pixel-glow:drop-shadow(0 0 12px #ff2a8a);background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 8px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 4px/4px calc(100% - 8px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 4px/4px calc(100% - 8px) no-repeat;border:none;border-radius:0;font-size:10px}.pause-menu__panel:before,.pause-menu__panel:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.pause-menu__panel:before{border-width:4px 0;inset:0 4px}.pause-menu__panel:after{border-width:0 4px;inset:4px 0}.pause-menu__panel{gap:20px;width:min(440px,100vw - 32px);padding:28px 24px 22px;line-height:1.6;display:grid;position:relative}.pause-menu__title{text-shadow:0 0 8px #ff2a8a,0 0 20px #ff2a8a;text-align:center;color:#fff;margin:0 0 4px;font-size:16px;font-weight:400}.pause-menu__action{--pixel-color:#ff3fb4bf;--pixel-fill:#ff3fb414;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0}.pause-menu__action:before,.pause-menu__action:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.pause-menu__action:before{border-width:2px 0;inset:0 2px}.pause-menu__action:after{border-width:0 2px;inset:2px 0}.pause-menu__action{color:#fff;padding:12px;position:relative}.pause-menu__icon{vertical-align:.125em;fill:currentColor;shape-rendering:crispedges;width:auto;height:.875em}.pause-menu__settings{gap:14px;display:grid}.pause-menu__row{align-items:center;gap:12px;min-height:32px;display:flex}.pause-menu__row>:first-child{flex:1}.pause-menu__slider{accent-color:#ff3fb4;width:130px}.pause-menu__slider:focus-visible{outline-offset:4px;outline:2px solid #fff}.pause-menu__value{text-align:right;color:#40f0ff;width:4.5em}.pause-menu__choices{gap:6px;display:flex}.pause-menu__choice{--pixel-color:#40f0ff59;--pixel-fill:transparent;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0}.pause-menu__choice:before,.pause-menu__choice:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.pause-menu__choice:before{border-width:2px 0;inset:0 2px}.pause-menu__choice:after{border-width:0 2px;inset:2px 0}.pause-menu__choice{color:#fff9;min-width:4.5em;padding:8px 10px;position:relative}.pause-menu__choice[aria-pressed=true]{--pixel-color:#40f0ffe6;--pixel-fill:#40f0ff26;color:#40f0ff}.pause-menu__action:hover,.pause-menu__choice:hover{--pixel-color:#40f0ff;--pixel-glow:drop-shadow(0 0 12px var(--pixel-color))}.pause-menu__action:focus-visible,.pause-menu__choice:focus-visible{--pixel-color:#fff;--pixel-glow:drop-shadow(0 0 8px var(--pixel-color));color:#fff;outline:none}.pause-menu__odometer{--pixel-color:#ffffff24;--pixel-fill:#050208;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 4px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 4px) no-repeat;border:none;border-radius:0;gap:8px;display:grid}.pause-menu__odometer:before,.pause-menu__odometer:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.pause-menu__odometer:before{border-width:2px 0;inset:0 2px}.pause-menu__odometer:after{border-width:0 2px;inset:2px 0}.pause-menu__odometer{margin:0;padding:14px 16px;position:relative}.pause-menu__odometer div{justify-content:space-between;align-items:center;gap:12px;display:flex}.pause-menu__odometer dt{color:#fff9}.pause-menu__odometer dd{align-items:center;gap:8px;margin:0;display:flex}.pause-menu__keys{text-align:center;color:#ffffff80;margin:0;font-size:8px;line-height:2.4}.pause-menu__keys kbd{--pixel-color:currentColor;--pixel-fill:transparent;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 4px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 2px/2px calc(100% - 6px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 2px/2px calc(100% - 6px) no-repeat;border:none;border-radius:0}.pause-menu__keys kbd:before,.pause-menu__keys kbd:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.pause-menu__keys kbd:before{border-width:2px 0 4px;inset:0 2px}.pause-menu__keys kbd:after{border-width:0 2px;inset:2px 0 4px}.pause-menu__keys kbd{min-width:2.2em;font:inherit;text-align:center;min-width:2em;padding:calc(.45em + 2px) calc(.5em + 2px) calc(.35em + 4px);line-height:1;display:inline-block;position:relative}@media (hover:none) and (pointer:coarse){.pause-menu__keys{display:none}}.odometer{letter-spacing:0;background:#000;border-radius:3px;gap:1px;padding:2px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;font-weight:700;line-height:1.5em;display:inline-flex;box-shadow:inset 0 0 0 1px #ffffff2e,0 1px #ffffff14}.odometer__wheel{color:#f2eee4;text-align:center;background:linear-gradient(#111,#2e2e2e 50%,#111);width:1.05em;height:1.5em;position:relative;overflow:hidden}.odometer__wheel:after{content:"";background:linear-gradient(#000000b3,#0000 35% 65%,#000000b3);position:absolute;inset:0}.odometer__wheel--tenths{color:#b3121f;background:linear-gradient(#c4bdac,#f2eee4 50%,#c4bdac);margin-left:2px}.odometer__wheel--tenths:after{background:linear-gradient(#00000073,#0000 35% 65%,#00000073)}.odometer__strip{transform:translateY(calc(var(--roll,0) * -1.5em));transition:transform 1.4s cubic-bezier(.2,.7,.2,1);display:block}.odometer__strip span{height:1.5em;display:block}.odometer__unit{color:#fff9;text-transform:none}@media (prefers-reduced-motion:reduce){.odometer__strip{transition:none}}.start-screen{z-index:10;background:#000;place-items:center;padding:16px;transition:opacity 1.4s;display:grid;position:fixed;inset:0}.start-screen.is-revealing{opacity:0;pointer-events:none}.start-screen__content{text-align:center;justify-items:center;gap:32px;transition:transform .9s cubic-bezier(.55,0,.75,.3),opacity .9s;display:grid}.start-screen__logo{width:192px;height:auto;image-rendering:pixelated}@media (width>=480px) and (height>=600px){.start-screen__logo{width:240px}}.start-screen__prompt{font:inherit;letter-spacing:.08em;text-transform:uppercase;--pixel-color:#40f0ff;--pixel-fill:transparent;--pixel-glow:none;background:linear-gradient(var(--pixel-fill), var(--pixel-fill)) center top/calc(100% - 8px) 100% no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) left 0 top 4px/4px calc(100% - 8px) no-repeat, linear-gradient(var(--pixel-fill), var(--pixel-fill)) right 0 top 4px/4px calc(100% - 8px) no-repeat;border:none;border-radius:0;font-size:clamp(12px,2vw,20px)}.start-screen__prompt:before,.start-screen__prompt:after{content:"";border:0 solid var(--pixel-color);filter:var(--pixel-glow);pointer-events:none;position:absolute}.start-screen__prompt:before{border-width:4px 0;inset:-6px -2px}.start-screen__prompt:after{border-width:0 4px;inset:-2px -6px}.start-screen__prompt{color:#40f0ff;cursor:pointer;-webkit-user-select:none;user-select:none;padding:1em 1.5em;line-height:1.8;animation:1.6s ease-in-out infinite blink;position:relative}.start-screen__prompt:hover,.start-screen__prompt:focus-visible{--pixel-color:#40f0ff;--pixel-glow:drop-shadow(0 0 12px var(--pixel-color));outline:none}.start-screen__warning{color:#ffffff8c;letter-spacing:.05em;max-width:60em;margin:0;font-size:8px;line-height:2}.start-screen.is-leaving .start-screen__content{opacity:0;transform:translateY(calc(50vh + 50% + 20px))}.start-screen.is-leaving .start-screen__prompt{outline:none;animation:none}@media (prefers-reduced-motion:reduce){.start-screen__prompt,.start-hint{animation:none}.start-screen__content{transition:none}}
