{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "styled-button",
  "title": "Styled Button",
  "description": "An elegant styled button with vibrant radial gradients, shadow glows, and smooth active transitions.",
  "files": [
    {
      "path": "registry/radix-nova/styled-button/styled-button.tsx",
      "content": "import * as React from \"react\";\r\nimport Link from \"next/link\";\r\nimport {cva, VariantProps} from \"class-variance-authority\";\r\nimport {cn} from \"@/lib/utils\";\r\n\r\nconst buttonVariants = cva(\r\n    \"inline-flex shrink-0 items-center justify-center rounded-md text-sm font-semibold text-shadow-lg shadow-accent border active:scale-95 transition-all duration-150 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 select-none antialiased\",\r\n    {\r\n        variants: {\r\n            size: {\r\n                sm: \"h-8 px-3\",\r\n                md: \"h-10 px-4\",\r\n                lg: \"h-12 px-6\",\r\n            },\r\n            variant:{\r\n                default: \"bg-radial from-foreground/50 to-muted/80 ring-2 ring-foreground/20 border-foreground/60\",\r\n                rose: \"text-background bg-radial from-rose-500 to-rose-800 border-rose-400 ring-2 ring-rose-800 hover:bg-radial hover:from-rose-600 hover:to-rose-900\",\r\n                blue: \"text-background bg-radial from-blue-500 to-blue-800 border-blue-400 ring-2 ring-blue-800 hover:bg-radial hover:from-blue-500 hover:to-blue-900\",\r\n            }\r\n        },\r\n        defaultVariants: {\r\n            size: \"md\",\r\n            variant: \"default\"\r\n        },\r\n    }\r\n);\r\n\r\ntype StyledButtonProps = VariantProps<typeof buttonVariants> & {\r\n    href: string;\r\n    children: React.ReactNode;\r\n    className?: string;\r\n};\r\n\r\nconst StyledButton = React.forwardRef<HTMLAnchorElement, StyledButtonProps>(\r\n    ({ href, children, className, size, variant, ...props }, ref) => {\r\n        return (\r\n            <Link\r\n                href={href}\r\n                className={cn(buttonVariants({ size, variant, className }))}\r\n                ref={ref}\r\n                {...props}\r\n            >\r\n                {children}\r\n            </Link>\r\n        );\r\n    }\r\n);\r\n\r\nStyledButton.displayName = \"StyledButton\";\r\n\r\nexport { StyledButton, buttonVariants };",
      "type": "registry:component",
      "target": "@components/grootstudio/styled-button.tsx"
    }
  ],
  "type": "registry:block"
}