interface SkeletonProps { className?: string variant?: 'text' | 'circular' | 'rectangular' width?: string | number height?: string | number } function getVariantClasses(variant: SkeletonProps['variant']): string { switch (variant) { case 'circular': return 'rounded-full' case 'rectangular': return 'rounded-lg' case 'text': default: return 'rounded' } } export function Skeleton({ className = '', variant = 'text', width, height, }: SkeletonProps): React.ReactElement { const variantClasses = getVariantClasses(variant) const baseClasses = 'bg-cyber-light animate-pulse' const style: React.CSSProperties = {} if (width) { style.width = typeof width === 'number' ? `${width}px` : width } if (height) { style.height = typeof height === 'number' ? `${height}px` : height } const combinedClasses = `${baseClasses} ${variantClasses} ${className}`.trim() return (