{
  "$schema": "https://ui.shadcn.com/schema/registry.json",
  "name": "nebari",
  "homepage": "https://github.com/nebari-dev/nebari-design",
  "items": [
    {
      "name": "utils",
      "type": "registry:lib",
      "title": "cn() utility",
      "description": "Class-name merge helper built on clsx and tailwind-merge.",
      "files": [
        {
          "path": "registry/nebari/lib/utils.ts",
          "type": "registry:lib"
        }
      ]
    },
    {
      "name": "date-utils",
      "type": "registry:lib",
      "title": "Date utilities",
      "description": "Small calendar-date helpers for arithmetic, comparison, formatting, and segmented entry parsing.",
      "files": [
        {
          "path": "registry/nebari/lib/date.ts",
          "type": "registry:lib"
        }
      ]
    },
    {
      "name": "spinner",
      "type": "registry:ui",
      "title": "Spinner",
      "description": "Animated loading spinner built on lucide-react.",
      "dependencies": ["lucide-react"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/spinner.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "skeleton",
      "type": "registry:ui",
      "title": "Skeleton",
      "description": "Decorative placeholder primitives for loading states, with line, circle, and block shapes.",
      "dependencies": ["class-variance-authority"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/skeleton.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "button",
      "type": "registry:ui",
      "title": "Button",
      "description": "Button with variants, sizes, a loading state, and polymorphic render-prop composition.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/spinner",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/button.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "button-group",
      "type": "registry:ui",
      "title": "Button Group",
      "description": "Groups related actions into horizontal or vertical segmented controls with shared borders and unified outer corners.",
      "dependencies": ["@base-ui/react", "class-variance-authority"],
      "registryDependencies": [
        "@nebari/button",
        "@nebari/utils",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/button-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "accordion",
      "type": "registry:ui",
      "title": "Accordion",
      "description": "Accessible disclosure set with single or multiple expansion, semantic heading wrappers, and animated panels.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/accordion.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "switch",
      "type": "registry:ui",
      "title": "Switch",
      "description": "Toggle a single setting on or off with immediate effect, built on Base UI's Switch.",
      "dependencies": ["@base-ui/react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/switch.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "slider",
      "type": "registry:ui",
      "title": "Slider",
      "description": "Bounded numeric input with single-value and range behavior, keyboard navigation, and Nebari track and thumb styling.",
      "dependencies": ["@base-ui/react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/slider.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "checkbox",
      "type": "registry:ui",
      "title": "Checkbox",
      "description": "Labeled checkbox with default and boxed variants, checked, unchecked, and indeterminate states, validation feedback, and Base UI behavior.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/checkbox.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "radio-group",
      "type": "registry:ui",
      "title": "Radio Group",
      "description": "Mutually exclusive radio group with default and boxed item variants, stable selected targets, and group-level validation feedback.",
      "dependencies": ["@base-ui/react", "class-variance-authority"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/radio-group.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "field",
      "type": "registry:ui",
      "title": "Field",
      "description": "Groups a control with its label, description, and validation message, wiring accessible-name and description associations automatically. Built on Base UI's Field.",
      "dependencies": ["@base-ui/react"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/field.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "input",
      "type": "registry:ui",
      "title": "Input",
      "description": "Single-line text-entry field with hover, focus, disabled, and invalid states, built on Base UI's Input and auto-wired to Field.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/input.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "calendar",
      "type": "registry:ui",
      "title": "Calendar",
      "description": "Single-month calendar grid with reusable day cells, range states, keyboard navigation, and Nebari popover-surface styling.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/date-utils",
        "@nebari/button",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/calendar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "date-picker",
      "type": "registry:ui",
      "title": "Date Picker",
      "description": "Date picker field for single dates, ranges, date and time selection, and segmented typed entry, backed by Base UI Popover.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/date-utils",
        "@nebari/field",
        "@nebari/calendar",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/date-picker.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "label",
      "type": "registry:ui",
      "title": "Label",
      "description": "Accessible label for a form control, paired via htmlFor or composed with Field.",
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/label.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "textarea",
      "type": "registry:ui",
      "title": "Textarea",
      "description": "Multi-line text-entry field — a styled native textarea mirroring Input's border, focus ring, disabled, and invalid states.",
      "dependencies": ["lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/textarea.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "table",
      "type": "registry:ui",
      "title": "Table",
      "description": "Responsive data table with Nebari header, cell, row, footer, caption, and hover styling.",
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/table.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "data-table",
      "type": "registry:ui",
      "title": "Data Table",
      "description": "Reusable TanStack Table with sorting, filtering, row selection, column visibility, pagination, and complete empty, loading, and error states.",
      "dependencies": ["@tanstack/react-table", "lucide-react"],
      "registryDependencies": [
        "@nebari/button",
        "@nebari/checkbox",
        "@nebari/dropdown-menu",
        "@nebari/input",
        "@nebari/select",
        "@nebari/table",
        "@nebari/theme",
        "@nebari/utils"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/data-table.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "alert",
      "type": "registry:ui",
      "title": "Alert",
      "description": "Inline status message with default, success, warning, and destructive variants, composed of Alert, AlertTitle, AlertDescription, and AlertAction.",
      "dependencies": ["class-variance-authority", "lucide-react"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/alert.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "toast",
      "type": "registry:ui",
      "title": "Toast",
      "description": "Transient notification with status types, actions, promise updates, a five-item stack, and swipe dismissal, built on Base UI Toast.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": [
        "@nebari/button",
        "@nebari/theme",
        "@nebari/utils"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/toast.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "sidebar",
      "type": "registry:ui",
      "title": "Sidebar",
      "description": "Collapsible app-shell sidebar whose menu button composes via Base UI's render prop into links, dropdown, select, and tooltip triggers.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/theme",
        "@nebari/tooltip"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/sidebar.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "badge",
      "type": "registry:ui",
      "title": "Badge",
      "description": "Small status/label chip with variants, composable via Base UI's render prop.",
      "dependencies": ["@base-ui/react", "class-variance-authority"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/badge.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "breadcrumb",
      "type": "registry:ui",
      "title": "Breadcrumb",
      "description": "Hierarchy navigation trail with default, ellipsis-triggered, and current-route dropdown compositions.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/breadcrumb.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "card",
      "type": "registry:ui",
      "title": "Card",
      "description": "Static content surface composed from header, title, description, action, content, and footer sections.",
      "dependencies": ["class-variance-authority"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/card.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "dialog",
      "type": "registry:ui",
      "title": "Dialog",
      "description": "Modal dialog with overlay, close control, header, footer, title, and description parts, built on Base UI's Dialog.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/button",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/dialog.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "drawer",
      "type": "registry:ui",
      "title": "Drawer",
      "description": "Edge-anchored panel for secondary tasks, contextual detail, or short forms, with right-side and bottom-sheet variants built on Base UI Drawer.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/button",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/drawer.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "tabs",
      "type": "registry:ui",
      "title": "Tabs",
      "description": "Tabs for switching between related panels, with pill and underline variants built on Base UI.",
      "dependencies": ["@base-ui/react", "class-variance-authority"],
      "registryDependencies": ["@nebari/utils"],
      "files": [
        {
          "path": "registry/nebari/ui/tabs.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "select",
      "type": "registry:ui",
      "title": "Select",
      "description": "Accessible standard-size select menu with grouped labels, separators, validation states, and anchored popup positioning.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/select.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "combobox",
      "type": "registry:ui",
      "title": "Combobox",
      "description": "Autocomplete input paired with a filterable option list. Supports single and multi-select chips, grouped options, an empty state, and a clear affordance, built on Base UI's Combobox.",
      "dependencies": ["@base-ui/react", "lucide-react"],
      "registryDependencies": [
        "@nebari/utils",
        "@nebari/badge",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/combobox.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "navigation-menu",
      "type": "registry:ui",
      "title": "Navigation Menu",
      "description": "Application navigation bar with anchor-first NavLink items, NavDropdownMenu composition, and brand/actions slots.",
      "dependencies": ["@base-ui/react", "class-variance-authority"],
      "registryDependencies": [
        "@nebari/dropdown-menu",
        "@nebari/utils",
        "@nebari/theme"
      ],
      "files": [
        {
          "path": "registry/nebari/ui/navigation-menu.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "dropdown-menu",
      "type": "registry:ui",
      "title": "Dropdown Menu",
      "description": "Action menu triggered by a button, with grouped items, labels, separators, checkbox items, and nested submenus.",
      "dependencies": [
        "@base-ui/react",
        "class-variance-authority",
        "lucide-react"
      ],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/dropdown-menu.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "tooltip",
      "type": "registry:ui",
      "title": "Tooltip",
      "description": "Compact supplemental information shown on hover or keyboard focus, with anchored positioning and optional arrow. Touch devices don't trigger tooltips so critical information shouldn't live only in a tooltip.",
      "dependencies": ["@base-ui/react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/tooltip.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "code-block",
      "type": "registry:ui",
      "title": "Code Block",
      "description": "Formatted, monospaced code snippet with an optional language/filename header, a copy-to-clipboard button, and optional line numbers. Composed of CodeBlock, CodeBlockHeader, CodeBlockBody, and CodeBlockCopyButton.",
      "dependencies": ["class-variance-authority", "lucide-react"],
      "registryDependencies": ["@nebari/utils", "@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/ui/code-block.tsx",
          "type": "registry:ui"
        }
      ]
    },
    {
      "name": "use-theme-preference",
      "type": "registry:hook",
      "title": "useThemePreference",
      "description": "Theme/dark-mode state: persists a light/dark/system preference, follows the OS in system mode, and toggles the .dark class on <html>. Ships a ThemeProvider/useTheme context wrapper and a pre-paint bootstrap script builder that eliminates the theme flash.",
      "registryDependencies": ["@nebari/theme"],
      "files": [
        {
          "path": "registry/nebari/hooks/use-theme-preference.ts",
          "type": "registry:hook"
        },
        {
          "path": "registry/nebari/hooks/theme-provider.tsx",
          "type": "registry:hook"
        }
      ]
    },
    {
      "name": "claude-skill",
      "type": "registry:file",
      "title": "Nebari UI Claude Code skill",
      "description": "Claude Code skill that teaches an AI assistant how to install and use Nebari components in a consumer app — registry setup, the component catalog, the Base UI render-prop convention, and theming.",
      "files": [
        {
          "path": "registry/nebari/skills/nebari-ui/SKILL.md",
          "type": "registry:file",
          "target": "~/.claude/skills/nebari-ui/SKILL.md"
        }
      ]
    },
    {
      "name": "theme",
      "type": "registry:theme",
      "title": "Nebari theme",
      "description": "Nebari brand color tokens and radius for light and dark modes.",
      "css": {
        ":root": {
          "--primary-magenta-50": "oklch(97.93% 0.0118 313.22)",
          "--primary-magenta-100": "oklch(95.07% 0.0323 311.75)",
          "--primary-magenta-200": "oklch(86.93% 0.0881 311.32)",
          "--primary-magenta-300": "oklch(77.96% 0.1496 311.14)",
          "--primary-magenta-400": "oklch(69.98% 0.1926 311.48)",
          "--primary-magenta-500": "oklch(61.98% 0.2159 311.67)",
          "--primary-magenta-600": "oklch(55.06% 0.1886 311.45)",
          "--primary-magenta-700": "oklch(47.01% 0.1577 311.26)",
          "--primary-magenta-800": "oklch(39.93% 0.1238 311.55)",
          "--primary-magenta-900": "oklch(32.97% 0.0867 312.00)",
          "--primary-magenta-950": "oklch(27.03% 0.0852 311.77)",
          "--accent-teal-50": "oklch(97.94% 0.0160 187.35)",
          "--accent-teal-100": "oklch(95.02% 0.0407 187.03)",
          "--accent-teal-200": "oklch(86.97% 0.0671 187.76)",
          "--accent-teal-300": "oklch(77.96% 0.0893 187.30)",
          "--accent-teal-400": "oklch(69.9% 0.0995 187.56)",
          "--accent-teal-500": "oklch(61.96% 0.0932 187.62)",
          "--accent-teal-600": "oklch(55.09% 0.0808 187.38)",
          "--accent-teal-700": "oklch(47% 0.0677 188.28)",
          "--accent-teal-800": "oklch(39.98% 0.0539 188.08)",
          "--accent-teal-900": "oklch(33.02% 0.0392 187.72)",
          "--accent-teal-950": "oklch(27.14% 0.0398 187.08)",
          "--highlight-yellow-50": "oklch(98.03% 0.0183 86.15)",
          "--highlight-yellow-100": "oklch(94.96% 0.0461 86.46)",
          "--highlight-yellow-200": "oklch(87.03% 0.0889 86.52)",
          "--highlight-yellow-300": "oklch(77.95% 0.1259 85.96)",
          "--highlight-yellow-400": "oklch(70.05% 0.1417 86.43)",
          "--highlight-yellow-500": "oklch(62.04% 0.1267 87.01)",
          "--highlight-yellow-600": "oklch(55.01% 0.1117 86.53)",
          "--highlight-yellow-700": "oklch(46.93% 0.0960 86.63)",
          "--highlight-yellow-800": "oklch(40.14% 0.0731 87.00)",
          "--highlight-yellow-900": "oklch(32.9% 0.0514 85.56)",
          "--highlight-yellow-950": "oklch(26.86% 0.0514 86.55)",
          "--neutral-50": "oklch(97.94% 0.0013 286.38)",
          "--neutral-100": "oklch(95.04% 0.0042 236.50)",
          "--neutral-200": "oklch(87.02% 0.0106 247.95)",
          "--neutral-300": "oklch(77.94% 0.0168 253.93)",
          "--neutral-400": "oklch(70% 0.0253 250.17)",
          "--neutral-500": "oklch(62.01% 0.0331 251.43)",
          "--neutral-600": "oklch(54.87% 0.0393 252.47)",
          "--neutral-700": "oklch(46.94% 0.0327 253.44)",
          "--neutral-800": "oklch(40% 0.0269 250.57)",
          "--neutral-900": "oklch(32.95% 0.0209 254.12)",
          "--neutral-950": "oklch(26.95% 0.0219 254.20)",
          "--zinc-50": "oklch(97.91% 0 0)",
          "--zinc-100": "oklch(94.94% 0.0013 286.37)",
          "--zinc-200": "oklch(87.08% 0.0041 286.31)",
          "--zinc-300": "oklch(78.06% 0.0056 286.27)",
          "--zinc-400": "oklch(69.88% 0.0130 286.06)",
          "--zinc-500": "oklch(61.96% 0.0134 286.00)",
          "--zinc-600": "oklch(54.86% 0.0154 285.88)",
          "--zinc-700": "oklch(47.01% 0.0112 285.96)",
          "--zinc-800": "oklch(39.94% 0.0066 286.10)",
          "--zinc-900": "oklch(33.01% 0.0052 286.11)",
          "--zinc-950": "oklch(26.94% 0.0037 286.15)",
          "--zinc-975": "oklch(21.86% 0.0039 286.08)",
          "--blue-50": "oklch(97.93% 0.0083 271.33)",
          "--blue-100": "oklch(95.08% 0.0232 264.46)",
          "--blue-200": "oklch(87.12% 0.0567 264.22)",
          "--blue-300": "oklch(78.02% 0.0950 264.35)",
          "--blue-400": "oklch(69.95% 0.1433 264.44)",
          "--blue-500": "oklch(62.1% 0.1880 264.30)",
          "--blue-600": "oklch(55.04% 0.2158 264.34)",
          "--blue-700": "oklch(47.06% 0.2174 264.33)",
          "--blue-800": "oklch(40.02% 0.1811 264.47)",
          "--blue-900": "oklch(33.01% 0.1387 264.40)",
          "--blue-950": "oklch(27.02% 0.0864 264.19)",
          "--green-50": "oklch(97.94% 0.0182 150.56)",
          "--green-100": "oklch(94.94% 0.0433 149.41)",
          "--green-200": "oklch(87.04% 0.0814 149.55)",
          "--green-300": "oklch(78.09% 0.1374 149.53)",
          "--green-400": "oklch(69.96% 0.1814 149.67)",
          "--green-500": "oklch(61.95% 0.1718 149.70)",
          "--green-600": "oklch(55.08% 0.1525 149.53)",
          "--green-700": "oklch(47.01% 0.1313 149.41)",
          "--green-800": "oklch(40.02% 0.1082 149.72)",
          "--green-900": "oklch(32.88% 0.0887 149.73)",
          "--green-950": "oklch(27.13% 0.0631 149.76)",
          "--red-50": "oklch(97.91% 0.0087 26.02)",
          "--red-100": "oklch(95.06% 0.0247 29.93)",
          "--red-200": "oklch(86.96% 0.0594 27.38)",
          "--red-300": "oklch(78.02% 0.1024 27.78)",
          "--red-400": "oklch(69.96% 0.1660 27.34)",
          "--red-500": "oklch(62.07% 0.2077 27.48)",
          "--red-600": "oklch(54.97% 0.2151 27.33)",
          "--red-700": "oklch(46.91% 0.1900 27.40)",
          "--red-800": "oklch(39.97% 0.1611 27.26)",
          "--red-900": "oklch(33.1% 0.1332 27.42)",
          "--red-950": "oklch(27.06% 0.0890 26.98)",
          "--yellow-50": "oklch(97.95% 0.0179 89.36)",
          "--yellow-100": "oklch(95.02% 0.0692 92.11)",
          "--yellow-200": "oklch(87.09% 0.1248 91.93)",
          "--yellow-300": "oklch(78.1% 0.1564 91.73)",
          "--yellow-400": "oklch(69.92% 0.1414 91.77)",
          "--yellow-500": "oklch(62.13% 0.1269 92.02)",
          "--yellow-600": "oklch(54.88% 0.1114 91.56)",
          "--yellow-700": "oklch(46.91% 0.0960 91.90)",
          "--yellow-800": "oklch(40.15% 0.0821 92.02)",
          "--yellow-900": "oklch(33.09% 0.0677 92.20)",
          "--yellow-950": "oklch(26.96% 0.0539 91.43)",
          "--black": "oklch(0% 0 0)",
          "--white": "oklch(100% 0 0)",
          "--foundation-black": "oklch(20.76% 0.0135 258.37)",
          "--foundation-white": "oklch(100% 0 0)"
        },
        "@keyframes nebari-fade-in": {
          "from": {
            "opacity": "0"
          },
          "to": {
            "opacity": "1"
          }
        },
        "@keyframes nebari-fade-out": {
          "from": {
            "opacity": "1"
          },
          "to": {
            "opacity": "0"
          }
        },
        "@keyframes nebari-slide-up-fade": {
          "from": {
            "opacity": "0",
            "transform": "translateY(6px)"
          },
          "to": {
            "opacity": "1",
            "transform": "translateY(0)"
          }
        },
        "@keyframes nebari-slide-down-fade": {
          "from": {
            "opacity": "1",
            "transform": "translateY(0)"
          },
          "to": {
            "opacity": "0",
            "transform": "translateY(6px)"
          }
        },
        "@keyframes nebari-skeleton-pulse": {
          "0%, 100%": {
            "opacity": "1"
          },
          "50%": {
            "opacity": "0.5"
          }
        }
      },
      "cssVars": {
        "theme": {
          "font-sans": "'Geist Variable', ui-sans-serif, system-ui, sans-serif",
          "font-mono": "'IBM Plex Mono', ui-monospace, SFMono-Regular, monospace",
          "duration-fast": "100ms",
          "duration-base": "200ms",
          "duration-slow": "350ms",
          "duration-loading": "1600ms",
          "ease-standard": "cubic-bezier(0.4, 0, 0.2, 1)",
          "ease-emphasized": "cubic-bezier(0.2, 0, 0, 1)",
          "animate-fade-in": "nebari-fade-in var(--duration-base) var(--ease-standard) both",
          "animate-fade-out": "nebari-fade-out var(--duration-base) var(--ease-standard) both",
          "animate-slide-up-fade": "nebari-slide-up-fade var(--duration-base) var(--ease-emphasized) both",
          "animate-slide-down-fade": "nebari-slide-down-fade var(--duration-base) var(--ease-emphasized) both",
          "animate-skeleton-pulse": "nebari-skeleton-pulse var(--duration-loading) var(--ease-standard) infinite"
        },
        "light": {
          "radius": "0.625rem",
          "background": "oklch(97.91% 0 0)",
          "foreground": "oklch(26.94% 0.0037 286.15)",
          "scrim": "rgba(0, 0, 0, 0.5)",
          "canvas": "oklch(100% 0 0)",
          "canvas-foreground": "oklch(26.94% 0.0037 286.15)",
          "header": "oklch(97.91% 0 0)",
          "header-foreground": "oklch(26.94% 0.0037 286.15)",
          "card": "oklch(100% 0 0)",
          "card-foreground": "oklch(26.94% 0.0037 286.15)",
          "popover": "oklch(100% 0 0)",
          "popover-foreground": "oklch(26.94% 0.0037 286.15)",
          "primary": "oklch(55.06% 0.1886 311.45)",
          "primary-foreground": "oklch(100% 0 0)",
          "primary-hover": "oklch(47.01% 0.1577 311.26)",
          "secondary": "oklch(95.04% 0.0042 236.50)",
          "secondary-foreground": "oklch(32.95% 0.0209 254.12)",
          "muted": "oklch(94.94% 0.0013 286.37)",
          "muted-foreground": "oklch(54.86% 0.0154 285.88)",
          "muted-foreground-strong": "oklch(47.01% 0.0112 285.96)",
          "accent": "oklch(95.04% 0.0042 236.50)",
          "accent-foreground": "oklch(32.95% 0.0209 254.12)",
          "info": "oklch(95.08% 0.0232 264.46)",
          "info-foreground": "oklch(55.04% 0.2158 264.34)",
          "destructive": "oklch(95.06% 0.0247 29.93)",
          "destructive-foreground": "oklch(54.97% 0.2151 27.33)",
          "warning": "oklch(95.02% 0.0692 92.11)",
          "warning-foreground": "oklch(46.91% 0.0960 91.90)",
          "success": "oklch(94.94% 0.0433 149.41)",
          "success-foreground": "oklch(47.01% 0.1313 149.41)",
          "border": "oklch(78.06% 0.0056 286.27)",
          "input": "oklch(69.88% 0.0130 286.06)",
          "border-strong": "oklch(61.96% 0.0134 286.00)",
          "ring": "oklch(61.98% 0.2159 311.67)",
          "chart-1": "oklch(61.98% 0.2159 311.67)",
          "chart-2": "oklch(61.96% 0.0932 187.62)",
          "chart-3": "oklch(70.05% 0.1417 86.43)",
          "chart-4": "oklch(62.1% 0.1880 264.30)",
          "chart-5": "oklch(61.95% 0.1718 149.70)",
          "sidebar": "oklch(97.91% 0 0)",
          "sidebar-foreground": "oklch(26.94% 0.0037 286.15)",
          "sidebar-primary": "oklch(55.06% 0.1886 311.45)",
          "sidebar-primary-foreground": "oklch(100% 0 0)",
          "sidebar-accent": "oklch(95.04% 0.0042 236.50)",
          "sidebar-accent-foreground": "oklch(32.95% 0.0209 254.12)",
          "sidebar-border": "oklch(78.06% 0.0056 286.27)",
          "sidebar-ring": "oklch(61.98% 0.2159 311.67)"
        },
        "dark": {
          "background": "oklch(26.94% 0.0037 286.15)",
          "foreground": "oklch(97.91% 0 0)",
          "scrim": "rgba(0, 0, 0, 0.6)",
          "canvas": "oklch(21.86% 0.0039 286.08)",
          "canvas-foreground": "oklch(97.91% 0 0)",
          "header": "oklch(26.94% 0.0037 286.15)",
          "header-foreground": "oklch(97.91% 0 0)",
          "card": "oklch(33.01% 0.0052 286.11)",
          "card-foreground": "oklch(97.91% 0 0)",
          "popover": "oklch(33.01% 0.0052 286.11)",
          "popover-foreground": "oklch(97.91% 0 0)",
          "primary": "oklch(61.98% 0.2159 311.67)",
          "primary-foreground": "oklch(0% 0 0)",
          "primary-hover": "oklch(69.98% 0.1926 311.48)",
          "secondary": "oklch(40% 0.0269 250.57)",
          "secondary-foreground": "oklch(95.04% 0.0042 236.50)",
          "muted": "oklch(39.94% 0.0066 286.10)",
          "muted-foreground": "oklch(69.88% 0.0130 286.06)",
          "muted-foreground-strong": "oklch(78.06% 0.0056 286.27)",
          "accent": "oklch(40% 0.0269 250.57)",
          "accent-foreground": "oklch(95.04% 0.0042 236.50)",
          "info": "oklch(33.01% 0.1387 264.40)",
          "info-foreground": "oklch(69.95% 0.1433 264.44)",
          "destructive": "oklch(33.1% 0.1332 27.42)",
          "destructive-foreground": "oklch(78.02% 0.1024 27.78)",
          "warning": "oklch(33.09% 0.0677 92.20)",
          "warning-foreground": "oklch(87.09% 0.1248 91.93)",
          "success": "oklch(32.88% 0.0887 149.73)",
          "success-foreground": "oklch(87.04% 0.0814 149.55)",
          "border": "oklch(47.01% 0.0112 285.96)",
          "input": "oklch(54.86% 0.0154 285.88)",
          "border-strong": "oklch(61.96% 0.0134 286.00)",
          "ring": "oklch(69.98% 0.1926 311.48)",
          "chart-1": "oklch(69.98% 0.1926 311.48)",
          "chart-2": "oklch(69.9% 0.0995 187.56)",
          "chart-3": "oklch(77.95% 0.1259 85.96)",
          "chart-4": "oklch(69.95% 0.1433 264.44)",
          "chart-5": "oklch(69.96% 0.1814 149.67)",
          "sidebar": "oklch(26.94% 0.0037 286.15)",
          "sidebar-foreground": "oklch(97.91% 0 0)",
          "sidebar-primary": "oklch(61.98% 0.2159 311.67)",
          "sidebar-primary-foreground": "oklch(0% 0 0)",
          "sidebar-accent": "oklch(40% 0.0269 250.57)",
          "sidebar-accent-foreground": "oklch(95.04% 0.0042 236.50)",
          "sidebar-border": "oklch(47.01% 0.0112 285.96)",
          "sidebar-ring": "oklch(69.98% 0.1926 311.48)"
        }
      }
    }
  ]
}
