{
  "$schema": "https://ui.shadcn.com/schema/registry-item.json",
  "name": "input",
  "title": "Input",
  "description": "Single-line input aligned to Atro control height and soft-rect.",
  "dependencies": [
    "@base-ui/react"
  ],
  "registryDependencies": [
    "@atroui/utils"
  ],
  "files": [
    {
      "path": "registry/default/ui/input.tsx",
      "content": "\"use client\"\n\nimport { Input as InputPrimitive } from \"@base-ui/react/input\"\n\nimport { cn } from \"@/lib/utils\"\n\n/**\n * Soft-rect control — Careful delight: ring caret (`.atro-field-type`) +\n * CSS focus/invalid settle. Motion earns on FieldError — not float-label\n * or per-keystroke chrome.\n */\nfunction Input({ className, type, ...props }: InputPrimitive.Props) {\n  return (\n    <InputPrimitive\n      type={type}\n      data-slot=\"input\"\n      className={cn(\n        \"atro-field-type flex h-[var(--atro-control-height,2.25rem)] w-full min-w-0 rounded-[var(--atro-control-radius,var(--radius))] border border-border-subtle bg-background px-3 text-base text-foreground outline-none transition-[border-color,box-shadow] duration-200 ease-[cubic-bezier(0.16,1,0.3,1)] sm:text-sm\",\n        \"file:inline-flex file:h-full file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground\",\n        \"placeholder:text-muted-foreground\",\n        \"focus-visible:border-ring\",\n        \"disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50\",\n        \"aria-invalid:border-destructive aria-invalid:ring-2 aria-invalid:ring-destructive/20 data-invalid:border-destructive data-invalid:ring-2 data-invalid:ring-destructive/20\",\n        \"motion-reduce:transition-none\",\n        className\n      )}\n      {...props}\n    />\n  )\n}\n\nexport { Input }\n",
      "type": "registry:ui",
      "target": "components/ui/input.tsx"
    }
  ],
  "type": "registry:ui"
}