*{box-sizing:border-box}body{margin:0;background:#f6e8df;color:#674a3c;font-family:system-ui,"Microsoft YaHei",sans-serif}main{max-width:460px;min-height:100svh;margin:auto;padding:max(26px,env(safe-area-inset-top)) 20px max(24px,env(safe-area-inset-bottom));text-align:center;background:#fffaf4}h1{font-size:clamp(24px,7vw,32px);margin:12px 0 24px;letter-spacing:2px}.small{font-size:12px;color:#a48473;letter-spacing:2px}#hint{font-size:15px}.stage{position:relative;height:390px;margin:0 auto 24px;max-width:390px;background:#fffaf4;border-bottom:4px solid #d5b39c}.ground{position:absolute;bottom:10px;left:15%;width:70%;height:22px;background:#ead1c1;border-radius:50%}#actor{position:absolute;bottom:14px;left:50%;width:250px;height:240px;padding:0;border:0;background:none;transform:translateX(-50%);z-index:2;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer;transform-origin:50% 100%}canvas{width:100%;height:100%;image-rendering:pixelated;pointer-events:none}#bubble{position:absolute;top:10px;left:4%;width:92%;padding:16px 14px;background:#fffdf8;border:3px solid #a77b61;box-shadow:4px 4px #ead2c0;font-size:17px;line-height:1.6;animation:pop .18s ease-out;z-index:3}#sign{position:absolute;left:32%;top:62%;width:36%;font-size:12px;line-height:1.25;color:#513425;font-weight:bold;pointer-events:none}#restart{padding:10px 25px;background:#f5d5cc;border:2px solid #b68a71;box-shadow:3px 3px #e1bcaa;color:inherit;font:inherit;cursor:pointer}button:focus-visible{outline:3px solid #a07659;outline-offset:4px}#debug{text-align:left;margin:25px 0;font-size:12px;color:#9b6251;line-height:1.6}#actor.playing{animation:drop .24s ease-out}#actor.pray{animation:drop .24s ease-out,sway .65s .24s infinite}#actor.cry{animation:drop .24s ease-out,shake .13s .24s infinite}#actor.bow{animation:bow .4s ease-out}#actor.sign #sign{animation:pop .25s ease-out}@keyframes pop{from{opacity:0;scale:.8}to{opacity:1;scale:1}}@keyframes drop{0%{translate:0 -18px}65%{translate:0 3px}100%{translate:0 0}}@keyframes sway{50%{rotate:2deg}}@keyframes shake{50%{translate:2px 0}}@keyframes bow{from{rotate:-4deg}to{rotate:0deg}}@media(max-height:700px){.stage{height:330px}h1{margin-bottom:14px}main{padding-top:15px}}@media(prefers-reduced-motion:reduce){*{animation:none!important}}


