:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0c1511}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#0c1511;overscroll-behavior:none;-webkit-text-size-adjust:100%}body{min-height:100%;touch-action:none;user-select:none;-webkit-user-select:none}button{font:inherit}[hidden]{display:none!important}.app-shell{position:fixed;z-index:0;inset:0;display:grid;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;place-items:center;isolation:isolate;background:#0c1511}.game-shell{position:relative;display:block;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;aspect-ratio:auto;overflow:hidden;background:#7ec8e3;contain:layout paint size}.game-root{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.game-root canvas{display:block;width:100%!important;height:100%!important;max-width:none;max-height:none;object-fit:fill;image-rendering:auto;touch-action:none}.touch-controls{position:absolute;z-index:20;inset:0;display:block;pointer-events:none;touch-action:none}.touch-controls__cluster{display:flex;align-items:center;gap:clamp(8px,1.8vw,16px);pointer-events:auto}.touch-controls__cluster--move{position:absolute;bottom:max(14px,calc(env(safe-area-inset-bottom) + 10px));left:max(14px,calc(env(safe-area-inset-left) + 10px))}.touch-button{display:inline-flex;position:relative;align-items:center;justify-content:center;width:clamp(64px,8.5vw,76px);min-width:64px;height:clamp(64px,8.5vw,76px);min-height:64px;padding:0;border:1px solid rgb(255 255 255 / 42%);border-radius:22px;color:#fff8df;background:#142a20b8;box-shadow:0 8px 22px #0000003d,inset 0 1px #ffffff2e;cursor:pointer;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;transition:transform .1s ease,background-color .1s ease,border-color .1s ease}.touch-button--pause{position:absolute;top:max(14px,calc(env(safe-area-inset-top) + 10px));right:max(14px,calc(env(safe-area-inset-right) + 10px));width:56px;min-width:56px;height:56px;min-height:56px;border-radius:18px;font-size:24px}.touch-button span[aria-hidden=true]{font-size:clamp(32px,4vw,42px);line-height:1;font-weight:300}.touch-button__caption{position:absolute;right:0;bottom:8px;left:0;font-size:9px;font-weight:700;letter-spacing:.08em;opacity:.92}.touch-button--jump{position:absolute;right:max(14px,calc(env(safe-area-inset-right) + 10px));bottom:max(14px,calc(env(safe-area-inset-bottom) + 10px));width:clamp(68px,8.5vw,76px);min-width:68px;height:clamp(68px,8.5vw,76px);min-height:68px;border-radius:50%;background:#d69635e0}.touch-button:focus-visible{outline:3px solid #ffe49b;outline-offset:3px}.touch-button[data-pressed=true],.touch-button:active{transform:translateY(2px) scale(.96);border-color:#ffffffbf;background:#224834e0}.touch-button--jump[data-pressed=true],.touch-button--jump:active{background:#ebac41f5}.orientation-overlay{position:fixed;z-index:100;inset:0;display:grid;width:100%;height:100%;min-height:100dvh;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));place-items:center;text-align:center;background:#101b15}.orientation-card{display:grid;max-width:320px;gap:10px;place-items:center;color:#fff8df}.orientation-card__icon{display:grid;width:72px;height:72px;margin-bottom:6px;place-items:center;border:1px solid rgb(255 255 255 / 28%);border-radius:22px;color:#f0bb55;font-size:48px;line-height:1;transform:rotate(-90deg)}.orientation-card h1{margin:0;font-size:clamp(22px,6vw,32px);line-height:1.1}.orientation-card p{margin:0;color:#d8e7dc;font-size:clamp(15px,4vw,18px);line-height:1.45}@media(orientation:portrait){.app-shell[data-orientation=portrait] .game-shell,.app-shell[data-orientation=portrait] .touch-controls{visibility:hidden}}@media(orientation:landscape){.app-shell[data-orientation=landscape]{min-height:100svh}}@media(min-width:900px)and (pointer:fine){.touch-controls{opacity:0;transition:opacity .16s ease}.touch-controls:focus-within,.touch-controls:hover{opacity:1}}@media(prefers-reduced-motion:reduce){.touch-button{transition:none}}
