:root{--bg-deep: #0a1535;--bg-mid: #0d1b40;--accent: #5bb6ff;--accent-2: #b06bff;--gold: #ffd166;--pink: #ff3b6b;--green: #3cb371;--text: #ffffff;--bottle-w: clamp(64px, 16vw, 96px);--bottle-h: calc(var(--bottle-w) * 3)}*{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}img,svg{-webkit-user-drag:none;user-drag:none;pointer-events:auto}html,body,#root{height:100%;overscroll-behavior:none;touch-action:manipulation}button{font-family:inherit;cursor:pointer}.background{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(ellipse at 50% -30%,#1b3270 0%,transparent 65%),linear-gradient(180deg,var(--bg-deep) 0%,var(--bg-mid) 100%);overflow:hidden}.bg-glow{position:absolute;top:-20%;left:50%;transform:translate(-50%);width:100%;max-width:800px;height:80%;background:radial-gradient(ellipse at 50% 30%,rgba(91,182,255,.18),transparent 70%);pointer-events:none}.bg-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.bg-star{position:absolute;background:#fff;border-radius:50%;opacity:.5;animation:starTwinkle ease-in-out infinite}@keyframes starTwinkle{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.8;transform:scale(1.5)}}.bg-silhouette{position:absolute;bottom:0;left:0;width:100%;height:160px;pointer-events:none}.play-area{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;align-items:center;justify-content:center;padding:120px 14px 140px;overflow:hidden}.tube-grid{position:relative;display:grid;grid-template-columns:repeat(var(--cols, 4),var(--bottle-w));gap:clamp(14px,3.5vw,26px) clamp(10px,2.5vw,18px);justify-content:center;align-items:end;max-width:100%}.bottle{position:relative;width:var(--bottle-w);height:var(--bottle-h);cursor:pointer;transform-origin:50% 100%;filter:drop-shadow(0 8px 16px rgba(0,0,0,.45));will-change:transform,filter}.bottle-svg{width:100%;height:100%;overflow:visible}.bottle:active{filter:drop-shadow(0 4px 10px rgba(0,0,0,.45)) brightness(1.05)}.bottle-selected{filter:drop-shadow(0 14px 24px rgba(91,182,255,.55)) drop-shadow(0 0 18px rgba(91,182,255,.4))}.bottle-pouring{z-index:5;filter:drop-shadow(0 18px 30px rgba(0,0,0,.55))}.bottle-received{animation:bottleBounce .4s ease-out}@keyframes bottleBounce{0%{transform:translateY(0) scale(1)}35%{transform:translateY(3px) scale(.97,1.05)}70%{transform:translateY(-3px) scale(1.02,.98)}to{transform:translateY(0) scale(1)}}.bottle-hint-from{animation:hintFrom 1.05s ease-in-out infinite}.bottle-hint-to{animation:hintTo 1.05s ease-in-out infinite}@keyframes hintFrom{0%,to{filter:drop-shadow(0 8px 16px rgba(0,0,0,.45))}50%{filter:drop-shadow(0 12px 22px rgba(255,209,102,.6)) drop-shadow(0 0 18px rgba(255,209,102,.6))}}@keyframes hintTo{0%,to{filter:drop-shadow(0 8px 16px rgba(0,0,0,.45))}50%{filter:drop-shadow(0 12px 22px rgba(91,182,255,.6)) drop-shadow(0 0 18px rgba(91,182,255,.55))}}.bottle-complete{filter:drop-shadow(0 10px 22px rgba(0,0,0,.45)) drop-shadow(0 0 16px rgba(255,209,102,.45))}.bottle-check{position:absolute;top:-8px;right:-4px;width:28px;height:28px;background:linear-gradient(135deg,var(--gold),#ff8c00);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #ffd16680;animation:checkPop .5s cubic-bezier(.16,1,.3,1);z-index:6}@keyframes checkPop{0%{transform:scale(0) rotate(-30deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.pour-stream{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none;width:100vw;height:100vh}.hud{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;display:flex;flex-direction:column;justify-content:space-between;padding:env(safe-area-inset-top,16px) 14px env(safe-area-inset-bottom,18px)}.hud-top{display:flex;justify-content:space-between;align-items:center;gap:12px;pointer-events:auto}.hud-center{text-align:center;background:linear-gradient(180deg,#3a4880,#1f2a55);padding:10px 26px 12px;border-radius:20px;border:2px solid rgba(120,150,220,.35);box-shadow:0 4px #131a3f,0 6px 14px #00000080,inset 0 2px #ffffff2e}.hud-level{font-size:17px;font-weight:900;letter-spacing:2px;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.4)}.hud-level-total{opacity:.6;font-weight:800;color:var(--gold)}.hud-moves{font-size:10px;font-weight:800;letter-spacing:2px;opacity:.7;margin-top:1px;text-shadow:0 1px 0 rgba(0,0,0,.3)}.icon-btn{width:48px;height:48px;border-radius:14px;background:linear-gradient(180deg,#3a4880,#1f2a55);border:2px solid rgba(120,150,220,.35);color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px #131a3f,0 6px 14px #00000080,inset 0 1px #ffffff2e;transition:transform .08s ease,box-shadow .08s ease}.icon-btn:active{transform:translateY(3px);box-shadow:0 1px #131a3f,0 2px 8px #0006,inset 0 1px #ffffff2e}.hud-bottom{display:flex;justify-content:center;gap:12px;pointer-events:auto}.action-btn{position:relative;background:linear-gradient(180deg,#3a4880,#1f2a55);border:2px solid rgba(120,150,220,.35);color:#fff;border-radius:18px;padding:10px 16px 13px;min-width:84px;display:flex;flex-direction:column;align-items:center;font-family:inherit;box-shadow:0 5px #131a3f,0 8px 16px #00000080,inset 0 2px #ffffff2e;transition:transform .08s ease,box-shadow .08s ease}.action-btn:active{transform:translateY(4px);box-shadow:0 1px #131a3f,0 3px 10px #0006,inset 0 2px #ffffff2e}.action-btn .action-icon{font-size:22px;line-height:1;filter:drop-shadow(0 2px 0 rgba(0,0,0,.35))}.action-btn .action-label{font-size:10px;font-weight:800;letter-spacing:2px;margin-top:4px;text-shadow:0 1px 0 rgba(0,0,0,.4)}.action-btn.action-hint{background:linear-gradient(180deg,#ffd97a,#d68b1a);border-color:#b6700a;box-shadow:0 5px #844f00,0 8px 16px #ffaf0059,inset 0 2px #ffffff73;color:#4a2700}.action-btn.action-hint:active{box-shadow:0 1px #844f00,0 3px 10px #ffaf004d,inset 0 2px #ffffff73}.action-btn.action-hint .action-label{text-shadow:0 1px 0 rgba(255,255,255,.25)}.action-badge{position:absolute;top:-8px;right:-8px;background:linear-gradient(180deg,#5bb6ff,#2d7fbe);color:#fff;font-size:11px;font-weight:900;padding:3px 7px;border-radius:12px;border:2px solid #0a1535;min-width:20px;text-align:center;box-shadow:0 2px #1f4d75,0 4px 8px #0006;text-shadow:0 1px 0 rgba(0,0,0,.3)}.ad-badge{background:linear-gradient(180deg,#ffd166,#ff8c00);color:#4a2700;box-shadow:0 2px #b6700a,0 4px 8px #ffaf0066;text-shadow:0 1px 0 rgba(255,255,255,.3)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.menu-logo{text-align:center;margin-bottom:36px;position:relative;z-index:2}.menu-bottles{display:flex;justify-content:center;gap:8px;margin-bottom:18px}.menu-bottle{display:inline-block}.menu-title{font-size:clamp(38px,11vw,60px);font-weight:900;letter-spacing:3px;color:#fff;margin:0;-webkit-text-stroke:1.5px rgba(20,40,80,.85);text-shadow:0 4px 0 #1f5b9a,0 6px 0 rgba(0,0,0,.45),0 0 30px rgba(91,182,255,.55)}.menu-sub{font-size:16px;font-weight:900;letter-spacing:8px;margin:0;color:#ffe56a;text-shadow:0 3px 0 #a85a00,0 5px 0 rgba(0,0,0,.4)}.menu-stat-row{display:flex;gap:16px;margin-bottom:30px;position:relative;z-index:2}.menu-stat{background:linear-gradient(180deg,#3a4880,#1f2a55);border:2px solid rgba(120,150,220,.35);border-radius:20px;padding:14px 24px;text-align:center;box-shadow:0 5px #131a3f,0 8px 16px #00000080,inset 0 2px #ffffff2e}.menu-stat-value{font-size:28px;font-weight:900;color:#ffe56a;text-shadow:0 3px 0 #a85a00,0 5px 0 rgba(0,0,0,.4),0 0 18px rgba(255,230,100,.45)}.menu-stat-label{font-size:10px;font-weight:800;letter-spacing:3px;opacity:.7;margin-top:2px;text-shadow:0 1px 0 rgba(0,0,0,.3)}.menu-stat-of{font-size:16px;font-weight:800;opacity:.55;color:#fffc;text-shadow:0 2px 0 rgba(0,0,0,.3);margin-left:3px}.primary-btn{background:linear-gradient(180deg,#65e078,#34c759,#2baf4c);border:3px solid #1f7d35;color:#fff;font-weight:900;font-size:19px;letter-spacing:3px;padding:14px 50px 18px;border-radius:20px;box-shadow:0 7px #156628,0 10px 22px #00000080,inset 0 2px #ffffff8c;text-shadow:0 2px 0 rgba(20,80,20,.55);transition:transform .08s ease,box-shadow .08s ease;margin-bottom:12px;position:relative;z-index:2}.primary-btn:active{transform:translateY(5px);box-shadow:0 2px #156628,0 4px 12px #0006,inset 0 2px #ffffff8c}.secondary-btn{background:linear-gradient(180deg,#6dbcff,#3d96e5,#2d7fc4);border:2.5px solid #1f5b9a;color:#fff;font-size:13px;letter-spacing:2px;padding:10px 24px 13px;border-radius:16px;font-weight:900;box-shadow:0 5px #15406e,0 7px 14px #00000073,inset 0 2px #ffffff73;text-shadow:0 2px 0 rgba(20,60,100,.45);transition:transform .08s ease,box-shadow .08s ease;position:relative;z-index:2}.secondary-btn:active{transform:translateY(4px);box-shadow:0 1px #15406e,0 3px 9px #00000059,inset 0 2px #ffffff73}.menu-hint{position:absolute;bottom:28px;font-size:11px;letter-spacing:2px;opacity:.45}.overlay.end{background:radial-gradient(ellipse at center,#000a1e8c,#000000bf);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.end-card{background:linear-gradient(180deg,#1c2658,#0e1635);border:3px solid rgba(120,150,220,.4);border-radius:30px;padding:30px 28px 24px;text-align:center;max-width:360px;width:100%;box-shadow:0 9px #141e46f2,0 18px 60px #000000a6,inset 0 2px #ffffff26;position:relative;z-index:2;animation:cardPop .5s cubic-bezier(.16,1,.3,1)}@keyframes cardPop{0%{opacity:0;transform:scale(.7) translateY(40px)}60%{transform:scale(1.04) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}.end-title{margin:0 0 14px;font-size:26px;font-weight:900;letter-spacing:3px;color:#ffe56a;text-shadow:0 3px 0 #a85a00,0 5px 0 rgba(0,0,0,.35),0 0 20px rgba(255,230,100,.6)}.stars{margin:12px 0 20px;font-size:56px;display:flex;justify-content:center;gap:10px}.star{color:#ffffff24;filter:drop-shadow(0 4px 10px rgba(0,0,0,.4));transition:all .4s}.star.lit{color:#ffe56a;text-shadow:0 0 24px rgba(255,230,100,1),0 0 48px rgba(255,230,100,.5),0 4px 0 #a85a00,0 6px 0 rgba(0,0,0,.3);animation:starPop .5s cubic-bezier(.16,1,.3,1) backwards}.star.lit:nth-child(1){animation-delay:.2s}.star.lit:nth-child(2){animation-delay:.4s}.star.lit:nth-child(3){animation-delay:.6s}@keyframes starPop{0%{transform:scale(0) rotate(-90deg);opacity:0}60%{transform:scale(1.3) rotate(0);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.end-stats{display:flex;justify-content:space-around;margin:16px 0;padding:14px 16px;background:linear-gradient(180deg,#0a1028b3,#050a1cd9);border:2px solid rgba(120,150,220,.25);border-radius:18px;box-shadow:inset 0 2px 6px #0006,inset 0 -1px #ffffff0f}.stat{display:flex;flex-direction:column;align-items:center}.stat-label{font-size:10px;font-weight:800;letter-spacing:2px;opacity:.65}.stat-value{font-size:24px;font-weight:900;margin-top:4px;color:#fff;text-shadow:0 2px 0 rgba(0,0,0,.5)}.stat-value.gold{color:#ffe56a;text-shadow:0 2px 0 #a85a00,0 0 18px rgba(255,230,100,.55)}.new-best{background:linear-gradient(180deg,#ffe56a,#ffb81f,#f4860c);border:2.5px solid #a85a00;color:#4a2700;font-weight:900;font-size:12px;letter-spacing:3px;padding:7px 20px 9px;border-radius:50px;display:inline-block;margin:0 0 14px;text-shadow:0 1px 0 rgba(255,255,255,.4);box-shadow:0 4px #844700,0 6px 14px #ffaf008c;animation:bestGlow 1.5s ease-in-out infinite alternate}@keyframes bestGlow{0%{box-shadow:0 4px #844700,0 6px 14px #ffaf0066}to{box-shadow:0 4px #844700,0 6px 24px #ffaf00d9}}.rewarded-btn{background:linear-gradient(180deg,#ffe56a,#ffb81f,#f4860c);border:2.5px solid #a85a00;color:#4a2700;font-size:13px;font-weight:900;letter-spacing:1.5px;padding:11px 18px 14px;border-radius:18px;width:100%;margin-bottom:14px;box-shadow:0 6px #844700,0 9px 18px #ffaf0073,inset 0 2px #ffffff8c;text-shadow:0 1px 0 rgba(255,255,255,.4);transition:transform .08s ease,box-shadow .08s ease;animation:rewardedPulse 1.8s ease-in-out infinite;position:relative}.rewarded-btn:active{transform:translateY(4px);box-shadow:0 2px #844700,0 4px 10px #ffaf0059,inset 0 2px #ffffff8c}@keyframes rewardedPulse{0%,to{box-shadow:0 6px #844700,0 9px 18px #ffaf0073,inset 0 2px #ffffff8c}50%{box-shadow:0 6px #844700,0 9px 28px #ffaf00d9,inset 0 2px #ffffff8c}}.end-actions{display:flex;justify-content:center;gap:10px;margin-top:12px}.confetti{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;top:-10%;border-radius:2px;animation:confettiFall linear forwards;transform-origin:center}@keyframes confettiFall{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--drift),110vh) rotate(var(--rot));opacity:0}}.ad-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000e6;display:flex;flex-direction:column;align-items:center;justify-content:center}.ad-spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.12);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.ad-text{margin-top:14px;font-size:11px;letter-spacing:4px;opacity:.7}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;overflow:hidden}.splash-bottles{display:flex;justify-content:center;align-items:flex-end;gap:10px;margin-bottom:28px;position:relative;z-index:2}.splash-bottle{display:inline-block;filter:drop-shadow(0 10px 18px rgba(0,0,0,.45))}.splash-title{font-size:clamp(40px,12vw,64px);font-weight:900;letter-spacing:4px;color:#fff;margin:0;position:relative;z-index:2;-webkit-text-stroke:1.5px rgba(20,40,80,.85);text-shadow:0 5px 0 #1f5b9a,0 8px 0 rgba(0,0,0,.5),0 0 36px rgba(91,182,255,.6)}.splash-sub{font-size:20px;font-weight:900;color:#ffe56a;margin:2px 0 0;position:relative;z-index:2;text-shadow:0 3px 0 #a85a00,0 5px 0 rgba(0,0,0,.45)}.splash-spark{position:absolute;color:var(--gold);font-size:18px;pointer-events:none;text-shadow:0 0 12px rgba(255,209,102,.9);z-index:1}.splash-loading{position:absolute;bottom:64px;display:flex;gap:8px;z-index:2}.splash-loading .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px #5bb6ffb3;animation:dotBounce 1s ease-in-out infinite}@keyframes dotBounce{0%,80%,to{transform:translateY(0) scale(.8);opacity:.4}40%{transform:translateY(-10px) scale(1);opacity:1}}@media (max-height: 720px){:root{--bottle-w: clamp(58px, 14vw, 86px)}.hud{padding:env(safe-area-inset-top,10px) 12px env(safe-area-inset-bottom,12px)}.play-area{padding:96px 12px 120px}}@media (max-height: 560px){:root{--bottle-w: clamp(50px, 12vw, 70px)}}
