/* Koye · Battle V3 vízi dallam / vízsárkány VFX */
/* Every water layer inherits the caster's palette, including allied shields. */
[data-koye-theme="alap"] { --kw-deep:initial; --kw-water:initial; --kw-light:initial; --kw-foam:initial; }
[data-koye-theme="halloween"] { --kw-deep:#093D32; --kw-water:#22E5BB; --kw-light:#22E5BB; --kw-foam:#A7FFE7; --kw-ornament:#F97425; }
[data-koye-theme="vip"] { --kw-deep:#926119; --kw-water:#E5B750; --kw-light:#F7E7CE; --kw-foam:#FFF8E5; --kw-ornament:#FFD46A; }
[data-koye-theme="kristaly"] { --kw-deep:#383F6A; --kw-water:#8DA7E7; --kw-light:#FEBAF4; --kw-foam:#FFF8FF; --kw-ornament:#E8D6B6; }
[data-koye-theme="elegans"] { --kw-deep:#10362A; --kw-water:#18d392; --kw-light:#00FFE4; --kw-foam:#FFFFE2; --kw-ornament:#E7BF70; }
.koye-energy-flight{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.koye-liquid-volume{stroke:var(--kw-deep,#074565);stroke-width:1.5;stroke-linejoin:round}
.koye-liquid-etch{fill:none;stroke:var(--kw-foam,#d5faff);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.2}
.koye-liquid-refraction{fill:none;stroke:var(--kw-light,#8ae9f2);stroke-width:5;opacity:.5;stroke-linecap:round}
.koye-liquid-belly{fill:none;stroke:var(--kw-deep,#023755);stroke-width:6;opacity:.55;stroke-linecap:round}
.koye-liquid-foam{fill:none;stroke:var(--kw-foam,#e2ffff);stroke-width:2;stroke-dasharray:9 5 2 8 16 7;stroke-linecap:round;opacity:.9}
.koye-liquid-drop{stroke:var(--kw-light,#a1ebf5);stroke-width:.6}
.koye-liquid-caustics{fill:none;stroke:var(--kw-light,#a1e9ef);stroke-width:1.2;stroke-linecap:round;opacity:.35}
.koye-liquid-froth{fill:none;stroke:var(--kw-foam,#ecffff);stroke-width:2.4;stroke-linecap:round;opacity:.9}
.koye-dragon-scales{fill:none;stroke:var(--kw-light,#a2e7eb);stroke-width:.9;opacity:.65}
.koye-dragon-dorsal{stroke:var(--kw-light,#b3f2f6);stroke-width:.9;stroke-linejoin:round}
.koye-dragon-head [data-dragon-part="jaw"]{transform-origin:-56px 13px;animation:koyeDragonJaw .8s ease-in-out infinite alternate}
.koye-dragon-head [data-dragon-part="whiskers"]{transform-origin:-18px 4px;animation:koyeDragonWhiskers 1s ease-in-out infinite alternate}
@keyframes koyeDragonJaw{to{transform:rotate(7deg)}}
@keyframes koyeDragonWhiskers{to{transform:skewY(6deg)}}
.koye-vfx-stage{position:fixed;z-index:99940;inset:0;overflow:hidden;pointer-events:none}
.koye-vfx-stage *{box-sizing:border-box}

/* Minden képességet megelőző furulyázás. */
.koye-flute-cast{position:absolute;width:132px;height:132px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 13px var(--kw-water,#4ce8ff));animation:koyeCastLift .78s cubic-bezier(.18,.72,.22,1) both}
.koye-flute-cast>img{position:absolute;z-index:3;inset:22px;width:88px;height:88px;object-fit:contain;filter:drop-shadow(0 0 7px var(--kw-foam,#ffffff)) drop-shadow(0 0 16px var(--kw-water,#28cfff));animation:koyeFlutePlay .62s ease-in-out both}
.koye-flute-cast__halo{position:absolute;inset:17px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--kw-foam,#d9ffff) 52.157%,transparent) 0 10%,color-mix(in srgb,var(--kw-water,#37dfff) 25.882%,transparent) 24%,transparent 67%);box-shadow:0 0 34px color-mix(in srgb,var(--kw-water,#25cfff) 54.902%,transparent);animation:koyeFluteHalo .9s ease-out both}
.koye-flute-cast__ring{position:absolute;inset:7px;border:2px solid var(--kw-foam,#bffcff);border-color:var(--kw-foam,#bffcff) transparent;border-radius:50%;animation:koyeFluteCastRing .9s ease-out both}
.koye-flute-cast__ring.is-b{inset:20px;border-width:1px;animation-delay:.1s;animation-direction:reverse}
.koye-flute-cast.is-intense{width:154px;height:154px}.koye-flute-cast.is-intense>img{inset:24px;width:106px;height:106px}
.koye-flute-cast__notes b{--angle:calc(var(--i)*60deg);position:absolute;z-index:4;left:57px;top:57px;color:var(--kw-foam,#eaffff);font:900 22px/1 serif;text-shadow:0 0 6px var(--kw-foam,#ffffff),0 0 13px var(--kw-water,#22dfff);opacity:0;animation:koyeCastNote 1.15s calc(var(--i)*.055s) ease-out both}

/* 109 – vízből szőtt dallam, hangjegyek és fonalak. */
.koye-melody-vfx{position:absolute;z-index:62;inset:-8px;overflow:visible;border-radius:inherit;pointer-events:none;filter:drop-shadow(0 0 8px var(--kw-water,#24cfff))}
.koye-melody-vfx__water{position:absolute;inset:4% 2%;border:2px solid var(--kw-light,#74efff);border-color:color-mix(in srgb,var(--kw-light,#74efff) 40.000%,transparent) color-mix(in srgb,var(--kw-water,#189fe6) 60.000%,transparent);border-radius:48% 52% 46% 54%;box-shadow:inset 0 0 28px color-mix(in srgb,var(--kw-water,#0a9de3) 29.020%,transparent),0 0 20px color-mix(in srgb,var(--kw-water,#3ee7ff) 47.059%,transparent);animation:koyeMelodyWater 1.65s ease-in-out infinite alternate}
.koye-melody-vfx__thread{position:absolute;left:-5%;width:110%;height:24%;border-top:3px solid var(--kw-light,#8df6ff);border-radius:50%;filter:drop-shadow(0 0 5px var(--kw-water,#22cfff));opacity:.75;animation:koyeMelodyThread 1.8s ease-in-out infinite alternate}
.koye-melody-vfx__thread.is-a{top:19%;transform:rotate(7deg)}.koye-melody-vfx__thread.is-b{top:47%;transform:rotate(-5deg);animation-delay:-.7s}.koye-melody-vfx__thread.is-c{top:72%;transform:rotate(4deg);animation-delay:-1.25s}
.koye-melody-vfx__notes b{position:absolute;left:var(--x);top:var(--y);color:var(--kw-foam,#d8ffff);font:900 22px/1 serif;text-shadow:0 0 5px var(--kw-foam,#ffffff),0 0 12px var(--kw-water,#29dcff);animation:koyeMelodyNote 1.55s calc(var(--i)*-.17s) ease-in-out infinite}
.koye-melody-vfx.is-upgraded{filter:drop-shadow(0 0 12px var(--kw-light,#65f5ff)) drop-shadow(0 0 22px var(--kw-deep,#087bff))}
.koye-melody-link{position:absolute;height:34px;transform-origin:0 50%!important;opacity:0;animation:koyeMelodyLink 1.35s var(--koye-link-delay) ease-out both}
.koye-melody-link>i{position:absolute;left:0;right:0;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,var(--kw-water,#36dfff),var(--kw-foam,#ecffff),var(--kw-deep,#198dff),transparent);box-shadow:0 0 8px var(--kw-water,#35dfff)}
.koye-melody-link>i:nth-child(1){top:8px;transform:skewY(3deg)}.koye-melody-link>i:nth-child(2){top:17px;transform:skewY(-4deg)}.koye-melody-link>i:nth-child(3){top:26px;transform:skewY(2deg)}
.koye-melody-link>b{position:absolute;left:0;top:4px;color:var(--kw-foam,#dfffff);font:900 20px/1 serif;text-shadow:0 0 8px var(--kw-water,#4de8ff);animation:koyeLinkNote 1.15s calc(var(--koye-link-delay) + var(--note-delay,0ms)) ease-in both}.koye-melody-link>b:nth-of-type(1){--note-delay:0ms}.koye-melody-link>b:nth-of-type(2){--note-delay:160ms}.koye-melody-link>b:nth-of-type(3){--note-delay:310ms}

/* 110 – felcsapó vízburok és a buff idejéig megmaradó folyékony keret. */
.koye-shield-rise{position:absolute;z-index:63;inset:-13px;overflow:hidden;border-radius:inherit;pointer-events:none}
.koye-shield-rise__sheet{position:absolute;left:-8%;right:-8%;bottom:-8%;height:112%;border-radius:46% 54% 10% 10%;background:linear-gradient(180deg,transparent 0 6%,color-mix(in srgb,var(--kw-foam,#b9ffff) 16.863%,transparent) 15%,color-mix(in srgb,var(--kw-water,#30d8ff) 40.000%,transparent) 55%,color-mix(in srgb,var(--kw-deep,#0875cf) 74.118%,transparent));box-shadow:inset 0 0 36px color-mix(in srgb,var(--kw-foam,#d8ffff) 21.961%,transparent),0 0 25px var(--kw-water,#21cfff);transform-origin:50% 100%;animation:koyeShieldRise 1.25s cubic-bezier(.16,.72,.2,1) both}
.koye-shield-rise__dome{position:absolute;inset:1%;border:4px solid var(--kw-foam,#baffff);border-bottom-color:var(--kw-deep,#1b8ce4);border-radius:48% 52% 18% 18%;box-shadow:inset 0 0 38px color-mix(in srgb,var(--kw-water,#3ae6ff) 32.941%,transparent),0 0 24px var(--kw-water,#42e6ff);opacity:0;animation:koyeShieldDome 2.15s .35s ease-out both}
.koye-shield-rise__ring{position:absolute;left:50%;top:82%;width:42%;height:10%;border:3px solid var(--kw-foam,#dfffff);border-radius:50%;transform:translate(-50%,-50%);opacity:0;animation:koyeShieldRing 1.3s .4s ease-out both}.koye-shield-rise__ring.is-b{animation-delay:.62s}
.koye-shield-rise>b{position:absolute;left:var(--x);bottom:-12px;width:5px;height:12px;border-radius:50%;background:var(--kw-foam,#dfffff);box-shadow:0 0 7px var(--kw-water,#35dfff);animation:koyeShieldDrop 1.25s calc(.2s + var(--i)*.045s) ease-out both}
.koye-persistent-water-frame{position:absolute;z-index:48;inset:-5px;overflow:hidden;border-radius:inherit;pointer-events:none;filter:drop-shadow(0 0 6px var(--kw-water,#22cfff))}
.koye-persistent-water-frame>i{position:absolute;background:linear-gradient(90deg,transparent,var(--kw-water,#50eaff),var(--kw-foam,#e7ffff),var(--kw-deep,#168fe8),transparent);background-size:220% 100%;box-shadow:0 0 9px var(--kw-water,#35dfff);animation:koyeFrameFlow 2.1s linear infinite}
.koye-persistent-water-frame>i.is-top,.koye-persistent-water-frame>i.is-bottom{left:3%;width:94%;height:4px}.koye-persistent-water-frame>i.is-top{top:2px}.koye-persistent-water-frame>i.is-bottom{bottom:2px;animation-direction:reverse}
.koye-persistent-water-frame>i.is-left,.koye-persistent-water-frame>i.is-right{top:3%;width:4px;height:94%;background:linear-gradient(180deg,transparent,var(--kw-water,#50eaff),var(--kw-foam,#e7ffff),var(--kw-deep,#168fe8),transparent);background-size:100% 220%}.koye-persistent-water-frame>i.is-left{left:2px;animation-name:koyeFrameFlowY}.koye-persistent-water-frame>i.is-right{right:2px;animation-name:koyeFrameFlowY;animation-direction:reverse}
.koye-persistent-water-frame>b{position:absolute;width:8px;height:8px;border:1px solid var(--kw-foam,#dfffff);border-radius:50%;box-shadow:0 0 7px var(--kw-water,#31dcff);animation:koyeFrameBubble 2.8s ease-in-out infinite}.koye-persistent-water-frame>b.is-a{left:7%;bottom:9%;animation-delay:-.5s}.koye-persistent-water-frame>b.is-b{right:6%;top:16%;animation-delay:-1.2s}.koye-persistent-water-frame>b.is-c{left:38%;top:1%;animation-delay:-2s}.koye-persistent-water-frame>b.is-d{right:28%;bottom:1%;animation-delay:-2.5s}

/* 111 – articulated guardian around the outer edge; card controls stay above it. */
.hero-card.has-koye-dragon-guard{isolation:isolate}
.hero-card.has-koye-dragon-guard>.v3-flip-inner{position:relative;z-index:1}
.koye-dragon-guard{position:absolute;z-index:0;inset:-12px;overflow:visible;border-radius:22px;pointer-events:none;filter:drop-shadow(0 2px 3px #001d3690)}
.koye-dragon-guard>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.koye-dragon-guard>svg path{stroke-linecap:round;stroke-linejoin:round}
.is-guardian-flight path{stroke-linecap:round;stroke-linejoin:round}
.koye-dragon-guard.is-travelling>.koye-skin-ornaments{visibility:hidden}
.koye-guard-current{stroke-width:1.3;stroke-dasharray:13 8 3 7;opacity:.8;animation:koyeGuardFlow 2.4s linear infinite}
.koye-guard-scales{stroke-width:.7;opacity:.7}
.koye-guard-head [data-dragon-part="jaw"]{transform-origin:-56px 13px;animation:koyeDragonJaw 1.8s ease-in-out infinite alternate}
.koye-guard-head [data-dragon-part="whiskers"]{transform-origin:-18px 4px;animation:koyeDragonWhiskers 1.4s ease-in-out infinite alternate}
@keyframes koyeGuardFlow{to{stroke-dashoffset:-62}}

.koye-dragon-guard.is-awakening{animation:koyeDragonGuardAwaken 1.5s cubic-bezier(.16,.76,.2,1) both}
.koye-dragon-guard.is-awakening::before,.koye-dragon-guard.is-awakening::after{position:absolute;inset:3px;border:3px solid var(--kw-foam,#bffcff);border-radius:19px;box-shadow:0 0 18px var(--kw-water,#4ce8ff),0 0 38px var(--kw-deep,#087dff);content:"";opacity:0;animation:koyeDragonGuardSummon 1.35s ease-out both}
.koye-dragon-guard.is-awakening::after{animation-delay:.16s;border-width:1px}

.koye-water-impact{position:absolute;z-index:61;inset:-5px;overflow:hidden;border-radius:inherit;pointer-events:none}
.koye-water-impact__flood{position:absolute;left:-12%;right:-12%;bottom:-8%;height:105%;background:linear-gradient(180deg,transparent 0 18%,color-mix(in srgb,var(--kw-water,#52e8ff) 30.980%,transparent) 35%,color-mix(in srgb,var(--kw-deep,#0d91df) 72.157%,transparent) 66%,color-mix(in srgb,var(--kw-deep,#043b92) 90.980%,transparent));transform:translateY(100%);animation:koyeImpactFlood 1.6s ease-out both}
.koye-water-impact__splash>b{position:absolute;left:50%;top:50%;width:5px;height:15px;border-radius:50%;background:var(--kw-foam,#dfffff);box-shadow:0 0 7px var(--kw-water,#35e6ff);transform-origin:50% 100%;opacity:0;animation:koyeImpactDrop 1.1s calc(var(--i)*.025s) ease-out both}
.koye-water-impact.is-intense{filter:drop-shadow(0 0 10px var(--kw-water,#25dfff))}

/* 112 – vízszentelés: oszlop, szent körök, korona és felfelé hulló cseppek. */
.koye-sanctification{position:absolute;z-index:65;inset:-18px;overflow:visible;border-radius:inherit;pointer-events:none;filter:drop-shadow(0 0 10px var(--kw-water,#34e5ff))}
.koye-sanctification__column{position:absolute;left:10%;right:10%;top:-24%;bottom:-9%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--kw-water,#62ecff) 16.078%,transparent) 22%,color-mix(in srgb,var(--kw-foam,#efffff) 56.078%,transparent) 50%,color-mix(in srgb,var(--kw-water,#42dfff) 19.216%,transparent) 78%,transparent);clip-path:polygon(25% 0,75% 0,100% 100%,0 100%);opacity:0;animation:koyeSanctifyColumn 2.65s ease-out both}
.koye-sanctification__halo{position:absolute;left:50%;top:50%;width:46%;height:24%;border:3px solid var(--kw-foam,#dfffff);border-radius:50%;box-shadow:0 0 13px var(--kw-water,#44e8ff),inset 0 0 12px var(--kw-water,#1ba8e4);opacity:0;animation:koyeSanctifyHalo 2.3s ease-out both}.koye-sanctification__halo.is-b{animation-delay:.18s}.koye-sanctification__halo.is-c{animation-delay:.36s}
.koye-sanctification__sigil{position:absolute;inset:12%;border:2px solid var(--kw-light,#87f6ff);border-color:var(--kw-light,#87f6ff) transparent;border-radius:50%;opacity:0;animation:koyeSanctifySigil 2.6s ease-out both}.koye-sanctification__sigil::before{position:absolute;inset:16%;border:1px dashed var(--kw-foam,#e8ffff);border-radius:50%;content:""}
.koye-sanctification__crown>b{position:absolute;left:50%;top:50%;width:5px;height:64%;border-radius:50%;background:linear-gradient(180deg,transparent,var(--kw-foam,#eaffff),var(--kw-water,#35dfff),transparent);transform:translate(-50%,-50%) rotate(calc(var(--i)*var(--ray-step,25.714deg))) translateY(-34%);transform-origin:50% 50%;opacity:0;animation:koyeSanctifyRay 2s calc(var(--i)*.025s) ease-out both}
.koye-sanctification__rain>b{position:absolute;left:var(--x);top:var(--y);width:5px;height:11px;border-radius:50%;background:var(--kw-foam,#dfffff);box-shadow:0 0 8px var(--kw-water,#2ddfff);opacity:0;animation:koyeHolyDrop 1.75s calc(var(--i)*.035s) ease-out both}
.koye-sanctification.is-upgraded{--ray-step:16.364deg;inset:-32px;filter:drop-shadow(0 0 15px var(--kw-light,#83f8ff)) drop-shadow(0 0 30px var(--kw-deep,#087cff))}
.koye-sanctification.is-upgraded .koye-sanctification__column{left:-4%;right:-4%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--kw-water,#36dfff) 30.196%,transparent) 18%,var(--kw-foam,#ffffff) 50%,color-mix(in srgb,var(--kw-water,#259fff) 32.157%,transparent) 82%,transparent)}
.koye-sanctification.is-upgraded .koye-sanctification__sigil{inset:2%;border-width:4px}

@keyframes koyeCastLift{0%{opacity:0;transform:translate(-50%,-25%) scale(.45)}28%{opacity:1}72%{opacity:1;transform:translate(-50%,-58%) scale(1.08)}100%{opacity:0;transform:translate(-50%,-66%) scale(1.24)}}
@keyframes koyeFlutePlay{0%{transform:rotate(-18deg) scale(.6)}38%{transform:rotate(5deg) scale(1.08)}62%{transform:rotate(-3deg)}100%{transform:rotate(4deg) scale(.96)}}
@keyframes koyeFluteHalo{0%{opacity:0;transform:scale(.25)}38%{opacity:1}100%{opacity:0;transform:scale(1.55)}}
@keyframes koyeFluteCastRing{0%{opacity:0;transform:scale(.35) rotate(0)}35%{opacity:1}100%{opacity:0;transform:scale(1.38) rotate(220deg)}}
@keyframes koyeCastNote{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.4)}30%{opacity:1}100%{opacity:0;transform:rotate(var(--angle)) translateY(-84px) scale(1.25)}}
@keyframes koyeMelodyWater{to{transform:scale(1.035) rotate(1.5deg);border-radius:53% 47% 56% 44%;box-shadow:inset 0 0 38px color-mix(in srgb,var(--kw-water,#2bddff) 38.039%,transparent),0 0 26px var(--kw-light,#6df3ff)}}
@keyframes koyeMelodyThread{to{transform:translateY(11px) rotate(-3deg) scaleX(1.06);opacity:.95}}
@keyframes koyeMelodyNote{0%,100%{opacity:.15;transform:translateY(18px) rotate(-9deg) scale(.7)}45%{opacity:1;transform:translateY(-32px) rotate(8deg) scale(1.18)}}
@keyframes koyeMelodyLink{0%{opacity:0;clip-path:inset(0 100% 0 0)}25%,75%{opacity:1}100%{opacity:0;clip-path:inset(0 0 0 0)}}
@keyframes koyeLinkNote{0%{opacity:0;transform:translateX(0) rotate(-12deg)}22%{opacity:1}100%{opacity:0;transform:translateX(var(--koye-link-distance)) rotate(18deg)}}
@keyframes koyeShieldRise{0%{opacity:0;transform:translateY(95%) scaleX(.75)}28%{opacity:.82}72%{opacity:.46}100%{opacity:0;transform:translateY(-14%) scaleX(1.08)}}
@keyframes koyeShieldDome{0%{opacity:0;transform:scale(.72,.45)}25%{opacity:1;transform:scale(1)}78%{opacity:.7}100%{opacity:0;transform:scale(1.05)}}
@keyframes koyeShieldRing{0%{opacity:0;transform:translate(-50%,-50%) scale(.25)}28%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(2.8)}}
@keyframes koyeShieldDrop{0%{opacity:0;transform:translateY(0) rotate(18deg)}22%{opacity:1}100%{opacity:0;transform:translateY(-230px) rotate(-12deg)}}
@keyframes koyeFrameFlow{to{background-position:-220% 0}}@keyframes koyeFrameFlowY{to{background-position:0 -220%}}
@keyframes koyeFrameBubble{0%,100%{opacity:.2;transform:translateY(8px) scale(.6)}50%{opacity:1;transform:translateY(-8px) scale(1.15)}}

@keyframes koyeDragonGuardAwaken{0%{filter:drop-shadow(0 0 0 transparent);opacity:.15}24%{filter:drop-shadow(0 0 20px var(--kw-foam,#bfffff)) drop-shadow(0 0 38px var(--kw-water,#14a9ff));opacity:1}100%{filter:drop-shadow(0 0 8px var(--kw-water,#20dfff));opacity:1}}
@keyframes koyeDragonGuardSummon{0%{opacity:0;transform:scale(.88)}26%{opacity:1}100%{opacity:0;transform:scale(1.08)}}

@keyframes koyeSanctifyColumn{0%{opacity:0;transform:scaleY(.15)}25%{opacity:1;transform:scaleY(1)}76%{opacity:.72}100%{opacity:0;transform:scaleY(1.08)}}
@keyframes koyeSanctifyHalo{0%{opacity:0;transform:translate(-50%,-50%) scale(.18)}30%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(2.45)}}
@keyframes koyeSanctifySigil{0%{opacity:0;transform:scale(.35) rotate(-80deg)}32%{opacity:1}76%{opacity:.75}100%{opacity:0;transform:scale(1.22) rotate(220deg)}}
@keyframes koyeSanctifyRay{0%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*16.36deg)) translateY(-18%) scaleY(.15)}35%{opacity:.85}100%{opacity:0;transform:translate(-50%,-50%) rotate(calc(var(--i)*16.36deg)) translateY(-55%) scaleY(1.2)}}
@keyframes koyeHolyDrop{0%{opacity:0;transform:translateY(34px) scale(.4)}30%{opacity:1}100%{opacity:0;transform:translateY(-210px) scale(1.2)}}

/* Refraction, foam and layered currents give the water volume. */
.koye-flute-cast{animation-duration:1.05s}
.koye-flute-cast>img{animation-duration:.85s}
.koye-flute-cast__notes b{left:50%;top:50%}
.koye-melody-vfx{perspective:550px;animation:koyeWaterArrival .5s ease-out both}
.koye-melody-vfx::before,.koye-shield-rise__dome::before{content:"";position:absolute;inset:0;border-radius:inherit;background:repeating-radial-gradient(ellipse at 28% 70%,transparent 0 18px,color-mix(in srgb,var(--kw-light,#90faff) 20.784%,transparent) 20px,transparent 23px 37px);mask-image:linear-gradient(90deg,var(--kw-deep,#000000),transparent 35% 65%,var(--kw-deep,#000000));animation:koyeCausticDrift 2.4s ease-in-out infinite alternate}
.koye-melody-vfx__water{background:radial-gradient(ellipse at 0 75%,color-mix(in srgb,var(--kw-water,#21d6ff) 40.000%,transparent),transparent 45%),radial-gradient(ellipse at 100% 25%,color-mix(in srgb,var(--kw-deep,#0b7bcc) 46.667%,transparent),transparent 48%);border-width:3px}
.koye-melody-vfx__thread{height:38%;border-top:4px solid var(--kw-foam,#ccffff);border-bottom:2px solid var(--kw-water,#129fe7);border-left:2px solid color-mix(in srgb,var(--kw-water,#38dfff) 53.333%,transparent);border-right:2px solid color-mix(in srgb,var(--kw-water,#38dfff) 53.333%,transparent);box-shadow:0 -6px 12px color-mix(in srgb,var(--kw-water,#46edff) 20.000%,transparent),inset 0 7px 8px color-mix(in srgb,var(--kw-light,#82ffff) 13.333%,transparent);animation:koyeMelodyHelix 1.7s ease-in-out infinite alternate}
.koye-melody-vfx__notes b{font-size:27px;color:var(--kw-foam,#eaffff);text-shadow:0 2px 2px var(--kw-deep,#0871b9),0 0 9px var(--kw-water,#5ceaff);animation:koyeMelodyNote 1.8s calc(var(--i)*-.17s) ease-in-out infinite}
.koye-shield-rise__sheet{background:repeating-radial-gradient(ellipse at 55% 15%,transparent 0 17px,color-mix(in srgb,var(--kw-light,#afffff) 20.000%,transparent) 20px,transparent 23px 42px),linear-gradient(180deg,color-mix(in srgb,var(--kw-foam,#d9ffff) 61.176%,transparent),color-mix(in srgb,var(--kw-water,#30d8ff) 30.196%,transparent) 38%,color-mix(in srgb,var(--kw-deep,#0875cf) 80.784%,transparent));border-top:5px solid var(--kw-foam,#e4ffff)}
.koye-shield-rise__dome{border-radius:44% 46% 22% 24%;background:radial-gradient(ellipse at 20% 25%,color-mix(in srgb,var(--kw-foam,#f0ffff) 53.333%,transparent),transparent 14%),radial-gradient(ellipse at 85% 65%,color-mix(in srgb,var(--kw-light,#65eeff) 33.333%,transparent),transparent 21%);box-shadow:inset 8px 0 15px color-mix(in srgb,var(--kw-foam,#cfffff) 33.333%,transparent),inset -12px -5px 23px color-mix(in srgb,var(--kw-deep,#0380df) 53.333%,transparent),0 0 25px var(--kw-water,#31dfff)}
.koye-persistent-water-frame{inset:-7px;border:1px solid color-mix(in srgb,var(--kw-light,#8fffff) 50.196%,transparent);box-shadow:inset 0 0 8px color-mix(in srgb,var(--kw-water,#4defff) 33.333%,transparent),0 0 8px color-mix(in srgb,var(--kw-deep,#0877c7) 40.000%,transparent);animation:koyeFrameBreathe 3.4s ease-in-out infinite alternate}
.koye-persistent-water-frame>i.is-top,.koye-persistent-water-frame>i.is-bottom{height:7px;border-radius:60% 35% 55% 40%;filter:drop-shadow(0 0 3px var(--kw-light,#82ffff))}
.koye-persistent-water-frame>i.is-left,.koye-persistent-water-frame>i.is-right{width:7px;border-radius:35% 60% 40% 55%}
.koye-persistent-water-frame::after{content:"";position:absolute;inset:2px;border:2px solid color-mix(in srgb,var(--kw-light,#89f7ff) 43.922%,transparent);border-radius:inherit;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,0 92%,94% 92%,94% 7%,6% 7%,6% 100%,0 100%);animation:koyeFrameBreathe 2s ease-in-out infinite alternate-reverse}
/* The guardian coils outside the card; the controls remain above its anatomy. */
.koye-dragon-guard{z-index:0;inset:-15px;transition:opacity .18s ease;filter:drop-shadow(0 2px 3px #001d3690)}
.koye-sanctification__pool{position:absolute;left:-12%;right:-12%;bottom:-7%;height:30%;border:3px solid var(--kw-foam,#e1ffff);border-radius:50%;background:repeating-radial-gradient(ellipse at center,color-mix(in srgb,var(--kw-water,#26ddff) 26.667%,transparent) 0 7%,color-mix(in srgb,var(--kw-foam,#e9ffff) 53.333%,transparent) 8%,transparent 10% 17%);box-shadow:0 0 30px var(--kw-water,#17c8ff),inset 0 0 30px var(--kw-water,#45ddff);animation:koyeHolyPool 2.7s ease-out both}
.koye-sanctification__veil{position:absolute;top:-16%;bottom:0;width:43%;border-radius:70% 20% 40% 60%;border:2px solid color-mix(in srgb,var(--kw-foam,#cfffff) 66.667%,transparent);background:repeating-linear-gradient(100deg,transparent 0 13px,color-mix(in srgb,var(--kw-foam,#d7ffff) 30.196%,transparent) 14px,transparent 17px 29px),linear-gradient(90deg,color-mix(in srgb,var(--kw-deep,#007edc) 6.667%,transparent),color-mix(in srgb,var(--kw-water,#56eaff) 53.333%,transparent),transparent);box-shadow:inset 0 0 20px color-mix(in srgb,var(--kw-light,#87faff) 40.000%,transparent);transform-origin:50% 100%;animation:koyeHolyVeil 2.6s ease-out both}
.koye-sanctification__veil.is-left{left:-4%;--lean:-16deg}
.koye-sanctification__veil.is-right{right:-4%;--lean:16deg;animation-delay:.12s}
.koye-sanctification__column{mix-blend-mode:screen}
.koye-sanctification__sigil{border-style:double;border-width:5px;box-shadow:0 0 16px color-mix(in srgb,var(--kw-light,#84ffff) 40.000%,transparent),inset 0 0 20px color-mix(in srgb,var(--kw-water,#0b9ced) 20.000%,transparent)}
.koye-sanctification.is-upgraded .koye-sanctification__veil{width:55%;top:-35%;filter:drop-shadow(0 0 16px var(--kw-light,#7dfaff))}
.koye-sanctification.is-upgraded .koye-sanctification__pool{left:-30%;right:-30%;border-width:5px;box-shadow:0 0 40px var(--kw-light,#8fffff),0 0 65px var(--kw-deep,#087bff)}
@keyframes koyeWaterArrival{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
@keyframes koyeCausticDrift{to{transform:translateY(-10px) scale(1.1,1.05);opacity:.55}}
@keyframes koyeMelodyHelix{from{transform:rotateX(46deg) rotateZ(-12deg) translateY(-8px)}to{transform:rotateX(62deg) rotateZ(12deg) translateY(10px)}}
@keyframes koyeFrameBreathe{from{border-radius:17px 22px 18px 23px;opacity:.72}to{border-radius:23px 17px 24px 18px;opacity:1}}
@keyframes koyeHolyPool{0%{opacity:0;transform:scale(.2)}22%,65%{opacity:1}100%{opacity:0;transform:scale(1.22)}}
@keyframes koyeHolyVeil{0%{opacity:0;transform:scaleY(.05) rotate(0)}25%,62%{opacity:.85;transform:scaleY(1) rotate(var(--lean))}100%{opacity:0;transform:scaleY(1.1) rotate(calc(var(--lean)*-1))}}
@media(prefers-reduced-motion:reduce){.koye-vfx-stage *,.koye-melody-vfx *,.koye-shield-rise *,.koye-persistent-water-frame,.koye-persistent-water-frame *,.koye-dragon-guard *,.koye-water-impact *,.koye-sanctification *{animation-duration:.01ms!important;animation-iteration-count:1!important}.koye-melody-vfx::before,.koye-persistent-water-frame::after,.koye-shield-rise__dome::before{animation:none!important}}

/* Cursed musical spirits and lanterns; the VIP version adds champagne sparkle. */
.koye-skin-ornaments { position:absolute; inset:0; pointer-events:none; border-radius:inherit; }
.koye-skin-motif { display:block; width:100%; height:100%; overflow:visible; }
.koye-skin-charm { position:absolute; width:42px; height:42px; margin:-21px; filter:drop-shadow(0 0 5px var(--kw-water)); animation:koyeSkinBob 2.7s ease-in-out calc(var(--charm-i) * -.4s) infinite alternate; }
.koye-flute-cast .koye-skin-charm { width:34px; height:34px; margin:-17px; }
.koye-persistent-water-frame .koye-skin-charm,
.koye-dragon-guard .koye-skin-charm { width:29px; height:29px; margin:-14px; }
.koye-persistent-water-frame .koye-skin-charm { top:var(--edge-y,5%)!important; }
.koye-persistent-water-frame .koye-skin-charm:nth-child(n+3) { --edge-y:95%; }
.koye-dragon-guard .koye-skin-charm { left:var(--edge-x,0%)!important; }
.koye-dragon-guard .koye-skin-charm:nth-child(even) { --edge-x:100%; }
.koye-vip-arc { position:absolute; inset:3% -7%; border:2px solid transparent; border-top-color:#FFF8E5; border-bottom-color:#E5B750; border-radius:50%; filter:drop-shadow(0 0 5px #FFD46A); opacity:.7; transform:rotate(-28deg); animation:koyeVipArc 2.6s ease-in-out infinite alternate; }
.koye-vip-arc.is-cross { inset:12% -12%; rotate:65deg; animation-delay:-1.3s; border-width:1px; }
.koye-vip-label { position:absolute; left:50%; top:6%; transform:translateX(-50%); padding:2px 7px; border:1px solid #FFD46A; border-radius:8px; color:#FFF8E5; background:#5D3919c0; font:900 13px/1.2 system-ui,sans-serif; letter-spacing:2px; text-shadow:0 0 7px #FFD46A; box-shadow:0 0 10px #E5B75070; }
.koye-flute-cast .koye-vip-label { top:-10%; }
.koye-persistent-water-frame .koye-vip-label,
.koye-dragon-guard .koye-vip-label { top:0; font-size:10px; padding:1px 5px; }
.koye-vip-glint { position:absolute; width:19px; height:19px; margin:-9px; filter:drop-shadow(0 0 5px #FFF8E5); animation:koyeVipGlint 1.65s ease-in-out calc(var(--charm-i) * -.19s) infinite; }
.koye-energy-flight__charm { filter:drop-shadow(0 0 4px var(--kw-water)); }
.koye-energy-flight__gold-arc { fill:none; stroke:#FFF2BF; stroke-width:2; stroke-linecap:round; filter:drop-shadow(0 0 5px #FFD46A); }
.koye-energy-flight__vip { fill:#FFF8E5; stroke:#785019; stroke-width:.7; paint-order:stroke; font:900 18px system-ui,sans-serif; text-anchor:middle; letter-spacing:2px; filter:drop-shadow(0 0 5px #E5B750); }
.koye-sanctification[data-koye-theme="vip"] .koye-vip-label { top:-14%; font-size:22px; padding:4px 14px; }
.koye-sanctification[data-koye-theme="vip"] .koye-skin-charm { width:56px; height:56px; margin:-28px; }
.koye-sanctification[data-koye-theme="vip"] .koye-vip-arc { inset:-12% -22%; border-width:3px; }
.koye-sanctification[data-koye-theme="vip"] .koye-sanctification__column { filter:drop-shadow(0 0 20px #FFD46A); }
/* The portrait's water-level reservoir uses the same palette as the spells. */
.hero-card:is([data-koye-theme="halloween"],[data-koye-theme="vip"]) .koye-water-fill { background:radial-gradient(ellipse at 50% 7%,color-mix(in srgb,var(--kw-light) 46%,transparent),transparent 35%),linear-gradient(180deg,color-mix(in srgb,var(--kw-water) 52%,transparent),color-mix(in srgb,var(--kw-deep) 76%,transparent) 48%,var(--kw-deep)); border-color:var(--kw-water); box-shadow:0 -10px 28px color-mix(in srgb,var(--kw-water) 60%,transparent),inset 0 22px 38px color-mix(in srgb,var(--kw-light) 28%,transparent),inset 0 -45px 70px color-mix(in srgb,var(--kw-deep) 46%,transparent); }
.hero-card:is([data-koye-theme="halloween"],[data-koye-theme="vip"]) .koye-water-fill::before { background:repeating-radial-gradient(ellipse at 20% 0%,transparent 0 18px,color-mix(in srgb,var(--kw-light) 34%,transparent) 21px 23px,transparent 27px 48px); }
.hero-card:is([data-koye-theme="halloween"],[data-koye-theme="vip"]) .koye-water-fill::after { background:repeating-linear-gradient(78deg,transparent 0 45px,color-mix(in srgb,var(--kw-water) 40%,transparent) 48px 50px,transparent 54px 92px); }
.hero-card:is([data-koye-theme="halloween"],[data-koye-theme="vip"]) .koye-water-wave { border-color:var(--kw-light); filter:drop-shadow(0 0 7px var(--kw-water)); }
.hero-card:is([data-koye-theme="halloween"],[data-koye-theme="vip"]) .koye-water-fill i { border-color:var(--kw-foam); box-shadow:0 0 6px var(--kw-water); }
.hero-card[data-koye-theme="vip"] .koye-water-fill i:nth-of-type(3n) { background:#FFF8E5; border:0; border-radius:0; clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%); width:12px; height:12px; filter:drop-shadow(0 0 4px #FFD46A); }
/* Halloween flute: emerald spirits, violet mist and pumpkin embers. */
.koye-flute-meter[data-koye-theme="halloween"]::before {
    border-color:#89ffd2;
    background:radial-gradient(ellipse at 28% 25%,#34edb65c,transparent 48%),radial-gradient(ellipse at 76% 75%,#aa47df73,transparent 55%),radial-gradient(circle at 50% 42%,#154b3d,#180d30 76%);
    box-shadow:inset 0 0 18px #55f6bc40,0 0 17px #22d99f9c,0 0 29px #8c35c769;
}
.koye-flute-meter[data-koye-theme="halloween"].is-max::before {
    border-color:#ffbf77;
    box-shadow:inset 0 0 22px #71ffd060,0 0 20px #22e5bb,0 0 36px #b550da8f,0 0 12px #f974257a;
}
.koye-flute-meter[data-koye-theme="halloween"] > img {
    filter:drop-shadow(0 0 5px #9dffd6) drop-shadow(0 0 10px #22be91);
    animation-name:koyeHalloweenFluteFloat;
}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura { box-shadow:inset 0 0 18px #7430a75c; }
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura::before {
    border-color:#99ffd4 transparent #f99a4c transparent;
    box-shadow:0 0 8px #36e9aa30;
}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura::after {
    background:conic-gradient(from 30deg,transparent,#22e5bb63,transparent 30%,#a03cdf69,transparent 62%,#f9742538,transparent 82%);
}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura i {
    width:11px;height:15px;background:#8dffd5;border-radius:55% 55% 10% 10%;
    clip-path:polygon(0 25%,20% 3%,75% 0,100% 25%,100% 100%,75% 78%,50% 100%,25% 78%,0 100%);
    box-shadow:none;filter:drop-shadow(0 0 4px #22e5bb);
    animation:koyeHalloweenWisp 3s ease-in-out infinite;
}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura i::before {
    content:"";position:absolute;left:3px;top:5px;width:2px;height:3px;border-radius:50%;background:#133c34;box-shadow:4px 0 #133c34;
}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura i:nth-child(1){animation-delay:-.4s}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura i:nth-child(2){background:#f9a45a;filter:drop-shadow(0 0 4px #f97425);animation-delay:-1.3s}
.koye-flute-meter[data-koye-theme="halloween"] .koye-flute-aura i:nth-child(3){background:#d6a1ff;filter:drop-shadow(0 0 4px #ac53df);animation-delay:-2.2s}
@keyframes koyeHalloweenFluteFloat{to{transform:translateY(-2px) rotate(2deg);filter:drop-shadow(0 0 8px #b5ffe1) drop-shadow(0 0 14px #9952d8)}}
@keyframes koyeHalloweenWisp{0%,100%{opacity:.25;transform:translate(-3px,6px) rotate(-12deg) scale(.65)}50%{opacity:.95;transform:translate(3px,-8px) rotate(10deg) scale(1)}}
@media(prefers-reduced-motion:reduce){
    .koye-flute-meter[data-koye-theme="halloween"]::before,
    .koye-flute-meter[data-koye-theme="halloween"] *,
    .koye-flute-meter[data-koye-theme="halloween"] *::before,
    .koye-flute-meter[data-koye-theme="halloween"] *::after{animation:none!important}
}

/* Koye VIP: pezsgőarany víz a furulya jelvényében és a hover-tooltipben. */
.koye-flute-meter[data-koye-theme="vip"]::before {
    border-color:#FFF2BF;
    background:radial-gradient(circle at 50% 42%,#F7E7CE75,#926119ef 72%);
    box-shadow:inset 0 0 18px #FFF8E54d,0 0 18px #E5B750b8,0 0 28px #FFD46A61;
}
.koye-flute-meter[data-koye-theme="vip"].is-max::before {
    border-color:#FFF8E5;
    box-shadow:inset 0 0 22px #F7E7CE73,0 0 18px #FFF2BF,0 0 38px #E5B750;
}
.koye-flute-meter[data-koye-theme="vip"] > img,
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__icon img {
    filter:drop-shadow(0 0 5px #FFF8E5) drop-shadow(0 0 10px #E5B750);
    animation-name:koyeVipFluteFloat;
}
.koye-flute-meter[data-koye-theme="vip"] .koye-flute-aura { box-shadow:inset 0 0 18px #E5B75052; }
.koye-flute-meter[data-koye-theme="vip"] .koye-flute-aura::before { border-color:#FFF2BF transparent; }
.koye-flute-meter[data-koye-theme="vip"] .koye-flute-aura::after { background:conic-gradient(from 30deg,transparent,#F7E7CE57,transparent 30%,#E5B7504f,transparent 62%); }
.koye-flute-meter[data-koye-theme="vip"] .koye-flute-aura i { background:#FFF8E5;box-shadow:0 0 8px 2px #FFD46A; }
.koye-flute-tooltip[data-koye-theme="vip"] {
    --koye-c1:#F7E7CE;--koye-c2:#E5B750;--koye-c3:#926119;--koye-c4:#503313;--koye-c5:#211609;
    outline-color:#F7E7CE70;
    background:radial-gradient(circle at 12% 6%,#E5B75045,transparent 35%),radial-gradient(circle at 90% 84%,#92611952,transparent 48%),linear-gradient(150deg,#503313f5,#211609f7 55%,#38240df7);
    box-shadow:0 24px 70px #000e,0 0 38px #E5B75073,inset 0 0 52px #211609bf;
}
.koye-flute-tooltip[data-koye-theme="vip"].is-max { border-color:#FFF8E5;box-shadow:0 24px 70px #000e,0 0 48px #F7E7CE,0 0 72px #E5B75099,inset 0 0 52px #211609bf; }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__water { background:linear-gradient(180deg,#F7E7CE85,#E5B750ad 38%,#926119df);box-shadow:0 -8px 22px #E5B75080,inset 0 24px 38px #FFF8E538; }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__water > i { border-top-color:#FFF8E5;filter:drop-shadow(0 0 7px #FFD46A); }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__water > em { background:repeating-radial-gradient(ellipse at 20% 0,transparent 0 18px,#FFF2BF38 21px 23px,transparent 27px 48px),repeating-linear-gradient(103deg,transparent 0 34px,#E5B75032 38px 41px,transparent 46px 78px); }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__water > b { border-color:#FFF8E5;background:#F7E7CE30;box-shadow:inset 0 0 4px #FFF8E5,0 0 8px #FFD46A; }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__vfx > s { background:radial-gradient(ellipse,#E5B7502e,transparent 70%); }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__vfx > u { background:linear-gradient(105deg,transparent 30%,#FFF8E512 48%,transparent 67%); }
.koye-flute-tooltip[data-koye-theme="vip"] header { border-bottom-color:#E5B75052; }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__icon i { border-color:#FFF2BF; }
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__track span.is-threshold,
.koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__progress,
.koye-flute-tooltip[data-koye-theme="vip"] footer span { border-color:#E5B75066; }
@keyframes koyeVipFluteFloat { to { transform:translateY(-2px) rotate(2deg);filter:drop-shadow(0 0 8px #FFF8E5) drop-shadow(0 0 15px #E5B750); } }
@media(prefers-reduced-motion:reduce) {
    .koye-flute-meter[data-koye-theme="vip"] > img,
    .koye-flute-tooltip[data-koye-theme="vip"] .koye-flute-tooltip__icon img { animation:none; }
}
@keyframes koyeSkinBob { from { opacity:.65; transform:translateY(7px) rotate(-9deg); } to { opacity:1; transform:translateY(-10px) rotate(9deg); } }
@keyframes koyeVipArc { from { transform:rotate(-28deg) scale(.9); opacity:.4; } to { transform:rotate(20deg) scale(1.08); opacity:.9; } }
@keyframes koyeVipGlint { 0%,100% { opacity:.15; transform:scale(.35) rotate(-20deg); } 45% { opacity:1; transform:scale(1.2) rotate(35deg); } }
@media(prefers-reduced-motion:reduce) { .koye-skin-ornaments * { animation:none!important; } }

/* Liquid impact: a collapsing splash crown, surface ripples and falling spray. */
.koye-water-impact{overflow:visible;filter:none}
.koye-water-impact__flood{left:0;right:0;bottom:0;height:100%;border-radius:inherit;background:radial-gradient(ellipse at 30% 60%,#beffff35,transparent 19%),repeating-radial-gradient(ellipse at 65% 84%,transparent 0 13px,color-mix(in srgb,var(--kw-light,#a0ecf5) 25%,transparent) 15px,transparent 18px 32px),linear-gradient(0deg,color-mix(in srgb,var(--kw-deep,#03466e) 82%,transparent),color-mix(in srgb,var(--kw-water,#149ebc) 55%,transparent) 36%,transparent 78%);animation:koyeLiquidWash 1.6s ease-out both}
.koye-water-impact__surface{position:absolute;inset:-10%;width:120%;height:120%;overflow:visible}
.koye-water-impact__crown{transform-origin:100px 205px;animation:koyeLiquidCrown 1.15s ease-out both}
.koye-water-impact__ripples{transform-origin:100px 206px;animation:koyeLiquidRipples 1.5s .06s ease-out both}
.koye-water-impact__splash>b{left:50%;top:64%;width:var(--drop-size);height:calc(var(--drop-size)*1.8);border-radius:48% 52% 50% 50%;border:1px solid color-mix(in srgb,var(--kw-light,#b8f2fa) 75%,transparent);background:radial-gradient(ellipse at 28% 22%,var(--kw-foam,#edffff),var(--kw-water,#219cb6) 42%,var(--kw-deep,#074565));box-shadow:none;animation:koyeLiquidDrop 1.1s calc(var(--i)*.012s) cubic-bezier(.2,.5,.5,1) both}
.koye-water-impact.is-intense{filter:none}
.koye-water-impact.is-intense .koye-water-impact__surface{inset:-18%;width:136%;height:136%}
@keyframes koyeLiquidWash{0%{opacity:0;transform:scaleY(.35)}22%{opacity:.85;transform:scaleY(1)}70%{opacity:.5}100%{opacity:0;transform:scaleY(.82)}}
@keyframes koyeLiquidCrown{0%{opacity:0;transform:scale(.3,.08)}22%{opacity:1;transform:scale(.85,1.1)}55%{opacity:.85;transform:scale(1.05,.8)}100%{opacity:0;transform:scale(1.18,.08)}}
@keyframes koyeLiquidRipples{0%{opacity:0;transform:scale(.2)}24%{opacity:.85}100%{opacity:0;transform:scale(1.2,1.5)}}
@keyframes koyeLiquidDrop{0%{opacity:0;transform:translate(0,0) scale(.5)}12%{opacity:1}42%{opacity:.95;transform:translate(var(--half-dx),var(--rise)) scale(1)}100%{opacity:0;transform:translate(var(--dx),var(--fall)) scale(.65,1.35)}}
@media(prefers-reduced-motion:reduce){.koye-water-impact *,.koye-dragon-head *{animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Kristály Koye — the palace's rose-crowned, faceted glass dragon. */
[data-koye-theme="kristaly"] .koye-liquid-volume,
[data-koye-theme="kristaly"] [data-dragon-part="body"]{stroke:#F9F6FF;stroke-width:1.35;filter:drop-shadow(0 0 3px #8DA7E7)}
[data-koye-theme="kristaly"] :is(.koye-dragon-scales,.koye-guard-scales){fill:#FEBAF443;stroke:#F9F6FF;stroke-width:.85;opacity:.95}
[data-koye-theme="kristaly"] :is(.koye-dragon-dorsal,.koye-guard-fins){stroke:#FFF7FF;stroke-width:1;filter:drop-shadow(0 0 2px #FEBAF4)}
[data-koye-theme="kristaly"] .koye-liquid-refraction{stroke:#FFF;stroke-width:2;opacity:.9}
[data-koye-theme="kristaly"] .koye-liquid-belly{stroke:#FEBAF4;stroke-width:3;opacity:.6}
[data-koye-theme="kristaly"] .koye-liquid-caustics{stroke:#FFF5FF;stroke-width:1.8;opacity:.75}
[data-koye-theme="kristaly"] .koye-liquid-foam{stroke:#E8D6B6;stroke-width:1;stroke-dasharray:18 7 2 6}
[data-koye-theme="kristaly"] .koye-skin-charm{filter:drop-shadow(0 0 3px #FFF9FF) drop-shadow(0 0 5px #7170DA)}
.koye-crystal-diadem{position:absolute;inset:2% 12% 72%;border-top:2px solid #E8D6B6;border-radius:50%;box-shadow:0 -2px 6px #FEBAF46b;transform:rotate(-7deg)}
.koye-crystal-diadem::before,.koye-crystal-diadem::after{content:"";position:absolute;left:48%;top:-13px;width:12px;height:22px;background:linear-gradient(125deg,#FFF8FF,#FEBAF4 38%,#8DA7E7 42%,#FFF 70%,#7170DA);clip-path:polygon(50% 0,100% 43%,50% 100%,0 43%)}
.koye-crystal-diadem::after{left:22%;top:-8px;width:8px;height:15px}
.koye-crystal-waltz{position:absolute;inset:8% -9%;border:1px solid #F4BCA8;border-left-color:transparent;border-right-color:transparent;border-radius:50%;transform:rotate(-25deg);opacity:.7;animation:koyeCrystalWaltz 3.8s ease-in-out infinite alternate}
.koye-crystal-petal{position:absolute;width:11px;height:16px;background:linear-gradient(135deg,#FFF9FF,#FEBAF4 48%,#7170DA);border:1px solid #FFF5FB;border-radius:75% 10% 70% 25%;opacity:0;animation:koyeCrystalPetal 3s calc(var(--petal-i)*-.37s) ease-in-out infinite}
.koye-crystal-petal:nth-child(even){width:8px;height:19px;background:linear-gradient(145deg,#FFF,#8DA7E7 40%,#FEBAF4);clip-path:polygon(50% 0,100% 40%,50% 100%,0 40%);border-radius:0}
.koye-flute-cast[data-koye-theme="kristaly"]{filter:drop-shadow(0 0 8px #FEBAF4)}
.koye-flute-cast[data-koye-theme="kristaly"] .koye-flute-cast__ring{border-color:#E8D6B6 transparent #FEBAF4;box-shadow:0 0 10px #8DA7E780}
.koye-melody-vfx[data-koye-theme="kristaly"] .koye-melody-vfx__water{border-color:#FEBAF4 #E8D6B6 #8DA7E7;border-radius:18% 18% 42% 42%;background:repeating-linear-gradient(125deg,transparent 0 35px,#FFF5FF12 36px 38px,transparent 39px 65px)}
.koye-melody-vfx[data-koye-theme="kristaly"] .koye-melody-vfx__thread{border-top:2px solid #E8D6B6;box-shadow:0 -1px 0 #FFF8FF}
.koye-shield-rise[data-koye-theme="kristaly"] .koye-shield-rise__sheet{background:conic-gradient(from 35deg at 50% 25%,#8DA7E72b,#FEBAF476,#FFF7FF61,#7170DA42,#8DA7E758,#FFF3FB88,#8DA7E72b);clip-path:polygon(50% 0,88% 14%,100% 44%,90% 82%,50% 100%,10% 82%,0 44%,12% 14%);border-radius:0}
.koye-shield-rise[data-koye-theme="kristaly"] .koye-shield-rise__dome{border:2px solid #E8D6B6;border-radius:30% 30% 16% 16%;box-shadow:inset 0 0 26px #FEBAF455,0 0 16px #8DA7E7}
.koye-persistent-water-frame[data-koye-theme="kristaly"]{overflow:visible;filter:drop-shadow(0 0 3px #FEBAF4)}
.koye-persistent-water-frame[data-koye-theme="kristaly"]>i{background:linear-gradient(100deg,#E8D6B6,#FFF7FF,#FEBAF4,#8DA7E7,#E8D6B6);background-size:220% 100%}
.koye-persistent-water-frame[data-koye-theme="kristaly"]>b{border-radius:0;rotate:45deg;background:#FEBAF4;border-color:#FFF8FF}
.koye-sanctification[data-koye-theme="kristaly"] .koye-skin-charm{width:58px;height:58px;margin:-29px}
.koye-sanctification[data-koye-theme="kristaly"] .koye-crystal-diadem{inset:-8% 3% 65%;border-top-width:3px}
.koye-sanctification[data-koye-theme="kristaly"] .koye-crystal-diadem::before{width:25px;height:42px;top:-30px}
.koye-sanctification[data-koye-theme="kristaly"] .koye-sanctification__column{background:repeating-linear-gradient(104deg,transparent 0 12%,#FFF8FF80 14%,#FEBAF438 17%,transparent 23%),linear-gradient(90deg,transparent,#8DA7E755,#FFF7FF99,#FEBAF45e,transparent);clip-path:polygon(50% 0,65% 16%,62% 0,82% 21%,100% 100%,0 100%,18% 21%,38% 0,35% 16%)}
.koye-sanctification[data-koye-theme="kristaly"] .koye-sanctification__sigil{border:2px solid #E8D6B6;box-shadow:0 0 15px #FEBAF4,inset 0 0 20px #8DA7E75c}
.koye-sanctification[data-koye-theme="kristaly"] .koye-sanctification__halo{border-color:#FFF8FF #FEBAF4 #E8D6B6;box-shadow:0 0 12px #7170DA,inset 0 0 12px #FEBAF4}
[data-koye-theme="kristaly"] :is(.koye-sanctification__rain,.koye-water-impact__splash)>b{border-radius:0;clip-path:polygon(50% 0,100% 38%,60% 100%,0 60%);background:linear-gradient(110deg,#FFF,#FEBAF4,#8DA7E7)}
.hero-card[data-koye-theme="kristaly"] .koye-water-fill{background:repeating-linear-gradient(115deg,transparent 0 24px,#FFF6FF29 26px 28px,transparent 30px 56px),linear-gradient(180deg,#FEBAF459,#8DA7E79c 40%,#7170DAa6 75%,#383F6Acc);border-color:#FFF7FF;box-shadow:0 -8px 22px #FEBAF46b,inset 0 15px 30px #FFF6FF40}
.hero-card[data-koye-theme="kristaly"] .koye-water-wave{border-color:#FEBAF4;filter:drop-shadow(0 0 5px #8DA7E7)}
.hero-card[data-koye-theme="kristaly"] .koye-water-fill i{border-radius:0;rotate:45deg;border-color:#FFF8FF;background:#FEBAF440;box-shadow:0 0 5px #8DA7E7}

/* The rhythm badge and its expanded reservoir share the crystal instrument. */
.koye-flute-meter[data-koye-theme="kristaly"]::before{background:conic-gradient(from 25deg,#383F6A,#8DA7E7,#FFF7FF,#FEBAF4,#7170DA,#E8D6B6,#383F6A);box-shadow:0 0 11px #FEBAF470,inset 0 0 9px #FFF6FF80}
.koye-flute-meter[data-koye-theme="kristaly"]>img,
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__icon img{filter:drop-shadow(0 0 4px #FFF) drop-shadow(0 0 7px #FEBAF4);animation:koyeCrystalInstrument 3.2s ease-in-out infinite alternate}
.koye-flute-meter[data-koye-theme="kristaly"] .koye-flute-aura{box-shadow:inset 0 0 17px #7170DA55}
.koye-flute-meter[data-koye-theme="kristaly"] .koye-flute-aura::before{border-color:#E8D6B6 transparent #FEBAF4}
.koye-flute-meter[data-koye-theme="kristaly"] .koye-flute-aura::after{background:conic-gradient(from 30deg,transparent,#FEBAF450,transparent 35%,#8DA7E766,transparent 72%)}
.koye-flute-meter[data-koye-theme="kristaly"] .koye-flute-aura i{background:#FEBAF4;border:1px solid #FFF8FF;border-radius:65% 15%;box-shadow:0 0 6px #8DA7E7}
.koye-flute-tooltip[data-koye-theme="kristaly"]{border-color:#E8D6B6;background:radial-gradient(ellipse at 85% 0,#FEBAF430,transparent 55%),linear-gradient(140deg,#22213d,#383F6A 65%,#232037);box-shadow:0 24px 70px #000d,0 0 24px #7170DA66,inset 0 0 35px #FEBAF415;color:#FFF6FF}
.koye-flute-tooltip[data-koye-theme="kristaly"].is-max{border-color:#FFF8FF;box-shadow:0 24px 70px #000d,0 0 28px #FEBAF4,0 0 50px #8DA7E780,inset 0 0 30px #FEBAF425}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__water{background:linear-gradient(180deg,#FEBAF465,#8DA7E795 40%,#7170DAc9);box-shadow:0 -8px 20px #FEBAF460,inset 0 20px 32px #FFF7FF42}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__water>i{border-top-color:#FFF7FF;filter:drop-shadow(0 0 5px #FEBAF4)}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__water>em{background:repeating-linear-gradient(125deg,transparent 0 28px,#FFF7FF2a 30px 32px,transparent 34px 61px),repeating-linear-gradient(45deg,transparent 0 42px,#FEBAF432 44px 46px,transparent 48px 79px)}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__water>b{border-color:#FFF8FF;background:#FEBAF433;border-radius:0;rotate:45deg;box-shadow:0 0 7px #8DA7E7}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__vfx>s{background:radial-gradient(ellipse,#FEBAF438,transparent 70%)}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__vfx>u{background:linear-gradient(105deg,transparent 30%,#FFF8FF1a 48%,transparent 67%)}
.koye-flute-tooltip[data-koye-theme="kristaly"] header{border-bottom-color:#E8D6B650}
.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__icon i{border-color:#FEBAF4}
.koye-flute-tooltip[data-koye-theme="kristaly"] :is(.koye-flute-tooltip__track span.is-threshold,.koye-flute-tooltip__progress,footer span){border-color:#E8D6B666}
@keyframes koyeCrystalWaltz{to{transform:rotate(24deg) scale(1.04);border-top-color:#FEBAF4;border-bottom-color:#8DA7E7}}
@keyframes koyeCrystalPetal{0%{opacity:0;transform:translate(0,18px) rotate(-28deg) scale(.5)}30%,65%{opacity:.85}100%{opacity:0;transform:translate(16px,-44px) rotate(100deg) scale(.9)}}
@keyframes koyeCrystalInstrument{to{filter:drop-shadow(0 0 5px #FFF) drop-shadow(0 0 9px #8DA7E7)}}

/* Elegáns Koye · emerald gala: gilded melody, champagne ward, sovereign dragon. */
[data-koye-theme="elegans"] :is(.koye-liquid-volume,[data-dragon-part="body"]){stroke:#E7BF70;stroke-width:1.35;filter:drop-shadow(0 0 3px #18d392)}
[data-koye-theme="elegans"] :is(.koye-dragon-scales,.koye-guard-scales){fill:#00FFE425;stroke:#FFFFE2;stroke-width:.7;opacity:.88}
[data-koye-theme="elegans"] :is(.koye-dragon-dorsal,.koye-guard-fins){stroke:#E7BF70;stroke-width:1.2}
[data-koye-theme="elegans"] .koye-liquid-belly{stroke:#27735D;stroke-width:4;opacity:.85}
[data-koye-theme="elegans"] .koye-liquid-refraction{stroke:#00FFE4;stroke-width:2.4;opacity:.86}
[data-koye-theme="elegans"] .koye-liquid-caustics{stroke:#FFFFE2;stroke-width:1.2;opacity:.7}
[data-koye-theme="elegans"] .koye-liquid-foam{stroke:#E7BF70;stroke-width:1.3;stroke-dasharray:22 9 3 9}
.koye-emerald-eye{filter:drop-shadow(0 0 3px #00FFE4)}
[data-koye-theme="elegans"] .koye-skin-charm{width:48px;height:48px;margin:-24px;filter:drop-shadow(0 1px 2px #080F0D) drop-shadow(0 0 4px #18d392)}
.koye-elegant-filigree{position:absolute;inset:4% 3%;border:1px solid #E7BF70;border-left-color:transparent;border-right-color:transparent;border-radius:25% 25% 45% 45%;transform:rotate(-16deg);opacity:.8;animation:koyeElegantFiligree 3.2s ease-in-out infinite alternate}
.koye-elegant-filigree.is-cross{inset:12% -4%;transform:rotate(16deg);animation-delay:-1.6s;border-color:#FFFFE270 transparent}
.koye-elegant-gem{position:absolute;width:9px;height:17px;background:linear-gradient(130deg,#FFFFE2 0 20%,#00FFE4 21% 45%,#18d392 46% 70%,#10362A 71%);clip-path:polygon(50% 0,100% 34%,50% 100%,0 34%);filter:drop-shadow(0 0 4px #00FFE4);animation:koyeElegantGem 2.8s calc(var(--gem-i)*-.37s) ease-in-out infinite}
.koye-flute-cast[data-koye-theme="elegans"] .koye-flute-cast__ring{border-color:#E7BF70 transparent #FFFFE2;box-shadow:0 0 10px #18d39280}
.koye-flute-cast[data-koye-theme="elegans"] .koye-skin-charm{width:38px;height:38px;margin:-19px}
.koye-vfx-stage[data-koye-theme="elegans"] .koye-melody-link>i{height:2px;background:linear-gradient(90deg,transparent,#E7BF70,#FFFFE2,#18d392,transparent);box-shadow:0 0 6px #18d392}
.koye-melody-vfx[data-koye-theme="elegans"] .koye-melody-vfx__water{border-color:#E7BF70 #27735D #FFFFE2;border-radius:18% 18% 35% 35%;background:repeating-linear-gradient(115deg,transparent 0 25px,#E7BF7015 26px 27px,transparent 28px 52px)}
.koye-melody-vfx[data-koye-theme="elegans"] .koye-melody-vfx__thread{border-top:2px solid #E7BF70;box-shadow:0 -1px 0 #FFFFE2}
.koye-melody-vfx[data-koye-theme="elegans"] .koye-melody-vfx__notes b{color:#FFFFE2;text-shadow:0 0 3px #E7BF70,0 0 9px #18d392}
.koye-shield-rise[data-koye-theme="elegans"] .koye-shield-rise__sheet{border-radius:0;background:conic-gradient(from 35deg at 50% 20%,#10362A35,#18d39266,#FFFFE250,#27735D66,#00FFE45c,#10362A35);clip-path:polygon(8% 0,92% 0,85% 54%,65% 70%,54% 74%,54% 93%,77% 96%,77% 100%,23% 100%,23% 96%,46% 93%,46% 74%,35% 70%,15% 54%)}
.koye-shield-rise[data-koye-theme="elegans"] .koye-shield-rise__dome{border:2px solid #E7BF70;border-radius:12% 12% 44% 44%;box-shadow:inset 0 0 25px #18d39270,0 0 12px #00FFE470}
.koye-shield-rise[data-koye-theme="elegans"]>b{width:6px;height:6px;border:1px solid #FFFFE2;background:#18d39250;box-shadow:0 0 5px #E7BF70}
.koye-persistent-water-frame[data-koye-theme="elegans"]{border-color:#E7BF70;overflow:visible;animation:none;box-shadow:0 0 9px #18d39275,inset 0 0 7px #10362A}
.koye-persistent-water-frame[data-koye-theme="elegans"]>i{background:linear-gradient(100deg,#10362A,#E7BF70,#FFFFE2,#18d392,#10362A);background-size:220% 100%}
.koye-persistent-water-frame[data-koye-theme="elegans"]>b{background:#18d392;border-color:#E7BF70;border-radius:0;rotate:45deg}
:is(.koye-persistent-water-frame,.koye-dragon-guard)[data-koye-theme="elegans"] .koye-skin-charm{width:32px;height:32px;margin:-16px}
.koye-dragon-guard[data-koye-theme="elegans"]{filter:drop-shadow(0 0 4px #18d39285)}
.koye-dragon-guard[data-koye-theme="elegans"] .koye-elegant-filigree{inset:0 -3%;border-width:1px;opacity:.4}
.koye-sanctification[data-koye-theme="elegans"] .koye-sanctification__column{background:repeating-linear-gradient(104deg,transparent 0 14%,#FFFFE260 15%,#E7BF7026 18%,transparent 23%),linear-gradient(90deg,transparent,#18d39255,#FFFFE299,#27735D55,transparent);clip-path:polygon(0 0,22% 17%,24% 0,50% 23%,76% 0,78% 17%,100% 0,87% 100%,13% 100%)}
.koye-sanctification[data-koye-theme="elegans"] .koye-sanctification__halo{border-color:#E7BF70 #FFFFE2 #18d392;box-shadow:0 0 12px #18d392,inset 0 0 10px #E7BF7060}
.koye-sanctification[data-koye-theme="elegans"] .koye-sanctification__sigil{border-color:#E7BF70 transparent;box-shadow:0 0 14px #18d39280,inset 0 0 18px #10362A80}
.koye-sanctification[data-koye-theme="elegans"] .koye-sanctification__veil{border-color:#E7BF70;background:repeating-linear-gradient(106deg,transparent 0 18px,#E7BF7030 19px 20px,transparent 21px 35px),linear-gradient(90deg,#10362A25,#18d39260,transparent)}
.koye-elegant-coronation{position:absolute;left:50%;top:-12%;width:96px;height:96px;transform:translateX(-50%);filter:drop-shadow(0 0 6px #E7BF70);animation:koyeElegantCrown 2.7s ease-out both}
.koye-elegant-toast{position:absolute;left:50%;top:35%;width:92px;height:128px;transform:translateX(-50%);filter:drop-shadow(0 0 8px #18d392);animation:koyeElegantToast 2.7s ease-out both}
.koye-sanctification.is-upgraded[data-koye-theme="elegans"] .koye-elegant-coronation{width:132px;height:132px;top:-18%}
[data-koye-theme="elegans"] :is(.koye-water-impact__splash,.koye-sanctification__rain)>b{border-radius:0;clip-path:polygon(50% 0,100% 38%,50% 100%,0 38%);background:linear-gradient(115deg,#FFFFE2,#00FFE4 40%,#18d392 45%,#27735D);width:9px;height:15px}
.hero-card[data-koye-theme="elegans"] .koye-water-fill{background:repeating-linear-gradient(115deg,transparent 0 30px,#E7BF7023 31px 33px,transparent 34px 62px),linear-gradient(180deg,#00FFE44a,#18d39288 35%,#27735Daa 65%,#10362Ad9);border-color:#E7BF70;box-shadow:0 -8px 22px #18d39275,inset 0 15px 30px #FFFFE22a}
.hero-card[data-koye-theme="elegans"] .koye-water-wave{border-color:#FFFFE2;filter:drop-shadow(0 0 5px #18d392)}
.hero-card[data-koye-theme="elegans"] .koye-water-fill i{border-color:#E7BF70;background:#18d39240;box-shadow:0 0 4px #00FFE4}
.hero-card[data-koye-theme="elegans"] .koye-water-fill i:nth-of-type(3n){border-radius:0;rotate:45deg;background:#FFFFE2}
/* The extra-mechanic meter and expanded tooltip use the same gala materials. */
.koye-flute-meter[data-koye-theme="elegans"]::before{border-color:#E7BF70;background:conic-gradient(from 25deg,#080F0D,#10362A,#27735D,#E7BF70,#10362A,#080F0D);box-shadow:0 0 12px #18d39275,inset 0 0 9px #E7BF7060}
.koye-flute-meter[data-koye-theme="elegans"]>img,.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__icon img{filter:drop-shadow(0 0 3px #FFFFE2) drop-shadow(0 0 7px #18d392);animation:koyeElegantInstrument 3s ease-in-out infinite alternate}
.koye-flute-meter[data-koye-theme="elegans"] .koye-flute-aura{box-shadow:inset 0 0 16px #18d39245}
.koye-flute-meter[data-koye-theme="elegans"] .koye-flute-aura::before{border-color:#E7BF70 transparent #FFFFE2}
.koye-flute-meter[data-koye-theme="elegans"] .koye-flute-aura::after{background:conic-gradient(from 30deg,transparent,#18d39255,transparent 35%,#E7BF7038,transparent 70%)}
.koye-flute-meter[data-koye-theme="elegans"] .koye-flute-aura i{background:linear-gradient(135deg,#FFFFE2,#00FFE4 40%,#18d392);border:1px solid #E7BF70;border-radius:0;clip-path:polygon(50% 0,100% 38%,50% 100%,0 38%);box-shadow:0 0 6px #18d392}
.koye-flute-tooltip[data-koye-theme="elegans"]{--koye-c1:#FFFFE2;--koye-c2:#18d392;--koye-c3:#27735D;--koye-c4:#10362A;--koye-c5:#080F0D;border-color:#E7BF70;background:repeating-linear-gradient(115deg,transparent 0 55px,#E7BF7008 56px 57px,transparent 58px 110px),radial-gradient(ellipse at 85% 0,#18d39225,transparent 55%),linear-gradient(140deg,#080F0D,#10362A 65%,#080F0D);box-shadow:0 24px 70px #000e,0 0 24px #18d39250,inset 0 0 35px #E7BF7010;color:#FFFFE2}
.koye-flute-tooltip[data-koye-theme="elegans"].is-max{border-color:#FFFFE2;box-shadow:0 24px 70px #000e,0 0 28px #18d392,0 0 45px #E7BF7050,inset 0 0 30px #00FFE415}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__water{background:linear-gradient(180deg,#18d39265,#27735Da0 40%,#10362Ad9);box-shadow:0 -8px 20px #18d39260,inset 0 20px 32px #FFFFE22a}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__water>i{border-top-color:#E7BF70;filter:drop-shadow(0 0 5px #18d392)}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__water>em{background:repeating-linear-gradient(115deg,transparent 0 30px,#E7BF7020 31px 33px,transparent 34px 62px)}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__water>b{border-color:#FFFFE2;background:#18d39230;box-shadow:0 0 6px #00FFE4}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__water>b:nth-of-type(3n){border-radius:0;rotate:45deg;background:#00FFE470}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__vfx>s{background:radial-gradient(ellipse,#18d39230,transparent 70%)}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__vfx>u{background:linear-gradient(105deg,transparent 30%,#FFFFE213 48%,transparent 67%)}
.koye-flute-tooltip[data-koye-theme="elegans"] header{border-bottom-color:#E7BF7050}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__icon i{border-color:#E7BF70;box-shadow:0 0 10px #18d39250}
.koye-flute-tooltip[data-koye-theme="elegans"] :is(.koye-flute-tooltip__track span.is-threshold,.koye-flute-tooltip__progress,footer span){border-color:#E7BF7066}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__track span.is-filled{background:linear-gradient(145deg,#27735D,#10362A);box-shadow:inset 0 0 9px #18d39255}
.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__milestones .is-reached{border-color:#18d392;color:#FFFFE2;background:#10362Ab3}
@keyframes koyeElegantFiligree{to{transform:rotate(14deg) scale(1.05);opacity:.45}}
@keyframes koyeElegantGem{0%,100%{opacity:.1;transform:translateY(14px) rotate(-12deg) scale(.65)}45%{opacity:1;transform:translateY(-16px) rotate(10deg)}}
@keyframes koyeElegantCrown{0%{opacity:0;transform:translate(-50%,32px) scale(.4)}25%,65%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-32px) scale(1.15)}}
@keyframes koyeElegantToast{0%{opacity:0;transform:translate(-50%,45px) rotate(-12deg) scale(.6)}30%,65%{opacity:.95;transform:translate(-50%,0) rotate(8deg)}100%{opacity:0;transform:translate(-50%,-44px) rotate(0) scale(1.08)}}
@keyframes koyeElegantInstrument{to{filter:drop-shadow(0 0 4px #E7BF70) drop-shadow(0 0 10px #18d392)}}
@media(prefers-reduced-motion:reduce){[data-koye-theme="elegans"] :is(.koye-elegant-filigree,.koye-elegant-gem,.koye-elegant-coronation,.koye-elegant-toast){animation:none;opacity:.8}.koye-flute-meter[data-koye-theme="elegans"]>img,.koye-flute-tooltip[data-koye-theme="elegans"] .koye-flute-tooltip__icon img{animation:none}}
@media(prefers-reduced-motion:reduce){[data-koye-theme="kristaly"] .koye-crystal-petal{animation:none;opacity:.6}[data-koye-theme="kristaly"] .koye-crystal-waltz,.koye-flute-meter[data-koye-theme="kristaly"]>img,.koye-flute-tooltip[data-koye-theme="kristaly"] .koye-flute-tooltip__icon img{animation:none}}
