/* ท่าหลบ: ขอบเรืองฟ้าตอนหมัดเฉียด + เงาร่าง + 避 (ท่าเบี่ยงตัวเดิม cpop-dodge ยังเล่นเหมือนเดิม) */
.cpop-unit.fx6-dglow{animation-name:cpopDodgeFx,fx6Glow;animation-duration:calc(.55s/var(--speed-rate,1)),calc(.55s/var(--speed-rate,1));animation-timing-function:cubic-bezier(.15,.85,.35,1),ease-out}
@keyframes fx6Glow{0%{box-shadow:0 0 0 0 rgba(125,211,252,0)}30%{box-shadow:0 0 0 2px #7dd3fc,0 0 18px 4px rgba(125,211,252,.55)}100%{box-shadow:0 0 0 0 rgba(125,211,252,0)}}
.fx6-ghost{position:absolute;inset:-1px;border-radius:inherit;border:1.5px solid #7dd3fc;box-shadow:0 0 12px rgba(125,211,252,.6);pointer-events:none;animation:fx6GhostFx .45s ease-out forwards;z-index:3}
@keyframes fx6GhostFx{0%{opacity:.7;transform:translate3d(0,0,0)}100%{opacity:0;transform:translate3d(var(--gx),0,0)}}
.fx6-bi{position:absolute;left:50%;top:-6px;font:700 22px "Noto Serif TC",serif;color:#bae6fd;text-shadow:0 0 10px #38bdf8;pointer-events:none;z-index:4;animation:fx6BiFx .8s ease-out forwards}
@keyframes fx6BiFx{0%{opacity:0;transform:translate(-50%,6px) scale(.7)}25%{opacity:1;transform:translate(-50%,-6px) scale(1.1)}100%{opacity:0;transform:translate(-50%,-28px)}}
/* คอมโบลายพู่กัน — มุมขวาบนของเวที ใต้ป้ายรอบ */
.bt-stage .fx6-combo{position:absolute;top:30px;right:10px;z-index:40;display:flex;align-items:baseline;gap:2px;pointer-events:none;opacity:0;transition:opacity .45s;font-family:"Noto Serif TC",serif;color:#fde68a;text-shadow:0 0 12px rgba(233,187,97,.65)}
.bt-stage .fx6-combo.on{opacity:1;transition:none}
.fx6-combo b{font-size:30px;font-weight:700;line-height:1}.fx6-combo small{font-size:13px}
.fx6-combo.pop b{animation:fx6Brush .28s ease-out}
@keyframes fx6Brush{0%{clip-path:inset(0 100% 0 0);transform:scale(1.25)}100%{clip-path:inset(0 0 0 0);transform:scale(1)}}
/* ชื่อบอสเขียนทีละขีด */
.brv-nm.fx6-brush{font-size:0;width:min(92%,340px);margin-top:2px}
.brv-nm.fx6-brush svg{display:block;width:100%;height:auto;overflow:visible}
.brv-nm.fx6-brush text{font:800 32px "Noto Sans Thai","Sarabun",sans-serif;fill:currentColor;stroke:currentColor;stroke-width:1;stroke-dasharray:900;stroke-dashoffset:900;fill-opacity:0}
.boss-reveal.go .brv-nm.fx6-brush{animation:brvNmFx 1.6s 0s ease-out forwards}
.boss-reveal.go .brv-nm.fx6-brush text{animation:fx6Write .75s .5s cubic-bezier(.4,.1,.3,1) forwards}
@keyframes fx6Write{0%{stroke-dashoffset:900;fill-opacity:0}70%{stroke-dashoffset:0;fill-opacity:.2}100%{stroke-dashoffset:0;fill-opacity:1}}
/* ท้องฟ้าย้อนเวลา */
.fx6-sky{position:relative;margin:-2px 0 10px;border-radius:14px;overflow:hidden;height:118px}
.fx6-sky canvas{display:block;width:100%;height:118px}
.fx6-sky-t{position:absolute;left:14px;bottom:10px;display:flex;flex-direction:column;color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.6)}
.fx6-sky-t small{font-size:11px;opacity:.85}.fx6-sky-t b{font-size:22px;line-height:1.15;font-variant-numeric:tabular-nums}.fx6-sky-t .clk{font-size:11px;opacity:.85;font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){.fx6-ghost,.fx6-bi{display:none}}

/* ของดรอปบินเข้าแท็บอุปกรณ์ */
.fx6-fly{position:fixed;left:0;top:0;width:12px;height:12px;border-radius:3px;z-index:150;pointer-events:none}
.tab.fx6-bump .tab-icon{animation:fx6TabBump .35s}
@keyframes fx6TabBump{50%{transform:translateY(-6px) scale(1.2);filter:drop-shadow(0 0 8px #e9bb61)}}
.fx6-lootn{position:absolute;top:2px;right:22%;font:700 10px/1 sans-serif;padding:2px 5px;border-radius:99px;background:#16a34a;color:#fff;pointer-events:none}
