"use client" import * as React from "react" import { useReducedMotion } from "motion/react" import { useTheme } from "@exxatdesignux/ui/hooks/use-color-scheme" import { cn } from "@/lib/utils" export type BlobIntensity = "high" | "normal" export type AnimatedBlobBackgroundProps = { className?: string intensity?: BlobIntensity /** When false, unmounts entirely (saves GPU while Leo is hidden). */ enabled?: boolean /** When true, blobs animate faster (thinking / analyzing). */ thinking?: boolean } export function AnimatedBlobBackground({ className, intensity = "normal", enabled = true, thinking = false, }: AnimatedBlobBackgroundProps) { const reduceMotion = useReducedMotion() ?? false const { resolvedTheme } = useTheme() const isDark = resolvedTheme === "dark" if (!enabled) return null const animateFloat = !reduceMotion const isIntro = intensity === "high" const baseOpacity = isIntro ? 1 : isDark ? 0.55 : 0.85 return (