*{padding:0;margin:0;box-sizing:border-box}html,body{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;background:#f4aa6c;font-family:Oswald,Arial Narrow,sans-serif;touch-action:none;user-select:none;-webkit-user-select:none}.canvas{position:fixed;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;outline:none;cursor:grab;touch-action:none}.canvas:active{cursor:grabbing}.loading{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:#fff7e9;background:#e9955d;transition:opacity .65s ease,visibility .65s}.is-ready .loading{opacity:0;visibility:hidden;pointer-events:none}.loading-title{font-size:clamp(38px,8vw,76px);letter-spacing:.12em;text-shadow:0 5px 0 rgba(113,52,27,.18)}.loading-track{width:min(280px,65vw);height:7px;overflow:hidden;border-radius:10px;background:#692f1833}.loading-bar{width:100%;height:100%;border-radius:inherit;background:#fff7e9;transform:scaleX(0);transform-origin:left;transition:transform .2s}.loading-label{font-size:12px;letter-spacing:.2em;opacity:.8}.joystick{position:fixed;z-index:10;width:144px;height:144px;opacity:0;pointer-events:none;transform:translate(-50%,-50%) scale(.8);transition:opacity .15s,transform .15s}.joystick.is-active{opacity:1;transform:translate(-50%,-50%) scale(1)}.joystick-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:3px solid rgba(255,247,233,.65);border-radius:50%;background:#6f341b1f;box-shadow:0 4px 24px #6f341b1f}.joystick-cursor{position:absolute;left:calc(50% - 28px);top:calc(50% - 28px);width:56px;height:56px;border:3px solid rgba(255,247,233,.85);border-radius:50%;background:#fff7e93d;will-change:transform}.controls-hint{position:fixed;left:50%;bottom:max(20px,env(safe-area-inset-bottom));z-index:5;padding:10px 16px;border-radius:20px;color:#fff7e9e6;background:#5b2d1961;font-size:11px;letter-spacing:.08em;white-space:nowrap;pointer-events:none;transform:translate(-50%);transition:opacity .6s}.controls-hint span{margin:0 8px}.has-moved .controls-hint{opacity:0}.game-menu{position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:15;color:#603924;font-family:Oswald,Arial Narrow,sans-serif;touch-action:auto}.game-menu button,.game-menu input{font:inherit;-webkit-tap-highlight-color:transparent}.game-menu button{color:inherit;cursor:pointer}.menu-toggle{position:relative;z-index:2;display:grid;place-items:center;width:48px;height:48px;margin-left:auto;border:1px solid rgba(255,255,255,.48);border-radius:16px;background:#fff7e9e0;box-shadow:0 8px 26px #5b2d1929,inset 0 1px #ffffffa6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.menu-toggle:hover{background:#fff7e9;box-shadow:0 10px 30px #5b2d1933,inset 0 1px #ffffffbf;transform:translateY(-2px)}.menu-toggle:active{transform:translateY(0) scale(.94)}.menu-toggle-lines{position:relative;width:20px;height:16px}.menu-toggle-lines span{position:absolute;left:0;width:20px;height:2px;border-radius:2px;background:currentColor;transform-origin:center;transition:top .24s ease,transform .24s ease,opacity .16s ease,width .24s ease}.menu-toggle-lines span:nth-child(1){top:0}.menu-toggle-lines span:nth-child(2){top:7px;width:14px}.menu-toggle-lines span:nth-child(3){top:14px}.is-open .menu-toggle-lines span:nth-child(1){top:7px;transform:rotate(45deg)}.is-open .menu-toggle-lines span:nth-child(2){opacity:0;transform:translate(-5px)}.is-open .menu-toggle-lines span:nth-child(3){top:7px;transform:rotate(-45deg)}.menu-panel{position:absolute;top:58px;right:0;width:min(276px,calc(100vw - 36px));padding:10px;border:1px solid rgba(255,255,255,.52);border-radius:18px;opacity:0;visibility:hidden;pointer-events:none;background:#fff7e9eb;box-shadow:0 18px 50px #5b2d1933,inset 0 1px #ffffffb8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);transform:translateY(-8px) scale(.96);transform-origin:top right;transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1),visibility 0s linear .22s}.is-open .menu-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .2s ease,transform .28s cubic-bezier(.2,.9,.25,1.15),visibility 0s}.menu-restart,.menu-music{opacity:0;transform:translateY(-5px);transition:opacity .14s ease,transform .14s ease}.is-open .menu-restart,.is-open .menu-music{opacity:1;transform:translateY(0);transition:opacity .22s ease .05s,transform .22s ease .05s}.is-open .menu-music{transition-delay:.09s}.menu-restart{display:flex;align-items:center;gap:10px;width:100%;height:42px;padding:0 12px;border:0;border-radius:11px;background:transparent;font-size:14px;font-weight:600;letter-spacing:.04em;text-align:left;transition:background .18s ease,transform .18s ease}.menu-restart:hover{background:#83492a17}.menu-restart:active{transform:scale(.98)}.menu-restart svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.menu-restart:hover svg{transform:rotate(-45deg)}.menu-music{display:flex;align-items:center;gap:6px;margin-top:7px;padding-top:9px;border-top:1px solid rgba(96,57,36,.1)}.menu-icon-button{display:grid;flex:0 0 36px;place-items:center;width:36px;height:36px;padding:0;border:0;border-radius:10px;background:#60392412;transition:background .18s ease,transform .18s ease}.menu-icon-button:hover{background:#60392424;transform:translateY(-1px)}.menu-icon-button:active{transform:scale(.9)}.menu-icon-button svg{grid-area:1 / 1;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;transition:opacity .16s ease,transform .2s ease}.menu-icon-button .music-icon-play{fill:currentColor;stroke:none}.music-icon-pause{opacity:0;transform:scale(.65) rotate(-15deg)}.is-playing .music-icon-play{opacity:0;transform:scale(.65) rotate(15deg)}.is-playing .music-icon-pause{opacity:1;transform:scale(1) rotate(0)}.menu-volume{display:flex;flex:1;align-items:center;gap:8px;min-width:0;height:36px;padding:0 10px;border-radius:10px;background:#60392412;transition:background .18s ease,opacity .18s ease}.menu-volume:focus-within,.menu-volume:hover{background:#6039241f}.menu-volume.is-muted{opacity:.6}.menu-volume svg{flex:0 0 18px;width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.menu-volume input{--volume: 20%;width:100%;min-width:0;height:24px;padding:0;border:0;outline:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;cursor:pointer;background:transparent}.menu-volume input::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,#75452c 0%,#75452c var(--volume),rgba(96,57,36,.17) var(--volume),rgba(96,57,36,.17) 100%)}.menu-volume input::-webkit-slider-thumb{width:13px;height:13px;margin-top:-4.5px;border:2px solid #fff7e9;border-radius:50%;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#75452c;box-shadow:0 1px 4px #60392440;transition:transform .15s ease}.menu-volume input:hover::-webkit-slider-thumb,.menu-volume input:focus-visible::-webkit-slider-thumb{transform:scale(1.18)}.menu-volume input::-moz-range-track{height:4px;border-radius:4px;background:#6039242b}.menu-volume input::-moz-range-progress{height:4px;border-radius:4px;background:#75452c}.menu-volume input::-moz-range-thumb{width:10px;height:10px;border:2px solid #fff7e9;border-radius:50%;background:#75452c;box-shadow:0 1px 4px #60392440}.game-menu button:focus-visible,.menu-volume input:focus-visible{outline:2px solid #9b5c38;outline-offset:3px}.offscreen-indicator{position:fixed;left:0;top:0;z-index:6;width:56px;height:74px;pointer-events:none;will-change:transform}.offscreen-indicator[hidden]{display:none}.offscreen-indicator-arrow{position:absolute;left:7px;bottom:0;display:grid;place-items:center;width:42px;height:42px;border:2px solid rgba(255,247,233,.85);border-radius:50%;background:#5b2d19b8;box-shadow:0 4px 18px #5b2d1933}.offscreen-indicator-arrow:before{content:"";width:21px;height:18px;margin-left:2px;background:#fff7e9;clip-path:polygon(0 32%,45% 32%,45% 0,100% 50%,45% 100%,45% 68%,0 68%);animation:deposit-arrow-pulse .85s ease-in-out infinite}.offscreen-indicator-pin{position:absolute;left:50%;top:3px;width:25px;height:25px;border:2px solid #fff7e9;border-radius:50% 50% 50% 0;background:#df4f42;box-shadow:0 4px 10px #5b2d194d;transform:translate(-50%) rotate(-45deg);animation:offscreen-pin-bob .85s ease-in-out infinite}.offscreen-indicator-pin:after{content:"";position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#fff7e9;transform:translate(-50%,-50%)}@keyframes offscreen-pin-bob{0%,to{transform:translate(-50%) translateY(0) rotate(-45deg)}50%{transform:translate(-50%) translateY(-5px) rotate(-45deg)}}@keyframes deposit-arrow-pulse{0%,to{opacity:.75;transform:translate(-2px) scale(.9)}50%{opacity:1;transform:translate(2px) scale(1.12)}}@media (prefers-reduced-motion: reduce){.game-menu *,.game-menu *:before,.game-menu *:after{transition-duration:.01ms!important;transition-delay:0s!important}.offscreen-indicator-arrow:before,.offscreen-indicator-pin{animation:none}}@media (max-width: 600px){.controls-hint{font-size:9px}}
