.halo-fx-stage{position:relative;display:block;height:180px;overflow:hidden;background:radial-gradient(ellipse at center,var(--halo-bg-near,#03020a) 0,var(--halo-bg-mid,#0a0820) 55%,var(--halo-bg-far,#03020a) 100%);padding:0;content-visibility:auto;contain-intrinsic-size:1px 180px}.halo-fx-stage__svg{display:block;width:100%;height:100%}.pattern-preview--inspector.halo-fx-stage{height:280px}.halo-fx-stage__twinkle{fill:var(--halo-twinkle,#ffffff);animation:halo-twinkle 2.4s ease-in-out infinite;opacity:.25}@keyframes halo-twinkle{0%,to{opacity:.2}50%{opacity:.95}}.halo-fx-stage--moon .halo-fx-stage__shape--moon{animation:halo-moon var(--halo-duration,5s) ease-in-out infinite}@keyframes halo-moon{0%,to{filter:drop-shadow(0 0 3px #fff5dd) drop-shadow(0 0 11px #ffba66) drop-shadow(0 0 22px #ff8a3a)}50%{filter:drop-shadow(0 0 calc(5px * var(--halo-intensity, 1)) #fff5dd) drop-shadow(0 0 calc(18px * var(--halo-intensity, 1)) #ffba66) drop-shadow(0 0 calc(38px * var(--halo-intensity, 1)) #ff8a3a)}}.halo-fx-stage--snowflake .halo-fx-stage__shape--snowflake{animation:halo-ice var(--halo-duration,4s) ease-in-out infinite,halo-spin-cw-slow 60s linear infinite;transform-origin:240px 240px;transform-box:fill-box}@keyframes halo-ice{0%,to{filter:drop-shadow(0 0 2px #ffffff) drop-shadow(0 0 9px #a0e8ff) drop-shadow(0 0 20px #4080d0)}50%{filter:drop-shadow(0 0 calc(4px * var(--halo-intensity, 1)) #ffffff) drop-shadow(0 0 calc(14px * var(--halo-intensity, 1)) #a0e8ff) drop-shadow(0 0 calc(36px * var(--halo-intensity, 1)) #4080d0)}}.halo-fx-stage--leaf .halo-fx-stage__shape--leaf{animation:halo-leaf var(--halo-duration,5s) ease-in-out infinite,halo-drift 8s ease-in-out infinite;transform-origin:240px 380px;transform-box:fill-box}@keyframes halo-leaf{0%,to{filter:drop-shadow(0 0 3px #fff0c0) drop-shadow(0 0 11px #ffb050) drop-shadow(0 0 22px #e05010)}50%{filter:drop-shadow(0 0 calc(5px * var(--halo-intensity, 1)) #fff0c0) drop-shadow(0 0 calc(18px * var(--halo-intensity, 1)) #ffb050) drop-shadow(0 0 calc(38px * var(--halo-intensity, 1)) #e05010)}}@keyframes halo-drift{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes halo-spin-cw-slow{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.halo-fx-stage__shape,.halo-fx-stage__twinkle{animation:none}}