.beaker-stage .liquid{background:color-mix(in srgb,var(--mixture-color,var(--lavender)) 43%,#172032);border-top-color:color-mix(in srgb,var(--mixture-color,var(--lavender)) 80%,transparent);box-shadow:inset 0 -15px 28px #14203244,0 0 25px color-mix(in srgb,var(--mixture-color,var(--lavender)) 28%,transparent);transition:height .55s ease,background-color .7s ease,border-color .7s ease,box-shadow .7s ease}
.beaker-stage .liquid:before{background:color-mix(in srgb,var(--mixture-color,var(--lavender)) 65%,#dce9ff20);box-shadow:0 1px 7px color-mix(in srgb,var(--mixture-color,var(--lavender)) 25%,transparent)}
.liquid-colors{position:absolute;inset:0;overflow:hidden;isolation:isolate;border-radius:0 0 16px 16px;pointer-events:none}
.dye-cloud{position:absolute;bottom:-38%;width:105%;height:155%;border-radius:45%;background:radial-gradient(ellipse at 45% 45%,color-mix(in srgb,var(--dye-color) 75%,transparent),transparent 70%);filter:blur(6px);mix-blend-mode:screen;opacity:.48;animation:liquid-current 5.2s ease-in-out infinite alternate;animation-delay:var(--dye-delay);transform-origin:55% 65%;will-change:transform}
.dye-cloud:nth-child(even){animation-direction:alternate-reverse;animation-duration:6.4s;bottom:-15%;opacity:.35}
.beaker-stage.sifting .liquid{background:color-mix(in srgb,var(--mixture-color,var(--lavender)) 50%,#172032);box-shadow:0 0 28px color-mix(in srgb,var(--mixture-color,var(--lavender)) 22%,transparent)}
.sifting .dye-cloud{animation-duration:1.8s}
.beaker-stage .beaker-halo{background:radial-gradient(ellipse,color-mix(in srgb,var(--mixture-color,var(--lavender)) 14%,transparent),transparent 69%);transition:background .7s}
.beaker-bubbles{position:absolute;inset:10px 6px 8px;z-index:4;pointer-events:none;overflow:hidden;border-radius:0 0 18px 18px}
.beaker-bubble{position:absolute;bottom:3px;border:1px solid color-mix(in srgb,var(--bubble-color) 75%,#fff);border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffffffe0 0 9%,transparent 26%),color-mix(in srgb,var(--bubble-color) 18%,transparent);box-shadow:0 0 7px color-mix(in srgb,var(--bubble-color) 42%,transparent),inset 0 0 3px #ffffff44;pointer-events:none;will-change:transform,opacity}
.color-plume{position:absolute;left:50%;top:0;width:76px;height:110px;border-radius:40%;pointer-events:none;background:radial-gradient(ellipse,color-mix(in srgb,var(--dye-color) 90%,transparent),transparent 72%);filter:blur(5px);mix-blend-mode:screen;will-change:transform,opacity}
.beaker-atoms .atom{box-shadow:0 0 8px color-mix(in srgb,var(--atom-color) 24%,transparent),inset 0 0 6px #ffffff09}
.flying-element{box-shadow:0 0 12px #ffffff66,0 0 24px #c2b1ff44}
@keyframes liquid-current{from{transform:translate(-12%,-5%) rotate(-22deg) scale(.9)}to{transform:translate(12%,10%) rotate(38deg) scale(1.2)}}
@media(prefers-reduced-motion:reduce){.dye-cloud{animation:none!important;will-change:auto}.color-plume,.beaker-bubble{display:none}.beaker-stage .liquid{transition:none}}
