*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#87ceeb;font-family:Trebuchet MS,system-ui,sans-serif;-webkit-user-select:none;user-select:none}#gamable-game-zone{position:absolute;inset:0;overflow:hidden;touch-action:none}#gamable-game-zone canvas{display:block;width:100%;height:100%;touch-action:none}#ui{position:absolute;inset:0;pointer-events:none}#hud{position:absolute;top:calc(10px + env(safe-area-inset-top));left:10px;right:10px;display:flex;gap:8px;align-items:flex-start}#pill-coins{background:#0c1220a8;color:#ffe08a;font-weight:700;font-size:clamp(15px,3.6vmin,21px);padding:9px 15px;border-radius:999px;white-space:nowrap;display:flex;align-items:center;gap:7px}.coin-dot{display:inline-block;width:.9em;height:.9em;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffeaa2,#efab1d);box-shadow:inset 0 0 0 .14em #78500073}#pill-job{flex:1;background:#0c1220a8;color:#eaf2ff;padding:9px 14px 11px;border-radius:16px;font-size:clamp(13px,3.3vmin,18px);font-weight:600;line-height:1.3}#dbg{display:none}#job-bar{height:6px;border-radius:3px;background:#ffffff2e;margin-top:6px;overflow:hidden}#job-bar i{display:block;height:100%;width:100%;background:#7ee787;border-radius:3px;transition:width .1s linear}#toast{position:absolute;top:19%;left:50%;transform:translate(-50%,-10px);background:#080c18d1;color:#fff;padding:9px 18px;border-radius:999px;font-weight:700;font-size:clamp(12px,3vmin,18px);opacity:0;transition:opacity .25s,transform .25s;max-width:90%;text-align:center}#toast.show{opacity:1;transform:translate(-50%)}#prompt{position:absolute;bottom:calc(clamp(96px,20vmin,126px) + 26px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.6);font-weight:700;font-size:clamp(12px,2.9vmin,17px);text-align:center;width:70%}#joy{position:absolute;left:calc(16px + env(safe-area-inset-left));bottom:calc(16px + env(safe-area-inset-bottom));width:clamp(112px,24vmin,150px);height:clamp(112px,24vmin,150px);border-radius:50%;background:radial-gradient(circle at 50% 50%,#ffffff38,#ffffff12);border:2px solid rgba(255,255,255,.45);pointer-events:auto;touch-action:none}#joy-knob{position:absolute;left:50%;top:50%;width:46%;height:46%;margin:-23% 0 0 -23%;border-radius:50%;background:#ffffffc7;box-shadow:0 3px 10px #00000059}#act{position:absolute;right:calc(20px + env(safe-area-inset-right));bottom:calc(26px + env(safe-area-inset-bottom));width:clamp(84px,18vmin,116px);height:clamp(84px,18vmin,116px);border-radius:50%;border:3px solid rgba(255,255,255,.7);background:#ff7a40f0;color:#fff;font-weight:800;font-size:clamp(12px,2.7vmin,16px);letter-spacing:.5px;pointer-events:auto;touch-action:none;font-family:inherit;box-shadow:0 4px 14px #0000004d}#act.off{opacity:.34}#title{position:absolute;inset:0;background:linear-gradient(180deg,#0a101eb3,#0a101ee6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#fff;text-align:center;padding:24px;pointer-events:auto}#title h1{margin:0;font-size:clamp(28px,9vmin,64px);letter-spacing:2px;color:#ffe08a;text-shadow:0 4px 18px rgba(0,0,0,.55)}#title p{margin:0;font-size:clamp(14px,3.4vmin,22px);opacity:.92}#title .hint{margin-top:10px;font-size:clamp(13px,3.2vmin,20px);background:#ffffff26;padding:8px 18px;border-radius:999px;animation:pulse 1.6s infinite}#title .controls{margin-top:14px;font-size:clamp(11px,2.6vmin,15px);opacity:.78;max-width:430px;line-height:1.55}@keyframes pulse{0%,to{opacity:.75}50%{opacity:1}}#end{position:absolute;inset:0;background:#080c18b8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#fff;text-align:center;padding:24px;pointer-events:auto}#end.hidden,#title.hidden{display:none}#end h2{margin:0;font-size:clamp(24px,7vmin,48px);color:#ffb4a2}#end p{margin:0;opacity:.88;font-size:clamp(13px,3vmin,18px)}#end .btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:6px}#end button{font-family:inherit;font-size:clamp(14px,3.2vmin,20px);font-weight:800;padding:12px 22px;border-radius:999px;border:none;background:#ffb703;color:#2b2d42;pointer-events:auto}#end button.secondary{background:#ffffff38;color:#fff}
