.balloon-screen{max-width:1060px;margin:0 auto;padding:8px 26px 22px}.balloon-screen[hidden]{display:none}.balloon-top{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 4px 12px}.balloon-top h1{font-size:clamp(28px,4vw,43px);color:#5864b4}.balloon-score{min-width:280px;text-align:right}.balloon-score>span{font-size:21px;font-weight:900;color:#536293}.balloon-progress{height:22px;width:280px;padding:4px;background:#fff;border:2px solid #9ecae4;border-radius:20px;box-shadow:0 3px 0 #8db8d0;margin-top:7px;overflow:hidden}.balloon-progress i{display:block;width:0;height:100%;border-radius:14px;background:linear-gradient(90deg,#ffbc4a,#ffde60);transition:width .35s}.balloon-field{position:relative;isolation:isolate;height:min(68dvh,650px);min-height:470px;overflow:hidden;border:7px solid white;border-radius:38px;background:linear-gradient(#91dafb 0,#caefff 66%,#bde6a4 67%,#78c571 100%);box-shadow:0 8px 0 #8ebed0;touch-action:manipulation}.sky-cloud{z-index:-2;background:#fff9;box-shadow:45px -25px 0 -2px #fff9,86px 0 0 -9px #fff9}.cloud-a{left:5%;top:14%;animation:cloud-drift 13s ease-in-out infinite alternate}.cloud-b{right:14%;top:28%;transform:scale(.7);animation:cloud-drift 17s ease-in-out infinite alternate-reverse}.sky-hills{position:absolute;z-index:-1;left:-5%;right:-5%;bottom:-9%;height:35%;border-radius:50% 50% 0 0;background:#62b862;box-shadow:300px -25px 0 #78c96d}.pop-balloon{--balloon:#ef5968;position:absolute;left:var(--x);bottom:-140px;width:clamp(72px,10vw,104px);height:clamp(92px,13vw,130px);padding:0;background:transparent;animation:balloon-rise var(--speed) linear infinite;animation-delay:var(--delay);touch-action:manipulation;z-index:2}.pop-balloon:before{content:'';position:absolute;inset:0 4px 23px;border-radius:50% 50% 46% 46%;background:var(--balloon);box-shadow:inset -13px -15px #0002,inset 15px 11px #fff6,0 5px 9px #36648222}.pop-balloon:after{content:'';position:absolute;left:50%;top:calc(100% - 25px);width:2px;height:42px;background:#5d7185}.pop-balloon .knot{position:absolute;left:calc(50% - 7px);bottom:18px;border-left:7px solid transparent;border-right:7px solid transparent;border-top:12px solid var(--balloon)}.pop-balloon.gold:before{background:linear-gradient(135deg,#fff3a6,#eaaa22 48%,#ffe881);box-shadow:inset -12px -14px #b2722233,inset 14px 10px #fff9,0 0 20px #ffd741}.pop-balloon.sparkle:before{background:linear-gradient(135deg,#ff7eb8,#9e72ea 45%,#54dbea 72%,#fff18b);box-shadow:inset -12px -14px #572a8730,inset 14px 10px #fff9,0 0 24px #fff}.pop-balloon.sparkle .shine,.pop-balloon.gold .shine{display:block;position:absolute;z-index:2;inset:15px 12px 34px;background:radial-gradient(circle at 20% 20%,white 0 3px,transparent 4px),radial-gradient(circle at 75% 45%,white 0 4px,transparent 5px),radial-gradient(circle at 40% 75%,#fff9 0 3px,transparent 4px);animation:shimmer 1.1s ease-in-out infinite alternate}.pop-balloon.wrong{animation:balloon-rise var(--speed) linear infinite,wrong-wiggle .35s ease}.pop-balloon.popping{animation:balloon-pop .28s ease forwards!important;pointer-events:none}.pop-burst{position:absolute;z-index:5;left:var(--x);top:var(--y);font-size:44px;animation:surprise .8s ease forwards;pointer-events:none}.target-card{position:absolute;z-index:8;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;background:#fffffff0;border:4px solid white;border-radius:24px;padding:9px 12px 9px 18px;box-shadow:0 5px 0 #83b4cf;color:#596a8d;font-size:15px;font-weight:900;letter-spacing:1px}.target-card strong{display:flex;align-items:center;gap:10px;min-width:150px;border-radius:16px;padding:8px 14px;background:#f5f7ff;color:#33466e;font-size:21px}.target-card i{width:34px;height:34px;border-radius:50%;background:var(--target);box-shadow:inset -5px -5px #0002,inset 5px 5px #fff6}.balloon-message{text-align:center;font-weight:900;color:#55728d;margin:10px 0;font-size:16px}.balloon-win{position:fixed;inset:0;z-index:90;background:#34587977;backdrop-filter:blur(5px);display:grid;place-items:center;padding:15px}.balloon-win[hidden]{display:none}.balloon-win-card{position:relative;overflow:hidden;text-align:center;width:min(560px,96vw);max-height:94dvh;overflow-y:auto;background:#fff9d8;border:6px solid white;border-radius:38px;padding:30px;box-shadow:0 10px 0 #a8cee0}.balloon-win-card h2{font-size:clamp(45px,8vw,68px);color:#5b5aad;margin:5px}.win-balloons{height:105px;position:relative;width:230px;margin:auto}.win-balloons i{width:65px;height:80px;top:5px}.win-balloons i:nth-child(1){left:10px;background:#ff6475}.win-balloons i:nth-child(2){left:82px;background:#ffd14c;top:-3px}.win-balloons i:nth-child(3){right:10px;background:#65c789}.balloon-reward{margin:4px auto 16px;padding:12px;background:#fff;border-radius:20px}.balloon-reward h3{margin:0;color:#8259a0}.balloon-reward p{margin:4px;color:#65708c}.balloon-reward-art{display:flex;justify-content:center;gap:8px}.balloon-reward-art .sticker{width:80px;height:80px}.balloon-confetti i{position:absolute;top:-20px;width:10px;height:16px;animation:fall 3s linear infinite}.balloon-win-card .secondary{font-size:18px;font-weight:900}.balloon-win-card .primary{margin-top:5px}.balloon-field.paused .pop-balloon{animation-play-state:paused}
@keyframes balloon-rise{from{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-50vh) rotate(4deg)}to{transform:translateY(-90vh) rotate(-3deg)}}@keyframes balloon-pop{50%{transform:scale(1.25)}to{transform:scale(.1);opacity:0}}@keyframes wrong-wiggle{25%{margin-left:-10px}50%{margin-left:10px}75%{margin-left:-6px}}@keyframes surprise{0%{transform:translate(-50%,-20%) scale(.3);opacity:0}35%{transform:translate(-50%,-70%) scale(1.2);opacity:1}100%{transform:translate(-50%,-130%) scale(.8);opacity:0}}@keyframes shimmer{to{filter:brightness(1.35);transform:rotate(8deg)}}@keyframes cloud-drift{to{translate:40px 8px}}
@media(max-width:760px){.balloon-screen{padding:3px 10px 12px}.balloon-top{align-items:center;margin-bottom:8px}.balloon-kicker{font-size:10px}.balloon-top h1{font-size:25px}.balloon-score{min-width:120px}.balloon-score>span{font-size:16px}.balloon-progress{width:120px;height:17px;margin-top:4px}.balloon-field{height:calc(100dvh - 260px);min-height:430px;border-radius:27px;border-width:4px}.pop-balloon{width:74px;height:96px}.target-card{bottom:13px;padding:7px 8px 7px 12px;gap:7px;font-size:12px}.target-card strong{min-width:122px;font-size:17px;padding:6px 9px}.target-card i{width:29px;height:29px}.balloon-message{font-size:13px;margin:7px}.balloon-win-card{padding:23px 16px}.balloon-win-card h2{font-size:47px}}
.balloon-score .balloon-bonus{display:block;font-size:14px;color:#8163aa;margin-top:2px}.balloon-reward button{background:#e6d4ff;color:#684d8c;border-radius:14px;padding:9px 13px;font-weight:900;margin-top:6px;min-height:44px}#balloon-reward-art{display:flex;justify-content:center;gap:8px;flex-wrap:wrap}#balloon-reward-art .sticker{width:80px;height:80px}
@media(min-width:761px) and (max-height:800px){.balloon-field{height:calc(100dvh - 310px);min-height:360px}.target-card{bottom:72px}}
@media(prefers-reduced-motion:reduce){.pop-balloon{animation-duration:18s}.sky-cloud{animation:none}}

/* Keep two simultaneous taps in the play area from becoming a page gesture. */
#balloon-field,.pop-balloon{touch-action:none}
