"use client"; import type { ReactNode } from "react"; import { motion, useReducedMotion } from "motion/react"; type GlowSphereProps = { children?: ReactNode; className?: string; color?: string; background?: string; /** Sphere width in pixels. */ size?: number; /** 1 is the default pace; 2 is twice as fast. */ speed?: number; }; /* GlowSphere: a lit sphere with a sheen turning across it and a glow that breathes around it. */ export function GlowSphere({ children, className = "", color = "#a78bfa", background = "#06050d", size = 200, speed = 1, }: GlowSphereProps) { const reduce = useReducedMotion(); const shade = `radial-gradient(circle at 35% 30%, #ffffff 0%, ${color} 22%, color-mix(in srgb, ${color} 35%, #000) 62%, #000 100%)`; const sheen = "conic-gradient(from 0deg, transparent, rgba(255,255,255,0.45) 8%, transparent 22%, transparent 55%, rgba(255,255,255,0.25) 65%, transparent 78%)"; return (