{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "accordion",
  "type": "registry:ui",
  "title": "Accordion",
  "description": "Index-card dividers that open to reveal their notes.",
  "categories": [
    "core"
  ],
  "files": [
    {
      "path": "ui/accordion.tsx",
      "type": "registry:ui",
      "content": "\"use client\";\n\nimport * as React from \"react\";\nimport { Accordion as AccordionPrimitive } from \"radix-ui\";\n\n/** Index-card dividers that open to reveal their notes. */\nexport const Accordion = AccordionPrimitive.Root;\n\nexport function AccordionItem({ className = \"\", ...props }: React.ComponentProps<typeof AccordionPrimitive.Item>) {\n  return <AccordionPrimitive.Item className={`border-b border-dashed border-(--edge) last:border-b-0 ${className}`} {...props} />;\n}\n\nexport function AccordionTrigger({ className = \"\", style, children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Trigger>) {\n  return (\n    <AccordionPrimitive.Header className=\"flex\">\n      <AccordionPrimitive.Trigger\n        className={`group flex flex-1 cursor-pointer items-center justify-between gap-4 py-4 text-left text-[12.5px] font-bold uppercase tracking-[0.16em] text-(--ink) outline-none transition-colors hover:text-(--pen) focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-(--pen) disabled:pointer-events-none disabled:opacity-50 ${className}`}\n        style={{ fontFamily: \"var(--font-type, 'Courier New', ui-monospace, monospace)\", ...style }}\n        {...props}\n      >\n        {children}\n        <span aria-hidden className=\"shrink-0 text-[18px] font-normal leading-none text-(--ink-muted) transition-transform duration-200 group-data-[state=open]:rotate-45\">\n          +\n        </span>\n      </AccordionPrimitive.Trigger>\n    </AccordionPrimitive.Header>\n  );\n}\n\nexport function AccordionContent({ className = \"\", children, ...props }: React.ComponentProps<typeof AccordionPrimitive.Content>) {\n  return (\n    <AccordionPrimitive.Content\n      data-paper-motion\n      className=\"overflow-hidden text-[15px] leading-relaxed text-(--ink-muted) data-[state=closed]:animate-[paper-accordion-up_.2s_ease-out] data-[state=open]:animate-[paper-accordion-down_.2s_ease-out]\"\n      {...props}\n    >\n      <div className={`pb-4 ${className}`}>{children}</div>\n    </AccordionPrimitive.Content>\n  );\n}\n"
    }
  ],
  "dependencies": [
    "radix-ui"
  ]
}