/* arena3.css — v3 擂台 */
.a3{position:relative;overflow:hidden}
.a3 h3{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.a3 h3 small,.a3 h4 small{font-weight:400;opacity:.65;font-size:11px}
.a3-cell{margin-left:auto;font-size:12px;padding:2px 8px;border-radius:10px;background:rgba(0,0,0,.25)}
.a3-stage{position:relative;height:250px;border-radius:12px;overflow:hidden;background:linear-gradient(#2b2f45,#151724)}
.a3.fin.bullW .a3-stage{background:radial-gradient(circle at 50% 30%,#7a3a12,#3a1208 70%)}
.a3.fin.bearW .a3-stage{background:radial-gradient(circle at 50% 30%,#3b2f7a,#120f2e 70%)}
.a3-ring{position:absolute;left:0;right:0;bottom:12px;display:flex;justify-content:space-around;align-items:flex-end;z-index:3}
.a3-mon{position:relative;text-align:center;width:42%;color:#fff}
.a3-mon img{height:92px;max-width:100%;image-rendering:pixelated;filter:drop-shadow(0 4px 4px rgba(0,0,0,.6))}
.a3-dex img.sil{filter:brightness(0) drop-shadow(0 0 1px #fff) drop-shadow(0 0 4px rgba(255,255,255,.7))}
.a3-mon b{display:block;font-size:13px}
.a3-mon .tier{font-style:normal;font-size:10px;padding:0 5px;border-radius:6px;background:#555}
.a3-mon .t1{background:#6b7d4a}.a3-mon .t2{background:#4a7d78}.a3-mon .t3{background:#4a5d9d}.a3-mon .t4{background:#8a4a9d}.a3-mon .t5{background:#b8862b}
.a3-mon .sean{position:absolute;top:-4px;left:0;font-style:normal;font-size:10px;background:#e3350d;color:#fff;padding:0 4px;border-radius:4px}
.a3-mon .ball{position:absolute;top:0;right:8px;width:12px;height:12px;border-radius:50%;background:linear-gradient(#e3350d 45%,#222 45% 55%,#fff 55%);border:1px solid #222}
.a3.go .a3-mon.bull{animation:a3hitL 1.6s ease-in-out infinite}.a3.go .a3-mon.bear{animation:a3hitR 1.6s ease-in-out infinite .8s}
@keyframes a3hitL{0%,100%{transform:none}45%{transform:translateX(22px)}50%{transform:translateX(26px) rotate(4deg)}}
@keyframes a3hitR{0%,100%{transform:none}45%{transform:translateX(-22px)}50%{transform:translateX(-26px) rotate(-4deg)}}
.a3-vs{color:#ffd54a;font-weight:900;font-size:20px;align-self:center}
.a3.fin .a3-loser{position:absolute;right:4px;bottom:0;transform:scale(.7);opacity:.85}
.a3.fin .a3-loser .a3-mon{transform:rotate(80deg) translateY(10px);filter:grayscale(.7)}
.a3-verdict{margin:8px 0 2px;font-weight:700;display:flex;flex-wrap:wrap;gap:6px}
.a3-verdict span{font-size:11px;font-weight:600;padding:1px 6px;border-radius:8px;background:#ffd54a;color:#3a2a00}
.a3-verdict .rareTag{background:#7a4ad9;color:#fff}.a3-verdict .evoTag{background:#2bbf6a;color:#fff}
.a3-k{font-size:11px;opacity:.7}
.a3-tl{display:flex;gap:6px;margin:6px 0;flex-wrap:wrap}
.a3-tl .cp{font-size:11px;padding:2px 6px;border-radius:8px;background:rgba(127,127,127,.18)}
.a3-tl .cp b{margin-right:3px}.a3-tl .cp i{font-style:normal;margin-left:4px;color:#e3350d}
.a3-tl .cp.bull{border-left:3px solid #e3350d}.a3-tl .cp.bear{border-left:3px solid #4a5dd9}
.a3 h4{margin:10px 0 4px;font-size:13px}
.a3-bench .row{display:flex;gap:8px;overflow-x:auto;padding:4px 0 8px;background:linear-gradient(transparent 70%,rgba(139,94,52,.35) 70%);border-radius:8px}
.a3-b{flex:0 0 78px;text-align:center;font-size:11px;padding-top:14px}.a3-b span{display:block}
.a3-b img{display:block;margin:0 auto;height:46px;image-rendering:pixelated;filter:grayscale(.3)}
.a3-b small{display:block;opacity:.6;font-size:9px}
/* 被擊倒退場：倒地 ✕✕ → 走到休息區坐下（只播一次） */
.a3-b.ko{position:relative;animation:a3walk 1.2s ease-out both;animation-delay:calc(var(--d) + .9s)}
.a3-b.ko img{animation:a3faint .9s ease-in both;animation-delay:var(--d)}
.a3-b.ko::before{content:'✕✕';position:absolute;top:12px;left:0;right:0;font-size:12px;color:#e3350d;font-weight:900;animation:a3eyes 2.1s both;animation-delay:var(--d);opacity:0}
@keyframes a3faint{0%{transform:none}40%{transform:rotate(-20deg) translateY(-6px)}100%{transform:rotate(90deg) translateY(4px);filter:grayscale(1)}}
@keyframes a3eyes{0%{opacity:0}10%,60%{opacity:1}100%{opacity:0}}
@keyframes a3walk{0%{transform:translateX(-120px);opacity:.4}80%{transform:translateX(0) translateY(-4px)}100%{transform:translateY(6px);opacity:1}}
.a3-b.ko img{transform-origin:50% 90%}
/* 冠軍王座：金色石雕高背椅＋兩側火炬＋三層台階 */
.a3-throne{position:absolute;left:50%;top:6px;width:150px;height:200px;margin-left:-75px;z-index:1;opacity:.35;transition:opacity .6s}
.a3-throne.on{opacity:1}
.a3-throne i{position:absolute;display:block}
.a3-throne .back{left:35px;width:80px;top:8px;height:110px;border-radius:40px 40px 6px 6px;background:linear-gradient(90deg,#8a6a1c,#f3d27a 30%,#c9a13a 55%,#7a5a14);box-shadow:inset 0 0 0 4px rgba(255,240,180,.35),inset 0 -20px 30px rgba(0,0,0,.35)}
.a3-throne .back::after{content:'';position:absolute;left:30px;top:10px;width:20px;height:20px;border-radius:50%;background:radial-gradient(#ff5050,#7a0000);box-shadow:0 0 8px #ff8080}
.a3-throne .seat{left:28px;width:94px;top:112px;height:18px;border-radius:4px;background:linear-gradient(#f3d27a,#9c7a24)}
.a3-throne .arm{top:92px;width:16px;height:36px;border-radius:6px;background:linear-gradient(#e8c25a,#8a6a1c)}
.a3-throne .arm.l{left:22px}.a3-throne .arm.r{right:22px}
.a3-throne .step{left:50%;height:12px;background:linear-gradient(#9a9aa8,#5a5a68);border-top:2px solid #c8c8d4}
.a3-throne .s1{top:130px;width:110px;margin-left:-55px}.a3-throne .s2{top:142px;width:130px;margin-left:-65px}.a3-throne .s3{top:154px;width:150px;margin-left:-75px}
.a3-throne .torch{top:40px;width:8px;height:70px;background:linear-gradient(#6a4a2a,#3a2a14);border-radius:2px}
.a3-throne .torch.l{left:2px}.a3-throne .torch.r{right:2px}
.a3-throne .torch u{position:absolute;left:-8px;top:-26px;width:24px;height:30px;border-radius:50% 50% 40% 40%;background:radial-gradient(circle at 50% 70%,#fff3b0,#ffb020 40%,#e3350d 75%,transparent 76%)}
.a3.go .a3-throne .torch u{animation:a3flame .35s ease-in-out infinite alternate}
@keyframes a3flame{from{transform:scale(1,1)}to{transform:scale(.9,1.12) translateY(-2px)}}
.a3-king{position:absolute;left:50%;top:44px;width:90px;margin-left:-45px;text-align:center;z-index:2;animation:a3climb 1.4s ease-out both}
.a3-king img{height:84px;image-rendering:pixelated;filter:drop-shadow(0 0 6px rgba(255,220,120,.8))}
.a3-king.gold img{border-radius:50%;box-shadow:0 0 0 3px #ffd54a,0 0 14px #ffd54a}
.a3-king.evo img:not(.pre){animation:a3evoIn 2.2s ease-out both}
.a3-king.evo img.pre{position:absolute;left:50%;margin-left:-42px;animation:a3evoOut 2.2s ease-out both}
@keyframes a3evoOut{0%{opacity:1;filter:brightness(1)}50%{opacity:1;filter:brightness(5)}60%,100%{opacity:0}}
@keyframes a3evoIn{0%,50%{opacity:0;filter:brightness(5)}100%{opacity:1}}
@keyframes a3climb{from{transform:translateY(90px)}to{transform:none}}
.a3-stage.big{animation:none}
.a3-dex .a3-c{display:flex;gap:8px;padding:6px 0;border-top:1px solid rgba(127,127,127,.2)}
.a3-c>img{width:52px;height:52px;object-fit:contain;image-rendering:pixelated}
.a3-c .i{flex:1;min-width:0}.a3-c b small{font-weight:400;opacity:.6;margin-left:6px;font-size:10px}
.a3-c .pb{position:relative;height:14px;border-radius:7px;background:rgba(127,127,127,.25);margin:3px 0;overflow:hidden}
.a3-c .pb i{position:absolute;left:0;top:0;bottom:0;background:linear-gradient(90deg,#e3350d,#ffcb05)}
.a3-c .pb span{position:relative;font-size:10px;padding-left:6px}
.a3-c ul{margin:0;padding-left:16px;font-size:11px}.a3-c li.ok{color:#2bbf6a}.a3-c li.ok::after{content:' ✓'}.a3-c li em{font-style:normal;opacity:.6}
.a3-disp .dp{display:inline-block;font-size:11px;padding:2px 6px;margin:2px;border-radius:8px;background:#e3350d;color:#fff}.a3-disp .dp.bear{background:#4a5dd9}
.a3-empty{padding:30px;text-align:center;opacity:.6}.a3-empty.sm{padding:6px}
/* 持股卡八格特效（只在有成交量資料時出現） */
.card.fx3-elec{box-shadow:0 0 0 2px #ffe14a,0 0 10px #ffe14a}
.card.fx3-ghost{box-shadow:inset 0 -14px 18px -8px rgba(110,40,160,.6)}
.card.fx3-ground{animation:a3shake .4s 2}
@keyframes a3shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}

@media (prefers-reduced-motion:reduce){.a3 *{animation:none!important}}
.a3-verdict .advTag{background:#e3350d;color:#fff}
/* 收盤：最後一擊特寫 → 勝方走上王座；收盤後凍結不再動 */
.a3.fin .a3-stage{animation:a3close 1.4s ease-out 1 both}
@keyframes a3close{0%{transform:scale(1.25)}30%{transform:scale(1.25) translateX(-4px)}35%{transform:scale(1.25) translateX(4px)}100%{transform:none}}
.a3.fin .a3-throne .torch u{animation:none}

/* sync33 */
.a3-dex>summary{list-style:none;cursor:pointer}.a3-dex>summary::-webkit-details-marker{display:none}
.a3-dex>summary h4::before{content:'▸ ';}.a3-dex[open]>summary h4::before{content:'▾ '}
.a3.go .a3-mon img{animation:a3bob .5s ease-in-out infinite alternate}
@keyframes a3bob{to{transform:translateY(-4px)}}
.a3.go .a3-vs{animation:a3vs .8s ease-in-out infinite}
@keyframes a3vs{50%{transform:scale(1.25);color:#fff}}
#pk2{cursor:pointer}
#a3av{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center}
#a3av .box{background:#1c1f30;color:#fff;border-radius:14px;padding:14px;width:min(92vw,380px)}
#a3av .g{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:8px 0}
#a3av .g button{background:#2b2f45;border:0;border-radius:10px;color:#fff;padding:6px 2px;font-size:11px}
#a3av .g img{height:44px;display:block;margin:0 auto;image-rendering:pixelated}
#a3av .x{width:100%;padding:8px;border:0;border-radius:8px}

/* sync35：面對面＋派出 */
.a3-mon .face{display:inline-block}.a3-mon.bull .face{transform:scaleX(-1)}
.a3.go .a3-ring{bottom:46px}
.a3-mon.mine .sean{background:#e3350d}
.a3-mon.enter .face{animation:a3appear 1.6s ease-out both}
.a3-mon.enter .pball{position:absolute;left:50%;top:40%;width:18px;height:18px;margin-left:-9px;border-radius:50%;background:linear-gradient(#e3350d 45%,#222 45% 55%,#fff 55%);border:2px solid #222;animation:a3throw .8s ease-out both;z-index:4}
.a3-mon.enter .pflash{position:absolute;left:50%;top:40%;width:120px;height:120px;margin:-60px 0 0 -60px;border-radius:50%;background:radial-gradient(#fff,rgba(255,255,255,0) 65%);opacity:0;animation:a3flash .5s ease-out .75s both;z-index:3}
.a3-mon.bull.enter .pball{--fx:-140px}.a3-mon.bear.enter .pball{--fx:140px}
@keyframes a3throw{0%{transform:translate(var(--fx),120px) rotate(0);opacity:1}60%{transform:translate(0,-40px) rotate(540deg)}90%{transform:translate(0,0) rotate(720deg);opacity:1}100%{opacity:0}}
@keyframes a3flash{0%{opacity:1;transform:scale(.2)}100%{opacity:0;transform:scale(1.4)}}
@keyframes a3appear{0%,50%{opacity:0;transform:scale(.1)}80%{opacity:1;filter:brightness(4)}100%{filter:none}}
.a3-mon.bull.enter .face{transform-origin:50% 80%}
.a3-dbtn{margin-left:auto;min-height:32px;padding:0 14px;border:0;border-radius:16px;background:#e3350d;color:#fff;font-weight:700;font-size:13px}
#a3dp{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,.65);display:flex;align-items:flex-end;justify-content:center}
#a3dp .box{background:#151922;color:#e8ecf3;width:100%;max-width:480px;border-radius:16px 16px 0 0;padding:16px 16px calc(16px + env(safe-area-inset-bottom));max-height:80vh;overflow:auto}
#a3dp h4 small{font-weight:400;opacity:.7;font-size:11px;margin-left:6px}#a3dp .g{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}
#a3dp .it{background:#202536;border-radius:12px;padding:6px;text-align:center;font-size:12px;border:2px solid transparent}#a3dp .it.on{border-color:#ffcb05}
#a3dp .it img{height:48px;image-rendering:pixelated;display:block;margin:0 auto}#a3dp .sb{display:flex;gap:4px;margin-top:4px}
#a3dp .sb button{flex:1;min-height:36px;border:0;border-radius:8px;background:#2a3350;color:#fff;font-weight:700}#a3dp .sb .b.on{background:#e3350d}#a3dp .sb .r.on{background:#4a5dd9}
#a3dp .msg{color:#ffcb05;min-height:18px}#a3dp .bt{display:flex;gap:10px}#a3dp .bt button{flex:1;min-height:48px;border:0;border-radius:12px;background:#2a3350;color:#fff;font-size:16px}#a3dp .bt .ok{background:#2A75BB}
