.card-reveal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;width:100vw;height:100vh;background:#000000d9;display:flex;align-items:center;justify-content:center;animation:overlayFadeIn .3s ease;overflow:hidden}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.reveal-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.reveal-bg-common{background:radial-gradient(ellipse at center,rgba(148,163,184,.06) 0%,transparent 70%)}.reveal-bg-uncommon{background:radial-gradient(ellipse at center,rgba(34,197,94,.1) 0%,rgba(34,197,94,.03) 40%,transparent 70%);animation:bgBreath 2.5s ease-in-out infinite}.reveal-bg-rare{background:radial-gradient(ellipse at center,rgba(59,130,246,.12) 0%,transparent 60%),radial-gradient(ellipse at 20% 80%,rgba(59,130,246,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(59,130,246,.06) 0%,transparent 50%);animation:bgBreath 2s ease-in-out infinite}.reveal-bg-epic{background:radial-gradient(ellipse at center,rgba(168,85,247,.15) 0%,transparent 50%),radial-gradient(ellipse at 30% 70%,rgba(168,85,247,.08) 0%,transparent 50%),radial-gradient(ellipse at 70% 30%,rgba(240,147,251,.06) 0%,transparent 50%);animation:bgBreath 1.5s ease-in-out infinite}.reveal-bg-epic:after{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,transparent 0%,rgba(168,85,247,.04) 25%,transparent 50%,rgba(168,85,247,.04) 75%,transparent 100%);animation:bgSpin 8s linear infinite}.reveal-bg-legendary{background:radial-gradient(ellipse at center,rgba(245,158,11,.18) 0%,rgba(245,158,11,.05) 35%,transparent 60%);animation:bgBreath 1.2s ease-in-out infinite}.reveal-bg-legendary:before{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,transparent,rgba(245,158,11,.12),transparent,rgba(245,158,11,.08),transparent,rgba(245,158,11,.12),transparent,rgba(245,158,11,.08),transparent);animation:bgSpin 4s linear infinite}.reveal-bg-legendary:after{content:"";position:absolute;top:-25%;right:-25%;bottom:-25%;left:-25%;width:150%;height:150%;background:conic-gradient(from 180deg at 50% 50%,transparent,rgba(245,158,11,.06),transparent,rgba(245,158,11,.06),transparent);animation:bgSpin 7s linear infinite reverse}@keyframes bgBreath{0%,to{opacity:.7}50%{opacity:1}}@keyframes bgSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reveal-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-md);width:100%;height:100%;padding:var(--sp-lg);background:none;border:none;box-shadow:none}.reveal-counter{font-family:var(--font-display);font-size:1.25rem;color:var(--text-muted);letter-spacing:2px}.reveal-rarity-label{font-family:var(--font-display);font-size:1.5rem;letter-spacing:3px;animation:labelPop .5s ease .2s both}@keyframes labelPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.reveal-btn{margin-top:var(--sp-sm);min-width:200px}.reveal-card-wrapper{width:min(380px,100%);background:none;border:none;box-shadow:none}.reveal-card-wrapper .trading-card{animation:none}.reveal-common{animation:revealCommon .6s ease both}@keyframes revealCommon{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.reveal-uncommon{animation:revealUncommon .7s ease both}.reveal-uncommon .trading-card{box-shadow:0 0 30px #22c55e40;animation:glowPulseGreen 2s ease-in-out infinite .7s}@keyframes revealUncommon{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes glowPulseGreen{0%,to{box-shadow:0 0 20px #22c55e33}50%{box-shadow:0 0 40px #22c55e66}}.reveal-rare{animation:revealRare .8s ease both;perspective:600px}.reveal-rare .trading-card{box-shadow:0 0 35px #3b82f64d;animation:glowPulseBlue 1.5s ease-in-out infinite .8s}@keyframes revealRare{0%{opacity:0;transform:rotateY(90deg) scale(.85)}60%{opacity:1;transform:rotateY(-5deg) scale(1.02)}to{opacity:1;transform:rotateY(0) scale(1)}}@keyframes glowPulseBlue{0%,to{box-shadow:0 0 25px #3b82f640}50%{box-shadow:0 0 45px #3b82f673}}.reveal-epic{animation:revealEpic .9s cubic-bezier(.17,.67,.35,1.2) both}.reveal-epic .trading-card{box-shadow:0 0 40px #a855f759,0 0 80px #a855f726;animation:auraPulseEpic 1.2s ease-in-out infinite .9s}@keyframes revealEpic{0%{opacity:0;transform:scale(.3) rotate(-5deg)}50%{opacity:1;transform:scale(1.08) rotate(1deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes auraPulseEpic{0%,to{box-shadow:0 0 30px #a855f74d,0 0 70px #a855f71a}50%{box-shadow:0 0 50px #a855f773,0 0 100px #a855f733}}.reveal-legendary{animation:revealLegendary 1.1s cubic-bezier(.17,.67,.35,1.15) both;position:relative}.reveal-legendary .trading-card{box-shadow:0 0 40px #f59e0b66,0 0 80px #f59e0b33;animation:auraPulseLegendary 1s ease-in-out infinite 1.1s}@keyframes revealLegendary{0%{opacity:0;transform:scale(.1) rotate(-10deg);filter:brightness(3)}40%{opacity:1;transform:scale(1.15) rotate(2deg);filter:brightness(1.5)}70%{transform:scale(.97) rotate(-1deg);filter:brightness(1)}to{transform:scale(1) rotate(0);filter:brightness(1)}}@keyframes auraPulseLegendary{0%,to{box-shadow:0 0 35px #f59e0b4d,0 0 70px #f59e0b26}50%{box-shadow:0 0 55px #f59e0b80,0 0 110px #f59e0b40}}.card-flip-container{width:min(380px,100%);aspect-ratio:380 / 600;perspective:1000px;container-type:inline-size;position:relative}.card-flip-scaler{position:absolute;top:0;left:0;width:380px;height:600px;transform-origin:top left;transform:scale(calc(100cqi/380px));transform-style:preserve-3d}.card-flip-inner{position:relative;width:100%;height:100%;transition:transform .6s ease;transform-style:preserve-3d}.card-flip-container.flipped .card-flip-inner{transform:rotateY(180deg)}.card-flip-face{width:100%;backface-visibility:hidden;-webkit-backface-visibility:hidden}.card-flip-front{position:relative}.card-flip-back{position:absolute;top:0;left:0;right:0;bottom:0;transform:rotateY(180deg)}.card-flip-back .trading-card{height:100%;display:flex;flex-direction:column}.trading-card{position:relative;background:#1f1a12;padding:16px 26px 10px;width:380px;height:600px;display:flex;flex-direction:column;box-shadow:none;border:none;border-radius:22px;animation:cardAppear .5s ease;overflow:hidden;box-sizing:border-box;transform-style:flat;isolation:isolate}@keyframes cardAppear{0%{opacity:0;transform:scale(.9) rotateY(90deg)}to{opacity:1;transform:scale(1) rotateY(0)}}.card-flip-container .trading-card{animation:none}.trading-card[data-rarity=epic]{box-shadow:0 0 20px #a855f740}.trading-card[data-rarity=legendary]{box-shadow:0 0 25px #f59e0b40}.trading-card[data-rarity=common] .card-name{color:var(--common)}.trading-card[data-rarity=uncommon] .card-name{color:var(--uncommon)}.trading-card[data-rarity=rare] .card-name{color:var(--rare)}.trading-card[data-rarity=epic] .card-name{color:var(--epic)}.trading-card[data-rarity=legendary] .card-name{color:var(--legendary)}.card-header{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;gap:8px;height:62px;flex-shrink:0;border-bottom:none}.card-name{font-family:var(--font-display);font-size:1.3rem;color:#e3cc8a;line-height:1.1;flex:1;min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-type{background:var(--accent-gradient);padding:2px 10px;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.card-image{position:relative;z-index:1;width:328px;height:180px;border-radius:10px;overflow:hidden;margin:0 auto;background:var(--dark-elevated);flex-shrink:0}.card-image img,.card-image video{width:100%;height:100%;object-fit:cover;display:block}.card-lock-badge{position:absolute;top:6px;right:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#000000a6;border-radius:50%;font-size:.85rem;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;z-index:2}.card-deck-badge{position:absolute;top:6px;right:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#000000a6;border-radius:50%;font-size:.85rem;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;cursor:pointer;color:#e0d6c2;transition:background .15s}.card-deck-badge:hover{background:#3c321ed9}.card-trade-badge{position:absolute;top:6px;right:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#000000a6;border-radius:50%;font-size:.85rem;line-height:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2;cursor:pointer;color:#f0c040;transition:background .15s}.card-trade-badge:hover{background:#3c320ad9}.card-lock-badge~.card-deck-badge,.card-lock-badge~.card-trade-badge,.card-deck-badge~.card-trade-badge{top:36px}.card-lock-badge~.card-deck-badge~.card-trade-badge{top:66px}.card-abilities{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:3px;height:18px;margin:14px 0 2px;overflow:hidden;flex-shrink:0}.ability-tag{background:rgba(var(--color-accent-rgb),.15);border:1px solid rgba(var(--color-accent-rgb),.3);color:var(--text-secondary);padding:0 6px;height:16px;display:inline-flex;align-items:center;border-radius:10px;font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.card-stats{position:relative;z-index:1;display:flex;flex-direction:column;gap:1px;margin-bottom:2px;flex-shrink:0}.stat-row{display:flex;align-items:center;gap:4px;height:16px}.stat-row .stat-label{font-size:.65rem;text-transform:uppercase;color:var(--text-muted);width:24px;font-weight:700;letter-spacing:.5px;flex-shrink:0}.stat-track{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden;display:flex}.stat-fill{height:100%;background:var(--success-gradient);transition:width .5s ease;flex-shrink:0}.stat-fill-gear{height:100%;background:linear-gradient(135deg,#48bb78,#38a169);transition:width .5s ease;flex-shrink:0}.stat-fill-hp{background:linear-gradient(135deg,#ef4444,#f59e0b)}.stat-val{font-family:var(--font-display);font-size:.85rem;width:20px;text-align:right;color:var(--text-primary);flex-shrink:0}.card-gear{position:relative;z-index:1;margin-bottom:6px;flex-shrink:0}.card-gear-label{font-family:var(--font-display);font-size:.85rem;color:var(--text-muted);letter-spacing:1.5px;text-transform:uppercase;margin-bottom:4px}.card-gear-slots{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.gear-slot{background:#ffffff0a;border:1px solid rgba(201,162,91,.15);border-radius:8px;padding:4px 6px;display:flex;align-items:center;justify-content:center;min-height:54px;cursor:default;transition:border-color .2s}.gear-slot:hover{border-color:#c9a25b66}.gear-name{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-align:center;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.gear-empty{border-style:dashed;border-color:#c9a25b14}.gear-icon-empty{color:var(--text-muted);font-size:.8rem;opacity:.3}.card-footer{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;padding-top:2px;border-top:none;flex-shrink:0;margin-top:auto}.card-power{font-family:var(--font-display);font-size:.8rem;color:#e3cc8ad9;letter-spacing:1px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.card-rarity{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;padding:1px 6px;border-radius:4px;text-shadow:0 1px 3px rgba(0,0,0,.6)}.rarity-common{color:var(--common)}.rarity-uncommon{color:var(--uncommon)}.rarity-rare{color:var(--rare)}.rarity-epic{color:var(--epic)}.rarity-legendary{color:var(--legendary)}.card-flip-btn{position:relative;z-index:1;display:block;width:60%;margin:4px auto 20px;padding:3px 8px;background:#ffffff08;border:1px solid rgba(201,162,91,.15);border-radius:6px;color:#c9a25b73;font-family:Rajdhani,sans-serif;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.card-flip-btn:hover{color:#c9a25bcc;border-color:#c9a25b59;background:#c9a25b0f}.card-back-body{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;gap:12px;padding:10px 2px;overflow:hidden}.card-back-section{flex:3;min-height:0;overflow:hidden}.card-back-section:last-child{flex:1}.card-back-label{font-family:var(--font-display);font-size:1rem;color:#c9a25bb3;letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;padding-bottom:3px;border-bottom:1px solid rgba(201,162,91,.12)}.card-back-text{font-size:.9rem;line-height:1.55;color:var(--text-secondary);overflow:hidden;display:-webkit-box;-webkit-line-clamp:16;line-clamp:16;-webkit-box-orient:vertical}.card-back-lore{font-style:italic;color:var(--text-muted)}.card-back-traits{display:flex;flex-wrap:wrap;gap:6px}.trait-tag{padding:3px 10px;border-radius:12px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:rgba(var(--color-accent-rgb),.12);border:1px solid rgba(var(--color-accent-rgb),.25);color:var(--text-secondary)}.trait-damage_bonus{background:#ef444426;border-color:#ef444459;color:#f87171}.trait-aoe_damage{background:#f9731626;border-color:#f9731659;color:#fb923c}.trait-heal_self{background:#22c55e26;border-color:#22c55e59;color:#4ade80}.trait-heal_ally{background:#34d39926;border-color:#34d39959;color:#6ee7b7}.trait-shield{background:#3b82f626;border-color:#3b82f659;color:#60a5fa}.trait-taunt{background:#f59e0b26;border-color:#f59e0b59;color:#fbbf24}.trait-speed_boost{background:#a855f726;border-color:#a855f759;color:#d4a853}.trait-weaken{background:#94a3b826;border-color:#94a3b859;color:#94a3b8}.trait-poison{background:#a78bfa26;border-color:#a78bfa59;color:#a78bfa}.trait-lifesteal{background:#f472b626;border-color:#f472b659;color:#f472b6}.trait-counter{background:#38bdf826;border-color:#38bdf859;color:#38bdf8}.card-back-unclassified{font-size:.8rem;font-style:italic;line-height:1.5;color:var(--text-muted);opacity:.7}.item-reveal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;width:100vw;height:100vh;background:#000000e0;display:flex;align-items:center;justify-content:center;animation:itemRevealFadeIn .3s ease;overflow:hidden}@keyframes itemRevealFadeIn{0%{opacity:0}to{opacity:1}}.item-reveal-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0}.item-reveal-bg-common{background:radial-gradient(ellipse at center,rgba(148,163,184,.06) 0%,transparent 70%)}.item-reveal-bg-magical{background:radial-gradient(ellipse at center,rgba(255,215,0,.12) 0%,transparent 50%),radial-gradient(ellipse at 30% 70%,rgba(255,215,0,.06) 0%,transparent 50%);animation:itemBgBreath 2s ease-in-out infinite}.item-reveal-bg-mythical{background:radial-gradient(ellipse at center,rgba(255,140,0,.15) 0%,transparent 50%),radial-gradient(ellipse at 20% 80%,rgba(255,140,0,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(255,215,0,.06) 0%,transparent 50%);animation:itemBgBreath 1.5s ease-in-out infinite}.item-reveal-bg-mythical:after{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;width:200%;height:200%;background:conic-gradient(from 0deg at 50% 50%,transparent 0%,rgba(255,140,0,.06) 25%,transparent 50%,rgba(255,140,0,.06) 75%,transparent 100%);animation:itemBgSpin 6s linear infinite}@keyframes itemBgBreath{0%,to{opacity:.7}50%{opacity:1}}@keyframes itemBgSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.item-reveal-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-lg);width:100%;height:100%;padding:var(--sp-lg)}.item-reveal-card{display:flex;flex-direction:column;align-items:center;gap:var(--sp-md);padding:var(--sp-xl) var(--sp-lg);max-width:340px;width:100%;border-radius:16px;border:2px solid rgba(255,255,255,.08);background:#181c24d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.item-reveal-common{animation:itemRevealCommon .6s ease both}.item-reveal-magical{animation:itemRevealMagical .8s ease both;border-color:#ffd70040;box-shadow:0 0 30px #ffd70026,0 0 60px #ffd70014}.item-reveal-mythical{animation:itemRevealMythical 1s cubic-bezier(.17,.67,.35,1.15) both;border-color:#ff8c004d;box-shadow:0 0 40px #ff8c0033,0 0 80px #ff8c001a}@keyframes itemRevealCommon{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes itemRevealMagical{0%{opacity:0;transform:rotateY(90deg) scale(.85)}60%{opacity:1;transform:rotateY(-5deg) scale(1.02)}to{opacity:1;transform:rotateY(0) scale(1)}}@keyframes itemRevealMythical{0%{opacity:0;transform:scale(.3) rotate(-5deg);filter:brightness(2)}50%{opacity:1;transform:scale(1.08) rotate(1deg);filter:brightness(1.3)}to{opacity:1;transform:scale(1) rotate(0);filter:brightness(1)}}.item-reveal-icon-wrap{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.item-reveal-icon{width:100px;height:100px;object-fit:contain;border-radius:12px;position:relative;z-index:1}.item-reveal-sunburst{position:absolute;top:-20px;right:-20px;bottom:-20px;left:-20px;border-radius:50%;background:conic-gradient(from 0deg,transparent,var(--item-rarity-color, #FFD700),transparent,var(--item-rarity-color, #FFD700),transparent,var(--item-rarity-color, #FFD700),transparent);opacity:.15;animation:itemSunburstSpin 8s linear infinite}.item-reveal-sunburst-diag{animation-direction:reverse;animation-duration:12s;opacity:.1}@keyframes itemSunburstSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.item-reveal-name{font-family:var(--font-display);font-size:1.6rem;letter-spacing:2px;text-align:center;margin:0}.item-reveal-rarity{font-family:var(--font-display);font-size:1rem;letter-spacing:3px;text-transform:uppercase;animation:itemLabelPop .5s ease .3s both}@keyframes itemLabelPop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.item-reveal-stats{display:flex;gap:var(--sp-sm);flex-wrap:wrap;justify-content:center}.item-reveal-stat{font-size:.9rem;padding:4px 10px;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:#a5f3fc;letter-spacing:.5px}.item-reveal-abilities{display:flex;flex-direction:column;gap:6px;width:100%}.item-reveal-ability{font-size:.85rem;padding:8px 12px;border-radius:8px;background:#7c3aed1f;border:1px solid rgba(124,58,237,.2);color:#c4b5fd;text-align:center;line-height:1.4}.item-reveal-btn{min-width:200px;margin-top:var(--sp-sm)}@media (max-width: 768px){.item-reveal-card{padding:var(--sp-lg) var(--sp-md);max-width:300px}.item-reveal-icon{width:80px;height:80px}.item-reveal-icon-wrap{width:100px;height:100px}.item-reveal-name{font-size:1.3rem}}.chat-bubble{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--primary-gradient);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg),0 0 20px rgba(var(--color-accent-rgb),.3);z-index:1000;transition:transform .2s,box-shadow .2s}.chat-bubble:hover{transform:scale(1.08);box-shadow:var(--shadow-lg),0 0 30px rgba(var(--color-accent-rgb),.5)}.chat-bubble-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;border:2px solid var(--dark-bg)}.chat-window{position:fixed;bottom:92px;right:24px;width:380px;height:520px;background:var(--dark-surface);border-radius:16px;border:1px solid rgba(var(--color-accent-rgb),.2);box-shadow:var(--shadow-lg),0 0 40px #0006;z-index:999;display:flex;flex-direction:column;overflow:hidden;animation:chatSlideUp .25s ease}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chat-window-header{padding:var(--sp-md) var(--sp-lg);background:var(--dark-elevated);border-bottom:1px solid rgba(var(--color-accent-rgb),.15);display:flex;align-items:center;min-height:48px}.chat-window-title{font-family:var(--font-display);font-size:1.3rem;color:var(--text-primary);letter-spacing:.5px}.chat-back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;gap:var(--sp-xs);font-family:Rajdhani,sans-serif;font-size:.95rem;font-weight:600;padding:var(--sp-xs) var(--sp-sm);border-radius:8px;transition:.15s}.chat-back-btn:hover{color:var(--text-primary);background:#ffffff0d}.chat-sweep-btn{margin-left:auto;background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--sp-xs) var(--sp-sm);border-radius:8px;font-family:Rajdhani,sans-serif;font-size:.85rem;font-weight:600;transition:.15s;display:flex;align-items:center}.chat-sweep-btn:hover{color:#ef4444;background:#ef444414}.chat-sweep-btn.confirm{color:#fff;background:#ef4444;padding:var(--sp-xs) var(--sp-md)}.chat-sweep-btn.confirm:hover{background:#dc2626}.chat-window-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.conversation-list{flex:1;overflow-y:auto;padding:var(--sp-sm);display:flex;flex-direction:column;gap:2px;touch-action:pan-y;overscroll-behavior:contain}.chat-new-dm-btn{margin:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);background:var(--primary-gradient);border:none;border-radius:10px;color:#fff;font-family:Rajdhani,sans-serif;font-size:.9rem;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:.15s}.chat-new-dm-btn:hover{opacity:.9;transform:scale(1.02)}.conversation-section-label{font-family:var(--font-display);font-size:.85rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:var(--sp-sm) var(--sp-sm) var(--sp-xs)}.conversation-row{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);background:transparent;border:none;border-radius:10px;cursor:pointer;width:100%;text-align:left;transition:.15s;color:var(--text-primary)}.conversation-row:hover{background:var(--dark-elevated)}.conversation-row.unread{background:rgba(var(--color-accent-rgb),.08);border-left:3px solid var(--color-accent)}.conversation-row.unread .conversation-name{color:#fff;font-weight:700}.conversation-row.unread .conversation-preview{color:var(--text-primary);font-weight:600}.conversation-unread-icon{display:inline-flex;align-items:center;margin-left:6px;color:#ef4444;vertical-align:middle;animation:unreadPulse 2s ease-in-out infinite}@keyframes unreadPulse{0%,to{opacity:1}50%{opacity:.6}}.conversation-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:1.1rem;color:#fff;flex-shrink:0}.conversation-avatar.system{background:var(--success-gradient)}.conversation-avatar.help-avatar{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.conversation-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.conversation-top{display:flex;justify-content:space-between;align-items:center}.conversation-name{font-weight:600;font-size:.95rem;color:var(--text-primary)}.conversation-time{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.conversation-preview{font-size:.85rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-hide-btn{background:none;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:.15s;flex-shrink:0}.conversation-hide-btn:hover{opacity:1;color:#ef4444;background:#ef44441a}.conversation-badge{background:#ef4444;color:#fff;font-size:.7rem;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 5px;flex-shrink:0}.notification-row{display:flex;align-items:flex-start;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);background:#4facfe0f;border:1px solid rgba(79,172,254,.12);border-radius:10px;margin:0 var(--sp-sm) 2px;position:relative}.notification-row.card-ready{background:#22c55e0f;border-color:#22c55e26}.notification-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.9rem;color:#fff;flex-shrink:0}.notification-row.card-ready .notification-avatar{background:linear-gradient(135deg,#22c55e,#16a34a)}.notification-row.battle-result{background:#4facfe0f;border-color:#4facfe26}.notification-row.battle-result .notification-avatar{background:var(--accent-gradient)}.notification-row.card-gift{background:rgba(var(--color-accent-rgb),.06);border-color:rgba(var(--color-accent-rgb),.15)}.notification-row.card-gift .notification-avatar{background:linear-gradient(135deg,#4a8db5,#c9922a)}.notification-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.notification-header{display:flex;justify-content:space-between;align-items:center}.notification-sender{font-weight:600;font-size:.85rem;color:var(--text-primary)}.notification-time{font-size:.7rem;color:var(--text-muted);flex-shrink:0}.notification-content{font-size:.85rem;color:var(--text-secondary);line-height:1.3}.notification-delete-btn{background:none;border:none;color:#fff;cursor:pointer;padding:2px;border-radius:6px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:.15s;flex-shrink:0;width:34px;height:34px}.notification-row:hover .notification-delete-btn{opacity:1}.notification-delete-btn:hover{color:#ef4444;background:#ef44441a}.notification-row.disintegrating,.conversation-row.disintegrating{position:relative;pointer-events:none;animation:rowCollapse .45s .3s ease-out forwards}.notification-row.disintegrating>*:not(.dismiss-particles),.conversation-row.disintegrating>*:not(.dismiss-particles){animation:contentDissolve .3s ease-out forwards}@keyframes contentDissolve{0%{opacity:1;filter:blur(0);transform:scale(1)}to{opacity:0;filter:blur(3px);transform:scale(.96)}}@keyframes rowCollapse{0%{max-height:80px;margin-bottom:2px}to{max-height:0;margin:0;padding:0;border-width:0;overflow:hidden}}.dismiss-particles{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none;z-index:10}.dismiss-particle{position:absolute;border-radius:50%;opacity:0;animation:particleFly var(--dur) var(--delay) ease-out forwards;box-shadow:0 0 6px currentColor}@keyframes particleFly{0%{opacity:1;transform:translate(0) scale(1)}50%{opacity:.9}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(0)}}.friend-picker{padding:var(--sp-sm);margin:0 var(--sp-sm) var(--sp-sm);display:flex;flex-direction:column;gap:2px;max-height:200px;overflow-y:auto;background:var(--dark-elevated);border-radius:10px;border:1px solid rgba(var(--color-accent-rgb),.12)}.friend-picker-item{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);background:transparent;border:none;border-radius:8px;cursor:pointer;color:var(--text-primary);transition:.15s;width:100%;text-align:left}.friend-picker-item:hover{background:var(--dark-elevated)}.friend-picker-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:.95rem;color:#fff}.friend-picker-name{font-weight:600;font-size:.9rem}.chat-empty-text{color:var(--text-muted);font-size:.85rem;text-align:center;padding:var(--sp-md)}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:var(--sp-xl);color:var(--text-muted);text-align:center;gap:var(--sp-sm)}.chat-empty-hint{font-size:.85rem;color:var(--text-muted);opacity:.7}.message-view{flex:1;display:flex;flex-direction:column;overflow:hidden}.message-list{flex:1;overflow-y:auto;padding:var(--sp-md);display:flex;flex-direction:column;gap:var(--sp-sm);touch-action:pan-y;overscroll-behavior:contain}.message-loading{text-align:center;color:var(--text-muted);font-size:.8rem;padding:var(--sp-sm)}.message-empty{text-align:center;color:var(--text-muted);padding:var(--sp-xl) var(--sp-md);font-size:.9rem}.message-bubble{max-width:80%;padding:var(--sp-sm) var(--sp-md);border-radius:14px;display:flex;flex-direction:column;gap:2px;word-break:break-word}.message-bubble.sent{align-self:flex-end;background:var(--primary-gradient);color:#fff;border-bottom-right-radius:4px}.message-bubble.received{align-self:flex-start;background:var(--dark-elevated);color:var(--text-primary);border-bottom-left-radius:4px}.message-bubble.system{align-self:center;background:#4facfe1a;border:1px solid rgba(79,172,254,.2);color:var(--text-secondary);text-align:center;max-width:90%;border-radius:10px;font-size:.85rem}.message-bubble.system.card-ready{background:#22c55e1a;border-color:#22c55e40;color:#22c55e}.message-bubble.help-answer{background:#48bb7814;border:1px solid rgba(72,187,120,.15)}.message-bubble.help-answer .message-sender{color:#48bb78}.message-bubble.help-answer .message-text p{margin:0 0 var(--sp-sm)}.message-bubble.help-answer .message-text p:last-child{margin-bottom:0}.message-bubble.help-answer .message-text strong{color:var(--text-primary)}.message-bubble.help-answer .message-text ul,.message-bubble.help-answer .message-text ol{padding-left:var(--sp-lg);margin:var(--sp-xs) 0}.message-bubble.help-answer .message-text code{background:var(--dark-surface);padding:1px 5px;border-radius:4px;font-size:.9em}.help-thinking{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-style:italic}.help-spinner{display:inline-block;width:18px;height:18px;border:3px solid rgba(72,187,120,.2);border-top-color:#48bb78;border-radius:50%;animation:helpSpin .8s linear infinite;flex-shrink:0}@keyframes helpSpin{to{transform:rotate(360deg)}}.message-card-icon{display:inline-flex;margin-right:var(--sp-xs);vertical-align:middle}.message-sender{font-size:.75rem;font-weight:600;color:var(--color-accent);margin-bottom:1px}.message-text{font-size:.9rem;line-height:1.4}.message-time{font-size:.65rem;opacity:.6;align-self:flex-end;margin-top:1px}.message-bubble.sent .message-time{color:#ffffffb3}.message-footer{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.help-actions{display:flex;align-items:center;gap:4px}.help-feedback{display:flex;gap:4px}.feedback-btn{background:none;border:none;cursor:pointer;opacity:.3;padding:2px 4px;border-radius:4px;transition:opacity .2s,background .2s;color:inherit;display:flex;align-items:center}.feedback-btn:hover{opacity:.7;background:#ffffff0f}.feedback-btn.active{opacity:1;color:#48bb78}.message-input-bar{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);border-top:1px solid rgba(var(--color-accent-rgb),.15);background:var(--dark-elevated)}.message-input{flex:1;padding:var(--sp-sm) var(--sp-md);background:var(--dark-surface);border:1px solid rgba(var(--color-accent-rgb),.2);border-radius:20px;color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:.9rem;outline:none;transition:.15s}.message-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 2px rgba(var(--color-accent-rgb),.15)}.message-input::placeholder{color:var(--text-muted)}.message-send-btn{width:36px;height:36px;border-radius:50%;background:var(--primary-gradient);border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s;flex-shrink:0}.message-send-btn:hover:not(:disabled){transform:scale(1.08)}.message-send-btn:disabled{opacity:.4;cursor:not-allowed}.message-list::-webkit-scrollbar,.conversation-list::-webkit-scrollbar,.friend-picker::-webkit-scrollbar{width:4px}.message-list::-webkit-scrollbar-track,.conversation-list::-webkit-scrollbar-track,.friend-picker::-webkit-scrollbar-track{background:transparent}.message-list::-webkit-scrollbar-thumb,.conversation-list::-webkit-scrollbar-thumb,.friend-picker::-webkit-scrollbar-thumb{background:rgba(var(--color-accent-rgb),.2);border-radius:2px}.chat-header-right{display:flex;align-items:center;gap:var(--sp-xs);margin-left:auto}.chat-friends-btn{position:relative;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--sp-xs);border-radius:8px;display:flex;align-items:center;justify-content:center;transition:.15s;margin-left:auto}.chat-header-right .chat-friends-btn{margin-left:0}.chat-friends-btn:hover{color:var(--text-primary);background:#ffffff0d}.chat-friends-badge{position:absolute;top:-4px;right:-6px;background:#22c55e;color:#fff;font-size:.6rem;font-weight:700;min-width:16px;height:16px;border-radius:8px;display:flex;align-items:center;justify-content:center;padding:0 4px;border:2px solid var(--dark-elevated);line-height:1}.friends-online-overlay{display:flex;flex-direction:column;flex:1;overflow:hidden}.friends-online-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-sm) var(--sp-md);border-bottom:1px solid rgba(var(--color-accent-rgb),.1)}.friends-online-title{font-family:var(--font-display);font-size:1rem;color:var(--text-primary);letter-spacing:.5px}.friends-online-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:var(--sp-xs);border-radius:6px;display:flex;align-items:center;transition:.15s}.friends-online-close:hover{color:var(--text-primary);background:#ffffff0d}.friends-online-list{flex:1;overflow-y:auto;padding:var(--sp-sm);display:flex;flex-direction:column;gap:2px;touch-action:pan-y;overscroll-behavior:contain}.friends-section-label{font-family:var(--font-display);font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;padding:var(--sp-sm) var(--sp-sm) var(--sp-xs)}.friends-online-row{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);border-radius:8px;transition:.15s}.friends-online-row:hover{background:var(--dark-elevated)}.friend-online-indicator{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 6px #22c55e80;flex-shrink:0}.friend-offline-indicator{width:8px;height:8px;border-radius:50%;background:var(--text-muted);opacity:.4;flex-shrink:0}.friends-online-name{flex:1;font-weight:600;font-size:.9rem;color:var(--text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-online-row.offline .friends-online-name{color:var(--text-secondary)}.friends-chat-btn{background:var(--primary-gradient);border:none;border-radius:6px;color:#fff;font-family:Rajdhani,sans-serif;font-size:.8rem;font-weight:600;padding:4px 12px;cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:.15s;flex-shrink:0}.friends-chat-btn:hover{opacity:.9;transform:scale(1.03)}.friend-last-seen{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.friends-online-list::-webkit-scrollbar{width:4px}.friends-online-list::-webkit-scrollbar-track{background:transparent}.friends-online-list::-webkit-scrollbar-thumb{background:rgba(var(--color-accent-rgb),.2);border-radius:2px}.presence-toast-stack{position:fixed;bottom:32px;right:52px;z-index:999;pointer-events:none}.presence-toast{position:relative;display:flex;align-items:center;gap:8px;padding:6px 36px 6px 12px;background:var(--battle-gradient);border:1px solid rgba(255,255,255,.15);border-radius:10px;box-shadow:var(--shadow-md),0 0 12px #0000004d;animation:toastSlideLeft .3s ease;white-space:nowrap;transform-origin:right center;overflow:visible}.presence-toast.disintegrating{animation:contentDissolve .3s ease-out forwards}.presence-toast.disintegrating>*:not(.dismiss-particles){animation:contentDissolve .3s ease-out forwards}.presence-toast.online{border-color:#22c55e40}.presence-toast.offline{border-color:#ffffff26}.presence-toast-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.presence-toast-dot.online{background:#22c55e;box-shadow:0 0 6px #22c55e80}.presence-toast-dot.offline{background:var(--text-muted);opacity:.5}.presence-toast-text{font-family:Rajdhani,sans-serif;font-size:.85rem;font-weight:600;color:var(--text-primary)}@keyframes toastSlideLeft{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@media (max-width: 768px){.chat-window{position:fixed;top:var(--chat-vt, 0px);bottom:auto;left:0;right:0;width:100%;height:var(--chat-vh, 100%);border-radius:0;border:none}.chat-bubble{bottom:16px;right:16px;width:48px;height:48px}.chat-bubble.in-conversation{display:none}.presence-toast-stack{bottom:20px;right:40px}}.action-center-btn{position:fixed;bottom:88px;right:24px;width:48px;height:48px;border-radius:50%;border:2px solid rgba(var(--color-accent-warm-rgb),.5);background:var(--dark-elevated);color:var(--color-accent-warm);cursor:pointer;z-index:1000;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 12px #0006;transition:opacity .3s,border-color .3s}.action-center-btn--inactive{opacity:.2;pointer-events:none;cursor:default}.action-center-btn--active{opacity:1;background:var(--primary-gradient);border:none;color:#fff;box-shadow:var(--shadow-lg),0 0 20px rgba(var(--color-accent-rgb),.3);animation:actionCenterBounce 2s ease-in-out infinite}.action-center-btn--active:hover{box-shadow:var(--shadow-lg),0 0 30px rgba(var(--color-accent-rgb),.5)}.action-center-btn--open{animation:none}.action-center-btn__icon{width:24px;height:24px;fill:currentColor}@keyframes actionCenterBounce{0%,to{transform:translateY(0)}15%{transform:translateY(-10px)}30%{transform:translateY(0)}45%{transform:translateY(-5px)}60%{transform:translateY(0)}}@media (max-width: 768px){.action-center-btn{bottom:80px;right:16px;width:44px;height:44px}.action-center-btn__icon{width:20px;height:20px}}.action-center-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0000004d;opacity:0;transition:opacity .25s ease;pointer-events:none}.action-center-backdrop--visible{opacity:1;pointer-events:auto}.action-center-drawer{position:fixed;right:0;bottom:80px;width:320px;max-height:50vh;z-index:1000;background:var(--dark-surface);border-left:1px solid rgba(var(--color-accent-warm-rgb),.2);border-top:1px solid rgba(var(--color-accent-warm-rgb),.2);border-top-left-radius:16px;border-bottom-left-radius:16px;box-shadow:-4px -2px 20px #00000080;transform:translate(100%);transition:transform .3s ease;display:flex;flex-direction:column;overflow:hidden}.action-center-drawer--open{transform:translate(0)}@media (max-width: 768px){.action-center-drawer{width:80%;max-height:55vh}}.action-center-drawer__header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-md);border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.action-center-drawer__title{font-family:var(--font-display);font-size:.95rem;font-weight:700;color:var(--color-accent-warm);letter-spacing:.04em;margin:0}.action-center-drawer__close{background:none;border:none;cursor:pointer;padding:4px;line-height:1}.action-center-drawer__close:hover{filter:brightness(1.3)}.action-center-drawer__close-icon{width:70px;height:20px;transform:rotate(180deg);display:block}.action-center-drawer__footer{display:flex;justify-content:flex-end;padding:var(--sp-sm) var(--sp-md);border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.action-center-drawer__body{flex:1;overflow-y:auto;padding:var(--sp-sm) var(--sp-md) var(--sp-md)}.action-center-section{margin-bottom:var(--sp-md)}.action-center-section:last-child{margin-bottom:0}.action-center-section__header{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-xs) 0;margin-bottom:var(--sp-xs)}.action-center-section__icon{font-size:1rem;line-height:1}.action-center-section__label{font-family:var(--font-display);font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.action-center-section__count{font-size:.65rem;font-weight:700;background:rgba(var(--color-accent-warm-rgb),.2);color:var(--color-accent-warm);border-radius:8px;padding:1px 6px;min-width:18px;text-align:center}.action-center-entry{display:flex;align-items:center;gap:var(--sp-sm);padding:var(--sp-sm);background:var(--dark-elevated);border-radius:8px;margin-bottom:var(--sp-xs)}.action-center-entry:last-child{margin-bottom:0}.action-center-entry__info{flex:1;min-width:0}.action-center-entry__deck{font-size:.8rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-center-entry__opponent{font-size:.7rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-center-entry__watch{flex-shrink:0;padding:4px 10px;font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-display);border-radius:6px;border:2px solid #4ade80;background:linear-gradient(180deg,#6ee7a0,#22c55e 40%,#16a34a);color:#052e16;cursor:pointer;white-space:nowrap;text-shadow:0 1px 0 rgba(134,239,172,.5)}.action-center-entry__watch:hover{background:linear-gradient(180deg,#86efac,#4ade80 40%,#22c55e);border-color:#86efac}.action-center-entry__watch:active{transform:scale(.96)}.action-center-empty{text-align:center;padding:var(--sp-lg) var(--sp-md);color:var(--text-muted);font-size:.8rem}@font-face{font-family:Bebas Neue;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/BebasNeue-Regular.woff2) format("woff2")}@font-face{font-family:Rajdhani;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Rajdhani-Regular.woff2) format("woff2")}@font-face{font-family:Rajdhani;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/Rajdhani-Medium.woff2) format("woff2")}@font-face{font-family:Rajdhani;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/Rajdhani-SemiBold.woff2) format("woff2")}@font-face{font-family:Rajdhani;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/Rajdhani-Bold.woff2) format("woff2")}:root{--font-display: "Cinzel Decorative", serif;--font-body: "Rajdhani", sans-serif;--color-accent: #4a8db5;--color-accent-rgb: 74, 141, 181;--color-accent-warm: #c9922a;--color-accent-warm-rgb: 201, 146, 42;--primary-gradient: linear-gradient(135deg, #d1d63f 0%, #8b6220 100%);--accent-gradient: linear-gradient(135deg, #d4a853 0%, #c47b2d 100%);--success-gradient: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--warning-gradient: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--confirm-gradient: linear-gradient(135deg, #f59e0b 0%, #f97316 100%);--cancel-gradient: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--battle-gradient: linear-gradient(135deg, #d1d63f 0%, #8b6220 100%);--dark-bg: #0e1015;--dark-surface: #181c24;--dark-elevated: #222830;--text-primary: #ffffff;--text-secondary: #a0aec0;--text-muted: #718096;--common: #94a3b8;--uncommon: #22c55e;--rare: #3b82f6;--epic: #a855f7;--legendary: #f59e0b;--item-common: #999999;--item-magical: #FFD700;--item-mythical: #FF8C00;--sp-xs: .25rem;--sp-sm: .5rem;--sp-md: 1rem;--sp-lg: 1.5rem;--sp-xl: 2rem;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 6px rgba(0,0,0,.4);--shadow-lg: 0 10px 15px rgba(0,0,0,.5);--shadow-glow: 0 0 20px rgba(var(--color-accent-rgb), .5)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent}body{font-family:Rajdhani,sans-serif;background:var(--dark-bg);color:var(--text-primary);overflow-x:hidden;min-height:100vh;padding-top:env(safe-area-inset-top);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left)}a{color:var(--color-accent);text-decoration:none;font-weight:600}a:hover{color:var(--color-accent);text-decoration:underline}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:var(--dark-bg)}.loading-text{color:var(--text-secondary);margin-top:var(--sp-md);font-size:1.125rem}.loading-spinner{width:32px;height:32px;border:3px solid rgba(var(--color-accent-rgb),.3);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite}.loading-spinner.small{width:18px;height:18px;display:inline-block;margin-right:.5rem;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.status-message{position:fixed;bottom:var(--sp-xl);left:50%;transform:translate(-50%);z-index:1000;padding:var(--sp-md) var(--sp-xl);border-radius:12px;text-align:center;font-weight:600;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:.85;min-width:280px;max-width:600px;box-shadow:0 4px 24px #0006;cursor:pointer;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:.85;transform:translate(-50%) translateY(0)}}.status-message.success{background:var(--success-gradient);color:#fff}.status-message.error{background:var(--warning-gradient);color:var(--dark-bg)}.status-message.info{background:var(--dark-elevated);color:var(--text-primary);border:2px solid rgba(var(--color-accent-rgb),.3)}.status-message.battle{background:var(--battle-gradient);color:var(--dark-bg)}.status-message.loading{background:var(--dark-elevated);color:var(--text-secondary)}.status-message.resonance{background:linear-gradient(135deg,#c9922a,#f5c842,#d4a017);color:#1a1000;font-weight:600}.status-message.disintegrating{pointer-events:none;animation:smDissolve .6s ease-out forwards}@keyframes smDissolve{0%{opacity:.85;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%) scale(.75)}}.sm-particles{position:fixed;bottom:var(--sp-xl);left:50%;transform:translate(-50%);width:600px;height:60px;overflow:visible;pointer-events:none;z-index:1001}.sm-particle{position:absolute;border-radius:50%;opacity:0;animation:smParticleFly var(--dur) var(--delay) ease-out forwards;box-shadow:0 0 6px currentColor}@keyframes smParticleFly{0%{opacity:1;transform:translate(0) scale(1)}50%{opacity:.9}to{opacity:0;transform:translate(var(--tx),var(--ty)) scale(0)}}.app-title{font-family:var(--font-display);font-size:3rem;font-weight:400;letter-spacing:2px;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.highlight{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-title{font-family:var(--font-display);font-size:2.5rem;margin-bottom:var(--sp-xl);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.page-divider{display:block;max-width:80%;height:auto;margin:0 auto 8px;opacity:1}.section-heading-img{display:block;max-height:3rem;width:auto;margin-bottom:var(--sp-lg);object-fit:contain;object-position:left center}.dashboard-container{display:grid;grid-template-areas:"topbar" "main" "bottombar";grid-template-columns:1fr;grid-template-rows:60px 1fr 40px;height:100vh;overflow:hidden}.top-bar{grid-area:topbar;background:var(--dark-surface);border-bottom:2px solid rgba(var(--color-accent-rgb),.2);display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-sm);box-shadow:var(--shadow-md);z-index:100;position:relative}.top-bar .app-title{font-size:1.5rem;margin:0}.logo-wrap{position:absolute;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;pointer-events:none}.app-title-logo{display:block;height:36px;width:auto;position:relative;z-index:1}.logo-particles{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.p-ellipse-wrap{position:absolute;top:50%;left:50%;width:0;height:0;transform:scaleY(.22)}.p-orbit{position:absolute;top:0;left:0;width:var(--r, 80px);height:0;transform-origin:left center;animation:p-spin var(--dur, 6s) linear infinite;animation-delay:var(--delay, 0s)}.p-orbit.ccw{animation-direction:reverse}.p-dot{position:absolute;right:0;top:calc(-1 * var(--sz, 3px) / 2);width:var(--sz, 3px);height:var(--sz, 3px);border-radius:50%;background:var(--color, #7EC8E3);box-shadow:0 0 5px 2px color-mix(in srgb,var(--color, #7EC8E3) 55%,transparent);transform:scaleY(4.5);animation:p-twinkle calc(var(--dur, 6s) * .7) ease-in-out infinite alternate;animation-delay:var(--delay, 0s)}@keyframes p-spin{to{transform:rotate(360deg)}}@keyframes p-twinkle{0%{opacity:1}to{opacity:.3}}.nav-left{display:flex;align-items:center;gap:var(--sp-sm);min-height:44px}.nav-right{display:flex;align-items:center;gap:var(--sp-md)}.user-name{font-weight:600;color:var(--text-secondary)}.user-name-btn{background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit;color:inherit;padding:var(--sp-xs) var(--sp-sm);border-radius:6px;transition:background .2s}.user-name-btn:hover{background:rgba(var(--color-accent-rgb),.15)}.menu-toggle{background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:var(--sp-sm)}.menu-toggle img{width:58px;height:58px;object-fit:contain;transition:.3s}.btn-icon{background:none;border:none;cursor:pointer;padding:4px;border-radius:8px;transition:background .2s,box-shadow .2s,color .2s;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.btn-icon:hover{background:var(--dark-surface);color:var(--text-primary);box-shadow:inset 0 0 0 1px #ffffff80}.btn-home:hover{background:none;border:none;color:var(--text-secondary)}.btn-icon img{width:40px;height:40px}.side-menu{position:fixed;top:60px;left:0;bottom:40px;width:240px;z-index:99;background:#181c24d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-right:2px solid rgba(var(--color-accent-rgb),.2);box-shadow:var(--shadow-lg);padding:var(--sp-lg) 0;overflow-y:auto;transform:translate(0);transition:transform .3s ease;display:flex;flex-direction:column}.side-menu .menu-items{flex:1}.side-menu-footer{padding:0 var(--sp-sm);margin-top:auto;border-top:1px solid rgba(var(--color-accent-rgb),.15);display:flex;justify-content:center}.side-menu-footer .bug-report-btn{font-size:1rem;font-family:Rajdhani,sans-serif;opacity:.5;gap:.3rem;padding:.25rem .5rem;min-height:unset}.side-menu-footer .bug-report-btn:hover{opacity:.85}.side-menu.collapsed{transform:translate(-100%)}.user-panel{position:fixed;top:60px;right:0;width:240px;height:calc(100dvh - 60px);z-index:99;background:#181c24d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-left:2px solid rgba(var(--color-accent-rgb),.2);box-shadow:var(--shadow-lg);padding:0 0 var(--sp-lg);display:flex;flex-direction:column;transform:translate(0);transition:transform .3s ease}.user-panel.collapsed{transform:translate(100%)}.user-panel-logout{color:var(--color-danger, #e05c5c)!important}.user-panel-actions{margin-top:auto}.user-panel-identity{padding:var(--sp-md) var(--sp-lg) var(--sp-sm);border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:var(--sp-sm)}.user-panel-username{font-size:.9rem;font-weight:600;color:var(--text-primary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-panel-character{margin:0 var(--sp-sm) var(--sp-sm);background:#d4a8430f;border:1px solid rgba(212,168,67,.15);border-radius:8px;padding:var(--sp-sm) var(--sp-md);cursor:pointer;transition:background .2s}.user-panel-character:hover{background:#d4a8431f}.user-panel-character-header{font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent-warm, #c9922a);display:flex;align-items:center;gap:8px;font-weight:600}.user-panel-character-info{display:flex;align-items:center;gap:8px;margin-top:4px;padding-left:32px}.user-panel-character-stat{font-family:var(--font-display);font-size:.85rem;color:var(--text-secondary)}.user-panel-character-badge{background:#ef4444;color:#fff;font-size:.6rem;font-weight:700;padding:1px 6px;border-radius:8px}.user-panel-character-xp{flex:1;min-width:0}.user-panel-character-xp-track{width:100%;height:4px;background:#ffffff0f;border-radius:2px;overflow:hidden}.user-panel-character-xp-fill{height:100%;background:linear-gradient(135deg,#2a8a78,#3bb5a0);border-radius:2px;transition:width .5s ease}.user-panel-character-xp-text{display:block;font-size:.6rem;color:#3bb5a080;margin-top:2px;text-align:center}.user-panel-passive-xp{display:flex;justify-content:space-between;align-items:center;padding:4px 0;margin-top:4px;border-top:1px solid rgba(255,255,255,.05);font-size:.65rem}.user-panel-passive-xp-label{color:#a78bfa99}.user-panel-passive-xp-value{color:#a78bfacc;font-weight:600}.user-panel-wallet{margin:0 var(--sp-sm) var(--sp-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:var(--sp-sm) var(--sp-md)}.user-panel-wallet-header{font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--sp-xs);display:flex;align-items:center;gap:8px}.wallet-row{display:flex;align-items:center;gap:6px;padding:3px 0}.wallet-label{font-size:.8rem;color:var(--text-secondary);flex:1}.wallet-value{font-size:.9rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.user-panel-friends{margin:0 var(--sp-sm) var(--sp-md);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:var(--sp-sm) var(--sp-md);max-height:200px;overflow-y:auto}.user-panel-friends-header{font-size:.9rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--sp-xs);display:flex;align-items:center;gap:8px}.user-panel-friends-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:4px 0 2px}.user-panel-friend-row{display:flex;align-items:center;gap:8px;padding:3px 0}.user-panel-friend-row.offline{opacity:.5}.user-panel-friend-name{font-size:.8rem;color:var(--text-secondary)}.user-panel-friends-empty{font-size:.8rem;color:var(--text-muted);padding:4px 0}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:98}.menu-items{list-style:none;display:flex;flex-direction:column;gap:var(--sp-xs)}.menu-item{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-sm) var(--sp-lg);background:none;border:none;border-left:4px solid transparent;color:var(--text-secondary);font-family:var(--font-display);font-size:1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:.3s;width:100%;text-align:left}.menu-item:hover{background:rgba(var(--color-accent-rgb),.1);color:var(--text-primary)}.menu-item.active{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:menu-pulse-gold 2.5s ease-in-out infinite}@keyframes menu-pulse-gold{0%,to{filter:brightness(1)}50%{filter:brightness(1.6)}}.menu-icon{width:40px;height:40px;flex-shrink:0}.main-area{grid-area:main;background:var(--dark-bg);overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;padding:var(--sp-xl);display:flex;flex-direction:column}.main-area:has(.dashboard-page){padding:0}.content-area{max-width:1200px;margin:0 auto;width:100%;flex:1;display:flex;flex-direction:column}.bottom-bar{grid-area:bottombar;background:var(--dark-surface);border-top:2px solid rgba(var(--color-accent-rgb),.2);display:flex;align-items:center;justify-content:center;padding:0 var(--sp-lg);padding-bottom:env(safe-area-inset-bottom);font-size:.75rem;color:var(--text-muted)}.create-cards-bg-video{display:none}@media (max-width: 768px){.create-cards-bg-video{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:cover;z-index:-1;pointer-events:none;transition:opacity .3s ease}.dashboard-container.page-bg-create-cards .main-area{background:transparent;position:relative;z-index:1}.dashboard-container.page-bg-create-cards .action-card{background:#181c2480}.dashboard-container.page-bg-create-cards .top-bar{background:#181c2480;box-shadow:none}.dashboard-container.page-bg-create-cards .bottom-bar{background:#181c2480;position:relative;z-index:1}.dashboard-container.page-bg-create-cards .char-section,.dashboard-container.page-bg-create-cards .char-section-highlight,.dashboard-container.page-bg-create-cards .char-tabs{background:#181c2480}}.play-game-bg-video{display:none}@media (max-width: 768px){.play-game-bg-video{display:block;position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:cover;z-index:-1;pointer-events:none;transition:opacity .3s ease}.dashboard-container.page-bg-play-game .main-area{background:transparent;position:relative;z-index:1}.dashboard-container.page-bg-play-game .top-bar{background:#181c2480;box-shadow:none}.dashboard-container.page-bg-play-game .bottom-bar{background:#181c2480;position:relative;z-index:1}.dashboard-container.page-bg-play-game .game-mode-select,.dashboard-container.page-bg-play-game .game-setup{background:transparent}.dashboard-container.page-bg-play-game .game-setup__section,.dashboard-container.page-bg-play-game .game-setup__actions{background:#181c24bf;border-radius:12px;padding:12px}.dashboard-container.page-bg-play-game .active-challenges__header{background:#181c24b3;border-radius:8px;padding:8px 12px}.dashboard-container.page-bg-play-game .game-setup__section .active-challenges__header{background:transparent;justify-content:center;padding:8px 0}.dashboard-container.page-bg-play-game .active-challenge__card{background:#181c24b3}}.dashboard-container.page-bg-lorebook:before{content:"";position:fixed;top:0;left:0;width:100vw;height:100vh;background:url(/images/pages/bg_lorebook.webp) top center / cover no-repeat;z-index:-1;pointer-events:none}.dashboard-container.page-bg-lorebook .main-area{background:transparent;position:relative;z-index:1}.dashboard-container.page-bg-lorebook .top-bar{background:#181c2480;box-shadow:none}.dashboard-container.page-bg-lorebook .bottom-bar{background:#181c2480;position:relative;z-index:1}.bg-particles{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden}.bg-particle{position:absolute;left:var(--px);top:var(--py);width:var(--sz);height:var(--sz);border-radius:50%;background:var(--color);box-shadow:0 0 6px var(--color),0 0 14px var(--color);animation:bgParticleDrift var(--life) ease-in-out forwards}@keyframes bgParticleDrift{0%{opacity:0;transform:translate(0)}15%{opacity:.6}85%{opacity:.6}to{opacity:0;transform:translate(var(--dx),var(--dy))}}@media (max-width: 768px){.top-bar .app-title{font-size:1.25rem}.app-title-logo{height:32px}.main-area{padding:var(--sp-sm)}}.audio-toggle-row{display:flex;align-items:center;gap:.6rem;cursor:pointer;font-size:.9rem;color:var(--text-primary);margin-bottom:var(--sp-sm)}.audio-toggle-row input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--color-accent-warm);cursor:pointer}.audio-volume-row{display:flex;align-items:center;gap:.6rem;font-size:.875rem}.audio-volume-label{color:var(--text-secondary);min-width:3rem}.audio-volume-pct{color:var(--text-secondary);min-width:2.5rem;text-align:right}.audio-slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;border-radius:2px;background:var(--dark-elevated);outline:none;cursor:pointer}.audio-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--color-accent-warm);cursor:pointer}.audio-slider::-moz-range-thumb{width:16px;height:16px;border:none;border-radius:50%;background:var(--color-accent-warm);cursor:pointer}.audio-slider:disabled{opacity:.4;cursor:not-allowed}.audio-slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.audio-slider:disabled::-moz-range-thumb{cursor:not-allowed}.btn{padding:.875rem var(--sp-lg);border:none;border-radius:12px;font-family:Rajdhani,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:.3s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-sm);text-transform:uppercase;letter-spacing:.5px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--dark-elevated);color:var(--text-primary);border:2px solid rgba(var(--color-accent-rgb),.3)}.btn-secondary:hover:not(:disabled){border-color:rgba(var(--color-accent-rgb),.6);transform:translateY(-2px)}.btn-secondary-sort{justify-content:left;width:100px;background:none;color:var(--text-primary)}.btn-google{background:#fff;color:#1a1f3a;box-shadow:var(--shadow-md)}.btn-google:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-icon-svg{width:20px;height:20px}.btn-confirm{background:var(--confirm-gradient);color:#fff;box-shadow:var(--shadow-md);animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.btn-cancel{background:var(--cancel-gradient);color:#fff;box-shadow:var(--shadow-md);padding:.875rem var(--sp-lg);border:none;border-radius:12px;font-family:Rajdhani,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:.3s;text-transform:uppercase;letter-spacing:.5px;margin-right:var(--sp-sm)}.btn-cancel:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.button-group,.confirm-btn-group{display:flex;align-items:center;gap:var(--sp-sm);flex-wrap:wrap}.auth-form{display:flex;flex-direction:column;gap:var(--sp-md)}.form-group{display:flex;flex-direction:column;gap:var(--sp-xs)}.form-group label{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.form-group input{padding:.875rem var(--sp-md);background:var(--dark-elevated);border:2px solid transparent;border-radius:8px;color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:1rem;transition:.3s}.form-group input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(var(--color-accent-rgb),.2)}.form-control{width:100%;padding:var(--sp-md);background:var(--dark-elevated);border:2px solid rgba(var(--color-accent-rgb),.3);border-radius:8px;color:var(--text-primary);font-family:Rajdhani,sans-serif;font-size:1rem;margin-bottom:var(--sp-lg)}.form-control:focus{outline:none;border-color:var(--color-accent)}.divider{display:flex;align-items:center;color:var(--text-muted);margin:var(--sp-md) 0}.divider:before,.divider:after{content:"";flex:1;border-bottom:1px solid rgba(255,255,255,.1)}.divider span{padding:0 var(--sp-md);font-size:.875rem}.toggle-auth{text-align:center;margin-top:var(--sp-md);color:var(--text-secondary);font-size:.875rem}.error-message{background:var(--warning-gradient);color:var(--dark-bg);padding:var(--sp-md);border-radius:8px;margin-top:var(--sp-md);font-weight:600;text-align:center}.stats-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-md);margin-bottom:var(--sp-xl)}.stat-box{position:relative;overflow:hidden;background:var(--dark-surface);padding:var(--sp-lg);border-radius:12px;text-align:center;box-shadow:var(--shadow-md);border:2px solid rgba(var(--color-accent-rgb),.2)}.stat-box:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:0;pointer-events:none;transition:opacity .3s}.stat-box.stat-total-cards:before{background-image:url(/images/stat-total-cards-bg.jpg);opacity:.2}.stat-box.stat-claim-cards:before{background-image:url(/images/stat-claim-cards-bg.jpg);opacity:.2}.stat-box.stat-shards:before{background-image:url(/images/stat-shards-bg.jpg);opacity:.2}.stat-box.has-icon{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center}.stat-box.has-icon .stat-label,.stat-box.has-icon .stat-value{grid-column:1}.stat-box.has-icon .stat-icon-right{position:relative;grid-column:2;grid-row:1 / -1;animation:shard-sparkle 3s ease-in-out infinite}.stat-box .stat-icon-right svg{height:48px;width:48px;display:block}@keyframes shard-sparkle{0%,to{filter:brightness(1) drop-shadow(0 0 2px rgba(139,92,246,.3))}50%{filter:brightness(1.3) drop-shadow(0 0 8px rgba(139,92,246,.6)) drop-shadow(0 0 16px rgba(34,211,238,.3))}}.stat-box .stat-label{position:relative;font-size:.875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--sp-sm)}.stat-box .stat-value{position:relative;font-family:var(--font-display);font-size:2.5rem;color:var(--text-primary)}.stat-box .highlight-stat{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-box.clickable{cursor:pointer;transition:border-color .2s,box-shadow .2s}.stat-box.clickable:hover{border-color:#8b5cf680;box-shadow:0 0 12px #8b5cf64d}.stat-box.status-connected{border-color:#22c55e80;background:#22c55e0d}.stat-box.status-disconnected{border-color:#ef444480;background:#ef44440d}@media (max-width: 768px){.stats-panel{grid-template-columns:repeat(3,1fr);gap:var(--sp-xs);margin-bottom:var(--sp-md)}.stat-box{padding:var(--sp-xs);border-radius:8px;height:60px;display:flex;flex-direction:column-reverse;align-items:center;justify-content:center}.stat-box.has-icon{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;padding:var(--sp-xs);height:60px;align-items:center}.stat-box.has-icon .stat-value{grid-row:1}.stat-box.has-icon .stat-label{grid-row:2}.stat-box.has-icon .stat-icon-right{opacity:1;animation:shard-sparkle 3s ease-in-out infinite}.stat-box.has-icon .stat-icon-right svg{height:28px;width:28px}.stat-box .stat-label{font-size:.66rem;margin-bottom:0;margin-top:2px;letter-spacing:0}.stat-box .stat-value{font-size:1.5rem}}.action-section{margin-bottom:var(--sp-xl)}.action-section h3,.section-heading{font-family:var(--font-display);font-size:1.75rem;font-weight:400;margin-bottom:var(--sp-md);text-align:center;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section-divider{display:block;margin:0 auto;max-width:80%;height:auto;opacity:.85}.icon-gold-glow{animation:iconGoldPulse 4s ease-in-out infinite}@keyframes iconGoldPulse{0%,to{filter:drop-shadow(0 0 4px rgba(255,200,80,.4)) drop-shadow(0 0 10px rgba(255,180,40,.15))}50%{filter:drop-shadow(0 0 8px rgba(255,200,80,.6)) drop-shadow(0 0 18px rgba(255,180,40,.35))}}.action-card{background:var(--dark-surface);border-radius:16px;padding:var(--sp-lg);margin-bottom:var(--sp-sm);display:flex;gap:var(--sp-md);align-items:center;box-shadow:var(--shadow-md);border:2px solid rgba(var(--color-accent-rgb),.2);transition:.3s}.action-card:hover:not(.disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:rgba(var(--color-accent-rgb),.5)}.action-card.disabled{opacity:.5;cursor:not-allowed}.tag-coming-soon{display:inline-block;margin-left:.5rem;padding:2px 8px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#facc15;border:1px solid rgba(250,204,21,.4);border-radius:4px;vertical-align:middle}.action-icon{font-size:3rem;min-width:60px;text-align:center}.action-content{flex:1}.action-content h4{font-family:var(--font-display);font-size:1.5rem;margin-bottom:4px;color:var(--text-primary)}.action-content p{color:var(--text-secondary);margin-bottom:var(--sp-sm);line-height:1.6}.feature-list{list-style:none;padding:0;margin-bottom:var(--sp-md)}.feature-list li{color:var(--text-secondary);padding:var(--sp-xs) 0;line-height:1.6}.quota-message{color:var(--text-muted);font-style:italic}.info-btn{position:absolute;top:var(--sp-sm);right:var(--sp-sm);z-index:2;width:28px;height:28px;border-radius:50%;border:1px solid rgba(var(--color-accent-warm-rgb),.3);background:#0a0e27b3;color:var(--color-accent-warm);font-size:.8rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,color .2s}.info-btn:hover{background:#0a0e27e6;border-color:var(--color-accent-warm);color:var(--text-primary)}.info-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#000000b3;display:flex;align-items:center;justify-content:center;animation:info-fade-in .2s ease}.info-overlay-panel{position:relative;width:90%;max-width:480px;background:var(--dark-surface);border:1px solid rgba(var(--color-accent-warm-rgb),.25);border-radius:16px;padding:var(--sp-xl) var(--sp-lg);box-shadow:0 16px 48px #0009;animation:info-panel-in .25s ease}.info-overlay-close{position:absolute;top:var(--sp-sm);right:var(--sp-sm);width:32px;height:32px;border:none;background:#ffffff0f;border-radius:50%;color:var(--text-secondary);font-size:1.3rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.info-overlay-close:hover{background:#ffffff1f;color:var(--text-primary)}.info-overlay-title{margin:0 0 var(--sp-md);font-size:1.4rem;color:var(--color-accent-warm)}.info-overlay-text{margin:0;font-size:.95rem;color:var(--text-secondary);line-height:1.6}@keyframes info-fade-in{0%{opacity:0}to{opacity:1}}@keyframes info-panel-in{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.achievements-card{flex-direction:column;align-items:stretch}.achievements-list{display:flex;flex-direction:column;gap:var(--sp-sm)}.achievement-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:var(--sp-xs) var(--sp-md);padding:var(--sp-sm) 0;align-items:center;border-bottom:1px solid rgba(255,255,255,.06)}.achievement-row:last-child{border-bottom:none}.achievement-info{display:flex;align-items:center;gap:var(--sp-sm);grid-column:1;grid-row:1}.achievement-icon{font-size:1.3rem;min-width:28px;text-align:center;display:flex;align-items:center;justify-content:center}.achievement-icon img{width:32px;height:32px;object-fit:contain}.achievement-text{display:flex;flex-direction:column}.achievement-label{font-weight:600;color:var(--text-primary);font-size:.9rem}.achievement-desc{font-size:.75rem;color:var(--text-muted)}.achievement-progress-area{display:flex;align-items:center;gap:var(--sp-sm);grid-column:1;grid-row:2}.achievement-progress-bar{flex:1;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.achievement-progress-fill{height:100%;border-radius:4px;transition:width .4s ease;background:linear-gradient(90deg,var(--color-accent),#eab308)}.achievement-progress-text{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.achievement-locked{font-size:.75rem;color:var(--text-dim);grid-column:2;grid-row:1 / 3;align-self:center;text-align:center;min-width:70px}.achievement-row .btn-claim{grid-column:2;grid-row:1 / 3;align-self:center}.achievement-error{color:var(--color-error, #f87171);font-size:.85rem;margin-top:var(--sp-sm)}.btn-claim{background:linear-gradient(180deg,#ffd86b,#d4a020 40%,#b8860b);color:#1a1203;font-weight:800;text-transform:uppercase;letter-spacing:.08em;border:3px solid #ffd700;outline:2px solid rgba(255,200,80,.3);outline-offset:2px;text-shadow:0 1px 0 rgba(255,220,120,.5);position:relative;z-index:2;overflow:hidden;border-radius:12px;box-shadow:0 0 14px #ffc85073,0 0 30px #ffb42840}.btn-claim:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(ellipse at 50% 30%,rgba(255,255,255,.45),transparent 65%);pointer-events:none}.btn-claim:after{content:"";position:absolute;top:0;left:-100%;width:60%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.4) 50%,transparent 70%);animation:ach-shimmer 2.5s ease-in-out infinite;pointer-events:none}.btn-claim:hover:not(:disabled){background:linear-gradient(180deg,#ffe08a,#e8b84b 40%,#c9922a);border-color:#ffe066}.btn-claim:active:not(:disabled){transform:scale(.96);filter:brightness(1.15)}@keyframes ach-shimmer{0%{left:-100%}60%{left:150%}to{left:150%}}.reward-modal{position:relative;border-radius:20px;overflow:hidden;padding:var(--sp-lg);width:310px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--sp-sm);border:2px solid rgba(201,146,42,.5);box-shadow:0 0 60px #c9922a33;animation:rewardFadeIn .3s ease;background:var(--dark-surface, #1a1a2e)}.reward-modal-video{width:160px;height:160px;object-fit:cover;border-radius:12px;pointer-events:none;flex-shrink:0}@keyframes rewardFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.reward-lootbox,.reward-reveal{display:flex;flex-direction:column;align-items:center}.reward-lootbox h3,.reward-reveal h3{font-family:var(--font-display);font-size:1.4rem;margin:0;color:#e8b84b;text-shadow:0 0 20px rgba(201,146,42,.5)}.reward-lootbox p{color:var(--text-secondary);margin:var(--sp-xs) 0 var(--sp-sm);font-size:.85rem}.reward-lootbox .btn-claim{font-size:1rem;padding:.5rem 1.8rem}.reward-opening p{color:#e8b84b;font-size:.9rem;animation:rewardPulse 1s ease-in-out infinite}@keyframes rewardPulse{0%,to{opacity:.5}50%{opacity:1}}.reward-reveal{animation:rewardReveal .5s ease}@keyframes rewardReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.reward-items{display:flex;flex-direction:column;gap:var(--sp-md);margin:var(--sp-lg) 0}.reward-item{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-md);background:#ffffff0a;border-radius:12px;border:1px solid rgba(255,255,255,.08);animation:rewardItemSlide .4s ease both}.reward-item:nth-child(2){animation-delay:.15s}.reward-item:nth-child(3){animation-delay:.3s}@keyframes rewardItemSlide{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.reward-item-icon{font-size:2rem;min-width:40px;text-align:center;display:flex;align-items:center;justify-content:center}.reward-item-img{width:40px;height:40px;border-radius:6px;object-fit:cover;border:1px solid rgba(250,204,21,.3)}.reward-item-details{display:flex;flex-direction:column;text-align:left}.reward-item-amount{font-weight:700;font-size:1.2rem;color:var(--text-primary)}.reward-item-label{font-size:.8rem;color:var(--text-muted)}.reward-shards .reward-item-amount{color:#22d3ee}.reward-echoes .reward-item-amount{color:#a78bfa}.reward-bonus-item{border-color:#facc154d;background:#facc150d}.reward-bonus-item .reward-item-amount{color:#facc15}.welcome-message{text-align:center;padding:calc(var(--sp-xl) * 2 - 40px) var(--sp-xl) calc(var(--sp-xl) * 2)}.welcome-message h2{font-family:var(--font-display);font-size:2.5rem;margin-bottom:var(--sp-lg);background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:400}.welcome-hero-img{width:300px;height:300px;object-fit:cover;border-radius:20px;margin-bottom:var(--sp-lg)}.welcome-message p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:calc(var(--sp-xl) * 1.5)}.getting-started{position:fixed;bottom:var(--sp-xl);left:50%;transform:translate(-50%);z-index:100;background:#ffffff0d;border-radius:16px;padding:var(--sp-lg);border:2px solid rgba(0,0,0,.85);text-align:left;width:300px;max-width:300px}.getting-started h3{font-family:var(--font-display);font-size:1.75rem;margin-bottom:var(--sp-md);color:var(--color-accent)}.getting-started ol{list-style-position:inside;font-size:1.125rem;line-height:2;color:var(--text-secondary)}.getting-started-dismiss{display:flex;align-items:center;gap:var(--sp-xs);justify-content:flex-end;margin-top:var(--sp-md);font-size:.875rem;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.getting-started-dismiss input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-accent)}@media (max-width: 768px){.welcome-message{padding:var(--sp-md) var(--sp-sm) var(--sp-lg)}.welcome-message h2{font-size:1.75rem;margin-bottom:var(--sp-sm)}.welcome-message p{font-size:1.1rem;margin-bottom:var(--sp-md)}.dashboard-tagline{font-size:1.75rem}.getting-started{bottom:80px;left:50%;transform:translate(-50%);padding:var(--sp-md);max-width:300px}.getting-started h3{font-size:1.4rem;margin-bottom:var(--sp-sm)}.getting-started ol{font-size:.95rem;line-height:1.8}}.dashboard-welcome{padding:var(--sp-xl) 0 var(--sp-lg)}.dashboard-welcome-text{margin-bottom:var(--sp-sm);width:100%}.dashboard-greeting{font-family:var(--font-display);font-size:2.5rem;line-height:1.1;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:400;margin-bottom:var(--sp-sm)}.dashboard-tagline{font-family:var(--font-display);font-size:2.5rem;font-style:normal;line-height:1.1;color:#c8c8d273;margin:0;text-align:center;width:100%}.dashboard-hero-wrap{position:relative;display:flex;flex-direction:column;align-items:flex-start;overflow:visible;isolation:isolate}.dashboard-hero-img{position:relative;width:100%;height:auto;display:block;z-index:1}.dashboard-hero-wrap:before,.dashboard-hero-wrap:after{content:"";position:absolute;pointer-events:none;z-index:0;top:-18%;right:-18%;bottom:-18%;left:-18%;filter:blur(48px);transform-origin:center center;will-change:opacity,transform}.dashboard-hero-wrap:before{background:radial-gradient(ellipse 70% 65% at 68% 62%,rgba(255,170,50,.95) 0%,rgba(230,110,25,.85) 30%,rgba(200,75,15,.55) 55%,transparent 75%);animation:eldreach-aura-pulse 5s ease-in-out infinite}.dashboard-hero-wrap:after{background:radial-gradient(ellipse 70% 65% at 32% 38%,rgba(126,200,227,.95) 0%,rgba(74,175,212,.85) 28%,rgba(139,91,174,.6) 52%,transparent 74%);animation:eldreach-aura-pulse 5s ease-in-out infinite}@keyframes eldreach-aura-pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.dashboard-stats-bar{display:flex;align-items:center;gap:var(--sp-sm);background:var(--dark-surface);border-radius:12px;padding:var(--sp-sm) var(--sp-lg);border:1px solid rgba(var(--color-accent-rgb),.2);box-shadow:var(--shadow-sm);align-self:center}.dashboard-stat{font-size:1rem;color:var(--text-secondary)}.dashboard-stat strong{font-family:var(--font-display);font-size:1.4rem;color:var(--text-primary);margin-right:4px}.dashboard-stat em{font-style:normal;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.dashboard-stat-sep{color:var(--text-muted);font-size:1.2rem}.dashboard-lore-section{margin-bottom:var(--sp-xl)}.dashboard-lore-header{display:flex;align-items:baseline;justify-content:space-between}.btn-lore-link{background:none;border:none;cursor:pointer;color:var(--color-accent);font-family:Rajdhani,sans-serif;font-size:.95rem;font-weight:600;padding:0;letter-spacing:.3px;transition:color .2s}.btn-lore-link:hover{color:#a8edff}.lore-preview-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-md)}.lore-preview-card{background:var(--dark-surface);border-radius:12px;padding:var(--sp-lg);border:1px solid rgba(var(--color-accent-rgb),.2);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;flex-direction:column;gap:var(--sp-xs)}.lore-preview-card:hover{transform:translateY(-3px);border-color:#4facfe66;box-shadow:0 6px 20px #4facfe26}.lore-preview-card h4{font-family:var(--font-display);font-size:1.25rem;color:var(--text-primary);margin:0;line-height:1.2}.lore-preview-card p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.lore-era-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:.7rem;font-weight:700;text-transform:capitalize;letter-spacing:.5px;background:rgba(var(--color-accent-rgb),.15);color:var(--color-accent);border:1px solid rgba(var(--color-accent-rgb),.3);align-self:flex-start}.dashboard-page{display:flex;flex-direction:column;height:calc(100dvh - 100px - 4rem);overflow:hidden}.dashboard-news-section{position:fixed;bottom:var(--sp-xl);left:50%;transform:translate(-50%);z-index:50;background:#ffffff0d;border-radius:16px;padding:8px;border:2px solid rgba(0,0,0,.85);width:300px;max-width:300px}.dashboard-news-title{margin-bottom:var(--sp-md);text-align:left}.dashboard-news-title h4{font-family:var(--font-display);font-size:1.75rem;color:var(--color-accent);margin:0}.dashboard-news-card{background:var(--dark-surface);border-radius:10px;padding:5px;border:1px solid rgba(250,204,21,.2);cursor:pointer;display:flex;flex-direction:column;gap:var(--sp-xs);transition:border-color .2s,box-shadow .2s}.dashboard-news-card:hover{border-color:#facc1580;box-shadow:0 4px 16px #facc151a}.dashboard-news-card h4{font-family:var(--font-display);font-size:1.1rem;color:var(--text-primary);margin:0;line-height:1.2}.dashboard-news-card p{font-size:.8rem;color:var(--text-secondary);line-height:1.5;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media (max-width: 768px){.dashboard-page{height:calc(100dvh - 100px - 1rem)}.dashboard-welcome{flex-direction:column;padding:var(--sp-md) 0 var(--sp-sm)}.dashboard-greeting{font-size:1.75rem}.dashboard-stats-bar{align-self:flex-start}.lore-preview-row{grid-template-columns:1fr}.dashboard-news-section{bottom:130px;left:var(--sp-sm);right:var(--sp-sm);transform:none;width:auto;max-width:none}}.empty-state{text-align:center;padding:calc(var(--sp-xl) * 2)}.empty-icon{font-size:5rem;margin-bottom:var(--sp-lg)}.empty-state h3{font-family:var(--font-display);font-size:2rem;margin-bottom:var(--sp-md)}.empty-state p{color:var(--text-secondary);margin-bottom:var(--sp-xl)}.empty-message{color:var(--text-muted);text-align:center;padding:var(--sp-xl);font-style:italic}.backend-gap-note{margin-top:var(--sp-md);padding:var(--sp-md);background:var(--dark-elevated);border-radius:8px;font-size:.875rem;color:var(--text-muted)}.backend-gap-note code{color:#f59e0b}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{position:relative;background:var(--dark-surface);padding:var(--sp-xl);border-radius:16px;min-width:400px;box-shadow:var(--shadow-lg)}.modal-wide{width:560px}.modal-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:none;border:2px solid var(--color-accent-warm);cursor:pointer;color:var(--color-accent-warm);font-size:1.35rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .2s,color .2s}.modal-close:hover{background:rgba(var(--color-accent-warm-rgb),.15);color:#fff}.modal-content h3{font-family:var(--font-display);font-size:1.75rem;margin-bottom:var(--sp-md);color:var(--color-accent)}.modal-content .auth-form{gap:var(--sp-sm)}.modal-content .form-group{gap:2px}.modal-content .form-group label{font-size:.75rem}.modal-content .form-group input{padding:.5rem var(--sp-md)}.modal-content .btn{padding:.5rem var(--sp-lg)}.modal-actions{display:flex;gap:var(--sp-md)}.shard-modal{position:relative;width:300px;height:500px;border-radius:16px;overflow:hidden;background:url(/images/shard_background.jpg) top center / 100% auto no-repeat,var(--dark-surface);box-shadow:0 0 40px #8b5cf666,var(--shadow-lg);padding:var(--sp-xl);display:flex;flex-direction:column;justify-content:flex-end}.shard-modal-text{color:var(--text-muted);font-size:.9rem;text-align:center;font-style:italic;line-height:1.4}@media (max-width: 968px){.modal-content{min-width:auto;margin:var(--sp-md)}}.patch-notes-splash.modal-content{max-width:540px;max-height:80vh;display:flex;flex-direction:column}.patch-notes-splash .modal-close{display:none}.patch-notes-splash .patch-notes-body{overflow-y:auto;padding-right:var(--sp-sm);margin-bottom:var(--sp-md)}.patch-notes-splash .patch-notes-entry{margin-bottom:var(--sp-md)}.patch-notes-splash .patch-notes-entry-title{font-family:var(--font-display);color:var(--color-accent);margin:0 0 var(--sp-sm)}.patch-notes-splash .patch-notes-summary{font-size:.95rem;color:var(--text-secondary);margin:0 0 var(--sp-md)}.patch-notes-splash .patch-notes-section{margin-bottom:var(--sp-md)}.patch-notes-splash .patch-notes-section h5{font-size:.9rem;color:var(--color-accent-warm);text-transform:uppercase;letter-spacing:.05em;margin:0 0 4px}.patch-notes-splash .patch-notes-section p{font-size:.9rem;line-height:1.45;color:var(--text-primary);margin:0}.patch-notes-splash .patch-notes-actions{display:flex;justify-content:flex-end;padding-top:var(--sp-sm);border-top:1px solid rgba(255,255,255,.08)}.patch-notes-splash .patch-notes-actions .btn{min-height:44px;min-width:120px}.modal-settings h3{color:var(--color-accent-warm)}.modal-settings{min-height:85vh;width:95vw;display:flex;flex-direction:column}.modal-settings>.settings-tabs{flex-shrink:0}.modal-settings>.settings-tab-content{flex:1}.settings-tabs{display:flex;gap:2px;background:var(--dark-bg);border-radius:10px;padding:3px;margin-bottom:var(--sp-md)}.settings-tab{flex:1;padding:.45rem .5rem;background:none;border:none;cursor:pointer;border-radius:8px;color:var(--text-muted);font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase;transition:background .15s,color .15s;white-space:nowrap}.settings-tab.active{background:var(--dark-elevated);color:var(--color-accent-warm)}.settings-tab:hover:not(.active){color:var(--text-primary)}.settings-tab-content{min-height:160px}
