.game-app-body{background:#030006;color:#fff;overscroll-behavior:none}.game-app-frame{position:relative;overflow:hidden}.cultivation-game{--fx-gold:#ffd977;--fx-cyan:#78f4ff;--fx-purple:#b36cff;--fx-red:#ff5c7d;--fx-green:#88ffca;--fx-ink:#07000d}.cultivation-game:before{content:"";position:fixed;inset:-10%;z-index:-2;background:radial-gradient(circle at 18% 18%,rgba(137,72,255,.24),transparent 32%),radial-gradient(circle at 80% 12%,rgba(255,204,94,.13),transparent 34%),radial-gradient(circle at 55% 86%,rgba(0,216,255,.12),transparent 32%),linear-gradient(135deg,#040006,#0a0213 45%,#020107);animation:gameNebulaDrift 18s ease-in-out infinite alternate}.cultivation-game:after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle,rgba(255,242,177,.28) 0 1px,transparent 1.6px),radial-gradient(circle,rgba(134,226,255,.18) 0 1px,transparent 1.8px);background-size:92px 92px,134px 134px;background-position:0 0,40px 80px;opacity:.28;animation:gameStarDrift 26s linear infinite}.game-bg-layer{animation:gameBgBreath 16s ease-in-out infinite alternate;transform-origin:center}.game-orb{filter:blur(1px);animation:gameOrbFloat 9s ease-in-out infinite}.game-orb--two{animation-duration:12s;animation-direction:alternate-reverse}.game-hero-head,.game-side,.game-main,.game-log-panel{backdrop-filter:blur(18px) saturate(130%)}.game-title-mark img{animation:gameSealPulse 4.8s ease-in-out infinite}.game-player-mini .game-avatar,.game-avatar{position:relative;box-shadow:0 0 0 1px rgba(255,215,122,.28),0 0 26px rgba(125,66,255,.36)}.game-avatar:after{content:"";position:absolute;inset:-8px;border-radius:inherit;border:1px solid rgba(255,224,133,.35);opacity:.65;animation:gameRuneSpin 8s linear infinite}.game-nav button,.action-card,.feature-orb,.game-primary,.game-secondary,.shop-card,.item-cell,.beast-card,.alchemy-card,.forge-card,.achievement-card,.sect-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,filter .22s ease}.game-nav button:hover,.action-card:hover,.feature-orb:hover,.game-primary:hover,.game-secondary:hover,.shop-card:hover,.item-cell:hover,.beast-card:hover,.alchemy-card:hover,.forge-card:hover,.achievement-card:hover,.sect-card:hover{transform:translateY(-3px);filter:saturate(1.08)}.game-nav button:active,.action-card:active,.feature-orb:active,.game-primary:active,.game-secondary:active{transform:translateY(0) scale(.98)}.game-nav button.is-active{box-shadow:inset 0 0 24px rgba(255,214,105,.14),0 0 28px rgba(157,86,255,.28)}.game-nav button.is-active:after,.action-card:after,.feature-orb:after,.shop-card:after,.item-cell:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 0 35%,rgba(255,244,190,.24) 45%,transparent 58%);transform:translateX(-120%);opacity:0}.game-nav button,.action-card,.feature-orb,.shop-card,.item-cell{position:relative;overflow:hidden}.game-nav button:hover:after,.action-card:hover:after,.feature-orb:hover:after,.shop-card:hover:after,.item-cell:hover:after{animation:gameLightSweep .82s ease}.hero-character,.character-visual-card,.fighter-card,.beast-hero,.summon-banner{position:relative;overflow:hidden}.hero-character:before,.character-visual-card:before,.fighter-card:before,.beast-hero:before,.summon-banner:before{content:"";position:absolute;inset:auto 12% -110px 12%;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(125,237,255,.18),rgba(181,111,255,.08) 46%,transparent 70%);filter:blur(10px);animation:gameAuraBreathe 4.8s ease-in-out infinite}.hero-aura,.character-magic-ring,.combat-vfx-ring{animation:gameRuneSpin 13s linear infinite}.hero-aura:after,.character-magic-ring:after,.combat-vfx-ring:after{content:"";position:absolute;inset:16%;border-radius:50%;border:1px dashed rgba(255,230,142,.42);animation:gameRuneSpin 8s linear infinite reverse}.hero-figure img,[data-char-avatar],[data-combat-player-art],.beast-hero-img{animation:gameFloatHero 4.8s ease-in-out infinite;filter:drop-shadow(0 28px 38px rgba(0,0,0,.45)) drop-shadow(0 0 34px rgba(157,94,255,.28))}.fighter-portrait--monster img{animation:gameMonsterIdle 3.6s ease-in-out infinite}.hero-character p,.game-kicker,.advanced-head small,.summon-banner small{animation:gameTextGlow 3.2s ease-in-out infinite}.game-resource-bar strong{transition:color .2s ease,text-shadow .2s ease}.fx-resource-pulse .game-resource-bar strong{color:#fff6c9;text-shadow:0 0 14px rgba(255,218,110,.85)}.realm-tier-1{--realm-glow:#a4876b}.realm-tier-2{--realm-glow:#75ffd8}.realm-tier-3{--realm-glow:#8bd8ff}.realm-tier-4{--realm-glow:#ffd66b}.realm-tier-5{--realm-glow:#6adfff}.realm-tier-6{--realm-glow:#c77bff}.realm-tier-7{--realm-glow:#c9f5ff}.realm-tier-8{--realm-glow:#fff2b7}.realm-tier-9{--realm-glow:#b16cff}.realm-tier-10{--realm-glow:#fff3a0}.hero-aura,.character-magic-ring,.fighter-aura{box-shadow:0 0 55px color-mix(in srgb,var(--realm-glow,#b36cff) 48%,transparent),inset 0 0 40px color-mix(in srgb,var(--realm-glow,#b36cff) 26%,transparent)}.realm-title-badge,.breakthrough-orb.is-ready,.realm-card.is-current{box-shadow:0 0 30px color-mix(in srgb,var(--realm-glow,#ffd977) 36%,transparent);border-color:color-mix(in srgb,var(--realm-glow,#ffd977) 65%,rgba(255,255,255,.12))}.game-fx-layer{position:fixed;inset:0;z-index:70;pointer-events:none;overflow:hidden}.game-fx-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:1;opacity:.68;mix-blend-mode:screen;pointer-events:none}.fx-vignette{position:fixed;inset:0;z-index:2;pointer-events:none;opacity:0;background:radial-gradient(circle,transparent 25%,rgba(20,0,40,.55) 100%);transition:opacity .3s ease}.fx-vignette.is-on{opacity:1}.fx-burst{position:fixed;left:50%;top:50%;z-index:3;width:24px;height:24px;border-radius:50%;transform:translate(-50%,-50%) scale(.2);background:radial-gradient(circle,#fff 0 12%,var(--fx-gold) 13% 28%,rgba(177,90,255,.78) 34%,transparent 72%);filter:blur(.2px);opacity:0;animation:fxBurst .92s ease-out forwards}.fx-burst.fx-fail{--fx-gold:#8f6fff;background:radial-gradient(circle,#fff 0 8%,#9f72ff 13% 26%,rgba(255,73,105,.48) 38%,transparent 76%)}.fx-burst.fx-summon{width:36px;height:36px;background:radial-gradient(circle,#fff 0 10%,#7ff6ff 16% 28%,#d789ff 40%,transparent 74%);animation-duration:1.35s}.fx-flash{position:fixed;inset:0;z-index:4;background:radial-gradient(circle at center,rgba(255,246,190,.72),rgba(255,214,100,.18) 28%,transparent 65%);opacity:0;animation:fxFlash .62s ease-out forwards}.fx-shockwave{position:fixed;left:50%;top:52%;z-index:3;width:120px;height:120px;border-radius:50%;border:2px solid rgba(255,231,156,.9);transform:translate(-50%,-50%) scale(.2);opacity:0;animation:fxShockwave 1s ease-out forwards}.fx-rune{position:fixed;left:50%;top:50%;z-index:3;width:min(58vw,560px);height:min(58vw,560px);border-radius:50%;transform:translate(-50%,-50%) scale(.5);opacity:0;border:1px solid rgba(255,225,140,.65);box-shadow:inset 0 0 40px rgba(188,106,255,.18),0 0 50px rgba(139,98,255,.22);background:repeating-conic-gradient(from 0deg,rgba(255,230,160,.12) 0 8deg,transparent 9deg 16deg),radial-gradient(circle,transparent 0 48%,rgba(255,224,150,.16) 49% 50%,transparent 51%);animation:fxRuneOpen 1.15s ease-out forwards}.fx-damage{position:fixed;z-index:6;font-weight:1000;font-size:clamp(1.4rem,3vw,3rem);color:#fff2b3;text-shadow:0 0 14px #ff5a73,0 3px 0 rgba(0,0,0,.38);transform:translate(-50%,-50%);animation:fxDamage 1.05s cubic-bezier(.18,.9,.18,1) forwards}.fx-damage.crit{font-size:clamp(1.8rem,4vw,4rem);color:#fff;text-shadow:0 0 18px #ff2e65,0 0 38px #ffb43d,0 4px 0 rgba(0,0,0,.45)}.fx-loot{position:fixed;z-index:6;width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(255,236,168,.94),rgba(139,71,255,.86));box-shadow:0 0 34px rgba(255,220,110,.45);transform:translate(-50%,-50%) scale(.4);animation:fxLootFly 1.1s ease-in forwards}.fx-loot img{width:70%;height:70%;object-fit:contain}.fx-card-reveal{position:fixed;left:50%;top:50%;z-index:7;width:min(72vw,330px);min-height:420px;border-radius:30px;padding:20px;transform:translate(-50%,-50%) scale(.55) rotateY(90deg);opacity:0;background:radial-gradient(circle at 50% 10%,rgba(255,238,155,.32),transparent 32%),linear-gradient(165deg,rgba(40,12,70,.98),rgba(6,1,15,.96));border:1px solid rgba(255,224,140,.62);box-shadow:0 0 80px rgba(153,94,255,.42),inset 0 0 50px rgba(255,214,110,.08);display:grid;place-items:center;text-align:center;animation:fxCardReveal 1.45s cubic-bezier(.16,.94,.22,1) forwards}.fx-card-reveal b{font-size:1.4rem;color:#fff0b8}.fx-card-reveal span{font-size:4rem;filter:drop-shadow(0 0 18px rgba(255,220,100,.66))}.fx-toast-title{position:fixed;left:50%;top:18%;z-index:8;transform:translate(-50%,-30px);padding:14px 22px;border-radius:999px;background:rgba(8,2,18,.86);border:1px solid rgba(255,221,134,.55);color:#fff2bc;font-weight:1000;box-shadow:0 0 50px rgba(151,85,255,.36);opacity:0;animation:fxTitleDrop 1.9s ease forwards}.game-app-frame.fx-screen-shake{animation:fxScreenShake .42s ease}.game-app-frame.fx-critical-shake{animation:fxCriticalShake .72s ease}.game-panel.is-active{animation:gamePanelIn .34s ease both}.item-cell.fx-picked,.shop-card.fx-picked,.beast-card.fx-picked,.alchemy-card.fx-picked,.forge-card.fx-picked{animation:fxCardPulse .62s ease}.game-primary.fx-casting,.action-card.fx-casting,.game-secondary.fx-casting{animation:fxButtonCast .78s ease}.summon-banner.fx-summoning{animation:fxSummonBanner 1.3s ease}.deployed-beast-card.fx-evolving,.beast-card.fx-evolving{animation:fxEvolveGlow 1.3s ease}.inventory-grid.fx-inventory-shimmer .item-cell{animation:fxInventoryCascade .42s ease both}.inventory-grid.fx-inventory-shimmer .item-cell:nth-child(2n){animation-delay:.03s}.inventory-grid.fx-inventory-shimmer .item-cell:nth-child(3n){animation-delay:.06s}.game-log-panel.fx-new-log{animation:fxLogPulse .75s ease}.game-toast{box-shadow:0 18px 58px rgba(0,0,0,.36),0 0 30px rgba(255,215,118,.16)}.game-toast:not([hidden]){animation:fxToastIn .35s ease}.fx-audio-enabled .game-sound-toggle{box-shadow:0 0 28px rgba(117,242,255,.28),0 0 0 1px rgba(255,219,122,.28) inset}@keyframes gameNebulaDrift{0%{filter:hue-rotate(0deg) saturate(1);transform:scale(1)}100%{filter:hue-rotate(14deg) saturate(1.16);transform:scale(1.05)}}@keyframes gameStarDrift{to{background-position:160px 220px,220px 20px}}@keyframes gameBgBreath{0%{filter:saturate(1) brightness(.9);transform:scale(1.02)}100%{filter:saturate(1.18) brightness(1.05);transform:scale(1.08)}}@keyframes gameOrbFloat{0%,100%{transform:translate3d(0,0,0) scale(1);opacity:.6}50%{transform:translate3d(18px,-28px,0) scale(1.16);opacity:.9}}@keyframes gameSealPulse{0%,100%{filter:drop-shadow(0 0 12px rgba(255,214,120,.32));transform:scale(1)}50%{filter:drop-shadow(0 0 28px rgba(255,214,120,.76));transform:scale(1.05)}}@keyframes gameRuneSpin{to{transform:rotate(360deg)}}@keyframes gameLightSweep{0%{opacity:0;transform:translateX(-120%)}20%{opacity:1}100%{opacity:0;transform:translateX(120%)}}@keyframes gameAuraBreathe{0%,100%{opacity:.45;transform:scale(.95)}50%{opacity:.9;transform:scale(1.08)}}@keyframes gameFloatHero{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gameMonsterIdle{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-7px) scale(1.025)}}@keyframes gameTextGlow{0%,100%{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 16px rgba(255,219,122,.52)}}@keyframes fxBurst{0%{opacity:0;transform:translate(-50%,-50%) scale(.15)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(20)}}@keyframes fxFlash{0%{opacity:0}15%{opacity:.92}100%{opacity:0}}@keyframes fxShockwave{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}20%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(7)}}@keyframes fxRuneOpen{0%{opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(0)}18%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(1.35) rotate(155deg)}}@keyframes fxDamage{0%{opacity:0;transform:translate(-50%,-50%) scale(.62)}12%{opacity:1}100%{opacity:0;transform:translate(-50%,-155%) scale(1.08)}}@keyframes fxLootFly{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}20%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(40vw,-42vh) scale(.2)}}@keyframes fxCardReveal{0%{opacity:0;transform:translate(-50%,-50%) scale(.55) rotateY(90deg)}32%{opacity:1;transform:translate(-50%,-50%) scale(1.05) rotateY(0)}78%{opacity:1;transform:translate(-50%,-50%) scale(1) rotateY(0)}100%{opacity:0;transform:translate(-50%,-55%) scale(.92) rotateY(0)}}@keyframes fxTitleDrop{0%{opacity:0;transform:translate(-50%,-28px) scale(.94)}16%{opacity:1;transform:translate(-50%,0) scale(1)}82%{opacity:1}100%{opacity:0;transform:translate(-50%,-20px) scale(.96)}}@keyframes fxScreenShake{0%,100%{transform:none}20%{transform:translate(5px,-2px)}40%{transform:translate(-4px,3px)}60%{transform:translate(3px,2px)}80%{transform:translate(-2px,-3px)}}@keyframes fxCriticalShake{0%,100%{transform:none}12%{transform:translate(8px,-5px)}25%{transform:translate(-7px,6px)}37%{transform:translate(6px,4px)}49%{transform:translate(-6px,-5px)}61%{transform:translate(4px,3px)}74%{transform:translate(-3px,-2px)}}@keyframes gamePanelIn{from{opacity:.35;transform:translateY(12px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}@keyframes fxCardPulse{0%,100%{transform:translateY(0) scale(1)}45%{transform:translateY(-5px) scale(1.025);box-shadow:0 0 34px rgba(255,219,118,.28)}}@keyframes fxButtonCast{0%,100%{box-shadow:0 0 0 rgba(255,220,120,0)}50%{box-shadow:0 0 34px rgba(255,220,120,.46)}}@keyframes fxSummonBanner{0%,100%{filter:none}45%{filter:brightness(1.45) saturate(1.35);box-shadow:0 0 95px rgba(178,100,255,.55)}}@keyframes fxEvolveGlow{0%,100%{filter:none;transform:none}45%{filter:brightness(1.4) saturate(1.4);transform:translateY(-4px) scale(1.02)}}@keyframes fxInventoryCascade{0%{opacity:.4;transform:translateY(10px) scale(.96)}100%{opacity:1;transform:none}}@keyframes fxLogPulse{0%,100%{box-shadow:inherit}45%{box-shadow:0 0 35px rgba(255,218,110,.24)}}@keyframes fxToastIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cultivation-game:before,.cultivation-game:after,.game-bg-layer,.game-orb,.hero-figure img,[data-char-avatar],[data-combat-player-art],.beast-hero-img,.fighter-portrait--monster img,.hero-aura,.character-magic-ring,.combat-vfx-ring,.game-title-mark img{animation:none!important}.game-fx-canvas,.game-fx-layer{display:none!important}}@media (max-width:720px){.fx-card-reveal{min-height:330px;width:min(88vw,300px);border-radius:24px}.fx-toast-title{top:12%;max-width:88vw;text-align:center}.fx-rune{width:88vw;height:88vw}.hero-figure img,[data-char-avatar]{animation-duration:5.8s}.game-fx-layer{z-index:72}}
