
@keyframes pnx-editor-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@keyframes pnx-editor-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.055)}}
@keyframes pnx-editor-drift{0%,100%{transform:translateX(-8px)}50%{transform:translateX(8px)}}
@keyframes pnx-editor-pop{0%{opacity:0;transform:scale(.78)}70%{opacity:1;transform:scale(1.04)}100%{opacity:1;transform:scale(1)}}
@keyframes pnx-editor-glow{0%,100%{filter:drop-shadow(0 0 2px rgba(41,190,255,.2))}50%{filter:drop-shadow(0 0 18px rgba(41,190,255,.85))}}
@keyframes pnx-editor-swing{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes pnx-editor-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.028)}}
@keyframes pnx-editor-orbit{0%,100%{transform:translate3d(0,-7px,0)}25%{transform:translate3d(7px,0,0)}50%{transform:translate3d(0,7px,0)}75%{transform:translate3d(-7px,0,0)}}
@keyframes pnx-editor-tilt{0%,100%{transform:perspective(800px) rotateX(0) rotateY(-4deg)}50%{transform:perspective(800px) rotateX(2deg) rotateY(4deg)}}
@keyframes pnx-editor-spin{to{transform:rotate(1turn)}}
@keyframes pnx-editor-shake{0%,100%{transform:translate3d(0,0,0)}20%{transform:translate3d(-3px,1px,0)}40%{transform:translate3d(3px,-1px,0)}60%{transform:translate3d(-2px,-1px,0)}80%{transform:translate3d(2px,1px,0)}}
@keyframes pnx-editor-rise{0%{opacity:0;transform:translate3d(0,34px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes pnx-editor-slide-in{0%{opacity:0;transform:translate3d(-48px,0,0)}100%{opacity:1;transform:translate3d(0,0,0)}}
@keyframes pnx-editor-flip-in{0%{opacity:0;transform:perspective(900px) rotateY(-68deg) scale(.94)}100%{opacity:1;transform:perspective(900px) rotateY(0) scale(1)}}
@keyframes pnx-scene-spin{to{rotate:1turn}}
.pnx-created-image{display:block;width:auto;height:auto;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}
.pnx-image-icon-host{position:relative!important;isolation:isolate!important;width:var(--pnx-icon-host-width,auto)!important;height:var(--pnx-icon-host-height,auto)!important;min-width:var(--pnx-icon-host-width,0)!important;min-height:var(--pnx-icon-host-height,0)!important;flex:0 0 auto!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;color:transparent!important;font-size:0!important;text-shadow:none!important}
.pnx-image-icon-host>.pnx-replaced-icon{display:none!important}
.pnx-image-icon-host>.pnx-created-image{inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:drop-shadow(0 3px 7px rgba(0,0,0,.34)) drop-shadow(0 0 7px rgba(45,184,255,.22))!important}
body.pnx-cinematic-enabled{background:radial-gradient(circle at 72% 30%,color-mix(in srgb,var(--pnx-scene-b) 13%,transparent),transparent 34%),var(--pnx-scene-a)!important}
body.pnx-cinematic-enabled>main{position:relative;z-index:1}
#pnx-cinematic-stage{position:fixed;z-index:0;inset:0;overflow:hidden;pointer-events:none;transform:translateZ(0)}
#pnx-cinematic-stage canvas{position:absolute;inset:0;width:100%;height:100%}
#pnx-cinematic-portal{position:absolute;left:72%;top:33%;width:var(--pnx-portal-size);aspect-ratio:1;border-radius:50%;opacity:var(--pnx-portal-energy);filter:drop-shadow(0 0 12px var(--pnx-scene-b)) drop-shadow(0 0 42px color-mix(in srgb,var(--pnx-scene-b) 58%,transparent));background:radial-gradient(circle,transparent 45%,color-mix(in srgb,var(--pnx-scene-b) 18%,transparent) 47%,transparent 67%),conic-gradient(from 30deg,transparent,var(--pnx-scene-b),transparent 23%,#8554ff,transparent 46%,var(--pnx-scene-b),transparent 70%);mask:radial-gradient(circle,transparent 53%,#000 57%,#000 63%,transparent 68%);animation:pnx-scene-spin var(--pnx-portal-duration) linear infinite;transform:translate(-50%,-50%);will-change:transform}
@media(max-width:720px){#pnx-cinematic-portal{left:70%;top:24%;opacity:.55}}
@media(prefers-reduced-motion:reduce){#pnx-cinematic-portal,[style*="pnx-editor-"]{animation:none!important}}

.pnx-motion-offscreen,.pnx-motion-offscreen::before,.pnx-motion-offscreen::after{animation-play-state:paused!important}
