*{box-sizing:border-box}body{margin:0;background:#0b0b12;color:#fff;font-family:Segoe UI,system-ui,sans-serif}.pack-wrap{display:flex;flex-direction:column;align-items:center;gap:16px}.pack-title{font-size:42px;font-weight:800;margin:0;background:linear-gradient(90deg,#b46bff,#5eead4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-1px}.pack-subtitle{margin:0;color:#666;font-size:14px}.pack{width:220px;height:320px;border-radius:20px;cursor:pointer;position:relative;transition:transform .2s ease;animation:float 3s ease-in-out infinite}.pack:hover{transform:scale(1.06) translateY(-6px);animation:none}.pack:active{transform:scale(.97)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.pack-inner{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;background:linear-gradient(145deg,#1a0a2e,#0d0d1a,#1a0a2e);border:2px solid rgba(180,107,255,.5);box-shadow:0 0 30px #b46bff4d,0 0 60px #5eead41a,inset 0 0 30px #b46bff0d;overflow:hidden;display:flex;align-items:center;justify-content:center}.pack-shine{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.04) 50%,transparent 70%);background-size:200% 200%;animation:pack-shine 3s linear infinite;pointer-events:none}@keyframes pack-shine{0%{background-position:200% 200%}to{background-position:-200% -200%}}.pack-content{display:flex;flex-direction:column;align-items:center;gap:12px;z-index:1}.pack-dragon{font-size:72px;filter:drop-shadow(0 0 20px rgba(180,107,255,.8));animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{filter:drop-shadow(0 0 20px rgba(180,107,255,.8))}50%{filter:drop-shadow(0 0 40px rgba(94,234,212,.9))}}.pack-label{font-size:14px;font-weight:800;letter-spacing:3px;color:#fffc;text-transform:uppercase}.pack-count{font-size:12px;color:#fff6;letter-spacing:1px}.pack-hint{color:#444;font-size:13px;animation:blink-hint 2s ease-in-out infinite;margin:0}@keyframes blink-hint{0%,to{opacity:.4}50%{opacity:1}}.pixel-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:2;pointer-events:none}.pixel-card{height:400px;width:300px;position:relative;overflow:hidden;display:grid;place-items:center;aspect-ratio:4 / 5;border:1px solid #27272a;border-radius:25px;isolation:isolate;transition:border-color .2s cubic-bezier(.5,1,.89,1);-webkit-user-select:none;user-select:none}.pixel-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;aspect-ratio:1;background:radial-gradient(circle,#09090b,transparent 85%);opacity:0;transition:opacity .8s cubic-bezier(.5,1,.89,1)}.pixel-card:hover:before,.pixel-card:focus-within:before{opacity:1}.card-wrap{width:200px;height:300px;border-radius:16px;cursor:pointer;position:relative;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .6s ease,box-shadow .3s ease;flex-shrink:0;box-shadow:0 0 0 2px var(--rarity-color, transparent),0 0 16px var(--rarity-glow, transparent);animation:deal-in .45s cubic-bezier(.22,1,.36,1) both}@keyframes deal-in{0%{opacity:0;transform:translateY(-80px) scale(.85)}to{opacity:1;transform:translateY(0) scale(1)}}.card-wrap:not(.flipped):hover{transform:translateY(-10px) scale(1.04);transition:transform .2s ease}.card-wrap.flipped{transform:rotateY(180deg);cursor:default;transition:transform .6s ease}.card-wrap.jackpot.flipped{transition:transform 1.2s cubic-bezier(.34,1.56,.64,1)}.card-wrap.legendary.flipped{transform:rotateY(180deg) scale(1.12);transition:transform 1.6s cubic-bezier(.22,1.3,.36,1);z-index:5}.card-wrap.flipped:not(.jackpot){animation:none}.card-wrap.flipped.revealing:not(.jackpot){animation:rarity-pulse .7s ease forwards}@keyframes rarity-pulse{0%{box-shadow:0 0 0 2px var(--rarity-color, #333),0 0 16px var(--rarity-glow, transparent)}40%{box-shadow:0 0 0 4px var(--rarity-color, #333),0 0 40px var(--rarity-glow, transparent),0 0 80px var(--rarity-glow, transparent)}to{box-shadow:0 0 0 2px var(--rarity-color, #333),0 0 16px var(--rarity-glow, transparent)}}.card-wrap.jackpot{animation:rainbow-border 2s linear infinite}@keyframes rainbow-border{0%{box-shadow:0 0 0 3px #f66,0 0 40px #f33,0 0 80px #c00}16%{box-shadow:0 0 0 3px #ff6,0 0 40px #ff3,0 0 80px #cc0}33%{box-shadow:0 0 0 3px #6f6,0 0 40px #3f3,0 0 80px #0c0}50%{box-shadow:0 0 0 3px #6ff,0 0 40px #3ff,0 0 80px #0cc}66%{box-shadow:0 0 0 3px #66f,0 0 40px #33f,0 0 80px #00c}83%{box-shadow:0 0 0 3px #f6f,0 0 40px #f3f,0 0 80px #c0c}to{box-shadow:0 0 0 3px #f66,0 0 40px #f33,0 0 80px #c00}}.card-wrap.legendary{animation:legendary-border 2.5s linear infinite,legendary-shake .35s ease-in-out}@keyframes legendary-border{0%{box-shadow:0 0 0 4px gold,0 0 0 9px #f66,0 0 60px gold,0 0 120px #f33,0 0 200px red}16%{box-shadow:0 0 0 4px gold,0 0 0 9px #ff6,0 0 60px gold,0 0 120px #ff3,0 0 200px #ff0}33%{box-shadow:0 0 0 4px gold,0 0 0 9px #6f6,0 0 60px gold,0 0 120px #3f3,0 0 200px #0f0}50%{box-shadow:0 0 0 4px gold,0 0 0 9px #6ff,0 0 60px gold,0 0 120px #3ff,0 0 200px #0ff}66%{box-shadow:0 0 0 4px gold,0 0 0 9px #66f,0 0 60px gold,0 0 120px #33f,0 0 200px #00f}83%{box-shadow:0 0 0 4px gold,0 0 0 9px #f6f,0 0 60px gold,0 0 120px #f3f,0 0 200px #f0f}to{box-shadow:0 0 0 4px gold,0 0 0 9px #f66,0 0 60px gold,0 0 120px #f33,0 0 200px red}}@keyframes legendary-shake{0%,to{transform:rotateY(180deg) scale(1.12) translate(0)}20%{transform:rotateY(180deg) scale(1.12) translate(-3px,2px)}40%{transform:rotateY(180deg) scale(1.12) translate(3px,-2px)}60%{transform:rotateY(180deg) scale(1.12) translate(-2px,3px)}80%{transform:rotateY(180deg) scale(1.12) translate(2px,-3px)}}.legendary-aura{position:fixed;top:50%;left:50%;width:900px;height:900px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0deg,rgba(255,215,0,.35) 20deg,transparent 40deg,rgba(255,100,200,.35) 70deg,transparent 90deg,rgba(100,200,255,.35) 140deg,transparent 160deg,rgba(255,215,0,.35) 200deg,transparent 220deg,rgba(200,100,255,.35) 280deg,transparent 300deg,rgba(255,215,0,.35) 340deg,transparent 360deg);border-radius:50%;filter:blur(20px);animation:legendary-spin 8s linear infinite,legendary-aura-fade 1s ease-out;z-index:9997;pointer-events:none}@keyframes legendary-spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes legendary-aura-fade{0%{opacity:0}to{opacity:1}}.card-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}.card-back{background:linear-gradient(135deg,#1a0a2e,#0d0d1a);display:flex;align-items:center;justify-content:center;border:2px solid rgba(180,107,255,.3)}.card-back-pattern{font-size:64px;opacity:.4;-webkit-user-select:none;user-select:none}.card-front{transform:rotateY(180deg);background:#0b0b12;display:flex;flex-direction:column}.card-shine{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.07) 50%,transparent 60%);background-size:200% 200%;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:3}.card-wrap.flipped:hover .card-shine{opacity:1;animation:shine-move 1.5s linear infinite}.card-wrap.jackpot .card-shine{background:linear-gradient(135deg,transparent 30%,rgba(255,100,200,.15) 40%,rgba(100,200,255,.15) 50%,rgba(200,100,255,.15) 60%,transparent 70%);opacity:1;animation:shine-move 1s linear infinite}@keyframes shine-move{0%{background-position:200% 200%}to{background-position:-200% -200%}}.card-photo{width:100%;flex:1;object-fit:cover;object-position:top center;min-height:0;opacity:0;transition:opacity .6s ease}.card-photo--visible{opacity:1}.card-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#000000e0;flex-shrink:0;opacity:0;transition:opacity .6s ease}.card-footer--visible{opacity:1}.card-name{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60%}.card-rarity{font-size:14px;font-weight:800;letter-spacing:.5px;flex-shrink:0}.card-rarity--jackpot{background:linear-gradient(90deg,#f66,#ff6,#6f6,#6ff,#66f,#f6f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:rainbow-text 2s linear infinite}@keyframes rainbow-text{0%{background-position:0% center}to{background-position:200% center}}.jackpot-flash{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;z-index:9999;pointer-events:none;animation:flash 1.4s ease-out forwards}@keyframes flash{0%{opacity:0}15%{opacity:1}40%{opacity:.7}to{opacity:0}}.jackpot-flash--legendary{background:radial-gradient(circle at center,#fff,#fff4b0 25%,gold 55%,#ffb400d9 80%,#ff640066);animation:flash-legendary 3.8s ease-out forwards}@keyframes flash-legendary{0%{opacity:0;filter:brightness(1)}8%{opacity:1;filter:brightness(2)}20%{opacity:.9;filter:brightness(1.6)}35%{opacity:.4;filter:brightness(1.2)}50%{opacity:.7;filter:brightness(1.5)}70%{opacity:.35;filter:brightness(1.1)}to{opacity:0;filter:brightness(1)}}.fusion-screen{width:100%;min-height:100vh;padding:60px 24px 80px;display:flex;flex-direction:column;align-items:center}.fusion-header{text-align:center;margin-bottom:40px;position:relative;width:100%}.back-btn{position:absolute;left:0;top:0;font-family:inherit;font-size:14px;font-weight:600;padding:10px 18px;border-radius:10px;border:2px solid rgba(180,107,255,.5);background:transparent;color:#fff;cursor:pointer;transition:all .2s ease}.back-btn:hover{background:#b46bff33;box-shadow:0 0 16px #b46bff66}.fusion-title{font-size:36px;font-weight:800;letter-spacing:1px;margin:0 0 8px;background:linear-gradient(90deg,#ff3ea8,#bb5fff,#4af,gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:fusion-title-shift 4s linear infinite}@keyframes fusion-title-shift{0%{background-position:0% center}to{background-position:200% center}}.fusion-sub{color:#aaa;font-size:14px}.fusion-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;width:100%;max-width:1200px}.fusion-card{background:#140f1ed9;border:2px solid #333;border-radius:14px;padding:14px;display:flex;flex-direction:column;align-items:center;gap:10px;transition:all .3s ease}.fusion-card--collab{border-color:#ff3ea880}.fusion-card--collab.ready{border-color:#ff3ea8;box-shadow:0 0 20px #ff3ea880}.fusion-card--legendary{border-color:gold;background:linear-gradient(135deg,#281e00e6,#140f1ee6)}.fusion-card--legendary.ready{box-shadow:0 0 0 2px gold,0 0 30px #ffd70099,0 0 60px #ff64c866;animation:legendary-ready-pulse 2s ease-in-out infinite}@keyframes legendary-ready-pulse{0%,to{box-shadow:0 0 0 2px gold,0 0 30px #ffd70099,0 0 60px #ff64c866}50%{box-shadow:0 0 0 3px gold,0 0 50px #ffd700e6,0 0 100px #ff64c899}}.fusion-preview{position:relative;width:100%;aspect-ratio:2 / 3;border-radius:10px;overflow:hidden;background:#0b0b12}.fusion-img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:filter .3s ease}.fusion-img.locked{filter:grayscale(1) brightness(.4)}.fusion-tier-badge{position:absolute;top:8px;right:8px;background:#000000d9;color:#fff;font-size:12px;font-weight:800;padding:4px 8px;border-radius:6px;letter-spacing:.5px}.fusion-card--legendary .fusion-tier-badge{background:linear-gradient(135deg,gold,#ff9500);color:#000}.fusion-name{font-size:15px;font-weight:700;color:#fff;text-align:center}.fusion-recipe{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;width:100%}.recipe-slot{width:44px;height:66px;border-radius:6px;border:2px solid #444;overflow:hidden;position:relative;background:#0b0b12;flex-shrink:0}.recipe-slot img{width:100%;height:100%;object-fit:cover;object-position:top center}.recipe-slot.ok{border-color:#4dcc4d;box-shadow:0 0 8px #4dcc4d80}.recipe-slot.miss{border-color:#844}.recipe-slot.miss img{filter:grayscale(1) brightness(.4)}.recipe-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#666;font-size:20px}.recipe-count{position:absolute;bottom:0;left:0;right:0;background:#000000d9;color:#fff;font-size:10px;font-weight:700;text-align:center;padding:1px 0}.fuse-btn{width:100%;font-family:inherit;font-size:14px;font-weight:800;letter-spacing:1px;padding:12px;border-radius:10px;border:none;cursor:pointer;transition:all .2s ease;margin-top:auto}.fusion-card--collab .fuse-btn:not(:disabled){background:linear-gradient(90deg,#ff3ea8,#bb5fff);color:#fff}.fusion-card--collab .fuse-btn:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 4px 20px #ff3ea899}.fusion-card--legendary .fuse-btn:not(:disabled){background:linear-gradient(90deg,gold,#ff9500);color:#000;animation:legendary-btn-glow 1.5s ease-in-out infinite}@keyframes legendary-btn-glow{0%,to{box-shadow:0 0 10px #ffd70099}50%{box-shadow:0 0 25px gold}}.fusion-card--legendary .fuse-btn:not(:disabled):hover{transform:translateY(-2px) scale(1.02)}.fuse-btn:disabled{background:#222;color:#666;cursor:not-allowed}.collection-screen{width:100%;min-height:100vh;padding:60px 24px 80px;display:flex;flex-direction:column;align-items:center}.collection-header{text-align:center;margin-bottom:40px;position:relative;width:100%;max-width:1200px}.collection-header .back-btn{position:absolute;left:0;top:0;font-family:inherit;font-size:14px;font-weight:600;padding:10px 18px;border-radius:10px;border:2px solid rgba(180,107,255,.5);background:transparent;color:#fff;cursor:pointer;transition:all .2s ease}.collection-header .back-btn:hover{background:#b46bff33;box-shadow:0 0 16px #b46bff66}.collection-title{font-size:36px;font-weight:800;letter-spacing:1px;margin:0 0 8px;color:#fff}.collection-sub{color:#aaa;font-size:14px}.collection-section{width:100%;max-width:1200px;margin-bottom:36px}.section-title{font-size:22px;font-weight:700;color:#fff;margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid rgba(180,107,255,.3);display:flex;align-items:baseline;justify-content:space-between}.section-count{font-size:14px;font-weight:600;color:#888}.section--collabs .section-title{border-bottom-color:#ff3ea880}.section--legendaries .section-title{border-bottom-color:gold}.collection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.coll-card{background:#140f1ed9;border:2px solid #333;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}.coll-card.owned:hover{transform:translateY(-4px);box-shadow:0 8px 24px #00000080}.coll-card.locked{opacity:.55}.coll-card.locked .coll-img{filter:grayscale(1) brightness(.25)}.coll-card.owned.rainbow{border:2px solid transparent;background:linear-gradient(#140f1ef2,#140f1ef2) padding-box,linear-gradient(90deg,#ff4d4d,#ffff4d,#4dff4d,#4dffff,#4d4dff,#ff4dff,#ff4d4d) border-box;background-size:200% 200%;animation:coll-rainbow 3s linear infinite}@keyframes coll-rainbow{0%{background-position:0% 50%,0% 50%}to{background-position:0% 50%,200% 50%}}.coll-img-wrap{position:relative;width:100%;aspect-ratio:2 / 3;background:#0b0b12;overflow:hidden}.coll-img{width:100%;height:100%;object-fit:cover;object-position:top center}.coll-count{position:absolute;top:6px;right:6px;background:#000000d9;color:#fff;font-size:12px;font-weight:800;padding:3px 7px;border-radius:999px;border:1px solid rgba(255,255,255,.25)}.coll-footer{padding:6px 8px;background:#000000eb;border-top:2px solid #333;display:flex;justify-content:space-between;align-items:center;gap:6px}.coll-name{font-size:11px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.coll-tier{font-size:11px;font-weight:800;letter-spacing:.5px;color:#888;flex-shrink:0}.coll-card.owned.rainbow .coll-tier{background:linear-gradient(90deg,#f66,#ff6,#6f6,#6ff,#66f,#f6f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:coll-rainbow-text 2s linear infinite}@keyframes coll-rainbow-text{0%{background-position:0% center}to{background-position:200% center}}.db-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#1a0a2e,#050510);color:#fff;display:flex;flex-direction:column;padding:16px 20px;z-index:200;overflow:hidden;font-family:inherit}.db-header{display:flex;align-items:center;gap:16px;padding-bottom:12px;border-bottom:1px solid rgba(180,107,255,.3)}.db-title{margin:0;font-size:20px;font-weight:800;letter-spacing:1px;background:linear-gradient(90deg,#bb5fff,#ff3ea8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;flex:0 0 auto}.db-back,.db-save{font-family:inherit;font-size:13px;font-weight:700;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .2s}.db-back{border:1px solid rgba(180,107,255,.5);background:#28143c99;color:#fff}.db-back:hover{background:#502878cc}.db-save{border:2px solid rgba(100,220,120,.7);background:#28783c4d;color:#fff;margin-left:auto}.db-save:hover:not(:disabled){background:#50c86480;box-shadow:0 0 16px #64dc7899}.db-save:disabled{opacity:.35;cursor:not-allowed;border-color:#78787866;background:#1e1e1e66}.db-size{font-size:14px;letter-spacing:1px;padding:6px 14px;border-radius:999px;background:#140a28b3;border:1px solid rgba(180,107,255,.4)}.db-size strong{color:gold;font-size:16px}.db-size.invalid{border-color:#ff5050b3;background:#50000059}.db-size.invalid strong{color:#ff7070}.db-size.full{border-color:#ffb43cb3}.db-size-hint{color:#fa6;font-size:12px;margin-left:6px}.db-body{flex:1;display:grid;grid-template-columns:2fr 1fr;gap:20px;overflow:hidden;padding-top:14px}.db-pool,.db-deck{overflow-y:auto;padding:6px 10px 20px;scrollbar-width:thin;scrollbar-color:rgba(180,107,255,.5) transparent}.db-pool::-webkit-scrollbar,.db-deck::-webkit-scrollbar{width:8px}.db-pool::-webkit-scrollbar-thumb,.db-deck::-webkit-scrollbar-thumb{background:#b46bff80;border-radius:4px}.db-section-header{margin:18px 0 8px;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:#bb5fff;border-bottom:1px solid rgba(180,107,255,.25);padding-bottom:4px;display:flex;align-items:center;gap:10px}.db-section-header:first-child{margin-top:0}.db-basic-tag{font-size:10px;letter-spacing:1px;color:#aaa;font-weight:400;text-transform:none}.db-tier-group{margin-bottom:6px}.db-tier-label{font-size:11px;font-weight:800;letter-spacing:2px;padding:4px 8px;margin-top:6px;opacity:.9}.db-row{display:grid;grid-template-columns:44px 1fr auto auto;align-items:center;gap:10px;padding:6px 8px 6px 10px;margin-bottom:4px;background:#140a288c;border:1px solid rgba(180,107,255,.15);border-left:3px solid #888;border-radius:6px;transition:all .15s}.db-row:hover{background:#281446bf}.db-row.locked{opacity:.35;filter:grayscale(1)}.db-row.full{border-left-style:dashed;opacity:.7}.db-row.rainbow{border-left:3px solid transparent;border-image:linear-gradient(180deg,#ff3ea8,#bb5fff,gold,#4af) 1}.db-row.legendary{background:linear-gradient(90deg,#ffd70014,#140a288c 40%);border:1px solid rgba(255,215,0,.3);border-left:3px solid transparent;border-image:linear-gradient(180deg,#ff3ea8,#bb5fff,gold,#4af) 1}.db-row.legendary:hover{background:linear-gradient(90deg,#ffd70026,#281446bf 40%)}.legendary-note{color:gold!important;font-weight:700;font-size:10px;letter-spacing:.5px;text-shadow:0 0 6px rgba(255,215,0,.5)}.db-thumb{width:44px;height:44px;object-fit:cover;border-radius:4px;background:#000}.db-row-info{min-width:0}.db-row-name{font-size:13px;font-weight:700;display:flex;justify-content:space-between;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-row-tier{font-size:11px;font-weight:800;flex-shrink:0}.db-row-stats{font-size:10px;color:#aaa;letter-spacing:.5px}.db-row-effect{font-size:10px;color:#ffd27a;letter-spacing:.3px;margin-top:2px;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.db-row-counts{display:flex;flex-direction:column;align-items:flex-end;font-size:10px;color:#ccc;min-width:72px}.db-row-owned{color:#888}.db-row-deck{color:gold;font-weight:700}.db-row-buttons{display:flex;gap:4px}.db-btn{width:28px;height:28px;border-radius:6px;border:1px solid rgba(180,107,255,.5);background:#28143c99;color:#fff;font-weight:800;font-size:16px;cursor:pointer;transition:all .15s;font-family:inherit}.db-btn:hover:not(:disabled){background:#643296cc;box-shadow:0 0 8px #b46bff80}.db-btn:disabled{opacity:.25;cursor:not-allowed}.db-btn--plus{border-color:#64dc7899}.db-btn--minus{border-color:#ff787899}.db-deck-list{display:flex;flex-direction:column;gap:4px}.db-deck-empty{padding:20px;text-align:center;font-style:italic;color:#666;border:1px dashed rgba(180,107,255,.3);border-radius:8px}.db-deck-entry{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:8px 12px;background:#1e0f32b3;border-left:3px solid #888;border-radius:4px;font-size:13px;cursor:pointer;transition:all .15s}.db-deck-entry:hover{background:#50141eb3;transform:translate(-2px)}.db-deck-entry.rainbow{border-left:3px solid transparent;border-image:linear-gradient(180deg,#ff3ea8,#bb5fff,gold,#4af) 1}.db-deck-count{font-weight:800;color:gold;font-size:14px}.db-deck-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-deck-tier{font-weight:800;font-size:11px;letter-spacing:1px}:root{--card-w: 90px;--card-h: 130px;--trap-h: 54px;--hand-min-h: 138px;--hud-w: 280px;--gap-field: 10px;--gap-row: 8px;--gap-grid: 12px}@media(max-height:820px){:root{--card-w: 78px;--card-h: 112px;--trap-h: 46px;--hand-min-h: 118px;--hud-w: 260px;--gap-field: 8px;--gap-row: 6px}}@media(max-height:680px){:root{--card-w: 66px;--card-h: 96px;--trap-h: 40px;--hand-min-h: 100px;--hud-w: 240px;--gap-field: 6px;--gap-row: 5px;--gap-grid: 8px}}.battle-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,#1a0a2e,#050510);display:grid;grid-template-columns:minmax(0,1fr) var(--hud-w);grid-template-rows:minmax(0,1fr);gap:var(--gap-grid);padding:14px 16px;overflow-y:auto;overflow-x:hidden;z-index:200}.battle-field{display:grid;grid-template-rows:minmax(0,.85fr) auto minmax(0,1.15fr);gap:2px;min-height:0;min-width:0}.battle-hud{display:flex;flex-direction:column;gap:12px;padding:14px 12px;background:linear-gradient(180deg,#783cc814,#0000002e);border:1px solid rgba(255,255,255,.08);border-radius:12px;min-height:0;overflow:hidden}.battle-exit{position:absolute;top:16px;left:16px;padding:8px 14px;font-family:inherit;font-weight:600;font-size:12px;border-radius:8px;border:1px solid rgba(255,100,100,.5);background:#50000066;color:#fff;cursor:pointer;z-index:10}.battle-exit:hover{background:#96000099}.side{display:flex;flex-direction:column;gap:10px;align-items:center;min-height:0;width:100%}.enemy-side,.player-side{justify-content:flex-start}.enemy-side .zones,.player-side .hand{margin-top:auto}.player-side .hand,.player-side .hp-bar,.player-side .player-grave-count,.player-side .tier-caps{flex-shrink:0}.enemy-hand-count{color:#aaa;font-size:13px;letter-spacing:1px;display:flex;gap:14px;align-items:center}.deck-count{margin-left:12px;padding:3px 10px;border-radius:999px;background:#281450a6;border:1px solid rgba(100,220,255,.45);color:#9df;font-weight:700;font-size:12px;letter-spacing:.5px}.deck-count.low{border-color:#ff5050b3;color:#ff9090;animation:deck-low-pulse 1.4s ease-in-out infinite}@keyframes deck-low-pulse{0%,to{box-shadow:0 0 #ff505000}50%{box-shadow:0 0 12px #ff505099}}.grave-clickable{font-family:inherit;font-size:inherit;padding:2px 8px;border-radius:4px;border:1px solid rgba(180,120,60,.5);background:#28140a99;color:#b84;cursor:pointer;transition:all .15s}.grave-clickable:hover:not(:disabled){background:#502814d9;color:#fa6;box-shadow:0 0 8px #ffaa6466}.grave-clickable:disabled{opacity:.35;cursor:not-allowed}.player-grave-btn{font-family:inherit;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 12px;border-radius:999px;border:1px solid rgba(180,120,60,.5);background:#28140a99;color:#b84;cursor:pointer;transition:all .15s}.player-grave-btn:hover:not(:disabled){background:#502814d9;color:#fa6;box-shadow:0 0 10px #ffaa6466}.player-grave-btn:disabled{opacity:.45;cursor:not-allowed}.grave-modal-box{max-width:520px;max-height:80vh;display:flex;flex-direction:column}.grave-modal-count{font-size:13px;font-weight:500;color:#aaa;margin-left:10px}.grave-list{overflow-y:auto;display:flex;flex-direction:column;gap:4px;margin:10px 0;padding-right:6px;scrollbar-width:thin;scrollbar-color:rgba(180,120,60,.5) transparent}.grave-list::-webkit-scrollbar{width:6px}.grave-list::-webkit-scrollbar-thumb{background:#b4783c80;border-radius:3px}.grave-entry{display:grid;grid-template-columns:40px 1fr auto;gap:10px;align-items:center;padding:6px 10px;background:#1e0f0ab3;border-left:3px solid #888;border-radius:4px;font-size:12px;text-align:left}.grave-entry.rainbow{border-left:3px solid transparent;border-image:linear-gradient(180deg,#ff3ea8,#bb5fff,gold,#4af) 1}.grave-entry.is-spell{background:#140a28b3}.grave-entry-img{width:40px;height:40px;object-fit:cover;border-radius:3px;background:#000}.grave-entry-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:24px}.grave-entry-info{min-width:0}.grave-entry-name{font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.grave-entry-stats{color:#888;font-size:10px;letter-spacing:.5px}.grave-entry-tier{font-weight:800;font-size:11px;letter-spacing:1px}.grave-count{color:#b84;font-weight:700}.player-grave-count{margin-top:4px;color:#b84;font-size:11px;font-weight:700;letter-spacing:.5px}.hp-bar{display:flex;align-items:center;gap:10px;width:100%;max-width:500px}.hp-label{font-weight:800;font-size:14px;color:#fff;min-width:60px}.hp-track{flex:1;height:18px;background:#ffffff14;border:1px solid rgba(255,255,255,.2);border-radius:10px;overflow:hidden}.hp-fill{height:100%;transition:width .4s ease}.hp-fill.player{background:linear-gradient(90deg,#4dcc4d,#7ee87e)}.hp-fill.enemy{background:linear-gradient(90deg,#cc4d4d,#ff7070)}.hp-num{font-weight:800;font-size:13px;color:#fff;min-width:80px;text-align:right}.hp-bar{position:relative}.dmg-popup{position:absolute;top:-6px;right:0;font-size:26px;font-weight:900;letter-spacing:1px;pointer-events:none;animation:dmg-float 1.2s cubic-bezier(.3,.8,.3,1) forwards;text-shadow:0 0 8px currentColor,0 2px 0 #000}.dmg-popup.enemy{color:#f55}.dmg-popup.player{color:#f84}@keyframes dmg-float{0%{opacity:0;transform:translateY(10px) scale(.6)}15%{opacity:1;transform:translateY(-6px) scale(1.3)}40%{opacity:1;transform:translateY(-24px) scale(1)}to{opacity:0;transform:translateY(-60px) scale(.9)}}.board{display:flex;gap:10px;min-height:150px;align-items:center;justify-content:center;padding:8px;border-radius:10px;background:#ffffff08;border:1px dashed rgba(255,255,255,.1);width:100%;max-width:700px}.board-empty{color:#555;font-style:italic;font-size:13px}.zones{--zone-w: var(--card-w);--zone-h: var(--card-h);--zone-trap-h: var(--trap-h);display:flex;flex-direction:column;gap:var(--gap-row);width:100%;max-width:720px;padding:var(--gap-field) calc(var(--gap-field) + 4px);border-radius:16px;flex-shrink:0;overflow:hidden;background:linear-gradient(180deg,#505a6e1a,#2832462e),repeating-linear-gradient(27deg,rgba(255,255,255,.025) 0 2px,transparent 2px 38px),repeating-linear-gradient(-19deg,rgba(0,0,0,.1) 0 2px,transparent 2px 46px),radial-gradient(ellipse at center,#46466e33,#0f0a1e80);border:1px solid rgba(180,180,220,.18);box-shadow:inset 0 0 30px #0000008c}.enemy-zones{background:linear-gradient(180deg,#3c5a821f,#28325033),repeating-linear-gradient(27deg,rgba(150,200,255,.03) 0 2px,transparent 2px 38px),repeating-linear-gradient(-19deg,rgba(0,0,0,.1) 0 2px,transparent 2px 46px),radial-gradient(ellipse at center,#3c5a8c33,#0f0a1e80);border-radius:16px 16px 0 0;box-shadow:inset 0 0 30px #0000008c,0 4px 24px #50b4ff2e}.player-zones{background:linear-gradient(180deg,#503c822e,#281e4638),repeating-linear-gradient(27deg,rgba(220,180,255,.03) 0 2px,transparent 2px 38px),repeating-linear-gradient(-19deg,rgba(0,0,0,.1) 0 2px,transparent 2px 46px),radial-gradient(ellipse at center,#6e46a033,#0f0a1e80);border-radius:0 0 16px 16px;box-shadow:inset 0 0 30px #0000008c,0 -4px 24px #b464ff33}.zone-row{display:flex;gap:8px;justify-content:center;align-items:center}.zone-row.zone-front,.zone-row.zone-mid{min-height:var(--zone-h)}.zone-row.zone-back{min-height:var(--zone-trap-h)}.zone-tile{width:var(--zone-w);height:var(--zone-h);border-radius:8px;border:2px dashed rgba(180,180,220,.18);background:linear-gradient(135deg,#ffffff0a,#0000000d),repeating-linear-gradient(45deg,rgba(255,255,255,.015) 0 6px,transparent 6px 14px),#14121e73;box-shadow:inset 0 0 14px #00000073;flex-shrink:0}.zone-row.zone-back .zone-tile{width:var(--zone-trap-h);height:var(--zone-trap-h)}.zone-tile.zone-elite{border-color:#ffd76459;background:radial-gradient(ellipse at center,rgba(255,200,80,.12),transparent 70%),linear-gradient(135deg,#ffffff0a,#0000000d),#281e0a73;box-shadow:inset 0 0 16px #ffb43c2e,inset 0 0 14px #00000073}.shared-mid-zones{--zone-w: var(--card-w);--zone-h: var(--card-h);width:max-content;justify-self:center;margin:-8px auto;padding:6px 14px;border-radius:14px;border:1px solid rgba(255,220,120,.4);background:radial-gradient(ellipse at center,rgba(255,200,80,.18),transparent 75%),linear-gradient(180deg,#140a1ed9,#0f0519d9);box-shadow:0 0 24px #ffc85040,0 4px 18px #78c8ff26,0 -4px 18px #dc82ff26;position:relative;z-index:3}.shared-mid-zones:before,.shared-mid-zones:after{content:"";position:absolute;top:50%;height:1px;width:30vw;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(255,215,120,.4),transparent)}.shared-mid-zones:before{right:100%;margin-right:-8px}.shared-mid-zones:after{left:100%;margin-left:-8px}.shared-mid-zones .zone-row.zone-mid{gap:14px;min-height:var(--zone-h)}.shared-mid-zones .zone-tile.zone-empty{position:relative;animation:shared-shimmer 3.2s ease-in-out infinite}@keyframes shared-shimmer{0%,to{box-shadow:inset 0 0 16px #ffb43c2e,inset 0 0 14px #00000073,0 0 12px #ffc85026}50%{box-shadow:inset 0 0 22px #ffc85057,inset 0 0 14px #00000073,0 0 22px #ffc8504d}}.direct-attack{padding:14px 28px;font-weight:800;font-size:14px;border-radius:10px;border:2px solid #ff4444;background:linear-gradient(135deg,#f44,#c22);color:#fff;cursor:pointer;animation:direct-pulse .9s ease-in-out infinite}@keyframes direct-pulse{0%,to{box-shadow:0 0 #ff4444b3}50%{box-shadow:0 0 20px 8px #f446}}.hand{display:flex;gap:8px;flex-wrap:nowrap;justify-content:flex-start;align-items:center;max-width:100%;width:100%;padding:6px 10px;min-height:var(--hand-min-h);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:rgba(180,107,255,.6) rgba(0,0,0,.3)}.hand::-webkit-scrollbar{height:8px}.hand::-webkit-scrollbar-track{background:#0000004d;border-radius:4px}.hand::-webkit-scrollbar-thumb{background:#b46bff99;border-radius:4px}.hand-empty{color:#555;font-style:italic;font-size:13px}.bcard{width:var(--card-w);height:var(--card-h);border-radius:8px;overflow:hidden;background:#0b0b12;border:2px solid #444;display:flex;flex-direction:column;cursor:pointer;position:relative;transition:transform .15s ease,box-shadow .15s ease;flex-shrink:0}.bcard:hover:not(.dim){transform:translateY(-4px);box-shadow:0 6px 16px #00000080}.bcard.dim{opacity:.55;cursor:default}.bcard.selected{box-shadow:0 0 0 3px gold,0 0 16px #ffd70099;transform:translateY(-6px)}.bcard-effect-badge{position:absolute;top:4px;left:4px;z-index:3;font-size:14px;text-shadow:0 0 6px #ffd700,0 0 12px rgba(255,215,0,.6);pointer-events:none;animation:effect-badge-pulse 2s ease-in-out infinite}.bcard.has-effect{box-shadow:inset 0 0 0 1px #ffd70059}@keyframes effect-badge-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.15);opacity:1}}.bcard-arch-badge{position:absolute;top:4px;right:4px;z-index:3;font-size:13px;pointer-events:none}.bcard.arch-aggressive .bcard-arch-badge{text-shadow:0 0 6px #ff5555,0 0 10px rgba(255,85,85,.55)}.bcard.arch-defensive .bcard-arch-badge{text-shadow:0 0 6px #66dd66,0 0 10px rgba(102,221,102,.55)}.bcard.arch-aggressive:not(.has-effect){box-shadow:inset 0 0 0 1px #ff55554d}.bcard.arch-defensive:not(.has-effect){box-shadow:inset 0 0 0 1px #66dd664d}.bcard.rainbow{border-color:transparent;background:linear-gradient(#0b0b12,#0b0b12) padding-box,linear-gradient(90deg,#ff4d4d,#ffff4d,#4dff4d,#4dffff,#4d4dff,#ff4dff,#ff4d4d) border-box;background-size:200% 200%;animation:bcard-rainbow 2.5s linear infinite}@keyframes bcard-rainbow{0%{background-position:0% 0%,0% 50%}to{background-position:0% 0%,200% 50%}}.bcard-img{width:100%;flex:1;object-fit:cover;object-position:top center;min-height:0}.bcard-footer{background:#000000e6;padding:3px 6px;border-top:2px solid #444;display:flex;justify-content:space-between;align-items:center;gap:4px}.bcard-name{font-size:9px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.bcard-tier{font-size:10px;font-weight:800;flex-shrink:0}.bcard-pos{position:absolute;top:4px;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px;white-space:nowrap;z-index:2;box-shadow:0 0 0 1px #ffffff26}.bcard-pos.def{background:#3c8cfff2}.bcard-pos.atk{background:#ff4444f2}.bcard-stats{position:absolute;top:4px;left:50%;transform:translate(-50%);background:#000000d9;color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;white-space:nowrap;z-index:2}.bcard.spell-card{background:radial-gradient(ellipse at center 35%,rgba(180,107,255,.18),transparent 60%),linear-gradient(155deg,#2a1842,#140a24);align-items:center;justify-content:space-between;padding:0 4px;position:relative;overflow:hidden}.bcard.spell-card:hover:not(.dim){box-shadow:0 6px 20px #b46bff66}.bcard.trap-card{background:radial-gradient(ellipse at center 35%,rgba(255,140,80,.18),transparent 60%),linear-gradient(155deg,#3a1a14,#1a0a08)}.bcard.trap-card:hover:not(.dim){box-shadow:0 6px 20px #ff8c5066}.spell-type-ribbon{width:100%;text-align:center;font-size:8px;font-weight:900;letter-spacing:2px;padding:2px 0 1px;color:#000;text-shadow:0 1px 0 rgba(255,255,255,.4)}.spell-speed-badge{position:absolute;top:4px;right:4px;padding:2px 5px;font-size:9px;font-weight:900;letter-spacing:.5px;border-radius:6px;border:1px solid;background:#000000bf;z-index:2}.spell-speed-badge.speed-1{color:#aaa;border-color:#ffffff4d}.spell-speed-badge.speed-2{color:#6cf;border-color:#66ccff80}.spell-speed-badge.speed-3{color:#f6c;border-color:#f6c9}.spell-icon{font-size:56px;line-height:1;margin-top:4px;filter:drop-shadow(0 0 10px currentColor);animation:spell-float 2.8s ease-in-out infinite}@keyframes spell-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.spell-footer{width:100%;background:#000000d9;padding:4px 5px;border-top:2px solid;text-align:center}.spell-name{font-size:9px;font-weight:800;color:#fff;letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.spell-desc{font-size:7px;font-weight:500;color:#bbb;line-height:1.25;margin-top:2px;max-height:30px;overflow:hidden}.spell-targeting-banner{position:fixed;top:60px;left:50%;transform:translate(-50%);z-index:250;display:flex;align-items:center;gap:16px;padding:10px 18px;border-radius:999px;background:linear-gradient(90deg,#ff663340,#ffd70040);border:2px solid rgba(255,215,0,.7);color:#fff;font-weight:700;font-size:13px;box-shadow:0 0 24px #ffc83280;animation:spell-banner-pulse 1.2s ease-in-out infinite}@keyframes spell-banner-pulse{0%,to{box-shadow:0 0 16px #ffc83266}50%{box-shadow:0 0 32px #ffc832cc}}.spell-targeting-banner button{font-family:inherit;font-size:11px;font-weight:700;padding:4px 10px;border-radius:6px;border:1px solid rgba(255,255,255,.4);background:#00000080;color:#fff;cursor:pointer}.bcard.face-down{background:linear-gradient(135deg,#1a0a2e,#0d0d1a);border-color:#b46bff66;align-items:center;justify-content:center}.bcard-back{font-size:40px;opacity:.5;display:flex;align-items:center;justify-content:center;width:100%;height:100%}.turn-banner{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:#ffffff0a;border-radius:10px;text-align:center}.turn-banner-title{font-size:11px;letter-spacing:2px;color:#888;text-transform:uppercase;font-weight:700}.turn-banner-who{font-size:16px;font-weight:800;letter-spacing:.5px;background:linear-gradient(90deg,#bb5fff,#ff3ea8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.phase-indicator{margin-top:4px;font-size:11px;font-weight:700;letter-spacing:1.5px;color:#ffb43c;text-transform:uppercase}.summon-pill{margin-top:6px;font-size:10px;font-weight:700;letter-spacing:.5px;padding:4px 8px;border-radius:999px;border:1px solid}.summon-pill.ready{color:#90ffb0;border-color:#50dc7880;background:#50dc781f}.summon-pill.used{color:#888;border-color:#ffffff26;background:#ffffff0a}.actions{display:flex;flex-direction:column;gap:8px}.actions button{padding:10px 14px;font-family:inherit;font-weight:700;font-size:13px;border-radius:8px;border:2px solid;background:transparent;color:#fff;cursor:pointer;transition:all .2s;width:100%}.btn-fuse{border-color:#ff3ea8}.btn-fuse:hover:not(:disabled){background:#ff3ea833;box-shadow:0 0 12px #ff3ea880}.btn-end{border-color:#bb5fff}.btn-end:hover:not(:disabled){background:#bb5fff33;box-shadow:0 0 12px #bb5fff80}.btn-battle{border-color:#ffb43c;color:#ffd99c}.btn-battle:hover:not(:disabled){background:#ffb43c33;box-shadow:0 0 14px #ffb43c99}.actions button:disabled{opacity:.4;cursor:not-allowed}.enemy-thinking{color:#888;font-size:12px;font-style:italic;text-align:center;padding:6px}.stall-warning{font-size:11px;font-weight:700;letter-spacing:.3px;padding:6px 10px;border-radius:8px;background:#ff9a3c26;border:1px solid rgba(255,154,60,.5);color:#ffc88a;text-align:center;line-height:1.35;animation:stall-pulse 1.4s ease-in-out infinite alternate}@keyframes stall-pulse{0%{box-shadow:0 0 6px #ff9a3c40}to{box-shadow:0 0 16px #ff9a3cb3}}.bcard.idle-attacker{animation:idle-attacker-pulse 1s ease-in-out infinite alternate}@keyframes idle-attacker-pulse{0%{box-shadow:0 0 4px #ff9a3c66,0 0 0 2px #ff9a3c66 inset}to{box-shadow:0 0 18px #ff9a3cd9,0 0 0 2px #ffc85ad9 inset}}.hp-difficulty-tag{font-size:9px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:#ffb43c;margin-left:4px;padding:1px 5px;border-radius:3px;background:#ffb43c26;border:1px solid rgba(255,180,60,.4)}.hud-help-btn{flex-shrink:0;font-family:inherit;font-size:11px;font-weight:700;letter-spacing:.5px;padding:6px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0a;color:#aaa;cursor:pointer;transition:all .2s}.hud-help-btn:hover{background:#ffd7001a;border-color:#ffd70066;color:gold}.help-modal-box{max-width:560px;width:90vw;max-height:80vh;overflow-y:auto;text-align:left!important}.help-section{margin:14px 0 4px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06)}.help-section:last-of-type{border-bottom:none}.help-section h4{margin:0 0 6px;font-size:14px;color:gold;letter-spacing:.5px}.help-section ul{margin:0;padding-left:22px;color:#ccc;font-size:12.5px;line-height:1.55}.help-section li{margin:3px 0}.help-section strong{color:#fff}.bcard-enter{animation:bcard-enter .35s cubic-bezier(.2,.9,.3,1.2) both}@keyframes bcard-enter{0%{opacity:0;transform:translateY(-40px) scale(.6);filter:brightness(2)}60%{opacity:1;transform:translateY(4px) scale(1.05)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}.bcard.lunging{animation:bcard-lunge .45s ease-in-out;z-index:5}@keyframes bcard-lunge{0%{transform:translateY(0) scale(1)}40%{transform:translateY(-60px) scale(1.1);box-shadow:0 0 30px #ffc850cc}55%{transform:translateY(-60px) scale(1.1)}to{transform:translateY(0) scale(1)}}.bcard.dissolving{animation:bcard-dissolve .55s ease-in forwards;pointer-events:none;z-index:4}@keyframes bcard-dissolve{0%{opacity:1;transform:scale(1) rotate(0);filter:brightness(1)}25%{opacity:1;transform:scale(1.18) rotate(-4deg);filter:brightness(3) blur(.5px);box-shadow:0 0 40px #fff}55%{opacity:.8;transform:scale(1) rotate(6deg);filter:brightness(2.2) blur(1px)}to{opacity:0;transform:scale(.25) rotate(28deg);filter:brightness(.2) blur(5px)}}.bcard.dissolving.dies-player{animation:bcard-fly-grave-player .7s cubic-bezier(.55,-.05,.85,.55) forwards}.bcard.dissolving.dies-enemy{animation:bcard-fly-grave-enemy .7s cubic-bezier(.55,-.05,.85,.55) forwards}@keyframes bcard-fly-grave-player{0%{opacity:1;transform:scale(1) rotate(0);filter:brightness(1)}18%{opacity:1;transform:scale(1.18) rotate(-6deg);filter:brightness(2.8) blur(.5px);box-shadow:0 0 40px #fff}to{opacity:0;transform:translate(-420px,320px) scale(.18) rotate(-560deg);filter:brightness(.3) blur(2px)}}@keyframes bcard-fly-grave-enemy{0%{opacity:1;transform:scale(1) rotate(0);filter:brightness(1)}18%{opacity:1;transform:scale(1.18) rotate(6deg);filter:brightness(2.8) blur(.5px);box-shadow:0 0 40px #fff}to{opacity:0;transform:translate(-420px,-320px) scale(.18) rotate(560deg);filter:brightness(.3) blur(2px)}}.bcard.bcard-summon-up{animation:bcard-summon-up .42s cubic-bezier(.2,.8,.3,1.1)}@keyframes bcard-summon-up{0%{opacity:0;transform:translateY(120px) scale(.65) rotate(-4deg);filter:brightness(2.2)}55%{opacity:1;transform:translateY(-8px) scale(1.06) rotate(1deg);filter:brightness(1.4)}to{opacity:1;transform:translateY(0) scale(1) rotate(0);filter:brightness(1)}}.pack-burst{position:fixed;top:0;right:0;bottom:0;left:0;z-index:350;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.pack-burst-pack{font-size:84px;line-height:1;filter:drop-shadow(0 0 18px rgba(255,220,120,.85));animation:pack-pop .85s cubic-bezier(.4,1.6,.55,.9) forwards}@keyframes pack-pop{0%{opacity:0;transform:scale(.2) rotate(-180deg)}35%{opacity:1;transform:scale(1.45) rotate(15deg);filter:drop-shadow(0 0 28px rgba(255,220,120,1))}55%{opacity:1;transform:scale(1.1) rotate(-5deg)}85%{opacity:.7;transform:scale(1.6) rotate(8deg);filter:drop-shadow(0 0 40px rgba(255,240,180,1))}to{opacity:0;transform:scale(2.4) rotate(0);filter:drop-shadow(0 0 0 transparent)}}.pack-burst-flash{position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,240,180,.55),rgba(255,200,100,.2) 40%,transparent 70%);animation:pack-flash .85s ease-out forwards;z-index:-1}@keyframes pack-flash{0%{opacity:0;transform:scale(.3)}35%{opacity:1;transform:scale(1.3)}to{opacity:0;transform:scale(3)}}.pack-burst-label{margin-top:18px;font-size:22px;font-weight:900;letter-spacing:6px;color:#fff;text-shadow:0 0 12px rgba(255,220,120,.95),0 0 24px rgba(255,200,100,.6);animation:pack-label .85s ease-out forwards}@keyframes pack-label{0%,30%{opacity:0;transform:translateY(8px) scale(.8)}60%{opacity:1;transform:translateY(0) scale(1.05)}to{opacity:0;transform:translateY(-6px) scale(1.1)}}.bcard.target-hit{animation:bcard-shake .45s ease}@keyframes bcard-shake{0%,to{transform:translate(0)}15%{transform:translate(-6px,2px) rotate(-2deg);filter:brightness(2)}30%{transform:translate(6px,-2px) rotate(2deg)}45%{transform:translate(-4px,1px) rotate(-1deg)}60%{transform:translate(4px,-1px) rotate(1deg);filter:brightness(1.3)}80%{transform:translate(-2px)}}.flip-btn{position:absolute;top:4px;left:4px;width:22px;height:22px;padding:0;font-size:12px;line-height:1;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:#000000b3;color:#fff;cursor:pointer;z-index:3;transition:all .15s}.flip-btn:hover{background:#b46bffe6;transform:rotate(180deg)}.evolve-btn{position:absolute;top:4px;right:4px;width:22px;height:22px;padding:0;font-size:12px;line-height:1;border-radius:50%;border:1px solid rgba(255,215,0,.55);background:#281e00d9;color:gold;cursor:pointer;z-index:3;transition:all .15s;box-shadow:0 0 6px #ffd70066;animation:evolve-pulse 1.6s ease-in-out infinite}.evolve-btn:hover{background:#ffd700d9;color:#000;transform:scale(1.2);box-shadow:0 0 14px #ffd700cc}@keyframes evolve-pulse{0%,to{box-shadow:0 0 4px #ffd7004d}50%{box-shadow:0 0 10px #ffd700cc}}.log{flex:1 1 auto;min-height:0;overflow-y:auto;font-size:11px;color:#bbb;text-align:left;padding:8px 10px;background:#00000040;border-radius:8px;border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column-reverse;gap:1px}.log-line{padding:3px 0;border-bottom:1px solid rgba(255,255,255,.04);word-wrap:break-word;line-height:1.35}.tier-caps{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;font-size:10px;font-weight:700;color:#888}.tier-cap{padding:2px 6px;border-radius:4px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1)}.tier-cap.full{color:#f86;background:#ff505026;border-color:#ff505080}.tier-cap.special{color:gold;background:#ffd7001a;border-color:#ffd70066}.play-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#000c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.play-modal-box{background:#14101c;border:2px solid rgba(180,107,255,.5);border-radius:14px;padding:24px;max-width:420px;text-align:center;color:#fff}.play-modal-box h3{margin:0 0 6px;font-size:18px}.play-modal-stats{color:#aaa;margin-bottom:20px;font-size:14px}.play-modal-buttons{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.play-modal-buttons button{padding:14px;font-family:inherit;font-weight:700;font-size:14px;border-radius:8px;border:2px solid #444;background:#ffffff0d;color:#fff;cursor:pointer;text-align:left;line-height:1.5;transition:all .2s}.play-modal-buttons button:first-child:hover{border-color:#f44;background:#ff44441a}.play-modal-buttons button:last-child:hover{border-color:#3c8cff;background:#3c8cff1a}.play-modal-buttons small{color:#888;font-weight:500;font-size:11px}.tribute-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.tribute-btn{padding:10px 8px;font-family:inherit;border-radius:8px;border:2px solid #555;background:#ffffff0d;color:#fff;cursor:pointer;text-align:center;transition:all .15s}.tribute-btn:hover{border-color:#f48;background:#ff448826;transform:translateY(-2px)}.play-modal-cancel{background:transparent;border:1px solid #555;color:#aaa;padding:6px 16px;border-radius:6px;cursor:pointer;font-family:inherit}.game-over-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;background:#000000e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;animation:go-fade .5s ease}@keyframes go-fade{0%{opacity:0}to{opacity:1}}.game-over-box{padding:40px 60px;border-radius:20px;text-align:center;color:#fff}.game-over-box.win{background:linear-gradient(135deg,#ffd70033,#ff64c833);border:3px solid #ffd700;box-shadow:0 0 80px #ffd70099}.game-over-box.loss{background:linear-gradient(135deg,#50000099,#1e0000cc);border:3px solid #cc3333}.game-over-box h1{font-size:48px;margin:0 0 12px;letter-spacing:3px}.game-over-box p{color:#ccc;font-size:16px;margin:0 0 24px}.phase-banner{position:fixed;top:50%;left:0;right:0;transform:translateY(-50%);z-index:350;pointer-events:none;display:flex;align-items:center;justify-content:center;gap:18px;padding:18px 0;animation:phase-banner-slam 1.4s cubic-bezier(.2,.8,.2,1) forwards}.phase-banner-bar{flex:1;height:4px;background:linear-gradient(90deg,transparent,currentColor,transparent);box-shadow:0 0 14px currentColor;animation:phase-banner-bar-stretch .6s cubic-bezier(.3,1.2,.5,1) both}.phase-banner-text{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 36px;background:#0a0519bf;border:2px solid currentColor;border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 0 40px currentColor,inset 0 0 20px #00000080;white-space:nowrap;animation:phase-banner-text-pop .5s cubic-bezier(.3,1.4,.5,1) both}.phase-banner-label{font-size:36px;font-weight:900;letter-spacing:8px;color:#fff;text-shadow:0 0 14px currentColor}.phase-banner-sub{font-size:12px;font-weight:700;letter-spacing:3px;color:#ffffffb3;text-transform:uppercase}.phase-banner--start{color:#6dffa0}.phase-banner--main{color:#bb5fff}.phase-banner--battle{color:#ffb43c}.phase-banner--enemy{color:#6cf}@keyframes phase-banner-slam{0%{opacity:0;transform:translateY(-50%) scale(.7)}18%{opacity:1;transform:translateY(-50%) scale(1)}72%{opacity:1;transform:translateY(-50%) scale(1)}to{opacity:0;transform:translateY(-50%) scale(1.04) translate(20px)}}@keyframes phase-banner-bar-stretch{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes phase-banner-text-pop{0%{transform:scale(.85) rotate(-2deg);letter-spacing:16px}to{transform:scale(1) rotate(0);letter-spacing:8px}}.confetti-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:450;pointer-events:none;overflow:hidden}.confetti-piece{position:absolute;top:-24px;width:9px;height:14px;border-radius:2px;animation:confetti-fall linear forwards 1;box-shadow:0 0 6px currentColor}@keyframes confetti-fall{0%{transform:translateY(-30px) rotate(0);opacity:0}8%{opacity:1}to{transform:translateY(110vh) rotate(900deg);opacity:.85}}.match-recap{margin:0 0 24px;padding:16px;border-radius:12px;background:#00000059;border:1px solid rgba(255,255,255,.1)}.match-recap-title{font-size:11px;font-weight:800;letter-spacing:3px;color:#fff9;margin-bottom:12px;text-align:center}.match-recap-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.recap-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:8px;background:#ffffff0a}.recap-num{font-size:18px;font-weight:900;color:#fff;letter-spacing:.5px}.recap-label{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#ffffff8c}.recap-highlight{margin-top:12px;padding:8px 14px;border-radius:8px;background:linear-gradient(90deg,#ffd7002e,#ff64c82e);border:1px solid rgba(255,215,0,.4);color:#ffd99c;font-size:12px;font-weight:700;letter-spacing:.4px;text-align:center}.game-over-buttons button{padding:12px 28px;font-family:inherit;font-weight:700;font-size:14px;border-radius:10px;border:2px solid #fff;background:transparent;color:#fff;cursor:pointer;transition:all .2s}.game-over-buttons button:hover{background:#fff3}.trap-zone{display:flex;gap:8px;justify-content:center;align-items:center;min-height:58px;padding:4px 10px;opacity:.92}.trap-zone-empty{color:#555;font-size:10px;letter-spacing:1px;font-style:italic}.trap-slot{width:var(--trap-h);height:var(--trap-h);border-radius:8px;border:2px dashed rgba(180,107,255,.4);background:#140a28a6;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;text-align:center;color:#ddd;animation:trap-set-in .35s ease}@keyframes trap-set-in{0%{opacity:0;transform:translateY(-6px) rotateX(80deg)}to{opacity:1;transform:translateY(0) rotateX(0)}}.trap-slot.face-down{border-style:solid;border-color:#c83cc88c;background:linear-gradient(135deg,#2a0a30,#10050a)}.trap-back{font-size:22px;filter:drop-shadow(0 0 6px rgba(255,80,200,.6))}.trap-slot.own{border-style:solid;border-color:#ffb43c8c}.trap-icon{font-size:20px;line-height:1}.trap-name{font-size:9px;font-weight:700;margin-top:2px;padding:0 2px}.trap-reveal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:450;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;pointer-events:none;background:#0000008c;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:trap-reveal-fade 1.4s ease forwards}@keyframes trap-reveal-fade{0%{opacity:0}15%{opacity:1}80%{opacity:1}to{opacity:0}}.trap-reveal-label{font-size:18px;font-weight:800;letter-spacing:2px;color:#fc5;text-shadow:0 0 14px rgba(255,180,60,.8)}.trap-reveal-card{width:220px;padding:18px 14px;border-radius:14px;border:3px solid #ff3ea8;background:#19051eeb;display:flex;flex-direction:column;align-items:center;gap:10px;animation:trap-reveal-pop .5s cubic-bezier(.3,1.6,.5,1);box-shadow:0 0 40px #ff3ea88c}@keyframes trap-reveal-pop{0%{transform:scale(.4) rotateY(-90deg);opacity:0}to{transform:scale(1) rotateY(0);opacity:1}}.trap-reveal-icon{font-size:58px}.trap-reveal-name{font-size:18px;font-weight:800;letter-spacing:1px;color:#fff}.trap-reveal-desc{font-size:12px;color:#ddd;text-align:center;padding:0 6px}.slot-pick-banner{position:absolute;top:50%;left:calc((100% - var(--hud-w)) / 2);transform:translate(-50%,-50%);z-index:220;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 18px;max-width:560px;border-radius:999px;border:2px solid rgba(255,215,0,.7);background:#231900f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:slot-banner-pulse 1s ease-in-out infinite alternate;box-shadow:0 6px 28px #0009;pointer-events:auto;white-space:nowrap}@keyframes slot-banner-pulse{0%{box-shadow:0 0 6px #ffd7004d}to{box-shadow:0 0 20px #ffd700b3}}.slot-pick-label{font-size:13px;font-weight:700;color:gold;letter-spacing:.5px}.slot-pick-cancel{flex-shrink:0;padding:5px 12px;border-radius:8px;border:1px solid rgba(255,80,80,.6);background:#50000080;color:#f88;font-family:inherit;font-size:12px;font-weight:700;cursor:pointer;transition:background .15s}.slot-pick-cancel:hover{background:#820000b3}.zone-tile.zone-pick-target{border:2px dashed #ffd700!important;background:#ffd7001f!important;cursor:pointer!important;animation:slot-tile-pulse .7s ease-in-out infinite alternate;display:flex;align-items:center;justify-content:center;font-family:inherit;outline:none}.zone-tile.zone-pick-target:hover{background:#ffd70047!important;border-color:#ffe95a!important}@keyframes slot-tile-pulse{0%{box-shadow:0 0 4px #ffd70059}to{box-shadow:0 0 18px #ffd700d9}}.zone-tile.zone-pick-target.zone-pick-trap{border-color:#ff9a3c!important;background:#ff9a3c1f!important;animation:slot-tile-pulse-trap .7s ease-in-out infinite alternate}.zone-tile.zone-pick-target.zone-pick-trap:hover{background:#ff9a3c47!important}@keyframes slot-tile-pulse-trap{0%{box-shadow:0 0 4px #ff9a3c59}to{box-shadow:0 0 18px #ff9a3cd9}}.zone-pick-icon{font-size:22px;line-height:1;opacity:.85;pointer-events:none;color:gold}.zone-pick-trap .zone-pick-icon{color:#ff9a3c}.player-zones.picking-active .zone-row:not(.zone-front):not(.zone-back){opacity:.4;pointer-events:none}.chain-overlay{position:absolute;top:38%;left:calc((100% - var(--hud-w)) / 2);transform:translate(-50%,-50%);z-index:240;display:flex;flex-direction:column;gap:8px;padding:14px 18px;min-width:320px;max-width:420px;border-radius:14px;background:linear-gradient(180deg,#280a3cf2,#0f051ef2);border:2px solid rgba(255,215,0,.6);box-shadow:0 0 30px #ffd70059,0 8px 30px #0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none;animation:chain-overlay-in .3s cubic-bezier(.2,.9,.3,1.2) both}@keyframes chain-overlay-in{0%{opacity:0;transform:translate(-50%,-60%) scale(.85)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.chain-header{font-size:12px;font-weight:900;letter-spacing:3px;color:gold;text-align:center;text-shadow:0 0 8px rgba(255,215,0,.5);display:flex;justify-content:center;align-items:center;gap:10px}.chain-depth{font-size:9px;font-weight:700;letter-spacing:1px;padding:2px 8px;border-radius:999px;background:#ffd7002e;color:#fff3a0;border:1px solid rgba(255,215,0,.35)}.chain-links{display:flex;flex-direction:column;gap:6px}.chain-link{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:10px;border:2px solid;background:#ffffff0a;animation:chain-link-in .4s cubic-bezier(.3,1.4,.5,1) both}@keyframes chain-link-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.chain-source-player{background:linear-gradient(90deg,rgba(187,95,255,.18),transparent)}.chain-source-enemy{background:linear-gradient(90deg,rgba(102,200,255,.18),transparent)}.chain-link-num{font-size:10px;font-weight:900;letter-spacing:1px;padding:4px 8px;border-radius:6px;background:#ffd70033;color:gold;border:1px solid rgba(255,215,0,.4);flex-shrink:0}.chain-link-icon{font-size:28px;flex-shrink:0;text-shadow:0 0 12px currentColor}.chain-link-info{flex:1;min-width:0}.chain-link-name{font-size:14px;font-weight:800;color:#fff}.chain-link-source{font-size:10px;letter-spacing:.5px;color:#aaa;margin-top:2px}.chain-footer{font-size:10px;letter-spacing:1.5px;color:#aaa;text-align:center;font-style:italic;text-transform:uppercase}.chain-interrupt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:800;display:flex;align-items:center;justify-content:center;background:#0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:chain-interrupt-bg .2s ease-out}@keyframes chain-interrupt-bg{0%{opacity:0}to{opacity:1}}.chain-interrupt-box{width:460px;max-width:90vw;padding:20px 24px;border-radius:16px;background:linear-gradient(180deg,#2a0e3a,#15061f);border:3px solid #ffd700;box-shadow:0 0 40px #ffd70080,0 12px 40px #000000b3;animation:chain-interrupt-pop .3s cubic-bezier(.3,1.4,.5,1)}@keyframes chain-interrupt-pop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.chain-interrupt-header{text-align:center;font-size:13px;font-weight:900;letter-spacing:3px;color:gold;text-shadow:0 0 12px rgba(255,215,0,.6);padding-bottom:10px;border-bottom:1px solid rgba(255,215,0,.25);animation:chain-interrupt-pulse 1.2s ease-in-out infinite alternate}@keyframes chain-interrupt-pulse{0%{text-shadow:0 0 8px rgba(255,215,0,.3)}to{text-shadow:0 0 18px rgba(255,215,0,.9)}}.chain-interrupt-body{padding:14px 0;color:#ddd;font-size:13px;line-height:1.5}.chain-interrupt-body p{margin:0 0 8px}.chain-interrupt-question{margin-top:10px;font-size:14px;color:#fff}.chain-interrupt-card{margin:10px 0 4px;padding:10px 14px;border-radius:10px;border:2px solid;background:#ffffff0a;display:flex;gap:12px;align-items:center}.chain-interrupt-icon{font-size:36px;text-shadow:0 0 18px currentColor;flex-shrink:0}.chain-interrupt-details{flex:1;min-width:0}.chain-interrupt-name{font-size:14px;font-weight:800;color:#fff;margin-bottom:4px}.chain-interrupt-desc{font-size:11px;color:#aaa;line-height:1.4}.chain-interrupt-buttons{display:flex;gap:10px;margin-top:14px}.chain-btn{flex:1;padding:12px 16px;font-family:inherit;font-weight:800;font-size:13px;border-radius:10px;border:2px solid;background:transparent;color:#fff;cursor:pointer;transition:all .15s}.chain-btn-pass{border-color:#ffffff4d;color:#aaa}.chain-btn-pass:hover{background:#ffffff0f;color:#fff}.chain-btn-chain{border-color:gold;color:gold;background:#ffd70014;box-shadow:0 0 12px #ffd7004d}.chain-btn-chain:hover{background:#ffd70033;box-shadow:0 0 22px #ffd70099}.fusion-modal-box{max-width:600px;width:90vw;max-height:80vh;display:flex;flex-direction:column}.fusion-list{display:flex;flex-direction:column;gap:8px;margin:12px 0;overflow-y:auto;padding:4px;min-height:0;flex:1}.fusion-row{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-radius:10px;border:2px solid rgba(255,255,255,.12);background:#ffffff08;font-family:inherit;text-align:left;cursor:pointer;transition:background .15s,border-color .15s,transform .1s;color:#ddd}.fusion-row:not(:disabled):hover{background:#ffd70014;border-color:#ffd70066;transform:translate(2px)}.fusion-row.ready{border-color:#ffd70080;background:#ffd7000f}.fusion-row.legendary.ready{border-color:gold;background:#ffd70024;box-shadow:0 0 16px #ffd70040;animation:fusion-legendary-pulse 2s ease-in-out infinite alternate}@keyframes fusion-legendary-pulse{0%{box-shadow:0 0 12px #ffd70033}to{box-shadow:0 0 24px #ffd70080}}.fusion-row.pending{opacity:.55;cursor:not-allowed;border-style:dashed}.fusion-row.pending:hover{transform:none}.fusion-row-head{display:flex;align-items:center;gap:10px;font-size:14px}.fusion-row-name{font-weight:800;color:#fff}.fusion-row.legendary .fusion-row-name{color:gold}.fusion-row-tier{font-weight:700;color:gold;font-size:12px;letter-spacing:.5px}.fusion-row-status{margin-left:auto;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:1px}.fusion-row-status.ready{background:#50dc7840;color:#6dffa0;border:1px solid rgba(80,220,120,.5)}.fusion-row-status.pending{background:#ffffff0f;color:#aaa;border:1px solid rgba(255,255,255,.15)}.fusion-row-stats{font-size:11px;color:#999;letter-spacing:.5px}.fusion-row-recipe{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.fusion-ingredient{font-size:10px;font-weight:600;padding:3px 8px;border-radius:4px;letter-spacing:.3px}.fusion-ingredient.owned{background:#50dc7826;color:#9fffc0;border:1px solid rgba(80,220,120,.3)}.fusion-ingredient.missing{background:#ff50501a;color:#ff9090;border:1px solid rgba(255,80,80,.25)}.login-screen{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:24px;animation:fade-in .5s ease forwards}.login-box{width:100%;max-width:380px;padding:32px 28px;border-radius:18px;background:#0a0514bf;border:1px solid rgba(180,107,255,.45);box-shadow:0 0 40px #b46bff40,0 10px 40px #0009;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;gap:18px}.login-title{margin:0;font-size:22px;font-weight:800;letter-spacing:1px;text-align:center;background:linear-gradient(90deg,#ff3ea8,#bb5fff,#64dcff,#bb5fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:login-title-shift 4s linear infinite}@keyframes login-title-shift{0%{background-position:0% center}to{background-position:200% center}}.login-sub{font-size:13px;color:#ffffffa6;text-align:center;letter-spacing:.3px;margin-top:-8px}.login-form{display:flex;flex-direction:column;gap:14px;margin-top:4px}.login-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;letter-spacing:.5px;color:#ffffffbf;text-transform:uppercase}.login-field input{font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.3px;padding:10px 12px;border-radius:8px;border:1px solid rgba(180,107,255,.35);background:#0006;color:#fff;outline:none;transition:all .2s ease;text-transform:none}.login-field input::placeholder{color:#ffffff4d;font-weight:400}.login-field input:focus{border-color:#b46bffcc;box-shadow:0 0 12px #b46bff59;background:#0009}.login-notice{font-size:12px;line-height:1.5;font-weight:500;padding:10px 12px;border-radius:8px;border:1px solid rgba(100,220,255,.35);background:#64dcff14;color:#dcf5ffe6;letter-spacing:.2px}.login-notice strong{color:#fff;font-weight:700}.login-error{font-size:13px;font-weight:600;padding:10px 12px;border-radius:8px;border:1px solid rgba(255,80,80,.5);background:#ff3c3c26;color:#ff9c9c;text-align:center;animation:fade-in .25s ease forwards}.login-submit{font-family:inherit;font-size:14px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;padding:12px 18px;border-radius:10px;border:2px solid rgba(180,107,255,.6);background:#b46bff33;color:#fff;cursor:pointer;margin-top:4px;transition:all .2s ease}.login-submit:hover:not(:disabled){background:#b46bff66;box-shadow:0 0 20px #b46bff99;transform:translateY(-1px)}.login-submit:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.4)}.login-toggle{font-family:inherit;font-size:12px;font-weight:600;background:transparent;border:none;color:#64dcffe6;cursor:pointer;padding:4px;letter-spacing:.3px;transition:color .2s ease,text-shadow .2s ease}.login-toggle:hover{color:#64dcff;text-shadow:0 0 8px rgba(100,220,255,.6)}.login-offline{font-family:inherit;font-size:11px;font-weight:600;letter-spacing:.5px;padding:8px 10px;border-radius:8px;border:1px dashed rgba(255,255,255,.25);background:transparent;color:#ffffff8c;cursor:pointer;transition:all .2s ease}.login-offline:hover{color:#ffffffe6;border-color:#ffffff80;background:#ffffff0d}.login-footnote{font-size:11px;color:#ffffff59;letter-spacing:.3px;text-align:center;max-width:380px}.pvp-lobby{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:18px;animation:fade-in .35s ease forwards;position:relative}.pvp-back-btn{position:absolute;top:18px;left:18px;font-family:inherit;font-size:12px;font-weight:700;padding:6px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#0006;color:#ffffffd9;cursor:pointer;transition:all .2s ease}.pvp-back-btn:hover{background:#ffffff1a;border-color:#ffffff80}.pvp-card{width:100%;max-width:420px;padding:36px 28px;border-radius:18px;background:#0a0514cc;border:1px solid rgba(255,180,60,.5);box-shadow:0 0 40px #ffb43c33,0 10px 40px #0009;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.pvp-title{margin:0;font-size:22px;font-weight:800;letter-spacing:1.5px;background:linear-gradient(90deg,#ffb43c,#ff6a6a,#bb5fff,#ffb43c);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:pvp-title-shift 4s linear infinite}@keyframes pvp-title-shift{0%{background-position:0% center}to{background-position:200% center}}.pvp-sub{font-size:13px;color:#ffffffb3;letter-spacing:.4px}.pvp-sub code{font-family:Courier New,monospace;background:#ffffff14;padding:2px 6px;border-radius:4px;color:#ffd98c}.pvp-note{font-size:12px;color:#ffffff80;font-style:italic;max-width:300px;line-height:1.4}.pvp-error{font-size:13px;font-weight:600;padding:10px 14px;border-radius:8px;border:1px solid rgba(255,80,80,.5);background:#ff3c3c26;color:#ff9c9c}.pvp-spinner{width:44px;height:44px;border-radius:50%;border:3px solid rgba(255,180,60,.2);border-top-color:#ffb43cf2;animation:pvp-spin .9s linear infinite;margin:8px 0}@keyframes pvp-spin{to{transform:rotate(360deg)}}.pvp-time{font-size:22px;font-weight:800;letter-spacing:2px;color:#ffb43ce6;font-variant-numeric:tabular-nums}.pvp-vs{display:flex;align-items:center;justify-content:center;gap:14px;font-size:18px;font-weight:800;letter-spacing:1.5px;padding:10px 14px;border-radius:10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.15);width:100%}.pvp-vs-you{color:#64dcff;text-shadow:0 0 8px rgba(100,220,255,.4)}.pvp-vs-them{color:#ff8a8a;text-shadow:0 0 8px rgba(255,120,120,.4)}.pvp-vs-sep{opacity:.7;font-size:20px}.pvp-btn{font-family:inherit;font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;padding:10px 18px;border-radius:10px;cursor:pointer;transition:all .2s ease;margin-top:4px;border:2px solid transparent;background:transparent;color:#fff;min-width:180px}.pvp-btn--primary{border-color:#ffb43cb3;background:#ffb43c33}.pvp-btn--primary:hover{background:#ffb43c66;box-shadow:0 0 20px #ffb43c80}.pvp-btn--ghost{border-color:#ffffff40;color:#ffffffb3}.pvp-btn--ghost:hover{background:#ffffff14;border-color:#ffffff80;color:#fff}.lb-screen{min-height:100vh;width:100%;padding:40px 20px 60px;display:flex;flex-direction:column;align-items:center;gap:20px;position:relative;animation:fade-in .35s ease forwards}.lb-back{position:absolute;top:18px;left:18px;font-family:inherit;font-size:12px;font-weight:700;padding:6px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.25);background:#0006;color:#ffffffd9;cursor:pointer;transition:all .2s ease}.lb-back:hover{background:#ffffff1a;border-color:#ffffff80}.lb-card{width:100%;max-width:560px;padding:28px 28px 24px;border-radius:18px;background:#0a0514cc;border:1px solid rgba(255,215,0,.45);box-shadow:0 0 40px #ffd70026,0 10px 40px #0000008c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.lb-card--history{border-color:#64dcff66;box-shadow:0 0 30px #64dcff26,0 10px 40px #0000008c}.lb-title{margin:0 0 4px;font-size:22px;font-weight:800;letter-spacing:1.5px;text-align:center;background:linear-gradient(90deg,gold,#ff3ea8,#64dcff,gold);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:lb-title-shift 5s linear infinite}@keyframes lb-title-shift{0%{background-position:0% center}to{background-position:200% center}}.lb-subtitle{margin:0 0 10px;font-size:15px;font-weight:700;letter-spacing:.8px;color:#fff}.lb-sub{text-align:center;font-size:12px;color:#fff9;margin-bottom:16px}.lb-error,.lb-loading,.lb-empty{padding:14px;text-align:center;color:#ffffff8c;font-style:italic;font-size:13px}.lb-error{color:#ff9c9c;font-style:normal}.lb-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.lb-row{display:grid;grid-template-columns:48px 1fr auto auto;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-size:13px;transition:background .15s ease}.lb-row:hover{background:#ffffff14}.lb-row.is-me{border-color:#64dcff99;background:#64dcff1f;box-shadow:0 0 14px #64dcff40}.lb-rank{font-size:15px;font-weight:800;color:#ffffff73;text-align:right}.lb-rank-1 .lb-rank{color:gold;text-shadow:0 0 10px rgba(255,215,0,.6)}.lb-rank-2 .lb-rank{color:#d9d9d9;text-shadow:0 0 8px rgba(255,255,255,.4)}.lb-rank-3 .lb-rank{color:#ffa26a;text-shadow:0 0 8px rgba(255,140,60,.5)}.lb-name{font-weight:700;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-wins{font-size:13px;color:#ffffffe6}.lb-wins strong{color:gold;font-size:15px}.lb-losses{color:#fff6;font-weight:500}.lb-split{font-size:11px;color:#ffffff8c;font-variant-numeric:tabular-nums;letter-spacing:.3px}.lb-history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.lb-h-row{display:grid;grid-template-columns:80px 56px 1fr auto;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);font-size:12px;color:#fffc}.lb-h-win{border-left:3px solid #4dffb4}.lb-h-loss{border-left:3px solid #ff7a7a;opacity:.8}.lb-h-result{font-weight:700}.lb-h-mode{font-size:11px;color:#ffffff8c;text-transform:uppercase;letter-spacing:.5px}.lb-h-opp{color:#ffffffd9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lb-h-reason{color:#fff6;font-size:11px;font-style:italic}.cp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;background:#000000c7;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;animation:fade-in .2s ease}.cp-modal{position:relative;width:100%;max-width:380px;padding:28px 28px 22px;border-radius:16px;background:#0a0514eb;border:1px solid rgba(180,107,255,.5);box-shadow:0 0 40px #b46bff40,0 10px 40px #0009;display:flex;flex-direction:column;gap:16px;animation:cp-pop .25s ease}@keyframes cp-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.cp-close{position:absolute;top:6px;right:10px;background:transparent;border:none;color:#ffffff80;font-size:22px;cursor:pointer;padding:4px 8px;line-height:1;transition:color .15s ease}.cp-close:hover{color:#fff}.cp-title{margin:0;font-size:18px;font-weight:800;letter-spacing:1.2px;text-align:center;background:linear-gradient(90deg,#ff3ea8,#bb5fff,#64dcff,#bb5fff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:cp-title-shift 4s linear infinite}@keyframes cp-title-shift{0%{background-position:0% center}to{background-position:200% center}}.cp-form{display:flex;flex-direction:column;gap:12px}.cp-field{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:#ffffffb3}.cp-field input{font-family:inherit;font-size:14px;font-weight:500;letter-spacing:.3px;padding:9px 11px;border-radius:8px;border:1px solid rgba(180,107,255,.35);background:#0006;color:#fff;outline:none;text-transform:none;transition:all .2s ease}.cp-field input::placeholder{color:#ffffff4d;font-weight:400}.cp-field input:focus{border-color:#b46bffcc;box-shadow:0 0 10px #b46bff4d;background:#0009}.cp-error{font-size:12px;font-weight:600;padding:8px 10px;border-radius:8px;border:1px solid rgba(255,80,80,.5);background:#ff3c3c26;color:#ff9c9c;text-align:center}.cp-success{padding:22px 14px;border-radius:10px;border:1px solid rgba(100,255,180,.5);background:#64ffb41f;color:#b3ffd8;text-align:center;font-weight:700;font-size:14px;line-height:1.5}.cp-success small{display:block;margin-top:4px;font-size:11px;font-weight:500;color:#c8ffdcb3}.cp-buttons{display:flex;gap:10px;margin-top:4px}.cp-btn{flex:1;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;padding:10px 14px;border-radius:8px;cursor:pointer;transition:all .2s ease}.cp-btn:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.3)}.cp-btn--primary{border:2px solid rgba(180,107,255,.6);background:#b46bff33;color:#fff}.cp-btn--primary:hover:not(:disabled){background:#b46bff66;box-shadow:0 0 15px #b46bff80;transform:translateY(-1px)}.cp-btn--secondary{border:1px solid rgba(255,255,255,.25);background:transparent;color:#ffffffbf}.cp-btn--secondary:hover:not(:disabled){background:#ffffff14;border-color:#ffffff80;color:#fff}.app{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px}.cards-screen{display:flex;flex-direction:column;align-items:center;gap:40px;width:100%}.cards-row{display:flex;flex-wrap:wrap;justify-content:center;gap:20px}.reroll-btn{font-family:inherit;font-size:16px;font-weight:700;padding:14px 36px;border-radius:12px;border:2px solid rgba(180,107,255,.6);background:transparent;color:#fff;cursor:pointer;letter-spacing:1px;transition:all .2s ease;animation:fade-in .5s ease forwards}.reroll-btn:hover{background:#b46bff33;box-shadow:0 0 24px #b46bff66;transform:translateY(-2px)}.collection-hud{position:fixed;top:16px;right:16px;display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;border-radius:999px;background:#000000a6;border:1px solid rgba(180,107,255,.5);color:#fff;font-size:13px;font-weight:600;letter-spacing:.5px;z-index:100;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.hud-btn{font-family:inherit;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;border:1px solid rgba(180,107,255,.6);background:#b46bff26;color:#fff;cursor:pointer;transition:all .2s ease}.hud-btn:hover{background:#b46bff59;box-shadow:0 0 12px #b46bff80}.hud-btn--fusion{border-color:#ff3ea899;background:#ff3ea826;position:relative}.hud-btn--fusion:hover{background:#ff3ea859;box-shadow:0 0 12px #ff3ea880}.hud-btn--fusion.has-ready{border-color:gold;background:#ffd7002e;box-shadow:0 0 14px #ffd70073;animation:fusion-ready-pulse 2.4s ease-in-out infinite alternate}@keyframes fusion-ready-pulse{0%{box-shadow:0 0 8px #ffd7004d}to{box-shadow:0 0 22px #ffd700b3}}.fusion-ready-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:gold;color:#1a0a2e;font-size:10px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 0 8px #ffd700b3;border:1.5px solid rgba(255,255,255,.6)}.hud-btn--battle{border-color:#ffb43cb3;background:#ffb43c26}.hud-btn--battle:hover:not(:disabled){background:#ffb43c59;box-shadow:0 0 12px #ffb43c99}.hud-btn:disabled{opacity:.35;cursor:not-allowed;filter:grayscale(.6)}.battle-difficulty-group{display:flex;flex-direction:column;gap:4px;align-items:stretch}.difficulty-picker{display:flex;gap:2px;padding:2px;border-radius:7px;background:#00000059;border:1px solid rgba(255,180,60,.25)}.difficulty-btn{flex:1;padding:4px 6px;font-family:inherit;font-size:10px;font-weight:700;letter-spacing:.5px;border:1px solid transparent;background:transparent;color:#ffffff8c;border-radius:5px;cursor:pointer;transition:all .15s ease}.difficulty-btn:hover{color:#ffdc96e6}.difficulty-btn.active{background:#ffb43c40;border-color:#ffb43c80;color:#ffd99c;box-shadow:0 0 6px #ffb43c66}.hud-btn--deck{border-color:#64dcff99;background:#64dcff26}.hud-btn--deck:hover{background:#64dcff59;box-shadow:0 0 12px #64dcff80}.hud-btn--pvp{border-color:#ff6eff99;background:#ff6eff26}.hud-btn--pvp:hover:not(:disabled){background:#ff6eff59;box-shadow:0 0 12px #ff6eff8c}.hud-btn--leaderboard{border-color:#ffd70099;background:#ffd7001f;padding:6px 10px}.hud-btn--leaderboard:hover{background:#ffd7004d;box-shadow:0 0 12px #ffd7008c}.hud-user{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#ffffffd9;font-size:12px;font-weight:700;letter-spacing:.3px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud-btn--logout{border-color:#ffffff40;background:#ffffff0f;color:#fffc}.hud-btn--logout:hover{background:#ff787833;border-color:#ff787899;box-shadow:0 0 10px #ff787859;color:#fff}.fusion-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#000c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:32px;animation:fusion-modal-fade .3s ease}@keyframes fusion-modal-fade{0%{opacity:0}to{opacity:1}}.fusion-modal-label{font-size:24px;font-weight:800;letter-spacing:2px;background:linear-gradient(90deg,#ff3ea8,#bb5fff,gold,#ff3ea8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;background-size:200% auto;animation:fusion-label-shift 3s linear infinite}@keyframes fusion-label-shift{0%{background-position:0% center}to{background-position:200% center}}.fusion-modal-close{font-family:inherit;font-size:14px;font-weight:700;letter-spacing:1px;padding:12px 28px;border-radius:10px;border:2px solid rgba(180,107,255,.6);background:transparent;color:#fff;cursor:pointer;transition:all .2s ease}.fusion-modal-close:hover{background:#b46bff40;box-shadow:0 0 16px #b46bff80}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
