*{box-sizing:border-box}html,body{margin:0;height:100%;background:#0e1a2c;overflow:hidden;font-family:system-ui,Segoe UI,Arial,sans-serif}#app{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);overflow:hidden;background:#2aa7d6}#app canvas{display:block;width:100%;height:100%;touch-action:manipulation}.f{font-family:Lilita One,system-ui,sans-serif;letter-spacing:.5px}@keyframes pulse{50%{transform:scale(1.07)}}#hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#logo{position:absolute;left:12px;top:10px;line-height:.86;transform:rotate(-4deg)}#logo .a{font-size:34px;color:#55ecd2;-webkit-text-stroke:6px #1f3f78;paint-order:stroke fill;text-shadow:0 3px 0 #1f3f78}#logo .b{font-size:21px;color:#ffcf3a;-webkit-text-stroke:5px #7a3f12;paint-order:stroke fill;text-shadow:0 3px 0 #7a3f12;margin-left:10px}#prog{position:absolute;right:12px;top:16px;height:32px;width:140px;background:#fff;border-radius:16px;box-shadow:0 3px #0002;display:flex;align-items:center;padding:0 8px 0 4px;gap:6px}#prog .coin{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#fff6c0 0,#fff6c0 18%,#ffd94a 20%,#ffd94a 62%,#e3a21a 64%);box-shadow:inset 0 -2px #b97a10;flex:none}#prog .bar{flex:1;height:14px;background:#e4dcfb;border-radius:7px;position:relative;overflow:hidden}#prog .fill{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(#9b7cff,#6c49d6);border-radius:7px;transition:width .25s}#prog .pct{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:11px;color:#fff;-webkit-text-stroke:3px #3b2a80;paint-order:stroke fill}#cap{position:absolute;transform:translate(-50%,-50%);background:#fff;color:#4b3596;border-radius:12px;padding:2px 10px;font-size:16px;box-shadow:0 3px #0003;transition:transform .12s}#cap.pop{transform:translate(-50%,-50%) scale(1.3)}#tapTxt{position:absolute;left:0;right:0;bottom:26%;text-align:center;font-size:36px;color:#fff;-webkit-text-stroke:7px #3b2a80;paint-order:stroke fill;text-shadow:0 4px 0 #3b2a80;animation:pulse 1s ease-in-out infinite;transition:opacity .3s}#hand{position:absolute;font-size:44px;transform:translate(-20%);transition:opacity .2s;filter:drop-shadow(0 4px 4px #0005);opacity:0}#play{position:absolute;left:12px;bottom:14px;pointer-events:auto;border:0;border-radius:14px;padding:10px 18px 12px;font-size:19px;color:#fff;background:linear-gradient(#7be36c,#3fb63a);box-shadow:0 5px #24862a,0 8px 16px #0004;-webkit-text-stroke:4px #1f6b26;paint-order:stroke fill;cursor:pointer;animation:pulse 1.2s ease-in-out infinite}#hud.won #play{display:none}#win{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:70px 0 120px;opacity:0;transition:opacity .4s}#win.on{opacity:1}#win .rib{font-size:46px;color:#ffd84a;-webkit-text-stroke:8px #3b2a80;paint-order:stroke fill;text-shadow:0 5px 0 #3b2a80;background:linear-gradient(#9b7cff,#6c49d6);padding:6px 34px 10px;border-radius:18px;box-shadow:0 6px #3b2a80;transform:scale(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1)}#win.on .rib{transform:scale(1)}#win .big{pointer-events:auto;border:0;border-radius:20px;padding:14px 40px 18px;font-size:30px;color:#fff;background:linear-gradient(#7be36c,#3fb63a);box-shadow:0 7px #24862a,0 12px 24px #0005;-webkit-text-stroke:5px #1f6b26;paint-order:stroke fill;animation:pulse 1s ease-in-out infinite}#win:not(.on) .big{pointer-events:none}#loading{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#6fd9f2,#2a8fd0);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;transition:opacity .4s;z-index:5}#loading .icon{width:120px;height:120px;border-radius:30px;background:linear-gradient(#ffe29a,#ffb84d);box-shadow:0 8px #c9802a,0 14px 30px #0004;display:grid;place-items:center;font-size:72px}#loading .lb{width:200px;height:16px;background:#fff5;border-radius:8px;overflow:hidden}#loading .lf{height:100%;width:0;background:#fff;border-radius:8px;transition:width 1.1s ease-out}#win .cta{display:flex;flex-direction:column;align-items:center;gap:12px}#win .claim{font-size:19px;color:#fff;-webkit-text-stroke:5px #3b2a80;paint-order:stroke fill;text-align:center;padding:0 20px}#mute{position:absolute;right:12px;bottom:16px;pointer-events:auto;width:44px;height:44px;border:0;border-radius:50%;background:#ffffffd9;font-size:22px;box-shadow:0 3px #0003;cursor:pointer}
