:root{color:#36254b;font-synthesis:none;--ink:#36254b;--gold:#f2cf97;--radius-control:12px;-webkit-tap-highlight-color:transparent;background:#2d1b45;font-family:Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;width:100%;height:100%;margin:0;overflow:hidden}button{color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible{outline-offset:3px;outline:3px solid #6938ca}button:disabled{cursor:default}[hidden]{display:none!important}.icon{flex:none;width:22px;height:22px;display:block}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.game-root{--scene-width:552px;isolation:isolate;width:100%;height:100dvh;padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(9px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));grid-template:auto minmax(0,1fr) auto/minmax(0,1fr);justify-items:center;row-gap:6px;display:grid;position:relative;overflow:hidden}.world-background{--workshop-art:url(../art/workshop-portrait.webp);z-index:-1;pointer-events:none;background:linear-gradient(180deg,#231337a3,#2c194d39 22%,#46275e04 48%,#47295e0d 66%,#26143cb8), radial-gradient(ellipse at 50% 51%,transparent 24%,#2a173f41 100%), var(--workshop-art) center / cover no-repeat, #604088;position:absolute;inset:0}.hud-layer,.gameplay-layer{width:min(100%, var(--scene-width));grid-column:1;min-width:0}.hud-layer{z-index:2;pointer-events:none;position:relative}.hud-layer button{pointer-events:auto}.top-hud{grid-row:1;gap:3px;display:grid}.brand-bar{justify-content:space-between;align-items:center;gap:7px;padding-inline:2px;display:flex}.brand{align-items:center;gap:9px;min-width:0;display:flex}.brand-mark{border:1px solid var(--gold);background:linear-gradient(145deg,#fff4f9,#e7caff 74%);border-radius:12px;flex:none;place-items:center;width:37px;height:37px;display:grid;box-shadow:0 2px #4a2a68,0 3px 10px #2b17465c,inset 0 1px 1px #fff}.brand-mark svg{width:33px;height:33px}.brand h1{color:#fffaf4;letter-spacing:.018em;white-space:nowrap;text-shadow:0 1px 2px #2c144b,0 2px 6px #382350b3;margin:0;font-size:clamp(16px,4.55vw,23px);font-weight:900;line-height:1.18}.header-actions{gap:6px;display:flex}.icon-button{border-radius:var(--radius-control);color:#603f92;background:linear-gradient(175deg,#fffefa,#f4e9ff);border:1px solid #e9d8f2;place-items:center;width:44px;height:44px;padding:0;display:grid;box-shadow:inset 0 1px #fff,0 2px #d6c1e9,0 3px 7px #4d30771c}.icon-button:hover{color:#45246f;background:#fff}.header-actions .icon-button,.help-control{color:#fff2ed;background:linear-gradient(150deg,#9c79b4b5,#482c68ee 80%);border-color:#c3a5d4ad;box-shadow:inset 0 1px #f4d8ff58,0 2px #2e1948c9,0 3px 9px #24123969}.header-actions .icon-button:hover,.help-control:hover{color:#fff9ed;background:#78539e}.header-actions .icon{width:20px;height:20px}.header-actions .icon-button:focus-visible{outline-color:#ffdfa7}.icon-button:active,.tool-button[aria-disabled=false]:active{translate:0 1px}.stage-line{align-items:center;gap:7px;min-height:32px;padding-inline:2px;display:flex}.stage-chip{white-space:nowrap;color:#fff8f8;background:linear-gradient(170deg,#9165c9,#6a429d 81%);border:1px solid #7649aa;border-radius:11px;align-items:center;gap:5px;height:30px;padding:0 9px;font-size:11px;font-weight:800;display:inline-flex;box-shadow:inset 0 1px #dfbbff85,0 2px #553477,0 3px 7px #54337825}.stage-chip .icon{fill:#f9d692;color:#fff1b9;width:14px;height:14px}.stage-chip b{letter-spacing:-.035em;font-variant-numeric:tabular-nums;font-size:19px;line-height:1}.progress{color:#f5e8fa;background:linear-gradient(165deg,#52346dc9,#311a4cd9);border:1px solid #cfb3e46e;border-radius:10px;flex:0 39%;min-width:72px;max-width:170px;margin-left:auto;padding:5px 8px;box-shadow:inset 0 1px #e9c5fa2c,0 2px 5px #27133940}.progress-meta{white-space:nowrap;justify-content:space-between;align-items:baseline;gap:5px;margin-bottom:3px;font-size:10px;font-weight:750;line-height:1;display:flex}.progress-rail{background:#26163e;border:1px solid #c59ae252;border-radius:9px;height:6px;overflow:hidden;box-shadow:inset 0 1px 2px #180b2b5e}.progress-rail span{height:100%;width:var(--progress,0%);border-radius:inherit;background:linear-gradient(90deg,#b682ff,#f0cce9,#ffe0a0);transition:width .25s ease-out;display:block;box-shadow:inset 0 1px #f2deff9c}.progress-label{color:#fff8ee;font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.timer{color:#fff0f8;white-space:nowrap;font-variant-numeric:tabular-nums;background:#4b2c67da;border:1px solid #c2a6d68c;border-radius:9px;align-items:center;gap:4px;padding:6px 7px;font-size:13px;font-weight:850;line-height:1;display:flex}.timer .icon{width:15px;height:15px}.timer.urgent{color:#fff2f1;background:#732649ec;border-color:#fba4bd}.pots{grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;padding-inline:3px;display:grid}.pot{isolation:isolate;flex-direction:column;align-items:center;height:clamp(88px,24vw,121px);display:flex;position:relative}.pot:nth-child(2){--pot-phase:-1.2s}.pot:nth-child(3){--pot-phase:-2.4s}.pot:nth-child(4){--pot-phase:-3.6s}.pot:before{content:"";z-index:-1;background:radial-gradient(#2813409e,#0000 72%);width:95%;height:22%;position:absolute;bottom:2%}.pot-aura{z-index:-1;background:radial-gradient(ellipse at 50% 53%,color-mix(in srgb,var(--pot-color) 35%,transparent),transparent 70%);border-radius:46%;position:absolute;inset:5% -2% 6%}.pot-sprite{aspect-ratio:124/98;place-items:center;width:min(102%,134px);display:grid;position:absolute;bottom:8px}.pot-sprite svg{width:100%;height:100%;display:block}.pot-target{z-index:1;aspect-ratio:1;width:clamp(42px,11.5vw,60px);filter:drop-shadow(0 2px 4px color-mix(in srgb,var(--pot-color) 50%,transparent));place-items:center;display:grid;position:absolute;bottom:clamp(45px,12.3vw,68px)}.pot-target>svg{width:100%;height:100%}.pot:not(.empty) :is(.pot-sprite,.pot-target){animation:pot-float 5.1s var(--pot-phase,0s) ease-in-out infinite}.pot.empty .pot-sprite{opacity:.87}.pot.empty .pot-target{filter:drop-shadow(0 0 7px #e8b6ffba);width:31px;height:31px;bottom:clamp(42px,10.8vw,59px)}.pot.empty .pot-aura{opacity:.65}.pot-progress{background:linear-gradient(#fffefa,#f8ecdf);border:1px solid #e5d4bc;border-radius:10px;justify-content:center;align-items:center;gap:3px;min-width:52px;height:23px;padding:0 7px;line-height:1;display:flex;position:absolute;bottom:0;box-shadow:inset 0 1px #fff,0 2px #d8c3b5,0 3px 5px #4c257d17}.pot-progress i{background:#eee1e9;border:1px solid #d9c3d7;border-radius:2px;width:6px;height:6px;rotate:45deg}.pot-progress i.filled{border-color:color-mix(in srgb,var(--pot-color) 75%,#67385f);background:var(--pot-color);box-shadow:0 0 4px var(--pot-color)}.pot-progress b{color:#422d52;white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:3px;font-size:13px;font-weight:900}.pot-progress em{color:#68536f;font-size:10px;font-style:normal}.pot.empty .pot-progress{background:linear-gradient(#fceccc,#dfbc8b);border-color:#cfa56f;box-shadow:inset 0 1px #fff7e6,0 2px #71486a}.pot.empty .pot-progress b{color:#593452;margin:0;font-size:11px}.cauldron-bubble{transform-box:fill-box;transform-origin:50%;animation:2.5s ease-in-out infinite cauldron-boil}.cauldron-bubble:nth-of-type(2){animation-delay:-.9s}.cauldron-bubble:nth-of-type(3){animation-delay:-1.7s}.cauldron-spark{animation:3.6s ease-in-out infinite cauldron-shimmer}.pot.empty .cauldron-bubble,.pot.empty .cauldron-spark{opacity:0;animation:none}.gameplay-layer{z-index:1;pointer-events:none;touch-action:none;grid-row:2;min-height:0;position:relative;overflow:clip;container-type:size}.board-runes{left:50%;bottom:max(2px, calc(var(--bubble-floor,22px) - 27px));background:radial-gradient(#f2d2ff35,#0000 70%);border:1px solid #fff1db91;border-radius:50%;width:96%;height:clamp(58px,20cqh,116px);position:absolute;translate:-50%;box-shadow:0 0 18px #ffedff45,inset 0 0 20px #fff4}.board-runes i{border:1px solid #fff1e591;border-radius:50%;position:absolute;inset:8% 5%}.board-runes i:nth-child(2){border-style:dashed;border-color:#fff4eab3;inset:17% 11%}.board-runes i:nth-child(3){border-color:#fff6;inset:29% 21%}.board-runes i:nth-child(4){border-color:#fff6;border-radius:0;inset:26% 37%;transform:rotate(45deg)skew(-21deg,-21deg)}.board-runes b{background:#fff0d3;border:1px solid #fff1d8;width:6px;height:6px;position:absolute;top:50%;left:5%;transform:translateY(-50%)rotate(45deg);box-shadow:0 0 7px #ffecd0}.board-runes b:last-child{left:auto;right:5%}.board-spark{color:#ffefd4;opacity:.85;text-shadow:0 0 13px #ffedcf9c;pointer-events:none;font-size:18px;position:absolute}.board-spark.a{top:20%;left:10%}.board-spark.b{font-size:12px;top:26%;right:12%}.board-spark.c{font-size:8px;bottom:31%;left:26%}.board-spark.d{bottom:17%;right:7%}.bubbles{position:absolute;inset:0}.bubble{bottom:calc(var(--bubble-floor,22px) + var(--depth) * var(--row-step,36px) + var(--stagger));left:clamp(calc(var(--diameter) / 2 + 7px), calc(var(--lane) + var(--offset) * 4px), calc(100% - var(--diameter) / 2 - 7px));width:var(--diameter);aspect-ratio:1;isolation:isolate;pointer-events:none;position:absolute;translate:-50%}.bubble-1{--diameter:var(--diameter-small,21.8cqw)}.bubble-2{--diameter:var(--diameter-medium,24cqw)}.bubble-3{--diameter:var(--diameter-large,25cqw)}.bubble-glass{animation:bubble-idle 4.5s var(--phase) ease-in-out infinite;background:radial-gradient(at 27% 18%,#fff8,#0000 31%),radial-gradient(at 83% 68%,#c4f9f877,#0000 42%),radial-gradient(at 21% 78%,#f8b8e764,#0000 34%),radial-gradient(circle at 47% 45%,#f7ecff0a 42%,#dfc7ff3b 62%,#fff8 73%,#aa8dce90 88%);border:1px solid #ede3ff;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 1px 2px #fff,inset 0 -3px 7px #ecdbffc7,inset 3px 0 9px #eec3ff8f,0 4px 9px #4129655c}.bubble-glass:before{content:"";border-top:2px solid #fff9;border-bottom:2px solid #dcfafa99;border-radius:50%;position:absolute;inset:7% 9% 8%;rotate:-29deg}.bubble-glass:after{content:"";background:linear-gradient(90deg,#fff5,#fff 36%,#fff9);border-radius:50%;width:20%;height:8%;position:absolute;top:16%;left:17%;rotate:-36deg}.bubble.behind{opacity:.71;filter:saturate(.64)brightness(.94)}.bubble.frost{opacity:.9;filter:saturate(.8)}.bubble.frost .bubble-glass{background:repeating-linear-gradient(135deg,#0000 0 16px,#e3faff81 17px 19px,#0000 20px 30px),radial-gradient(circle,#e1f8ff,#a7d9f19c);border:2px solid #d2faff}.frost-icon{color:#305676;background:#e1f7ff;border:1px solid #f7fdff;border-radius:8px;place-items:center;width:24px;height:24px;display:grid;position:absolute;bottom:0;right:0}.frost-icon svg{width:14px;height:14px}.frost-icon.paired{pointer-events:auto;cursor:help;border-radius:8px;grid-template-columns:14px 14px;gap:2px;width:36px;padding:3px}.frost-icon b,.blocker-rune{color:#2e5c86;font-size:10px;font-weight:900;line-height:1}.frost-icon b{background:#f4fdff;border:1px solid #8dc6e6;border-radius:4px;place-items:center;width:15px;height:15px;display:grid}.blocker-rune{z-index:3;background:#e2f8ff;border:1px solid #89c5e6;border-radius:6px;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:3px;right:3px;box-shadow:0 0 0 2px #fff9,0 2px 5px #46709b22}.frost-guide{z-index:12;top:var(--guide-top,0px);color:#3c6386;white-space:nowrap;pointer-events:none;background:#f5fcffee;border:1px solid #fff;border-radius:18px;align-items:center;gap:5px;max-width:calc(100% - 16px);padding:6px 9px;font-size:clamp(10px,2.7vw,12px);font-weight:750;display:flex;position:absolute;left:50%;translate:-50%;box-shadow:0 2px 8px #5c7b9920}.frost-guide .icon{width:13px;height:13px}.bubble-occupants{clip-path:circle(50%);position:absolute;inset:0}.bubble-slime{width:var(--hit-width,92%);height:var(--hit-height,92%);left:var(--seat-x,50%);top:var(--seat-y,50%);background:0 0;border:0;border-radius:12%;padding:0;position:absolute;translate:-50% -50%}button.bubble-slime{pointer-events:auto}.bubble-art{left:calc(50% + var(--art-x,0px));top:calc(50% + var(--art-y,0px));width:min(var(--art-target,117cqi), var(--art-fit,103cqi));aspect-ratio:100/96;pointer-events:none;position:absolute;translate:-50% -50%}.bubble-art>svg{filter:drop-shadow(0 2px 2px #38214952);width:100%;height:100%;animation:slime-idle 3.4s var(--phase) ease-in-out infinite;display:block;overflow:visible}.bubble.front .bubble-art>svg{filter:saturate(1.1)drop-shadow(0 2px 3px #38214967)}.bubble{container-type:inline-size}[data-occupants="1"] .bubble-art:is([data-slime-art=green],[data-slime-art=purple]){--art-fit:100cqi;--art-y:2.5cqi}[data-occupants="1"] .bubble-art:is([data-slime-art=blue],[data-slime-art=pink],[data-slime-art=unknown]){--art-fit:108cqi}[data-occupants="1"] .bubble-art[data-slime-art=cyan]{--art-fit:100cqi}[data-occupants="2"]{--hit-width:50%;--hit-height:78%;--art-target:70.2cqi}[data-occupants="2"] .seat-0{--seat-x:25%;--art-x:5cqi;--art-y:-5cqi;--art-fit:65cqi}[data-occupants="2"] .seat-0 .bubble-art:is([data-slime-art=blue],[data-slime-art=yellow]){--art-fit:68cqi}[data-occupants="2"] .seat-0 .bubble-art[data-slime-art=orange]{--art-fit:62cqi}[data-occupants="2"] .seat-1{--seat-x:75%;--art-x:-4.5cqi;--art-y:-1.5cqi;--art-fit:63cqi}[data-occupants="3"]{--hit-width:50%;--hit-height:46%;--art-target:58.8cqi;--art-fit:58.8cqi}[data-occupants="3"] .seat-0{--seat-y:28%;--hit-width:60%;--art-y:2cqi}[data-occupants="3"] .seat-0 .bubble-art:is([data-slime-art=green],[data-slime-art=purple]){--art-fit:56cqi}[data-occupants="3"] .seat-1{--seat-x:25%;--seat-y:74%;--art-x:5cqi;--art-y:-12cqi;--art-fit:57cqi}[data-occupants="3"] .seat-2{--seat-x:75%;--seat-y:74%;--art-x:-5cqi;--art-y:-12cqi;--art-fit:55cqi}.slime-eye{transform-box:fill-box;transform-origin:50%;animation:blink 5.2s var(--phase,-.7s) infinite}@media (hover:hover){button.bubble-slime:hover .bubble-art>svg{animation:none;transform:translateY(-1px)scale(1.025)}}button.bubble-slime:active .bubble-art>svg{animation:none;transform:scale(1.06,.84)}.bubble-slime.hinted:before{content:"";border:2px solid #8a50eb;border-radius:48%;animation:1s ease-in-out infinite alternate ring;position:absolute;inset:-2px;box-shadow:0 0 0 4px #fff9,0 0 22px #a66bff}.coach{z-index:12;left:50%;top:var(--guide-top,0px);color:#fff6f3;white-space:nowrap;pointer-events:none;background:#45275fd9;border:1px solid #e6c4a8ad;border-radius:14px;align-items:center;gap:6px;max-width:calc(100% - 20px);min-height:28px;padding:5px 10px;font-size:clamp(10px,3vw,13px);font-weight:800;display:flex;position:absolute;translate:-50%;box-shadow:inset 0 1px #ead1ff29,0 4px 9px #37214e4f}.coach .icon{fill:#f8ce8f;color:#ffecc9;width:14px;height:14px}.bottom-hud{grid-row:3;padding-inline:4px}.waiting{min-width:0;margin-top:3px;padding-inline:4px}.waiting-head,.waiting-head>div{align-items:center;gap:6px;display:flex}.waiting-head{justify-content:space-between;padding:0 5px 2px}.waiting-head h2{color:#fff6f8;text-shadow:0 1px 2px #2e124a,0 0 7px #281339;margin:0;font-size:13px;font-weight:850;line-height:1.2}.waiting-mark{color:#fff2d1;filter:drop-shadow(0 1px 2px #2e124a)}.waiting-mark .icon{fill:#eac797;width:13px;height:13px}#waiting-count{color:#fff1fc;text-align:center;font-variant-numeric:tabular-nums;background:#492760e6;border:1px solid #dfc0ef8f;border-radius:8px;min-width:43px;padding:3px 6px;font-size:12px;font-weight:850;line-height:1.1;box-shadow:inset 0 1px #e7caff2b,0 2px 4px #26123847}#waiting-count[data-pressure=warning]{color:#84501d;background:#fff0d4;border-color:#eacb93}#waiting-count[data-pressure=critical]{color:#9b2350;background:#fbe7ee;border-color:#f1c8d8}.slots{--tray-height:clamp(32px, 8.9vw, 42px);isolation:isolate;grid-template-columns:repeat(var(--capacity,5), minmax(0, 1fr));gap:6px;padding-inline:8px;display:grid;position:relative}.slots:before{content:"";z-index:-1;pointer-events:none;filter:drop-shadow(0 5px 5px #200f347e);border:0 solid #0000;border-image:url(../art/bottom-ui/tray-frame.webp) 0 96 fill / 0 calc(var(--tray-height) * 1.247) / 0 stretch;position:absolute;inset:0}.slot{--well-height:min(calc(var(--tray-height) - 8px), 40.625cqw);--well-bottom:calc((var(--tray-height) - var(--well-height)) / 2 + 3px);--well-art:url(../art/bottom-ui/tray-slot-empty.webp);min-width:0;height:var(--tray-height);position:relative;container-type:inline-size}.slot.occupied{--well-art:url(../art/bottom-ui/tray-slot-active.webp)}.slot-well,.slot.occupied:after{inset:auto 0 var(--well-bottom);height:var(--well-height);background:var(--well-art) center / contain no-repeat;position:absolute}.slot.occupied .slot-well:after{content:"";background:radial-gradient(#f3cafa55,#0000 73%);position:absolute;inset:38% 15% 21%}.slot.occupied:before{content:"";z-index:1;bottom:calc(var(--well-bottom) + var(--well-height) * .2);background:radial-gradient(#29154dc2,#0000 72%);height:23%;position:absolute;left:23%;right:23%}.slot.occupied:after{content:"";z-index:3;clip-path:inset(86% 0 0)}.slot-seat{z-index:2;inset:-24px 0 var(--well-bottom);position:absolute;overflow:clip}.slot-anchor{left:50%;bottom:calc(var(--well-height) * -.28);aspect-ratio:100/96;transform-origin:50% 86%;width:min(54.6px,95%);position:absolute;translate:-50%}.slot-occupant svg{transform-origin:50% 79%;width:100%;height:100%;animation:2.5s ease-in-out infinite pocket-idle;display:block}.slot:nth-child(2n) .slot-occupant svg{animation-delay:-1.25s}.slot-landing .slot-occupant{animation:.27s ease-out pocket-landing}.slot-landing .slot-well,.slot-landing:after{animation:.29s ease-out pocket-light}.slot-reveal .slot-well{animation:.32s ease-out pocket-reveal}.slots[data-failure-reaction=full]{animation:.46s ease-out tray-recoil}.slots[data-failure-reaction=full]:after{content:"";pointer-events:none;border:1px solid #f9b2d5;border-radius:20px;animation:.56s ease-out both tray-fizzle;position:absolute;inset:0 3px;box-shadow:0 0 13px #e451a7a8,inset 0 0 12px #e451a75c}.slots[data-failure-reaction=full] .occupied .slot-occupant svg{animation:pocket-startled .4s var(--startle-delay,90ms) ease-out both}.slots[data-failure-reaction=full] .occupied:nth-child(odd){--startle-delay:.13s}.timer[data-failure-reaction=timeout]{animation:.57s ease-out both timer-fizzle;position:relative}.timer[data-failure-reaction=timeout]:after{content:"";border-radius:inherit;pointer-events:none;border:1px solid #d2b7fa;animation:.44s ease-out both tray-fizzle;position:absolute;inset:-5px;box-shadow:0 0 9px #bd9cf0}.tool-row{grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:8px;min-width:0;display:grid}.tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.tool-button{--tool-glow:#d1a6fb;--tool-rim:#bb91dd;border-radius:var(--radius-control);background:0 0;border:0;align-content:start;justify-items:center;gap:2px;min-width:0;min-height:65px;padding:1px 2px 2px;display:grid}.tool-button[data-item=hint]{--tool-glow:#ebc076;--tool-rim:#d5ac70}.tool-button[data-item=extra]{--tool-glow:#94dbc5;--tool-rim:#85c2b4}.tool-button[aria-disabled=false]:hover .tool-icon:before{border-color:#fff0d2}.tool-button[aria-disabled=false]:active .tool-icon{scale:.94}.tool-button[aria-disabled=true]{cursor:default}.tool-icon{isolation:isolate;flex:none;place-items:center;width:39px;height:39px;display:grid;position:relative}.tool-icon:before{content:"";z-index:-1;border:1px solid var(--tool-rim);background:radial-gradient(ellipse at 50% 25%,color-mix(in srgb,var(--tool-glow) 53%,#362348),#47265d 70%);border-radius:48%;position:absolute;inset:3px 0 0;box-shadow:inset 0 1px 2px #fce4ff66,0 2px #291637,0 3px 7px #2210365e}.tool-icon>img{object-fit:contain;filter:drop-shadow(0 2px 2px #32164280);width:95%;height:95%;display:block}.tool-button.locked .tool-icon>img{filter:saturate(.68)drop-shadow(0 1px 1px #4a285e22)}.tool-button.used .tool-icon>img{filter:saturate(.58)brightness(.82)}.tool-button.used .tool-icon:before{opacity:.76}.tool-button.item-used-effect .tool-icon{animation:.3s ease-out item-bounce}.tool-button.item-used-effect .tool-icon:after{content:"";clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);background:#ffe3a0;width:15px;height:15px;animation:.32s ease-out both item-glint;position:absolute;top:0;right:-2px}.lock-dot{color:#fff4fa;background:#432955;border:1px solid #e3c7ef;border-radius:6px;place-items:center;width:14px;height:14px;display:grid;position:absolute;top:0;right:-3px}.lock-dot svg{width:10px;height:10px}.tool-text{--name-size:clamp(14px,3.6vw,15px);--note-size:clamp(12px,3.15vw,13px);--text-growth:1px;isolation:isolate;white-space:nowrap;text-shadow:0 1px 2px #170c22,0 0 5px #1d0d2f;justify-items:center;gap:2px;min-width:0;display:grid;position:relative}.tool-text:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#21112b65,#21112b9c);border-radius:8px;position:absolute;inset:-2px -6px}.tool-text strong{color:#fffdf8;font-size:calc(var(--name-size) + var(--text-growth));line-height:calc(var(--name-size) * 1.14);font-weight:950}.tool-text small{color:#faefff;font-size:calc(var(--note-size) + var(--text-growth));line-height:calc(var(--note-size) * 1.14);padding-bottom:1px;font-weight:800}.tool-button:not(.locked,.used) .tool-text small{color:#ffe4ab}.tool-button.used .tool-text small{color:#dfcbe9}.help-control{border-radius:50%;justify-self:end}.help-control .icon{width:19px;height:19px}.effects{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:clip}.fly,.pop-glass,.particle,.match-mascot{place-items:center;display:grid;position:absolute;translate:-50% -50%}.fly svg,.match-mascot svg{width:100%;height:100%}.pop-glass{border:2px solid #fff;border-color:#fff #d0fbff #fce4d3 #fff;border-radius:50%;box-shadow:inset 0 0 15px #e1c9ff,0 0 12px #fff}.particle{color:var(--particle-color,#fff);font-size:var(--particle-size,15px);text-shadow:0 0 5px #fff}.pot[data-incoming]:after{content:"";z-index:2;height:19%;box-shadow:0 0 11px var(--effect-color,#c8a4ff), inset 0 0 8px #fff2ba8f;pointer-events:none;border:2px solid #fff2ca;border-radius:50%;animation:.22s ease-out both pot-receive;position:absolute;inset:auto 14% 36%}.pot[data-incoming] .pot-progress{border-color:#efbb67;box-shadow:0 0 0 2px #ffdb9aa8,0 0 12px #ffe4b692,inset 0 1px #fff}.pot.matching{animation:.51s cubic-bezier(.18,.61,.3,1) both pot-glow}.pot.matching .pot-aura{background:radial-gradient(ellipse at 50% 50%,#fff0bdc0, color-mix(in srgb,var(--effect-color,#d4adff) 65%,transparent) 39%,transparent 73%);animation:.54s ease-out both pot-aura}.pot.matching .cauldron-liquid{animation:.52s ease-out both liquid-flare}.pot.matching[data-match-tier="3"],.pot.matching[data-match-tier="4"]{--match-flare:1.68}.pot.matching[data-final-match]{--match-flare:1.78}.pot[data-clear-resonance] .pot-sprite{animation:.34s ease-out both clear-resonance}.pot[data-clear-resonance] .pot-gem{animation:.34s ease-out both clear-gem}.clear-stream{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.clear-stream path{fill:none;stroke:var(--stream-tint);stroke-linecap:round;stroke-width:1.75px;stroke-dasharray:.24 1;filter:drop-shadow(0 0 4px var(--stream-tint));animation:.34s linear 66ms both clear-stream}.toast{z-index:13;inset-inline:0;color:#fff8ec;text-align:center;pointer-events:none;background:#41265bef;border:1px solid #e3c0b889;border-radius:12px;width:max-content;max-width:calc(100% - 14px);margin-inline:auto;padding:5px 11px;font-size:clamp(11px,3.33vw,13px);font-weight:750;line-height:1.25;position:absolute;bottom:3px;box-shadow:0 3px 12px #24133670}.modal-layer{pointer-events:none;position:absolute;inset:0}dialog{width:min(440px,100% - 28px);max-height:calc(100dvh - max(12px, env(safe-area-inset-top)) - max(12px, env(safe-area-inset-bottom)));color:var(--ink);overscroll-behavior:contain;pointer-events:auto;touch-action:pan-y;background:linear-gradient(145deg,#fff,#f5eaff);border:1px solid #fff;border-radius:24px;padding:22px;box-shadow:0 17px 65px #32134e59}dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#29163c70}dialog h2{margin:2px 0 15px;padding-right:40px;font-size:23px;font-weight:900}.dialog-close{position:absolute;top:11px;right:11px}.dialog-copy{color:#6e557f;margin:0 0 16px;font-size:14px;line-height:1.7}.dialog-actions{gap:9px;margin-top:16px;display:grid}.primary,.secondary,.setting-row{border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:45px;padding:7px 12px;font-weight:850;display:flex}.primary{color:#fff;background:linear-gradient(#9763e4,#7743ca);box-shadow:inset 0 -2px #6a37b8,0 4px 9px #7845b52b}.primary:hover{background:#7743ca}.primary:disabled,.secondary:disabled{opacity:.6}.secondary,.setting-row{color:#69468a;background:#fffdff;border-color:#e5d6f4}.secondary:hover,.setting-row:hover{background:#f1e3ff}.setting-row{justify-content:space-between}.setting-row+.setting-row{margin-top:8px}.setting-row span:first-child{align-items:center;gap:8px;display:flex}.switch{color:#6338a4;text-align:center;background:#ede1fd;border-radius:8px;min-width:63px;padding:4px 6px;font-size:12px}.levels{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.level{color:#69408f;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #e4d4f5;border-radius:10px;place-items:center;min-height:42px;font-weight:850;display:grid}.level:disabled{color:#79668d;background:#f3edf8}.level.current{background:#f3e5ff;border-color:#9d6ae1;box-shadow:inset 0 0 0 1px #9d6ae1}.level.cleared{color:#286960;background:#e4f7ef}.pages{color:#69468a;justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-weight:750;display:flex}.pages button:disabled{opacity:.45}dialog[data-mode=result]{color:#fff5eb;background:radial-gradient(at 50% 5%,#a16fcfba,#0000 57%),linear-gradient(157deg,#573477f5,#2d174df7 63%,#482567fa);border:2px solid #d5ac77;border-radius:30px;width:min(370px,100% - 38px);padding:22px 23px 15px;box-shadow:0 0 0 1px #2a153d,0 0 0 5px #6d4678,0 0 0 6px #b28a67,inset 0 0 0 5px #eec39a21,inset 0 0 38px #d68fff25,0 18px 62px #1a0b2fc9}dialog[data-mode=result][open]{animation:.32s cubic-bezier(.15,.75,.25,1) both result-reveal}dialog[data-mode=result]::backdrop{background:#251436a8}.result{text-align:center;position:relative}.result:before,.result:after{content:"";pointer-events:none;background:linear-gradient(145deg,#d8ad6d,#7c4d81 54%,#5b336c);border:1px solid #ffdb9a;border-radius:5px;width:17px;height:17px;position:absolute;top:-10px;rotate:45deg;box-shadow:inset 0 0 0 2px #a876a1,0 1px 6px #281238}.result:before{left:-11px}.result:after{right:-11px}.result-art{isolation:isolate;width:min(224px,100%);height:116px;margin:0 auto 3px;position:relative}.result-halo{z-index:-1;background:radial-gradient(#ffe0c339,#0000 68%);border:1px solid #ffe4a688;border-radius:50%;position:absolute;inset:5px 27px 7px;box-shadow:0 0 18px #ffc89136,inset 0 0 13px #faadff4d}.result-halo:before{content:"";border:1px dashed #f4c99384;border-radius:50%;position:absolute;inset:7px}.result-spark{color:#ffe4a5;fill:#ffd78c;filter:drop-shadow(0 0 6px #ffc486);position:absolute}.result-spark:first-of-type{width:17px;top:4px;left:31px}.result-spark:nth-of-type(2){width:13px;top:12px;right:37px}.result-spark:nth-of-type(3){width:10px;top:23px;right:14px}.result-mascots{justify-content:center;align-items:end;display:flex;position:absolute;inset:0}.result-mascots svg.slime-sprite{filter:drop-shadow(0 5px 7px #291143a3);width:94px;height:94px}.result.win .result-mascots svg.slime-sprite{animation:.92s ease-in-out 2 cheer}.result.win .result-mascots svg.slime-sprite:nth-child(2){z-index:1;width:108px;height:108px;margin-inline:-13px;animation-delay:.13s}.result.win .result-mascots svg.slime-sprite:is(:first-child,:last-child){width:66px;height:66px;margin-bottom:2px}.result.win .result-mascots svg.slime-sprite:last-child{animation-delay:.26s}.result-stage{color:#ffe1a5;font-variant-numeric:tabular-nums;background:#311748a8;border:1px solid #e5ba805e;border-radius:20px;margin:3px 0 4px;padding:4px 13px;font-size:13px;font-weight:850;display:inline-block}.result h2{color:#fff5d7;text-shadow:0 2px #482162,0 0 17px #ffcd8f5e;margin:4px 0;padding:0;font-size:clamp(23px,7.2vw,31px)}.result-description{color:#f0dcf4;margin:6px 0;font-size:13px}.score{color:#f1d7ed;justify-content:center;gap:12px;margin:13px 0 0;font-size:13px;font-weight:750;display:flex}.score span{background:#24103970;border:1px solid #e6c1e348;border-radius:10px;min-width:88px;padding:6px 9px}.score strong{color:#fff0ca;font-variant-numeric:tabular-nums;font-size:15px}.result .dialog-actions{gap:7px;margin-top:16px}.result .primary{color:#452647;background:linear-gradient(178deg,#fff2c6,#f5cb82 55%,#e6ac5d);border-color:#ffe6aa;min-height:50px;box-shadow:inset 0 1px 1px #fff8db,inset 0 -2px #bd8649,0 3px #7a4a62,0 0 17px #ffcd8452}.result .primary:hover{background:linear-gradient(#fff8de,#f4c37a)}.result .primary:active{translate:0 2px;box-shadow:inset 0 1px 1px #fff8db,inset 0 -2px #bd8649}.result .primary .icon{width:15px;height:15px}.result button:focus-visible{outline:2px solid #fff1c8}.result .secondary{color:#efdcfa;background:0 0;border-color:#0000;min-height:44px;font-size:13px}.result .secondary:hover{background:#fff1}@keyframes bubble-idle{0%,to{transform:scale(1)}50%{transform:scale(.978,1.024)}}@keyframes slime-idle{0%,to{transform:translateY(0)scale(1)}48%{transform:translateY(-2px)scale(.97,1.035)}}@keyframes blink{0%,45%,49%,to{transform:scaleY(1)}47%{transform:scaleY(.12)}}@keyframes pot-glow{0%{scale:1.025 .95}29%{filter:brightness(var(--match-flare,1.46));translate:0 -5px;scale:1.045 1.08}68%{translate:0;scale:1.025 .99}to{filter:none;translate:0;scale:1}}@keyframes pot-receive{0%{opacity:.4;scale:.86}to{opacity:1;scale:1}}@keyframes pot-aura{0%{opacity:.45;scale:.8}34%{opacity:1;scale:1.15}to{opacity:0;scale:1.22}}@keyframes liquid-flare{0%,to{filter:none}26%{filter:brightness(1.85)drop-shadow(0 0 5px #ffefbc)}}@keyframes result-reveal{0%{opacity:0;translate:0 9px;scale:.96}to{opacity:1;translate:0;scale:1}}@keyframes ring{to{box-shadow:0 0 0 5px #fffc,0 0 15px #a66bff}}@keyframes cheer{0%,to{transform:translateY(2px)rotate(-4deg)scale(1.04,.96)}47%{transform:translateY(-9px)rotate(5deg)scale(.96,1.06)}}@keyframes cauldron-boil{0%,to{opacity:.78;transform:translateY(1px)scale(.83)}48%{opacity:.94;transform:translateY(-4px)scale(1.07)}79%{opacity:.25;transform:translateY(-6px)scale(.68)}}@keyframes cauldron-shimmer{0%,to{opacity:.5}46%{opacity:.95}}@keyframes pot-float{0%,to{transform:translateY(0)}49%{transform:translateY(-2px)}}@keyframes pocket-idle{0%,to{transform:none}50%{transform:scale(.98,1.03)}}@keyframes pocket-landing{0%{transform:scale(.96,1.03)}24%{transform:scale(1.1,.83)}58%{transform:scale(.97,1.06)}82%{transform:scale(1.02,.97)}to{transform:none}}@keyframes tray-recoil{0%,to{transform:none}22%{transform:translate(-3px)}39%{transform:translate(3px)}54%{transform:translate(-2px)}70%{transform:translate(1px)}}@keyframes tray-fizzle{0%,to{opacity:0}23%{opacity:.92}50%{opacity:.44}}@keyframes pocket-startled{0%,to{transform:none}23%{transform:translateY(-5px)scale(.94,1.06)}52%{transform:translateY(-2px)scale(.99,1.03)}71%{transform:scale(1.06,.92)}}@keyframes timer-fizzle{0%{filter:brightness()}19%{filter:brightness(1.22)}to{filter:saturate(.48)brightness(.76)}}@keyframes clear-resonance{0%,to{filter:none}29%{filter:brightness(1.56)drop-shadow(0 0 8px #ffe0a3b0)}}@keyframes clear-gem{0%,to{filter:none;scale:1}29%{filter:brightness(1.95)drop-shadow(0 0 6px #ffdf8c)drop-shadow(0 0 9px #c994fb);scale:1.12}}@keyframes clear-stream{0%{opacity:0;stroke-dashoffset:.24px}20%,78%{opacity:.92}to{opacity:0;stroke-dashoffset:-1px}}@keyframes pocket-light{0%,to{filter:none}34%{filter:brightness(1.27)drop-shadow(0 0 5px #f5caff)}}@keyframes pocket-reveal{0%{opacity:0;filter:brightness(1.7);transform:scale(.28)}62%{opacity:1;filter:brightness(1.2);transform:scale(1.09)}to{filter:none;transform:none}}@keyframes item-bounce{0%{transform:scale(.92,.86)}44%{transform:translateY(-3px)scale(1.09)}to{transform:none}}@keyframes item-glint{0%{opacity:0;transform:scale(.35)rotate(-12deg)}42%{opacity:1;transform:scale(1.16)}to{opacity:0;transform:translate(5px,-5px)scale(.45)rotate(18deg)}}@media (width>=650px) and (orientation:landscape){.world-background{--workshop-art:url(../art/workshop.webp)}.game-root{padding-block:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-bottom))}.bottom-hud{padding-inline:12px}}@media (width<=395px){.brand{gap:7px}.slots{gap:5px}}@media (height<=630px){.game-root{padding-block:max(5px, env(safe-area-inset-top)) max(6px, env(safe-area-inset-bottom));row-gap:4px}.top-hud{gap:2px}.stage-line{min-height:31px}.stage-chip{height:27px}.stage-chip b{font-size:17px}.progress{padding-block:4px}.timer{padding-block:5px}.pot{height:72px}.pot-sprite{width:min(102%,100px);bottom:5px}.pot-target{width:38px;bottom:37px}.pot.empty .pot-target{width:25px;height:25px;bottom:31px}.pot-progress{height:20px}.waiting{margin-top:2px}.waiting-head{padding-bottom:1px}.tool-row{gap:5px}.tools{gap:2px}.tool-button{justify-content:center;align-items:center;gap:2px;min-height:44px;padding:1px 0;display:flex}.tool-icon{width:25px;height:25px}.lock-dot{width:12px;height:12px;top:-2px;right:-1px}.tool-text{--name-size:clamp(12px,3.55vw,14px);--note-size:12px;--text-growth:.25px;justify-items:start}}@media (orientation:landscape) and (width>=720px) and (height<=510px){.game-root{--scene-width:448px}.top-hud{grid-template-columns:minmax(300px,.9fr) minmax(0,1.1fr);align-items:center;column-gap:13px;width:min(100%,766px)}.brand-bar{grid-area:1/1}.stage-line{grid-area:2/1}.pots{grid-area:1/2/3}.waiting{grid-area:3/2}}@media (width<=345px){.game-root{padding-inline:max(6px, env(safe-area-inset-left)) max(6px, env(safe-area-inset-right))}.header-actions{gap:4px}.brand-mark{width:33px;height:33px}.brand h1{font-size:15px}.tool-button{gap:3px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
