*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#b7ded7;color:#153b36;font-family:Arial,sans-serif;letter-spacing:0}canvas{display:block;width:100%;height:100%}#world{position:fixed;inset:0}header{position:fixed;top:22px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:start;pointer-events:none}small{font-size:10px;font-weight:bold;letter-spacing:2px}h1{font-size:34px;margin:6px 0}h1 span{display:block;font-size:14px;font-weight:normal;margin-top:4px}button{font:inherit;cursor:pointer;border:1px solid #ffffff80;border-radius:6px;background:#fffefaed;color:#153b36;touch-action:none;pointer-events:auto}button:hover{background:white}button:focus-visible{outline:3px solid #1b8577}#pause{width:44px;height:44px;font-weight:bold}aside{position:fixed;left:28px;top:145px;width:170px;font-size:12px;font-weight:bold}.bar{height:8px;background:#fff9;margin:12px 0;border-radius:4px;overflow:hidden}#health{display:block;height:100%;width:100%;background:#e65676;transition:width .15s}#count{font-weight:normal}nav{position:fixed;bottom:26px;left:50%;transform:translateX(-50%);display:flex;gap:8px}nav button{width:112px;height:54px;display:flex;align-items:center;justify-content:center;gap:7px;font-size:18px}nav span{font-size:13px}kbd{font:10px Arial;opacity:.5}.active{border:2px solid #1b8577;background:#fff;box-shadow:0 3px 0 #1b8577}#overlay{position:fixed;inset:0;background:#163d36aa;backdrop-filter:blur(6px);color:white;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:24px}#overlay[hidden]{display:none}h2{font-size:36px;margin:0}#continue{padding:14px 30px;margin-top:15px}#touch{position:fixed;bottom:100px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:end;pointer-events:none}.pad{display:grid;grid-template-columns:repeat(3,40px);gap:4px}.pad button{height:40px}.pad button:first-child{grid-column:2}.pad button:nth-child(2){grid-column:1}.shoot{width:60px;height:60px;font-size:30px;border-radius:50%}@media(min-width:800px) and (pointer:fine){#touch{display:none}}@media(max-width:600px){header{top:16px;left:16px;right:16px}h1{font-size:27px}h1 span{font-size:12px}aside{top:120px;left:16px;width:145px}nav{bottom:18px;gap:5px}nav button{width:80px;height:52px}kbd{display:none}nav span{font-size:11px}}
