*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:#e8ecf3;background:radial-gradient(1200px 700px at 50% -10%,#2a3550 0%,#1b2230 55%,#10141d 100%) fixed;min-height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}button{font-family:inherit}.pwa-toast{z-index:1000;background:#1a2030;border:1px solid #ffffff1f;border-radius:.6rem;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;display:flex;position:fixed;bottom:1rem;right:1rem;box-shadow:0 8px 24px #0006}.pwa-toast button{color:#0b0f17;cursor:pointer;background:#ffffffeb;border:0;border-radius:.4rem;padding:.35rem .7rem;font-weight:600}.pwa-toast .pwa-dismiss{color:#ffffffb3;background:0 0;font-weight:400}.app{max-width:1100px;margin:0 auto;padding:24px 24px 64px}header{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 20px;display:flex}h1{letter-spacing:.02em;background:linear-gradient(120deg,#54a8f7,#8d4fd9,#ee5fa7);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.5rem}.stats{gap:8px;display:flex}.chip{color:#cfd6e2;background:#ffffff14;border:1px solid #ffffff1f;border-radius:999px;padding:5px 12px;font-size:.85rem}.toolbar{flex-wrap:wrap;flex-basis:100%;justify-content:center;gap:8px;display:flex}.btn{color:#e8ecf3;cursor:pointer;background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;padding:7px 14px;font-size:.9rem;transition:background .15s,transform .1s}.btn:hover:not(:disabled){background:#ffffff29}.btn:active:not(:disabled){transform:scale(.96)}.btn:disabled{opacity:.35;cursor:default}.btn.primary{background:linear-gradient(120deg,#3d8ee6,#7a4ad0);border-color:#0000;padding:10px 22px;font-weight:600}.btn.primary:hover{filter:brightness(1.15)}.btn.small{padding:4px 10px;font-size:.8rem}.btn.danger{color:#f0a3a8;border-color:#e2434b73}.btn.danger:hover:not(:disabled){background:#e2434b2e}.btn.active{background:#f7d44c40;border-color:#f7d44c99}.chip.coins{color:#f7d44c}.powerup-tray{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.btn.powerup{padding:6px 12px;font-size:.95rem}.btn.powerup.inert{opacity:.4;border-style:dashed}.btn.powerup.inert:hover{background:#ffffff14}.btn.powerup.inert:focus-visible{opacity:.75}.cheat-bar{background:#f7d44c0f;border:1px dashed #f7d44c80;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;display:flex}.cheat-label{letter-spacing:.12em;color:#f7d44c;font-size:.75rem;font-weight:700}.hint-slot{height:0;position:relative}.targeting-hint{text-align:center;color:#f7d44c;font-size:.95rem;position:absolute;top:14px;left:0;right:0}.targeting-hint.inert-note{color:#a9c3e6;max-width:34rem;margin-left:auto;margin-right:auto;line-height:1.35}.board.targeting-mode .tube{opacity:.35}.board.targeting-mode .tube.targeting{opacity:1;cursor:crosshair}.board.targeting-mode .tube.targeting .tube-glass{border-color:#f7d44ccc;box-shadow:0 0 14px #f7d44c59}.board{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:56px 30px;padding-top:72px;display:flex}.tube-slot{cursor:pointer;color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;display:block}.tube-slot:focus-visible{outline-offset:4px;border-radius:14px;outline:3px solid #f7d44c}.tube{cursor:pointer;-webkit-tap-highlight-color:transparent;width:56px;height:200px;transition:transform .34s cubic-bezier(.4,.1,.3,1);position:relative}.tube.selected{transform:translateY(-16px)}.tube.selected:before{content:"";pointer-events:none;z-index:4;border:2px solid #fff9;border-radius:11px;position:absolute;inset:-3px}@keyframes tube-wiggle{0%,to{transform:translateY(-16px)rotate(0)}15%{transform:translateY(-16px)rotate(-7deg)}30%{transform:translateY(-16px)rotate(6deg)}45%{transform:translateY(-16px)rotate(-5deg)}60%{transform:translateY(-16px)rotate(4deg)}75%{transform:translateY(-16px)rotate(-2deg)}}.tube.wiggle{animation:.42s tube-wiggle}@keyframes tube-nudge{0%,to{transform:rotate(0)}14%{transform:rotate(-5deg)}32%{transform:rotate(4deg)}50%{transform:rotate(-3deg)}68%{transform:rotate(2deg)}84%{transform:rotate(-1deg)}}.tube.nudge{animation:.8s ease-in-out tube-nudge}@media (prefers-reduced-motion:reduce){@keyframes tube-nudge{0%,to{filter:none}50%{filter:brightness(1.3)drop-shadow(0 0 9px #b4e1ffd9)}}}.tube.queued{transform:translateY(-8px)}.tube.queued:after{content:"";pointer-events:none;z-index:4;border:2px dashed #78dca0e6;border-radius:14px;position:absolute;inset:-7px}.tube.cursor:after{content:"";pointer-events:none;z-index:4;border:2px solid #f7d44cd9;border-radius:14px;position:absolute;inset:-7px}.tube.pouring{z-index:10;cursor:default;pointer-events:none}.tube-glass{background:#ffffff0d;border:2px solid #ffffff4d;border-top-color:#ffffff73;border-radius:8px 8px 28px 28px;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 12px #ffffff14,0 8px 18px #00000059}.tube-glass:after{content:"";pointer-events:none;z-index:2;background:#ffffff29;border-radius:6px;width:7px;position:absolute;top:4px;bottom:8px;left:7px}.tube.complete .tube-glass{border-color:#ffffffb3;animation:.5s complete-pop;box-shadow:inset 0 0 12px #ffffff1f,0 0 18px #ffffff47}@keyframes complete-pop{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.liquid-tilt{transition:transform .34s cubic-bezier(.4,.1,.3,1);position:absolute;inset:0}.color-mark{pointer-events:none;width:62%;max-width:22px;height:62%;max-height:22px;overflow:visible}.layer{background-image:linear-gradient(#ffffff38,#00000024);justify-content:center;align-items:center;transition:top .5s,height .5s;display:flex;position:absolute;overflow:hidden}.hidden-layer{color:#ffffff8c;background-color:#353c49;background-image:linear-gradient(#ffffff14,#0003);font-size:1rem;font-weight:700}.ghost-layer{opacity:.55;color:#ffffffd9;outline-offset:-4px;outline:2px dashed #ffffff59;font-size:.9rem;font-weight:700;animation:.3s ghost-in}@keyframes ghost-in{0%{opacity:0}to{opacity:.55}}.lock-face.xray{opacity:.3;align-items:flex-start;padding-top:4px;font-size:1.1rem}.tube-cap{z-index:3;background:linear-gradient(#aeb6c2,#7d8694);border:1px solid #00000059;border-radius:6px;height:18px;position:absolute;top:-10px;left:-4px;right:-4px;box-shadow:0 2px 5px #0006}.cap-banner{z-index:3;border:1px solid #0000004d;border-radius:4px;height:20px;position:absolute;top:42%;left:-7px;right:-7px;box-shadow:0 2px 6px #00000059}.cap-banner:before,.cap-banner:after{content:"";background:#00000040;width:3px;position:absolute;top:3px;bottom:3px}.cap-banner:before{left:2px}.cap-banner:after{right:2px}.tube.capped,.tube.locked{cursor:not-allowed}.tube.capped .tube-glass{filter:saturate(.55)brightness(.8)}.tube.locked .tube-glass{background:linear-gradient(#2a303c,#1c212b);border-color:#ffffff2e}.lock-face{opacity:.85;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:absolute;inset:0}.key-icon{filter:drop-shadow(0 1px 2px #0009);font-size:1rem}.only-flag{border-top:9px solid var(--flag-color);filter:drop-shadow(0 1px 2px #00000080);z-index:3;border-bottom:9px solid #0000;border-left:0;border-right:16px solid #0000;width:0;height:0;position:absolute;top:2px;left:100%}.only-flag:before{content:"";background:#ffffff80;width:2px;height:30px;position:absolute;top:-11px;left:-2px}.bottle-vial .tube-cap{border-radius:8px 8px 5px 5px;height:20px;top:-1px;left:12px;right:12px}.bottle-vial .cap-banner{left:-1px;right:-1px}.bottle-lab .tube-cap{border-radius:6px 6px 3px 3px;height:16px;top:-3px;left:8px;right:8px}.bottle-lab .cap-banner{left:4px;right:4px}.bottle-flask .tube-cap{border-radius:8px 8px 4px 4px;height:22px;top:-2px;left:13px;right:13px}.bottle-flask .cap-banner{left:-4px;right:-4px}.tube.just-opened{animation:.7s just-opened}@keyframes just-opened{0%{transform:scale(1)}30%{transform:scale(1.12)translateY(-6px)}to{transform:scale(1)}}.stream-svg{pointer-events:none;z-index:9;width:100%;height:100%;position:fixed;inset:0;overflow:visible}.stream-body{filter:brightness(1.1);animation:.18s ease-out stream-in}@keyframes stream-in{0%{transform:scaleY(0)}to{transform:scaleY(1)}}.splash-ripple{fill:#fff6;animation:.55s ease-out infinite splash-ripple}@keyframes splash-ripple{0%{opacity:.7;transform:scale(.5)}to{opacity:0;transform:scale(1.4)}}.splash-drop{animation:.5s ease-out infinite splash-drop}.splash-drop.drop-l{--hop-x:-8px}.splash-drop.drop-r{--hop-x:9px;animation-delay:.2s}@keyframes splash-drop{0%{opacity:.9;transform:translate(0)}60%{opacity:.7}to{transform:translate(var(--hop-x), -10px);opacity:0}}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#0a0d1499;justify-content:center;align-items:center;animation:.25s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.overlay-card{text-align:center;background:#1d2433;border:1px solid #ffffff1f;border-radius:16px;padding:32px 44px;animation:.3s cubic-bezier(.34,1.4,.64,1) card-pop;box-shadow:0 20px 60px #00000080}@keyframes card-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.overlay-card h2{margin:0 0 8px;font-size:1.4rem}.overlay-card p{color:#aab4c4;margin:0 0 20px}.teaser{color:#cfd6e2;max-width:280px}.teaser strong{color:#f7d44c}.reward-line{color:#f7d44c!important}.overlay-card.shop{min-width:360px;max-height:82vh;overflow-y:auto}.shop-list{margin-bottom:14px}.shop-item{text-align:left;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:16px;margin-bottom:4px;padding:12px 0;display:flex}.shop-info{flex-direction:column;gap:2px;display:flex}.shop-info span{color:#aab4c4;font-size:.85rem}.shop-info .shop-rules{color:#7e8a97;font-size:.78rem}.shop-info .owned{color:#7e8a97;font-size:.8rem;font-weight:400}.achievement-toast{z-index:200;background:linear-gradient(135deg,#2a2415,#1d2433);border:1px solid #f7d44c73;border-radius:14px;align-items:center;gap:14px;min-width:240px;max-width:min(92vw,380px);padding:14px 20px;animation:.4s cubic-bezier(.34,1.4,.64,1) achievement-in;display:flex;position:fixed;top:20px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #0000008c}@keyframes achievement-in{0%{opacity:0;transform:translate(-50%,-24px)}to{opacity:1;transform:translate(-50%)}}.achievement-icon{filter:drop-shadow(0 0 6px #f7d44c80);font-size:1.9rem;line-height:1}.achievement-body{flex-direction:column;gap:2px;min-width:0;display:flex}.achievement-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#f7d44c;font-size:.7rem;font-weight:700}.achievement-name{color:#f3f6fb;font-size:1.05rem;font-weight:700}.achievement-desc{color:#aab4c4;font-size:.85rem}.overlay-card.awards{min-width:360px;max-width:440px;max-height:82vh;overflow-y:auto}.awards-list{text-align:left;flex-direction:column;gap:8px;margin:14px 0;display:flex}.award-item{background:#f7d44c14;border:1px solid #f7d44c4d;border-radius:10px;align-items:center;gap:14px;padding:10px 12px;display:flex}.award-item.locked{opacity:.65;background:#ffffff08;border-color:#ffffff14}.award-icon{flex-shrink:0;font-size:1.5rem;line-height:1}.award-info{flex-direction:column;gap:2px;min-width:0;display:flex}.award-info strong{color:#f3f6fb;font-size:.95rem}.award-info span{color:#aab4c4;font-size:.82rem}.overlay-card.name-modal{min-width:320px;max-width:380px}.name-input{color:#e8ecf3;text-align:center;background:#11161f;border:1px solid #ffffff29;border-radius:8px;width:100%;margin:14px 0;padding:10px 12px;font-size:1rem}.name-input:focus{border-color:#f7d44c99;outline:none}.name-actions{justify-content:center;gap:10px;display:flex}.overlay-card.confirm-modal{min-width:280px;max-width:340px}.confirm-actions{justify-content:center;gap:10px;margin-top:18px;display:flex}.overlay-card.stuck-modal{min-width:300px;max-width:420px}.stuck-modal .confirm-actions .btn{white-space:nowrap}.overlay-card.leaderboard{min-width:360px;max-width:420px;max-height:82vh;overflow-y:auto}.lb-tabs{gap:6px;margin:14px 0 10px;display:flex}.lb-tab{color:#aab4c4;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;flex:1;padding:7px 6px;font-size:.8rem;font-weight:600}.lb-tab.active{color:#f3f6fb;background:#f7d44c24;border-color:#f7d44c73}.lb-level{justify-content:center;align-items:center;gap:14px;margin-bottom:10px;font-weight:600;display:flex}.lb-list{flex-direction:column;gap:4px;min-height:80px;margin-bottom:12px;display:flex}.lb-row{text-align:left;background:#ffffff08;border-radius:8px;align-items:center;gap:12px;padding:8px 12px;display:flex}.lb-row.me{background:#f7d44c1f;border:1px solid #f7d44c59}.lb-rank{color:#7e8a97;text-align:right;width:1.5rem;font-weight:700}.lb-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.lb-value{color:#f3f6fb;font-weight:700}.lb-empty{color:#7e8a97;text-align:center;padding:20px 0}.lb-status{color:#8b94a3;font-size:.78rem}.chip-button{font:inherit;cursor:pointer;color:inherit}.chip-button:hover:not(:disabled){background:#f7d44c1a;border-color:#f7d44c8c}.chip-button:disabled{cursor:default;opacity:.6}.overlay-card.level-picker{min-width:320px;max-width:440px;max-height:82vh;overflow-y:auto}.level-grid{grid-template-columns:repeat(auto-fill,minmax(48px,1fr));gap:8px;margin:16px 0;display:grid}.level-cell{aspect-ratio:1;color:#e8ecf3;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;font-size:1rem;font-weight:600}.level-cell:hover{background:#f7d44c1f;border-color:#f7d44c80}.level-cell.current{color:#fff;background:#f7d44c2e;border-color:#f7d44c99}.tube-glass.svg-glass{box-shadow:none;background:0 0;border-color:#0000}.tube-glass.svg-glass:after{display:none}.tube.tube-jar{width:84px;height:400px}.style-grid{justify-content:center;gap:14px;margin:18px 0;display:flex}.style-option{color:inherit;font:inherit;cursor:pointer;background:#ffffff0a;border:2px solid #ffffff26;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:10px 8px 8px;font-size:.8rem;display:flex}.styles-subhead{margin:18px 0 4px;font-size:1rem}.styles-note{color:#aab4c4;margin:0 0 10px;font-size:.85rem}.btn.toggle.on{background:#f7d44c1f;border-color:#f7d44c}.style-option.active{background:#f7d44c14;border-color:#f7d44c}.style-preview{pointer-events:none;width:56px;height:130px;overflow:hidden}.style-preview .tube{transform-origin:top;cursor:default;transform:scale(.62)}@media (width<=560px){.app{--tube-scale:.714;padding:10px 8px 28px}h1{font-size:1.15rem}header{gap:8px 12px}.chip{padding:4px 10px;font-size:.78rem}.toolbar{gap:6px}.btn{padding:6px 11px;font-size:.82rem}.powerup-tray{gap:6px;margin-top:8px}.btn.powerup{padding:5px 10px;font-size:.88rem}.board{gap:26px 8px;padding-top:44px}.tube{width:calc(56px * var(--tube-scale));height:calc(200px * var(--tube-scale))}.tube.tube-jar{width:calc(84px * var(--tube-scale));height:calc(400px * var(--tube-scale))}.tube-glass:not(.svg-glass){width:56px;height:200px;transform:scale(var(--tube-scale));transform-origin:0 0;inset:0 auto auto 0}.tube-slot{padding:0 2px}}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.win-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.share-note{color:#8fe0a6;margin:10px 0 0;font-size:.85rem}.chip.daily-chip{background:#f7d44c1a;border-color:#f7d44c66}.chip.zen-chip{color:#9fd8c8;background:#78c8b41f;border-color:#78c8b46b}.chip.mystery-chip{background:#8d4fd924;border-color:#8d4fd980}.chip.lost-chip{color:#f0b48a;background:#f0915a21;border-color:#f0915a73}.stars{letter-spacing:4px;color:#f7d44c;margin:6px 0 0;font-size:1.6rem}.stars-best{letter-spacing:normal;color:#aab4c4;margin-top:2px;font-size:.8rem;display:block}.level-cell{line-height:1.1;position:relative}.cell-stars{letter-spacing:1px;color:#f7d44c;height:.7em;font-size:.6rem;display:block}
