.particles{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.particle{width:var(--size, 6px);height:var(--size, 6px);position:absolute;background:var(--fx, #fff);box-shadow:0 0 9px 3px var(--fx, rgba(255, 255, 255, .6));border-radius:50%;animation:particle 1.32s ease-out var(--delay, 0ms) both}.particle--circle{border-radius:50%}.particle--diamond{border-radius:1px;rotate:45deg}.particle--shard{border-radius:0}.particle--droplet{border-radius:50% 50% 50% 0;rotate:-45deg}@keyframes particle{0%{opacity:0;transform:translate(0) scale(.2)}18%{opacity:1}to{opacity:0;transform:translate(var(--dx, 0),var(--dy, 0)) scale(.1)}}.effect{position:absolute;inset:0;z-index:5;pointer-events:none;display:grid;place-items:center;isolation:isolate}.effect__wash{position:absolute;inset:0;opacity:0;animation:wash 1.62s ease-out forwards}.effect--emberfall{--fx: #ff9a38;--fx2: #e94225}.effect--emberfall .effect__wash{background:radial-gradient(circle,rgba(239,119,48,.53),rgba(189,61,33,.2) 40%,transparent 75%)}.effect--frostbite{--fx: #bdeaff;--fx2: #4a9ec9}.effect--frostbite .effect__wash{background:radial-gradient(circle,rgba(155,233,255,.54),rgba(74,186,221,.21) 42%,transparent 78%)}.effect--void-rift{--fx: #d0a5ff;--fx2: #7043a4}.effect--void-rift .effect__wash{background:radial-gradient(circle,rgba(163,108,218,.6),rgba(100,66,165,.29) 44%,transparent 76%)}.effect--void-rift .effect__ring{border-radius:25%;transform:rotate(45deg)}.effect--fireball{--fx: #ff5a1f;--fx2: #ffb300}.effect--fireball .effect__wash{background:radial-gradient(circle,rgba(255,69,0,.73),rgba(255,153,0,.33) 35%,transparent 75%)}.effect--lightning{--fx: #67e8f9;--fx2: #a855f7}.effect--lightning .effect__wash{background:radial-gradient(circle,rgba(224,242,254,.8),rgba(56,189,248,.4) 40%,transparent 75%)}.effect--solar-radiance{--fx: #fbbf24;--fx2: #fffbeb}.effect--solar-radiance .effect__wash{background:radial-gradient(circle,rgba(254,240,138,.8),rgba(245,158,11,.33) 45%,transparent 80%)}.effect--toxic-blight{--fx: #22c55e;--fx2: #15803d}.effect--toxic-blight .effect__wash{background:radial-gradient(circle,rgba(74,222,128,.6),rgba(22,101,52,.33) 42%,transparent 78%)}.effect--blood-tithe{--fx: #e60026;--fx2: #990011}.effect--blood-tithe .effect__wash{background:radial-gradient(circle,rgba(230,0,38,.65),rgba(153,0,17,.35) 42%,transparent 78%)}.effect--tidal-surge{--fx: #00d2ff;--fx2: #0048ba}.effect--tidal-surge .effect__wash{background:radial-gradient(circle,rgba(0,210,255,.65),rgba(0,72,186,.35) 45%,transparent 80%)}.effect__ring{width:80px;height:80px;border:2px solid var(--fx, rgba(255, 255, 255, .8));border-radius:50%;box-shadow:0 0 30px var(--fx, rgba(255, 255, 255, .5)),inset 0 0 15px var(--fx, rgba(255, 255, 255, .5));position:absolute;animation:ring 1.38s cubic-bezier(.1,.75,.15,1) forwards}.effect__ring--two{animation-delay:.15s}.effect__hit{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;animation:hit 1.94s cubic-bezier(.15,.8,.2,1) forwards;text-shadow:0 2px 20px #000,0 0 35px var(--fx, rgba(255, 255, 255, .6))}.effect__hit-glyph{font-size:21px;color:var(--fx, #fff)}.effect__hit strong{font:600 80px Cinzel,serif;line-height:1}.effect__hit small{font-size:10px;font-weight:700;letter-spacing:.3em;color:var(--fx, #fff)}.effect__origin-badge{display:flex;align-items:center;gap:5px;background:#0e1410e6;border:1px solid rgba(245,215,140,.7);box-shadow:0 4px 16px #000c,0 0 12px #f5d78c4d;border-radius:999px;padding:4px 10px;font-size:9px;font-weight:800;letter-spacing:.14em;color:#fff2d0;margin-bottom:6px;text-shadow:none;animation:badge-appear .5s ease-out}.origin-arrow{display:inline-block;color:#f7ce72;font-size:11px}@keyframes wash{10%{opacity:1}to{opacity:0}}@keyframes ring{0%{opacity:0;transform:scale(.2)}15%{opacity:1}to{opacity:0;transform:scale(5)}}@keyframes hit{0%{opacity:0;transform:translateY(30px) scale(2)}18%{opacity:1;transform:translateY(0) scale(1)}65%{opacity:1}to{opacity:0;transform:translateY(-35px) scale(.9)}}@keyframes badge-appear{0%{opacity:0;transform:translateY(-8px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.effect__hit{opacity:1!important}.effect{animation:fade-reduced 1.88s forwards!important}@keyframes fade-reduced{0%,85%{opacity:1}to{opacity:0}}}.effect--fireball-active .fireball__flight-wrapper{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--fireball-active .fireball__projectile{position:absolute;top:50%;left:50%;width:30px;height:30px;pointer-events:none;z-index:4;animation:fireball-directed-flight .9s cubic-bezier(.2,.7,.25,1) forwards}.effect--fireball-active .fireball__core{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,#fff 15%,#fc0 45%,#ff3700 85%);box-shadow:0 0 25px 8px #ff4500,0 0 50px 18px #f80}.effect--fireball-active .fireball__trail{position:absolute;top:50%;left:50%;width:90px;height:18px;transform:translate(-100%,-50%) rotate(-45deg);transform-origin:right center;background:linear-gradient(90deg,transparent,#ff3700 40%,#ffbb00 90%);filter:blur(2px);border-radius:20px;opacity:.85}.effect--fireball-active .fireball__wake{position:absolute;width:14px;height:60px;background:linear-gradient(to top,#ff8c00cc,#ff3c0000);border-radius:50%;filter:blur(4px);transform:translate(-50%);bottom:0;left:50%}.effect--fireball-active .fireball__detonation{position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,#fff 10%,#ffd000 35%,#ff3b00 65%,#6000 85%);box-shadow:0 0 60px 22px #f40,0 0 110px 45px #ff990087;opacity:0;animation:fireball-burst 1.15s cubic-bezier(.1,.75,.15,1) .32s forwards;pointer-events:none;z-index:2}.effect--fireball-active .fireball__shockwave{border-width:4px;border-color:#fa3;box-shadow:0 0 45px #ff3700,inset 0 0 25px #fa0;animation:fireball-ring 1.38s cubic-bezier(.08,.6,.2,1) .3s forwards}.particle--fireball{background:radial-gradient(circle,#fff7aa 20%,#f50 80%);box-shadow:0 0 12px 4px #ff3700,0 0 22px 8px #f90;animation:particle-fireball 1.32s cubic-bezier(.12,.75,.25,1) var(--delay) both}.effect__hit--fireball{text-shadow:0 0 20px #000,0 0 35px #ff3b00,0 0 70px #ff9900,0 0 110px #ff1a00}.effect__hit--fireball strong{background:linear-gradient(180deg,#fff 20%,#ffe066 55%,#f50);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 8px rgba(0,0,0,.8))}@keyframes fireball-directed-flight{0%{transform:translate(calc(var(--from-x) * 260px),calc(var(--from-y) * 260px)) rotate(var(--travel-angle)) scale(.5);opacity:0}15%{opacity:1}75%{transform:translate(0) rotate(var(--travel-angle)) scale(1.4);opacity:1}80%{opacity:0}to{transform:translate(0) scale(1);opacity:0}}@keyframes fireball-burst{0%{transform:scale(.2);opacity:0}15%{transform:scale(1.5);opacity:1}60%{transform:scale(2.4);opacity:.6}to{transform:scale(3.1);opacity:0}}@keyframes fireball-ring{0%{opacity:0;transform:scale(.2)}15%{opacity:1}to{opacity:0;transform:scale(6.2)}}@keyframes particle-fireball{0%{opacity:0;transform:translate(0) scale(.3)}20%{opacity:1;transform:translate(calc(var(--dx) * .35),calc(var(--dy) * .35)) scale(1.4)}75%{opacity:.85}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.1)}}.effect--lightning-active .lightning__flashover{position:absolute;inset:0;background:radial-gradient(circle,#ffffff 0%,#a5f3fc 45%,rgba(2,132,199,.2) 80%,transparent 100%);opacity:0;z-index:2;animation:lightning-flash 1.12s ease-out forwards}.effect--lightning-active .lightning__directed-branch{position:absolute;width:240px;height:320px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(var(--travel-angle));pointer-events:none;transform-origin:center center}.effect--lightning-active .lightning__svg{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;filter:drop-shadow(0 0 16px #38bdf8) drop-shadow(0 0 32px #0284c7)}.effect--lightning-active .lightning__arc{fill:none;stroke:#fff;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;animation:lightning-strike 1.06s ease-out forwards}.effect--lightning-active .lightning__arc--glow{stroke:#38bdf8;stroke-width:9;opacity:.75;filter:blur(3px)}.effect--lightning-active .lightning__arc--branch1,.effect--lightning-active .lightning__arc--branch2{stroke-width:2.2;stroke:#a5f3fc}.particle--lightning{background:#fff;box-shadow:0 0 10px 3px #67e8f9,0 0 20px 6px #0284c7;border-radius:1px;animation:particle-lightning 1.32s cubic-bezier(.05,.85,.2,1) var(--delay) both}.effect__hit--lightning strong{background:linear-gradient(180deg,#fff 25%,#a5f3fc 65%,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 16px #38bdf8)}@keyframes lightning-flash{0%{opacity:0}8%{opacity:.95}15%{opacity:.2}22%{opacity:1}35%{opacity:.4}45%{opacity:.85}to{opacity:0}}@keyframes lightning-strike{0%{opacity:0;stroke-dasharray:400;stroke-dashoffset:400}10%{opacity:1;stroke-dashoffset:0}20%{opacity:.3}28%{opacity:1}42%{opacity:.7}to{opacity:0}}@keyframes particle-lightning{0%{opacity:0;transform:translate(0) scale(.2)}15%{opacity:1;transform:translate(calc(var(--dx) * .4),calc(var(--dy) * .4)) scale(1.6)}35%{transform:translate(calc(var(--dx) * .5 + 4px),calc(var(--dy) * .5 - 4px)) scale(1.2)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.1)}}.effect--solar-active .solar__sunburst{position:absolute;inset:0;display:grid;place-items:center;z-index:2;pointer-events:none}.effect--solar-active .solar__halo{position:absolute;width:170px;height:170px;border-radius:50%;border:3px double #fde047;box-shadow:0 0 45px #f59e0b,inset 0 0 35px #fef08a;animation:solar-halo-spin 1.75s ease-out forwards}.effect--solar-active .solar__aura{position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(254,240,138,.47) 0%,rgba(245,158,11,.2) 50%,transparent 75%);animation:solar-aura-pulse 1.62s ease-out forwards}.effect--solar-active .solar__ray{position:absolute;width:4px;height:150px;background:linear-gradient(180deg,#ffffff,#fde047 60%,transparent 100%);filter:drop-shadow(0 0 8px #f59e0b);transform:rotate(var(--rot)) translateY(-75px);transform-origin:center bottom;animation:solar-ray-burst 1.68s cubic-bezier(.1,.75,.2,1) forwards}.effect--solar-active .solar__lance{position:absolute;width:12px;height:380px;left:50%;top:50%;background:linear-gradient(to bottom,transparent,#fff 30%,#ffd700 70%,#fff 100%);box-shadow:0 0 30px gold,0 0 60px #fff;border-radius:999px;pointer-events:none;transform:translate(-50%,-50%) rotate(var(--travel-angle));animation:solar-lance-strike .82s cubic-bezier(.1,.8,.2,1) forwards}.effect--solar-active .effect__motif--solar{font-family:serif;position:absolute;font-size:170px;color:#fde047;text-shadow:0 0 40px #f59e0b,0 0 80px #d97706;animation:solar-motif 1.44s ease-out forwards}.particle--solar-radiance{background:radial-gradient(circle,#fff,#fde047);box-shadow:0 0 10px 4px #fbbf24;animation:particle-solar 1.32s ease-out var(--delay) both}.effect__hit--solar-radiance strong{background:linear-gradient(180deg,#fff 20%,#fef08a,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px #f59e0b)}@keyframes solar-halo-spin{0%{transform:scale(.2) rotate(0);opacity:0}25%{transform:scale(1.1) rotate(45deg);opacity:1}to{transform:scale(1.6) rotate(180deg);opacity:0}}@keyframes solar-aura-pulse{0%{transform:scale(.3);opacity:0}30%{transform:scale(1.3);opacity:.9}to{transform:scale(2.2);opacity:0}}@keyframes solar-ray-burst{0%{transform:rotate(var(--rot)) translateY(0) scaleY(.1);opacity:0}20%{opacity:1}to{transform:rotate(calc(var(--rot) + 25deg)) translateY(-40px) scaleY(1.4);opacity:0}}@keyframes solar-lance-strike{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--travel-angle)) translateY(-180px) scaleY(.2)}25%{opacity:1;transform:translate(-50%,-50%) rotate(var(--travel-angle)) translateY(0) scaleY(1.2)}75%{opacity:.8;transform:translate(-50%,-50%) rotate(var(--travel-angle)) translateY(20px) scaleY(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--travel-angle)) translateY(40px) scaleY(.8)}}@keyframes solar-motif{0%{opacity:0;transform:scale(.1) rotate(-90deg)}22%{opacity:1}to{opacity:0;transform:scale(1.65) rotate(40deg)}}@keyframes particle-solar{0%{opacity:0;transform:translate(0) scale(.3)}25%{opacity:1;transform:translate(calc(var(--dx) * .4),calc(var(--dy) * .4)) scale(1.2)}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.2)}}.effect--toxic-active .toxic__pool{position:absolute;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,rgba(74,222,128,.6) 20%,rgba(22,101,52,.33) 60%,transparent 80%);filter:blur(12px);animation:toxic-pool-grow 1.62s ease-out forwards;z-index:2}.effect--toxic-active .toxic__splatter{position:absolute;width:140px;height:140px;border-radius:40% 60% 70% 30%/40% 50% 60%;background:#22c55e33;border:2px dashed rgba(74,222,128,.53);animation:toxic-splatter-morph 1.56s ease-out forwards;z-index:2}.effect--toxic-active .toxic__incoming-glob{position:absolute;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle,#7eff69,#1f7d12 75%);box-shadow:0 0 18px #4ee632;animation:toxic-glob-flight .7s ease-in forwards}.effect--toxic-active .effect__motif--toxic{font-family:serif;position:absolute;font-size:160px;color:#4ade80;text-shadow:0 0 35px #22c55e,0 0 70px #15803d;animation:toxic-skull-melt 1.68s ease-out forwards}.particle--toxic-blight{background:radial-gradient(circle,#86efac,#22c55e);box-shadow:0 0 9px 3px #16a34a;border-radius:40% 40% 60% 60%;animation:particle-toxic 1.32s cubic-bezier(.3,0,.7,1) var(--delay) both}.effect__hit--toxic-blight strong{background:linear-gradient(180deg,#fff 15%,#86efac 55%,#16a34a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 16px #22c55e)}@keyframes toxic-glob-flight{0%{transform:translate(calc(var(--from-x) * 200px),calc(var(--from-y) * 200px)) scale(.6);opacity:0}20%{opacity:1}90%{transform:translate(0) scale(1.4);opacity:1}to{transform:translate(0) scale(2.2);opacity:0}}@keyframes toxic-pool-grow{0%{transform:scale(.1);opacity:0}25%{transform:scale(1.2);opacity:.9}to{transform:scale(2.4);opacity:0}}@keyframes toxic-splatter-morph{0%{transform:scale(.2) rotate(0);opacity:0}30%{transform:scale(1.2) rotate(60deg);opacity:1}to{transform:scale(1.8) rotate(160deg);opacity:0}}@keyframes toxic-skull-melt{0%{opacity:0;transform:scale(.2) translateY(20px)}25%{opacity:1;transform:scale(1.1) translateY(0)}75%{opacity:.9;transform:scale(1.05) translateY(12px) skew(4deg)}to{opacity:0;transform:scale(1.2) translateY(35px) skew(-6deg)}}@keyframes particle-toxic{0%{opacity:0;transform:translate(0) scale(.3) scaleY(1)}20%{opacity:1;transform:translate(calc(var(--dx) * .3),calc(var(--dy) * .2)) scale(1.1) scaleY(1.4)}80%{opacity:.8}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.2) scaleY(2)}}.effect--void-active .void__siphon{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--void-active .void__siphon-stream{position:absolute;width:16px;height:16px;border-radius:50%;background:radial-gradient(circle,#e6b8ff,#7f2bb8 70%);box-shadow:0 0 16px #a633eb,0 0 32px #601890;animation:void-siphon-flow 1.06s cubic-bezier(.2,.6,.3,1) var(--delay, 0ms) infinite}.effect--void-active .effect__motif--void{font-family:serif;position:absolute;font-size:165px;color:var(--fx);text-shadow:0 0 30px var(--fx),0 0 60px var(--fx2);animation:void-motif 1.44s ease-out forwards}.particle--void-rift{border-radius:0}@keyframes void-siphon-flow{0%{opacity:0;transform:translate(calc(var(--from-x) * 220px),calc(var(--from-y) * 220px)) scale(.4)}20%{opacity:1}85%{opacity:.9;transform:translate(0) scale(1.3)}to{opacity:0;transform:translate(0) scale(.2)}}@keyframes void-motif{0%{opacity:0;transform:scale(.1) rotate(-90deg)}22%{opacity:1}to{opacity:0;transform:scale(1.65) rotate(40deg)}}.effect--emberfall-active .emberfall__stream{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--emberfall-active .emberfall__ember{position:absolute;border-radius:50%;background:radial-gradient(circle,#fff3aa 15%,#ff9a38 60%,#e94225);box-shadow:0 0 14px 4px #ff9a38cc,0 0 24px 8px #e9422580;animation:emberfall-drift 1.44s ease-out var(--delay, 0ms) infinite}.effect--emberfall-active .effect__motif--ember{font-family:serif;position:absolute;font-size:195px;color:var(--fx);text-shadow:0 0 30px var(--fx),0 0 60px var(--fx2);animation:ember-motif 1.44s ease-out forwards}@keyframes emberfall-drift{0%{opacity:0;transform:translate(calc(var(--from-x) * 200px),calc(var(--from-y) * 200px)) rotate(var(--travel-angle)) scale(.3)}20%{opacity:1}80%{opacity:.9}to{opacity:0;transform:translate(calc(var(--from-x) * -60px),calc(var(--from-y) * -60px)) rotate(var(--travel-angle)) scale(1.3)}}@keyframes ember-motif{0%{opacity:0;transform:scale(.1) rotate(-90deg)}22%{opacity:1}to{opacity:0;transform:scale(1.65) rotate(40deg)}}.effect--frostbite-active .frostbite__blizzard{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--frostbite-active .frostbite__shard{position:absolute;width:20px;height:20px;background:linear-gradient(135deg,#fff 20%,#bdeaff,#4a9ec9);box-shadow:0 0 16px #bdeaffcc,inset 0 0 6px #fff;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);animation:frostbite-blizzard 1.38s ease-out var(--delay, 0ms) infinite}.effect--frostbite-active .effect__motif--frost{font-family:serif;position:absolute;font-size:165px;color:var(--fx);text-shadow:0 0 30px var(--fx),0 0 60px var(--fx2);animation:frost-motif 1.44s ease-out forwards}@keyframes frostbite-blizzard{0%{opacity:0;transform:translate(calc(var(--from-x) * 220px),calc(var(--from-y) * 220px)) rotate(var(--travel-angle)) scale(.3)}20%{opacity:1}75%{opacity:.9}to{opacity:0;transform:translate(calc(var(--from-x) * -70px),calc(var(--from-y) * -70px)) rotate(calc(var(--travel-angle) + 45deg)) scale(1.4)}}@keyframes frost-motif{0%{opacity:0;transform:scale(.1) rotate(-90deg)}22%{opacity:1}to{opacity:0;transform:scale(1.65) rotate(40deg)}}.effect--blood-active .blood__siphon-wrapper{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--blood-active .blood__stream{position:absolute;width:18px;height:18px;border-radius:50% 50% 50% 0;rotate:-45deg;background:radial-gradient(circle,#ff2a4b 15%,#e60026 60%,#901);box-shadow:0 0 16px #e60026,0 0 32px #901;animation:blood-siphon-flow 1.1s cubic-bezier(.2,.7,.3,1) var(--delay, 0ms) infinite}.effect--blood-active .blood__aura{position:absolute;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(230,0,38,.45) 15%,rgba(153,0,17,.25) 55%,transparent 75%);animation:blood-aura-pulse 1.55s ease-out forwards;pointer-events:none;z-index:2}.effect--blood-active .effect__motif--blood{font-family:serif;position:absolute;font-size:165px;color:#e60026;text-shadow:0 0 35px #990011,0 0 70px #ff0033;animation:blood-motif 1.45s ease-out forwards}.particle--blood-tithe{background:radial-gradient(circle,#ff3b56 20%,#e60026,#901);box-shadow:0 0 10px 4px #e60026;animation:particle-blood 1.32s cubic-bezier(.2,.75,.25,1) var(--delay) both}.effect__hit--blood-tithe strong{background:linear-gradient(180deg,#fff 15%,#ff4d66 50%,#901);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px #e60026)}@keyframes blood-siphon-flow{0%{opacity:0;transform:translate(0) scale(.3)}20%{opacity:1}85%{opacity:.9;transform:translate(calc(var(--from-x) * 220px),calc(var(--from-y) * 220px)) scale(1.3)}to{opacity:0;transform:translate(calc(var(--from-x) * 250px),calc(var(--from-y) * 250px)) scale(.4)}}@keyframes blood-aura-pulse{0%{transform:scale(.2);opacity:0}25%{transform:scale(1.25);opacity:.9}to{transform:scale(2.2);opacity:0}}@keyframes blood-motif{0%{opacity:0;transform:scale(.1) rotate(-45deg)}22%{opacity:1}to{opacity:0;transform:scale(1.6) rotate(15deg)}}@keyframes particle-blood{0%{opacity:0;transform:translate(0) scale(.2)}20%{opacity:1;transform:translate(calc(var(--dx) * .4),calc(var(--dy) * .4)) scale(1.3)}80%{opacity:.85}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.15)}}.effect--tidal-active .tidal__wave-wrapper{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--tidal-active .tidal__crest{position:absolute;width:60px;height:140px;border-radius:50% 50% 30% 30%;background:linear-gradient(180deg,#fff 10%,#00d2ff 50%,#0048ba);box-shadow:0 0 25px #00d2ffcc,0 0 50px #0048ba80;filter:blur(2px);opacity:0;animation:tidal-hydro-surge .85s cubic-bezier(.2,.7,.25,1) forwards}.effect--tidal-active .tidal__vortex{position:absolute;width:170px;height:170px;border-radius:50%;border:3px double #00d2ff;box-shadow:0 0 45px #0048ba,inset 0 0 35px #00d2ff;opacity:0;animation:tidal-vortex-spin 1.45s ease-out .28s forwards;pointer-events:none;z-index:2}.effect--tidal-active .effect__motif--tidal{font-family:serif;position:absolute;font-size:165px;color:#00d2ff;text-shadow:0 0 35px #0048ba,0 0 70px #00d2ff;animation:tidal-motif 1.45s ease-out forwards}.particle--tidal-surge{background:radial-gradient(circle,#b8f2ff 15%,#00d2ff 60%,#0048ba);box-shadow:0 0 10px 4px #00d2ff;animation:particle-tidal 1.32s cubic-bezier(.15,.8,.25,1) var(--delay) both}.effect__hit--tidal-surge strong{background:linear-gradient(180deg,#fff 20%,#7ee7ff,#0048ba);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 18px #00d2ff)}@keyframes tidal-hydro-surge{0%{opacity:0;transform:translate(calc(var(--from-x) * 240px),calc(var(--from-y) * 240px)) rotate(var(--travel-angle)) scale(.4)}20%{opacity:.95}75%{opacity:1;transform:translate(0) rotate(var(--travel-angle)) scale(1.3)}85%{opacity:.4}to{opacity:0;transform:translate(0) rotate(var(--travel-angle)) scale(1.6)}}@keyframes tidal-vortex-spin{0%{transform:scale(.2) rotate(0);opacity:0}25%{transform:scale(1.2) rotate(120deg);opacity:.95}to{transform:scale(2.2) rotate(360deg);opacity:0}}@keyframes tidal-motif{0%{opacity:0;transform:scale(.1) rotate(-30deg)}22%{opacity:1}to{opacity:0;transform:scale(1.6) rotate(20deg)}}@keyframes particle-tidal{0%{opacity:0;transform:translate(0) scale(.2)}20%{opacity:1;transform:translate(calc(var(--dx) * .4),calc(var(--dy) * .4)) scale(1.3)}80%{opacity:.85}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.15)}}.effect--lightsaber{--fx: #00f2fe;--fx2: #0077ff}.effect--lightsaber .effect__wash{background:radial-gradient(circle,rgba(0,242,254,.45),rgba(0,119,255,.22) 42%,transparent 78%)}.lightsaber__sweep{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;z-index:3;transform:rotate(var(--travel-angle, 0deg));transform-origin:center center}.lightsaber__blade-beam{position:absolute;width:6px;height:340px;background:#fff;border-radius:999px;box-shadow:0 0 12px 4px #00f2fe,0 0 35px 12px #07f,0 0 70px 24px #07f9;filter:drop-shadow(0 0 20px #00f2fe);animation:lightsaber-slash 1.15s cubic-bezier(.12,.85,.2,1) forwards}.lightsaber__slash-arc{position:absolute;width:220px;height:220px;border-radius:50%;border:3px solid #ffffff;border-color:#ffffff #00f2fe transparent transparent;box-shadow:0 0 25px #00f2fe,inset 0 0 25px #07f;animation:lightsaber-arc-spin 1.15s cubic-bezier(.1,.8,.2,1) forwards}.lightsaber__scorch{position:absolute;width:140px;height:8px;background:linear-gradient(90deg,transparent,#ff4500,#ffcc00,#ffffff,#00f2fe,transparent);border-radius:999px;filter:blur(2px);box-shadow:0 0 15px #f60,0 0 30px #00f2fe;animation:lightsaber-scorch 1.15s ease-out forwards}.particle--lightsaber{background:#fff;box-shadow:0 0 10px 3px #00f2fe,0 0 20px 6px #07f;border-radius:50%;animation:particle-lightsaber 1.32s cubic-bezier(.1,.75,.15,1) var(--delay) both}@keyframes lightsaber-slash{0%{transform:translate(calc(var(--from-x, 0) * 260px),calc(var(--from-y, -1) * 260px)) scaleY(.1);opacity:0}20%{transform:translate(0) scaleY(1.3) scaleX(1.8);opacity:1}50%{transform:translate(0) scaleY(1) scaleX(1);opacity:1}to{transform:translate(calc(var(--from-x, 0) * -60px),calc(var(--from-y, -1) * -60px)) scaleY(.3);opacity:0}}@keyframes lightsaber-arc-spin{0%{transform:rotate(-120deg) scale(.4);opacity:0}25%{transform:rotate(0) scale(1.2);opacity:1}70%{transform:rotate(90deg) scale(1.4);opacity:.6}to{transform:rotate(140deg) scale(1.6);opacity:0}}@keyframes lightsaber-scorch{0%{opacity:0;transform:scaleX(.2)}25%{opacity:1;transform:scaleX(1.2)}80%{opacity:.8}to{opacity:0;transform:scaleX(1.4)}}@keyframes particle-lightsaber{0%{opacity:0;transform:translate(0) scale(.2)}18%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.1)}}.effect--purple-fireball-active .purple-fireball__flight-wrapper{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.effect--purple-fireball-active .purple-fireball__projectile{position:absolute;top:50%;left:50%;width:38px;height:38px;pointer-events:none;z-index:4;animation:purple-fireball-flight .75s cubic-bezier(.2,.7,.25,1) forwards}.effect--purple-fireball-active .purple-fireball__core{width:100%;height:100%;border-radius:50%;background:radial-gradient(circle,#fff 15%,#f075ff 40%,#b300ff 70%,#5d00a8 95%);box-shadow:0 0 35px 12px #d500f9,0 0 70px 24px #9c27b0,0 0 120px 40px #6a0dad}.effect--purple-fireball-active .purple-fireball__trail{position:absolute;top:50%;left:50%;width:120px;height:22px;transform:translate(-100%,-50%) rotate(-45deg);transform-origin:right center;background:linear-gradient(90deg,transparent,#7b1fa2 35%,#e040fb 75%,#ffffff 95%);filter:blur(3px);border-radius:20px;opacity:.9}.effect--purple-fireball-active .purple-fireball__wake{position:absolute;width:20px;height:80px;background:linear-gradient(to top,#d500f9d9,#6a0dad00);border-radius:50%;filter:blur(5px);transform:translate(-50%);bottom:0;left:50%}.effect--purple-fireball-active .purple-fireball__detonation{position:absolute;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,#fff 10%,#ea80fc 30%,#a0f 60%,#4a007200 85%);box-shadow:0 0 80px 30px #d500f9,0 0 150px 60px #aa00ffa6,0 0 220px 90px #6a0dad73;opacity:0;animation:purple-fireball-burst 4.2s cubic-bezier(.12,.85,.2,1) .3s forwards;pointer-events:none;z-index:2}.effect--purple-fireball-active .purple-fireball__shockwave{border-width:5px;border-color:#f0abfc;box-shadow:0 0 60px #d500f9,inset 0 0 35px #a0f;animation:purple-fireball-ring 4.6s cubic-bezier(.08,.6,.2,1) .28s forwards}.effect--purple-fireball-active .purple-fireball__pulse-ring{position:absolute;border-radius:50%;border:3px solid #e879f9;box-shadow:0 0 45px #c026d3;opacity:0;animation:purple-fireball-second-pulse 4.8s ease-out .8s forwards}.particle--purple-fireball{background:radial-gradient(circle,#fce7f3 20%,#d946ef 60%,#701a75 95%);box-shadow:0 0 16px 5px #d946ef,0 0 30px 10px #a855f7;animation:particle-purple-fireball 4.2s cubic-bezier(.12,.75,.25,1) var(--delay) both}.effect__hit--purple-fireball{text-shadow:0 0 25px #000,0 0 45px #c026d3,0 0 85px #a855f7,0 0 130px #701a75}.effect__hit--purple-fireball strong{background:linear-gradient(180deg,#fff 15%,#f5d0fe 45%,#c026d3 80%,#701a75);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 12px rgba(0,0,0,.9))}@keyframes purple-fireball-flight{0%{transform:translate(calc(var(--from-x) * 280px),calc(var(--from-y) * 280px)) rotate(var(--travel-angle)) scale(.4);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translate(-50%,-50%) rotate(var(--travel-angle)) scale(1.6);opacity:0}}@keyframes purple-fireball-burst{0%{transform:scale(.1);opacity:0}8%{transform:scale(1.1);opacity:1}25%{transform:scale(1.35);opacity:.95}60%{transform:scale(1.55);opacity:.65}to{transform:scale(1.9);opacity:0}}@keyframes purple-fireball-ring{0%{width:30px;height:30px;opacity:1}20%{opacity:.95}50%{width:380px;height:380px;opacity:.7}to{width:600px;height:600px;opacity:0}}@keyframes purple-fireball-second-pulse{0%{width:40px;height:40px;opacity:0}15%{opacity:.85}to{width:520px;height:520px;opacity:0}}@keyframes particle-purple-fireball{0%{transform:translate(0) scale(1);opacity:1}40%{opacity:.9}80%{opacity:.5}to{transform:translate(calc(var(--dx) * 1.3),calc(var(--dy) * 1.3)) scale(.2);opacity:0}}.departure-effect{position:fixed;inset:0;z-index:30;pointer-events:none;overflow:hidden;isolation:isolate}.departure-effect.departure--fireball{--fx: #ff5a1f;--fx2: #ffb300}.departure-effect.departure--purple-fireball{--fx: #b026ff;--fx2: #e066ff}.departure-effect.departure--lightning{--fx: #67e8f9;--fx2: #a855f7}.departure-effect.departure--solar-radiance{--fx: #fbbf24;--fx2: #fffbeb}.departure-effect.departure--toxic-blight{--fx: #22c55e;--fx2: #15803d}.departure-effect.departure--blood-tithe{--fx: #e60026;--fx2: #990011}.departure-effect.departure--tidal-surge{--fx: #00d2ff;--fx2: #0048ba}.departure-effect.departure--frostbite{--fx: #bdeaff;--fx2: #4a9ec9}.departure-effect.departure--void-rift{--fx: #d0a5ff;--fx2: #7043a4}.departure-effect.departure--emberfall{--fx: #ff9a38;--fx2: #e94225}.departure-effect.departure--lightsaber{--fx: #00f2fe;--fx2: #0077ff}.departure__sigil{position:absolute;left:var(--start-x);top:var(--start-y);transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;border:2px solid var(--fx, #ffaa00);box-shadow:0 0 35px var(--fx, #ffaa00),inset 0 0 25px var(--fx2, #ff5500);animation:departure-sigil-pulse .65s cubic-bezier(.1,.8,.2,1) forwards;pointer-events:none}.departure__sigil:before{content:"";position:absolute;inset:-12px;border-radius:50%;border:1px dashed var(--fx2, #fff);animation:departure-sigil-spin .65s linear forwards}@keyframes departure-sigil-pulse{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}25%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{transform:translate(-50%,-50%) scale(1.6);opacity:0}}@keyframes departure-sigil-spin{0%{transform:rotate(0);opacity:0}25%{opacity:.9}to{transform:rotate(90deg);opacity:0}}.departure__runner{position:absolute;left:var(--start-x);top:var(--start-y);transform:translate(-50%,-50%);z-index:4;animation:departure-flight .88s cubic-bezier(.2,.7,.25,1) forwards}@keyframes departure-flight{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}12%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}85%{opacity:1}to{transform:translate(calc(-50% + var(--to-x) * 130vmax),calc(-50% + var(--to-y) * 130vmax)) scale(1.4);opacity:0}}.departure__wander{position:relative;display:flex;align-items:center;justify-content:center;animation:departure-wander .28s ease-in-out infinite alternate}@keyframes departure-wander{0%{transform:translate(-15px,12px) rotate(calc(var(--travel-angle) - 14deg))}to{transform:translate(15px,-12px) rotate(calc(var(--travel-angle) + 14deg))}}.departure__core{width:38px;height:38px;border-radius:50%;background:radial-gradient(circle,#ffffff 25%,var(--fx, #ffaa00) 65%,var(--fx2, #ff4400) 100%);box-shadow:0 0 25px 8px var(--fx, #ffaa00),0 0 50px 18px var(--fx2, #ff4400)}.departure__trail{position:absolute;top:50%;left:50%;width:120px;height:22px;border-radius:999px;transform-origin:center right;transform:translate(-100%,-50%) rotate(var(--travel-angle));background:linear-gradient(90deg,transparent 0%,var(--fx2, #ff4400) 35%,var(--fx, #ffaa00) 80%,#ffffff 100%);filter:blur(2px);opacity:.9}.departure__hud{position:absolute;top:max(18px,var(--start-y) - 65px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:#0e1611f0;border:1px solid var(--fx, #ffaa00);box-shadow:0 8px 32px #000000d9,0 0 20px #ffffff26;border-radius:999px;padding:6px 16px;font-family:DM Sans,sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;color:#fff6e0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:departure-hud-fade .88s ease-out forwards;white-space:nowrap;z-index:10}.departure__hud-glyph{font-size:15px}.departure__hud-arrow{color:var(--fx, #ffaa00);font-size:14px}@keyframes departure-hud-fade{0%{opacity:0;transform:translate(-50%) translateY(12px) scale(.92)}15%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%) translateY(-10px) scale(.96)}}.commander-sheet{max-width:480px}.commander-search-form{width:100%}.commander-search-wrapper{position:relative;display:flex;align-items:center;width:100%;margin:12px 0 6px}.commander-search-icon{position:absolute;left:14px;color:#cbb47f;pointer-events:none}.commander-search-input{height:48px;width:100%;padding:0 42px;border:1px solid #a68e5a65;color:#f7edd4;background:#0d1b16;outline:0;font-size:14px;box-sizing:border-box;border-radius:2px;font-family:inherit}.commander-search-input:focus{border-color:#e3c781;box-shadow:0 0 12px #e3c78133}.commander-search-input::placeholder{color:#7b887a;font-size:13px}.commander-search-spinner{position:absolute;right:14px;color:#d8be7b;animation:spin 1s linear infinite}.commander-search-clear{position:absolute;right:10px;background:none;border:none;color:#9ea499;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center}.commander-search-clear:hover{color:#f1d898}.commander-suggestions-list{list-style:none;margin:4px 0 12px;padding:0;max-height:155px;overflow-y:auto;background:#0d1a15;border:1px solid #8e7a5066;border-radius:2px;text-align:left}.commander-suggestion-btn{width:100%;display:flex;align-items:center;gap:8px;padding:10px 14px;background:none;border:none;border-bottom:1px solid #1f3024;color:#dcd0b5;font:500 13px DM Sans,sans-serif;text-align:left;cursor:pointer;transition:background .12s,color .12s}.commander-suggestion-btn:hover{background:#1e3326;color:#fdefd2}.commander-suggestion-icon{color:#d4b574;flex-shrink:0}.commander-preview-container{margin:14px 0 10px}.commander-preview{position:relative;width:100%;height:170px;border-radius:3px;overflow:hidden;border:1px solid #c9b07977;background:#09120d;box-shadow:0 8px 24px #0009;display:flex;align-items:center;justify-content:center}.commander-preview__img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.commander-preview__overlay{position:absolute;inset-inline:0;bottom:0;padding:22px 14px 10px;background:linear-gradient(transparent,#0a100cf2 75%);display:flex;align-items:center;gap:8px;color:#fff2d8}.commander-preview__crown{color:#e5c782;flex-shrink:0}.commander-preview__title{font:600 13px Cinzel,serif;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 2px 8px rgba(0,0,0,.9)}.commander-preview--empty,.commander-preview--loading{flex-direction:column;gap:10px;color:#9a9e8f;font-size:12px;padding:20px;text-align:center}.commander-empty-icon{color:#917c52}.commander-spinner{color:#dfbf78;animation:spin 1s linear infinite}.commander-error{margin:8px 0}.commander-actions{display:flex;flex-direction:column;gap:8px;margin-top:14px}.commander-confirm-btn{margin:0}.commander-confirm-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.commander-banish-btn{margin:0}.commander-banish-btn:disabled{opacity:.45;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tile{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse 80% 90% at 50% 50%,#695151,#422a37 72%,#2a1c29);border:1px solid #dcc69250;box-shadow:inset 0 0 0 5px #0d232528,inset 0 0 50px #0003;user-select:none;-webkit-user-select:none}.tile:before{content:"✧";position:absolute;font:38vmin Georgia,serif;color:#fce9bb0b;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.tile:after{content:"";position:absolute;inset:8px;border:1px solid #f0d7a32e;pointer-events:none}.tile--1{background:radial-gradient(ellipse at center,#536651,#314738 72%,#1e332d)}.tile--2{background:radial-gradient(ellipse at center,#53657a,#32485c 72%,#1e3449)}.tile--3{background:radial-gradient(ellipse at center,#796344,#51402f 72%,#392a23)}.tile--4{background:radial-gradient(ellipse at center,#62516d,#42354f 72%,#30263c)}.tile--5{background:radial-gradient(ellipse at center,#597070,#324e4d 72%,#223b3d)}.tile--away{filter:saturate(.55)}.tile__grain{position:absolute;inset:0;pointer-events:none;opacity:.24;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");mix-blend-mode:screen}.tile__header{width:100%;display:flex;align-items:center;gap:12px;padding:clamp(14px,3vh,32px) clamp(16px,3.5vw,60px) 0;z-index:1;box-sizing:border-box}.tile__symbol{width:42px;height:42px;background:transparent;padding:0;border:1px solid #f7dfa570;border-radius:50%;display:grid;place-items:center;font:26px Georgia,serif;color:#ffe1a4;box-shadow:0 0 20px #0003,inset 0 0 18px #ffda9b30;flex:none}.tile__symbol--interactive{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.tile__symbol--interactive:hover{transform:scale(1.05);border-color:#ffe1a4;box-shadow:0 0 25px #ffe1a466,inset 0 0 18px #ffda9b45}.tile__symbol--interactive:active{transform:scale(.96)}.tile__identity{display:flex;flex-direction:column;min-width:90px;flex:1;text-align:left;gap:2px}.tile__identity--interactive{cursor:pointer}.tile__identity--interactive:hover strong{color:#ffe8b5}.tile__commander{display:flex;align-items:center;gap:4px;font:600 clamp(9px,1.1vw,12px) "DM Sans",sans-serif;color:#ecd5a0;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;text-shadow:0 1px 4px rgba(0,0,0,.9)}.tile--compact .tile__commander{font-size:clamp(8px,1vw,10px);max-width:100%}.tile__identity>span,.tile__you,.tile__life-label,.tile__target{font-size:10px;font-weight:700;letter-spacing:.19em}.tile__identity>span{color:#d5c7a9;font-size:9px}.tile__identity strong{font:500 clamp(14px,1.8vw,22px) "Cinzel",serif;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#fff3dc}.tile__badges{margin-left:auto;display:flex;align-items:center;gap:5px;flex-shrink:0}.tile__commander-btn{display:flex;align-items:center;gap:4px;background:#101a15d9;border:1px solid #f6dca06e;color:#ffe2aa;padding:5px 8px;font:700 8px DM Sans,sans-serif;letter-spacing:.12em;cursor:pointer;border-radius:2px;transition:all .15s ease}.tile--has-commander .tile__commander-btn span{display:none}.tile--has-commander .tile__commander-btn{padding:5px 6px}.tile__commander-btn:hover{background:#283a2df2;border-color:#fce3a8;color:#fff4d5;box-shadow:0 0 10px #f6dca040}.tile--compact .tile__commander-btn{padding:3px 6px;font-size:7px;gap:3px}.tile--compact .tile__commander-btn span{display:none}.tile__tax-pill{display:inline-flex;align-items:center;background:#101a15e6;border:1px solid rgba(246,220,160,.35);border-radius:4px;overflow:hidden;height:22px;transition:all .18s ease;box-shadow:0 1px 4px #0006}.tile__tax-pill--active{border-color:#ffd277;background:#263424f2;box-shadow:0 0 10px #ffd27740}.tile__tax-label{padding:0 5px;font:700 8px DM Sans,sans-serif;letter-spacing:.1em;color:#ffe2aa;white-space:nowrap;-webkit-user-select:none;user-select:none}.tile__tax-pill--active .tile__tax-label{color:#fff4d0;font-weight:800;text-shadow:0 0 8px rgba(255,220,140,.5)}.tile__tax-btn{display:flex;align-items:center;justify-content:center;width:18px;height:100%;background:#00000059;border:none;color:#e2cca0;font:700 11px monospace;cursor:pointer;transition:background .12s,color .12s;padding:0}.tile__tax-btn:hover:not(:disabled){background:#f5d28c40;color:#fff}.tile__tax-btn:active:not(:disabled){background:#f5d28c73}.tile__tax-btn:disabled{opacity:.25;cursor:default}.tile__you{border:1px solid #f6dca06e;color:#ffe2aa;padding:6px 8px;font-size:8px}.tile__move-btn{display:inline-flex;align-items:center;gap:4px;background:#162018eb;border:1px solid rgba(245,170,50,.65);border-radius:4px;color:#ffe4a8;font-family:DM Sans,sans-serif;font-size:8px;font-weight:800;letter-spacing:.12em;padding:4px 7px;cursor:pointer;transition:all .18s ease;user-select:none;-webkit-user-select:none;box-shadow:0 2px 8px #00000080,0 0 6px #f5aa3226}.tile__move-btn:hover{background:#f5aa3247;border-color:#f5aa32;color:#fff;box-shadow:0 0 12px #f5aa3273;transform:translateY(-1px)}.tile__move-btn:active{transform:translateY(0)}.tile--compact .tile__move-btn{padding:3px 5px;font-size:7px;gap:2px}.tile__move-btn--active{background:#f5aa3273!important;border-color:#ffd074!important;color:#fff!important;box-shadow:0 0 14px #f5aa32b3!important;animation:pulse-move-btn 1.4s infinite ease-in-out}@keyframes pulse-move-btn{0%,to{box-shadow:0 0 10px #f5aa3280;transform:scale(1)}50%{box-shadow:0 0 18px #f5aa32d9;transform:scale(1.05)}}.tile__seat-badge{display:inline-flex;align-items:center;gap:4px;background:#101712c7;border:1px solid rgba(220,198,146,.35);border-radius:999px;color:#dfcd9d;font-size:8px;font-weight:700;letter-spacing:.12em;padding:4px 7px;cursor:pointer;transition:all .2s ease;user-select:none;-webkit-user-select:none;box-shadow:0 2px 6px #0006}.tile__seat-badge:hover{background:#dcc69238;border-color:#dcc692bf;color:#fff2d0;transform:translateY(-1px)}.tile__seat-badge:active{transform:translateY(0)}.tile--compact .tile__seat-badge{padding:3px 5px;font-size:7px;gap:2px}.tile__seat-badge--source{background:#f5aa3266!important;border-color:#f5aa32!important;color:#fff!important;box-shadow:0 0 12px #f5aa3299!important;animation:pulse-seat-source 1.2s infinite ease-in-out}.tile__seat-badge--target{background:#64dc964d!important;border-color:#64dc96!important;color:#c6ffe2!important;box-shadow:0 0 12px #64dc9680!important}@keyframes pulse-seat-source{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.tile[draggable=true]{cursor:grab}.tile--dragging{opacity:.45;filter:grayscale(.5);border:2px dashed #f5aa32!important;cursor:grabbing!important}.tile--drag-over{border:2px solid #64dc96!important;box-shadow:0 0 25px #64dc968c,inset 0 0 25px #64dc964d!important;transform:scale(.985)}.tile--swap-source,.tile--moving-source{outline:2px solid #f5aa32;outline-offset:-2px}.tile--swap-target,.tile--moving-target{cursor:pointer!important;transition:outline .2s ease,box-shadow .2s ease}.tile--swap-target:hover{outline:2px dashed #64dc96;outline-offset:-2px;box-shadow:inset 0 0 20px #64dc9633}.tile__swap-target-overlay{position:absolute;inset:0;z-index:15;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:#0c120ee6;border:2px dashed #f5aa32;border-radius:inherit;color:#ffe6aa;cursor:pointer;font-family:DM Sans,sans-serif;font-size:clamp(12px,2.2vw,16px);font-weight:800;letter-spacing:.15em;text-transform:uppercase;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);box-shadow:inset 0 0 35px #f5aa3247,0 0 24px #f5aa3259;animation:pulse-swap-overlay 1.6s infinite ease-in-out;padding:16px;box-sizing:border-box;transition:all .2s ease}.tile__swap-target-overlay:hover,.tile__swap-target-overlay:focus-visible{background:#162019f2;border-color:#ffd885;border-style:solid;color:#fff;box-shadow:inset 0 0 45px #f5aa3280,0 0 30px #f5aa3299;transform:scale(.99)}@keyframes pulse-swap-overlay{0%,to{border-color:#f5aa32a6;box-shadow:inset 0 0 25px #f5aa3233,0 0 16px #f5aa3240}50%{border-color:#f5aa32;box-shadow:inset 0 0 40px #f5aa326b,0 0 26px #f5aa327a}}.tile--has-commander:before{opacity:0}.tile--has-commander .tile__life strong{text-shadow:0 4px 20px #000,0 0 35px #000c,0 0 55px #fbd8a542}.tile--has-commander .tile__identity strong{text-shadow:0 2px 10px #000,0 0 20px #000c}.tile__center{display:flex;align-items:center;justify-content:center;flex-direction:column;flex:1;min-height:0;width:100%;position:relative;z-index:1}.tile__tap-zones{position:absolute;inset:0;display:flex;pointer-events:none;z-index:2}.tile__tap-left,.tile__tap-right{flex:1;height:100%;pointer-events:auto;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;color:#f2dfb759;transition:background .14s ease,color .14s ease;user-select:none;-webkit-user-select:none;touch-action:manipulation}.tile__tap-left{justify-content:flex-start;padding-left:clamp(10px,2.5vw,24px)}.tile__tap-right{justify-content:flex-end;padding-right:clamp(10px,2.5vw,24px)}.tile__tap-left:hover,.tile__tap-right:hover{color:#f2dfb7cc}.tile__tap-left:active{background:radial-gradient(circle at left center,rgba(235,75,75,.22),transparent 75%);color:#ff9d9d}.tile__tap-right:active{background:radial-gradient(circle at right center,rgba(46,204,113,.22),transparent 75%);color:#9dffb0}.tile__tap-left:disabled,.tile__tap-right:disabled{pointer-events:none;opacity:.3}.tile__life{display:flex;align-items:flex-start;gap:12px;color:#f2dfb7;pointer-events:none}.tile__life svg{margin-top:14px;filter:drop-shadow(0 0 8px #0006)}.tile__life strong{font:400 clamp(72px,18vh,180px) "Cinzel",serif;line-height:1;letter-spacing:-.075em;padding-right:.07em;color:#fff6e9;text-shadow:0 6px 20px #0006,0 0 55px #fbd8a542;font-variant-numeric:tabular-nums}.tile__life-label{color:#e8d5ad;font-size:9px;letter-spacing:.35em;pointer-events:none}.tile__delta{position:absolute;top:15%;left:50%;transform:translate(-50%,-50%);z-index:6;pointer-events:none;font:700 clamp(18px,3.5vw,28px) "Cinzel",serif;font-variant-numeric:tabular-nums;padding:4px 14px;border-radius:999px;letter-spacing:-.02em;animation:deltaPop .18s cubic-bezier(.175,.885,.32,1.275);box-shadow:0 4px 18px #000000b3;white-space:nowrap}.tile__delta--gain{background:#144426f2;border:1px solid #7ce499;color:#aaffb8;text-shadow:0 0 10px #42e883}.tile__delta--loss{background:#501414f2;border:1px solid #e26e6e;color:#ffb8b8;text-shadow:0 0 10px #ff5252}@keyframes deltaPop{0%{transform:translate(-50%,-35%) scale(.7);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.tile__actions{width:min(100% - 32px,520px);height:clamp(52px,8vh,88px);margin-bottom:clamp(12px,2.5vh,28px);display:flex;justify-content:space-between;align-items:center;gap:clamp(4px,1vw,12px);z-index:3}.tile__actions button,.tile__target{color:#fff2d6;background:#09191550;border:1px solid #f2d9a07d;display:grid;place-items:center;height:100%;transition:background .16s,transform .16s;box-shadow:inset 0 1px #ffffff20;cursor:pointer}.tile__actions button:active,.tile__target:active{background:#e5c47c80;transform:scale(.96)}.tile__actions button:hover,.tile__target:hover{background:#e5c47c35}.tile__actions button:disabled,.tile__target:disabled{opacity:.4;cursor:default}.tile__step{width:clamp(40px,7vw,75px);font:500 clamp(15px,2vw,22px) "Cinzel",serif}.tile__divider{color:#e6c788;font-size:18px;margin:0 3px}.tile__target-inline{flex:1;max-width:240px;height:100%;display:flex;align-items:center;justify-content:center;gap:6px;background:#16241cd9;border:1px solid rgba(229,196,124,.6);color:#fff2d6;font-family:DM Sans,sans-serif;font-size:clamp(9px,1.4vw,11px);font-weight:700;letter-spacing:.12em;padding:0 10px;cursor:pointer;border-radius:3px;transition:all .16s ease;z-index:3}.tile__target-inline:hover{background:#2d4634f2;border-color:#ffd77d;color:#fff;box-shadow:0 0 12px #e5c47c4d}.tile__target-inline:active{transform:scale(.97)}.tile__target-inline:disabled{opacity:.4;cursor:default}.tile--compact .tile__target-inline span{display:none}.tile__target{z-index:3;display:flex;justify-content:center;gap:10px;width:min(100% - 32px,400px);height:clamp(48px,7vh,72px);margin-bottom:clamp(12px,2.5vh,28px);font-size:11px}.tile--compact .tile__header{padding:clamp(8px,1.6vh,16px) clamp(10px,2vw,20px) 0;gap:8px}.tile--compact .tile__symbol{width:28px;height:28px;font-size:18px}.tile--compact .tile__identity>span{font-size:7px;letter-spacing:.12em}.tile--compact .tile__identity strong{font-size:clamp(11px,1.6vw,16px)}.tile--compact .tile__you{font-size:7px;padding:4px 6px}.tile--compact .tile__life strong{font-size:clamp(48px,9vh,96px)}.tile--compact .tile__life svg{margin-top:6px;width:13px;height:13px}.tile--compact .tile__life-label{font-size:7px;letter-spacing:.25em}.tile--compact .tile__actions{height:clamp(36px,5.5vh,52px);margin-bottom:clamp(6px,1.2vh,14px);width:calc(100% - 20px);gap:4px}.tile--compact .tile__step{width:clamp(30px,4.5vw,44px);font-size:clamp(12px,1.4vw,15px)}.tile--compact .tile__divider{font-size:12px;margin:0}.tile--compact .tile__target{height:clamp(36px,5.2vh,48px);margin-bottom:clamp(6px,1.2vh,14px);font-size:9px;width:calc(100% - 20px);letter-spacing:.12em}.tile--compact .tile__tap-left{padding-left:8px}.tile--compact .tile__tap-right{padding-right:8px}.tile--compact .tile__tax-pill{height:18px}.tile--compact .tile__tax-btn{width:14px;font-size:9px}.tile--compact .tile__tax-label{font-size:7px;padding:0 3px}.gateway{width:100%;height:100%;min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;text-align:center;padding:max(20px,env(safe-area-inset-top,20px)) 16px max(24px,env(safe-area-inset-bottom,24px));background:radial-gradient(ellipse 70% 50% at 50% 35%,#3e4a39,#19271e 55%,#0d1613);position:relative;box-sizing:border-box}.gateway__inner{margin:auto 0;width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;box-sizing:border-box}.gateway__ornament{font:72px Georgia,serif;color:#d8b979;text-shadow:0 0 50px #b69957}.gateway__kicker,.gateway__form label,.gateway__footnote,.gateway__bottom{font-size:10px;font-weight:700;letter-spacing:.19em}.gateway__kicker{color:#c9b586;margin:12px 0}.gateway h1{font:400 clamp(43px,8vw,76px) "Cinzel",serif;letter-spacing:-.06em;margin:0}.gateway h1 em{font-style:normal;color:#d9ba76}.gateway__sub{color:#b8beb0;line-height:1.7;font-size:14px;margin:12px 0 30px}.gateway__form{width:min(100%,440px);border:1px solid #ae9c7160;background:linear-gradient(145deg,#293328,#17221d);padding:24px;text-align:left;box-shadow:0 20px 70px #0008,inset 0 0 0 5px #17231e;box-sizing:border-box}.gateway__tabs{display:flex;border-bottom:1px solid #bca6704c;margin-bottom:24px}.gateway__tabs button{flex:1;background:none;border:0;color:#899689;padding:0 0 16px;letter-spacing:.15em;font-size:10px;font-weight:700;cursor:pointer}.gateway__tabs .active{color:#f1d38f;border-bottom:2px solid #dfbd75}.gateway__form label{display:block;color:#c8b68f;margin:17px 0 9px}.gateway__form input{height:52px;width:100%;padding:0 14px;border:1px solid #a68e5a65;color:#f7edd4;background:#0d1b16;outline:0;font-size:16px;box-sizing:border-box}.gateway__form input:focus{border-color:#e3c781}.gateway__form input::placeholder{color:#879287}.gateway__presets{margin:17px 0 9px}.gateway__presets label{display:block;color:#c8b68f;margin:0 0 8px;font-size:10px;font-weight:700;letter-spacing:.19em}.gateway__life-toggle{display:flex;gap:8px}.gateway__life-toggle button{flex:1;height:44px;background:#0d1b16;border:1px solid #a68e5a65;color:#d8c7a2;font:600 13px Cinzel,serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:border-color .15s,background .15s,color .15s}.gateway__life-toggle button span{font:700 9px DM Sans,sans-serif;letter-spacing:.14em;opacity:.75}.gateway__life-toggle button.active{border-color:#f1d38f;background:#243529;color:#f7edd4;box-shadow:inset 0 0 12px #f1d38f33}.gateway__custom-life{margin-top:10px}.gateway__custom-life label{font-size:9px;color:#bfae87;margin-bottom:5px}.gateway__custom-life-field{position:relative;display:flex;align-items:center}.gateway__custom-life-field input{height:44px;font-family:Cinzel,serif;font-size:18px;font-weight:600;color:#ffe6aa;padding-right:42px;-moz-appearance:textfield}.gateway__custom-life-field input::-webkit-outer-spin-button,.gateway__custom-life-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.gateway__custom-life-suffix{position:absolute;right:14px;font:700 11px DM Sans,sans-serif;letter-spacing:.12em;color:#c9b482;pointer-events:none}.gateway__submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:57px;border:1px solid #e5ce9180;background:linear-gradient(135deg,#e8ca88,#bd9b5d);color:#18201a;font-size:11px;font-weight:800;letter-spacing:.14em;margin-top:25px;box-shadow:0 8px 25px #0006;cursor:pointer}.gateway__submit:hover{filter:brightness(1.1)}.gateway__footnote{text-align:center;color:#a6ae9d;font-size:9px;margin:18px 0 0}.gateway__footnote span{color:#d7b97b;padding:0 9px}.gateway__bottom{margin-top:24px;color:#9b9f8d;font-size:9px;letter-spacing:.19em;font-weight:700}@media(max-height:700px){.gateway{padding:max(12px,env(safe-area-inset-top,12px)) 12px max(16px,env(safe-area-inset-bottom,16px))}.gateway__ornament{font-size:44px}.gateway h1{font-size:clamp(34px,7vw,54px)}.gateway__sub{margin:8px 0 16px;font-size:13px}}.sheet-backdrop{position:fixed;inset:0;background:#000c;z-index:50;display:flex;align-items:flex-end;justify-content:center;animation:backdrop .18s ease-out}.damage-sheet,.attack-sheet{position:relative;width:min(100%,500px);max-height:calc(100dvh - 20px);overflow-y:auto;background:radial-gradient(ellipse at top,#324433,#17231d 74%);border:1px solid #d8bd7b8c;border-bottom:0;box-shadow:0 -15px 70px #000a,inset 0 0 0 6px #14221d;text-align:center;padding:32px clamp(20px,5vw,40px) max(24px,env(safe-area-inset-bottom));animation:rise .22s ease-out;box-sizing:border-box}.sheet-close{position:absolute;right:18px;top:18px;background:none;border:0;color:#d8c7a3;padding:6px;cursor:pointer}.sheet-kicker{color:#d7b97c;font-size:9px;font-weight:700;letter-spacing:.19em}.damage-sheet h2{font:400 clamp(24px,6vw,36px) "Cinzel",serif;margin:10px 0 6px}.damage-sheet h2 em{font-style:normal;color:#d9ba76}.damage-sheet p{font-size:13px;color:#bcc5b5;line-height:1.6;margin:0 0 16px}.sheet-target-commander{display:inline-flex;align-items:center;gap:8px;background:#121e18d9;border:1px solid rgba(229,196,124,.45);padding:4px 12px;border-radius:999px;margin-bottom:10px}.sheet-target-commander__art{width:24px;height:24px;border-radius:50%;object-fit:cover;border:1px solid #f5d58b;box-shadow:0 0 8px #f5d58b4d}.sheet-target-commander__icon{font-size:14px}.sheet-target-commander__name{font:700 11px DM Sans,sans-serif;letter-spacing:.08em;color:#faebcb}.attack-target-picker{margin-bottom:16px;text-align:left}.attack-target-label{display:block;font-size:9px;font-weight:700;letter-spacing:.18em;color:#c9b88a;margin-bottom:8px;text-align:center}.attack-target-chips{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;max-height:160px;overflow-y:auto}.attack-target-chip{background:#121d17d9;border:1px solid rgba(169,151,106,.35);padding:8px 10px;border-radius:6px;display:flex;align-items:center;gap:8px;color:#e4d8ba;cursor:pointer;transition:all .15s ease;text-align:left}.attack-target-chip:hover{border-color:#e1c37899;background:#1e3026d9}.attack-target-chip.selected{border-color:#f5d58b;background:linear-gradient(135deg,#551e14a6,#2d1914d9);box-shadow:0 0 12px #dc50324d,inset 0 0 0 1px #f5d58b}.target-chip__symbol{font-size:16px;color:#dfbd75}.target-chip__art{width:28px;height:28px;border-radius:50%;object-fit:cover;border:1px solid #f5d58b;box-shadow:0 0 6px #f5d58b59;flex-shrink:0}.target-chip__info{flex:1;min-width:0;display:flex;flex-direction:column}.target-chip__info strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f7edd4}.target-chip__info small{font-size:9px;color:#b5aa8c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.target-chip__life{font:700 13px Cinzel,serif;color:#e8a598}.spell-selector-label{font-size:9px;font-weight:700;letter-spacing:.2em;color:#cbb47f;margin:10px 0 8px;text-align:left}.spell-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:6px;margin-bottom:16px}.spell-chip{display:flex;align-items:center;gap:8px;padding:8px 10px;background:#111a14;border:1px solid #7d6e4b66;color:#d1c7ab;font:700 9px DM Sans,sans-serif;letter-spacing:.12em;cursor:pointer;border-radius:2px;transition:all .15s ease;text-align:left;-webkit-user-select:none;user-select:none}.spell-chip:hover{background:#1c2a21;border-color:#d9b874}.spell-chip.selected{background:linear-gradient(135deg,#304432,#1b2d22);border-color:#f1d38f;color:#fff4d6;box-shadow:0 0 10px #dfbd7533,inset 0 0 8px #dfbd7522}.spell-chip__glyph{font-size:13px;line-height:1}.spell-chip__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.damage-presets{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.damage-presets button{height:48px;border:1px solid #a7976c90;color:#e9d7ad;background:#18261f;font:500 20px Cinzel,serif;cursor:pointer}.damage-presets button.selected{border-color:#f5d58b;background:#b39155;color:#111d17}.sheet-stepper{height:88px;display:flex;align-items:center;justify-content:center;gap:20px;margin:14px 0 6px}.sheet-stepper button{width:48px;height:48px;display:grid;place-items:center;background:#13221b;border:1px solid #bea46e;color:#f3deb0;cursor:pointer;border-radius:4px;transition:all .15s ease}.sheet-stepper button:hover{background:#233a2e;border-color:#f5d58b;color:#fff}.sheet-stepper__input-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center}.sheet-stepper__input{font:500 clamp(36px,8vw,48px) "Cinzel",serif;color:#fff6e8;background:transparent;border:1px solid transparent;border-bottom:1px dashed rgba(229,196,124,.4);text-align:center;width:130px;padding:0;margin:0;outline:none;font-variant-numeric:tabular-nums;-moz-appearance:textfield}.sheet-stepper__input::-webkit-outer-spin-button,.sheet-stepper__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.sheet-stepper__input:focus{border-bottom-color:#f5d58b;border-bottom-style:solid;background:#13221b99}.sheet-stepper small{display:block;font:700 9px DM Sans,sans-serif;letter-spacing:.23em;color:#d5c097;margin-top:4px}.sheet-cast{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:57px;border:1px solid #e5ce9180;background:linear-gradient(135deg,#e8ca88,#bd9b5d);color:#18201a;font-size:11px;font-weight:800;letter-spacing:.14em;margin-top:11px;box-shadow:0 8px 25px #0006;cursor:pointer}.sheet-cast:hover{filter:brightness(1.1)}.sheet-hint{color:#a9b19d;font-size:9px;margin-top:15px;letter-spacing:.05em}@keyframes backdrop{0%{opacity:0}}@keyframes rise{0%{transform:translateY(30px);opacity:0}}.menu-sheet{position:relative;width:min(100%,500px);max-height:calc(100dvh - 20px);overflow-y:auto;background:radial-gradient(ellipse at top,#324433,#17231d 74%);border:1px solid #d8bd7b8c;border-bottom:0;box-shadow:0 -15px 70px #000a,inset 0 0 0 6px #14221d;text-align:center;padding:32px clamp(20px,5vw,40px) max(24px,env(safe-area-inset-bottom));animation:rise .22s ease-out;box-sizing:border-box}.menu-sheet h2{font:400 clamp(24px,6vw,36px) "Cinzel",serif;margin:10px 0 6px}.menu-sheet__desc{font-size:13px;color:#bcc5b5;line-height:1.6;margin:0 0 16px}.menu-sheet__code{border:1px solid #c4aa75;margin:8px 0 16px;padding:14px;color:#f4d990;font:500 34px Cinzel,serif;letter-spacing:.35em}.menu-sheet__life-section{margin:17px 0 9px;text-align:left}.menu-sheet__life-section label{display:block;color:#c8b68f;margin:0 0 8px;font-size:10px;font-weight:700;letter-spacing:.19em}.menu-sheet__life-toggle{display:flex;gap:8px}.menu-sheet__life-toggle button{flex:1;height:44px;background:#0d1b16;border:1px solid #a68e5a65;color:#d8c7a2;font:600 13px Cinzel,serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:border-color .15s,background .15s,color .15s}.menu-sheet__life-toggle button span{font:700 9px DM Sans,sans-serif;letter-spacing:.14em;opacity:.75}.menu-sheet__life-toggle button.active{border-color:#f1d38f;background:#243529;color:#f7edd4;box-shadow:inset 0 0 12px #f1d38f33}.menu-sheet__custom-life{display:flex;gap:8px;margin-top:8px}.menu-sheet__custom-life input{flex:1;height:44px;background:#0d1b16;border:1px solid #a68e5a65;color:#ffe6aa;font-family:Cinzel,serif;font-size:18px;font-weight:600;text-align:center;outline:0;box-sizing:border-box;-moz-appearance:textfield}.menu-sheet__custom-life input::-webkit-outer-spin-button,.menu-sheet__custom-life input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.menu-sheet__custom-life input:focus{border-color:#f1d38f}.menu-sheet__apply-life{flex:1.2;height:44px;background:#18281e;border:1px solid #e5ce9180;color:#fbeac4;font-family:DM Sans,sans-serif;font-size:10px;font-weight:800;letter-spacing:.12em;cursor:pointer;transition:all .15s ease}.menu-sheet__apply-life:hover{background:#274030;border-color:#f1d38f;color:#fff}.menu-sheet__action{height:50px;display:flex;align-items:center;justify-content:center;gap:12px;width:100%;background:#1d3025;border:1px solid #a9976a77;color:#f1ddaf;font-size:11px;font-weight:700;letter-spacing:.15em;margin:8px 0;cursor:pointer;transition:background .15s ease}.menu-sheet__action:hover{background:#304b36}.menu-sheet__action--leave{color:#d9aca5;border-color:#a06e6877;background:#352620}.menu-sheet__action--leave:hover{background:#4a2f26}.menu-sheet__status{display:flex;justify-content:space-between;color:#adaf96;font-size:9px;font-weight:700;letter-spacing:.19em;margin-top:20px}*{box-sizing:border-box}html{background:#10120f}body{margin:0;color:#e9e2d1;font-family:DM Sans,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}::selection{background:#b49b5a;color:#11140f}.app-shell{min-height:100vh;position:relative;overflow:hidden;background:radial-gradient(ellipse 64% 48% at 50% 19%,#283025 0%,#171c18 48%,transparent 100%),#10130f}.app-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.55' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.19'/%3E%3C/svg%3E");mix-blend-mode:screen}.ambient{position:absolute;pointer-events:none;border-radius:50%;filter:blur(85px);opacity:.17}.ambient--one{width:600px;height:500px;background:#927743;left:-300px;top:380px}.ambient--two{width:600px;height:500px;background:#737e64;right:-350px;top:100px}.error{color:#ffb5a8;font-size:12px;margin:12px 0 0}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden;background:#101712;touch-action:manipulation;-webkit-touch-callout:none}button:focus-visible,input:focus-visible{outline:2px solid #f1d68c;outline-offset:2px}.board{width:100%;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;position:relative;background:#101712;touch-action:manipulation;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px);box-sizing:border-box;display:flex;flex-direction:column}.board__tiles{width:100%;height:100%;flex:1;min-height:0;display:grid;gap:3px;background:#080f0c;overflow:hidden;box-sizing:border-box;padding-top:max(46px,calc(env(safe-area-inset-top,0px) + 44px))}.board--2 .board__tiles{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(0,1fr))}.board--3 .board__tiles,.board--4 .board__tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.board--5 .board__tiles,.board--6 .board__tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}@media(orientation:landscape){.board--2 .board__tiles{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:1fr}.board--5 .board__tiles,.board--6 .board__tiles{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}}.empty-seat{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#d8c7a2;background:radial-gradient(ellipse at center,#263529,#151e18 75%);border:1px dashed #d8bc785c;min-height:0;position:relative;cursor:pointer;padding:10px;box-sizing:border-box}.empty-seat:hover{background:#26382d}.empty-seat__sigil{font:clamp(42px,8vh,80px) Georgia,serif;color:#bda365;line-height:1}.empty-seat strong{font:500 clamp(12px,1.6vw,18px) "Cinzel",serif;letter-spacing:.05em}.empty-seat>span:nth-of-type(2){font-size:8px;color:#a69d82}.empty-seat svg{color:#d7bb79}.board__offline,.board__error{position:absolute;z-index:15;left:50%;transform:translate(-50%);background:#141d17;border:1px solid #d9b976;color:#f3d79c;box-shadow:0 12px 35px #0009;display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:12px;white-space:nowrap}.board__offline{top:16px}.board__error{bottom:15px;white-space:normal;max-width:90vw;cursor:pointer}.board__controls-bar{position:absolute;top:max(10px,env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:12;display:flex;align-items:center;gap:8px;background:#0e1611e0;border:1px solid rgba(217,189,124,.5);box-shadow:0 8px 24px #000000b3,inset 0 0 12px #d9bd7c1a;border-radius:999px;padding:4px 6px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.board__pill-btn{background:none;border:1px solid transparent;color:#eeddb0;height:34px;padding:0 11px;border-radius:999px;display:flex;align-items:center;gap:6px;font-size:10px;font-weight:700;letter-spacing:.12em;cursor:pointer;transition:all .16s ease;white-space:nowrap}.board__pill-btn:hover{background:#e5c47c33;border-color:#e5c47c66}.board__pill-btn:active{transform:scale(.96)}.board__pill-btn .glyph{font-size:16px;color:#dfbd75}.board__pill-btn .count{display:flex;align-items:center;gap:3px;font-size:9px;color:#b7b095;border-left:1px solid rgba(189,163,101,.4);padding-left:6px;margin-left:2px}.board__pill-btn--toggle{background:#d9bd7c1f;border-color:#d9bd7c66;color:#fce8bd}.board__pill-btn--attack{background:linear-gradient(135deg,#af2a1cd9,#78160ce6);border-color:#f58c6e99;color:#fff1e5;box-shadow:0 2px 10px #af2a1c66}.board__pill-btn--attack:hover{background:linear-gradient(135deg,#c83220f2,#911a0ff2)}.board__pill-btn--icon{padding:0 9px}.board--focus{display:flex;flex-direction:column}.board--focus .board__tiles{display:flex;width:100%;height:100%;padding-top:0;grid-template-columns:none!important;grid-template-rows:none!important}.board--focus .tile--focus{flex:1;width:100%;height:100%;padding-top:max(48px,env(safe-area-inset-top));padding-bottom:max(75px,env(safe-area-inset-bottom))}.tile--focus .tile__header{padding-top:14px}.tile--focus .tile__life strong{font-size:clamp(120px,30vh,270px)!important;text-shadow:0 8px 30px #000a,0 0 60px #fbd8a560}.tile--focus .tile__actions{width:min(92%,460px);height:clamp(62px,9vh,88px);margin-bottom:8px}.tile--focus .tile__step{width:clamp(55px,12vw,95px);font-size:clamp(20px,3.5vw,28px)}.focus-opponents-bar{position:absolute;bottom:max(10px,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:min(94vw,540px);z-index:12;display:flex;align-items:center;gap:8px;background:#0d1510eb;border:1px solid rgba(217,189,124,.4);box-shadow:0 8px 30px #000c,inset 0 0 14px #d9bd7c14;border-radius:999px;padding:5px 8px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.focus-opponents-list{display:flex;align-items:center;gap:6px;flex:1;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.focus-opponents-list::-webkit-scrollbar{display:none}.opponent-pill{display:flex;align-items:center;gap:6px;height:36px;padding:0 10px;border-radius:999px;background:#18261dcc;border:1px solid rgba(217,189,124,.25);color:#eedcb2;cursor:pointer;flex-shrink:0;transition:all .15s ease}.opponent-pill:hover,.opponent-pill:active{background:#b9281940;border-color:#e1785f99;transform:translateY(-1px)}.opponent-pill__dot{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;border:1px solid rgba(217,189,124,.5)}.opponent-pill__name{font-size:11px;font-weight:600;max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.opponent-pill__life{font:700 13px Cinzel,serif;color:#f7edd4;margin-left:2px}.opponent-pill__sword{color:#d97864;opacity:.7}.focus-attack-btn{height:38px;padding:0 14px;border-radius:999px;background:linear-gradient(135deg,#e8ca88,#bd9b5d);border:1px solid rgba(245,219,158,.8);color:#121a14;font-size:11px;font-weight:800;letter-spacing:.12em;display:flex;align-items:center;gap:6px;cursor:pointer;box-shadow:0 4px 15px #00000080;transition:all .16s ease;flex-shrink:0}.focus-attack-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.focus-attack-btn:active{transform:scale(.96)}.seat-swap-bar{position:fixed;bottom:max(18px,env(safe-area-inset-bottom,18px));left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:14px;background:#0e1410f2;border:1px solid #f5aa32;box-shadow:0 12px 36px #000000d9,0 0 24px #f5aa3266;padding:8px 18px;border-radius:999px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);max-width:calc(100vw - 32px);box-sizing:border-box;animation:swap-bar-slide .25s cubic-bezier(.16,1,.3,1)}@keyframes swap-bar-slide{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.seat-swap-bar__text{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:700;letter-spacing:.12em;color:#f7e2af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seat-swap-bar__text strong{color:#fff}.seat-swap-bar__cancel{background:#f5aa3226;border:1px solid rgba(245,215,140,.6);color:#ffe6aa;font-size:9px;font-weight:800;letter-spacing:.14em;padding:5px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.seat-swap-bar__cancel:hover{background:#f5aa3259;border-color:#ffd074;color:#fff;box-shadow:0 0 10px #f5aa3280}
