{"_id":"@cooud-ui/tokens","_rev":"5-212282d80a730638d4c8ad819b600263","name":"@cooud-ui/tokens","dist-tags":{"latest":"0.5.0"},"versions":{"0.1.0":{"name":"@cooud-ui/tokens","version":"0.1.0","keywords":["cooud","design-system","react","tailwind","ui","components"],"author":{"name":"Cooud"},"license":"MIT","_id":"@cooud-ui/tokens@0.1.0","maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"homepage":"https://github.com/pedrogbraz/cooud-ui#readme","bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"dist":{"shasum":"e43440613ad8537ae2f6ccef2623bdf36b37a34c","tarball":"https://registry.npmjs.org/@cooud-ui/tokens/-/tokens-0.1.0.tgz","fileCount":11,"integrity":"sha512-ilOLurDVsOI8YmbGkOMBXA7pYzxXqBwM1+cVMvBwPLBAO3Ntx8Xb0ya1OFWKijQMAWKKEhQS3yqI+S8RgnIm7A==","signatures":[{"sig":"MEUCIAq/Ci/bT2EBmXSRIoOV9AxZO1ElmsjO27K8vz/sZCw3AiEA5xHMN+YiDza64ks66U/AVrc0zZh64QELwg4Yz6B9ywE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45846},"main":"./dist/index.js","type":"module","_from":"file:/Users/pedrogontijo/Developer/cooud/arquitetura/homologation/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./preset":{"types":"./preset/index.d.ts","import":"./preset/index.js"},"./styles.css":"./styles/tokens.css","./tokens.json":"./styles/tokens.json"},"scripts":{"build":"bun run scripts/build-tokens.ts && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","tokens:check":"bun run scripts/build-tokens.ts --check","prepublishOnly":"bun run scripts/build-tokens.ts --check && tsc -p tsconfig.json","tokens:generate":"bun run scripts/build-tokens.ts"},"_npmUser":{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"},"_resolved":"/Users/pedrogontijo/Developer/cooud/arquitetura/homologation/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.1.0.tgz","_integrity":"sha512-ilOLurDVsOI8YmbGkOMBXA7pYzxXqBwM1+cVMvBwPLBAO3Ntx8Xb0ya1OFWKijQMAWKKEhQS3yqI+S8RgnIm7A==","repository":{"url":"git+https://github.com/pedrogbraz/cooud-ui.git","type":"git","directory":"packages/tokens"},"_npmVersion":"11.13.0","description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","directories":{},"sideEffects":["./styles/tokens.css"],"_nodeVersion":"24.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tokens_0.1.0_1782253378952_0.9877511537038626","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@cooud-ui/tokens","version":"0.2.0","keywords":["cooud","design-system","react","tailwind","ui","components"],"author":{"name":"Cooud"},"license":"MIT","_id":"@cooud-ui/tokens@0.2.0","maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"homepage":"https://github.com/pedrogbraz/cooud-ui#readme","bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"dist":{"shasum":"751c9b753c5c309029724bc0b30dc9402112eeee","tarball":"https://registry.npmjs.org/@cooud-ui/tokens/-/tokens-0.2.0.tgz","fileCount":11,"integrity":"sha512-NK5fYOap/ED+e68qOCfWir3emTBQVKFw5NQoAet+4T9NLLHAZ3OSHMxu19mr8BtqRHNElOA90uuLf6ysuvpFkQ==","signatures":[{"sig":"MEQCIBVTpGUtqUHXogpzyDNq803ybuDu2OB1ocV2fSZDZVfgAiBztPcEW+PMzUTFZZ8cf+iBrOLoReMmG1fv/u2Anq5KSQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":71081},"main":"./dist/index.js","type":"module","_from":"file:/Users/pedrogontijo/Developer/cooud/arquitetura/homologation/worktrees/cooud-ui-release-v0.2.0/.release-tarballs/tokens/cooud-ui-tokens-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./preset":{"types":"./preset/index.d.ts","import":"./preset/index.js"},"./styles.css":"./styles/tokens.css","./tokens.json":"./styles/tokens.json"},"scripts":{"build":"bun run scripts/build-tokens.ts && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","tokens:check":"bun run scripts/build-tokens.ts --check","prepublishOnly":"bun run scripts/build-tokens.ts --check && tsc -p tsconfig.json","tokens:generate":"bun run scripts/build-tokens.ts"},"_npmUser":{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"},"_resolved":"/Users/pedrogontijo/Developer/cooud/arquitetura/homologation/worktrees/cooud-ui-release-v0.2.0/.release-tarballs/tokens/cooud-ui-tokens-0.2.0.tgz","_integrity":"sha512-NK5fYOap/ED+e68qOCfWir3emTBQVKFw5NQoAet+4T9NLLHAZ3OSHMxu19mr8BtqRHNElOA90uuLf6ysuvpFkQ==","repository":{"url":"git+https://github.com/pedrogbraz/cooud-ui.git","type":"git","directory":"packages/tokens"},"_npmVersion":"11.13.0","description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","directories":{},"sideEffects":["./styles/tokens.css"],"_nodeVersion":"24.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3"},"_npmOperationalInternal":{"tmp":"tmp/tokens_0.2.0_1783473082136_0.6988253294565072","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@cooud-ui/tokens","version":"0.3.0","keywords":["cooud","design-system","react","tailwind","ui","components"],"author":{"name":"Cooud"},"license":"MIT","_id":"@cooud-ui/tokens@0.3.0","maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"homepage":"https://github.com/pedrogbraz/cooud-ui#readme","bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"dist":{"shasum":"7975e357da4e1684f42678b9393215b1d2805e89","tarball":"https://registry.npmjs.org/@cooud-ui/tokens/-/tokens-0.3.0.tgz","fileCount":13,"integrity":"sha512-De9GSS7X5EKtFfDFMK05K/8qic2ZNzKP9f6Au9J4eJ/gSE8ww/jYgTa7alc/vl63sx2/TMi8l6oBmRPc1IDBRA==","signatures":[{"sig":"MEYCIQCKTAXDZrWEAfRqbMn1LuNQz1nrLtzAYWGX5kThj5Ct8AIhAMnA/4wzgrH9ne6bOphOtgyK4Egsx/k8iYUxkMFRwH7c","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":175163},"main":"./dist/index.js","type":"module","_from":"file:/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.3.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./preset":{"types":"./preset/index.d.ts","import":"./preset/index.js"},"./styles.css":"./styles/tokens.css","./tokens.json":"./styles/tokens.json","./tokens.dtcg.json":"./styles/tokens.dtcg.json","./figma-variables.json":"./styles/figma-variables.json"},"scripts":{"build":"bun run scripts/build-tokens.ts && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","tokens:check":"bun run scripts/build-tokens.ts --check","prepublishOnly":"bun run scripts/build-tokens.ts --check && tsc -p tsconfig.json","tokens:generate":"bun run scripts/build-tokens.ts"},"_npmUser":{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"},"_resolved":"/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.3.0.tgz","_integrity":"sha512-De9GSS7X5EKtFfDFMK05K/8qic2ZNzKP9f6Au9J4eJ/gSE8ww/jYgTa7alc/vl63sx2/TMi8l6oBmRPc1IDBRA==","repository":{"url":"git+https://github.com/pedrogbraz/cooud-ui.git","type":"git","directory":"packages/tokens"},"_npmVersion":"11.13.0","description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","directories":{},"sideEffects":["./styles/tokens.css"],"_nodeVersion":"24.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/tokens_0.3.0_1783951663602_0.447793572055621","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@cooud-ui/tokens","version":"0.4.0","keywords":["cooud","design-system","react","tailwind","ui","components"],"author":{"name":"Cooud"},"license":"MIT","_id":"@cooud-ui/tokens@0.4.0","maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"homepage":"https://github.com/pedrogbraz/cooud-ui#readme","bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"dist":{"shasum":"77df63ba9b8ea5201eb3bc77c2ae680af81d0b23","tarball":"https://registry.npmjs.org/@cooud-ui/tokens/-/tokens-0.4.0.tgz","fileCount":13,"integrity":"sha512-RgZQHKIKKK2tdahT+1a+LbAbnIpWB1j2kHIWLoJWLvfsKMqx53Zsr0/Pz2MNRKYeSCFd5OKf6Z9KhIwPBGrcFQ==","signatures":[{"sig":"MEUCIQCYBXI3bmXPRsGLtU4pqMs0GTkhb7ulWcj1krVhy3tzJAIgDn8Z1aoGbW+6lmejxxeZenKmQqw3CVuaH2YWgO/hLuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":175163},"main":"./dist/index.js","type":"module","_from":"file:/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.4.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./preset":{"types":"./preset/index.d.ts","import":"./preset/index.js"},"./styles.css":"./styles/tokens.css","./tokens.json":"./styles/tokens.json","./tokens.dtcg.json":"./styles/tokens.dtcg.json","./figma-variables.json":"./styles/figma-variables.json"},"scripts":{"build":"bun run scripts/build-tokens.ts && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","tokens:check":"bun run scripts/build-tokens.ts --check","prepublishOnly":"bun run scripts/build-tokens.ts --check && tsc -p tsconfig.json","tokens:generate":"bun run scripts/build-tokens.ts"},"_npmUser":{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"},"_resolved":"/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.4.0.tgz","_integrity":"sha512-RgZQHKIKKK2tdahT+1a+LbAbnIpWB1j2kHIWLoJWLvfsKMqx53Zsr0/Pz2MNRKYeSCFd5OKf6Z9KhIwPBGrcFQ==","repository":{"url":"git+https://github.com/pedrogbraz/cooud-ui.git","type":"git","directory":"packages/tokens"},"_npmVersion":"11.13.0","description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","directories":{},"sideEffects":["./styles/tokens.css"],"_nodeVersion":"24.17.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^6.0.3"},"_npmOperationalInternal":{"tmp":"tmp/tokens_0.4.0_1783962759563_0.2993440329989139","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@cooud-ui/tokens","version":"0.5.0","description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","type":"module","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./styles.css":"./styles/tokens.css","./tokens.json":"./styles/tokens.json","./tokens.dtcg.json":"./styles/tokens.dtcg.json","./figma-variables.json":"./styles/figma-variables.json","./preset":{"types":"./preset/index.d.ts","import":"./preset/index.js"}},"main":"./dist/index.js","types":"./dist/index.d.ts","sideEffects":["./styles/tokens.css"],"license":"MIT","author":{"name":"Cooud"},"repository":{"type":"git","url":"git+https://github.com/pedrogbraz/cooud-ui.git","directory":"packages/tokens"},"homepage":"https://github.com/pedrogbraz/cooud-ui#readme","bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"keywords":["cooud","design-system","react","tailwind","ui","components"],"publishConfig":{"access":"public"},"scripts":{"tokens:generate":"bun run scripts/build-tokens.ts","tokens:check":"bun run scripts/build-tokens.ts --check","build":"bun run scripts/build-tokens.ts && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","prepublishOnly":"bun run scripts/build-tokens.ts --check && tsc -p tsconfig.json"},"devDependencies":{"typescript":"^6.0.3"},"_id":"@cooud-ui/tokens@0.5.0","_integrity":"sha512-klw5km75J/0gGDMu4eLl3AWRJ6cA3GFgc3zH0lEarB3GTt+STIrejnjqyAqV95qA0rGM4oJJL15gvTMUAavbXg==","_resolved":"/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.5.0.tgz","_from":"file:/Users/pedrogontijo/Developer/cooud/arquitetura/production/source/cooud-ui/.release-tarballs/tokens/cooud-ui-tokens-0.5.0.tgz","_nodeVersion":"24.17.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-klw5km75J/0gGDMu4eLl3AWRJ6cA3GFgc3zH0lEarB3GTt+STIrejnjqyAqV95qA0rGM4oJJL15gvTMUAavbXg==","shasum":"189a4004ee27d5d94d939f4a71a5ea6d3d6486f4","tarball":"https://registry.npmjs.org/@cooud-ui/tokens/-/tokens-0.5.0.tgz","fileCount":13,"unpackedSize":175163,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGIznlvn44j7MS/GLv4R3weaOjL4gkxBignfXGiKCN4+AiEAwotb+scqy8sBC3u5rLoyY1dq6Roy4sFdyjSYT91PfcA="}]},"_npmUser":{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"},"directories":{},"maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tokens_0.5.0_1783981437674_0.4405878903542153"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-23T22:22:58.814Z","modified":"2026-07-13T22:23:58.000Z","0.1.0":"2026-06-23T22:22:59.099Z","0.2.0":"2026-07-08T01:11:22.302Z","0.3.0":"2026-07-13T14:07:43.745Z","0.4.0":"2026-07-13T17:12:39.759Z","0.5.0":"2026-07-13T22:23:57.840Z"},"bugs":{"url":"https://github.com/pedrogbraz/cooud-ui/issues"},"author":{"name":"Cooud"},"license":"MIT","homepage":"https://github.com/pedrogbraz/cooud-ui#readme","keywords":["cooud","design-system","react","tailwind","ui","components"],"repository":{"type":"git","url":"git+https://github.com/pedrogbraz/cooud-ui.git","directory":"packages/tokens"},"description":"Cooud design tokens — source of truth (TS) + CSS variable bridge + Tailwind v4 preset.","maintainers":[{"name":"pedrogbraz","email":"pedrobrazdevs@gmail.com"}],"readme":"# @cooud-ui/tokens\n\nThe Cooud design tokens — the single source of truth for color, typography,\nelevation, and shape across the Cooud UI system.\n\nTokens are authored once in TypeScript and compiled to consumable artifacts: a\n**CSS variable bridge** for Tailwind v4, a **preset** for Tailwind v3, and\nmachine-readable token JSON — including [design-tool formats](#design-tool-handoff)\n(W3C DTCG + Figma Variables). Every\n`@cooud-ui/ui` component renders against these tokens through semantic utilities\n(`bg-primary`, `text-fg-secondary`, `rounded-lg`, `shadow-glow`), so a single\ntoken change re-themes the whole library — at build time or at runtime.\n\nYou need this package if you use `@cooud-ui/ui` or `@cooud-ui/theme`, or if you want the\nCooud color/typography/elevation scale in your own components.\n\n## Install\n\n> Published on npm under the `@cooud-ui` scope.\n\n```sh\n# npm\nnpm i @cooud-ui/tokens\n# pnpm\npnpm add @cooud-ui/tokens\n# bun\nbun add @cooud-ui/tokens\n```\n\nNo peer dependencies — the package is framework-agnostic.\n\n## Usage\n\nThe token system has two layers: a **runtime layer** of `--cooud-*` CSS custom\nproperties (one block per theme/mode), and a **bridge** that maps Tailwind\nutilities onto those variables. Wire it up the way your Tailwind version expects.\n\n### Tailwind v4 (CSS-first)\n\nImport the stylesheet after Tailwind in your global CSS. This brings in the\ndefault **Aurora** theme tokens and the `@theme inline` bridge.\n\n```css\n@import \"tailwindcss\";\n@import \"@cooud-ui/tokens/styles.css\";\n```\n\n### Tailwind v3 (config preset)\n\nImport the preset in your config. It maps the same semantic utilities onto the\n`--cooud-*` variables.\n\n```js\n// tailwind.config.js\nimport cooudPreset from \"@cooud-ui/tokens/preset\";\n\n/** @type {import('tailwindcss').Config} */\nexport default {\n  presets: [cooudPreset],\n  content: [\"./src/**/*.{ts,tsx}\"],\n};\n```\n\n> On v3, do **not** import `@cooud-ui/tokens/styles.css` — it uses Tailwind v4-only\n> syntax. The `--cooud-*` variables are instead injected at runtime by\n> `<CooudUIProvider>` from `@cooud-ui/theme`; the preset connects the utilities to\n> those variables.\n\n### Programmatic access (TypeScript)\n\nThe TS export is the canonical token data, used by tooling and by `@cooud-ui/theme`\nto apply runtime overrides. Components never read these objects directly.\n\n```ts\nimport { themes, tokensToCssVars, serializeOverrides } from \"@cooud-ui/tokens\";\nimport type { ThemeName, Mode, ThemeTokens, ThemeOverrides } from \"@cooud-ui/tokens\";\n\nthemes.aurora.dark.primary; // \"oklch(0.685 0.169 237.3)\"\n\n// Turn a (partial) token set into a { \"--cooud-*\": value } style object:\nconst style = tokensToCssVars({ radius: \"20px\", primary: \"#7c3aed\" });\n\n// Or render overrides as a copy-pasteable CSS block:\nserializeOverrides({ radius: \"20px\" }, \":root\");\n```\n\nExports: `themes`, `themeNames`, `modes`, `defaultTheme`, `defaultMode`,\n`cssVarMap`, `tokensToCssVars`, `serializeOverrides`, and the types `ThemeName`,\n`Mode`, `ThemeTokens`, `ThemeOverrides`. The raw token map is also published as\n`@cooud-ui/tokens/tokens.json`, alongside the two design-tool artifacts\ndescribed below.\n\n## The token system\n\n- **Color** is authored in [OKLCH](https://oklch.com/) for perceptually even\n  ramps and predictable contrast — brand (`primary`, `accent`), surfaces\n  (`surface-base` → `surface-floating`), foreground (`fg` → `fg-muted`), lines\n  (`border`, `ring`), semantic (`success`, `warning`, `error`, `info`), and a\n  five-color chart palette.\n- **Accessible accent text.** `primary`, `success`, `warning`, `error`, and\n  `info` are FILL colors (great as `bg-primary` + `primary-foreground`, or as\n  status/icon fills) and are not always legible as small TEXT — a bright accent\n  on white, or a same-hue accent on its own `bg-<semantic>/15` tint, can read\n  below WCAG AA (4.5:1). For accent/semantic text (links, labels, tinted badge\n  text, syntax-highlighted values) use the AA-tuned same-hue `*-strong` variants:\n  `primary-text` (`text-primary-strong`), `success-text` (`text-success-strong`),\n  `warning-text` (`text-warning-strong`), `error-text` (`text-error-strong`), and\n  `info-text` (`text-info-strong`). Each is tuned against its WORST case — the\n  same-hue `/15` tint over the lightest surface a badge lands on, not just\n  `surface-base` — so it clears AA both on plain surfaces and on a tinted chip;\n  where the base color already clears AA as tint text, the variant equals it.\n- **Typography**, **shape** (`radius`), and **elevation** (`shadow-xs` →\n  `shadow-glow`) are tokens too, so they move with the theme.\n- Five built-in themes — **Aurora** (the default; premium sky/cyan),\n  **Neutral**, and the brand presets **Midnight**, **Sunset**, and **Emerald** —\n  each with `light` and `dark` modes.\n\nThe generated artifacts (`styles/tokens.json`, `styles/tokens.dtcg.json`,\n`styles/figma-variables.json`, `preset/`) are checked in, and the hand-authored\n`styles/tokens.css` is drift-checked against the TS source. After editing\n`src/tokens.ts`, regenerate with `tokens:generate`; verify everything is in\nsync with `tokens:check`.\n\n## Design tool handoff\n\nTwo generated artifacts bridge the tokens into design tools. Both are emitted\nby `tokens:generate` next to `tokens.json`, drift-checked by `tokens:check`,\nand shipped with the package:\n\n- **`@cooud-ui/tokens/tokens.dtcg.json`** — the tokens in the\n  [W3C Design Tokens (DTCG) format](https://design-tokens.github.io/community-group/format/),\n  for token pipelines such as Style Dictionary or Tokens Studio. Tokens are\n  grouped `cooud.{theme}.{mode}.{token}` (e.g. `cooud.aurora.dark.primary`).\n  Color `$value`s are the source-of-truth CSS color strings (mostly `oklch()`,\n  some with an alpha channel) kept verbatim rather than converted, so nothing\n  is lost — convert downstream if a tool needs hex. Shadows are structured\n  DTCG shadow objects, font stacks are family arrays, radius is a dimension.\n- **`@cooud-ui/tokens/figma-variables.json`** — a pragmatic import shape for\n  Figma Variables plugins and the Figma Variables REST API: one collection\n  (`Cooud UI`) with ten modes (`{theme}-{mode}`, e.g. `aurora-dark`) and one\n  variable per token, grouped by slash-prefix (`color/primary`, `font/sans`,\n  `shadow/glow`, `radius`). Colors are converted from `oklch()` to sRGB hex\n  (`#rrggbb`, or `#rrggbbaa` when the token carries alpha) and clamped to the\n  sRGB gamut; radius is a px number (`FLOAT`); font stacks and box-shadows are\n  raw CSS strings (`STRING`), since Figma variables have no font-stack or\n  shadow type. The oklch → sRGB conversion is self-checked against known color\n  pairs on every build.\n\nGradients are intentionally absent from both files: the `bg-gradient-*`\nutilities in `styles.css` are derived from `primary`/`accent` at runtime, so\nthey re-theme automatically and are not tokens.\n\n## Related packages\n\n- [`@cooud-ui/theme`](../theme) — `<CooudUIProvider>` + `useTheme`; applies these\n  tokens at runtime and powers per-scope overrides.\n- [`@cooud-ui/ui`](../ui) — the component library that renders against these tokens.\n- See the [docs site](../../apps/www) for the live theme builder and previews.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}