.fpl-demon-orb{--demon-size-default:220px;--demon-size-desktop:var(--demon-size,var(--demon-size-default));--demon-size-mobile:var(--demon-size-desktop);--demon-scale:0.84;--logo-gradient-start:#ff5a5f;--logo-gradient-end:#b91c1c;--logo-glow:rgba(255,77,77,0.18);--face:#7f1118;position:relative;display:grid;place-items:center;width:var(--demon-size-desktop);height:var(--demon-size-desktop);overflow:visible;isolation:isolate}.fpl-demon-orb.compact{--demon-size-default:118px}.fpl-demon-mascot-glow{z-index:0;opacity:1;transition:opacity .18s ease,transform .18s ease}.fpl-demon-bubbles{position:absolute;inset:0;z-index:5;overflow:visible;pointer-events:none}.fpl-demon-bubbles span{position:absolute;border-radius:999px;opacity:0;background:radial-gradient(circle,rgba(255,240,140,.98) 0,rgba(255,140,0,.82) 34%,rgba(255,40,0,.34) 66%,transparent 100%);filter:blur(.2px) drop-shadow(0 0 10px rgba(255,160,0,.75)) drop-shadow(0 0 26px rgba(255,60,0,.42));animation:demon-ember linear infinite}.fpl-demon-bubbles span:first-child{left:30%;top:34%;width:16px;height:16px;animation-duration:5s;animation-delay:-1s}.fpl-demon-bubbles span:nth-child(2){left:66%;top:38%;width:11px;height:11px;animation-duration:6s;animation-delay:-3s}.fpl-demon-bubbles span:nth-child(3){left:49%;top:22%;width:7px;height:7px;animation-duration:4.5s;animation-delay:-2s}.fpl-demon-bubbles span:nth-child(4){left:52%;top:46%;width:5px;height:5px;animation-duration:7s;animation-delay:-4s}@keyframes demon-ember{0%{opacity:0;transform:translateY(0) translateX(0) scale(1.4)}8%{opacity:1}to{opacity:0;transform:translateY(-140px) translateX(18px) scale(.12)}}.fpl-demon-mascot{position:relative;z-index:3;display:grid;place-items:center;width:calc(100% * var(--demon-scale));height:calc(100% * var(--demon-scale))}.fpl-demon-orb.motion-hero:not(.compact) .fpl-demon-mascot{animation:fpl-demon-float 7s cubic-bezier(.45,0,.24,1) infinite}.fpl-demon-svg{width:100%;height:auto;overflow:visible;transform-origin:50% 55%;filter:drop-shadow(0 7px 14px rgba(0,0,0,.24))}.demon-antenna,.demon-body,.demon-horn,.demon-leg path,.demon-side{fill:var(--demon-body-gradient)}.demon-horn{filter:brightness(.92) drop-shadow(0 2px 2px rgba(0,0,0,.18))}.demon-antenna,.demon-brow,.demon-eye,.demon-horn,.demon-mouth,.demon-side{transform-box:fill-box}.demon-side-left{transform:translate(45px,40px) rotate(8deg);transform-origin:center}.demon-side-right{transform:translate(-45px,48px) rotate(-10deg);transform-origin:center}.demon-horn{transform-origin:50% 92%}.demon-horn-left{transform-origin:bottom center;transform:translate(18px,46px) rotate(-14deg) scale(.88,1.42)}.demon-horn-right{transform-origin:bottom center;transform:translate(-18px,46px) rotate(14deg) scale(.88,1.42)}.fpl-demon-orb:is(.motion-ambient,.motion-floating,.motion-hero) .demon-horn-left{animation:demon-horn-left-breathe 5.5s ease-in-out infinite}.fpl-demon-orb:is(.motion-ambient,.motion-floating,.motion-hero) .demon-horn-right{animation:demon-horn-right-breathe 5.5s ease-in-out infinite}.demon-antenna-left{transform-origin:82% 92%}.demon-antenna-right{transform-origin:18% 92%}.fpl-demon-orb:is(.motion-floating,.motion-hero) .demon-antenna-left{animation:demon-antenna-wiggle 2.2s ease-in-out infinite}.fpl-demon-orb:is(.motion-floating,.motion-hero) .demon-antenna-right{animation:demon-antenna-wiggle 2.2s ease-in-out infinite reverse}.demon-eye,.demon-eye-pupil{transform-origin:center}.demon-eye-pupil{transition:opacity .16s ease}.fpl-demon-orb.motion-hero .demon-eye-left .demon-eye-pupil{animation:fpl-demon-blink 7s ease-in-out infinite}.fpl-demon-orb.motion-hero .demon-eye-right .demon-eye-pupil{animation:fpl-demon-blink 7s ease-in-out .12s infinite}.demon-brow,.demon-mouth{fill:var(--face);transition:transform .16s ease}.fpl-demon-orb.motion-hero .demon-brow-left{animation:demon-float-top-brow 7s ease-in-out infinite}.fpl-demon-orb.motion-hero .demon-mouth{animation:demon-float-top-smirk 7s ease-in-out infinite}.fpl-demon-orb.motion-hero .demon-side-left{animation:fpl-demon-claw-left 7s cubic-bezier(.8,0,.2,1) infinite}.fpl-demon-orb.motion-hero .demon-side-right{animation:fpl-demon-claw-right 7s cubic-bezier(.8,0,.2,1) infinite}.fpl-demon-hero-mascot-button:is(:hover,:focus,:focus-visible,:active) .demon-eye-pupil,.fpl-demon-orb:is(:hover,:focus,:focus-visible,:active) .demon-eye-pupil{opacity:.95}.fpl-demon-hero-mascot-button:is(:hover,:focus,:focus-visible,:active) .demon-brow-left,.fpl-demon-orb:is(:hover,:focus,:focus-visible,:active) .demon-brow-left{transform:translateY(-5px) rotate(-3deg)}.fpl-demon-hero-mascot-button:is(:hover,:focus,:focus-visible,:active) .fpl-demon-mascot-glow,.fpl-demon-orb:is(:hover,:focus,:focus-visible,:active) .fpl-demon-mascot-glow{opacity:1}@keyframes demon-glow{0%,to{opacity:.72;transform:scale(.985)}50%{opacity:.92;transform:scale(1.025)}}@keyframes demon-idle-float{0%,8%,to{transform:translate(0) scale(1)}48%,56%{transform:translateY(-5px) scale(1.003)}}@keyframes fpl-demon-float{0%,to{transform:translateY(0) rotate(-.25deg)}38%{transform:translateY(-16px) rotate(.35deg)}= 42%{transform:translateY(-16px) rotate(.35deg)}86%{transform:translateY(0) rotate(-.2deg)}92%{transform:translateY(0) rotate(-.2deg)}}@keyframes demon-hero-float{0%,10%,88%,to{transform:translate(0) scale(1)}30%,44%{transform:translateY(-13px) scale(1.01)}58%,70%{transform:translateY(0) scale(1)}79%{transform:translateY(2px) scale(.998)}}@keyframes demon-horn-left-breathe{0%,to{transform:translate(18px,46px) rotate(-14deg) scale(.88,1.42)}50%{transform:translate(20px,42px) rotate(-18deg) scale(.92,1.48)}}@keyframes demon-horn-right-breathe{0%,to{transform:translate(-18px,46px) rotate(14deg) scale(.88,1.42)}50%{transform:translate(-20px,42px) rotate(18deg) scale(.92,1.48)}}@keyframes demon-antenna-wiggle{0%,to{transform:rotate(0deg)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes fpl-demon-claw-left{0%,90%,to{transform:translate(10px)}92%{transform:translate(10px,82px)}93%{transform:translate(10px,-6px)}94.5%{transform:translate(10px)}}@keyframes demon-claw-snap-left{0%,to{transform:rotate(0deg)}92%{transform:rotate(-42deg)}93%{transform:rotate(12deg)}95%{transform:rotate(0deg)}}@keyframes demon-hero-claw-left{0%,88%,to{transform:rotate(0deg)}91%{transform:rotate(-36deg)}93%{transform:rotate(10deg)}95%{transform:rotate(-2deg)}97%{transform:rotate(0deg)}}@keyframes fpl-demon-claw-right{0%,93%,to{transform:translate(-10px)}94.2%{transform:translate(-10px,-34px)}95.2%{transform:translate(-10px,5px)}96.5%{transform:translate(-10px)}}@keyframes demon-claw-snap-right{0%,to{transform:rotate(0deg)}94%{transform:rotate(-28deg)}95.2%{transform:rotate(8deg)}96.8%{transform:rotate(0deg)}}@keyframes demon-hero-claw-right{0%,91%,to{transform:rotate(0deg)}94%{transform:rotate(-24deg)}95.3%{transform:rotate(7deg)}96.4%{transform:rotate(-1deg)}98%{transform:rotate(0deg)}}@keyframes demon-float-top-brow{0%,32%,44%,to{transform:translateY(0) rotate(0deg)}38%,42%{transform:translateY(-5px) rotate(-3deg)}}@keyframes demon-hero-brow{0%,24%,52%,to{transform:translateY(0) rotate(0deg)}34%,43%{transform:translateY(-8px) rotate(-5deg)}}@keyframes demon-float-top-smirk{0%,32%,44%,to{transform:translate(0) scale(1)}38%,42%{transform:translate(6px,2px) scale(1.006)}}@keyframes demon-hero-smirk{0%,24%,52%,to{transform:translate(0) scale(1)}34%,43%{transform:translate(8px,3px) scale(1.01)}}@keyframes fpl-demon-blink{0%,16%,28%,to{opacity:1}21%{opacity:.18}25%{opacity:.72}}@keyframes demon-eye-blink{0%,33%,36%,to{transform:scaleY(1);opacity:1}34.4%{transform:scaleY(.08);opacity:0}}@media (max-width:640px){.fpl-demon-orb{width:var(--demon-size-mobile);height:var(--demon-size-mobile)}}@media (prefers-reduced-motion:reduce){.demon-antenna,.demon-brow,.demon-eye-pupil,.demon-horn,.demon-mouth,.demon-side,.fpl-demon-bubbles span,.fpl-demon-mascot,.fpl-demon-mascot-glow,.fpl-demon-svg{animation:none!important}}.demon-eye-glow-left,.demon-eye-glow-right{fill:#ffe55c;opacity:.95;filter:drop-shadow(0 0 6px rgba(255,230,90,.95)) drop-shadow(0 0 18px rgba(255,160,0,.65));transform-origin:center}.fpl-demon-orb.fpl-demon-orb--cyan-eyes .demon-eye-glow-left,.fpl-demon-orb.fpl-demon-orb--cyan-eyes .demon-eye-glow-right{fill:var(--cyan-bright);opacity:.98;filter:drop-shadow(0 0 4px color-mix(in srgb,var(--cyan-bright),transparent 8%)) drop-shadow(0 0 10px color-mix(in srgb,var(--cyan-mid),transparent 28%))}.fpl-demon-orb.motion-hero .demon-eye-glow-left,.fpl-demon-orb.motion-hero .demon-eye-glow-right{animation:demon-eye-track 5s ease-in-out infinite}@keyframes demon-eye-track{0%,to{transform:translateX(0)}25%{transform:translateX(-6px)}55%{transform:translateX(7px)}80%{transform:translateX(-2px)}}@keyframes demon-eye-scan{0%,to{transform:translateX(0) scale(.55);opacity:.9}45%{transform:translateX(-2px) scale(.55);opacity:1}55%{transform:translateX(2px) scale(.55);opacity:1}}.demon-body{transform:scaleY(1.05);transform-origin:center bottom}.demon-body-compact{fill:var(--demon-body-gradient);filter:drop-shadow(0 8px 18px rgba(0,0,0,.28));transform-origin:center}.fpl-demon-orb.compact .demon-face-mark{transform:translate(360px,455px) scale(1.08);transform-origin:center}.fpl-demon-orb.compact .demon-horn-left,.fpl-demon-orb.compact .demon-horn-right{transform:translateY(52px) scale(.32);opacity:.88}.demon-body{fill:var(--demon-body-gradient);filter:drop-shadow(0 8px 12px rgba(0,0,0,.22))}.demon-eye-left,.demon-eye-right{transform:translateY(-8px)}.demon-brow-left,.demon-brow-right{transform:translateY(-12px)}.demon-mouth{transform:translateY(6px) scale(.82);transform-origin:center}.demon-face-mark{transform:translate(395px,395px) scale(1.18);transform-origin:center}.demon-eye-socket-left,.demon-eye-socket-right{fill:#220204;opacity:.96;filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}.demon-mouth{fill:#2a0204;opacity:.94;filter:drop-shadow(0 2px 2px rgba(0,0,0,.25))}.demon-side-left,.demon-side-right{transform-origin:center;scale:.78}@keyframes demon-eye-pulse{0%,to{opacity:.92;filter:drop-shadow(0 0 5px rgba(255,138,0,.9)) drop-shadow(0 0 16px rgba(255,74,35,.5))}50%{opacity:1;filter:drop-shadow(0 0 9px rgba(255,243,224,.95)) drop-shadow(0 0 24px rgba(255,138,0,.78))}}.fpl-demon-orb.compact .demon-horn-left,.fpl-demon-orb.compact .demon-horn-right{transform:translateY(32px) scale(.42);opacity:.92}.fpl-demon-orb.compact .fpl-demon-mascot{animation:demon-spirit-idle 5s ease-in-out infinite}@keyframes demon-spirit-idle{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}