/* A finite success sequence, triggered only after native refinement advances a level. */
#pa-forge .pa254-upgrade-fx {position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
#pa-forge .pa254-forge-hammer {position:absolute;left:calc(50% - 28px);top:-22px;width:78px;height:106px;opacity:0;transform-origin:72% 90%;image-rendering:pixelated;filter:drop-shadow(3px 3px #102a32)}
#pa-forge .pa254-forge-impact {position:absolute;left:calc(50% - 45px);top:calc(50% - 45px);width:90px;height:90px;background:#fff7bb;opacity:0;clip-path:polygon(50% 0,60% 36%,88% 12%,66% 42%,100% 50%,65% 59%,88% 88%,58% 65%,50% 100%,40% 65%,12% 88%,34% 57%,0 50%,36% 42%,12% 12%,42% 35%)}
#pa-forge .pa254-forge-result {position:absolute;left:50%;bottom:12px;transform:translateX(-50%);min-width:172px;text-align:center;padding:6px 14px;background:#173b3bef;border:3px solid #f8d56e;box-shadow:0 4px #102a32;color:#ffe49a;opacity:0;border-radius:4px;font-size:12px;font-weight:900;line-height:1.3;white-space:nowrap}
#pa-forge .pa254-forge-result b {display:block;font-size:22px;color:#fff1b6;letter-spacing:1px}
#pa-forge .pa253-success .pa254-forge-hammer {animation:pa254-forge-hammer .68s cubic-bezier(.4,0,.8,.3) both}
#pa-forge .pa253-success .pa254-forge-impact {animation:pa254-forge-impact .6s .24s steps(5,end) both}
#pa-forge .pa253-success .pa253-stage-art {animation:pa254-forge-weapon 1.15s steps(8,end) both}
#pa-forge .pa253-success .pa254-forge-result {animation:pa254-forge-result 1.8s steps(8,end) both}
#pa-forge .pa253-success .pa253-weapon.on {animation:pa254-forge-tile 1.5s ease-out both}
#pa-forge .pa253-success .pa253-forge-status {padding:5px 8px;background:#c1d6ae;border-left:3px solid #4c8b61;color:#2b6948}
#pa-forge .pa253-success .pa253-sparks {animation-delay:.24s}
@keyframes pa254-forge-hammer {0%{opacity:0;transform:translate(-20px,-42px) rotate(-50deg)}12%{opacity:1;transform:translate(-20px,-36px) rotate(-48deg)}45%{opacity:1;transform:translate(4px,54px) rotate(18deg)}60%{opacity:1;transform:translate(-2px,40px) rotate(4deg)}100%{opacity:0;transform:translate(-20px,-24px) rotate(-25deg)}}
@keyframes pa254-forge-impact {0%{opacity:0;transform:scale(.15) rotate(0)}20%{opacity:.95;transform:scale(1) rotate(15deg)}100%{opacity:0;transform:scale(1.5) rotate(30deg)}}
@keyframes pa254-forge-weapon {0%,20%{transform:translateY(0) scale(1);filter:brightness(1)}30%{transform:translateY(5px) scale(.94);filter:brightness(1.2)}48%{transform:translateY(-10px) scale(1.13);filter:brightness(1.55) drop-shadow(0 0 7px #ffe886)}72%{transform:translateY(-7px) scale(1.07);filter:brightness(1.2)}100%{transform:translateY(0) scale(1);filter:brightness(1)}}
@keyframes pa254-forge-result {0%,25%{opacity:0;transform:translate(-50%,12px) scale(.9)}40%,87%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,-6px) scale(1)}}
@keyframes pa254-forge-tile {0%,25%{box-shadow:inset 0 2px #e6d48b,0 3px #102932}45%{box-shadow:inset 0 0 0 3px #fff2ac,0 0 16px #ffda83}100%{box-shadow:inset 0 2px #e6d48b,0 3px #102932}}
@media(max-width:600px),(max-height:500px) {
 #pa-forge .pa254-forge-hammer {width:58px;height:79px;top:-34px;left:calc(61% - 22px)}
 #pa-forge .pa254-forge-impact {left:calc(61% - 34px);top:calc(48% - 34px);width:68px;height:68px}
 #pa-forge .pa254-forge-result {bottom:7px;min-width:138px;padding:3px 10px;font-size:10px;border-width:2px}
 #pa-forge .pa254-forge-result b {font-size:18px}
 #pa-forge .pa253-success .pa253-forge-status {font-size:10px;padding:3px 5px}
}
@media(prefers-reduced-motion:reduce) {
 body.pa245-motion #pa-forge .pa253-workshop *,body.pa245-motion #pa-forge .pa253-workshop *::before,body.pa245-motion #pa-forge .pa253-workshop *::after {transition:none!important}
 #pa-forge .pa253-success :is(.pa254-forge-hammer,.pa254-forge-impact,.pa253-stage-art,.pa254-forge-result,.pa253-weapon.on) {animation:none!important}
 #pa-forge .pa253-success .pa254-forge-result {opacity:1;transform:translateX(-50%)}
}
