:root{--bg:#090b12;--panel:#111725;--panel2:#171f31;--line:#2b3650;--text:#f3f6ff;--muted:#99a6c2;--cyan:#35e0ff;--violet:#9e6cff;--gold:#ffcf5a;--danger:#ff5571;--ok:#5ef2a0;--shadow:0 18px 55px rgba(0,0,0,.35)}*{box-sizing:border-box}html,body{margin:0;background:radial-gradient(circle at 30% -10%,#18284c 0,transparent 35%),radial-gradient(circle at 85% 15%,#261947 0,transparent 28%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100%}button,input{font:inherit}.topbar{min-height:72px;padding:12px clamp(14px,3vw,34px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(7,10,18,.82);backdrop-filter:blur(14px);position:sticky;top:0;z-index:50}.brand{display:flex;gap:10px;align-items:center;color:var(--text);background:none;border:0;cursor:pointer;text-align:left}.brand b{letter-spacing:.12em}.brand small{display:block;color:var(--muted);font-size:.67rem;letter-spacing:.18em}.skull{font-size:1.8rem;color:var(--gold)}.top-actions{display:flex;gap:9px;align-items:center}.wallet-pill{font-size:.78rem;color:var(--muted);max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn{border:1px solid transparent;border-radius:12px;padding:11px 16px;color:#071017;background:linear-gradient(135deg,var(--cyan),#65f6c6);font-weight:800;cursor:pointer;transition:.18s transform,.18s opacity,.18s border}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.38;cursor:not-allowed;transform:none}.btn.ghost{color:var(--text);background:#141b2b;border-color:var(--line)}.btn.gold{background:linear-gradient(135deg,#ffd66b,#ff9f43);color:#261700}.btn.danger{background:#351522;color:#ff9aad;border-color:#6b283d}.btn.big{padding:15px 24px;font-size:1rem}.screen{max-width:1240px;margin:0 auto;padding:clamp(22px,4vw,52px) clamp(14px,3vw,30px) 70px}.hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:34px;align-items:center;padding-top:30px}.eyebrow{text-transform:uppercase;color:var(--cyan);font-weight:900;letter-spacing:.2em;font-size:.76rem}.hero h1{font-size:clamp(2.8rem,7vw,6.6rem);line-height:.88;margin:12px 0 18px;letter-spacing:-.06em}.hero h1 span{display:block;color:transparent;background:linear-gradient(90deg,var(--cyan),#b99cff,var(--gold));background-clip:text;-webkit-background-clip:text}.lead{color:#bac5dc;font-size:clamp(1rem,2vw,1.2rem);line-height:1.65;max-width:700px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:32px}.feature{padding:14px;background:rgba(17,23,37,.68);border:1px solid var(--line);border-radius:14px}.feature strong{display:block;font-size:1.1rem}.feature span{color:var(--muted);font-size:.8rem}.hero-card{position:relative;min-height:470px;border-radius:28px;background:linear-gradient(160deg,#171d31,#0d1220);border:1px solid #394461;box-shadow:var(--shadow);padding:18px;overflow:hidden}.hero-card:before{content:"";position:absolute;inset:-40%;background:conic-gradient(from 40deg,transparent,var(--cyan),transparent,var(--violet),transparent);opacity:.18;animation:spin 16s linear infinite}.hero-card-inner{position:relative;height:100%;border-radius:20px;overflow:hidden;background:#090d17}.hero-card img{width:100%;height:390px;object-fit:cover;display:block;opacity:.9}.hero-card .caption{padding:16px 18px;position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(4,6,12,.98) 45%)}.caption b{font-size:1.45rem}.tag{display:inline-flex;align-items:center;border:1px solid var(--line);background:#121a2a;color:#cbd5ea;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:800}.tag.founder{border-color:#7c6228;color:#ffd66b}.tag.free{color:#9fdfff}.section-title{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:18px}.section-title h2{font-size:clamp(1.7rem,3vw,2.5rem);margin:0}.section-title p{margin:4px 0;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}.avatar-card{position:relative;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel);cursor:pointer;transition:.18s transform,.18s border,.18s box-shadow;text-align:left;color:var(--text);padding:0}.avatar-card:hover{transform:translateY(-3px);border-color:#5b6d95}.avatar-card.selected{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(53,224,255,.16)}.avatar-card.locked{filter:saturate(.45);opacity:.68}.avatar-img{aspect-ratio:1/1;width:100%;object-fit:cover;display:block}.avatar-info{padding:12px}.avatar-info h3{font-size:1rem;margin:0 0 7px}.meta-row{display:flex;gap:6px;flex-wrap:wrap}.lock-badge{position:absolute;top:10px;right:10px;padding:7px 9px;border-radius:10px;background:rgba(5,8,14,.88);font-size:.72rem;font-weight:900}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 22px}.search{flex:1;min-width:220px;background:#111827;border:1px solid var(--line);color:var(--text);padding:12px 14px;border-radius:12px;outline:none}.search:focus{border-color:var(--cyan)}select.search{flex:0 0 185px}.deck-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:22px}.avatar-summary{background:var(--panel);border:1px solid var(--line);border-radius:20px;overflow:hidden;height:max-content;position:sticky;top:94px}.avatar-summary img{width:100%;aspect-ratio:1;object-fit:cover}.avatar-summary .body{padding:16px}.avatar-summary h2{margin:0 0 4px}.statline{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:9px 0;font-size:.86rem}.statline span{color:var(--muted)}.deck-head{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.deck-counter{font-weight:900;color:var(--cyan)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-top:15px}.game-card{position:relative;min-height:238px;border:1px solid #35415e;background:linear-gradient(160deg,#182139,#0c111e);border-radius:16px;overflow:hidden;color:var(--text);cursor:pointer;padding:0;text-align:left;transition:.15s transform,.15s border}.game-card:hover{transform:translateY(-3px);border-color:#7186b5}.game-card.in-deck{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(53,224,255,.12)}.game-card.disabled{opacity:.45;cursor:not-allowed}.card-art{height:108px;background-size:cover;background-position:center 30%;position:relative}.card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(9,12,20,.92))}.card-cost{position:absolute;top:8px;left:8px;z-index:2;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;background:#162b4d;border:1px solid #4db8ff;font-weight:900}.scope{position:absolute;right:8px;top:8px;z-index:2;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;background:rgba(7,9,16,.8);padding:5px 7px;border-radius:7px}.card-body{padding:10px 11px}.card-body h4{margin:0 0 4px;font-size:.87rem}.card-body p{font-size:.7rem;line-height:1.35;color:#abb8d2;margin:0}.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mode{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px}.mode h3{font-size:1.35rem;margin:0 0 8px}.mode p{color:var(--muted);min-height:66px;line-height:1.5}.room-box{display:flex;gap:8px;margin-top:12px}.room-box input{min-width:0;width:100%;background:#0d1321;border:1px solid var(--line);color:var(--text);border-radius:10px;padding:11px;text-transform:uppercase}.notice{border:1px solid #5d4e2d;background:#231e13;color:#edd99c;padding:13px 15px;border-radius:12px;line-height:1.45}.battle-shell{max-width:1120px;margin:0 auto;padding:16px 14px 50px}.arena{border:1px solid #2d3955;border-radius:24px;overflow:hidden;background:radial-gradient(circle at center,#172447 0,#0a101c 55%,#070a11 100%);min-height:660px;box-shadow:var(--shadow);position:relative}.fighter{display:grid;grid-template-columns:118px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 18px}.fighter.enemy{border-bottom:1px solid rgba(255,255,255,.07)}.fighter.me{border-top:1px solid rgba(255,255,255,.07)}.fighter img{width:108px;height:108px;border-radius:16px;object-fit:cover;border:2px solid #455678}.fighter h3{margin:0 0 5px}.fighter small{color:var(--muted)}.bars{margin-top:8px;display:grid;gap:5px}.bar{height:10px;background:#242c3d;border-radius:999px;overflow:hidden}.bar>i{height:100%;display:block;transition:width .35s ease}.hp i{background:linear-gradient(90deg,#ff4d6d,#ff8a5b)}.shield i{background:linear-gradient(90deg,#45a8ff,#65e7ff)}.fighter-stats{text-align:right;font-weight:900}.fighter-stats .hptext{font-size:1.2rem}.fighter-stats .shieldtext{color:#70d9ff}.battle-center{min-height:300px;padding:18px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative}.turn-badge{position:absolute;top:12px;left:50%;transform:translateX(-50%);padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:#0d1424;font-size:.75rem;color:#cbd7ed}.battle-log{width:min(620px,94%);height:122px;overflow:auto;background:rgba(5,8,14,.48);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:10px 12px;font-size:.76rem;color:#9eacc7}.battle-log div+div{margin-top:4px}.hand{display:flex;gap:8px;justify-content:center;align-items:flex-end;min-height:160px;width:100%;overflow-x:auto;padding:15px 8px 6px}.hand .game-card{min-width:142px;width:142px;min-height:205px;transform-origin:bottom}.hand .game-card:hover{transform:translateY(-9px) scale(1.03)}.hand .card-art{height:82px}.battle-controls{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;padding:9px 16px 16px}.energy{font-size:1.1rem;font-weight:900;color:var(--cyan);padding:10px 14px}.ultimate.ready{animation:pulse 1.2s infinite;box-shadow:0 0 28px rgba(158,108,255,.25)}.result{position:absolute;inset:0;background:rgba(5,7,12,.86);backdrop-filter:blur(8px);z-index:20;display:grid;place-items:center;text-align:center;padding:20px}.result-box h2{font-size:3rem;margin:0 0 8px}.result-box p{color:var(--muted)}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%,20px);background:#131b2a;border:1px solid #42516f;color:var(--text);padding:11px 16px;border-radius:12px;opacity:0;pointer-events:none;z-index:200;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}.fx-layer{position:fixed;inset:0;pointer-events:none;z-index:150;overflow:hidden}.fx-card{position:absolute;left:50%;top:50%;width:210px;height:310px;transform:translate(-50%,-50%) scale(.4);border-radius:22px;border:2px solid var(--cyan);background:#10182a;box-shadow:0 0 70px rgba(53,224,255,.35);overflow:hidden;animation:cardCast .72s ease both}.fx-card img{width:100%;height:190px;object-fit:cover}.fx-card b{display:block;padding:13px;text-align:center;font-size:1.15rem}.fx-hit{position:absolute;left:50%;top:32%;width:80px;height:80px;border-radius:50%;border:4px solid #fff;transform:translate(-50%,-50%);animation:hit .55s ease-out both}.fx-text{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);font-size:clamp(2rem,7vw,5rem);font-weight:1000;letter-spacing:.08em;text-shadow:0 0 25px currentColor;animation:ult .95s ease both}.fx-layer.glitch{animation:screenGlitch .35s linear}.fx-layer.cannon{background:radial-gradient(circle at 50% 30%,rgba(255,132,48,.2),transparent 25%)}.fx-layer.arcane{background:radial-gradient(circle at center,rgba(159,89,255,.18),transparent 35%)}.footer-note{text-align:center;color:#65718b;font-size:.74rem;margin-top:36px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.025)}}@keyframes cardCast{0%{opacity:0;transform:translate(-50%,-35%) scale(.35) rotate(-8deg)}45%{opacity:1;transform:translate(-50%,-50%) scale(1.02) rotate(0)}100%{opacity:0;transform:translate(-50%,-70%) scale(.9)}}@keyframes hit{0%{opacity:1;transform:translate(-50%,-50%) scale(.2)}100%{opacity:0;transform:translate(-50%,-50%) scale(4)}}@keyframes ult{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}35%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.15)}}@keyframes screenGlitch{20%{transform:translateX(5px)}40%{transform:translateX(-6px)}60%{transform:translateX(3px)}80%{transform:translateX(-2px)}}@media(max-width:850px){.hero{grid-template-columns:1fr}.hero-card{min-height:380px}.hero-card img{height:340px}.feature-strip{grid-template-columns:repeat(2,1fr)}.deck-layout{grid-template-columns:1fr}.avatar-summary{position:static;display:grid;grid-template-columns:150px 1fr}.avatar-summary img{height:100%;aspect-ratio:auto}.mode-grid{grid-template-columns:1fr}.fighter{grid-template-columns:76px minmax(0,1fr) auto;padding:11px}.fighter img{width:70px;height:70px}.hand{justify-content:flex-start}.wallet-pill{display:none}.arena{min-height:610px}.battle-center{min-height:270px}}@media(max-width:520px){.topbar{padding:10px}.brand small{display:none}.btn{padding:10px 12px}.screen{padding:20px 11px 55px}.hero{padding-top:10px}.hero h1{font-size:3.2rem}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.avatar-info{padding:9px}.avatar-info .tag:nth-child(n+3){display:none}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-card{min-height:220px}.fighter-stats{font-size:.8rem}.fighter-stats .hptext{font-size:.95rem}.battle-shell{padding:8px 6px 30px}.arena{border-radius:15px}.hand .game-card{min-width:126px;width:126px}.avatar-summary{grid-template-columns:110px 1fr}.feature-strip{grid-template-columns:1fr 1fr}}
.btn.compact{padding:9px 12px}.lang-btn{min-width:64px}.home-notes{display:grid;gap:7px;color:var(--muted);font-size:.82rem;margin-top:18px}.card-art{height:126px;background-position:center;background-color:#0a0f19}.card-art .art-4k{position:absolute;z-index:2;left:8px;bottom:8px;border-radius:6px;padding:3px 5px;font-size:.55rem;font-weight:1000;letter-spacing:.12em;background:rgba(7,9,16,.8);color:#c9f8ff;border:1px solid rgba(84,217,255,.3)}.game-card{min-height:270px}.hand .card-art{height:94px}.fx-card img{height:190px;object-fit:cover}.shop-banner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,rgba(24,34,57,.95),rgba(12,17,30,.95));margin-bottom:20px}.shop-banner h3{font-size:1.7rem;margin:8px 0}.shop-banner p{color:var(--muted);margin:0;max-width:720px}.shop-status{display:inline-flex;padding:6px 9px;border-radius:999px;background:#332914;color:#ffd66b;border:1px solid #6b5423;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.shop-coins{white-space:nowrap;font-size:1.1rem;font-weight:900;color:var(--gold)}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shop-product{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--panel)}.pack-art{height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;background:radial-gradient(circle at 50% 25%,rgba(53,224,255,.20),transparent 35%),linear-gradient(145deg,#1a2340,#0b101d);border-bottom:1px solid var(--line)}.pack-art span{font-size:.65rem;letter-spacing:.22em;color:var(--cyan);font-weight:900}.pack-art b{margin-top:12px;font-size:1.4rem;max-width:260px}.shop-product-body{padding:16px}.shop-product-body h3{margin:0 0 7px}.shop-product-body p{min-height:58px;color:var(--muted);line-height:1.45;font-size:.86rem}.shop-price{font-weight:900;color:var(--gold);margin:12px 0}.shop-product .btn{width:100%}@media(max-width:850px){.shop-grid{grid-template-columns:1fr}.shop-banner{align-items:flex-start;flex-direction:column}.top-actions{gap:6px}.top-actions .btn{padding:9px 10px}.card-art{height:115px}}@media(max-width:520px){#shopBtn{display:none}.lang-btn{min-width:54px}.game-card{min-height:245px}.card-art{height:105px}.shop-grid{gap:10px}}

/* =========================================================
   v1.2.0 — Arena Battle Update
   Original WEB3 GC tactical arena presentation.
   ========================================================= */
.battle-shell{max-width:1320px;margin:0 auto;padding:14px 14px 54px}
.arena{min-height:760px;border-radius:28px;background:
  radial-gradient(circle at 50% 48%,rgba(62,119,183,.17),transparent 24%),
  radial-gradient(circle at 20% 40%,rgba(126,67,205,.10),transparent 28%),
  linear-gradient(180deg,#080d17,#0b1220 45%,#080c15);overflow:hidden}
.fighter{position:relative;z-index:7;grid-template-columns:92px minmax(0,1fr) auto;min-height:112px;padding:12px 18px;background:linear-gradient(90deg,rgba(8,13,23,.96),rgba(15,24,41,.82),rgba(8,13,23,.96));transition:filter .2s,transform .2s}
.fighter.enemy{border-bottom:1px solid rgba(92,139,218,.2)}
.fighter.me{border-top:1px solid rgba(92,139,218,.2)}
.fighter-portrait{position:relative;width:78px;height:78px}
.fighter-portrait img{width:78px;height:78px;border-radius:16px;object-fit:cover;border:2px solid #526585;position:relative;z-index:2;box-shadow:0 7px 24px rgba(0,0,0,.28)}
.fighter-aura{position:absolute;inset:-6px;border-radius:20px;background:conic-gradient(from 0deg,transparent,rgba(64,213,255,.5),transparent,rgba(171,104,255,.5),transparent);filter:blur(5px);opacity:.42;animation:auraSpin 7s linear infinite}
.fighter-main{min-width:0}
.fighter-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.fighter-title h3{font-size:1rem;margin:0}
.fighter-title small{font-size:.72rem}
.fighter .bars{max-width:760px;margin-top:7px}
.status-row{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px;min-height:21px}
.status-chip{font-size:.58rem;padding:3px 7px;border-radius:999px;border:1px solid rgba(255,255,255,.11);background:rgba(5,10,18,.58);letter-spacing:.04em;color:#9eacc5}
.status-chip.burn{color:#ffb16d;border-color:rgba(255,126,54,.35)}.status-chip.poison{color:#9ce788;border-color:rgba(92,205,91,.32)}.status-chip.weaken{color:#db9aff;border-color:rgba(185,104,255,.32)}.status-chip.focus{color:#86e9ff;border-color:rgba(75,219,255,.32)}
.fighter-stats{font-size:.82rem}.fighter-stats .hptext{font-size:1rem}.fighter-stats .energytext{color:#ffd467}
.fighter.hit-react{animation:fighterHit .44s ease}.fighter.hit-react .fighter-portrait img{filter:brightness(1.5) saturate(1.45)}
.float-stat{position:absolute;z-index:30;right:25%;top:45%;font-size:1.4rem;font-weight:1000;letter-spacing:.04em;text-shadow:0 2px 12px #000;pointer-events:none;animation:floatStat .95s ease-out both}.float-stat.damage{color:#ff6b72}.float-stat.shield{color:#65ddff}.float-stat.heal{color:#78f2a8}.float-stat.energy{color:#ffd66b}.float-stat.status{color:#d89dff}
.battle-center{min-height:530px;padding:0;display:block;position:relative;background:linear-gradient(180deg,rgba(7,12,21,.15),rgba(14,22,39,.35),rgba(7,12,21,.15))}
.duel-board{position:relative;min-height:355px;overflow:hidden;border-top:1px solid rgba(255,255,255,.025);border-bottom:1px solid rgba(255,255,255,.07);background:
 linear-gradient(rgba(91,130,188,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(91,130,188,.07) 1px,transparent 1px),
 radial-gradient(ellipse at center,rgba(38,72,116,.28),rgba(8,13,23,.72) 66%);background-size:42px 42px,42px 42px,auto;isolation:isolate}
.duel-board:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 0 25%,rgba(53,224,255,.035) 25.5% 26%,transparent 26.5% 74%,rgba(168,104,255,.035) 74.5% 75%,transparent 75.5%)}
.duel-board.is-my-turn{box-shadow:inset 0 0 80px rgba(44,179,226,.055)}.duel-board.is-enemy-turn{box-shadow:inset 0 0 70px rgba(194,72,126,.035)}
.turn-ribbon{position:absolute;left:50%;top:12px;transform:translateX(-50%);display:flex;gap:9px;align-items:center;padding:6px 12px;border-radius:999px;border:1px solid #304366;background:rgba(6,12,22,.9);backdrop-filter:blur(8px);z-index:15;box-shadow:0 5px 18px rgba(0,0,0,.25);font-size:.68rem;color:#91a7c8}.turn-ribbon b{color:#eef7ff;letter-spacing:.06em}.is-my-turn .turn-ribbon{border-color:rgba(72,213,255,.55);box-shadow:0 0 18px rgba(53,224,255,.09)}
.field-lane{height:62px;display:flex;align-items:center;justify-content:center;position:relative;color:#7385a4;font-size:.58rem;text-transform:uppercase;letter-spacing:.16em}.field-lane>span{position:absolute;left:22px}.field-lane.enemy-lane{border-bottom:1px solid rgba(255,255,255,.035)}.field-lane.player-lane{border-top:1px solid rgba(255,255,255,.035)}
.field-slots{display:flex;gap:14px}.field-slots i{display:block;width:72px;height:42px;border:1px solid rgba(93,126,173,.22);border-radius:9px;background:linear-gradient(145deg,rgba(16,29,49,.32),rgba(6,12,21,.28));box-shadow:inset 0 0 13px rgba(66,146,220,.035)}
.arena-main{display:grid;grid-template-columns:110px minmax(300px,1fr) 260px;min-height:230px;align-items:center;gap:12px;padding:9px 18px}
.left-rail{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-right:1px solid rgba(255,255,255,.045)}
.card-pile{text-align:center;color:#8192af;font-size:.61rem;text-transform:uppercase;letter-spacing:.08em}.pile-stack{position:relative;width:54px;height:68px;margin:0 auto 5px}.pile-stack i{position:absolute;inset:0;border-radius:8px;border:1px solid #3e547b;background:linear-gradient(145deg,#16233d,#0a111e)}.pile-stack i:nth-child(1){transform:translate(-4px,4px)}.pile-stack i:nth-child(2){transform:translate(-2px,2px)}.pile-stack i:nth-child(3){background:radial-gradient(circle at center,#253d69,#0b1424 70%)}.pile-stack span{position:absolute;inset:0;display:grid;place-items:center;z-index:3;color:#e7f6ff;font-weight:1000;font-size:1.05rem}.arena-meter{font-size:.6rem;color:#72819e;text-transform:uppercase;text-align:center}.arena-meter b{display:block;font-size:.92rem;color:#cbd9ef;margin-top:2px}
.arena-core{position:relative;min-height:210px;display:grid;place-items:center;perspective:1000px;overflow:visible}
.core-ring{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(68,183,236,.18);transform:translate(-50%,-50%);pointer-events:none}.core-ring.r1{width:215px;height:215px;box-shadow:0 0 40px rgba(53,224,255,.06),inset 0 0 40px rgba(53,224,255,.025)}.core-ring.r2{width:165px;height:165px;border-style:dashed;animation:ringSpin 14s linear infinite}.core-ring.r3{width:112px;height:112px;border-color:rgba(182,112,255,.19);animation:ringSpin 9s linear infinite reverse}
.arena-card-slot{position:relative;z-index:8;width:min(350px,90%);min-height:190px;display:grid;place-items:center}
.arena-empty{text-align:center;display:flex;flex-direction:column;align-items:center;color:#8090aa;gap:4px}.arena-empty strong{font-size:.74rem;letter-spacing:.22em;color:#a7b7ce}.arena-empty span{font-size:.68rem}.arena-sigil{width:64px;height:64px;display:grid;place-items:center;border-radius:50%;border:1px solid #33577a;color:#72dfff;font-size:1.6rem;box-shadow:0 0 28px rgba(52,210,255,.09),inset 0 0 20px rgba(52,210,255,.05);animation:sigilPulse 2.2s ease-in-out infinite}
.arena-active-card{width:min(340px,94%);height:184px;border:1px solid #546d98;border-radius:16px;background:#0d1626;display:grid;grid-template-columns:45% 55%;overflow:hidden;box-shadow:0 16px 42px rgba(0,0,0,.38),0 0 38px rgba(69,198,255,.13);transform:rotateX(1deg);animation:arenaCardEnter .42s cubic-bezier(.16,.8,.24,1) both}.arena-card-image{position:relative;background-size:cover;background-position:center;border-right:1px solid rgba(255,255,255,.08)}.arena-card-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(10,18,31,.82))}.arena-card-cost{position:absolute;z-index:3;left:8px;top:8px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#142f54;border:1px solid #4fcfff;color:#fff;font-weight:1000}.arena-card-type{position:absolute;z-index:3;left:8px;bottom:8px;padding:4px 7px;border-radius:6px;background:rgba(5,9,16,.82);font-size:.58rem;text-transform:uppercase;letter-spacing:.1em}.arena-card-copy{display:flex;flex-direction:column;justify-content:center;padding:14px 15px;min-width:0}.arena-card-copy>span{font-size:.58rem;color:#5bdcff;letter-spacing:.17em}.arena-card-copy>b{font-size:1.15rem;margin:5px 0 7px}.arena-card-copy>small{font-size:.7rem;line-height:1.35;color:#a6b5ce}.arena-active-card.resolving{animation:arenaCardResolve .9s ease both}.arena-card-slot.pulse-cast{filter:brightness(1.06)}
.arena-fx{position:absolute;inset:0;pointer-events:none;z-index:20}.arena-particle{position:absolute;left:50%;top:50%;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 12px currentColor;animation:particleBurst .82s cubic-bezier(.1,.5,.2,1) both}.arena-particle.impact{color:#ff8b5f;background:#ffd2a8}.arena-particle.shield{color:#52d9ff;background:#b7f5ff}.arena-particle.magic{color:#bd7aff;background:#e7c6ff}
.combat-feed{align-self:stretch;border-left:1px solid rgba(255,255,255,.045);padding:8px 0 8px 12px;min-width:0}.combat-feed-head{display:flex;justify-content:space-between;align-items:center;font-size:.6rem;text-transform:uppercase;letter-spacing:.13em;color:#8497b6;padding:3px 7px 8px}.combat-feed-head b{display:grid;place-items:center;min-width:24px;height:20px;border-radius:999px;background:#152039;color:#aec2df}.combat-feed-body{display:grid;gap:4px}.log-line{padding:5px 7px;border-left:2px solid #243651;background:rgba(5,10,18,.34);font-size:.63rem;line-height:1.3;color:#8f9eb8;border-radius:0 6px 6px 0}.log-line.latest{color:#dbe8fa;border-left-color:#4dcfff;background:rgba(31,71,109,.18)}
.arena-beams{position:absolute;inset:0;pointer-events:none;overflow:hidden}.arena-beams i{position:absolute;top:50%;left:50%;width:1px;height:170%;background:linear-gradient(transparent,rgba(90,210,255,.12),transparent);transform-origin:center}.arena-beams i:nth-child(1){transform:translate(-50%,-50%) rotate(34deg)}.arena-beams i:nth-child(2){transform:translate(-50%,-50%) rotate(-34deg)}.arena-beams i:nth-child(3){transform:translate(-50%,-50%) rotate(90deg);opacity:.4}
.duel-board.resolving .core-ring.r1{animation:coreFlash .68s ease}.duel-board.type-attack .arena-core{animation:arenaKick .34s ease}.duel-board.type-defense .core-ring{border-color:rgba(72,216,255,.58);box-shadow:0 0 32px rgba(72,216,255,.12)}.duel-board.type-skill .core-ring{border-color:rgba(183,111,255,.52)}
.duel-board.fx-glitch .arena-core{animation:glitchBoard .35s steps(2,end) 2}.duel-board.fx-cannon .arena-core:after{content:"";position:absolute;width:70%;height:8px;border-radius:99px;background:linear-gradient(90deg,transparent,#ff8e48,#fff,transparent);filter:blur(1px);animation:cannonLine .58s ease-out}.duel-board.fx-arcane .arena-core:after{content:"✦";position:absolute;font-size:8rem;color:rgba(185,116,255,.18);text-shadow:0 0 35px #9f65ff;animation:arcaneBurst .7s ease}.duel-board.fx-shield .arena-card-slot:after{content:"";position:absolute;width:240px;height:150px;border-radius:50%;border:3px solid rgba(74,215,255,.45);box-shadow:0 0 36px rgba(74,215,255,.2);animation:shieldWave .76s ease-out}.duel-board.fx-slash .arena-core:after{content:"";position:absolute;width:240px;height:3px;background:#fff;box-shadow:0 0 16px #7ed6ff;transform:rotate(-22deg);animation:slashFx .42s ease-out}.duel-board.fx-target .arena-core:after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;border:2px solid #ff607f;box-shadow:inset 0 0 0 18px rgba(255,68,99,.035),0 0 24px rgba(255,73,105,.16);animation:targetLock .72s ease}.duel-board.fx-gold .arena-core{filter:sepia(.15) brightness(1.08)}.duel-board.fx-tide .core-ring{transform:translate(-50%,-50%) scaleX(1.18);border-color:rgba(80,183,255,.4)}.duel-board.fx-chaos .arena-core{animation:chaosPulse .48s ease 2}.duel-board.fx-rush .arena-active-card{animation:rushCard .62s ease}.duel-board.fx-royal .arena-active-card{box-shadow:0 0 48px rgba(255,204,77,.22)}.duel-board.fx-forge .core-ring{border-color:rgba(255,143,64,.45)}.duel-board.fx-genesis .core-ring{border-color:rgba(66,215,255,.45)}
.hand-wrap{padding:8px 12px 14px;background:linear-gradient(180deg,rgba(4,8,14,.18),rgba(4,8,14,.58))}.hand-title{max-width:1000px;margin:0 auto -5px;display:flex;align-items:center;justify-content:space-between;color:#7f90ac;font-size:.62rem;text-transform:uppercase;letter-spacing:.12em}.hand{min-height:152px;padding:12px 8px 2px;overflow-x:auto;overflow-y:visible;scrollbar-width:thin}.hand .game-card{min-width:138px;width:138px;min-height:198px;border-radius:13px;box-shadow:0 8px 22px rgba(0,0,0,.25);transition:transform .16s ease,filter .16s,border-color .16s;position:relative}.hand .game-card:not(.disabled):hover{transform:translateY(-14px) scale(1.055);z-index:12;border-color:#65d8ff;box-shadow:0 14px 34px rgba(0,0,0,.35),0 0 18px rgba(67,208,255,.09)}.hand .game-card:not(.disabled):active{transform:translateY(-8px) scale(1.02)}.hand .card-art{height:88px}.hand .card-body{padding:8px}.hand .card-body h4{font-size:.78rem}.hand .card-body p{font-size:.62rem}.hand .game-card.disabled{filter:saturate(.65);opacity:.48}
.battle-controls{position:relative;z-index:8;background:#080d17;border-top:1px solid rgba(255,255,255,.06);padding:10px 16px 14px}.sound-btn{min-width:48px;padding-inline:12px}.ultimate.ready{position:relative;overflow:hidden}.ultimate.ready:after{content:"";position:absolute;inset:-1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:translateX(-120%);animation:ultSweep 1.6s ease infinite}
.flight-card{position:fixed;z-index:9999;border:1px solid #63dbff;border-radius:14px;background:#0d1728;overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.55),0 0 35px rgba(66,211,255,.22);pointer-events:none;will-change:transform}.flight-card>div{height:68%;background-size:cover;background-position:center}.flight-card>b{height:32%;display:flex;align-items:center;justify-content:center;padding:6px;text-align:center;font-size:.72rem;background:#0d1524;color:#eef8ff}
.ultimate-layer{background:radial-gradient(circle at center,rgba(21,44,78,.52),rgba(2,5,10,.82));backdrop-filter:blur(3px)}.ultimate-cinematic{position:absolute;inset:0;display:grid;grid-template-columns:minmax(280px,42%) minmax(320px,1fr);align-items:center;overflow:hidden}.ultimate-avatar{align-self:stretch;position:relative;overflow:hidden;clip-path:polygon(0 0,100% 0,78% 100%,0 100%);animation:ultAvatarIn .45s cubic-bezier(.2,.8,.2,1) both}.ultimate-avatar img{width:100%;height:100%;object-fit:cover;filter:contrast(1.12) saturate(1.2)}.ultimate-avatar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 45%,rgba(6,11,20,.88))}.ultimate-copy{position:relative;z-index:5;padding:25px;animation:ultCopyIn .55s .12s ease both}.ultimate-copy span{display:block;font-size:.85rem;color:#95a8c8;letter-spacing:.22em;text-transform:uppercase}.ultimate-copy b{display:block;font-size:clamp(2rem,5vw,5rem);line-height:.95;margin:8px 0 13px;letter-spacing:.02em;color:#fff;text-shadow:0 0 35px rgba(78,207,255,.38)}.ultimate-copy i{font-style:normal;color:#63dfff;font-size:.7rem;letter-spacing:.22em}.ultimate-burst{position:absolute;left:42%;top:50%;width:8px;height:150%;background:#fff;box-shadow:0 0 45px #65dbff;transform:translate(-50%,-50%) rotate(14deg);animation:ultBurst .8s .3s ease both}
.fx-layer.glitch .ultimate-copy b{color:#c4a6ff}.fx-layer.cannon .ultimate-copy b{color:#ffc079}.fx-layer.arcane .ultimate-copy b{color:#d9a8ff}.fx-layer.gold .ultimate-copy b,.fx-layer.royal .ultimate-copy b{color:#ffe28a}.fx-layer.slash .ultimate-copy b{color:#b7ebff}
@keyframes auraSpin{to{transform:rotate(360deg)}}
@keyframes ringSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes sigilPulse{50%{transform:scale(1.07);box-shadow:0 0 38px rgba(52,210,255,.18),inset 0 0 24px rgba(52,210,255,.08)}}
@keyframes arenaCardEnter{0%{opacity:0;transform:translateY(30px) rotateX(18deg) scale(.78)}100%{opacity:1;transform:translateY(0) rotateX(1deg) scale(1)}}
@keyframes arenaCardResolve{0%,100%{transform:scale(1)}35%{transform:scale(1.055);filter:brightness(1.22)}65%{transform:scale(.99)}}
@keyframes particleBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}18%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r)) scale(.2)}}
@keyframes fighterHit{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(7px)}60%{transform:translateX(-4px)}80%{transform:translateX(2px)}}
@keyframes floatStat{0%{opacity:0;transform:translateY(8px) scale(.65)}20%{opacity:1;transform:translateY(0) scale(1.08)}100%{opacity:0;transform:translateY(-38px) scale(.96)}}
@keyframes coreFlash{40%{transform:translate(-50%,-50%) scale(1.12);box-shadow:0 0 55px rgba(87,222,255,.25)}}
@keyframes arenaKick{40%{transform:scale(1.018)}}
@keyframes glitchBoard{0%,100%{transform:none;filter:none}25%{transform:translateX(5px);filter:hue-rotate(55deg)}50%{transform:translateX(-5px)}75%{transform:translateY(2px);filter:hue-rotate(-45deg)}}
@keyframes cannonLine{0%{opacity:0;transform:translateX(-45%) scaleX(.1)}25%{opacity:1}100%{opacity:0;transform:translateX(50%) scaleX(1.5)}}
@keyframes arcaneBurst{0%{opacity:0;transform:scale(.3) rotate(-40deg)}50%{opacity:1}100%{opacity:0;transform:scale(1.7) rotate(55deg)}}
@keyframes shieldWave{0%{opacity:0;transform:scale(.4)}35%{opacity:1}100%{opacity:0;transform:scale(1.45)}}
@keyframes slashFx{0%{opacity:0;transform:translate(-80px,40px) rotate(-22deg) scaleX(.2)}35%{opacity:1}100%{opacity:0;transform:translate(80px,-40px) rotate(-22deg) scaleX(1.4)}}
@keyframes targetLock{0%{opacity:0;transform:scale(1.7) rotate(40deg)}50%{opacity:1;transform:scale(.8) rotate(0)}100%{opacity:0;transform:scale(.65)}}
@keyframes chaosPulse{0%,100%{filter:none;transform:none}50%{filter:saturate(1.7) hue-rotate(35deg);transform:scale(1.025)}}
@keyframes rushCard{0%{transform:translateX(-70px) scale(.8);opacity:0}60%{transform:translateX(8px) scale(1.04);opacity:1}100%{transform:none}}
@keyframes ultSweep{to{transform:translateX(120%)}}
@keyframes ultAvatarIn{0%{opacity:0;transform:translateX(-18%);filter:brightness(2)}100%{opacity:1;transform:none}}
@keyframes ultCopyIn{0%{opacity:0;transform:translateX(55px)}100%{opacity:1;transform:none}}
@keyframes ultBurst{0%{opacity:0;transform:translate(-50%,-50%) rotate(14deg) scaleY(.2)}45%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) rotate(14deg) scaleY(1.3)}}
@media (prefers-reduced-motion:reduce){.fighter-aura,.core-ring,.arena-sigil,.ultimate.ready:after{animation:none!important}.duel-board,.arena-active-card,.fighter,.flight-card{animation-duration:.01ms!important;transition-duration:.01ms!important}}
@media(max-width:980px){.arena-main{grid-template-columns:82px minmax(260px,1fr) 210px;padding-inline:10px}.combat-feed{padding-left:8px}.field-lane>span{display:none}.field-slots i{width:56px}.fighter{grid-template-columns:78px minmax(0,1fr) auto}.fighter-portrait,.fighter-portrait img{width:68px;height:68px}.arena-active-card{height:170px}}
@media(max-width:760px){.battle-shell{padding:7px 5px 28px}.arena{border-radius:17px;min-height:690px}.fighter{grid-template-columns:62px minmax(0,1fr) auto;padding:8px 10px;min-height:88px}.fighter-portrait,.fighter-portrait img{width:56px;height:56px;border-radius:12px}.fighter-title h3{font-size:.83rem}.fighter-title small{font-size:.61rem}.fighter-stats{font-size:.66rem}.fighter-stats .hptext{font-size:.8rem}.status-row{display:none}.arena-main{grid-template-columns:54px minmax(220px,1fr);min-height:220px;padding:8px}.combat-feed{position:absolute;right:7px;bottom:68px;width:185px;max-height:88px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(5,10,18,.82);padding:5px;z-index:12;opacity:.78}.combat-feed-head{display:none}.combat-feed-body .log-line:nth-child(n+4){display:none}.log-line{font-size:.54rem;padding:3px 5px}.left-rail{border-right:0}.pile-stack{width:38px;height:48px}.arena-active-card{height:158px;grid-template-columns:46% 54%}.arena-card-copy{padding:9px}.arena-card-copy>b{font-size:.92rem}.arena-card-copy>small{font-size:.59rem;max-height:48px;overflow:hidden}.field-lane{height:48px}.field-slots i{width:48px;height:30px}.turn-ribbon{top:7px}.battle-center{min-height:490px}.hand{justify-content:flex-start;min-height:145px}.hand .game-card{min-width:124px;width:124px;min-height:187px}.hand .card-art{height:80px}.ultimate-cinematic{grid-template-columns:48% 52%}.ultimate-copy{padding:14px}.ultimate-copy b{font-size:clamp(1.6rem,8vw,3rem)}}
@media(max-width:480px){.arena-main{grid-template-columns:44px minmax(190px,1fr)}.left-rail{gap:4px}.card-pile small,.arena-meter span{display:none}.pile-stack{width:30px;height:40px}.arena-meter b{font-size:.72rem}.combat-feed{display:none}.arena-card-slot{width:98%}.arena-active-card{height:145px}.arena-card-copy>small{display:none}.field-slots{gap:7px}.field-slots i{width:42px}.battle-controls{gap:5px;padding-inline:7px}.battle-controls .btn{padding:9px 10px;font-size:.72rem}.energy{font-size:.83rem;padding:9px 7px}.sound-btn{min-width:39px}.ultimate-cinematic{grid-template-columns:1fr}.ultimate-avatar{position:absolute;inset:0;clip-path:none;opacity:.45}.ultimate-copy{margin-left:0;padding:22px;align-self:end}.ultimate-copy b{font-size:2.2rem}.ultimate-burst{left:12%}}
.arena-active-card.from-enemy{animation-name:arenaCardEnterEnemy}.arena-active-card.from-player{animation-name:arenaCardEnter}
@keyframes arenaCardEnterEnemy{0%{opacity:0;transform:translateY(-34px) rotateX(-18deg) scale(.78)}100%{opacity:1;transform:translateY(0) rotateX(1deg) scale(1)}}

/* v1.3.0 — Beta accounts + ranking */
.account-btn.signed-in{border-color:rgba(94,242,160,.45);color:#baffd7;background:rgba(25,67,50,.38)}
.player-home-card{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:22px 0 4px;padding:14px 16px;border:1px solid rgba(53,224,255,.2);border-radius:16px;background:linear-gradient(135deg,rgba(13,31,50,.88),rgba(19,22,41,.88));max-width:700px}.player-home-card>div:first-child{display:flex;flex-direction:column;min-width:180px}.player-home-card span,.player-home-card small{color:var(--muted);font-size:.75rem}.player-home-card strong{font-size:1.15rem}.player-home-stats{display:flex;flex-direction:column;align-items:center;padding:0 16px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.player-home-stats b{font-size:1.2rem;color:var(--cyan)}
.auth-screen{min-height:calc(100vh - 72px);display:grid;place-items:center}.auth-card{width:min(520px,100%);background:linear-gradient(160deg,#151d2d,#0a0f19);border:1px solid #34415d;border-radius:24px;padding:28px;box-shadow:var(--shadow)}.auth-card h2{font-size:2rem;margin:8px 0}.auth-card>p{color:var(--muted);line-height:1.55}.auth-card form{display:grid;gap:15px;margin-top:22px}.auth-card label{display:grid;gap:7px;font-size:.82rem;font-weight:800;color:#d6def0}.auth-card input{width:100%;background:#0c1320;border:1px solid var(--line);border-radius:12px;padding:13px 14px;color:var(--text);outline:none}.auth-card input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(53,224,255,.08)}.auth-card label small{color:var(--muted);font-size:.67rem;font-weight:500}.auth-submit{width:100%;margin-top:3px}.auth-switch{width:100%;border:0;background:none;color:var(--cyan);font-weight:800;padding:15px 0 8px;cursor:pointer}.auth-back{width:100%;margin-top:6px}.profile-card{width:min(680px,100%)}.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.profile-grid>div,.my-rank>div{background:#0c1422;border:1px solid var(--line);border-radius:13px;padding:13px}.profile-grid span,.my-rank span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em}.profile-grid b,.my-rank b{display:block;margin-top:4px;font-size:1.05rem}.profile-actions{display:flex;gap:9px;flex-wrap:wrap}.profile-actions .btn{flex:1}
.my-rank{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}.rank-note{margin-bottom:16px}.ranking-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:18px;background:#0b111d}.ranking-table{width:100%;border-collapse:collapse;min-width:720px}.ranking-table th,.ranking-table td{padding:13px 15px;border-bottom:1px solid rgba(255,255,255,.06);text-align:left}.ranking-table th{position:sticky;top:0;background:#121a2a;color:#8fa1bf;font-size:.69rem;text-transform:uppercase;letter-spacing:.08em}.ranking-table tbody tr:hover{background:rgba(53,224,255,.035)}.ranking-table tr.is-me{background:rgba(94,242,160,.065);box-shadow:inset 3px 0 #5ef2a0}.rank-pos{font-weight:1000;color:var(--gold)}.rank-user{display:flex;flex-direction:column}.rank-user small{color:var(--muted);font-size:.68rem;margin-top:2px}.ranking-loading{min-height:220px;display:grid;place-items:center;color:var(--muted);font-size:1.4rem}
@media(max-width:900px){.top-actions{gap:5px;flex-wrap:wrap;justify-content:flex-end}.top-actions .compact{padding:9px 10px;font-size:.72rem}.wallet-pill{display:none}.profile-grid,.my-rank{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.topbar{align-items:flex-start}.brand small{display:none}.top-actions{max-width:72%}.walletBtn{display:none}.auth-card{padding:20px;border-radius:18px}.profile-grid,.my-rank{grid-template-columns:1fr 1fr}.player-home-card{align-items:stretch}.player-home-stats{border-right:0}.player-home-card .btn{width:100%}}

/* v1.3.2 — reliable card artwork fallback */
.card-art{overflow:hidden}
.card-art-img,.arena-card-art-img,.flight-card-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;z-index:0}
.card-art>span,.arena-card-image>span{position:absolute}
.card-art:after,.arena-card-image:after{z-index:1;pointer-events:none}
.card-art .card-cost,.card-art .scope,.card-art .art-4k,.arena-card-image .arena-card-cost,.arena-card-image .arena-card-type{z-index:3}
.arena-card-image{position:relative;overflow:hidden;background-size:cover;background-position:center}
.flight-card-art{height:68%;position:relative;overflow:hidden;background-size:cover;background-position:center}


/* v1.3.3 — illustrated battle cards restored from v1.4.2 visual set */
:root{--card-red:#ff5166;--card-red2:#ff9b4e;--card-blue:#45c8ff;--card-blue2:#687bff;--card-green:#52ef9b;--card-green2:#1fcbb1;--card-purple:#c06cff;--card-purple2:#7858ff;--card-gold:#ffd36d;--card-gold2:#ff9b45}
.game-card{--card-accent:#6f8bb8;--card-accent2:#8aa6d2;--card-glow:rgba(79,159,255,.18);min-height:318px;border:1px solid color-mix(in srgb,var(--card-accent) 62%,#23304a);border-radius:16px;background:linear-gradient(180deg,#11192a 0,#090e18 100%);box-shadow:0 13px 28px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.025);isolation:isolate;overflow:hidden;transform-style:preserve-3d}
.game-card:before{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;border-radius:15px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--card-accent) 45%,transparent),inset 0 -70px 80px rgba(0,0,0,.15)}
.game-card:after{content:"";position:absolute;z-index:5;left:10%;right:10%;top:0;height:2px;background:linear-gradient(90deg,transparent,var(--card-accent),#fff,var(--card-accent),transparent);opacity:.72}
.game-card.theme-attack{--card-accent:var(--card-red);--card-accent2:var(--card-red2);--card-glow:rgba(255,72,90,.23)}
.game-card.theme-defense{--card-accent:var(--card-blue);--card-accent2:var(--card-blue2);--card-glow:rgba(59,197,255,.23)}
.game-card.theme-support{--card-accent:var(--card-green);--card-accent2:var(--card-green2);--card-glow:rgba(64,238,151,.20)}
.game-card.theme-control{--card-accent:var(--card-purple);--card-accent2:var(--card-purple2);--card-glow:rgba(185,93,255,.23)}
.game-card.theme-magic{--card-accent:#b267ff;--card-accent2:#e86cff;--card-glow:rgba(176,90,255,.24)}
.game-card.scope-signature{border-color:#e9bd56;box-shadow:0 13px 32px rgba(0,0,0,.4),0 0 0 1px rgba(255,209,96,.14),0 0 22px rgba(255,191,62,.06)}
.game-card.scope-signature:after{background:linear-gradient(90deg,transparent,#dcae48,#fff5c2,#dcae48,transparent);opacity:.88}
.game-card:hover{transform:translateY(-6px);border-color:var(--card-accent);box-shadow:0 18px 40px rgba(0,0,0,.42),0 0 25px var(--card-glow)}
.game-card.in-deck{border-color:#77e9ff;box-shadow:0 0 0 2px rgba(91,222,255,.2),0 16px 36px rgba(0,0,0,.36)}
.card-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:15px}
.card-art{height:166px;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;overflow:hidden;border-bottom:1px solid color-mix(in srgb,var(--card-accent) 50%,#1c2537)}
.card-art:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.02) 42%,rgba(5,8,14,.12) 68%,rgba(5,8,14,.92) 100%);z-index:1}
.card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(255,255,255,.10),transparent 20% 74%,rgba(255,255,255,.04));mix-blend-mode:screen;z-index:1}
.card-cost{top:9px;left:9px;z-index:3;width:38px;height:42px;border-radius:11px 11px 14px 14px;background:linear-gradient(155deg,color-mix(in srgb,var(--card-accent) 70%,#132344),#101a2d);border:1px solid rgba(255,255,255,.55);box-shadow:0 4px 13px rgba(0,0,0,.38),0 0 16px var(--card-glow);font-size:1.06rem;text-shadow:0 2px 5px rgba(0,0,0,.5)}
.card-type-icon{position:absolute;z-index:3;left:14px;bottom:9px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:rgba(4,8,15,.82);border:1px solid color-mix(in srgb,var(--card-accent) 65%,transparent);color:var(--card-accent);font-size:.82rem;box-shadow:0 0 14px var(--card-glow)}
.scope{top:9px;right:9px;padding:5px 8px;border-radius:7px;border:1px solid rgba(255,255,255,.14);background:rgba(5,9,16,.78);backdrop-filter:blur(4px);font-size:.54rem;color:#d8e1f2}
.card-nameplate{position:relative;z-index:2;margin-top:-2px;padding:8px 10px 7px;background:linear-gradient(90deg,color-mix(in srgb,var(--card-accent) 20%,#080d17),#090e18 54%,color-mix(in srgb,var(--card-accent2) 13%,#080d17));border-top:1px solid color-mix(in srgb,var(--card-accent) 48%,transparent);border-bottom:1px solid rgba(255,255,255,.06);text-align:center}
.card-nameplate small{display:block;color:var(--card-accent);font-size:.52rem;letter-spacing:.18em;font-weight:900}.card-nameplate h4{margin:2px 0 0;font-size:.88rem;line-height:1.15;color:#fff;text-shadow:0 1px 5px #000}
.card-body{min-height:101px;padding:10px 11px 9px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 0,var(--card-glow),transparent 56%)}.card-body p{font-size:.69rem;line-height:1.42;color:#c4cde0;margin:0;text-align:center}
.card-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;border-top:1px solid rgba(255,255,255,.06);margin-top:8px;padding-top:7px;color:#7f91ad;font-size:.51rem;text-transform:uppercase;letter-spacing:.08em}.card-footer b{color:var(--card-accent);font-size:.53rem}
.hand .game-card{min-height:232px}.hand .card-art{height:112px}.hand .card-nameplate{padding:6px 8px}.hand .card-nameplate h4{font-size:.77rem}.hand .card-nameplate small{font-size:.44rem}.hand .card-body{min-height:70px;padding:7px 9px}.hand .card-body p{font-size:.58rem;line-height:1.28}.hand .card-footer{font-size:.43rem;margin-top:5px;padding-top:5px}.hand .card-cost{width:34px;height:37px;font-size:.92rem}.hand .scope{font-size:.46rem;padding:4px 6px}.hand .card-type-icon{width:24px;height:24px;font-size:.7rem}
.arena-active-card.theme-attack{--card-accent:var(--card-red);--card-glow:rgba(255,72,90,.24)}.arena-active-card.theme-defense{--card-accent:var(--card-blue);--card-glow:rgba(61,201,255,.22)}.arena-active-card.theme-support{--card-accent:var(--card-green);--card-glow:rgba(72,235,153,.20)}.arena-active-card.theme-control,.arena-active-card.theme-magic{--card-accent:var(--card-purple);--card-glow:rgba(184,91,255,.23)}
.arena-card-image{background-size:cover;background-position:center}.flight-card{--card-accent:#62d8ff;border-color:var(--card-accent)}.flight-card.theme-attack{--card-accent:var(--card-red)}.flight-card.theme-defense{--card-accent:var(--card-blue)}.flight-card.theme-support{--card-accent:var(--card-green)}.flight-card.theme-control,.flight-card.theme-magic{--card-accent:var(--card-purple)}
@media(max-width:760px){.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.game-card{min-height:265px}.card-art{height:132px}.hand .game-card{min-width:132px;width:132px;min-height:205px}.hand .card-art{height:94px}}
