*{box-sizing:border-box}html,body{color:#f8f6df;background:#102d28;min-height:100%;margin:0;font-family:Yu Gothic UI,Meiryo,sans-serif}body{background:radial-gradient(at 50% 0,#315348,#102d28 75%);place-items:center;min-height:100svh;display:grid}button{font:inherit;cursor:pointer;touch-action:none}button:focus-visible,#game:focus-visible{outline-offset:4px;outline:3px solid #ffdf78}#app{width:min(1260px,100%);padding:24px 32px}.page-heading{letter-spacing:.08em;color:#d7e8d4;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;display:flex}.page-heading>span:before{content:"✳";color:#f2d17c;margin-right:10px}#help{color:inherit;background:0 0;border:0;font-size:13px}#help span{border:1px solid #8eaf9b;border-radius:50%;place-items:center;width:21px;height:21px;margin-left:5px;display:inline-grid}#game-shell{isolation:isolate;aspect-ratio:16/9;background:#7ab7c0;border:1px solid #abc39755;border-radius:13px;position:relative;overflow:hidden;box-shadow:0 24px 65px #0005}#game{outline:none;width:100%;height:100%}canvas{image-rendering:pixelated;display:block}#hud{pointer-events:none;color:#fff;text-shadow:2px 2px #183a30,-1px -1px #183a30;background:linear-gradient(#13342b66,#0000);justify-content:space-between;align-items:center;padding:18px 22px;font-size:22px;font-weight:800;display:flex;position:absolute;inset:0 0 auto}#hud[hidden],.health img{display:none}.health{letter-spacing:4px;color:#ff675e;min-width:142px}.stage-label{align-items:center;gap:12px;font-size:15px;display:flex}.stage-label span{font-size:21px}.hud-right{align-items:center;gap:20px;display:flex}#coin-count{font-variant-numeric:tabular-nums}#coin-count:before{content:"✿";color:#ffdd65;margin-right:9px}#pause{pointer-events:auto;color:#fff5d8;background:#23483ce0;border:2px solid #eee5cb;border-radius:8px;width:40px;height:38px;font-weight:900}#notice{text-align:center;pointer-events:none;text-shadow:0 2px 5px #0009;width:100%;font-size:17px;font-weight:700;transition:opacity .25s;position:absolute;top:80px}#overlay{-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:linear-gradient(90deg,#142d3355,#142d3344);place-items:center;display:grid;position:absolute;inset:0}#overlay[hidden]{display:none}.intro-copy{text-align:center;background:#123b32e8;border:1px solid #fff4;border-radius:18px;max-width:92%;padding:28px 46px;box-shadow:0 12px 40px #0003}#eyebrow{letter-spacing:.22em;color:#e2ca83;margin:0 0 12px;font-size:10px}h1{letter-spacing:.12em;color:#fff5d4;text-shadow:0 3px #0e251d;margin:0 0 14px;font-size:clamp(28px,4.3vw,52px);font-weight:900}#overlay-text{color:#e5eddd;margin:8px 0 24px;font-size:16px;line-height:1.9}#primary,#help-ok{color:#283c25;background:#f5d17c;border:0;border-bottom:4px solid #b7904e;border-radius:7px;min-width:210px;padding:13px 34px;font-size:17px;font-weight:800}#primary:hover:not(:disabled){background:#ffe5a1;transform:translateY(-1px)}#primary:disabled{opacity:.7;cursor:wait;font-size:12px}#overlay-hint{color:#b5cfba;margin:18px 0 0;font-size:11px}#summary{color:#f4d780;margin-bottom:15px;font-size:21px;line-height:1.9}footer{color:#b4cbb9;justify-content:space-between;gap:10px;margin-top:16px;font-size:11px;line-height:1.9;display:flex}kbd{font:inherit;color:#e1e9d6;border:1px solid #73958066;border-bottom-width:2px;border-radius:4px;margin-right:2px;padding:2px 5px}#touch-controls{pointer-events:none;justify-content:space-between;display:none;position:absolute;bottom:12px;left:14px;right:14px}.touch-move,.touch-actions{align-items:end;gap:8px;display:flex}#touch-controls button{pointer-events:auto;color:#fff9dd;-webkit-user-select:none;user-select:none;background:#173c32bb;border:2px solid #fff9;border-radius:14px;width:54px;height:54px;font-weight:700}#touch-controls button.active{color:#233c27;background:#efd38b;transform:scale(.95)}#touch-controls .run{width:44px;height:44px;font-size:12px}#touch-controls .jump{color:#233c27;background:#e6c476dc;width:64px;height:64px}dialog{color:#284033;background:#f5f2df;border:1px solid #849c79;border-radius:14px;width:calc(100% - 30px);max-width:520px;padding:28px 32px;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#102d28bb}dialog h2{font-size:22px}dialog p{font-size:14px;line-height:1.9}#help-close{color:#284033;background:0 0;border:0;font-size:26px;position:absolute;top:10px;right:12px}.small-label{color:#63826b;font-weight:700}#help-ok{min-width:0;padding:9px 25px;font-size:14px}@media (pointer:coarse){#touch-controls{display:flex}footer{display:none}}@media (width<=700px){#app{padding:10px 8px}.page-heading{margin-bottom:10px;font-size:11px}#game-shell{border-radius:8px}#hud{padding:9px 10px;font-size:14px}.health{letter-spacing:2px;min-width:80px}.stage-label{gap:6px;font-size:10px}.stage-label span{font-size:13px}.hud-right{gap:8px}#pause{width:29px;height:28px;font-size:14px}.intro-copy{border-radius:10px;padding:14px 24px}h1{margin-bottom:6px;font-size:28px}#eyebrow{margin-bottom:6px;font-size:8px}#overlay-text{margin:5px 0 12px;font-size:12px;line-height:1.65}#primary{min-width:160px;padding:9px 20px;font-size:13px}#overlay-hint{margin-top:8px;font-size:8px}#summary{margin-bottom:7px;font-size:14px}#notice{font-size:12px;top:45px}footer{flex-wrap:wrap;font-size:9px}#touch-controls{bottom:7px;left:9px;right:9px}#touch-controls button{border-radius:10px;width:40px;height:40px;font-size:12px}#touch-controls .run{width:35px;height:35px;font-size:10px}#touch-controls .jump{width:47px;height:47px}}@media (height<=500px) and (orientation:landscape){#app{width:min(100vw,177.778svh - 53.3333px);padding:0}.page-heading{margin:4px 0;font-size:10px}footer{display:none}#game-shell{border-radius:0}.page-heading #help{font-size:10px}}@media (width<=700px){#touch-controls{display:flex}}#app{width:min(1260px,100vw);min-width:0}#game{min-width:0}#game canvas{max-width:100%;max-height:100%}@media (width<=700px) and (orientation:portrait){#game-shell{aspect-ratio:16/12}#game{height:calc(100% - 70px)}#overlay{bottom:70px}.intro-copy{padding:10px 18px}h1{font-size:24px}#overlay-text{margin-bottom:9px;font-size:11px}#overlay-hint{margin-top:6px;font-size:8px}#summary{margin-bottom:4px}#hud{padding-top:7px}#notice{font-size:10px;top:38px}#touch-controls{align-items:center;height:57px}#game-shell{background:#1d463d}}@media (height<=500px) and (orientation:landscape){#app{width:min(100vw,177.778svh - 60.4444px)}}.health .pixel-heart{object-fit:contain;width:29px;height:29px;image-rendering:pixelated;margin-right:6px;display:inline-block}.pixel-coin{object-fit:contain;width:30px;height:30px;image-rendering:pixelated;margin-right:-12px}#coin-count:before{content:none}#health-text{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=700px){.health .pixel-heart{width:18px;height:18px;margin-right:4px}.pixel-coin{width:20px;height:20px;margin-right:-4px}}
