:root{font-family:ui-monospace,SFMono-Regular,Consolas,Microsoft YaHei,monospace;color:#fff3d5;background:#11262e;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none;touch-action:none}button{font:inherit;cursor:pointer;color:inherit;touch-action:none;border:1px solid #ecdda06b;background:#23434c;border-radius:8px;min-height:42px;padding:8px 14px;box-shadow:0 3px #122b36;transition:background .1s}button:hover,button:focus-visible{background:#426464;outline:2px solid #f2d28c}button:active,button.held{transform:translateY(2px);background:#557c77;box-shadow:none}button:disabled{opacity:.42;cursor:default}#app{height:100dvh;max-height:100%;width:min(100%,540px);margin:auto;position:relative;isolation:isolate;overflow:hidden;background:#9bbfc4}#game{position:absolute;inset:0}canvas{display:block;width:100%!important;height:100%!important;image-rendering:pixelated;image-rendering:crisp-edges}header{position:absolute;top:0;left:0;width:100%;padding:calc(env(safe-area-inset-top,0px) + 13px) 16px 8px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(#17343be8,transparent);gap:6px}.brand{font-size:10px;letter-spacing:1.5px;font-weight:700}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px;color:#e2ce99}.settings{display:flex;gap:5px}.settings button{font-size:11px;padding:5px 8px;min-height:34px;background:#1b394da8}#hud{position:absolute;left:16px;right:16px;top:calc(env(safe-area-inset-top,0px) + 69px);pointer-events:none}.counters{display:flex;gap:18px;font-size:13px;text-shadow:0 2px #263f50}#objective{font-size:11px;line-height:1.7;color:#183b44;background:#fff1ceec;padding:8px 11px;border-left:3px solid #bd844d;margin-top:12px;max-width:90%;border-radius:2px}#overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:84px 22px 115px;background:#102b443a}.card{width:100%;max-height:100%;overflow-y:auto;padding:23px 20px;background:#183940f2;border:1px solid #ddc38c;box-shadow:0 0 0 5px #1a374a77,0 15px 50px #112d4b55;border-radius:3px;text-align:center}.eyebrow{font-size:10px;letter-spacing:3px;color:#e6c780;margin:0 0 15px}.card h1{font-size:32px;line-height:1.2;letter-spacing:2px;margin:0;color:#fff1cb;text-shadow:3px 3px #8a6745}.card h2{font-size:20px;color:#f6d48d;margin:0 0 14px}.subtitle{font-size:11px;color:#d0e2d5;line-height:1.7}.card p{font-size:13px;line-height:1.9}.card .hint{font-size:10px;color:#becfbe;line-height:1.7}.card button{display:block;width:100%;margin-top:10px;font-size:12px}.card button.primary{background:#d7b77b;color:#263e42;font-weight:700;border-color:#ffe5a6}.card .line{height:1px;background:#b9be8b44;margin:18px 0}#controls{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 28px);left:14px;right:14px;display:flex;justify-content:space-between;gap:8px}#controls[hidden],#overlay[hidden],#hud[hidden]{display:none}.directions,.actions{display:flex;gap:8px;align-items:flex-end}#controls button{min-width:56px;height:58px;padding:5px 9px;font-size:20px;background:#203f4fe8;border:1px solid #e4dfac8c;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#controls #action{font-size:11px;width:84px;height:48px;background:#567572ed}#controls #jump{font-size:13px;background:#d6b67bea;color:#1d3942;font-weight:700}footer{position:absolute;bottom:calc(env(safe-area-inset-bottom,0px) + 8px);width:100%;text-align:center;font-size:8px;color:#ece3c1;letter-spacing:.5px;pointer-events:none}#toast{position:absolute;top:30%;left:20px;right:20px;text-align:center;color:#fff4d4;text-shadow:0 2px 2px #152f46;font-size:12px;pointer-events:none;opacity:0;transition:opacity .2s}#toast.visible{opacity:1}#fatal{position:absolute;inset:0;background:#193d48;padding:100px 24px;font-size:14px;z-index:10}#fatal button{display:block;margin-top:20px}@media(min-width:700px){body{background:radial-gradient(ellipse at top,#355357,#11262e)}#app{width:min(56.25dvh,540px);box-shadow:0 0 100px #071f30}}@media(max-height:550px){#app{width:min(100%,360px)}.card{padding:14px}.card h1{font-size:22px}#overlay{padding:65px 18px 85px}#controls button{height:46px;min-width:48px}#hud{top:58px}#objective{margin-top:5px;font-size:9px}}header{z-index:4}
