ui-lab-registry 0.3.44 → 0.3.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (897) hide show
  1. package/dist/components/Anchor/examples/01-inline-text.d.ts +6 -0
  2. package/dist/components/Anchor/examples/01-inline-text.d.ts.map +1 -0
  3. package/dist/components/Anchor/examples/01-inline-text.js +10 -0
  4. package/dist/components/Anchor/examples/01-inline-text.js.map +1 -0
  5. package/dist/components/Anchor/examples/02-underline-variants.d.ts +6 -0
  6. package/dist/components/Anchor/examples/02-underline-variants.d.ts.map +1 -0
  7. package/dist/components/Anchor/examples/02-underline-variants.js +10 -0
  8. package/dist/components/Anchor/examples/02-underline-variants.js.map +1 -0
  9. package/dist/components/Anchor/examples/03-preview-tooltip.d.ts +6 -0
  10. package/dist/components/Anchor/examples/03-preview-tooltip.d.ts.map +1 -0
  11. package/dist/components/Anchor/examples/03-preview-tooltip.js +10 -0
  12. package/dist/components/Anchor/examples/03-preview-tooltip.js.map +1 -0
  13. package/dist/components/Anchor/examples/04-breadcrumb.d.ts +6 -0
  14. package/dist/components/Anchor/examples/04-breadcrumb.d.ts.map +1 -0
  15. package/dist/components/Anchor/examples/04-breadcrumb.js +15 -0
  16. package/dist/components/Anchor/examples/04-breadcrumb.js.map +1 -0
  17. package/dist/components/Anchor/examples/index.d.ts +8 -1
  18. package/dist/components/Anchor/examples/index.d.ts.map +1 -1
  19. package/dist/components/Anchor/examples/index.js +8 -1
  20. package/dist/components/Anchor/examples/index.js.map +1 -1
  21. package/dist/components/Anchor/examples.json +19 -4
  22. package/dist/components/Anchor/index.d.ts.map +1 -1
  23. package/dist/components/Anchor/index.js +8 -2
  24. package/dist/components/Anchor/index.js.map +1 -1
  25. package/dist/components/Badge/examples/01-status-badges.d.ts +6 -0
  26. package/dist/components/Badge/examples/01-status-badges.d.ts.map +1 -0
  27. package/dist/components/Badge/examples/01-status-badges.js +10 -0
  28. package/dist/components/Badge/examples/01-status-badges.js.map +1 -0
  29. package/dist/components/Badge/examples/02-icon-position.d.ts +6 -0
  30. package/dist/components/Badge/examples/02-icon-position.d.ts.map +1 -0
  31. package/dist/components/Badge/examples/02-icon-position.js +11 -0
  32. package/dist/components/Badge/examples/02-icon-position.js.map +1 -0
  33. package/dist/components/Badge/examples/02-variants-and-sizes.d.ts.map +1 -1
  34. package/dist/components/Badge/examples/02-variants-and-sizes.js +3 -3
  35. package/dist/components/Badge/examples/02-variants-and-sizes.js.map +1 -1
  36. package/dist/components/Badge/examples/03-selectable-tags.d.ts +6 -0
  37. package/dist/components/Badge/examples/03-selectable-tags.d.ts.map +1 -0
  38. package/dist/components/Badge/examples/03-selectable-tags.js +21 -0
  39. package/dist/components/Badge/examples/03-selectable-tags.js.map +1 -0
  40. package/dist/components/Badge/examples/04-dismissible.d.ts +6 -0
  41. package/dist/components/Badge/examples/04-dismissible.d.ts.map +1 -0
  42. package/dist/components/Badge/examples/04-dismissible.js +14 -0
  43. package/dist/components/Badge/examples/04-dismissible.js.map +1 -0
  44. package/dist/components/Badge/examples/05-semantic-colors.d.ts +6 -0
  45. package/dist/components/Badge/examples/05-semantic-colors.d.ts.map +1 -0
  46. package/dist/components/Badge/examples/05-semantic-colors.js +10 -0
  47. package/dist/components/Badge/examples/05-semantic-colors.js.map +1 -0
  48. package/dist/components/Badge/examples/index.d.ts +10 -4
  49. package/dist/components/Badge/examples/index.d.ts.map +1 -1
  50. package/dist/components/Badge/examples/index.js +10 -4
  51. package/dist/components/Badge/examples/index.js.map +1 -1
  52. package/dist/components/Badge/examples.json +24 -9
  53. package/dist/components/Badge/index.d.ts.map +1 -1
  54. package/dist/components/Badge/index.js +12 -15
  55. package/dist/components/Badge/index.js.map +1 -1
  56. package/dist/components/Banner/examples/01-variants.d.ts +6 -0
  57. package/dist/components/Banner/examples/01-variants.d.ts.map +1 -0
  58. package/dist/components/Banner/examples/01-variants.js +10 -0
  59. package/dist/components/Banner/examples/01-variants.js.map +1 -0
  60. package/dist/components/Banner/examples/02-dismissible.d.ts +6 -0
  61. package/dist/components/Banner/examples/02-dismissible.d.ts.map +1 -0
  62. package/dist/components/Banner/examples/02-dismissible.js +13 -0
  63. package/dist/components/Banner/examples/02-dismissible.js.map +1 -0
  64. package/dist/components/Banner/examples/03-form-feedback.d.ts +6 -0
  65. package/dist/components/Banner/examples/03-form-feedback.d.ts.map +1 -0
  66. package/dist/components/Banner/examples/03-form-feedback.js +21 -0
  67. package/dist/components/Banner/examples/03-form-feedback.js.map +1 -0
  68. package/dist/components/Banner/examples/04-settings-panel.d.ts +6 -0
  69. package/dist/components/Banner/examples/04-settings-panel.d.ts.map +1 -0
  70. package/dist/components/Banner/examples/04-settings-panel.js +10 -0
  71. package/dist/components/Banner/examples/04-settings-panel.js.map +1 -0
  72. package/dist/components/Banner/examples/05-body-only.d.ts +6 -0
  73. package/dist/components/Banner/examples/05-body-only.d.ts.map +1 -0
  74. package/dist/components/Banner/examples/05-body-only.js +10 -0
  75. package/dist/components/Banner/examples/05-body-only.js.map +1 -0
  76. package/dist/components/Banner/examples/index.d.ts +10 -2
  77. package/dist/components/Banner/examples/index.d.ts.map +1 -1
  78. package/dist/components/Banner/examples/index.js +10 -2
  79. package/dist/components/Banner/examples/index.js.map +1 -1
  80. package/dist/components/Banner/examples.json +24 -4
  81. package/dist/components/Banner/index.d.ts.map +1 -1
  82. package/dist/components/Banner/index.js +13 -16
  83. package/dist/components/Banner/index.js.map +1 -1
  84. package/dist/components/Button/examples/01-variants.d.ts.map +1 -1
  85. package/dist/components/Button/examples/01-variants.js +12 -4
  86. package/dist/components/Button/examples/01-variants.js.map +1 -1
  87. package/dist/components/Button/examples/02-multi-actions.d.ts.map +1 -1
  88. package/dist/components/Button/examples/02-multi-actions.js.map +1 -1
  89. package/dist/components/Button/examples/04-sub-stack-actions.js +1 -1
  90. package/dist/components/Button/examples/04-sub-stack-actions.js.map +1 -1
  91. package/dist/components/Button/examples/06-icons.d.ts +6 -0
  92. package/dist/components/Button/examples/06-icons.d.ts.map +1 -0
  93. package/dist/components/Button/examples/06-icons.js +11 -0
  94. package/dist/components/Button/examples/06-icons.js.map +1 -0
  95. package/dist/components/Button/examples/07-split-button.d.ts +6 -0
  96. package/dist/components/Button/examples/07-split-button.d.ts.map +1 -0
  97. package/dist/components/Button/examples/07-split-button.js +20 -0
  98. package/dist/components/Button/examples/07-split-button.js.map +1 -0
  99. package/dist/components/Button/examples/08-button-group.d.ts +6 -0
  100. package/dist/components/Button/examples/08-button-group.d.ts.map +1 -0
  101. package/dist/components/Button/examples/08-button-group.js +14 -0
  102. package/dist/components/Button/examples/08-button-group.js.map +1 -0
  103. package/dist/components/Button/examples/index.d.ts +6 -0
  104. package/dist/components/Button/examples/index.d.ts.map +1 -1
  105. package/dist/components/Button/examples/index.js +6 -0
  106. package/dist/components/Button/examples/index.js.map +1 -1
  107. package/dist/components/Button/examples.json +19 -4
  108. package/dist/components/Button/index.d.ts.map +1 -1
  109. package/dist/components/Button/index.js +6 -0
  110. package/dist/components/Button/index.js.map +1 -1
  111. package/dist/components/Card/examples/01-notification.d.ts +6 -0
  112. package/dist/components/Card/examples/01-notification.d.ts.map +1 -0
  113. package/dist/components/Card/examples/01-notification.js +13 -0
  114. package/dist/components/Card/examples/01-notification.js.map +1 -0
  115. package/dist/components/Card/examples/02-settings-panel.d.ts +6 -0
  116. package/dist/components/Card/examples/02-settings-panel.d.ts.map +1 -0
  117. package/dist/components/Card/examples/02-settings-panel.js +18 -0
  118. package/dist/components/Card/examples/02-settings-panel.js.map +1 -0
  119. package/dist/components/Card/examples/03-task-progress.d.ts +6 -0
  120. package/dist/components/Card/examples/03-task-progress.d.ts.map +1 -0
  121. package/dist/components/Card/examples/03-task-progress.js +17 -0
  122. package/dist/components/Card/examples/03-task-progress.js.map +1 -0
  123. package/dist/components/Card/examples/index.d.ts +6 -2
  124. package/dist/components/Card/examples/index.d.ts.map +1 -1
  125. package/dist/components/Card/examples/index.js +6 -2
  126. package/dist/components/Card/examples/index.js.map +1 -1
  127. package/dist/components/Card/examples.json +14 -4
  128. package/dist/components/Card/index.d.ts.map +1 -1
  129. package/dist/components/Card/index.js +6 -2
  130. package/dist/components/Card/index.js.map +1 -1
  131. package/dist/components/Checkbox/examples/01-basic-states.d.ts +6 -0
  132. package/dist/components/Checkbox/examples/01-basic-states.d.ts.map +1 -0
  133. package/dist/components/Checkbox/examples/01-basic-states.js +10 -0
  134. package/dist/components/Checkbox/examples/01-basic-states.js.map +1 -0
  135. package/dist/components/Checkbox/examples/02-helper-text.d.ts +6 -0
  136. package/dist/components/Checkbox/examples/02-helper-text.d.ts.map +1 -0
  137. package/dist/components/Checkbox/examples/02-helper-text.js +10 -0
  138. package/dist/components/Checkbox/examples/02-helper-text.js.map +1 -0
  139. package/dist/components/Checkbox/examples/03-controlled.d.ts +6 -0
  140. package/dist/components/Checkbox/examples/03-controlled.d.ts.map +1 -0
  141. package/dist/components/Checkbox/examples/03-controlled.js +13 -0
  142. package/dist/components/Checkbox/examples/03-controlled.js.map +1 -0
  143. package/dist/components/Checkbox/examples/04-group.d.ts +6 -0
  144. package/dist/components/Checkbox/examples/04-group.d.ts.map +1 -0
  145. package/dist/components/Checkbox/examples/04-group.js +25 -0
  146. package/dist/components/Checkbox/examples/04-group.js.map +1 -0
  147. package/dist/components/Checkbox/examples/05-indeterminate.d.ts +6 -0
  148. package/dist/components/Checkbox/examples/05-indeterminate.d.ts.map +1 -0
  149. package/dist/components/Checkbox/examples/05-indeterminate.js +26 -0
  150. package/dist/components/Checkbox/examples/05-indeterminate.js.map +1 -0
  151. package/dist/components/Checkbox/examples/06-consent-form.d.ts +6 -0
  152. package/dist/components/Checkbox/examples/06-consent-form.d.ts.map +1 -0
  153. package/dist/components/Checkbox/examples/06-consent-form.js +14 -0
  154. package/dist/components/Checkbox/examples/06-consent-form.js.map +1 -0
  155. package/dist/components/Checkbox/examples/index.d.ts +12 -4
  156. package/dist/components/Checkbox/examples/index.d.ts.map +1 -1
  157. package/dist/components/Checkbox/examples/index.js +12 -4
  158. package/dist/components/Checkbox/examples/index.js.map +1 -1
  159. package/dist/components/Checkbox/examples.json +29 -9
  160. package/dist/components/Checkbox/index.d.ts.map +1 -1
  161. package/dist/components/Checkbox/index.js +13 -16
  162. package/dist/components/Checkbox/index.js.map +1 -1
  163. package/dist/components/Color/examples/01-basic-color-picker.d.ts +6 -0
  164. package/dist/components/Color/examples/01-basic-color-picker.d.ts.map +1 -0
  165. package/dist/components/Color/examples/01-basic-color-picker.js +11 -0
  166. package/dist/components/Color/examples/01-basic-color-picker.js.map +1 -0
  167. package/dist/components/Color/examples/02-color-picker-opacity.d.ts +6 -0
  168. package/dist/components/Color/examples/02-color-picker-opacity.d.ts.map +1 -0
  169. package/dist/components/Color/examples/02-color-picker-opacity.js +13 -0
  170. package/dist/components/Color/examples/02-color-picker-opacity.js.map +1 -0
  171. package/dist/components/Color/examples/03-color-picker-preview.d.ts +6 -0
  172. package/dist/components/Color/examples/03-color-picker-preview.d.ts.map +1 -0
  173. package/dist/components/Color/examples/03-color-picker-preview.js +13 -0
  174. package/dist/components/Color/examples/03-color-picker-preview.js.map +1 -0
  175. package/dist/components/Color/examples/04-color-slider-primitive.d.ts +6 -0
  176. package/dist/components/Color/examples/04-color-slider-primitive.d.ts.map +1 -0
  177. package/dist/components/Color/examples/04-color-slider-primitive.js +16 -0
  178. package/dist/components/Color/examples/04-color-slider-primitive.js.map +1 -0
  179. package/dist/components/Color/examples/index.d.ts +8 -3
  180. package/dist/components/Color/examples/index.d.ts.map +1 -1
  181. package/dist/components/Color/examples/index.js +8 -3
  182. package/dist/components/Color/examples/index.js.map +1 -1
  183. package/dist/components/Color/examples.json +18 -8
  184. package/dist/components/Color/index.d.ts.map +1 -1
  185. package/dist/components/Color/index.js +8 -4
  186. package/dist/components/Color/index.js.map +1 -1
  187. package/dist/components/Expand/examples/01-basic.d.ts +6 -0
  188. package/dist/components/Expand/examples/01-basic.d.ts.map +1 -0
  189. package/dist/components/Expand/examples/01-basic.js +10 -0
  190. package/dist/components/Expand/examples/01-basic.js.map +1 -0
  191. package/dist/components/Expand/examples/02-accordion.d.ts +6 -0
  192. package/dist/components/Expand/examples/02-accordion.d.ts.map +1 -0
  193. package/dist/components/Expand/examples/02-accordion.js +30 -0
  194. package/dist/components/Expand/examples/02-accordion.js.map +1 -0
  195. package/dist/components/Expand/examples/03-custom-trigger.d.ts +6 -0
  196. package/dist/components/Expand/examples/03-custom-trigger.d.ts.map +1 -0
  197. package/dist/components/Expand/examples/03-custom-trigger.js +11 -0
  198. package/dist/components/Expand/examples/03-custom-trigger.js.map +1 -0
  199. package/dist/components/Expand/examples/04-directions.d.ts +6 -0
  200. package/dist/components/Expand/examples/04-directions.d.ts.map +1 -0
  201. package/dist/components/Expand/examples/04-directions.js +10 -0
  202. package/dist/components/Expand/examples/04-directions.js.map +1 -0
  203. package/dist/components/Expand/examples/05-settings-panel.d.ts +6 -0
  204. package/dist/components/Expand/examples/05-settings-panel.d.ts.map +1 -0
  205. package/dist/components/Expand/examples/05-settings-panel.js +11 -0
  206. package/dist/components/Expand/examples/05-settings-panel.js.map +1 -0
  207. package/dist/components/Expand/examples/06-disabled.d.ts +6 -0
  208. package/dist/components/Expand/examples/06-disabled.d.ts.map +1 -0
  209. package/dist/components/Expand/examples/06-disabled.js +10 -0
  210. package/dist/components/Expand/examples/06-disabled.js.map +1 -0
  211. package/dist/components/Expand/examples/07-inline-info.d.ts +6 -0
  212. package/dist/components/Expand/examples/07-inline-info.d.ts.map +1 -0
  213. package/dist/components/Expand/examples/07-inline-info.js +11 -0
  214. package/dist/components/Expand/examples/07-inline-info.js.map +1 -0
  215. package/dist/components/Expand/examples/index.d.ts +14 -2
  216. package/dist/components/Expand/examples/index.d.ts.map +1 -1
  217. package/dist/components/Expand/examples/index.js +14 -2
  218. package/dist/components/Expand/examples/index.js.map +1 -1
  219. package/dist/components/Expand/examples.json +34 -4
  220. package/dist/components/Expand/index.d.ts.map +1 -1
  221. package/dist/components/Expand/index.js +14 -2
  222. package/dist/components/Expand/index.js.map +1 -1
  223. package/dist/components/Flex/examples/01-axis-control.d.ts +11 -0
  224. package/dist/components/Flex/examples/01-axis-control.d.ts.map +1 -0
  225. package/dist/components/Flex/examples/01-axis-control.js +149 -0
  226. package/dist/components/Flex/examples/01-axis-control.js.map +1 -0
  227. package/dist/components/Flex/examples/02-wrap-overflow.d.ts +11 -0
  228. package/dist/components/Flex/examples/02-wrap-overflow.d.ts.map +1 -0
  229. package/dist/components/Flex/examples/02-wrap-overflow.js +147 -0
  230. package/dist/components/Flex/examples/02-wrap-overflow.js.map +1 -0
  231. package/dist/components/Flex/examples/03-container-query-reflow.d.ts +11 -0
  232. package/dist/components/Flex/examples/03-container-query-reflow.d.ts.map +1 -0
  233. package/dist/components/Flex/examples/03-container-query-reflow.js +151 -0
  234. package/dist/components/Flex/examples/03-container-query-reflow.js.map +1 -0
  235. package/dist/components/Flex/examples/index.d.ts +6 -2
  236. package/dist/components/Flex/examples/index.d.ts.map +1 -1
  237. package/dist/components/Flex/examples/index.js +6 -2
  238. package/dist/components/Flex/examples/index.js.map +1 -1
  239. package/dist/components/Flex/examples.json +14 -4
  240. package/dist/components/Flex/index.d.ts.map +1 -1
  241. package/dist/components/Flex/index.js +12 -8
  242. package/dist/components/Flex/index.js.map +1 -1
  243. package/dist/components/Gallery/examples/01-grid-composition.d.ts +11 -0
  244. package/dist/components/Gallery/examples/01-grid-composition.d.ts.map +1 -0
  245. package/dist/components/Gallery/examples/01-grid-composition.js +95 -0
  246. package/dist/components/Gallery/examples/01-grid-composition.js.map +1 -0
  247. package/dist/components/Gallery/examples/02-item-orientation.d.ts +11 -0
  248. package/dist/components/Gallery/examples/02-item-orientation.d.ts.map +1 -0
  249. package/dist/components/Gallery/examples/02-item-orientation.js +106 -0
  250. package/dist/components/Gallery/examples/02-item-orientation.js.map +1 -0
  251. package/dist/components/Gallery/examples/03-span-layout.d.ts +11 -0
  252. package/dist/components/Gallery/examples/03-span-layout.d.ts.map +1 -0
  253. package/dist/components/Gallery/examples/03-span-layout.js +95 -0
  254. package/dist/components/Gallery/examples/03-span-layout.js.map +1 -0
  255. package/dist/components/Gallery/examples/index.d.ts +6 -2
  256. package/dist/components/Gallery/examples/index.d.ts.map +1 -1
  257. package/dist/components/Gallery/examples/index.js +6 -2
  258. package/dist/components/Gallery/examples/index.js.map +1 -1
  259. package/dist/components/Gallery/examples.json +14 -4
  260. package/dist/components/Gallery/index.d.ts.map +1 -1
  261. package/dist/components/Gallery/index.js +6 -2
  262. package/dist/components/Gallery/index.js.map +1 -1
  263. package/dist/components/Grid/examples/02-track-placement.d.ts +11 -0
  264. package/dist/components/Grid/examples/02-track-placement.d.ts.map +1 -0
  265. package/dist/components/Grid/examples/02-track-placement.js +181 -0
  266. package/dist/components/Grid/examples/02-track-placement.js.map +1 -0
  267. package/dist/components/Grid/examples/03-editorial-spans.d.ts +11 -0
  268. package/dist/components/Grid/examples/03-editorial-spans.d.ts.map +1 -0
  269. package/dist/components/Grid/examples/03-editorial-spans.js +167 -0
  270. package/dist/components/Grid/examples/03-editorial-spans.js.map +1 -0
  271. package/dist/components/Grid/examples/04-responsive-card-rail.d.ts +11 -0
  272. package/dist/components/Grid/examples/04-responsive-card-rail.d.ts.map +1 -0
  273. package/dist/components/Grid/examples/04-responsive-card-rail.js +126 -0
  274. package/dist/components/Grid/examples/04-responsive-card-rail.js.map +1 -0
  275. package/dist/components/Grid/examples/index.d.ts +6 -0
  276. package/dist/components/Grid/examples/index.d.ts.map +1 -1
  277. package/dist/components/Grid/examples/index.js +6 -0
  278. package/dist/components/Grid/examples/index.js.map +1 -1
  279. package/dist/components/Grid/examples.json +15 -0
  280. package/dist/components/Grid/index.d.ts.map +1 -1
  281. package/dist/components/Grid/index.js +6 -0
  282. package/dist/components/Grid/index.js.map +1 -1
  283. package/dist/components/Group/examples/02-create-project.d.ts +6 -0
  284. package/dist/components/Group/examples/02-create-project.d.ts.map +1 -0
  285. package/dist/components/Group/examples/02-create-project.js +11 -0
  286. package/dist/components/Group/examples/02-create-project.js.map +1 -0
  287. package/dist/components/Group/examples/03-filter-bar.d.ts +6 -0
  288. package/dist/components/Group/examples/03-filter-bar.d.ts.map +1 -0
  289. package/dist/components/Group/examples/03-filter-bar.js +14 -0
  290. package/dist/components/Group/examples/03-filter-bar.js.map +1 -0
  291. package/dist/components/Group/examples/04-documentation-search.d.ts +6 -0
  292. package/dist/components/Group/examples/04-documentation-search.d.ts.map +1 -0
  293. package/dist/components/Group/examples/04-documentation-search.js +11 -0
  294. package/dist/components/Group/examples/04-documentation-search.js.map +1 -0
  295. package/dist/components/Group/examples/05-email-signup.d.ts +6 -0
  296. package/dist/components/Group/examples/05-email-signup.d.ts.map +1 -0
  297. package/dist/components/Group/examples/05-email-signup.js +11 -0
  298. package/dist/components/Group/examples/05-email-signup.js.map +1 -0
  299. package/dist/components/Group/examples/06-copy-command.d.ts +6 -0
  300. package/dist/components/Group/examples/06-copy-command.d.ts.map +1 -0
  301. package/dist/components/Group/examples/06-copy-command.js +11 -0
  302. package/dist/components/Group/examples/06-copy-command.js.map +1 -0
  303. package/dist/components/Group/examples/07-delete-confirmation.d.ts +6 -0
  304. package/dist/components/Group/examples/07-delete-confirmation.d.ts.map +1 -0
  305. package/dist/components/Group/examples/07-delete-confirmation.js +11 -0
  306. package/dist/components/Group/examples/07-delete-confirmation.js.map +1 -0
  307. package/dist/components/Group/examples/08-slider-integration.d.ts +6 -0
  308. package/dist/components/Group/examples/08-slider-integration.d.ts.map +1 -0
  309. package/dist/components/Group/examples/08-slider-integration.js +19 -0
  310. package/dist/components/Group/examples/08-slider-integration.js.map +1 -0
  311. package/dist/components/Group/examples/index.d.ts +14 -0
  312. package/dist/components/Group/examples/index.d.ts.map +1 -1
  313. package/dist/components/Group/examples/index.js +14 -0
  314. package/dist/components/Group/examples/index.js.map +1 -1
  315. package/dist/components/Group/examples.json +35 -0
  316. package/dist/components/Group/index.d.ts.map +1 -1
  317. package/dist/components/Group/index.js +14 -0
  318. package/dist/components/Group/index.js.map +1 -1
  319. package/dist/components/Input/examples/03-sign-in.d.ts +6 -0
  320. package/dist/components/Input/examples/03-sign-in.d.ts.map +1 -0
  321. package/dist/components/Input/examples/03-sign-in.js +22 -0
  322. package/dist/components/Input/examples/03-sign-in.js.map +1 -0
  323. package/dist/components/Input/examples/04-search.d.ts +6 -0
  324. package/dist/components/Input/examples/04-search.d.ts.map +1 -0
  325. package/dist/components/Input/examples/04-search.js +16 -0
  326. package/dist/components/Input/examples/04-search.js.map +1 -0
  327. package/dist/components/Input/examples/05-user-handle.d.ts +6 -0
  328. package/dist/components/Input/examples/05-user-handle.d.ts.map +1 -0
  329. package/dist/components/Input/examples/05-user-handle.js +27 -0
  330. package/dist/components/Input/examples/05-user-handle.js.map +1 -0
  331. package/dist/components/Input/examples/06-api-key.d.ts +6 -0
  332. package/dist/components/Input/examples/06-api-key.d.ts.map +1 -0
  333. package/dist/components/Input/examples/06-api-key.js +35 -0
  334. package/dist/components/Input/examples/06-api-key.js.map +1 -0
  335. package/dist/components/Input/examples/07-url-validation.d.ts +6 -0
  336. package/dist/components/Input/examples/07-url-validation.d.ts.map +1 -0
  337. package/dist/components/Input/examples/07-url-validation.js +23 -0
  338. package/dist/components/Input/examples/07-url-validation.js.map +1 -0
  339. package/dist/components/Input/examples/08-quantity.d.ts +6 -0
  340. package/dist/components/Input/examples/08-quantity.d.ts.map +1 -0
  341. package/dist/components/Input/examples/08-quantity.js +13 -0
  342. package/dist/components/Input/examples/08-quantity.js.map +1 -0
  343. package/dist/components/Input/examples/index.d.ts +12 -0
  344. package/dist/components/Input/examples/index.d.ts.map +1 -1
  345. package/dist/components/Input/examples/index.js +12 -0
  346. package/dist/components/Input/examples/index.js.map +1 -1
  347. package/dist/components/Input/examples.json +30 -0
  348. package/dist/components/Input/index.d.ts.map +1 -1
  349. package/dist/components/Input/index.js +12 -0
  350. package/dist/components/Input/index.js.map +1 -1
  351. package/dist/components/List/examples/02-review-queue.d.ts +6 -0
  352. package/dist/components/List/examples/02-review-queue.d.ts.map +1 -0
  353. package/dist/components/List/examples/02-review-queue.js +32 -0
  354. package/dist/components/List/examples/02-review-queue.js.map +1 -0
  355. package/dist/components/List/examples/03-notification-rules.d.ts +6 -0
  356. package/dist/components/List/examples/03-notification-rules.d.ts.map +1 -0
  357. package/dist/components/List/examples/03-notification-rules.js +40 -0
  358. package/dist/components/List/examples/03-notification-rules.js.map +1 -0
  359. package/dist/components/List/examples/04-quota-editor.d.ts +6 -0
  360. package/dist/components/List/examples/04-quota-editor.d.ts.map +1 -0
  361. package/dist/components/List/examples/04-quota-editor.js +40 -0
  362. package/dist/components/List/examples/04-quota-editor.js.map +1 -0
  363. package/dist/components/List/examples/05-permissions-matrix.d.ts +6 -0
  364. package/dist/components/List/examples/05-permissions-matrix.d.ts.map +1 -0
  365. package/dist/components/List/examples/05-permissions-matrix.js +39 -0
  366. package/dist/components/List/examples/05-permissions-matrix.js.map +1 -0
  367. package/dist/components/List/examples/index.d.ts +8 -0
  368. package/dist/components/List/examples/index.d.ts.map +1 -1
  369. package/dist/components/List/examples/index.js +8 -0
  370. package/dist/components/List/examples/index.js.map +1 -1
  371. package/dist/components/List/examples.json +20 -0
  372. package/dist/components/List/index.d.ts.map +1 -1
  373. package/dist/components/List/index.js +10 -2
  374. package/dist/components/List/index.js.map +1 -1
  375. package/dist/components/Menu/examples/03-toolbar-dropdown.d.ts +6 -0
  376. package/dist/components/Menu/examples/03-toolbar-dropdown.d.ts.map +1 -0
  377. package/dist/components/Menu/examples/03-toolbar-dropdown.js +11 -0
  378. package/dist/components/Menu/examples/03-toolbar-dropdown.js.map +1 -0
  379. package/dist/components/Menu/examples/04-table-row-actions.d.ts +6 -0
  380. package/dist/components/Menu/examples/04-table-row-actions.d.ts.map +1 -0
  381. package/dist/components/Menu/examples/04-table-row-actions.js +16 -0
  382. package/dist/components/Menu/examples/04-table-row-actions.js.map +1 -0
  383. package/dist/components/Menu/examples/05-context-menu.d.ts +6 -0
  384. package/dist/components/Menu/examples/05-context-menu.d.ts.map +1 -0
  385. package/dist/components/Menu/examples/05-context-menu.js +10 -0
  386. package/dist/components/Menu/examples/05-context-menu.js.map +1 -0
  387. package/dist/components/Menu/examples/06-view-options.d.ts +6 -0
  388. package/dist/components/Menu/examples/06-view-options.d.ts.map +1 -0
  389. package/dist/components/Menu/examples/06-view-options.js +15 -0
  390. package/dist/components/Menu/examples/06-view-options.js.map +1 -0
  391. package/dist/components/Menu/examples/index.d.ts +8 -0
  392. package/dist/components/Menu/examples/index.d.ts.map +1 -1
  393. package/dist/components/Menu/examples/index.js +8 -0
  394. package/dist/components/Menu/examples/index.js.map +1 -1
  395. package/dist/components/Menu/examples.json +20 -0
  396. package/dist/components/Menu/index.d.ts.map +1 -1
  397. package/dist/components/Menu/index.js +8 -0
  398. package/dist/components/Menu/index.js.map +1 -1
  399. package/dist/components/Modal/examples/02-form-modal.js +1 -1
  400. package/dist/components/Modal/examples/02-form-modal.js.map +1 -1
  401. package/dist/components/Modal/examples/03-delete-confirmation.d.ts +6 -0
  402. package/dist/components/Modal/examples/03-delete-confirmation.d.ts.map +1 -0
  403. package/dist/components/Modal/examples/03-delete-confirmation.js +13 -0
  404. package/dist/components/Modal/examples/03-delete-confirmation.js.map +1 -0
  405. package/dist/components/Modal/examples/04-create-api-key.d.ts +6 -0
  406. package/dist/components/Modal/examples/04-create-api-key.d.ts.map +1 -0
  407. package/dist/components/Modal/examples/04-create-api-key.js +14 -0
  408. package/dist/components/Modal/examples/04-create-api-key.js.map +1 -0
  409. package/dist/components/Modal/examples/05-notification-settings.d.ts +6 -0
  410. package/dist/components/Modal/examples/05-notification-settings.d.ts.map +1 -0
  411. package/dist/components/Modal/examples/05-notification-settings.js +19 -0
  412. package/dist/components/Modal/examples/05-notification-settings.js.map +1 -0
  413. package/dist/components/Modal/examples/index.d.ts +6 -0
  414. package/dist/components/Modal/examples/index.d.ts.map +1 -1
  415. package/dist/components/Modal/examples/index.js +6 -0
  416. package/dist/components/Modal/examples/index.js.map +1 -1
  417. package/dist/components/Modal/examples.json +16 -1
  418. package/dist/components/Modal/index.d.ts.map +1 -1
  419. package/dist/components/Modal/index.js +8 -0
  420. package/dist/components/Modal/index.js.map +1 -1
  421. package/dist/components/Panel/examples/01-sidebar-toggle.d.ts +6 -0
  422. package/dist/components/Panel/examples/01-sidebar-toggle.d.ts.map +1 -0
  423. package/dist/components/Panel/examples/01-sidebar-toggle.js +10 -0
  424. package/dist/components/Panel/examples/01-sidebar-toggle.js.map +1 -0
  425. package/dist/components/Panel/examples/index.d.ts +3 -0
  426. package/dist/components/Panel/examples/index.d.ts.map +1 -0
  427. package/dist/components/Panel/examples/index.js +3 -0
  428. package/dist/components/Panel/examples/index.js.map +1 -0
  429. package/dist/components/Panel/examples.json +7 -0
  430. package/dist/components/Panel/index.d.ts +1 -0
  431. package/dist/components/Panel/index.d.ts.map +1 -1
  432. package/dist/components/Panel/index.js +8 -0
  433. package/dist/components/Panel/index.js.map +1 -1
  434. package/dist/components/Path/examples/01-basic-path.js +2 -2
  435. package/dist/components/Path/examples/01-basic-path.js.map +1 -1
  436. package/dist/components/Path/examples/02-custom-separator.d.ts +6 -0
  437. package/dist/components/Path/examples/02-custom-separator.d.ts.map +1 -0
  438. package/dist/components/Path/examples/02-custom-separator.js +11 -0
  439. package/dist/components/Path/examples/02-custom-separator.js.map +1 -0
  440. package/dist/components/Path/examples/03-collapsed-breadcrumb.d.ts +6 -0
  441. package/dist/components/Path/examples/03-collapsed-breadcrumb.d.ts.map +1 -0
  442. package/dist/components/Path/examples/03-collapsed-breadcrumb.js +16 -0
  443. package/dist/components/Path/examples/03-collapsed-breadcrumb.js.map +1 -0
  444. package/dist/components/Path/examples/index.d.ts +4 -0
  445. package/dist/components/Path/examples/index.d.ts.map +1 -1
  446. package/dist/components/Path/examples/index.js +4 -0
  447. package/dist/components/Path/examples/index.js.map +1 -1
  448. package/dist/components/Path/examples.json +11 -1
  449. package/dist/components/Path/index.d.ts.map +1 -1
  450. package/dist/components/Path/index.js +11 -7
  451. package/dist/components/Path/index.js.map +1 -1
  452. package/dist/components/Popover/examples/01-basic-popover.d.ts.map +1 -1
  453. package/dist/components/Popover/examples/01-basic-popover.js +5 -4
  454. package/dist/components/Popover/examples/01-basic-popover.js.map +1 -1
  455. package/dist/components/Popover/examples/02-toggleable-options.d.ts +6 -0
  456. package/dist/components/Popover/examples/02-toggleable-options.d.ts.map +1 -0
  457. package/dist/components/Popover/examples/02-toggleable-options.js +23 -0
  458. package/dist/components/Popover/examples/02-toggleable-options.js.map +1 -0
  459. package/dist/components/Popover/examples/03-table-row-actions.d.ts +6 -0
  460. package/dist/components/Popover/examples/03-table-row-actions.d.ts.map +1 -0
  461. package/dist/components/Popover/examples/03-table-row-actions.js +17 -0
  462. package/dist/components/Popover/examples/03-table-row-actions.js.map +1 -0
  463. package/dist/components/Popover/examples/04-input-form.d.ts +6 -0
  464. package/dist/components/Popover/examples/04-input-form.d.ts.map +1 -0
  465. package/dist/components/Popover/examples/04-input-form.js +14 -0
  466. package/dist/components/Popover/examples/04-input-form.js.map +1 -0
  467. package/dist/components/Popover/examples/05-arrow-positions.d.ts +6 -0
  468. package/dist/components/Popover/examples/05-arrow-positions.d.ts.map +1 -0
  469. package/dist/components/Popover/examples/05-arrow-positions.js +11 -0
  470. package/dist/components/Popover/examples/05-arrow-positions.js.map +1 -0
  471. package/dist/components/Popover/examples/index.d.ts +8 -0
  472. package/dist/components/Popover/examples/index.d.ts.map +1 -1
  473. package/dist/components/Popover/examples/index.js +8 -0
  474. package/dist/components/Popover/examples/index.js.map +1 -1
  475. package/dist/components/Popover/examples.json +23 -3
  476. package/dist/components/Popover/index.d.ts.map +1 -1
  477. package/dist/components/Popover/index.js +8 -0
  478. package/dist/components/Popover/index.js.map +1 -1
  479. package/dist/components/Progress/examples/01-basic-progress.d.ts.map +1 -1
  480. package/dist/components/Progress/examples/01-basic-progress.js +20 -5
  481. package/dist/components/Progress/examples/01-basic-progress.js.map +1 -1
  482. package/dist/components/Progress/examples/02-storage-quota.d.ts +6 -0
  483. package/dist/components/Progress/examples/02-storage-quota.d.ts.map +1 -0
  484. package/dist/components/Progress/examples/02-storage-quota.js +12 -0
  485. package/dist/components/Progress/examples/02-storage-quota.js.map +1 -0
  486. package/dist/components/Progress/examples/03-onboarding-steps.d.ts +6 -0
  487. package/dist/components/Progress/examples/03-onboarding-steps.d.ts.map +1 -0
  488. package/dist/components/Progress/examples/03-onboarding-steps.js +14 -0
  489. package/dist/components/Progress/examples/03-onboarding-steps.js.map +1 -0
  490. package/dist/components/Progress/examples/04-indeterminate.d.ts +6 -0
  491. package/dist/components/Progress/examples/04-indeterminate.d.ts.map +1 -0
  492. package/dist/components/Progress/examples/04-indeterminate.js +19 -0
  493. package/dist/components/Progress/examples/04-indeterminate.js.map +1 -0
  494. package/dist/components/Progress/examples/05-skill-levels.d.ts +6 -0
  495. package/dist/components/Progress/examples/05-skill-levels.d.ts.map +1 -0
  496. package/dist/components/Progress/examples/05-skill-levels.js +15 -0
  497. package/dist/components/Progress/examples/05-skill-levels.js.map +1 -0
  498. package/dist/components/Progress/examples/index.d.ts +8 -0
  499. package/dist/components/Progress/examples/index.d.ts.map +1 -1
  500. package/dist/components/Progress/examples/index.js +8 -0
  501. package/dist/components/Progress/examples/index.js.map +1 -1
  502. package/dist/components/Progress/examples.json +23 -3
  503. package/dist/components/Progress/index.d.ts.map +1 -1
  504. package/dist/components/Progress/index.js +11 -14
  505. package/dist/components/Progress/index.js.map +1 -1
  506. package/dist/components/Scroll/examples/01-basic-scroll.d.ts.map +1 -1
  507. package/dist/components/Scroll/examples/01-basic-scroll.js +29 -3
  508. package/dist/components/Scroll/examples/01-basic-scroll.js.map +1 -1
  509. package/dist/components/Scroll/examples/02-settings-panel.d.ts +6 -0
  510. package/dist/components/Scroll/examples/02-settings-panel.d.ts.map +1 -0
  511. package/dist/components/Scroll/examples/02-settings-panel.js +21 -0
  512. package/dist/components/Scroll/examples/02-settings-panel.js.map +1 -0
  513. package/dist/components/Scroll/examples/03-horizontal-tags.d.ts +6 -0
  514. package/dist/components/Scroll/examples/03-horizontal-tags.d.ts.map +1 -0
  515. package/dist/components/Scroll/examples/03-horizontal-tags.js +24 -0
  516. package/dist/components/Scroll/examples/03-horizontal-tags.js.map +1 -0
  517. package/dist/components/Scroll/examples/index.d.ts +4 -0
  518. package/dist/components/Scroll/examples/index.d.ts.map +1 -1
  519. package/dist/components/Scroll/examples/index.js +4 -0
  520. package/dist/components/Scroll/examples/index.js.map +1 -1
  521. package/dist/components/Scroll/examples.json +13 -3
  522. package/dist/components/Scroll/index.d.ts.map +1 -1
  523. package/dist/components/Scroll/index.js +4 -0
  524. package/dist/components/Scroll/index.js.map +1 -1
  525. package/dist/components/Select/examples/03-country-select.d.ts +6 -0
  526. package/dist/components/Select/examples/03-country-select.d.ts.map +1 -0
  527. package/dist/components/Select/examples/03-country-select.js +28 -0
  528. package/dist/components/Select/examples/03-country-select.js.map +1 -0
  529. package/dist/components/Select/examples/index.d.ts +2 -0
  530. package/dist/components/Select/examples/index.d.ts.map +1 -1
  531. package/dist/components/Select/examples/index.js +2 -0
  532. package/dist/components/Select/examples/index.js.map +1 -1
  533. package/dist/components/Select/examples.json +5 -0
  534. package/dist/components/Select/index.d.ts.map +1 -1
  535. package/dist/components/Select/index.js +2 -0
  536. package/dist/components/Select/index.js.map +1 -1
  537. package/dist/components/Slider/examples/01-basic-slider.d.ts.map +1 -1
  538. package/dist/components/Slider/examples/01-basic-slider.js +7 -4
  539. package/dist/components/Slider/examples/01-basic-slider.js.map +1 -1
  540. package/dist/components/Slider/examples/02-settings-panel.d.ts +6 -0
  541. package/dist/components/Slider/examples/02-settings-panel.d.ts.map +1 -0
  542. package/dist/components/Slider/examples/02-settings-panel.js +20 -0
  543. package/dist/components/Slider/examples/02-settings-panel.js.map +1 -0
  544. package/dist/components/Slider/examples/03-price-range.d.ts +6 -0
  545. package/dist/components/Slider/examples/03-price-range.d.ts.map +1 -0
  546. package/dist/components/Slider/examples/03-price-range.js +13 -0
  547. package/dist/components/Slider/examples/03-price-range.js.map +1 -0
  548. package/dist/components/Slider/examples/04-step-slider.d.ts +6 -0
  549. package/dist/components/Slider/examples/04-step-slider.d.ts.map +1 -0
  550. package/dist/components/Slider/examples/04-step-slider.js +13 -0
  551. package/dist/components/Slider/examples/04-step-slider.js.map +1 -0
  552. package/dist/components/Slider/examples/05-disabled-state.d.ts +6 -0
  553. package/dist/components/Slider/examples/05-disabled-state.d.ts.map +1 -0
  554. package/dist/components/Slider/examples/05-disabled-state.js +10 -0
  555. package/dist/components/Slider/examples/05-disabled-state.js.map +1 -0
  556. package/dist/components/Slider/examples/06-vertical-mixer.d.ts +6 -0
  557. package/dist/components/Slider/examples/06-vertical-mixer.d.ts.map +1 -0
  558. package/dist/components/Slider/examples/06-vertical-mixer.js +17 -0
  559. package/dist/components/Slider/examples/06-vertical-mixer.js.map +1 -0
  560. package/dist/components/Slider/examples/index.d.ts +10 -0
  561. package/dist/components/Slider/examples/index.d.ts.map +1 -1
  562. package/dist/components/Slider/examples/index.js +10 -0
  563. package/dist/components/Slider/examples/index.js.map +1 -1
  564. package/dist/components/Slider/examples.json +28 -3
  565. package/dist/components/Slider/index.d.ts.map +1 -1
  566. package/dist/components/Slider/index.js +10 -0
  567. package/dist/components/Slider/index.js.map +1 -1
  568. package/dist/components/Switch/examples/01-basic-switch.d.ts.map +1 -1
  569. package/dist/components/Switch/examples/01-basic-switch.js +7 -4
  570. package/dist/components/Switch/examples/01-basic-switch.js.map +1 -1
  571. package/dist/components/Switch/examples/02-settings-panel.d.ts +6 -0
  572. package/dist/components/Switch/examples/02-settings-panel.d.ts.map +1 -0
  573. package/dist/components/Switch/examples/02-settings-panel.js +20 -0
  574. package/dist/components/Switch/examples/02-settings-panel.js.map +1 -0
  575. package/dist/components/Switch/examples/03-disabled-state.d.ts +6 -0
  576. package/dist/components/Switch/examples/03-disabled-state.d.ts.map +1 -0
  577. package/dist/components/Switch/examples/03-disabled-state.js +10 -0
  578. package/dist/components/Switch/examples/03-disabled-state.js.map +1 -0
  579. package/dist/components/Switch/examples/04-small-size.d.ts +6 -0
  580. package/dist/components/Switch/examples/04-small-size.d.ts.map +1 -0
  581. package/dist/components/Switch/examples/04-small-size.js +13 -0
  582. package/dist/components/Switch/examples/04-small-size.js.map +1 -0
  583. package/dist/components/Switch/examples/05-controlled-toggle.d.ts +6 -0
  584. package/dist/components/Switch/examples/05-controlled-toggle.d.ts.map +1 -0
  585. package/dist/components/Switch/examples/05-controlled-toggle.js +13 -0
  586. package/dist/components/Switch/examples/05-controlled-toggle.js.map +1 -0
  587. package/dist/components/Switch/examples/index.d.ts +8 -0
  588. package/dist/components/Switch/examples/index.d.ts.map +1 -1
  589. package/dist/components/Switch/examples/index.js +8 -0
  590. package/dist/components/Switch/examples/index.js.map +1 -1
  591. package/dist/components/Switch/examples.json +23 -3
  592. package/dist/components/Switch/index.d.ts.map +1 -1
  593. package/dist/components/Switch/index.js +8 -0
  594. package/dist/components/Switch/index.js.map +1 -1
  595. package/dist/components/Table/index.d.ts.map +1 -1
  596. package/dist/components/Table/index.js.map +1 -1
  597. package/dist/components/Tabs/examples/03-underline-tabs.d.ts +6 -0
  598. package/dist/components/Tabs/examples/03-underline-tabs.d.ts.map +1 -0
  599. package/dist/components/Tabs/examples/03-underline-tabs.js +13 -0
  600. package/dist/components/Tabs/examples/03-underline-tabs.js.map +1 -0
  601. package/dist/components/Tabs/examples/04-vertical-underline-tabs.d.ts +6 -0
  602. package/dist/components/Tabs/examples/04-vertical-underline-tabs.d.ts.map +1 -0
  603. package/dist/components/Tabs/examples/04-vertical-underline-tabs.js +13 -0
  604. package/dist/components/Tabs/examples/04-vertical-underline-tabs.js.map +1 -0
  605. package/dist/components/Tabs/examples/index.d.ts +4 -0
  606. package/dist/components/Tabs/examples/index.d.ts.map +1 -1
  607. package/dist/components/Tabs/examples/index.js +4 -0
  608. package/dist/components/Tabs/examples/index.js.map +1 -1
  609. package/dist/components/Tabs/examples.json +10 -0
  610. package/dist/components/Tabs/index.d.ts.map +1 -1
  611. package/dist/components/Tabs/index.js +4 -0
  612. package/dist/components/Tabs/index.js.map +1 -1
  613. package/dist/components/Textarea/examples/01-basic-textarea.d.ts.map +1 -1
  614. package/dist/components/Textarea/examples/01-basic-textarea.js +8 -5
  615. package/dist/components/Textarea/examples/01-basic-textarea.js.map +1 -1
  616. package/dist/components/Textarea/examples/02-bio-settings.d.ts +6 -0
  617. package/dist/components/Textarea/examples/02-bio-settings.d.ts.map +1 -0
  618. package/dist/components/Textarea/examples/02-bio-settings.js +13 -0
  619. package/dist/components/Textarea/examples/02-bio-settings.js.map +1 -0
  620. package/dist/components/Textarea/examples/03-error-state.d.ts +6 -0
  621. package/dist/components/Textarea/examples/03-error-state.d.ts.map +1 -0
  622. package/dist/components/Textarea/examples/03-error-state.js +14 -0
  623. package/dist/components/Textarea/examples/03-error-state.js.map +1 -0
  624. package/dist/components/Textarea/examples/04-disabled-readonly.d.ts +6 -0
  625. package/dist/components/Textarea/examples/04-disabled-readonly.d.ts.map +1 -0
  626. package/dist/components/Textarea/examples/04-disabled-readonly.js +10 -0
  627. package/dist/components/Textarea/examples/04-disabled-readonly.js.map +1 -0
  628. package/dist/components/Textarea/examples/05-scrolling.d.ts +6 -0
  629. package/dist/components/Textarea/examples/05-scrolling.d.ts.map +1 -0
  630. package/dist/components/Textarea/examples/05-scrolling.js +13 -0
  631. package/dist/components/Textarea/examples/05-scrolling.js.map +1 -0
  632. package/dist/components/Textarea/examples/index.d.ts +8 -0
  633. package/dist/components/Textarea/examples/index.d.ts.map +1 -1
  634. package/dist/components/Textarea/examples/index.js +8 -0
  635. package/dist/components/Textarea/examples/index.js.map +1 -1
  636. package/dist/components/Textarea/examples.json +23 -3
  637. package/dist/components/Textarea/index.d.ts.map +1 -1
  638. package/dist/components/Textarea/index.js +8 -0
  639. package/dist/components/Textarea/index.js.map +1 -1
  640. package/dist/components/Toast/index.d.ts.map +1 -1
  641. package/dist/components/Toast/index.js +1 -1
  642. package/dist/components/Toast/index.js.map +1 -1
  643. package/dist/generated-data.d.ts.map +1 -1
  644. package/dist/generated-data.js +999 -429
  645. package/dist/generated-data.js.map +1 -1
  646. package/dist/generated-styles.d.ts.map +1 -1
  647. package/dist/generated-styles.js +1135 -203
  648. package/dist/generated-styles.js.map +1 -1
  649. package/dist/generated-styles.json +1135 -203
  650. package/dist/index.d.ts +1 -1
  651. package/dist/index.d.ts.map +1 -1
  652. package/dist/index.js.map +1 -1
  653. package/dist/patterns/data/badge-row/variations/main/index.js +1 -1
  654. package/dist/patterns/data/badge-row/variations/main/index.js.map +1 -1
  655. package/dist/patterns/data/badge-row/variations/mixed/index.js +1 -1
  656. package/dist/patterns/data/badge-row/variations/mixed/index.js.map +1 -1
  657. package/dist/patterns/data/badge-row/variations/outline/index.js +1 -1
  658. package/dist/patterns/data/badge-row/variations/outline/index.js.map +1 -1
  659. package/dist/patterns/data/data-table-row/variations/expandable/index.js +1 -1
  660. package/dist/patterns/data/data-table-row/variations/expandable/index.js.map +1 -1
  661. package/dist/patterns/data/data-table-row/variations/main/index.js +1 -1
  662. package/dist/patterns/data/data-table-row/variations/main/index.js.map +1 -1
  663. package/dist/patterns/data/data-table-row/variations/selectable/index.js +1 -1
  664. package/dist/patterns/data/data-table-row/variations/selectable/index.js.map +1 -1
  665. package/dist/patterns/interaction/tab-content-header/variations/with-badge/index.js +1 -1
  666. package/dist/patterns/interaction/tab-content-header/variations/with-badge/index.js.map +1 -1
  667. package/dist/patterns/layout/split-row/variations/main/index.js +1 -1
  668. package/dist/patterns/layout/split-row/variations/main/index.js.map +1 -1
  669. package/dist/registry.d.ts.map +1 -1
  670. package/dist/registry.js +536 -61
  671. package/dist/registry.js.map +1 -1
  672. package/dist/types.d.ts +18 -1
  673. package/dist/types.d.ts.map +1 -1
  674. package/dist/utils/load-component-examples.d.ts +4 -7
  675. package/dist/utils/load-component-examples.d.ts.map +1 -1
  676. package/dist/utils/load-component-examples.js +4 -7
  677. package/dist/utils/load-component-examples.js.map +1 -1
  678. package/package.json +2 -2
  679. package/src/components/Anchor/examples/01-inline-text.tsx +22 -0
  680. package/src/components/Anchor/examples/02-underline-variants.tsx +24 -0
  681. package/src/components/Anchor/examples/03-preview-tooltip.tsx +27 -0
  682. package/src/components/Anchor/examples/04-breadcrumb.tsx +29 -0
  683. package/src/components/Anchor/examples/index.ts +11 -1
  684. package/src/components/Anchor/examples.json +19 -4
  685. package/src/components/Anchor/index.tsx +8 -2
  686. package/src/components/Badge/examples/01-status-badges.tsx +17 -0
  687. package/src/components/Badge/examples/02-icon-position.tsx +18 -0
  688. package/src/components/Badge/examples/03-selectable-tags.tsx +40 -0
  689. package/src/components/Badge/examples/04-dismissible.tsx +37 -0
  690. package/src/components/Badge/examples/05-semantic-colors.tsx +18 -0
  691. package/src/components/Badge/examples/index.ts +13 -4
  692. package/src/components/Badge/examples.json +24 -9
  693. package/src/components/Badge/index.tsx +11 -15
  694. package/src/components/Banner/examples/01-variants.tsx +33 -0
  695. package/src/components/Banner/examples/02-dismissible.tsx +31 -0
  696. package/src/components/Banner/examples/03-form-feedback.tsx +47 -0
  697. package/src/components/Banner/examples/04-settings-panel.tsx +21 -0
  698. package/src/components/Banner/examples/05-body-only.tsx +22 -0
  699. package/src/components/Banner/examples/index.ts +14 -2
  700. package/src/components/Banner/examples.json +24 -4
  701. package/src/components/Banner/index.tsx +12 -16
  702. package/src/components/Button/examples/01-variants.tsx +18 -52
  703. package/src/components/Button/examples/02-multi-actions.tsx +0 -1
  704. package/src/components/Button/examples/04-sub-stack-actions.tsx +1 -1
  705. package/src/components/Button/examples/06-icons.tsx +25 -0
  706. package/src/components/Button/examples/07-split-button.tsx +47 -0
  707. package/src/components/Button/examples/08-button-group.tsx +30 -0
  708. package/src/components/Button/examples/index.ts +6 -0
  709. package/src/components/Button/examples.json +19 -4
  710. package/src/components/Button/index.tsx +6 -0
  711. package/src/components/Card/examples/01-notification.tsx +37 -0
  712. package/src/components/Card/examples/02-settings-panel.tsx +48 -0
  713. package/src/components/Card/examples/03-task-progress.tsx +43 -0
  714. package/src/components/Card/examples/index.ts +8 -2
  715. package/src/components/Card/examples.json +14 -4
  716. package/src/components/Card/index.tsx +6 -2
  717. package/src/components/Card/metadata.json +42 -0
  718. package/src/components/Checkbox/examples/01-basic-states.tsx +17 -0
  719. package/src/components/Checkbox/examples/02-helper-text.tsx +26 -0
  720. package/src/components/Checkbox/examples/03-controlled.tsx +28 -0
  721. package/src/components/Checkbox/examples/04-group.tsx +49 -0
  722. package/src/components/Checkbox/examples/05-indeterminate.tsx +56 -0
  723. package/src/components/Checkbox/examples/06-consent-form.tsx +35 -0
  724. package/src/components/Checkbox/examples/index.ts +16 -4
  725. package/src/components/Checkbox/examples.json +29 -9
  726. package/src/components/Checkbox/index.tsx +12 -16
  727. package/src/components/Color/examples/01-basic-color-picker.tsx +18 -0
  728. package/src/components/Color/examples/02-color-picker-opacity.tsx +29 -0
  729. package/src/components/Color/examples/03-color-picker-preview.tsx +27 -0
  730. package/src/components/Color/examples/04-color-slider-primitive.tsx +47 -0
  731. package/src/components/Color/examples/index.ts +11 -3
  732. package/src/components/Color/examples.json +18 -8
  733. package/src/components/Color/index.tsx +8 -4
  734. package/src/components/Expand/examples/01-basic.tsx +18 -0
  735. package/src/components/Expand/examples/02-accordion.tsx +46 -0
  736. package/src/components/Expand/examples/03-custom-trigger.tsx +30 -0
  737. package/src/components/Expand/examples/04-directions.tsx +33 -0
  738. package/src/components/Expand/examples/05-settings-panel.tsx +54 -0
  739. package/src/components/Expand/examples/06-disabled.tsx +19 -0
  740. package/src/components/Expand/examples/07-inline-info.tsx +29 -0
  741. package/src/components/Expand/examples/index.ts +20 -2
  742. package/src/components/Expand/examples.json +34 -4
  743. package/src/components/Expand/index.tsx +14 -2
  744. package/src/components/Flex/examples/01-axis-control.tsx +199 -0
  745. package/src/components/Flex/examples/02-wrap-overflow.tsx +183 -0
  746. package/src/components/Flex/examples/03-container-query-reflow.tsx +198 -0
  747. package/src/components/Flex/examples/index.ts +8 -2
  748. package/src/components/Flex/examples.json +14 -4
  749. package/src/components/Flex/index.tsx +12 -8
  750. package/src/components/Gallery/examples/01-grid-composition.tsx +121 -0
  751. package/src/components/Gallery/examples/02-item-orientation.tsx +133 -0
  752. package/src/components/Gallery/examples/03-span-layout.tsx +130 -0
  753. package/src/components/Gallery/examples/index.ts +8 -2
  754. package/src/components/Gallery/examples.json +14 -4
  755. package/src/components/Gallery/index.tsx +6 -2
  756. package/src/components/Grid/examples/02-track-placement.tsx +210 -0
  757. package/src/components/Grid/examples/03-editorial-spans.tsx +196 -0
  758. package/src/components/Grid/examples/04-responsive-card-rail.tsx +153 -0
  759. package/src/components/Grid/examples/index.ts +6 -0
  760. package/src/components/Grid/examples.json +15 -0
  761. package/src/components/Grid/index.tsx +6 -0
  762. package/src/components/Group/examples/02-create-project.tsx +19 -0
  763. package/src/components/Group/examples/03-filter-bar.tsx +34 -0
  764. package/src/components/Group/examples/04-documentation-search.tsx +21 -0
  765. package/src/components/Group/examples/05-email-signup.tsx +21 -0
  766. package/src/components/Group/examples/06-copy-command.tsx +17 -0
  767. package/src/components/Group/examples/07-delete-confirmation.tsx +19 -0
  768. package/src/components/Group/examples/08-slider-integration.tsx +30 -0
  769. package/src/components/Group/examples/index.ts +14 -0
  770. package/src/components/Group/examples.json +35 -0
  771. package/src/components/Group/index.tsx +14 -0
  772. package/src/components/Input/examples/03-sign-in.tsx +41 -0
  773. package/src/components/Input/examples/04-search.tsx +31 -0
  774. package/src/components/Input/examples/05-user-handle.tsx +40 -0
  775. package/src/components/Input/examples/06-api-key.tsx +48 -0
  776. package/src/components/Input/examples/07-url-validation.tsx +36 -0
  777. package/src/components/Input/examples/08-quantity.tsx +26 -0
  778. package/src/components/Input/examples/index.ts +12 -0
  779. package/src/components/Input/examples.json +30 -0
  780. package/src/components/Input/index.tsx +12 -0
  781. package/src/components/List/examples/02-review-queue.tsx +54 -0
  782. package/src/components/List/examples/03-notification-rules.tsx +80 -0
  783. package/src/components/List/examples/04-quota-editor.tsx +71 -0
  784. package/src/components/List/examples/05-permissions-matrix.tsx +91 -0
  785. package/src/components/List/examples/index.ts +8 -0
  786. package/src/components/List/examples.json +20 -0
  787. package/src/components/List/index.tsx +10 -2
  788. package/src/components/Menu/examples/03-toolbar-dropdown.tsx +35 -0
  789. package/src/components/Menu/examples/04-table-row-actions.tsx +60 -0
  790. package/src/components/Menu/examples/05-context-menu.tsx +36 -0
  791. package/src/components/Menu/examples/06-view-options.tsx +39 -0
  792. package/src/components/Menu/examples/index.ts +8 -0
  793. package/src/components/Menu/examples.json +20 -0
  794. package/src/components/Menu/index.tsx +8 -0
  795. package/src/components/Modal/examples/02-form-modal.tsx +1 -1
  796. package/src/components/Modal/examples/03-delete-confirmation.tsx +42 -0
  797. package/src/components/Modal/examples/04-create-api-key.tsx +54 -0
  798. package/src/components/Modal/examples/05-notification-settings.tsx +58 -0
  799. package/src/components/Modal/examples/index.ts +6 -0
  800. package/src/components/Modal/examples.json +16 -1
  801. package/src/components/Modal/index.tsx +8 -0
  802. package/src/components/Modal/metadata.json +41 -1
  803. package/src/components/Panel/examples/01-sidebar-toggle.tsx +20 -0
  804. package/src/components/Panel/examples/index.ts +2 -0
  805. package/src/components/Panel/examples.json +7 -1
  806. package/src/components/Panel/index.tsx +9 -0
  807. package/src/components/Path/examples/01-basic-path.tsx +5 -5
  808. package/src/components/Path/examples/02-custom-separator.tsx +17 -0
  809. package/src/components/Path/examples/03-collapsed-breadcrumb.tsx +37 -0
  810. package/src/components/Path/examples/index.ts +4 -0
  811. package/src/components/Path/examples.json +11 -1
  812. package/src/components/Path/index.tsx +15 -11
  813. package/src/components/Popover/examples/01-basic-popover.tsx +24 -5
  814. package/src/components/Popover/examples/02-toggleable-options.tsx +58 -0
  815. package/src/components/Popover/examples/03-table-row-actions.tsx +64 -0
  816. package/src/components/Popover/examples/04-input-form.tsx +46 -0
  817. package/src/components/Popover/examples/05-arrow-positions.tsx +27 -0
  818. package/src/components/Popover/examples/index.ts +8 -0
  819. package/src/components/Popover/examples.json +23 -3
  820. package/src/components/Popover/index.tsx +8 -0
  821. package/src/components/Progress/examples/01-basic-progress.tsx +34 -5
  822. package/src/components/Progress/examples/02-storage-quota.tsx +22 -0
  823. package/src/components/Progress/examples/03-onboarding-steps.tsx +34 -0
  824. package/src/components/Progress/examples/04-indeterminate.tsx +33 -0
  825. package/src/components/Progress/examples/05-skill-levels.tsx +22 -0
  826. package/src/components/Progress/examples/index.ts +8 -0
  827. package/src/components/Progress/examples.json +23 -3
  828. package/src/components/Progress/index.tsx +10 -14
  829. package/src/components/Scroll/examples/01-basic-scroll.tsx +45 -12
  830. package/src/components/Scroll/examples/02-settings-panel.tsx +40 -0
  831. package/src/components/Scroll/examples/03-horizontal-tags.tsx +38 -0
  832. package/src/components/Scroll/examples/index.ts +4 -0
  833. package/src/components/Scroll/examples.json +13 -3
  834. package/src/components/Scroll/index.tsx +4 -0
  835. package/src/components/Select/examples/03-country-select.tsx +55 -0
  836. package/src/components/Select/examples/index.ts +2 -0
  837. package/src/components/Select/examples.json +5 -0
  838. package/src/components/Select/index.tsx +2 -0
  839. package/src/components/Slider/examples/01-basic-slider.tsx +19 -4
  840. package/src/components/Slider/examples/02-settings-panel.tsx +33 -0
  841. package/src/components/Slider/examples/03-price-range.tsx +34 -0
  842. package/src/components/Slider/examples/04-step-slider.tsx +35 -0
  843. package/src/components/Slider/examples/05-disabled-state.tsx +21 -0
  844. package/src/components/Slider/examples/06-vertical-mixer.tsx +34 -0
  845. package/src/components/Slider/examples/index.ts +10 -0
  846. package/src/components/Slider/examples.json +28 -3
  847. package/src/components/Slider/index.tsx +10 -0
  848. package/src/components/Switch/examples/01-basic-switch.tsx +20 -4
  849. package/src/components/Switch/examples/02-settings-panel.tsx +32 -0
  850. package/src/components/Switch/examples/03-disabled-state.tsx +21 -0
  851. package/src/components/Switch/examples/04-small-size.tsx +25 -0
  852. package/src/components/Switch/examples/05-controlled-toggle.tsx +32 -0
  853. package/src/components/Switch/examples/index.ts +8 -0
  854. package/src/components/Switch/examples.json +23 -3
  855. package/src/components/Switch/index.tsx +8 -0
  856. package/src/components/Table/index.tsx +0 -1
  857. package/src/components/Tabs/examples/03-underline-tabs.tsx +23 -0
  858. package/src/components/Tabs/examples/04-vertical-underline-tabs.tsx +23 -0
  859. package/src/components/Tabs/examples/index.ts +4 -0
  860. package/src/components/Tabs/examples.json +10 -0
  861. package/src/components/Tabs/index.tsx +4 -0
  862. package/src/components/Textarea/examples/01-basic-textarea.tsx +21 -8
  863. package/src/components/Textarea/examples/02-bio-settings.tsx +30 -0
  864. package/src/components/Textarea/examples/03-error-state.tsx +31 -0
  865. package/src/components/Textarea/examples/04-disabled-readonly.tsx +25 -0
  866. package/src/components/Textarea/examples/05-scrolling.tsx +26 -0
  867. package/src/components/Textarea/examples/index.ts +8 -0
  868. package/src/components/Textarea/examples.json +23 -3
  869. package/src/components/Textarea/index.tsx +8 -0
  870. package/src/components/Toast/index.tsx +1 -4
  871. package/src/generated-data.ts +999 -429
  872. package/src/generated-styles.ts +1135 -203
  873. package/src/index.ts +2 -0
  874. package/src/patterns/data/badge-row/variations/main/index.tsx +1 -1
  875. package/src/patterns/data/badge-row/variations/mixed/index.tsx +1 -1
  876. package/src/patterns/data/badge-row/variations/outline/index.tsx +1 -1
  877. package/src/patterns/data/data-table-row/variations/expandable/index.tsx +1 -1
  878. package/src/patterns/data/data-table-row/variations/main/index.tsx +1 -1
  879. package/src/patterns/data/data-table-row/variations/selectable/index.tsx +1 -1
  880. package/src/patterns/interaction/tab-content-header/variations/with-badge/index.tsx +1 -1
  881. package/src/patterns/layout/split-row/variations/main/index.tsx +1 -1
  882. package/src/registry.ts +536 -61
  883. package/src/types.ts +20 -1
  884. package/src/utils/load-component-examples.ts +8 -7
  885. package/src/components/Anchor/examples/01-basic-anchor.tsx +0 -18
  886. package/src/components/Badge/examples/01-basic-badge.tsx +0 -11
  887. package/src/components/Badge/examples/02-variants-and-sizes.tsx +0 -71
  888. package/src/components/Banner/examples/01-basic-banner.tsx +0 -15
  889. package/src/components/Card/examples/01-basic-card.tsx +0 -22
  890. package/src/components/Checkbox/examples/01-basic-checkbox.tsx +0 -21
  891. package/src/components/Checkbox/examples/02-checkbox-group-with-descriptions.tsx +0 -59
  892. package/src/components/Color/examples/01-basic-color.tsx +0 -25
  893. package/src/components/Color/examples/02-opacity-slider.tsx +0 -26
  894. package/src/components/Color/examples/03-format-switching.tsx +0 -46
  895. package/src/components/Expand/examples/01-basic-expand.tsx +0 -18
  896. package/src/components/Flex/examples/01-basic-flex.tsx +0 -17
  897. package/src/components/Gallery/examples/01-basic-gallery.tsx +0 -28
@@ -40,7 +40,7 @@
40
40
  ]
41
41
  },
42
42
  "toast": {
43
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply flex w-full max-w-[28rem] items-start gap-3 px-4 py-2.5 select-none;\n background: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n box-shadow: var(--background-shadow);\n font-family: inherit;\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-normal, 1.5);\n touch-action: pan-y;\n }\n\n .icon-wrap {\n @apply mr-4 mt-2 h-5 w-5 shrink-0;\n }\n\n .icon {\n @apply h-5 w-5;\n color: var(--foreground);\n }\n\n .content {\n @apply min-w-0 flex-1;\n }\n\n .title {\n @apply m-0;\n --foreground: inherit;\n font-weight: var(--font-weight-semibold);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-tight, 1.25);\n color: var(--foreground);\n }\n\n .description {\n @apply mt-1 mb-0;\n --foreground: inherit;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-normal, 1.5);\n color: var(--foreground);\n }\n\n .close {\n @apply flex shrink-0 items-center justify-center p-2 cursor-pointer;\n --foreground: currentColor;\n --background-hover: transparent;\n background: transparent;\n border: none;\n border-radius: var(--radius-sm, 0.375rem);\n color: var(--foreground);\n opacity: 0.6;\n transition: opacity 0.15s var(--ease-settle-in);\n\n &[data-focus-visible=\"true\"] {\n box-shadow: 0 0 0 var(--border-width-base, 1px) var(--focus-visible);\n outline: none;\n }\n\n &[data-hovered=\"true\"] {\n opacity: 1;\n background: var(--background-hover);\n }\n }\n\n .close-icon {\n @apply h-4 w-4;\n }\n}\n",
43
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply flex w-full max-w-[28rem] items-start gap-3 px-4 py-2.5 select-none;\n background: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n box-shadow: var(--background-shadow);\n font-family: inherit;\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-normal, 1.5);\n touch-action: pan-y;\n }\n\n .icon-wrap {\n @apply mr-4 mt-2 h-5 w-5 shrink-0;\n }\n\n .icon {\n @apply h-5 w-5;\n color: var(--foreground);\n }\n\n .content {\n @apply min-w-0 flex-1;\n }\n\n .title {\n @apply m-0;\n --foreground: inherit;\n font-weight: var(--font-weight-semibold);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-tight, 1.25);\n color: var(--foreground);\n }\n\n .description {\n @apply mt-1 mb-0;\n --foreground: inherit;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-normal, 1.5);\n color: var(--foreground);\n }\n\n .close {\n @apply flex shrink-0 items-center justify-center p-2 cursor-pointer;\n --foreground: currentColor;\n --background-hover: transparent;\n background: transparent;\n border: none;\n border-radius: var(--radius-sm, 0.375rem);\n color: var(--foreground);\n opacity: 0.6;\n transition:\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-settle-in, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-settle-in, ease-out));\n\n &[data-focus-visible=\"true\"] {\n box-shadow: 0 0 0 var(--border-width-base, 1px) var(--focus-visible);\n outline: none;\n }\n\n &[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n opacity: 1;\n background-color: var(--background-hover);\n }\n }\n\n .close-icon {\n @apply h-4 w-4;\n }\n}\n",
44
44
  "styleableParts": [
45
45
  {
46
46
  "name": "root"
@@ -95,76 +95,20 @@
95
95
  "defaultValue": null,
96
96
  "referencedVars": [],
97
97
  "variant": ".close"
98
- }
99
- ]
100
- },
101
- "tabs": {
102
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .tabs {\n @apply flex w-full flex-col;\n\n &[data-orientation=\"vertical\"] {\n flex-direction: row;\n }\n }\n\n .list {\n @apply relative flex w-full flex-row items-center gap-3 py-1;\n border-radius: var(--radius-sm);\n\n &[data-orientation=\"vertical\"] {\n flex-direction: column;\n width: auto;\n min-width: 120px;\n height: 100%;\n }\n\n &[data-variant=\"underline\"] {\n background-color: transparent;\n border-radius: 0;\n padding: 0 0 4px;\n }\n\n &[data-variant=\"underline\"][data-orientation=\"vertical\"] {\n border-bottom: none;\n border-left: var(--border-width-base) solid var(--border-color);\n align-items: stretch;\n padding: 0 0 0 4px;\n }\n }\n\n .indicator {\n @apply absolute;\n background-color: var(--background);\n box-sizing: border-box;\n border-radius: var(--radius-sm);\n z-index: 0;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n pointer-events: none;\n }\n\n .indicator-fallback {\n z-index: -1;\n }\n\n .indicator-underline {\n border-radius: 0;\n }\n\n .trigger {\n @apply relative z-[1] flex shrink-0 items-center justify-center gap-2 px-2 py-1.5 cursor-pointer select-none;\n height: 100%;\n background-color: var(--background);\n border: none;\n color: var(--foreground);\n outline: none;\n box-shadow: none;\n transition: color 0.15s ease, background-color 0.15s ease;\n\n\n &:not([data-disabled]):not([data-selected=\"true\"]) {\n &:hover {\n background-color: var(--background-hover);\n color: var(--foreground-hover);\n }\n\n &:active {\n background-color: var(--background-pressed);\n color: var(--foreground-pressed);\n }\n }\n\n &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n color: var(--foreground-selected);\n }\n\n &[data-selected=\"true\"]:not([data-indicator-ready=\"true\"]):not([data-indicator-fallback=\"true\"]) {\n .list & {\n background-color: var(--background-selected);\n }\n\n .list[data-variant=\"underline\"] & {\n background-color: transparent;\n border-bottom-color: var(--underline-border);\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] & {\n border-bottom-color: transparent;\n border-left-color: var(--underline-border);\n }\n }\n\n &:focus,\n &:focus-visible {\n outline: none !important;\n box-shadow: none !important;\n }\n\n &[data-disabled=\"true\"] {\n --disabled-opacity: 0.5;\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n pointer-events: none;\n }\n\n .list[data-variant=\"underline\"] & {\n background-color: var(--background);\n background-clip: padding-box;\n border-radius: var(--radius-sm);\n border-bottom: 2px solid transparent;\n }\n\n .list[data-variant=\"underline\"] &:not([data-disabled]):not([data-selected=\"true\"]):hover {\n background-color: var(--background-hover);\n }\n\n .list[data-variant=\"underline\"] &:not([data-disabled]):not([data-selected=\"true\"]):active {\n background-color: var(--background-pressed);\n }\n\n .list[data-variant=\"underline\"] &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n }\n\n .list[data-variant=\"underline\"] &:focus,\n .list[data-variant=\"underline\"] &:focus-visible {\n outline: none !important;\n box-shadow: none !important;\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] & {\n border-bottom: none;\n border-left: 2px solid transparent;\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] &[data-selected=\"true\"]:not([data-indicator-ready=\"true\"]):not([data-indicator-fallback=\"true\"]) {\n border-left-color: var(--underline-border);\n border-bottom: none;\n }\n }\n\n .icon {\n @apply flex h-4 w-4 shrink-0 items-center justify-center;\n }\n\n .content {\n @apply w-full p-0 outline-none;\n flex: 1;\n padding-top: 1rem;\n\n &[data-orientation=\"vertical\"] {\n flex: 1;\n width: 100%;\n }\n\n &:focus-visible {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n }\n\n @media (max-width: 640px) {\n .list {\n padding: 0.125rem;\n\n &[data-variant=\"underline\"] {\n padding: 0 0 4px;\n }\n }\n\n .trigger {\n @apply px-1 py-1;\n .list[data-variant=\"underline\"] & {\n margin: 0.5rem 0.75rem;\n }\n }\n }\n}\n",
103
- "styleableParts": [
104
- {
105
- "name": "root"
106
- },
107
- {
108
- "name": "indicator"
109
- },
110
- {
111
- "name": "icon.left"
112
98
  },
113
99
  {
114
- "name": "icon.right"
115
- }
116
- ],
117
- "cssVariables": [
118
- {
119
- "name": "--disabled-opacity",
120
- "value": "0.5",
121
- "defaultValue": null,
122
- "referencedVars": [],
123
- "variant": ".trigger[data-disabled=\"true\"]"
100
+ "name": "--hover-transition-duration",
101
+ "value": "var(--hover-transition-enter-duration, 0ms)",
102
+ "defaultValue": "0ms",
103
+ "referencedVars": [
104
+ "--hover-transition-enter-duration"
105
+ ],
106
+ "variant": ".close[data-hovered=\"true\"]"
124
107
  }
125
108
  ]
126
109
  },
127
- "table": {
128
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply w-full;\n }\n\n .container {\n @apply overflow-x-auto rounded-md;\n border: 1px solid var(--table-border, var(--background-800));\n }\n\n .table {\n @apply w-full text-sm;\n background-color: var(--table-background, transparent);\n color: var(--table-foreground, currentColor);\n }\n\n .thead {\n @apply contents;\n }\n\n .headerRow {\n @apply contents;\n }\n\n .headerCell {\n @apply px-4 py-3 text-left font-semibold;\n background-color: var(--table-header-background, var(--background-900));\n color: var(--table-header-foreground, var(--foreground-200));\n border-bottom: 1px solid var(--table-border, var(--background-800));\n }\n\n .tbody {\n @apply contents;\n }\n\n .bodyRow {\n @apply contents;\n\n &[data-interactive=\"true\"] {\n @apply cursor-pointer;\n\n & td {\n @apply transition-colors;\n }\n\n &:hover td {\n background-color: var(--table-body-background-hover, var(--background-900));\n }\n }\n }\n\n .interactive {\n @apply cursor-pointer;\n }\n\n .cell {\n @apply px-4 py-3;\n background-color: var(--table-cell-background, transparent);\n color: var(--table-cell-foreground, var(--foreground-300));\n border-bottom: 1px solid var(--table-border, var(--background-800));\n\n &:last-child {\n border-bottom: none;\n }\n }\n\n .emptyState {\n @apply px-4 py-8 text-center;\n color: var(--table-empty-foreground, var(--foreground-400));\n display: table-cell !important;\n }\n\n .filterBar {\n @apply mb-4 rounded-sm border p-4;\n background-color: var(--table-filter-background, var(--background-900));\n border-color: var(--table-filter-border, var(--background-800));\n }\n\n .filterGrid {\n @apply grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3;\n }\n\n .filterLabel {\n @apply mb-2 block text-sm font-medium;\n color: var(--table-filter-label-color, var(--foreground-300));\n }\n\n .filterInput {\n @apply w-full rounded-md border px-3 py-2 transition-all;\n background-color: var(--table-filter-input-background, var(--background-950));\n border-color: var(--table-filter-input-border, var(--background-700));\n color: var(--table-filter-input-foreground, var(--foreground-50));\n\n &::placeholder {\n color: var(--table-filter-input-placeholder, var(--foreground-400));\n }\n\n &:hover {\n border-color: var(--table-filter-input-border-hover, var(--background-600));\n }\n\n &:focus {\n outline: none;\n border-color: var(--table-filter-input-border-focus, var(--accent-500));\n box-shadow: 0 0 0 2px var(--table-filter-input-ring, rgba(99, 102, 241, 0.2));\n }\n }\n}\n",
129
- "styleableParts": [
130
- {
131
- "name": "root"
132
- },
133
- {
134
- "name": "container"
135
- },
136
- {
137
- "name": "filterBar"
138
- },
139
- {
140
- "name": "table"
141
- },
142
- {
143
- "name": "thead"
144
- },
145
- {
146
- "name": "tbody"
147
- },
148
- {
149
- "name": "headerRow"
150
- },
151
- {
152
- "name": "headerCell"
153
- },
154
- {
155
- "name": "bodyRow"
156
- },
157
- {
158
- "name": "cell"
159
- },
160
- {
161
- "name": "emptyState"
162
- }
163
- ],
164
- "cssVariables": []
165
- },
166
110
  "textarea": {
167
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .textarea {\n --padding-inline: 0.75rem;\n --padding-block: 0.5rem;\n\n @apply block w-full px-3 py-2;\n box-sizing: border-box;\n resize: none;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n background-color: var(--background);\n color: var(--foreground);\n font-family: inherit;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n outline: none;\n transition:\n background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),\n border-color 0.2s cubic-bezier(0.4, 0, 0.2, 1),\n color 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n\n &::placeholder {\n color: var(--placeholder);\n }\n\n &:hover:not([data-disabled]),\n &[data-hovered=\"true\"]:not([data-disabled]) {\n background-color: var(--background-hover);\n }\n\n &[data-disabled=\"true\"] {\n background-color: var(--background-disabled);\n color: var(--foreground-disabled);\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n\n &[data-resize-axis=\"x\"],\n &[data-resize-axis=\"both\"] {\n padding-inline-end: calc(var(--padding-inline) + 1rem);\n }\n\n &[data-resize-axis=\"y\"],\n &[data-resize-axis=\"both\"] {\n padding-block-end: calc(var(--padding-block) + 1rem);\n }\n\n &[data-scroll=\"true\"] {\n border: none;\n border-radius: 0;\n background: transparent;\n box-shadow: none;\n overflow: hidden;\n\n &[data-disabled=\"true\"] {\n background-color: transparent;\n opacity: 1;\n }\n\n &[data-error=\"true\"] {\n border-color: transparent;\n }\n }\n }\n\n .size-sm {\n min-height: 5rem;\n --padding-inline: 0.5rem;\n --padding-block: 0.25rem;\n font-size: var(--text-sm);\n @apply px-2 py-1;\n }\n\n .size-md {\n min-height: 6rem;\n --padding-inline: 0.75rem;\n --padding-block: 0.5rem;\n font-size: var(--text-sm);\n @apply px-3 py-2;\n }\n\n .size-lg {\n min-height: 8rem;\n --padding-inline: 1rem;\n --padding-block: 0.75rem;\n font-size: var(--text-md);\n @apply px-4 py-3;\n }\n\n .container {\n @apply w-full;\n }\n\n .surface {\n @apply relative w-full;\n }\n\n .scroll-wrapper {\n @apply w-full overflow-hidden;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n background-color: var(--background);\n\n &:hover:not([data-disabled=\"true\"]),\n &[data-hovered=\"true\"]:not([data-disabled=\"true\"]) {\n background-color: var(--background-hover);\n }\n\n &[data-disabled=\"true\"] {\n background-color: var(--background-disabled);\n opacity: var(--disabled-opacity);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n }\n\n .resize-handle {\n position: absolute;\n z-index: 1;\n touch-action: none;\n user-select: none;\n\n &::before,\n &::after {\n content: \"\";\n position: absolute;\n border-radius: var(--radius-full);\n background-color: var(--handle-background);\n transition: background-color 150ms;\n }\n\n &:hover::before,\n &:hover::after {\n background-color: var(--handle-hover-background);\n }\n }\n\n .resize-handle-both {\n right: 3px;\n bottom: 3px;\n width: 1.5rem;\n height: 1.5rem;\n cursor: nwse-resize;\n\n &::before {\n right: 0.15rem;\n bottom: 0.35rem;\n width: 0.5rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n\n &::after {\n right: 0.2rem;\n bottom: 0.6rem;\n width: 1rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n }\n\n .resize-handle-x {\n top: 50%;\n right: 0;\n width: 0.75rem;\n height: 2rem;\n cursor: ew-resize;\n transform: translateY(-50%);\n\n &::before {\n top: 50%;\n left: 50%;\n width: 0.125rem;\n height: 1.5rem;\n transform: translate(-50%, -50%);\n }\n\n &::after {\n display: none;\n }\n }\n\n .resize-handle-y {\n left: 50%;\n bottom: 0;\n width: 2rem;\n height: 0.75rem;\n cursor: ns-resize;\n transform: translateX(-50%);\n\n &::before {\n top: 50%;\n left: 50%;\n width: 1.5rem;\n height: 0.125rem;\n transform: translate(-50%, -50%);\n }\n\n &::after {\n display: none;\n }\n }\n\n .character-count {\n @apply mt-1;\n color: var(--count-foreground);\n font-size: var(--text-sm);\n transition: color 0.15s var(--ease-snappy-pop);\n }\n\n .character-count[data-over-limit=\"true\"] {\n color: var(--count-over-limit-foreground);\n }\n}\n",
111
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .textarea {\n --padding-inline: 0.75rem;\n --padding-block: 0.5rem;\n\n @apply block w-full px-3 py-2;\n box-sizing: border-box;\n resize: none;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n background-color: var(--background);\n color: var(--foreground);\n font-family: inherit;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n outline: none;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &::placeholder {\n color: var(--placeholder);\n }\n\n &:hover:not([data-disabled]),\n &[data-hovered=\"true\"]:not([data-disabled]) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n\n &[data-disabled=\"true\"] {\n background-color: var(--background-disabled);\n color: var(--foreground-disabled);\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n\n &[data-resize-axis=\"x\"],\n &[data-resize-axis=\"both\"] {\n padding-inline-end: calc(var(--padding-inline) + 1rem);\n }\n\n &[data-resize-axis=\"y\"],\n &[data-resize-axis=\"both\"] {\n padding-block-end: calc(var(--padding-block) + 1rem);\n }\n\n &[data-scroll=\"true\"] {\n border: none;\n border-radius: 0;\n background: transparent;\n box-shadow: none;\n overflow: hidden;\n\n &[data-disabled=\"true\"] {\n background-color: transparent;\n opacity: 1;\n }\n\n &[data-error=\"true\"] {\n border-color: transparent;\n }\n }\n }\n\n .size-sm {\n min-height: 5rem;\n --padding-inline: 0.5rem;\n --padding-block: 0.25rem;\n font-size: var(--text-sm);\n @apply px-2 py-1;\n }\n\n .size-md {\n min-height: 6rem;\n --padding-inline: 0.75rem;\n --padding-block: 0.5rem;\n font-size: var(--text-sm);\n @apply px-3 py-2;\n }\n\n .size-lg {\n min-height: 8rem;\n --padding-inline: 1rem;\n --padding-block: 0.75rem;\n font-size: var(--text-md);\n @apply px-4 py-3;\n }\n\n .container {\n min-width: 0;\n @apply w-full;\n }\n\n .scope {\n @apply relative flex w-full;\n overflow: visible;\n }\n\n .surface {\n min-width: 0;\n @apply relative w-full;\n }\n\n .scroll-wrapper {\n @apply w-full overflow-hidden;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n background-color: var(--background);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &:hover:not([data-disabled=\"true\"]),\n &[data-hovered=\"true\"]:not([data-disabled=\"true\"]) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n\n &[data-disabled=\"true\"] {\n background-color: var(--background-disabled);\n opacity: var(--disabled-opacity);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n }\n\n .resize-handle {\n position: absolute;\n z-index: 1;\n touch-action: none;\n user-select: none;\n\n &::before,\n &::after {\n content: \"\";\n position: absolute;\n border-radius: var(--radius-full);\n background-color: var(--handle-background);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n &:hover::before,\n &:hover::after {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--handle-hover-background);\n }\n }\n\n .resize-handle-both {\n right: 3px;\n bottom: 3px;\n width: 1.5rem;\n height: 1.5rem;\n cursor: nwse-resize;\n\n &::before {\n right: 0.15rem;\n bottom: 0.35rem;\n width: 0.5rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n\n &::after {\n right: 0.2rem;\n bottom: 0.6rem;\n width: 1rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n }\n\n .resize-handle-x {\n top: 50%;\n right: 0;\n width: 0.75rem;\n height: 2rem;\n cursor: ew-resize;\n transform: translateY(-50%);\n\n &::before {\n top: 50%;\n left: 50%;\n width: 0.125rem;\n height: 1.5rem;\n transform: translate(-50%, -50%);\n }\n\n &::after {\n display: none;\n }\n }\n\n .resize-handle-y {\n left: 50%;\n bottom: 0;\n width: 2rem;\n height: 0.75rem;\n cursor: ns-resize;\n transform: translateX(-50%);\n\n &::before {\n top: 50%;\n left: 50%;\n width: 1.5rem;\n height: 0.125rem;\n transform: translate(-50%, -50%);\n }\n\n &::after {\n display: none;\n }\n }\n\n .character-count {\n @apply mt-1;\n color: var(--count-foreground);\n font-size: var(--text-sm);\n transition: color 0.15s var(--ease-snappy-pop);\n }\n\n .character-count[data-over-limit=\"true\"] {\n color: var(--count-over-limit-foreground);\n }\n}\n",
168
112
  "styleableParts": [
169
113
  {
170
114
  "name": "root"
@@ -206,6 +150,15 @@
206
150
  "referencedVars": [],
207
151
  "variant": ".textarea"
208
152
  },
153
+ {
154
+ "name": "--hover-transition-duration",
155
+ "value": "var(--hover-transition-enter-duration, 0ms)",
156
+ "defaultValue": "0ms",
157
+ "referencedVars": [
158
+ "--hover-transition-enter-duration"
159
+ ],
160
+ "variant": ".textarea:hover:not([data-disabled]),\n .textarea[data-hovered=\"true\"]:not([data-disabled])"
161
+ },
209
162
  {
210
163
  "name": "--padding-inline",
211
164
  "value": "0.5rem",
@@ -247,11 +200,134 @@
247
200
  "defaultValue": null,
248
201
  "referencedVars": [],
249
202
  "variant": ".size-lg"
203
+ },
204
+ {
205
+ "name": "--hover-transition-duration",
206
+ "value": "var(--hover-transition-enter-duration, 0ms)",
207
+ "defaultValue": "0ms",
208
+ "referencedVars": [
209
+ "--hover-transition-enter-duration"
210
+ ],
211
+ "variant": ".scroll-wrapper:hover:not([data-disabled=\"true\"]),\n .scroll-wrapper[data-hovered=\"true\"]:not([data-disabled=\"true\"])"
212
+ },
213
+ {
214
+ "name": "--hover-transition-duration",
215
+ "value": "var(--hover-transition-enter-duration, 0ms)",
216
+ "defaultValue": "0ms",
217
+ "referencedVars": [
218
+ "--hover-transition-enter-duration"
219
+ ],
220
+ "variant": ".resize-handle:hover::before,\n .resize-handle:hover::after"
221
+ }
222
+ ]
223
+ },
224
+ "tabs": {
225
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .tabs {\n @apply flex w-full flex-col;\n\n &[data-orientation=\"vertical\"] {\n flex-direction: row;\n }\n }\n\n .list {\n @apply relative flex w-full flex-row items-center gap-3 py-1;\n border-radius: var(--radius-sm);\n\n &[data-orientation=\"vertical\"] {\n flex-direction: column;\n width: fit-content;\n min-width: 0;\n height: auto;\n align-self: flex-start;\n }\n\n &[data-variant=\"underline\"] {\n background-color: transparent;\n border-radius: 0;\n padding: 0 0 4px;\n }\n\n &[data-variant=\"underline\"][data-orientation=\"vertical\"] {\n border-bottom: none;\n border-left: var(--border-width-base) solid var(--border);\n align-items: stretch;\n padding: 0 0 0 4px;\n }\n }\n\n .indicator {\n @apply absolute;\n background-color: var(--background);\n box-sizing: border-box;\n border-radius: var(--radius-sm);\n z-index: 0;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n pointer-events: none;\n }\n\n .indicator-fallback {\n z-index: -1;\n }\n\n .indicator-underline {\n border-radius: 0;\n }\n\n .trigger {\n @apply relative z-[1] flex shrink-0 items-center justify-center gap-2 px-2 py-1.5 cursor-pointer select-none;\n height: auto;\n background-color: var(--background);\n border: none;\n color: var(--foreground);\n outline: none;\n box-shadow: none;\n transition:\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n\n &:not([data-disabled]):not([data-selected=\"true\"]) {\n &:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n color: var(--foreground-hover);\n }\n\n &:active {\n background-color: var(--background-pressed);\n color: var(--foreground-pressed);\n }\n }\n\n &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n color: var(--foreground-selected);\n }\n\n &[data-selected=\"true\"]:not([data-indicator-ready=\"true\"]):not([data-indicator-fallback=\"true\"]) {\n .list & {\n background-color: var(--background-selected);\n }\n\n .list[data-variant=\"underline\"] & {\n background-color: transparent;\n border-bottom-color: var(--underline-border);\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] & {\n border-bottom-color: transparent;\n border-left-color: var(--underline-border);\n }\n }\n\n &:focus,\n &:focus-visible {\n outline: none !important;\n box-shadow: none !important;\n }\n\n &[data-disabled=\"true\"] {\n --disabled-opacity: 0.5;\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n pointer-events: none;\n }\n\n .list[data-variant=\"underline\"] & {\n background-color: var(--background);\n background-clip: padding-box;\n border-radius: var(--radius-sm);\n border-bottom: 2px solid transparent;\n }\n\n .list[data-variant=\"underline\"] &:not([data-disabled]):not([data-selected=\"true\"]):hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n\n .list[data-variant=\"underline\"] &:not([data-disabled]):not([data-selected=\"true\"]):active {\n background-color: var(--background-pressed);\n }\n\n .list[data-variant=\"underline\"] &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n }\n\n .list[data-variant=\"underline\"] &:focus,\n .list[data-variant=\"underline\"] &:focus-visible {\n outline: none !important;\n box-shadow: none !important;\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] & {\n border-bottom: none;\n border-left: 2px solid transparent;\n }\n\n .list[data-variant=\"underline\"][data-orientation=\"vertical\"] &[data-selected=\"true\"]:not([data-indicator-ready=\"true\"]):not([data-indicator-fallback=\"true\"]) {\n border-left-color: var(--underline-border);\n border-bottom: none;\n }\n }\n\n .icon {\n @apply flex h-4 w-4 shrink-0 items-center justify-center;\n }\n\n .content {\n @apply w-full p-0 outline-none;\n flex: 1;\n padding-top: 1rem;\n\n &[data-orientation=\"vertical\"] {\n flex: 1;\n width: 100%;\n }\n\n &:focus-visible {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n }\n\n @media (max-width: 640px) {\n .list {\n padding: 0.125rem;\n\n &[data-variant=\"underline\"] {\n padding: 0 0 4px;\n }\n }\n\n .trigger {\n @apply px-1 py-1;\n .list[data-variant=\"underline\"] & {\n margin: 0.5rem 0.75rem;\n }\n }\n }\n}\n",
226
+ "styleableParts": [
227
+ {
228
+ "name": "root"
229
+ },
230
+ {
231
+ "name": "indicator"
232
+ },
233
+ {
234
+ "name": "icon.left"
235
+ },
236
+ {
237
+ "name": "icon.right"
238
+ }
239
+ ],
240
+ "cssVariables": [
241
+ {
242
+ "name": "--hover-transition-duration",
243
+ "value": "var(--hover-transition-enter-duration, 0ms)",
244
+ "defaultValue": "0ms",
245
+ "referencedVars": [
246
+ "--hover-transition-enter-duration"
247
+ ],
248
+ "variant": ".trigger:not([data-disabled]):not([data-selected=\"true\"]):hover"
249
+ },
250
+ {
251
+ "name": "--disabled-opacity",
252
+ "value": "0.5",
253
+ "defaultValue": null,
254
+ "referencedVars": [],
255
+ "variant": ".trigger[data-disabled=\"true\"]"
256
+ },
257
+ {
258
+ "name": "--hover-transition-duration",
259
+ "value": "var(--hover-transition-enter-duration, 0ms)",
260
+ "defaultValue": "0ms",
261
+ "referencedVars": [
262
+ "--hover-transition-enter-duration"
263
+ ],
264
+ "variant": ".list[data-variant=\"underline\"] .trigger:not([data-disabled]):not([data-selected=\"true\"]):hover"
265
+ }
266
+ ]
267
+ },
268
+ "table": {
269
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply w-full;\n }\n\n .container {\n @apply w-full overflow-x-auto rounded-md;\n border: var(--border-width-base) solid var(--border, var(--background-border));\n background-color: var(--container-background, var(--background));\n }\n\n .container {\n display: block;\n max-width: none;\n }\n\n .table {\n @apply w-full text-sm;\n display: table;\n border-collapse: collapse;\n min-width: max-content;\n background-color: var(--background, transparent);\n color: var(--foreground);\n font-size: var(--font-size, var(--text-sm));\n }\n\n .header {\n display: table-header-group;\n background-color: var(--header-background, var(--background));\n }\n\n .body {\n display: table-row-group;\n background-color: var(--body-background, var(--background));\n }\n\n .headerRow {\n display: table-row;\n background-color: var(--header-background, var(--background));\n }\n\n .headerCell {\n @apply px-4 py-3 text-left;\n display: table-cell;\n background-color: var(--header-background, var(--background));\n color: var(--header-foreground, var(--foreground));\n font-weight: var(--header-font-weight, var(--font-weight-semibold));\n white-space: nowrap;\n border-bottom: var(--border-width-base) solid var(--border, var(--background-border));\n }\n\n .headerCell:first-child {\n border-top-left-radius: var(--radius-sm);\n }\n\n .headerCell:last-child {\n border-top-right-radius: var(--radius-sm);\n }\n\n .row {\n display: table-row;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .row[data-interactive=\"true\"] {\n @apply cursor-pointer;\n }\n\n .row[data-interactive=\"true\"]:hover .cell {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--body-background-hover, var(--background-hover, var(--background)));\n }\n\n .row[data-selected=\"true\"] .cell {\n background-color: var(--row-selected-background, var(--background-selected, var(--background-hover, var(--background))));\n }\n\n .row[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--disabled-opacity, 0.5);\n }\n\n .row:focus-visible {\n outline: 2px solid var(--focus-ring);\n outline-offset: -2px;\n }\n\n .interactive {\n @apply cursor-pointer;\n }\n\n .cell {\n @apply px-4 py-3 align-middle;\n display: table-cell;\n background-color: var(--cell-background, transparent);\n color: var(--cell-foreground, var(--foreground));\n border-bottom: var(--border-width-base) solid var(--border, var(--background-border));\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .row:last-child .cell {\n border-bottom: none;\n }\n\n .row:last-child .cell:first-child {\n border-bottom-left-radius: var(--radius-sm);\n }\n\n .row:last-child .cell:last-child {\n border-bottom-right-radius: var(--radius-sm);\n }\n\n .emptyRow {\n border-bottom: none;\n }\n\n .emptyRow {\n display: table-row;\n }\n\n .emptyState {\n @apply px-4 py-8 text-center;\n background-color: var(--empty-background, var(--body-background, var(--background)));\n color: var(--empty-foreground, var(--foreground));\n }\n\n .emptyState {\n display: table-cell;\n }\n\n .filterBar {\n @apply mb-4 rounded-sm border p-4;\n border: var(--border-width-base) solid var(--filter-border, var(--background-border));\n background-color: var(--filter-background, var(--background));\n }\n\n .filterBar {\n display: block;\n }\n\n .filterGrid {\n @apply grid grid-cols-1 gap-4 md:grid-cols-2 lg:grid-cols-3;\n background-color: var(--filter-grid-background, var(--filter-background, var(--body-background, var(--background))));\n }\n\n .filterGrid {\n display: grid;\n }\n\n .filterField {\n @apply min-w-0;\n }\n\n .filterLabel {\n @apply mb-2 block;\n color: var(--filter-label-foreground, var(--foreground));\n font-size: var(--filter-label-font-size, var(--text-xs));\n font-weight: var(--filter-label-font-weight, var(--font-weight-medium));\n }\n\n .filterLabel {\n display: block;\n }\n\n .filterInput {\n @apply w-full;\n }\n}\n",
270
+ "styleableParts": [
271
+ {
272
+ "name": "root"
273
+ },
274
+ {
275
+ "name": "container"
276
+ },
277
+ {
278
+ "name": "filterBar"
279
+ },
280
+ {
281
+ "name": "filterGrid"
282
+ },
283
+ {
284
+ "name": "filterLabel"
285
+ },
286
+ {
287
+ "name": "filterInput"
288
+ },
289
+ {
290
+ "name": "table"
291
+ },
292
+ {
293
+ "name": "header"
294
+ },
295
+ {
296
+ "name": "body"
297
+ },
298
+ {
299
+ "name": "headerRow"
300
+ },
301
+ {
302
+ "name": "headerCell"
303
+ },
304
+ {
305
+ "name": "row"
306
+ },
307
+ {
308
+ "name": "cell"
309
+ },
310
+ {
311
+ "name": "emptyRow"
312
+ },
313
+ {
314
+ "name": "emptyState"
315
+ }
316
+ ],
317
+ "cssVariables": [
318
+ {
319
+ "name": "--hover-transition-duration",
320
+ "value": "var(--hover-transition-enter-duration, 0ms)",
321
+ "defaultValue": "0ms",
322
+ "referencedVars": [
323
+ "--hover-transition-enter-duration"
324
+ ],
325
+ "variant": ".row[data-interactive=\"true\"]:hover .cell"
250
326
  }
251
327
  ]
252
328
  },
253
329
  "switch": {
254
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .switch {\n --radius: 9999px;\n --inner-radius: calc(var(--radius) - var(--border-width-base));\n\n --width: 2.75rem;\n --height: 1.5rem;\n --thumb-size: 1rem;\n --thumb-offset: 0.25rem;\n\n --disabled-opacity: 0.6;\n\n @apply relative inline-flex cursor-pointer items-center;\n user-select: none;\n border-radius: var(--radius);\n width: var(--width);\n height: var(--height);\n }\n\n .switch-track {\n @apply absolute inset-0;\n transition: background-color 180ms var(--ease-snappy-pop), border-color 180ms var(--ease-snappy-pop), transform 180ms var(--ease-snappy-pop);\n background-color: var(--background);\n border: var(--border-width-base) solid var(--border-color);\n border-radius: var(--radius);\n }\n\n .switch:active:not([data-disabled]) .switch-track {\n transform: scale(0.98);\n }\n\n .switch-thumb {\n @apply absolute top-0 bottom-0 my-auto;\n left: var(--thumb-offset);\n width: var(--thumb-size);\n height: var(--thumb-size);\n transition: left 180ms var(--ease-snappy-pop), background-color 180ms var(--ease-snappy-pop);\n background-color: var(--foreground);\n border-radius: var(--inner-radius);\n z-index: 1;\n pointer-events: none;\n }\n\n .switch[data-selected] .switch-track {\n background-color: var(--background-active);\n border-color: var(--border-color-active);\n }\n\n .switch[data-selected] .switch-thumb {\n background-color: var(--foreground-active);\n left: calc(var(--width) - var(--thumb-size) - var(--thumb-offset));\n }\n\n @media (hover: hover) {\n .switch[data-selected]:not([data-disabled]):hover .switch-track {\n border-color: var(--border-color-hover);\n }\n }\n\n .switch[data-selected]:not([data-disabled]):active .switch-track {\n border-color: var(--border-color-pressed);\n }\n\n .switch[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n\n .switch-sm {\n --width: 1.75rem;\n --height: 1rem;\n --thumb-size: 0.625rem;\n --thumb-offset: 0.1875rem;\n }\n}\n",
330
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .switch {\n --radius: 9999px;\n --inner-radius: calc(var(--radius) - var(--border-width-base));\n\n --width: 2.75rem;\n --height: 1.5rem;\n --thumb-size: 1rem;\n --thumb-offset: 0.25rem;\n\n --disabled-opacity: 0.6;\n\n @apply relative inline-flex cursor-pointer items-center;\n user-select: none;\n border-radius: var(--radius);\n width: var(--width);\n height: var(--height);\n }\n\n .switch-track {\n @apply absolute inset-0;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n background-color: var(--background);\n border: var(--border-width-base) solid var(--border);\n border-radius: var(--radius);\n }\n\n .switch:active:not([data-disabled]) .switch-track {\n transform: scale(0.98);\n }\n\n .switch-thumb {\n @apply absolute top-0 bottom-0 my-auto;\n left: var(--thumb-offset);\n width: var(--thumb-size);\n height: var(--thumb-size);\n transition: left 180ms var(--ease-snappy-pop), background-color 180ms var(--ease-snappy-pop);\n background-color: var(--foreground);\n border-radius: var(--inner-radius);\n z-index: 1;\n pointer-events: none;\n }\n\n .switch[data-selected] .switch-track {\n background-color: var(--background-active);\n border-color: var(--border-active);\n }\n\n .switch[data-selected] .switch-thumb {\n background-color: var(--foreground-active);\n left: calc(var(--width) - var(--thumb-size) - var(--thumb-offset));\n }\n\n @media (hover: hover) {\n .switch[data-selected]:not([data-disabled]):hover .switch-track {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n border-color: var(--border-hover);\n }\n }\n\n .switch[data-selected]:not([data-disabled]):active .switch-track {\n border: var(--border-pressed);\n }\n\n .switch[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n\n .switch-sm {\n --width: 1.75rem;\n --height: 1rem;\n --thumb-size: 0.625rem;\n --thumb-offset: 0.1875rem;\n }\n}\n",
255
331
  "styleableParts": [
256
332
  {
257
333
  "name": "root"
@@ -316,6 +392,15 @@
316
392
  "referencedVars": [],
317
393
  "variant": ".switch"
318
394
  },
395
+ {
396
+ "name": "--hover-transition-duration",
397
+ "value": "var(--hover-transition-enter-duration, 0ms)",
398
+ "defaultValue": "0ms",
399
+ "referencedVars": [
400
+ "--hover-transition-enter-duration"
401
+ ],
402
+ "variant": ".switch[data-selected]:not([data-disabled]):hover .switch-track"
403
+ },
319
404
  {
320
405
  "name": "--width",
321
406
  "value": "1.75rem",
@@ -347,7 +432,7 @@
347
432
  ]
348
433
  },
349
434
  "slider": {
350
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .slider {\n --disabled-opacity: 0.6;\n --slider-track-size: 0.375rem;\n --slider-thumb-size: 1rem;\n\n @apply relative flex w-full items-center;\n min-inline-size: 12rem;\n min-height: 2rem;\n touch-action: none;\n user-select: none;\n }\n\n .track {\n @apply relative flex grow items-center;\n flex-grow: 1;\n height: var(--slider-track-size);\n overflow: visible;\n border-radius: var(--radius-xs, 0.25rem);\n background-color: var(--background);\n }\n\n .range {\n @apply absolute;\n border-radius: var(--radius-xs, 0.25rem);\n background-color: var(--background);\n transition: background-color 200ms var(--ease-snappy-pop);\n }\n\n .thumb {\n @apply absolute block;\n top: 50%;\n width: var(--slider-thumb-size);\n height: var(--slider-thumb-size);\n transform: translate(-50%, -50%);\n border-radius: var(--radius-full, 9999px);\n outline: none;\n background-color: var(--background);\n transition:\n background-color 200ms var(--ease-snappy-pop),\n transform 200ms var(--ease-snappy-pop);\n }\n\n .slider[data-orientation=\"horizontal\"] .range {\n top: 0;\n height: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] {\n justify-content: center;\n min-height: 10rem;\n min-inline-size: auto;\n width: fit-content;\n }\n\n .slider[data-orientation=\"vertical\"] .track {\n width: var(--slider-track-size);\n height: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] .range {\n left: 0;\n width: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] .thumb {\n left: 50%;\n top: auto;\n transform: translate(-50%, 50%);\n }\n\n .slider[data-disabled=\"true\"] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .slider[data-disabled=\"true\"] .range {\n background-color: var(--background-disabled, var(--background));\n }\n\n .thumb[data-disabled=\"true\"] {\n cursor: not-allowed;\n background-color: var(--background-disabled, var(--background));\n }\n\n .thumb[data-pressed=\"true\"] {\n transform: translate(-50%, -50%) scale(1.08);\n }\n\n .slider[data-orientation=\"vertical\"] .thumb[data-pressed=\"true\"] {\n transform: translate(-50%, 50%) scale(1.08);\n }\n}\n",
435
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .slider {\n --disabled-opacity: 0.6;\n --slider-track-size: 0.375rem;\n --slider-thumb-size: 1rem;\n\n @apply relative flex w-full items-center;\n min-inline-size: var(--slider-min-inline-size, 12rem);\n min-height: var(--slider-hit-size, 2rem);\n touch-action: none;\n user-select: none;\n }\n\n .track {\n @apply relative flex grow items-center;\n flex-grow: 1;\n height: var(--slider-track-size);\n overflow: visible;\n border-radius: var(--slider-track-radius, var(--radius-xs, 0.25rem));\n border: var(--slider-track-border, 0);\n background: var(--slider-track-background, var(--background));\n }\n\n .range {\n @apply absolute;\n display: var(--slider-range-display, block);\n pointer-events: none;\n border-radius: var(--slider-track-radius, var(--radius-xs, 0.25rem));\n background: var(--slider-range-background, var(--background));\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .thumb {\n @apply absolute block;\n top: 50%;\n width: var(--slider-thumb-size);\n height: var(--slider-thumb-size);\n transform: var(--slider-thumb-transform, translate(-50%, -50%));\n border-radius: var(--radius-full, 9999px);\n outline: none;\n background: var(--slider-thumb-background, var(--background));\n border: var(--slider-thumb-border, 1px solid var(--background-border));\n box-shadow: var(--slider-thumb-shadow, none);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n box-shadow var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .slider[data-orientation=\"horizontal\"] .range {\n top: 0;\n height: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] {\n justify-content: center;\n min-inline-size: auto;\n width: fit-content;\n }\n\n .slider[data-orientation=\"vertical\"] .track {\n width: var(--slider-track-size);\n height: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] .range {\n left: 0;\n width: 100%;\n }\n\n .slider[data-orientation=\"vertical\"] .thumb {\n left: 50%;\n top: auto;\n --slider-thumb-transform: translate(-50%, 50%);\n }\n\n .slider[data-disabled=\"true\"] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .slider[data-disabled=\"true\"] .range {\n background: var(--slider-range-background-disabled, var(--background-disabled, var(--slider-range-background, var(--background))));\n }\n\n .thumb[data-disabled=\"true\"] {\n cursor: not-allowed;\n background: var(--slider-thumb-background-disabled, var(--background-disabled, var(--slider-thumb-background, var(--background))));\n }\n\n .thumb[data-pressed=\"true\"] {\n transform: var(--slider-thumb-transform, translate(-50%, -50%)) scale(var(--slider-thumb-scale-active, 1.08));\n }\n\n .slider[data-orientation=\"vertical\"] .thumb[data-pressed=\"true\"] {\n transform: var(--slider-thumb-transform, translate(-50%, 50%)) scale(var(--slider-thumb-scale-active, 1.08));\n }\n}\n",
351
436
  "styleableParts": [
352
437
  {
353
438
  "name": "root"
@@ -383,11 +468,18 @@
383
468
  "defaultValue": null,
384
469
  "referencedVars": [],
385
470
  "variant": ".slider"
471
+ },
472
+ {
473
+ "name": "--slider-thumb-transform",
474
+ "value": "translate(-50%, 50%)",
475
+ "defaultValue": null,
476
+ "referencedVars": [],
477
+ "variant": ".slider[data-orientation=\"vertical\"] .thumb"
386
478
  }
387
479
  ]
388
480
  },
389
481
  "select": {
390
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n @apply flex w-full;\n position: relative;\n overflow: visible;\n }\n\n .select {\n --disabled-opacity: 0.5;\n --trigger-padding-inline: calc(var(--spacing) * 2);\n --trigger-padding-block: calc(var(--spacing) * 1.75);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-inner-radius: calc(var(--background-radius) - var(--border-width-base, 1px));\n font-size: var(--foreground-size);\n\n @apply p-0 gap-0 w-full flex-row items-center;\n position: relative;\n overflow: visible;\n\n background-color: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--background-radius);\n\n @apply select-none cursor-pointer;\n\n &[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n &[data-pressed=\"true\"]:not([data-disabled]) {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n }\n\n &[data-open=\"true\"] {\n background-color: var(--background-hover);\n }\n }\n\n .trigger {\n @apply flex items-stretch flex-1 gap-0 w-full h-full min-h-0;\n\n background: transparent;\n\n @apply border-none cursor-pointer select-none;\n\n @media (hover: hover) {\n &:not([data-disabled]):hover .icon-section,\n &:not([data-disabled]):hover .value-section:not(:empty) {\n background-color: var(--background-hover);\n }\n }\n\n &[data-focus-visible=\"true\"] {\n @apply outline-none;\n }\n }\n\n .trigger-compact {\n @apply flex-none w-auto;\n }\n\n button.trigger { @apply p-0; }\n\n .value-section {\n @apply flex items-center flex-1 min-w-0 gap-0.5;\n\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n border-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n font-size: var(--foreground-size);\n\n &:only-child {\n border-radius: var(--background-inner-radius);\n justify-content: center;\n }\n &:empty {\n flex: 0;\n padding: 0;\n min-width: auto;\n }\n }\n\n .icon-section {\n @apply flex items-center justify-center shrink-0;\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n border-radius: 0 var(--background-inner-radius) var(--background-inner-radius) 0;\n }\n\n .icon {\n @apply flex items-center justify-center w-4 h-4 opacity-70;\n }\n\n .trigger[data-open=\"true\"] .icon {\n transform: rotate(180deg);\n }\n\n .value {\n @apply flex items-center flex-1 min-w-0 gap-2 bg-transparent border-none;\n cursor: inherit;\n }\n\n .value-icon {\n @apply flex items-center justify-center shrink-0 w-4 h-4;\n color: var(--foreground);\n }\n\n .value-text {\n font-weight: var(--font-weight-medium);\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .content,\n .sub-content {\n --item-padding-inline: calc(var(--spacing) * 1.5);\n --item-padding-block: var(--spacing);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-inner-radius: calc(var(--background-radius) - var(--border-width-base, 1px));\n overflow: hidden;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--background-radius);\n }\n\n .content-root,\n .sub-content-root {\n position: absolute;\n }\n\n .content {\n &[data-state=\"open\"][data-placement=\"bottom\"] { animation: slide-in-from-top 0.15s var(--ease-snappy-pop); }\n &[data-state=\"open\"][data-placement=\"top\"] { animation: slide-in-from-bottom 0.15s var(--ease-snappy-pop); }\n &[data-state=\"closed\"][data-placement=\"bottom\"] { animation: slide-out-from-top 0.15s var(--ease-snappy-pop); }\n &[data-state=\"closed\"][data-placement=\"top\"] { animation: slide-out-from-bottom 0.15s var(--ease-snappy-pop); }\n }\n\n .list {\n @apply space-y-1;\n }\n\n .item,\n .sub-trigger {\n @apply flex items-center gap-2 outline-none cursor-default select-none;\n border-radius: var(--background-inner-radius);\n font-size: var(--foreground-size);\n font-weight: var(--font-weight-medium);\n color: var(--foreground);\n\n &[data-disabled] {\n opacity: var(--disabled-opacity, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n }\n }\n\n .item {\n --item-padding-inline: var(--trigger-padding-inline);\n --item-padding-block: calc(var(--trigger-padding-block) * 1.15);\n\n padding: var(--item-padding-block) var(--item-padding-inline);\n\n &[data-selected=\"true\"] {\n color: var(--foreground);\n }\n\n &[data-highlighted=\"true\"] {\n background-color: var(--background-highlighted);\n }\n }\n\n .item-content {\n @apply flex flex-col flex-1 min-w-0;\n }\n\n .item-text {\n @apply min-w-0 overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .item-description {\n font-size: var(--foreground-size);\n font-weight: var(--font-weight-medium);\n color: var(--foreground-muted);\n @apply min-w-0 whitespace-normal break-words;\n }\n\n .item-icon, .item-indicator {\n @apply flex items-center justify-center shrink-0 w-4 h-4;\n }\n\n .item-icon { color: var(--icon-foreground); }\n .item-indicator { color: var(--indicator-foreground); margin-left: auto; }\n\n .item-with-description { @apply items-start py-2; }\n .item-icon-with-description, .item-indicator-with-description { @apply mt-0.5; }\n\n .separator {\n @apply my-1 -mx-1 h-px;\n background-color: var(--background-border);\n }\n\n .placeholder {\n color: var(--foreground-muted);\n }\n\n .icon-prefix {\n @apply inline-flex items-center shrink-0;\n }\n\n .select[data-mode=\"multiple\"] .item { gap: 0.5rem; }\n\n .search-trigger {\n @apply flex items-stretch relative bg-transparent cursor-text overflow-hidden;\n border-radius: var(--background-inner-radius);\n transition: box-shadow 150ms var(--ease-snappy-pop), border-color 150ms var(--ease-snappy-pop);\n\n &:focus-within {\n @apply outline-none;\n z-index: 1;\n }\n }\n\n .search-trigger :global(.focus-indicator) {\n display: none;\n }\n\n .search-value-section {\n @apply p-0;\n border-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n }\n\n .input {\n padding: var(--trigger-padding-block) calc(var(--trigger-padding-inline) * 1.5);\n padding-right: calc(var(--trigger-padding-inline) * 2 + 1rem);\n @apply border-none rounded-none shadow-none bg-transparent;\n\n &[data-focused], &[data-focus-visible] {\n @apply border-none shadow-none;\n }\n }\n\n .search-content-input {\n padding-inline: calc(var(--trigger-padding-inline) * 1.5);\n @apply border-none rounded-none bg-transparent;\n }\n\n .search-icon-section {\n @apply absolute right-0 top-0 bottom-0 flex items-center justify-center bg-transparent pointer-events-none;\n padding-inline: var(--trigger-padding-inline);\n }\n\n\n .search-wrapper {\n @apply overflow-hidden;\n border-bottom: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .content[data-placement=\"top\"] .search-wrapper {\n border-radius: 0;\n border-bottom: none;\n border-top: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .sub-trigger {\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n\n &[data-highlighted=\"true\"],\n &[data-open=\"true\"]:not([data-highlighted=\"true\"]) {\n background-color: var(--background-highlighted);\n }\n }\n\n .sub-trigger-chevron {\n @apply shrink-0 ml-auto w-4 h-4 opacity-60;\n }\n\n .sub-content {\n min-width: 160px;\n max-width: 320px;\n }\n\n @keyframes slide-in-from-top { from { opacity: 0; translate: 0 -2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-in-from-bottom { from { opacity: 0; translate: 0 2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-out-from-top { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 -2px; } }\n @keyframes slide-out-from-bottom { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 2px; } }\n}\n",
482
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n @apply flex w-full;\n position: relative;\n overflow: visible;\n }\n\n .select {\n --disabled-opacity: 0.5;\n --trigger-padding-inline: calc(var(--spacing) * 1.60);\n --trigger-padding-block: calc(var(--spacing) * 1.30);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-inner-radius: calc(var(--background-radius) - var(--border-width-base, 1px));\n font-size: var(--foreground-size);\n height: fit-content;\n align-self: center;\n\n @apply p-0 gap-0 w-full flex-row items-center;\n position: relative;\n overflow: visible;\n\n background-color: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--background-radius);\n\n @apply select-none cursor-pointer;\n\n &[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n &[data-pressed=\"true\"]:not([data-disabled]) {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n }\n\n &[data-open=\"true\"] {\n background-color: var(--background-hover);\n }\n\n &:global(.group) {\n height: 100%;\n align-self: stretch;\n }\n }\n\n .trigger {\n @apply flex items-stretch flex-1 gap-0 w-full h-full min-h-0;\n\n background: transparent;\n\n @apply border-none cursor-pointer select-none;\n\n @media (hover: hover) {\n &:not([data-disabled]):hover .icon-section,\n &:not([data-disabled]):hover .value-section:not(:empty) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n }\n\n &[data-focus-visible=\"true\"] {\n @apply outline-none;\n }\n }\n\n .trigger-compact {\n @apply flex-none w-auto;\n }\n\n .select button.trigger { @apply p-0; }\n\n .value-section {\n @apply flex items-center flex-1 min-w-0 gap-0.5;\n\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n border-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n font-size: var(--foreground-size);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &:only-child {\n border-radius: var(--background-inner-radius);\n justify-content: center;\n }\n &:empty {\n flex: 0;\n padding: 0;\n min-width: auto;\n }\n }\n\n .icon-section {\n @apply flex items-center justify-center shrink-0;\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n border-radius: 0 var(--background-inner-radius) var(--background-inner-radius) 0;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .icon {\n @apply flex items-center justify-center w-4 h-4 opacity-70;\n }\n\n .select .trigger[data-open=\"true\"] .icon {\n transform: rotate(180deg);\n }\n\n .value {\n @apply flex items-center flex-1 min-w-0 gap-2 bg-transparent border-none;\n cursor: inherit;\n }\n\n .value-icon {\n @apply flex items-center justify-center shrink-0 w-4 h-4;\n color: var(--foreground);\n }\n\n .value-text {\n font-weight: var(--font-weight-medium);\n @apply min-w-0 overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .content,\n .sub-content {\n --item-padding-inline: calc(var(--spacing) * 1.5);\n --item-padding-block: var(--spacing);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-inner-radius: calc(var(--background-radius) - var(--border-width-base, 1px));\n overflow: hidden;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--background-radius);\n }\n\n .content-root,\n .sub-content-root {\n position: absolute;\n }\n\n .content {\n &[data-state=\"open\"][data-placement=\"bottom\"] { animation: slide-in-from-top 0.15s var(--ease-snappy-pop); }\n &[data-state=\"open\"][data-placement=\"top\"] { animation: slide-in-from-bottom 0.15s var(--ease-snappy-pop); }\n &[data-state=\"closed\"][data-placement=\"bottom\"] { animation: slide-out-from-top 0.15s var(--ease-snappy-pop); }\n &[data-state=\"closed\"][data-placement=\"top\"] { animation: slide-out-from-bottom 0.15s var(--ease-snappy-pop); }\n }\n\n .list {\n @apply space-y-1;\n }\n\n .item,\n .sub-trigger {\n @apply flex items-center gap-2 outline-none cursor-default select-none;\n border-radius: var(--background-inner-radius);\n font-size: var(--foreground-size);\n font-weight: var(--font-weight-medium);\n color: var(--foreground);\n\n &[data-disabled] {\n opacity: var(--disabled-opacity, 0.5);\n cursor: not-allowed;\n pointer-events: none;\n }\n }\n\n .item {\n --item-padding-inline: var(--trigger-padding-inline);\n --item-padding-block: calc(var(--trigger-padding-block) * 1.15);\n\n padding: var(--item-padding-block) var(--item-padding-inline);\n\n &[data-selected=\"true\"] {\n color: var(--foreground);\n }\n\n &[data-highlighted=\"true\"] {\n background-color: var(--background-highlighted);\n }\n }\n\n .item-content {\n @apply flex flex-col flex-1 min-w-0;\n }\n\n .item-text {\n @apply min-w-0 overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .item-description {\n font-size: var(--foreground-size);\n font-weight: var(--font-weight-medium);\n color: var(--foreground-muted);\n @apply min-w-0 whitespace-normal break-words;\n }\n\n .item-icon, .item-indicator {\n @apply flex items-center justify-center shrink-0 w-4 h-4;\n }\n\n .item-icon { color: var(--icon-foreground); }\n .item-indicator { color: var(--indicator-foreground); margin-left: auto; }\n\n .item-with-description { @apply items-start py-2; }\n .item-icon-with-description, .item-indicator-with-description { @apply mt-0.5; }\n\n .separator {\n @apply my-1 -mx-1 h-px;\n background-color: var(--background-border);\n }\n\n .placeholder {\n color: var(--foreground-muted);\n }\n\n .icon-prefix {\n @apply inline-flex items-center shrink-0;\n }\n\n .select[data-mode=\"multiple\"] .item { gap: 0.5rem; }\n\n .search-trigger {\n @apply flex items-stretch relative bg-transparent cursor-text overflow-hidden;\n border-radius: var(--background-inner-radius);\n transition: box-shadow 150ms var(--ease-snappy-pop), border-color 150ms var(--ease-snappy-pop);\n\n &:focus-within {\n @apply outline-none;\n z-index: 1;\n }\n }\n\n .search-trigger :global(.focus-indicator) {\n display: none;\n }\n\n .search-value-section {\n @apply p-0;\n border-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n }\n\n .input {\n padding-right: calc(var(--trigger-padding-inline) * 2 + 1rem);\n @apply border-none rounded-none shadow-none bg-transparent;\n\n &[data-focused], &[data-focus-visible] {\n @apply border-none shadow-none;\n }\n }\n\n .search-content-input {\n @apply border-none rounded-none bg-transparent;\n }\n\n .search-icon-section {\n @apply absolute right-0 top-0 bottom-0 flex items-center justify-center bg-transparent pointer-events-none;\n padding-inline: var(--trigger-padding-inline);\n }\n\n\n .search-wrapper {\n @apply overflow-hidden;\n border-bottom: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .empty-state {\n @apply px-3 py-2;\n color: var(--foreground-muted);\n }\n\n .content[data-placement=\"top\"] .search-wrapper {\n border-radius: 0;\n border-bottom: none;\n border-top: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .sub-trigger {\n padding: var(--trigger-padding-block) var(--trigger-padding-inline);\n\n &[data-highlighted=\"true\"],\n &[data-open=\"true\"]:not([data-highlighted=\"true\"]) {\n background-color: var(--background-highlighted);\n }\n }\n\n .sub-trigger-chevron {\n @apply shrink-0 ml-auto w-4 h-4 opacity-60;\n }\n\n .sub-content {\n min-width: 160px;\n max-width: 320px;\n }\n\n @keyframes slide-in-from-top { from { opacity: 0; translate: 0 -2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-in-from-bottom { from { opacity: 0; translate: 0 2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-out-from-top { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 -2px; } }\n @keyframes slide-out-from-bottom { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 2px; } }\n}\n",
391
483
  "styleableParts": [
392
484
  {
393
485
  "name": "root"
@@ -439,6 +531,9 @@
439
531
  },
440
532
  {
441
533
  "name": "searchInput"
534
+ },
535
+ {
536
+ "name": "emptyState"
442
537
  }
443
538
  ],
444
539
  "cssVariables": [
@@ -451,7 +546,7 @@
451
546
  },
452
547
  {
453
548
  "name": "--trigger-padding-inline",
454
- "value": "calc(var(--spacing) * 2)",
549
+ "value": "calc(var(--spacing) * 1.60)",
455
550
  "defaultValue": null,
456
551
  "referencedVars": [
457
552
  "--spacing"
@@ -460,7 +555,7 @@
460
555
  },
461
556
  {
462
557
  "name": "--trigger-padding-block",
463
- "value": "calc(var(--spacing) * 1.75)",
558
+ "value": "calc(var(--spacing) * 1.30)",
464
559
  "defaultValue": null,
465
560
  "referencedVars": [
466
561
  "--spacing"
@@ -486,6 +581,15 @@
486
581
  ],
487
582
  "variant": ".select"
488
583
  },
584
+ {
585
+ "name": "--hover-transition-duration",
586
+ "value": "var(--hover-transition-enter-duration, 0ms)",
587
+ "defaultValue": "0ms",
588
+ "referencedVars": [
589
+ "--hover-transition-enter-duration"
590
+ ],
591
+ "variant": "&:not([data-disabled]):hover .icon-section,\n &:not([data-disabled]):hover .value-section:not(:empty)"
592
+ },
489
593
  {
490
594
  "name": "--item-padding-inline",
491
595
  "value": "calc(var(--spacing) * 1.5)",
@@ -544,7 +648,7 @@
544
648
  ]
545
649
  },
546
650
  "scroll": {
547
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply relative;\n min-height: 0;\n }\n\n .vertical {\n --scrollbar-width: 12px;\n }\n\n .horizontal {\n --scrollbar-height: 12px;\n }\n\n .content {\n @apply h-full w-full;\n overflow: auto;\n }\n\n .vertical .content {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n -webkit-overflow-scrolling: touch;\n }\n\n .vertical[data-inline=\"true\"] .content {\n padding-right: 16px;\n }\n\n .horizontal .content {\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n -webkit-overflow-scrolling: touch;\n }\n\n .horizontal[data-inline=\"true\"] .content {\n padding-bottom: 16px;\n }\n\n .vertical .content::-webkit-scrollbar,\n .horizontal .content::-webkit-scrollbar { display: none; }\n\n .track {\n @apply absolute;\n z-index: 10;\n background-color: var(--track-background);\n }\n\n .track[data-hide=\"true\"] {\n transition-property: opacity;\n transition-duration: 200ms;\n }\n\n .vertical .track {\n right: 4px;\n top: var(--scroll-padding-y, 0);\n width: 12px;\n height: calc(100% - 2 * var(--scroll-padding-y, 0));\n box-sizing: border-box;\n }\n\n .horizontal .track {\n bottom: 2px;\n left: 0;\n height: 12px;\n width: 100%;\n }\n\n .thumb {\n position: absolute;\n border-radius: calc(var(--radius-xs, 0.25rem) * 0.80);\n background-color: var(--thumb-background);\n transition-property: background-color, width, height;\n transition-duration: 150ms;\n }\n\n .thumb:hover {\n background-color: var(--thumb-background-hover);\n }\n\n .root[data-pressed] .thumb {\n background-color: var(--thumb-background-pressed);\n }\n\n .vertical .thumb {\n width: 6px;\n margin-left: 6px;\n transition-property: background-color, width, margin-left;\n transition-duration: 150ms;\n }\n\n .vertical .thumb:hover,\n .vertical[data-pressed] .thumb {\n width: 8px;\n margin-left: 4px;\n }\n\n .horizontal .thumb {\n height: 6px;\n margin-top: 6px;\n transition-property: background-color, height, margin-top;\n transition-duration: 150ms;\n }\n\n .horizontal .thumb:hover,\n .horizontal[data-pressed] .thumb {\n height: 8px;\n margin-top: 4px;\n }\n}\n",
651
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .root {\n @apply relative;\n min-height: 0;\n }\n\n .vertical {\n --scrollbar-width: 12px;\n }\n\n .horizontal {\n --scrollbar-height: 12px;\n }\n\n .content {\n @apply h-full w-full;\n overflow: auto;\n }\n\n .vertical .content {\n overflow-y: auto;\n overflow-x: hidden;\n scrollbar-width: none;\n -webkit-overflow-scrolling: touch;\n }\n\n .vertical[data-inline=\"true\"] .content {\n padding-right: 16px;\n }\n\n .horizontal .content {\n overflow-x: auto;\n overflow-y: hidden;\n scrollbar-width: none;\n -webkit-overflow-scrolling: touch;\n }\n\n .horizontal[data-inline=\"true\"] .content {\n padding-bottom: 16px;\n }\n\n .vertical .content::-webkit-scrollbar,\n .horizontal .content::-webkit-scrollbar { display: none; }\n\n .track {\n @apply absolute;\n z-index: 10;\n background-color: var(--track-background);\n }\n\n .track[data-hide=\"true\"] {\n transition-property: opacity;\n transition-duration: var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms));\n transition-timing-function: var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .vertical .track {\n right: 4px;\n top: var(--scroll-padding-y, 0);\n width: 12px;\n height: calc(100% - 2 * var(--scroll-padding-y, 0));\n box-sizing: border-box;\n }\n\n .horizontal .track {\n bottom: 2px;\n left: 0;\n height: 12px;\n width: 100%;\n }\n\n .thumb {\n position: absolute;\n border-radius: calc(var(--radius-xs, 0.25rem) * 0.80);\n background-color: var(--thumb-background);\n transition-property: background-color, width, height;\n transition-duration: var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms));\n transition-timing-function: var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .thumb:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--thumb-background-hover);\n }\n\n .root[data-pressed] .thumb {\n background-color: var(--thumb-background-pressed);\n }\n\n .vertical .thumb {\n width: 6px;\n margin-left: 6px;\n transition-property: background-color, width, margin-left;\n transition-duration: var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms));\n transition-timing-function: var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .vertical .thumb:hover,\n .vertical[data-pressed] .thumb {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n width: 8px;\n margin-left: 4px;\n }\n\n .horizontal .thumb {\n height: 6px;\n margin-top: 6px;\n transition-property: background-color, height, margin-top;\n transition-duration: var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms));\n transition-timing-function: var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .horizontal .thumb:hover,\n .horizontal[data-pressed] .thumb {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n height: 8px;\n margin-top: 4px;\n }\n}\n",
548
652
  "styleableParts": [
549
653
  {
550
654
  "name": "root"
@@ -573,11 +677,38 @@
573
677
  "defaultValue": null,
574
678
  "referencedVars": [],
575
679
  "variant": ".horizontal"
680
+ },
681
+ {
682
+ "name": "--hover-transition-duration",
683
+ "value": "var(--hover-transition-enter-duration, 0ms)",
684
+ "defaultValue": "0ms",
685
+ "referencedVars": [
686
+ "--hover-transition-enter-duration"
687
+ ],
688
+ "variant": ".thumb:hover"
689
+ },
690
+ {
691
+ "name": "--hover-transition-duration",
692
+ "value": "var(--hover-transition-enter-duration, 0ms)",
693
+ "defaultValue": "0ms",
694
+ "referencedVars": [
695
+ "--hover-transition-enter-duration"
696
+ ],
697
+ "variant": ".vertical .thumb:hover,\n .vertical[data-pressed] .thumb"
698
+ },
699
+ {
700
+ "name": "--hover-transition-duration",
701
+ "value": "var(--hover-transition-enter-duration, 0ms)",
702
+ "defaultValue": "0ms",
703
+ "referencedVars": [
704
+ "--hover-transition-enter-duration"
705
+ ],
706
+ "variant": ".horizontal .thumb:hover,\n .horizontal[data-pressed] .thumb"
576
707
  }
577
708
  ]
578
709
  },
579
710
  "radio": {
580
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .radio-group {\n @apply flex flex-col gap-3;\n }\n\n .radio-item {\n @apply flex items-start gap-3 cursor-pointer select-none;\n position: relative;\n overflow: visible;\n }\n\n .radio-surface {\n @apply inline-flex shrink-0;\n border-radius: 9999px;\n }\n\n .radio-input {\n @apply absolute inset-0 h-full w-full cursor-pointer opacity-0;\n }\n\n .radio {\n --disabled-opacity: 0.6;\n\n @apply relative flex h-5 w-5 shrink-0 cursor-pointer items-center justify-center;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: 9999px;\n transition: all 200ms var(--ease-snappy-pop), transform 200ms var(--ease-snappy-pop);\n background-color: var(--background);\n\n &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n border-color: var(--background-selected-border);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n\n &[data-error=\"true\"][data-selected=\"true\"] {\n border-color: var(--background-selected-border);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n }\n }\n\n .radio-item:active .radio {\n transform: scale(0.92);\n }\n\n .radio-dot {\n border-radius: 9999px;\n background-color: var(--dot-color);\n transform: scale(0);\n transform-origin: center;\n transition: transform 200ms var(--ease-snappy-pop), background-color 200ms var(--ease-snappy-pop);\n }\n\n .radio[data-selected=\"true\"] .radio-dot {\n background-color: var(--dot-selected-color);\n transform: scale(1);\n }\n\n @media (hover: hover) {\n .radio-item:not([data-disabled=\"true\"]):hover .radio {\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n opacity: 0.9;\n }\n }\n\n .radio-item[data-disabled=\"true\"] .radio {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .radio-label {\n @apply cursor-pointer;\n color: var(--foreground);\n font-size: inherit;\n font-weight: var(--font-weight-medium, 500);\n line-height: inherit;\n transition: color 200ms var(--ease-snappy-pop);\n user-select: none;\n\n &[data-disabled=\"true\"] {\n color: var(--foreground-disabled, var(--foreground));\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n }\n\n .radio-description {\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n margin-top: 0.125rem;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-error=\"true\"] {\n color: var(--foreground-error, var(--foreground));\n }\n }\n\n .helper-text {\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n margin-top: 0.5rem;\n margin-left: 2rem;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-error=\"true\"] {\n color: var(--foreground-error, var(--foreground));\n }\n }\n\n .radio.sm {\n @apply h-4 w-4;\n }\n\n .radio.sm .radio-dot {\n width: 0.375rem;\n height: 0.375rem;\n }\n\n .radio.md {\n @apply h-5 w-5;\n }\n\n .radio.md .radio-dot {\n width: 0.625rem;\n height: 0.625rem;\n }\n\n .radio.lg {\n @apply h-6 w-6;\n }\n\n .radio.lg .radio-dot {\n width: 0.75rem;\n height: 0.75rem;\n }\n}\n",
711
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .radio-items {\n @apply flex flex-col gap-3;\n }\n\n .radio-item {\n @apply flex items-start gap-3 cursor-pointer select-none;\n position: relative;\n overflow: visible;\n }\n\n .radio-surface {\n @apply inline-flex shrink-0;\n border-radius: 9999px;\n }\n\n .radio-input {\n @apply absolute inset-0 h-full w-full cursor-pointer opacity-0;\n }\n\n .radio {\n --disabled-opacity: 0.6;\n @apply relative flex h-5 w-5 shrink-0 cursor-pointer items-center justify-center;\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: 9999px;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n background-color: var(--background);\n\n &[data-selected=\"true\"] {\n border-color: var(--background-selected-border);\n }\n\n &[data-error=\"true\"] {\n border-color: var(--background-error-border);\n }\n\n &[data-error=\"true\"][data-selected=\"true\"] {\n border-color: var(--background-selected-border);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n }\n }\n\n .radio-item:active .radio {\n transform: scale(0.92);\n }\n\n .radio-dot {\n border-radius: 9999px;\n background-color: var(--dot-color);\n transform: scale(0);\n transform-origin: center;\n transition: transform 200ms var(--ease-snappy-pop), background-color 200ms var(--ease-snappy-pop);\n }\n\n .radio[data-selected=\"true\"] .radio-dot {\n background-color: var(--dot-selected-color);\n transform: scale(1);\n }\n\n @media (hover: hover) {\n .radio-item:not([data-disabled=\"true\"]):hover .radio {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n opacity: 0.9;\n }\n }\n\n .radio-item[data-disabled=\"true\"] .radio {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .radio-label {\n @apply cursor-pointer;\n color: var(--foreground);\n font-size: inherit;\n font-weight: var(--font-weight-medium, 500);\n line-height: inherit;\n transition: color 200ms var(--ease-snappy-pop);\n user-select: none;\n\n &[data-disabled=\"true\"] {\n color: var(--foreground-disabled, var(--foreground));\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n }\n\n .radio-description {\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n margin-top: 0.125rem;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-error=\"true\"] {\n color: var(--foreground-error, var(--foreground));\n }\n }\n\n .helper-text {\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n margin-top: 0.5rem;\n margin-left: 2rem;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-error=\"true\"] {\n color: var(--foreground-error, var(--foreground));\n }\n }\n\n .radio.sm {\n @apply h-4 w-4;\n }\n\n .radio.sm .radio-dot {\n width: 0.375rem;\n height: 0.375rem;\n }\n\n .radio.md {\n @apply h-5 w-5;\n }\n\n .radio.md .radio-dot {\n width: 0.5rem;\n height: 0.5rem;\n }\n\n .radio.lg {\n @apply h-6 w-6;\n }\n\n .radio.lg .radio-dot {\n width: 0.625rem;\n height: 0.625rem;\n }\n}\n",
581
712
  "styleableParts": [
582
713
  {
583
714
  "name": "root"
@@ -611,11 +742,20 @@
611
742
  "defaultValue": null,
612
743
  "referencedVars": [],
613
744
  "variant": ".radio"
745
+ },
746
+ {
747
+ "name": "--hover-transition-duration",
748
+ "value": "var(--hover-transition-enter-duration, 0ms)",
749
+ "defaultValue": "0ms",
750
+ "referencedVars": [
751
+ "--hover-transition-enter-duration"
752
+ ],
753
+ "variant": ".radio-item:not([data-disabled=\"true\"]):hover .radio"
614
754
  }
615
755
  ]
616
756
  },
617
757
  "progress": {
618
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .progress {\n @apply relative w-full overflow-hidden;\n border-radius: var(--radius-full, 9999px);\n background-color: var(--background);\n }\n\n .progress.sm { height: 0.25rem; }\n .progress.md { height: 0.5rem; }\n .progress.lg { height: 0.75rem; }\n\n .fill {\n @apply h-full;\n border-radius: var(--radius-full, 9999px);\n background-color: var(--fill-background);\n transition: width 300ms var(--ease-snappy-pop);\n }\n\n .fill[data-animated=\"true\"] {\n animation: pulse 2s var(--ease-gentle-ease) infinite;\n }\n\n .fill[data-indeterminate=\"true\"] {\n width: 33.333%;\n animation: progress-indeterminate 1.5s var(--ease-gentle-ease) infinite;\n }\n\n .wrapper {\n @apply w-full;\n }\n\n .wrapper[data-has-label=\"true\"] {\n @apply space-y-1;\n }\n\n .label-row {\n @apply flex items-center justify-between;\n font-size: var(--text-sm);\n color: var(--foreground);\n }\n\n .label {\n user-select: none;\n }\n\n .value {\n font-variant-numeric: tabular-nums;\n }\n\n @keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n }\n\n @keyframes progress-indeterminate {\n 0% { transform: translateX(-100%); }\n 100% { transform: translateX(400%); }\n }\n}\n",
758
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .bar {\n @apply relative w-full overflow-hidden;\n border-radius: var(--radius-full, 9999px);\n background-color: var(--background);\n }\n\n .bar { height: 0.5rem; }\n\n .fill {\n @apply h-full;\n border-radius: var(--radius-full, 9999px);\n background-color: var(--fill-background);\n transition: width 300ms var(--ease-snappy-pop);\n }\n\n .fill[data-animated=\"true\"] {\n animation: pulse 2s var(--ease-gentle-ease) infinite;\n }\n\n .fill[data-indeterminate=\"true\"] {\n width: 33.333%;\n animation: progress-indeterminate 1.5s var(--ease-gentle-ease) infinite;\n }\n\n .wrapper {\n @apply w-full;\n }\n\n .wrapper[data-has-label=\"true\"] {\n @apply space-y-1;\n }\n\n .label-row {\n @apply flex items-center justify-between;\n font-size: var(--text-sm);\n color: var(--foreground);\n }\n\n .label {\n user-select: none;\n }\n\n .value {\n font-variant-numeric: tabular-nums;\n }\n\n @keyframes pulse {\n 0%, 100% {\n opacity: 1;\n }\n 50% {\n opacity: 0.5;\n }\n }\n\n @keyframes progress-indeterminate {\n 0% { transform: translateX(-100%); }\n 100% { transform: translateX(400%); }\n }\n}\n",
619
759
  "styleableParts": [
620
760
  {
621
761
  "name": "root"
@@ -639,7 +779,7 @@
639
779
  "cssVariables": []
640
780
  },
641
781
  "popover": {
642
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .trigger {\n @apply inline-block;\n }\n\n .root {\n @apply absolute;\n pointer-events: none;\n z-index: 50;\n }\n\n .content {\n --frame-fill: var(--background);\n --frame-stroke-color: var(--border);\n --frame-radius: 8px;\n opacity: 0;\n transform: scale(0.95);\n transition: opacity 0.2s ease-out, transform 0.2s ease-out;\n pointer-events: none;\n min-width: 200px;\n max-width: 400px;\n padding: 0.75rem;\n }\n\n .content[data-visible=\"true\"] {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n }\n\n .content[data-instant] {\n transition: none;\n }\n\n .frame {\n @apply flex items-center gap-1.5 px-2 py-1;\n color: var(--foreground);\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm);\n @apply whitespace-nowrap;\n }\n}\n",
782
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .trigger {\n @apply inline-block;\n }\n\n .root {\n @apply absolute;\n pointer-events: none;\n z-index: 50;\n }\n\n .content {\n --frame-fill: var(--background);\n --frame-stroke-color: var(--border);\n --frame-radius: 8px;\n opacity: 0;\n transform: scale(0.95);\n transition: opacity 0.2s ease-out, transform 0.2s ease-out;\n pointer-events: none;\n min-width: 200px;\n max-width: 400px;\n padding: 0.75rem;\n }\n\n .content[data-visible=\"true\"] {\n opacity: 1;\n transform: scale(1);\n pointer-events: auto;\n }\n\n .content[data-instant] {\n transition: none;\n }\n\n .frame {\n @apply flex items-center gap-1.5 p-2.5;\n color: var(--foreground);\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm);\n }\n}\n",
643
783
  "styleableParts": [
644
784
  {
645
785
  "name": "root"
@@ -683,7 +823,7 @@
683
823
  ]
684
824
  },
685
825
  "path": {
686
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .path {\n @apply block;\n }\n\n .list {\n @apply m-0 flex flex-wrap items-center gap-2 p-0;\n list-style: none;\n }\n\n .list[data-separator=\"custom\"] .item:not(:last-child)::after {\n content: none;\n }\n\n .item {\n @apply m-0 flex items-center gap-2 p-0;\n }\n\n .item:not(:last-child)::after {\n content: \"/\";\n margin-inline-start: 0.5rem;\n color: var(--separator-foreground);\n pointer-events: none;\n user-select: none;\n }\n\n .separator {\n @apply m-0 flex items-center p-0;\n list-style: none;\n color: var(--separator-foreground);\n pointer-events: none;\n user-select: none;\n }\n\n .link {\n @apply relative cursor-pointer px-2 py-1;\n border: 0;\n background-color: transparent;\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n line-height: var(--leading-normal, 1.5);\n text-decoration: none;\n transition:\n color 0.2s cubic-bezier(0.4, 0, 0.2, 1),\n background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n outline: none;\n }\n\n button.link {\n font: inherit;\n }\n\n .link:focus,\n .link:focus-visible {\n outline: none;\n }\n\n .link[data-hovered=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"]) {\n background-color: var(--background-hover);\n color: var(--foreground-hover);\n }\n\n .link[data-pressed=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"]) {\n background-color: var(--background-pressed);\n }\n\n .link[data-selected=\"true\"] {\n color: var(--foreground-selected);\n cursor: default;\n }\n\n .link[data-selected=\"true\"][data-hovered=\"true\"] {\n background-color: transparent;\n }\n\n .link[data-disabled=\"true\"] {\n color: var(--foreground-disabled);\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n }\n\n .link[data-disabled=\"true\"][data-hovered=\"true\"] {\n background-color: transparent;\n }\n}\n",
826
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .path {\n @apply block;\n }\n\n .list {\n @apply m-0 flex flex-wrap items-center gap-2 p-0;\n list-style: none;\n }\n\n .list[data-separator=\"custom\"] .item:not(:last-child)::after {\n content: none;\n }\n\n .item {\n @apply m-0 flex items-center gap-2 p-0;\n }\n\n .item:not(:last-child)::after {\n content: \"/\";\n margin-inline-start: 0.5rem;\n color: var(--separator-foreground);\n pointer-events: none;\n user-select: none;\n }\n\n .separator {\n @apply m-0 flex items-center p-0;\n list-style: none;\n color: var(--separator-foreground);\n pointer-events: none;\n user-select: none;\n }\n\n .link {\n @apply relative cursor-pointer px-2 py-1;\n border: 0;\n background-color: transparent;\n color: var(--foreground);\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n line-height: var(--leading-normal, 1.5);\n text-decoration: none;\n transition:\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n outline: none;\n }\n\n button.link {\n font: inherit;\n }\n\n .link:focus,\n .link:focus-visible {\n outline: none;\n }\n\n .link[data-hovered=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"]) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n color: var(--foreground-hover);\n }\n\n .link[data-pressed=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"]) {\n background-color: var(--background-pressed);\n }\n\n .link[data-selected=\"true\"] {\n color: var(--foreground-selected);\n cursor: default;\n }\n\n .link[data-selected=\"true\"][data-hovered=\"true\"] {\n background-color: transparent;\n }\n\n .link[data-disabled=\"true\"] {\n color: var(--foreground-disabled);\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n }\n\n .link[data-disabled=\"true\"][data-hovered=\"true\"] {\n background-color: transparent;\n }\n}\n",
687
827
  "styleableParts": [
688
828
  {
689
829
  "name": "root"
@@ -698,16 +838,45 @@
698
838
  "name": "separator"
699
839
  }
700
840
  ],
701
- "cssVariables": []
841
+ "cssVariables": [
842
+ {
843
+ "name": "--hover-transition-duration",
844
+ "value": "var(--hover-transition-enter-duration, 0ms)",
845
+ "defaultValue": "0ms",
846
+ "referencedVars": [
847
+ "--hover-transition-enter-duration"
848
+ ],
849
+ "variant": ".link[data-hovered=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"])"
850
+ }
851
+ ]
702
852
  },
703
853
  "panel": {
704
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .panel {\n @apply flex h-full w-full min-h-0 min-w-0 flex-row;\n background: inherit;\n }\n\n .panel[data-stacked=\"true\"] { flex-direction: column; }\n\n .header,\n .footer {\n @apply shrink-0;\n background: inherit;\n }\n\n .sticky {\n position: sticky;\n top: 0;\n z-index: 10;\n }\n\n .content {\n @apply flex min-h-0 min-w-0;\n flex: 1;\n overflow: auto;\n }\n\n .fixed {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 5;\n }\n\n /* Sidebar */\n .sidebar {\n @apply shrink-0 overflow-hidden;\n overflow: hidden;\n transition: width 0.2s ease;\n border-right: var(--border-width-base) solid var(--panel-border-color);\n }\n\n .sidebar[data-side=\"right\"] {\n border-right: none;\n border-left: var(--border-width-base) solid var(--panel-border-color);\n }\n\n /* Toggle */\n .toggle {\n @apply flex items-center;\n }\n\n /* Group */\n .group {\n @apply flex w-full h-full;\n background: inherit;\n }\n\n .group[data-direction=\"vertical\"] { flex-direction: column; }\n\n /* Resize handle */\n .resize {\n @apply relative shrink-0;\n cursor: col-resize;\n background: transparent;\n width: 10px;\n }\n\n .resize::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n width: 1px;\n background: var(--panel-divider-color, #374151);\n transform: translateX(-50%);\n transition: width 0.15s ease;\n }\n\n .resize[data-direction=\"vertical\"] {\n cursor: row-resize;\n height: 10px;\n }\n\n .resize[data-direction=\"vertical\"]::before {\n top: 50%;\n bottom: auto;\n left: 0;\n right: 0;\n width: auto;\n height: 1px;\n transform: translateY(-50%);\n }\n\n .resize:hover::before,\n .resize[data-resizing=\"true\"]::before { width: 2px; }\n\n .resize[data-direction=\"vertical\"]:hover::before,\n .resize[data-direction=\"vertical\"][data-resizing=\"true\"]::before {\n width: auto;\n height: 2px;\n }\n\n /* Spacing variants */\n .spacingNone,\n .spacing-none { gap: 0; }\n\n .spacingSm,\n .spacing-sm { gap: var(--spacing-sm, 0.5rem); }\n\n .spacingMd,\n .spacing-md { gap: var(--spacing-md, 1rem); }\n\n .spacingLg,\n .spacing-lg { gap: var(--spacing-lg, 1.5rem); }\n\n /* Compact variant */\n .compact {\n gap: calc(var(--spacing-sm, 0.5rem) / 2);\n }\n\n /* Responsive stacking (mobile) */\n @media (max-width: 767px) {\n .stacked { flex-direction: column; }\n }\n}\n",
854
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .panel {\n @apply flex h-full w-full min-h-0 min-w-0 flex-row;\n background: inherit;\n }\n\n .panel[data-stacked=\"true\"] { flex-direction: column; }\n\n .header,\n .footer {\n @apply shrink-0;\n background: inherit;\n }\n\n .sticky {\n position: sticky;\n top: 0;\n z-index: 10;\n }\n\n .content {\n @apply flex min-h-0 min-w-0;\n flex: 1;\n overflow: auto;\n }\n\n .fixed {\n position: fixed;\n bottom: 0;\n left: 0;\n right: 0;\n z-index: 5;\n }\n\n /* Sidebar */\n .sidebar {\n @apply shrink-0 overflow-hidden;\n overflow: hidden;\n transition: width 0.2s ease;\n border-right: var(--border-width-base) solid var(--panel-border-color);\n }\n\n .sidebar[data-side=\"right\"] {\n border-right: none;\n border-left: var(--border-width-base) solid var(--panel-border-color);\n }\n\n /* Toggle */\n .toggle {\n @apply flex items-center;\n }\n\n /* Group */\n .group {\n @apply flex w-full h-full;\n background: inherit;\n }\n\n .group[data-direction=\"vertical\"] { flex-direction: column; }\n\n /* Resize handle */\n .resize {\n @apply relative shrink-0;\n cursor: col-resize;\n background: transparent;\n width: 10px;\n }\n\n .resize::before {\n content: '';\n position: absolute;\n top: 0;\n bottom: 0;\n left: 50%;\n width: 1px;\n background: var(--panel-divider-color, #374151);\n transform: translateX(-50%);\n transition:\n width var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n height var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .resize[data-direction=\"vertical\"] {\n cursor: row-resize;\n height: 10px;\n }\n\n .resize[data-direction=\"vertical\"]::before {\n top: 50%;\n bottom: auto;\n left: 0;\n right: 0;\n width: auto;\n height: 1px;\n transform: translateY(-50%);\n }\n\n .resize:hover::before,\n .resize[data-resizing=\"true\"]::before {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n width: 2px;\n }\n\n .resize[data-direction=\"vertical\"]:hover::before,\n .resize[data-direction=\"vertical\"][data-resizing=\"true\"]::before {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n width: auto;\n height: 2px;\n }\n\n /* Spacing variants */\n .spacingNone,\n .spacing-none { gap: 0; }\n\n .spacingSm,\n .spacing-sm { gap: var(--spacing-sm, 0.5rem); }\n\n .spacingMd,\n .spacing-md { gap: var(--spacing-md, 1rem); }\n\n .spacingLg,\n .spacing-lg { gap: var(--spacing-lg, 1.5rem); }\n\n /* Compact variant */\n .compact {\n gap: calc(var(--spacing-sm, 0.5rem) / 2);\n }\n\n /* Responsive stacking (mobile) */\n @media (max-width: 767px) {\n .stacked { flex-direction: column; }\n }\n}\n",
705
855
  "styleableParts": [
706
856
  {
707
857
  "name": "root"
708
858
  }
709
859
  ],
710
- "cssVariables": []
860
+ "cssVariables": [
861
+ {
862
+ "name": "--hover-transition-duration",
863
+ "value": "var(--hover-transition-enter-duration, 0ms)",
864
+ "defaultValue": "0ms",
865
+ "referencedVars": [
866
+ "--hover-transition-enter-duration"
867
+ ],
868
+ "variant": ".resize:hover::before,\n .resize[data-resizing=\"true\"]::before"
869
+ },
870
+ {
871
+ "name": "--hover-transition-duration",
872
+ "value": "var(--hover-transition-enter-duration, 0ms)",
873
+ "defaultValue": "0ms",
874
+ "referencedVars": [
875
+ "--hover-transition-enter-duration"
876
+ ],
877
+ "variant": ".resize[data-direction=\"vertical\"]:hover::before,\n .resize[data-direction=\"vertical\"][data-resizing=\"true\"]::before"
878
+ }
879
+ ]
711
880
  },
712
881
  "page": {
713
882
  "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .page {\n --padding: var(--page-padding-md, 1rem);\n\n @apply flex flex-col w-full relative;\n }\n\n .page[data-centered=\"true\"] {\n @apply items-center;\n }\n\n .page[data-fullscreen=\"false\"] {\n margin-left: auto;\n margin-right: auto;\n }\n\n .padding-none { --padding: 0; padding: 0; }\n\n .padding-sm { --padding: var(--page-padding-sm, 0.5rem); padding: var(--padding); }\n\n .padding-md { --padding: var(--page-padding-md, 1rem); padding: var(--padding); }\n\n .padding-lg { --padding: var(--page-padding-lg, 1.5rem); padding: var(--padding); }\n\n .padding-xl { --padding: var(--page-padding-xl, 2rem); padding: var(--padding); }\n}\n",
@@ -772,7 +941,7 @@
772
941
  ]
773
942
  },
774
943
  "modal": {
775
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .overlay {\n --disabled-opacity: 0.5;\n }\n\n .backdrop {\n @apply absolute inset-0 cursor-pointer;\n background-color: var(--backdrop-background);\n backdrop-filter: blur(4px);\n }\n\n .modal {\n @apply relative flex w-full flex-col overflow-hidden;\n z-index: 1;\n max-height: 90vh;\n margin: 1rem;\n color: var(--foreground);\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n pointer-events: auto;\n overflow: hidden;\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n }\n }\n\n .header {\n @apply flex shrink-0 items-center justify-between gap-2 px-6 py-4;\n border-bottom: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .title {\n @apply m-0;\n font-size: 1.125rem;\n font-weight: var(--font-weight-semibold);\n color: var(--title-foreground, var(--foreground));\n }\n\n .spacer {\n flex: 1;\n }\n\n .close {\n @apply ml-auto flex items-center justify-center cursor-pointer;\n background: none;\n border: none;\n color: var(--close-foreground, var(--foreground));\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n\n &[data-hovered=\"true\"] {\n color: var(--close-hover-foreground, var(--close-foreground, var(--foreground)));\n }\n\n &[data-pressed=\"true\"] {\n transform: scale(0.92);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n border-radius: var(--radius-xs, 0.25rem);\n }\n }\n\n .close-icon {\n @apply h-5 w-5;\n }\n\n .content {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n color: var(--foreground);\n }\n\n .content::-webkit-scrollbar {\n width: 6px;\n }\n\n .content::-webkit-scrollbar-track {\n background: transparent;\n }\n\n .content::-webkit-scrollbar-thumb {\n background: var(--scrollbar-thumb-background, var(--background-border));\n border-radius: 3px;\n transition: background 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .content::-webkit-scrollbar-thumb:hover {\n background: var(--scrollbar-thumb-hover-background, var(--close-foreground, var(--foreground)));\n }\n\n .footer {\n @apply flex shrink-0 items-center justify-between gap-4 px-6 py-4;\n background-color: var(--footer-background, var(--background));\n border-top: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n /* Size variants */\n .modal[data-size=\"fit\"] {\n width: fit-content;\n }\n\n .modal[data-size=\"auto\"] {\n max-width: min(90vw, 28rem);\n }\n\n /* Media queries for smaller screens */\n @media (max-width: 640px) {\n .modal {\n margin: 1rem;\n }\n\n .content {\n max-height: calc(100vh - 10rem);\n }\n }\n}\n",
944
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .backdrop {\n @apply absolute inset-0 cursor-pointer;\n background-color: var(--backdrop-background);\n backdrop-filter: blur(4px);\n }\n\n .panel {\n @apply relative flex w-full flex-col overflow-hidden;\n z-index: 1;\n max-height: 90vh;\n margin: 1rem;\n color: var(--foreground);\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n pointer-events: auto;\n overflow: hidden;\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n }\n }\n\n .header {\n @apply flex shrink-0 items-center justify-between gap-2 px-6 py-4;\n border-bottom: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .title {\n @apply m-0;\n font-size: 1.125rem;\n font-weight: var(--font-weight-semibold);\n color: var(--title-foreground, var(--foreground));\n }\n\n .spacer {\n flex: 1;\n }\n\n .close {\n @apply ml-auto flex items-center justify-center cursor-pointer;\n background: none;\n border: none;\n color: var(--close-foreground, var(--foreground));\n transition:\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n color: var(--close-hover-foreground, var(--close-foreground, var(--foreground)));\n }\n\n &[data-pressed=\"true\"] {\n transform: scale(0.92);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n border-radius: var(--radius-xs, 0.25rem);\n }\n }\n\n .close-icon {\n @apply h-5 w-5;\n }\n\n .content {\n flex: 1;\n min-height: 0;\n overflow-y: auto;\n color: var(--foreground);\n }\n\n .content::-webkit-scrollbar {\n width: 6px;\n }\n\n .content::-webkit-scrollbar-track {\n background: transparent;\n }\n\n .content::-webkit-scrollbar-thumb {\n background-color: var(--scrollbar-thumb-background, var(--background-border));\n border-radius: 3px;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .content::-webkit-scrollbar-thumb:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--scrollbar-thumb-hover-background, var(--close-foreground, var(--foreground)));\n }\n\n .footer {\n @apply flex shrink-0 items-center justify-between gap-4 px-6 py-4;\n background-color: var(--footer-background, var(--background));\n border-top: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n /* Size variants */\n .panel[data-size=\"fit\"] {\n width: fit-content;\n }\n\n .panel[data-size=\"auto\"] {\n max-width: min(90vw, 28rem);\n }\n\n /* Media queries for smaller screens */\n @media (max-width: 640px) {\n .panel {\n margin: 1rem;\n }\n\n .content {\n max-height: calc(100vh - 10rem);\n }\n }\n}\n",
776
945
  "styleableParts": [
777
946
  {
778
947
  "name": "root"
@@ -807,16 +976,27 @@
807
976
  ],
808
977
  "cssVariables": [
809
978
  {
810
- "name": "--disabled-opacity",
811
- "value": "0.5",
812
- "defaultValue": null,
813
- "referencedVars": [],
814
- "variant": ".overlay"
979
+ "name": "--hover-transition-duration",
980
+ "value": "var(--hover-transition-enter-duration, 0ms)",
981
+ "defaultValue": "0ms",
982
+ "referencedVars": [
983
+ "--hover-transition-enter-duration"
984
+ ],
985
+ "variant": ".close[data-hovered=\"true\"]"
986
+ },
987
+ {
988
+ "name": "--hover-transition-duration",
989
+ "value": "var(--hover-transition-enter-duration, 0ms)",
990
+ "defaultValue": "0ms",
991
+ "referencedVars": [
992
+ "--hover-transition-enter-duration"
993
+ ],
994
+ "variant": ".content::-webkit-scrollbar-thumb:hover"
815
995
  }
816
996
  ]
817
997
  },
818
998
  "menu": {
819
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .content,\n .sub-content {\n --content-padding: calc(var(--spacing) * 1.5);\n --content-radius: var(--radius-sm, 0.375rem);\n --content-inner-radius: calc(var(--content-radius) - var(--border-width-base, 1px));\n --content-open-animation: slide-in-from-top 0.15s var(--ease-snappy-pop);\n --content-closed-animation: slide-out-to-top 0.15s var(--ease-snappy-pop);\n --disabled-opacity: 0.5;\n\n @apply absolute min-w-40 max-w-80 overflow-hidden;\n z-index: 50000;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--content-radius);\n }\n\n .trigger {\n &[data-type=\"pop-over\"][data-pressed=\"true\"] {\n opacity: 1;\n background-color: var(--background-pressed);\n border-radius: var(--radius-sm, 0.375rem);\n }\n }\n\n .content[data-state=\"open\"],\n .sub-content[data-state=\"open\"] {\n animation: var(--content-open-animation);\n }\n\n .content[data-state=\"closed\"],\n .sub-content[data-state=\"closed\"] {\n animation: var(--content-closed-animation);\n }\n\n .list {\n @apply space-y-1;\n max-height: 24rem;\n overflow-y: auto;\n }\n\n .item,\n .checkbox-item,\n .radio-item,\n .sub-trigger {\n @apply flex min-w-0 items-center gap-2;\n padding: var(--item-padding, var(--content-padding));\n border-radius: var(--item-radius, var(--content-inner-radius));\n cursor: default;\n user-select: none;\n outline: none;\n color: var(--foreground);\n\n &[data-focused=\"true\"] {\n background-color: var(--background-focused, var(--background-hover));\n }\n\n &[data-disabled=\"true\"] {\n opacity: var(--disabled-opacity);\n pointer-events: none;\n }\n }\n\n .item,\n .sub-trigger {\n &[data-inset=\"true\"] {\n padding-left: calc(var(--item-padding, var(--content-padding)) * 2.67);\n }\n }\n\n .item-indicator {\n @apply ml-auto flex h-4 w-4 shrink-0 items-center justify-center;\n color: var(--indicator-foreground, var(--foreground));\n }\n\n .sub-trigger[data-state=\"open\"]:not([data-focused=\"true\"]) {\n background-color: var(--background-focused, var(--background-hover));\n }\n\n .sub-trigger-chevron {\n @apply ml-auto h-4 w-4 shrink-0;\n color: var(--chevron-foreground, currentColor);\n }\n\n .label {\n padding: var(--content-padding);\n color: var(--foreground-muted);\n\n &[data-inset=\"true\"] {\n padding-left: calc(var(--content-padding) * 2.67);\n }\n }\n\n .separator {\n @apply -mx-1 my-1 h-px;\n background-color: var(--background-border);\n }\n\n .shortcut {\n margin-left: auto;\n color: var(--foreground-muted);\n }\n\n @keyframes slide-in-from-top { from { opacity: 0; translate: 0 -2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-out-to-top { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 -2px; } }\n}\n",
999
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n :global(.menu) {\n display: contents;\n\n .content,\n .sub-content {\n --content-padding: calc(var(--spacing) * 1.5);\n --content-radius: var(--radius-sm, 0.375rem);\n --content-inner-radius: calc(var(--content-radius) - var(--border-width-base, 1px));\n --content-open-animation: slide-in-from-top 0.15s var(--ease-snappy-pop);\n --content-closed-animation: slide-out-to-top 0.15s var(--ease-snappy-pop);\n --disabled-opacity: 0.5;\n\n @apply absolute min-w-40 max-w-80 overflow-hidden;\n z-index: 50000;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--content-radius);\n }\n\n .trigger {\n &[data-type=\"pop-over\"][data-pressed=\"true\"] {\n opacity: 1;\n background-color: var(--background-pressed);\n border-radius: var(--radius-sm, 0.375rem);\n }\n }\n\n .content[data-state=\"open\"],\n .sub-content[data-state=\"open\"] {\n animation: var(--content-open-animation);\n }\n\n .content[data-state=\"closed\"],\n .sub-content[data-state=\"closed\"] {\n animation: var(--content-closed-animation);\n }\n\n .list {\n @apply space-y-1;\n max-height: 24rem;\n overflow-y: auto;\n }\n\n .item,\n .checkbox-item,\n .radio-item,\n .sub-trigger {\n @apply flex min-w-0 items-center gap-2;\n padding: var(--item-padding, var(--content-padding));\n border-radius: var(--item-radius, var(--content-inner-radius));\n cursor: default;\n user-select: none;\n outline: none;\n color: var(--foreground);\n\n &[data-focused=\"true\"] {\n background-color: var(--background-focused, var(--background-hover));\n }\n\n &[data-disabled=\"true\"] {\n opacity: var(--disabled-opacity);\n pointer-events: none;\n }\n }\n\n .item,\n .sub-trigger {\n &[data-inset=\"true\"] {\n padding-left: calc(var(--item-padding, var(--content-padding)) * 2.67);\n }\n }\n\n .item-indicator {\n @apply ml-auto flex h-4 w-4 shrink-0 items-center justify-center;\n color: var(--indicator-foreground, var(--foreground));\n }\n\n .sub-trigger[data-state=\"open\"]:not([data-focused=\"true\"]) {\n background-color: var(--background-focused, var(--background-hover));\n }\n\n .sub-trigger-chevron {\n @apply ml-auto h-4 w-4 shrink-0;\n color: var(--chevron-foreground, currentColor);\n }\n\n .label {\n padding: var(--content-padding);\n color: var(--foreground-muted);\n\n &[data-inset=\"true\"] {\n padding-left: calc(var(--content-padding) * 2.67);\n }\n }\n\n .separator {\n @apply -mx-1 my-1 h-px;\n background-color: var(--background-border);\n }\n\n .shortcut {\n margin-left: auto;\n color: var(--foreground-muted);\n }\n }\n\n @keyframes slide-in-from-top { from { opacity: 0; translate: 0 -2px; } to { opacity: 1; translate: 0 0; } }\n @keyframes slide-out-to-top { from { opacity: 1; translate: 0 0; } to { opacity: 0; translate: 0 -2px; } }\n}\n",
820
1000
  "styleableParts": [
821
1001
  {
822
1002
  "name": "root"
@@ -839,7 +1019,7 @@
839
1019
  "referencedVars": [
840
1020
  "--spacing"
841
1021
  ],
842
- "variant": ".content,\n .sub-content"
1022
+ "variant": ":global(.menu) .content,\n .sub-content"
843
1023
  },
844
1024
  {
845
1025
  "name": "--content-radius",
@@ -848,7 +1028,7 @@
848
1028
  "referencedVars": [
849
1029
  "--radius-sm"
850
1030
  ],
851
- "variant": ".content,\n .sub-content"
1031
+ "variant": ":global(.menu) .content,\n .sub-content"
852
1032
  },
853
1033
  {
854
1034
  "name": "--content-inner-radius",
@@ -858,7 +1038,7 @@
858
1038
  "--content-radius",
859
1039
  "--border-width-base"
860
1040
  ],
861
- "variant": ".content,\n .sub-content"
1041
+ "variant": ":global(.menu) .content,\n .sub-content"
862
1042
  },
863
1043
  {
864
1044
  "name": "--content-open-animation",
@@ -867,7 +1047,7 @@
867
1047
  "referencedVars": [
868
1048
  "--ease-snappy-pop"
869
1049
  ],
870
- "variant": ".content,\n .sub-content"
1050
+ "variant": ":global(.menu) .content,\n .sub-content"
871
1051
  },
872
1052
  {
873
1053
  "name": "--content-closed-animation",
@@ -876,14 +1056,14 @@
876
1056
  "referencedVars": [
877
1057
  "--ease-snappy-pop"
878
1058
  ],
879
- "variant": ".content,\n .sub-content"
1059
+ "variant": ":global(.menu) .content,\n .sub-content"
880
1060
  },
881
1061
  {
882
1062
  "name": "--disabled-opacity",
883
1063
  "value": "0.5",
884
1064
  "defaultValue": null,
885
1065
  "referencedVars": [],
886
- "variant": ".content,\n .sub-content"
1066
+ "variant": ":global(.menu) .content,\n .sub-content"
887
1067
  }
888
1068
  ]
889
1069
  },
@@ -900,7 +1080,7 @@
900
1080
  "cssVariables": []
901
1081
  },
902
1082
  "list": {
903
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .container {\n @apply mx-auto;\n max-width: 28rem;\n font-family: var(--font-sans, system-ui, -apple-system, sans-serif);\n color: var(--foreground);\n }\n\n .header {\n @apply flex items-center justify-between;\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n backdrop-filter: blur(12px);\n z-index: 10;\n }\n\n .sticky {\n position: sticky;\n top: 0;\n }\n\n .container[data-spacing=\"sm\"] .header {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n }\n\n .header > :first-child {\n font-weight: var(--font-weight-semibold);\n font-size: 1.125rem;\n color: var(--header-title-foreground);\n }\n\n .header > :last-child {\n color: var(--header-subtitle-foreground);\n }\n\n .item {\n @apply flex flex-row items-center gap-3 px-2 py-1 cursor-pointer;\n background-color: var(--item-background, transparent);\n }\n\n .item[data-focus-visible=\"true\"] {\n box-shadow:\n inset 0 0 0 1px var(--item-focus-visible-background, var(--focus-visible-background)),\n 0 0 0 2px var(--item-focus-visible, var(--focus-visible));\n border-radius: var(--item-radius, var(--radius-sm, 0.375rem));\n outline: none;\n }\n\n .item:hover {\n background-color: var(--item-background-hover, var(--background-hover, var(--highlight-background, transparent)));\n }\n\n .container[data-keyboard-mode=\"true\"] .item[data-highlighted=\"true\"] {\n background-color: var(--item-background-highlighted, var(--background-highlighted, var(--highlight-background, transparent)));\n }\n\n .container[data-spacing=\"sm\"] .item {\n padding: 0.5rem 0.75rem;\n gap: 0.375rem;\n }\n\n .checkbox,\n .control,\n .media {\n @apply flex items-center justify-center flex-shrink-0;\n }\n\n .control {\n margin-left: auto;\n }\n\n .media {\n @apply h-8 w-8;\n }\n\n .title {\n font-size: var(--text-sm);\n font-weight: var(--font-weight-medium);\n color: var(--foreground);\n @apply truncate;\n }\n\n .desc {\n font-size: var(--text-sm);\n color: var(--desc-foreground);\n @apply truncate;\n }\n\n .actionGroup {\n @apply flex items-center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n }\n\n .actionGroup[data-justify=\"space-between\"] { justify-content: space-between; }\n .actionGroup[data-justify=\"flex-start\"] { justify-content: flex-start; }\n .actionGroup[data-justify=\"flex-end\"] { justify-content: flex-end; }\n\n .actions {\n align-items: center;\n gap: 0.25rem;\n margin-left: auto;\n flex-shrink: 0;\n @apply p-1.5 hidden group-hover:flex group-focus-within:flex;\n }\n\n .action {\n @apply flex items-center justify-center;\n border-radius: 0.25rem;\n color: var(--action-foreground);\n @apply p-2;\n }\n\n .action:hover {\n background-color: var(--action-background-hover, var(--item-background-hover, var(--background-hover, transparent)));\n color: var(--action-foreground-hover, var(--action-color, inherit));\n }\n\n .footer {\n @apply flex p-6 pb-12;\n }\n\n .footer[data-align=\"center\"] { justify-content: center; }\n .footer[data-align=\"flex-start\"] { justify-content: flex-start; }\n .footer[data-align=\"flex-end\"] { justify-content: flex-end; }\n\n .container[data-spacing=\"sm\"] .footer {\n padding: 0.375rem 0.75rem;\n padding-bottom: 0.375rem;\n }\n}\n",
1083
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .container {\n --gap-scale: 0.75;\n\n color: var(--foreground);\n @apply flex flex-col;\n gap: calc(var(--spacing, 0.25rem) * var(--list-gap-step, 0) * var(--gap-scale, 1));\n }\n\n .container[data-orientation=\"horizontal\"] {\n @apply flex-row flex-wrap;\n }\n\n .header {\n @apply flex items-center justify-between;\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n padding-top: 1rem;\n padding-bottom: 1rem;\n backdrop-filter: blur(12px);\n z-index: 10;\n }\n\n .sticky {\n position: sticky;\n top: 0;\n }\n\n .header > :first-child {\n font-weight: var(--font-weight-semibold);\n font-size: 1.125rem;\n color: var(--header-title-foreground);\n }\n\n .header > :last-child {\n color: var(--header-subtitle-foreground);\n }\n\n .item {\n @apply flex gap-3 px-2 py-1 cursor-pointer;\n background-color: var(--item-background, transparent);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .item[data-focus-visible=\"true\"] {\n box-shadow:\n inset 0 0 0 1px var(--item-focus-visible-background, var(--focus-visible-background)),\n 0 0 0 2px var(--item-focus-visible, var(--focus-visible));\n border-radius: var(--item-radius, var(--radius-sm, 0.375rem));\n outline: none;\n }\n\n .item:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--item-background-hover, var(--background-hover, var(--highlight-background, transparent)));\n }\n\n .container[data-keyboard-mode=\"true\"] .item[data-highlighted=\"true\"] {\n background-color: var(--item-background-highlighted, var(--background-highlighted, var(--highlight-background, transparent)));\n }\n\n .checkbox,\n .control,\n .media {\n @apply flex items-center justify-center flex-shrink-0;\n }\n\n .control {\n margin-left: auto;\n }\n\n .control[data-placement=\"start\"] {\n margin-left: 0;\n }\n\n .media {\n @apply h-8 w-8;\n }\n\n .title {\n font-size: var(--text-sm);\n font-weight: var(--font-weight-medium);\n color: var(--foreground);\n @apply truncate;\n }\n\n .desc {\n font-size: var(--text-sm);\n color: var(--desc-foreground);\n @apply truncate;\n }\n\n .actionGroup {\n @apply flex items-center;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n }\n\n .actionGroup[data-justify=\"between\"] { justify-content: space-between; }\n .actionGroup[data-justify=\"start\"] { justify-content: flex-start; }\n .actionGroup[data-justify=\"end\"] { justify-content: flex-end; }\n\n .actions {\n align-items: center;\n gap: 0.25rem;\n margin-left: auto;\n flex-shrink: 0;\n @apply flex p-1.5 opacity-70 transition-opacity group-hover:opacity-100 group-focus-within:opacity-100;\n }\n\n .action {\n @apply flex items-center justify-center;\n border-radius: 0.25rem;\n color: var(--action-foreground);\n @apply p-2;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .action:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--action-background-hover, var(--item-background-hover, var(--background-hover, transparent)));\n color: var(--action-foreground-hover, var(--action-color, inherit));\n }\n\n .footer {\n @apply flex p-6 pb-12;\n }\n\n .footer[data-align=\"center\"] { justify-content: center; }\n .footer[data-align=\"start\"] { justify-content: flex-start; }\n .footer[data-align=\"end\"] { justify-content: flex-end; }\n\n .container[data-spacing=\"sm\"] .footer {\n padding: 0.375rem 0.75rem;\n padding-bottom: 0.375rem;\n }\n}\n",
904
1084
  "styleableParts": [
905
1085
  {
906
1086
  "name": "root"
@@ -921,10 +1101,10 @@
921
1101
  "name": "media"
922
1102
  },
923
1103
  {
924
- "name": "desc"
1104
+ "name": "title"
925
1105
  },
926
1106
  {
927
- "name": "actionGroup"
1107
+ "name": "desc"
928
1108
  },
929
1109
  {
930
1110
  "name": "actions"
@@ -936,10 +1116,36 @@
936
1116
  "name": "footer"
937
1117
  }
938
1118
  ],
939
- "cssVariables": []
1119
+ "cssVariables": [
1120
+ {
1121
+ "name": "--gap-scale",
1122
+ "value": "0.75",
1123
+ "defaultValue": null,
1124
+ "referencedVars": [],
1125
+ "variant": ".container"
1126
+ },
1127
+ {
1128
+ "name": "--hover-transition-duration",
1129
+ "value": "var(--hover-transition-enter-duration, 0ms)",
1130
+ "defaultValue": "0ms",
1131
+ "referencedVars": [
1132
+ "--hover-transition-enter-duration"
1133
+ ],
1134
+ "variant": ".item:hover"
1135
+ },
1136
+ {
1137
+ "name": "--hover-transition-duration",
1138
+ "value": "var(--hover-transition-enter-duration, 0ms)",
1139
+ "defaultValue": "0ms",
1140
+ "referencedVars": [
1141
+ "--hover-transition-enter-duration"
1142
+ ],
1143
+ "variant": ".action:hover"
1144
+ }
1145
+ ]
940
1146
  },
941
1147
  "label": {
942
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .label {\n --background: transparent;\n --foreground: var(--foreground-primary);\n --foreground-disabled: var(--foreground-secondary);\n --foreground-error: var(--danger-600);\n\n display: block;\n font-family: inherit;\n font-size: var(--text-sm);\n color: var(--foreground);\n transition: color 150ms ease;\n\n &[data-size=\"sm\"] { font-size: var(--text-sm); }\n &[data-size=\"lg\"] { font-size: var(--text-md); }\n\n &[data-disabled] {\n color: var(--foreground-disabled);\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n &[data-error] {\n color: var(--foreground-error);\n }\n }\n\n .required-indicator {\n margin-left: 0.25rem;\n color: var(--required-color);\n }\n\n .helper-text {\n --helper-foreground: var(--foreground-secondary);\n --helper-foreground-error: var(--danger-600);\n\n display: block;\n font-size: var(--text-sm);\n margin-top: 0.25rem;\n transition: color 150ms ease;\n color: var(--helper-foreground);\n\n &[data-error] {\n color: var(--helper-foreground-error);\n }\n }\n}\n",
1148
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .label {\n --background: transparent;\n --foreground: var(--foreground-primary);\n --foreground-disabled: var(--foreground-secondary);\n --foreground-error: var(--danger-600);\n }\n\n .label > label {\n display: block;\n font-family: inherit;\n font-size: var(--text-sm);\n color: var(--foreground);\n transition: color 150ms ease;\n\n &[data-size=\"sm\"] { font-size: var(--text-sm); }\n &[data-size=\"lg\"] { font-size: var(--text-md); }\n\n &[data-disabled] {\n color: var(--foreground-disabled);\n opacity: 0.6;\n cursor: not-allowed;\n }\n\n &[data-error] {\n color: var(--foreground-error);\n }\n }\n\n .label > .required-indicator {\n margin-left: 0.25rem;\n color: var(--required-color);\n }\n\n .label > .helper-text {\n --helper-foreground: var(--foreground-secondary);\n --helper-foreground-error: var(--danger-600);\n\n display: block;\n font-size: var(--text-sm);\n margin-top: 0.25rem;\n transition: color 150ms ease;\n color: var(--helper-foreground);\n\n &[data-error] {\n color: var(--helper-foreground-error);\n }\n }\n}\n",
943
1149
  "styleableParts": [
944
1150
  {
945
1151
  "name": "root"
@@ -993,7 +1199,7 @@
993
1199
  "referencedVars": [
994
1200
  "--foreground-secondary"
995
1201
  ],
996
- "variant": ".helper-text"
1202
+ "variant": ".label > .helper-text"
997
1203
  },
998
1204
  {
999
1205
  "name": "--helper-foreground-error",
@@ -1002,12 +1208,12 @@
1002
1208
  "referencedVars": [
1003
1209
  "--danger-600"
1004
1210
  ],
1005
- "variant": ".helper-text"
1211
+ "variant": ".label > .helper-text"
1006
1212
  }
1007
1213
  ]
1008
1214
  },
1009
1215
  "input": {
1010
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n @apply flex w-full;\n position: relative;\n overflow: visible;\n }\n\n .input {\n height: fit-content;\n flex: 1;\n min-width: 0;\n @apply py-1.5 px-3;\n font-family: inherit;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n color: var(--foreground);\n background-color: transparent;\n border: none;\n outline: none;\n box-sizing: border-box;\n\n &::placeholder {\n color: var(--placeholder);\n }\n\n &[data-disabled] {\n color: var(--disabled-foreground);\n cursor: not-allowed;\n }\n\n /* Hide default browser spinners for number inputs */\n &[type=\"number\"] {\n\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n display: none;\n }\n\n /* Firefox */\n &[type=\"number\"] {\n -moz-appearance: textfield;\n }\n }\n }\n\n .icon-wrapper {\n @apply z-10 flex items-center;\n pointer-events: none;\n }\n\n .icon-left {\n @apply relative;\n }\n\n .icon-right {\n @apply relative;\n }\n\n .container {\n --adornment-offset: calc(var(--spacing, 0.25rem) * 1.5);\n\n display: flex;\n align-items: center;\n width: 100%;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n box-sizing: border-box;\n overflow: hidden;\n\n &[data-disabled] {\n background-color: var(--disabled-background);\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &[data-variant=\"ghost\"] {\n --ring-shadow: none;\n --ring-border: transparent;\n --ring-border-visible: transparent;\n\n background-color: transparent;\n border-color: transparent;\n }\n }\n\n .start-adornments,\n .end-adornments {\n @apply flex items-center gap-1;\n align-self: stretch;\n flex-shrink: 0;\n pointer-events: none;\n }\n\n .start-adornments {\n @apply pl-2.5;\n }\n\n .end-adornments {\n padding-right: var(--adornment-offset);\n\n &:has(.controls) {\n padding-right: 0;\n }\n\n &:has([data-hint]) {\n padding-right: 0;\n }\n }\n\n .actions {\n @apply flex items-center gap-1;\n pointer-events: auto;\n }\n\n .action {\n @apply flex items-center justify-center p-2;\n border-radius: 0.25rem;\n color: var(--action-foreground);\n }\n\n .action:hover {\n background-color: var(--action-background-hover);\n color: var(--action-foreground-hover);\n }\n\n .hint {\n @apply inline-flex items-center justify-center whitespace-nowrap;\n flex-shrink: 0;\n margin-inline-start: calc(var(--spacing, 0.25rem) * 0.5);\n margin-inline-end: var(--adornment-offset);\n font-size: var(--text-sm);\n line-height: 1;\n color: var(--foreground);\n background-color: var(--background);\n pointer-events: auto;\n }\n\n .controls {\n @apply flex w-7.5 flex-col;\n align-self: stretch;\n border-left: 1px solid var(--background-border);\n pointer-events: auto;\n }\n\n .controls[data-disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .spin-button {\n @apply flex w-full flex-1 items-center justify-center p-0 cursor-pointer;\n flex: 1;\n background-color: transparent;\n border: none;\n color: var(--controls-color);\n transition: color 150ms ease-out, background-color 150ms ease-out;\n\n &+.spin-button {\n border-top: 1px solid var(--background-border);\n }\n\n &:hover:not(:disabled) {\n background-color: var(--controls-hover-background);\n color: var(--controls-hover-color);\n }\n\n &:active:not(:disabled) {\n background-color: var(--controls-active-background);\n color: var(--controls-active-color);\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n }\n}\n",
1216
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n @apply flex w-full;\n position: relative;\n overflow: visible;\n }\n\n .field {\n height: fit-content;\n flex: 1;\n min-width: 0;\n @apply py-1.5 px-3;\n font-family: inherit;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n color: var(--foreground);\n background-color: transparent;\n border: none;\n outline: none;\n box-sizing: border-box;\n\n &::placeholder {\n color: var(--placeholder);\n }\n\n &[data-disabled] {\n color: var(--disabled-foreground);\n cursor: not-allowed;\n }\n\n /* Hide default browser spinners for number inputs */\n &[type=\"number\"] {\n\n &::-webkit-outer-spin-button,\n &::-webkit-inner-spin-button {\n -webkit-appearance: none;\n margin: 0;\n display: none;\n }\n\n /* Firefox */\n &[type=\"number\"] {\n -moz-appearance: textfield;\n }\n }\n }\n\n .icon-wrapper {\n @apply z-10 flex items-center;\n pointer-events: none;\n }\n\n .icon {\n @apply flex items-center shrink-0;\n color: var(--foreground, currentColor);\n }\n\n .icon-left {\n @apply relative;\n }\n\n .icon-right {\n @apply relative;\n }\n\n .container {\n --adornment-offset: calc(var(--spacing, 0.25rem) * 1.5);\n\n display: flex;\n align-items: center;\n width: 100%;\n background-color: var(--background);\n border: var(--input-border-width, var(--border-width-base, 1px)) solid var(--input-border-color, var(--background-border));\n border-radius: var(--radius-sm, 0.375rem);\n box-sizing: border-box;\n overflow: hidden;\n\n &[data-disabled] {\n background-color: var(--disabled-background);\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &[data-variant=\"ghost\"] {\n --ring-shadow: none;\n --ring-border: transparent;\n --ring-border-visible: transparent;\n\n background-color: transparent;\n border-color: transparent;\n }\n }\n\n .start-adornments,\n .end-adornments {\n @apply flex items-center gap-1;\n align-self: stretch;\n flex-shrink: 0;\n pointer-events: none;\n }\n\n .start-adornments {\n @apply pl-2.5;\n }\n\n .end-adornments {\n padding-right: var(--adornment-offset);\n\n &:has(.controls) {\n padding-right: 0;\n }\n\n &:has([data-hint]) {\n padding-right: 0;\n }\n }\n\n .actions {\n @apply flex items-center gap-1;\n pointer-events: auto;\n }\n\n .action {\n @apply flex items-center justify-center p-2;\n border-radius: 0.25rem;\n color: var(--action-foreground);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .action:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--action-background-hover);\n color: var(--action-foreground-hover);\n }\n\n .hint {\n @apply inline-flex items-center justify-center whitespace-nowrap;\n flex-shrink: 0;\n margin-inline-start: calc(var(--spacing, 0.25rem) * 0.5);\n margin-inline-end: var(--adornment-offset);\n font-size: var(--text-sm);\n line-height: 1;\n color: var(--foreground);\n background-color: var(--background);\n pointer-events: auto;\n }\n\n .controls {\n @apply flex w-7.5 flex-col;\n align-self: stretch;\n border-left: 1px solid var(--input-border-color, var(--background-border));\n pointer-events: auto;\n }\n\n .controls[data-disabled] {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .stepper {\n @apply flex w-full flex-1 items-center justify-center p-0 cursor-pointer;\n flex: 1;\n background-color: transparent;\n border: none;\n color: var(--foreground);\n transition:\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &+.stepper {\n border-top: 1px solid var(--input-border-color, var(--background-border));\n }\n\n &:hover:not(:disabled) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--hover-background);\n color: var(--hover-color);\n }\n\n &:active:not(:disabled) {\n background-color: var(--active-background);\n color: var(--active-color);\n }\n\n &:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n }\n }\n}\n",
1011
1217
  "styleableParts": [
1012
1218
  {
1013
1219
  "name": "root"
@@ -1019,10 +1225,10 @@
1019
1225
  "name": "icon.right"
1020
1226
  },
1021
1227
  {
1022
- "name": "controls.up"
1228
+ "name": "stepper.up"
1023
1229
  },
1024
1230
  {
1025
- "name": "controls.down"
1231
+ "name": "stepper.down"
1026
1232
  }
1027
1233
  ],
1028
1234
  "cssVariables": [
@@ -1055,11 +1261,29 @@
1055
1261
  "defaultValue": null,
1056
1262
  "referencedVars": [],
1057
1263
  "variant": ".container[data-variant=\"ghost\"]"
1264
+ },
1265
+ {
1266
+ "name": "--hover-transition-duration",
1267
+ "value": "var(--hover-transition-enter-duration, 0ms)",
1268
+ "defaultValue": "0ms",
1269
+ "referencedVars": [
1270
+ "--hover-transition-enter-duration"
1271
+ ],
1272
+ "variant": ".action:hover"
1273
+ },
1274
+ {
1275
+ "name": "--hover-transition-duration",
1276
+ "value": "var(--hover-transition-enter-duration, 0ms)",
1277
+ "defaultValue": "0ms",
1278
+ "referencedVars": [
1279
+ "--hover-transition-enter-duration"
1280
+ ],
1281
+ "variant": ".stepper:hover:not(:disabled)"
1058
1282
  }
1059
1283
  ]
1060
1284
  },
1061
1285
  "group": {
1062
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .group {\n --layout-radius-size: calc(var(--spacing) * 1.5);\n --layout-padding-size: var(--layout-radius-size);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-border-width: var(--border-width-base, 1px);\n --background-inner-radius: calc(var(--background-radius) - var(--background-border-width));\n --layout-text-height: calc(0.8em * var(--leading-tight, 1.25));\n --layout-vertical-spacing: calc(var(--spacing) * 4);\n --layout-border-height: calc(var(--background-border-width) * 2);\n --layout-padding-height: calc(var(--layout-padding-size) * 2);\n --layout-control-height: calc(\n var(--layout-text-height) +\n var(--layout-vertical-spacing) +\n var(--layout-border-height)\n );\n --item-height: max(\n calc(\n var(--layout-control-height) -\n var(--layout-padding-height) -\n var(--layout-border-height)\n ),\n 0px\n );\n\n @apply flex overflow-hidden shrink-0 box-border;\n color: var(--foreground, currentColor);\n background-color: var(--background, transparent);\n border: var(--background-border-width) solid var(--background-border, transparent);\n border-radius: var(--background-radius);\n padding: var(--layout-padding-size);\n\n &.horizontal {\n @apply flex-row items-stretch;\n height: var(--layout-control-height);\n\n .item.divider {\n margin-block: calc(var(--layout-padding-size) * -1);\n }\n .item.divider > [role=\"separator\"] {\n height: 100%;\n }\n }\n\n &.vertical {\n @apply flex-col;\n\n .item .button {\n @apply w-full;\n }\n\n .item.divider {\n margin-inline: calc(var(--layout-padding-size) * -1);\n }\n .item.divider > [role=\"separator\"] {\n width: 100%;\n }\n }\n\n &.none {\n --layout-padding-size: 0px;\n @apply gap-0;\n }\n\n &.xs {\n --layout-radius-size: calc(var(--spacing) * 0.875);\n @apply space-x-0.5;\n }\n\n &.sm {\n --layout-radius-size: calc(var(--spacing) * 1.25);\n @apply space-x-1;\n }\n\n }\n\n .item {\n @apply flex items-stretch;\n position: relative;\n isolation: isolate;\n border-radius: var(--group-item-radius, 0);\n overflow: visible;\n\n &.grow {\n flex: 1;\n }\n\n &.divider {\n @apply p-0 shrink-0 flex-none;\n\n > [role=\"separator\"] {\n flex: 0 0 auto;\n }\n }\n }\n\n :is(.button, .input, .select, .expand) {\n height: 100%;\n min-height: var(--item-height);\n position: relative;\n isolation: isolate;\n overflow: visible;\n }\n\n .button {\n @apply flex box-border;\n width: auto;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n\n &[data-selected=\"true\"] {\n @apply relative;\n background-color: var(--button-selected-background, var(--background-800));\n color: var(--button-selected-foreground, var(--foreground-100));\n }\n }\n\n .input {\n @apply flex flex-1 items-stretch overflow-visible;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n\n > [data-ring=\"true\"] {\n border-radius: inherit;\n }\n\n input {\n @apply h-full px-2;\n }\n }\n\n .select {\n @apply flex items-stretch p-0 bg-transparent border-none;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n }\n\n .expand {\n @apply flex items-stretch;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n }\n\n .expand :global(.expand-scope),\n .expand :global(.expand) {\n @apply flex w-full h-full;\n }\n\n .expand :global(.expand) {\n @apply flex-col;\n border-radius: inherit;\n }\n\n .expand :global(.trigger) {\n @apply min-h-0;\n border-radius: inherit;\n }\n\n .trigger {}\n\n .group {\n .item :is(.button, .select) {\n border: none;\n }\n\n .button[data-selected=\"true\"] {\n font-weight: 500;\n }\n\n .input {\n --border-width-base: 0px;\n --background-border: transparent;\n --background-focused-border: transparent;\n }\n\n &.none {\n .item:not(.divider) {\n overflow: hidden;\n }\n\n :is(.button, .trigger, .select) {\n border-radius: 0;\n --background-radius: 0;\n --background-inner-radius: 0;\n }\n\n .input {\n --radius-sm: 0;\n }\n\n .item:first-child {\n --group-item-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n }\n\n .item:last-child {\n --group-item-radius: 0 var(--background-inner-radius) var(--background-inner-radius) 0;\n }\n\n &.horizontal {\n .item:first-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-top-left-radius: var(--background-inner-radius);\n border-bottom-left-radius: var(--background-inner-radius);\n }\n\n .item:last-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-top-right-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n\n .item:last-child .trigger .icon-section {\n border-top-right-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n }\n\n &.vertical {\n .item:first-child {\n --group-item-radius: var(--background-inner-radius) var(--background-inner-radius) 0 0;\n }\n\n .item:last-child {\n --group-item-radius: 0 0 var(--background-inner-radius) var(--background-inner-radius);\n }\n\n .item:first-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-top-left-radius: var(--background-inner-radius);\n border-top-right-radius: var(--background-inner-radius);\n }\n\n .item:last-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-bottom-left-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n }\n }\n\n &:is(.xs, .sm) {\n .item {\n --group-item-radius: var(--background-inner-radius);\n }\n\n :is(.button, .trigger, .select) {\n border-radius: var(--background-inner-radius);\n }\n\n .input {\n --radius-sm: var(--background-inner-radius);\n }\n }\n }\n\n .group [data-ring=\"true\"] {\n --ring-shadow: none;\n --ring-border: transparent;\n --ring-border-visible: transparent;\n }\n\n .group :global(.focus-indicator) {\n display: none;\n }\n\n .group [data-focus-indicator=\"local\"] {\n display: none;\n }\n\n :is(.button[data-focus-visible=\"true\"], .trigger[data-focus-visible=\"true\"]) {\n @apply outline-none;\n box-shadow: none;\n }\n}\n",
1286
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .group {\n --layout-radius-size: calc(var(--spacing) * 1.5);\n --layout-padding-size: var(--layout-radius-size);\n --background-radius: var(--radius-sm, 0.375rem);\n --background-border-width: var(--border-width-base, 1px);\n --background-inner-radius: calc(var(--background-radius) - var(--background-border-width));\n --layout-text-height: calc(0.8em * var(--leading-tight, 1.25));\n --layout-vertical-spacing: calc(var(--spacing) * 4);\n --layout-border-height: calc(var(--background-border-width) * 2);\n --layout-padding-height: calc(var(--layout-padding-size) * 2);\n --group-background: var(--background, transparent);\n --group-foreground: var(--foreground, currentColor);\n --group-border: var(--background-border, transparent);\n --group-hover: var(--background-hover, var(--group-background));\n --group-pressed: var(--background-pressed, var(--group-hover));\n --group-divider-background: var(--group-border);\n --group-input-background: var(--group-background);\n --group-input-foreground: var(--group-foreground);\n --group-input-border-width: 0px;\n --group-input-border: transparent;\n --group-input-hover-border: var(--group-input-border);\n --group-input-focused-border: var(--group-input-border);\n\n --layout-control-height: calc(\n var(--layout-text-height) +\n var(--layout-vertical-spacing) +\n var(--layout-border-height)\n );\n --item-height: max(\n calc(\n var(--layout-control-height) -\n var(--layout-padding-height) -\n var(--layout-border-height)\n ),\n 0px\n );\n\n @apply flex overflow-hidden shrink-0 box-border;\n color: var(--foreground, currentColor);\n background-color: var(--background, transparent);\n border: var(--background-border-width) solid var(--background-border, transparent);\n border-radius: var(--background-radius);\n padding: var(--layout-padding-size);\n\n &.horizontal {\n @apply flex-row items-stretch;\n height: var(--layout-control-height);\n\n .item.divider {\n margin-block: calc(var(--layout-padding-size) * -1);\n }\n .item.divider > [role=\"separator\"] {\n height: 100%;\n }\n }\n\n &.vertical {\n @apply flex-col;\n\n .item .button {\n @apply w-full;\n }\n\n .item.divider {\n margin-inline: calc(var(--layout-padding-size) * -1);\n }\n .item.divider > [role=\"separator\"] {\n width: 100%;\n }\n }\n\n &.none {\n --layout-padding-size: 0px;\n @apply gap-0;\n }\n\n &.xs {\n --layout-radius-size: calc(var(--spacing) * 0.875);\n @apply space-x-0.5;\n }\n\n &.sm {\n --layout-radius-size: calc(var(--spacing) * 1.25);\n @apply space-x-1;\n }\n\n }\n\n .item {\n @apply flex items-stretch;\n position: relative;\n isolation: isolate;\n border-radius: var(--group-item-radius, 0);\n overflow: visible;\n\n &.grow {\n flex: 1;\n }\n\n &.divider {\n @apply p-0 shrink-0 flex-none;\n\n > [role=\"separator\"] {\n flex: 0 0 auto;\n }\n }\n }\n\n :is(.button, .input, .select, .expand) {\n height: 100%;\n min-height: var(--item-height);\n position: relative;\n isolation: isolate;\n overflow: visible;\n }\n\n .button {\n @apply flex box-border;\n width: auto;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n\n &[data-selected=\"true\"] {\n @apply relative;\n background-color: var(--button-selected-background, var(--background-pressed, var(--background-hover, var(--background))));\n color: var(--button-selected-foreground, var(--foreground));\n }\n }\n\n .input {\n @apply flex flex-1 items-stretch overflow-visible;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n\n > [data-ring=\"true\"] {\n border-radius: inherit;\n }\n\n input {\n @apply h-full px-2;\n }\n }\n\n .select {\n @apply flex items-stretch p-0 bg-transparent border-none;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n }\n\n .expand {\n @apply flex items-stretch;\n border-radius: var(--group-item-radius, var(--background-inner-radius));\n }\n\n .expand :global(.expand-scope),\n .expand :global(.expand) {\n @apply flex w-full h-full;\n }\n\n .expand :global(.expand) {\n @apply flex-col;\n border-radius: inherit;\n }\n\n .expand :global(.trigger) {\n @apply min-h-0;\n border-radius: inherit;\n }\n\n .trigger {}\n\n .group {\n .item :is(.button, .select) {\n border: none;\n }\n\n .button[data-selected=\"true\"] {\n font-weight: 500;\n }\n\n .input {\n --background: var(--group-input-background);\n --foreground: var(--group-input-foreground);\n --input-border-width: var(--group-input-border-width);\n --input-border-color: var(--group-input-border);\n --background-border: var(--group-input-border);\n --background-hover-border: var(--group-input-hover-border);\n --background-focused-border: var(--group-input-focused-border);\n }\n\n .item.divider > [role=\"separator\"] {\n --divider-background: var(--group-divider-background);\n }\n\n &.none {\n .item:not(.divider) {\n overflow: hidden;\n }\n\n :is(.button, .trigger, .select) {\n border-radius: 0;\n --background-radius: 0;\n --background-inner-radius: 0;\n }\n\n .input {\n --radius-sm: 0;\n }\n\n .item:first-child {\n --group-item-radius: var(--background-inner-radius) 0 0 var(--background-inner-radius);\n }\n\n .item:last-child {\n --group-item-radius: 0 var(--background-inner-radius) var(--background-inner-radius) 0;\n }\n\n &.horizontal {\n .item:first-child :is( .button, .trigger, .input > *, .select) {\n border-top-left-radius: var(--background-inner-radius);\n border-bottom-left-radius: var(--background-inner-radius);\n }\n\n .item:last-child :is( .button, .trigger, .input > *, .select) {\n border-top-right-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n\n .item:last-child .trigger .icon-section {\n border-top-right-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n }\n\n &.vertical {\n .item:first-child {\n --group-item-radius: var(--background-inner-radius) var(--background-inner-radius) 0 0;\n }\n\n .item:last-child {\n --group-item-radius: 0 0 var(--background-inner-radius) var(--background-inner-radius);\n }\n\n .item:first-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-top-left-radius: var(--background-inner-radius);\n border-top-right-radius: var(--background-inner-radius);\n }\n\n .item:last-child :is(\n .button,\n .trigger,\n .input > *,\n .select\n ) {\n border-bottom-left-radius: var(--background-inner-radius);\n border-bottom-right-radius: var(--background-inner-radius);\n }\n }\n }\n\n &:is(.xs, .sm) {\n .item {\n --group-item-radius: var(--background-inner-radius);\n }\n\n :is(.button, .trigger, .select) {\n border-radius: var(--background-inner-radius);\n }\n\n .input {\n --radius-sm: var(--background-inner-radius);\n }\n }\n }\n\n .group [data-ring=\"true\"] {\n --ring-shadow: none;\n --ring-border: transparent;\n --ring-border-visible: transparent;\n }\n\n .group :global(.focus-indicator) {\n display: none;\n }\n\n .group [data-focus-indicator=\"local\"] {\n display: none;\n }\n\n :is(.button[data-focus-visible=\"true\"], .trigger[data-focus-visible=\"true\"]) {\n @apply outline-none;\n box-shadow: none;\n }\n}\n",
1063
1287
  "styleableParts": [
1064
1288
  {
1065
1289
  "name": "root"
@@ -1173,19 +1397,123 @@
1173
1397
  "variant": ".group"
1174
1398
  },
1175
1399
  {
1176
- "name": "--layout-control-height",
1177
- "value": "calc(\n var(--layout-text-height) +\n var(--layout-vertical-spacing) +\n var(--layout-border-height)\n )",
1178
- "defaultValue": null,
1400
+ "name": "--group-background",
1401
+ "value": "var(--background, transparent)",
1402
+ "defaultValue": "transparent",
1179
1403
  "referencedVars": [
1180
- "--layout-text-height",
1181
- "--layout-vertical-spacing",
1182
- "--layout-border-height"
1404
+ "--background"
1183
1405
  ],
1184
1406
  "variant": ".group"
1185
1407
  },
1186
1408
  {
1187
- "name": "--item-height",
1188
- "value": "max(\n calc(\n var(--layout-control-height) -\n var(--layout-padding-height) -\n var(--layout-border-height)\n ),\n 0px\n )",
1409
+ "name": "--group-foreground",
1410
+ "value": "var(--foreground, currentColor)",
1411
+ "defaultValue": "currentColor",
1412
+ "referencedVars": [
1413
+ "--foreground"
1414
+ ],
1415
+ "variant": ".group"
1416
+ },
1417
+ {
1418
+ "name": "--group-border",
1419
+ "value": "var(--background-border, transparent)",
1420
+ "defaultValue": "transparent",
1421
+ "referencedVars": [
1422
+ "--background-border"
1423
+ ],
1424
+ "variant": ".group"
1425
+ },
1426
+ {
1427
+ "name": "--group-hover",
1428
+ "value": "var(--background-hover, var(--group-background))",
1429
+ "defaultValue": "var(--group-background",
1430
+ "referencedVars": [
1431
+ "--background-hover"
1432
+ ],
1433
+ "variant": ".group"
1434
+ },
1435
+ {
1436
+ "name": "--group-pressed",
1437
+ "value": "var(--background-pressed, var(--group-hover))",
1438
+ "defaultValue": "var(--group-hover",
1439
+ "referencedVars": [
1440
+ "--background-pressed"
1441
+ ],
1442
+ "variant": ".group"
1443
+ },
1444
+ {
1445
+ "name": "--group-divider-background",
1446
+ "value": "var(--group-border)",
1447
+ "defaultValue": null,
1448
+ "referencedVars": [
1449
+ "--group-border"
1450
+ ],
1451
+ "variant": ".group"
1452
+ },
1453
+ {
1454
+ "name": "--group-input-background",
1455
+ "value": "var(--group-background)",
1456
+ "defaultValue": null,
1457
+ "referencedVars": [
1458
+ "--group-background"
1459
+ ],
1460
+ "variant": ".group"
1461
+ },
1462
+ {
1463
+ "name": "--group-input-foreground",
1464
+ "value": "var(--group-foreground)",
1465
+ "defaultValue": null,
1466
+ "referencedVars": [
1467
+ "--group-foreground"
1468
+ ],
1469
+ "variant": ".group"
1470
+ },
1471
+ {
1472
+ "name": "--group-input-border-width",
1473
+ "value": "0px",
1474
+ "defaultValue": null,
1475
+ "referencedVars": [],
1476
+ "variant": ".group"
1477
+ },
1478
+ {
1479
+ "name": "--group-input-border",
1480
+ "value": "transparent",
1481
+ "defaultValue": null,
1482
+ "referencedVars": [],
1483
+ "variant": ".group"
1484
+ },
1485
+ {
1486
+ "name": "--group-input-hover-border",
1487
+ "value": "var(--group-input-border)",
1488
+ "defaultValue": null,
1489
+ "referencedVars": [
1490
+ "--group-input-border"
1491
+ ],
1492
+ "variant": ".group"
1493
+ },
1494
+ {
1495
+ "name": "--group-input-focused-border",
1496
+ "value": "var(--group-input-border)",
1497
+ "defaultValue": null,
1498
+ "referencedVars": [
1499
+ "--group-input-border"
1500
+ ],
1501
+ "variant": ".group"
1502
+ },
1503
+ {
1504
+ "name": "--layout-control-height",
1505
+ "value": "calc(\n var(--layout-text-height) +\n var(--layout-vertical-spacing) +\n var(--layout-border-height)\n )",
1506
+ "defaultValue": null,
1507
+ "referencedVars": [
1508
+ "--layout-text-height",
1509
+ "--layout-vertical-spacing",
1510
+ "--layout-border-height"
1511
+ ],
1512
+ "variant": ".group"
1513
+ },
1514
+ {
1515
+ "name": "--item-height",
1516
+ "value": "max(\n calc(\n var(--layout-control-height) -\n var(--layout-padding-height) -\n var(--layout-border-height)\n ),\n 0px\n )",
1189
1517
  "defaultValue": null,
1190
1518
  "referencedVars": [
1191
1519
  "--layout-control-height",
@@ -1220,26 +1548,77 @@
1220
1548
  "variant": ".group.sm"
1221
1549
  },
1222
1550
  {
1223
- "name": "--border-width-base",
1224
- "value": "0px",
1551
+ "name": "--background",
1552
+ "value": "var(--group-input-background)",
1225
1553
  "defaultValue": null,
1226
- "referencedVars": [],
1554
+ "referencedVars": [
1555
+ "--group-input-background"
1556
+ ],
1557
+ "variant": ".group .input"
1558
+ },
1559
+ {
1560
+ "name": "--foreground",
1561
+ "value": "var(--group-input-foreground)",
1562
+ "defaultValue": null,
1563
+ "referencedVars": [
1564
+ "--group-input-foreground"
1565
+ ],
1566
+ "variant": ".group .input"
1567
+ },
1568
+ {
1569
+ "name": "--input-border-width",
1570
+ "value": "var(--group-input-border-width)",
1571
+ "defaultValue": null,
1572
+ "referencedVars": [
1573
+ "--group-input-border-width"
1574
+ ],
1575
+ "variant": ".group .input"
1576
+ },
1577
+ {
1578
+ "name": "--input-border-color",
1579
+ "value": "var(--group-input-border)",
1580
+ "defaultValue": null,
1581
+ "referencedVars": [
1582
+ "--group-input-border"
1583
+ ],
1227
1584
  "variant": ".group .input"
1228
1585
  },
1229
1586
  {
1230
1587
  "name": "--background-border",
1231
- "value": "transparent",
1588
+ "value": "var(--group-input-border)",
1232
1589
  "defaultValue": null,
1233
- "referencedVars": [],
1590
+ "referencedVars": [
1591
+ "--group-input-border"
1592
+ ],
1593
+ "variant": ".group .input"
1594
+ },
1595
+ {
1596
+ "name": "--background-hover-border",
1597
+ "value": "var(--group-input-hover-border)",
1598
+ "defaultValue": null,
1599
+ "referencedVars": [
1600
+ "--group-input-hover-border"
1601
+ ],
1234
1602
  "variant": ".group .input"
1235
1603
  },
1236
1604
  {
1237
1605
  "name": "--background-focused-border",
1238
- "value": "transparent",
1606
+ "value": "var(--group-input-focused-border)",
1239
1607
  "defaultValue": null,
1240
- "referencedVars": [],
1608
+ "referencedVars": [
1609
+ "--group-input-focused-border"
1610
+ ],
1241
1611
  "variant": ".group .input"
1242
1612
  },
1613
+ {
1614
+ "name": "--divider-background",
1615
+ "value": "var(--group-divider-background)",
1616
+ "defaultValue": null,
1617
+ "referencedVars": [
1618
+ "--group-divider-background"
1619
+ ],
1620
+ "variant": ".group .item.divider > [role=\"separator\"]"
1621
+ },
1243
1622
  {
1244
1623
  "name": "--background-radius",
1245
1624
  "value": "0",
@@ -1339,13 +1718,20 @@
1339
1718
  ]
1340
1719
  },
1341
1720
  "grid": {
1342
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .grid {\n --background: transparent;\n --foreground: inherit;\n\n @apply grid w-full;\n background-color: var(--background);\n color: var(--foreground);\n grid-template-columns: var(--grid-tpl, repeat(3, 1fr));\n grid-template-rows: var(--grid-rows, auto);\n gap: var(--grid-gap, calc(var(--spacing, 0.25rem) * 4));\n justify-items: var(--grid-ji, stretch);\n align-items: var(--grid-ai, stretch);\n justify-content: var(--grid-jc, start);\n align-content: var(--grid-ac, start);\n grid-auto-flow: var(--grid-flow, row);\n }\n\n .container {\n container-type: inline-size;\n container-name: grid-ctx;\n }\n\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-sm, 1fr);\n }\n\n @media (min-width: 640px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-md, var(--grid-tpl-sm, 1fr));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-lg, var(--grid-tpl-md, var(--grid-tpl-sm, 1fr)));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-xl, var(--grid-tpl-lg, var(--grid-tpl-md, var(--grid-tpl-sm, 1fr))));\n }\n }\n\n .grid.responsive-gap {\n gap: var(--grid-gap-sm, calc(var(--spacing, 0.25rem) * 2));\n }\n\n @media (min-width: 640px) {\n .grid.responsive-gap {\n gap: var(--grid-gap-md, var(--grid-gap-sm, calc(var(--spacing, 0.25rem) * 4)));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-gap {\n gap: var(--grid-gap-lg, var(--grid-gap-md, var(--grid-gap-sm, calc(var(--spacing, 0.25rem) * 4))));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-gap {\n gap: var(--grid-gap-xl, var(--grid-gap-lg, var(--grid-gap-md, var(--grid-gap-sm, calc(var(--spacing, 0.25rem) * 4)))));\n }\n }\n\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-sm, auto);\n }\n\n @media (min-width: 640px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-md, var(--grid-rows-sm, auto));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-lg, var(--grid-rows-md, var(--grid-rows-sm, auto)));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-xl, var(--grid-rows-lg, var(--grid-rows-md, var(--grid-rows-sm, auto))));\n }\n }\n\n .grid.has-row-gap { row-gap: var(--grid-row-gap); }\n .grid.has-col-gap { column-gap: var(--grid-col-gap); }\n\n @container grid-ctx (width < 400px) {\n .container .grid {\n grid-template-columns: 1fr;\n gap: calc(var(--spacing, 0.25rem) * 2);\n }\n }\n}\n",
1721
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .grid {\n --gap-scale: 1;\n\n --background: transparent;\n --foreground: inherit;\n\n @apply grid w-full;\n background-color: var(--background);\n color: var(--foreground);\n grid-template-columns: var(--grid-tpl, repeat(3, 1fr));\n grid-template-rows: var(--grid-rows, auto);\n gap: calc(var(--spacing, 0.25rem) * var(--grid-gap-step, 4) * var(--gap-scale, 1));\n row-gap: calc(var(--spacing, 0.25rem) * var(--grid-row-gap-step, var(--grid-gap-step, 4)) * var(--gap-scale, 1));\n column-gap: calc(var(--spacing, 0.25rem) * var(--grid-col-gap-step, var(--grid-gap-step, 4)) * var(--gap-scale, 1));\n justify-items: var(--grid-ji, stretch);\n align-items: var(--grid-ai, stretch);\n justify-content: var(--grid-jc, start);\n align-content: var(--grid-ac, start);\n grid-auto-flow: var(--grid-flow, row);\n }\n\n .container {\n container-type: inline-size;\n container-name: grid-ctx;\n @apply w-full;\n }\n\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-sm, 1fr);\n }\n\n @media (min-width: 640px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-md, var(--grid-tpl-sm, 1fr));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-lg, var(--grid-tpl-md, var(--grid-tpl-sm, 1fr)));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-cols {\n grid-template-columns: var(--grid-tpl-xl, var(--grid-tpl-lg, var(--grid-tpl-md, var(--grid-tpl-sm, 1fr))));\n }\n }\n\n .grid.responsive-gap {\n --grid-gap-step: var(--grid-gap-step-sm, 2);\n }\n\n @media (min-width: 640px) {\n .grid.responsive-gap {\n --grid-gap-step: var(--grid-gap-step-md, var(--grid-gap-step-sm, 4));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-gap {\n --grid-gap-step: var(--grid-gap-step-lg, var(--grid-gap-step-md, var(--grid-gap-step-sm, 4)));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-gap {\n --grid-gap-step: var(--grid-gap-step-xl, var(--grid-gap-step-lg, var(--grid-gap-step-md, var(--grid-gap-step-sm, 4))));\n }\n }\n\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-sm, auto);\n }\n\n @media (min-width: 640px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-md, var(--grid-rows-sm, auto));\n }\n }\n\n @media (min-width: 1024px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-lg, var(--grid-rows-md, var(--grid-rows-sm, auto)));\n }\n }\n\n @media (min-width: 1280px) {\n .grid.responsive-rows {\n grid-template-rows: var(--grid-rows-xl, var(--grid-rows-lg, var(--grid-rows-md, var(--grid-rows-sm, auto))));\n }\n }\n\n .grid.has-row-gap {\n row-gap: calc(var(--spacing, 0.25rem) * var(--grid-row-gap-step, var(--grid-gap-step, 4)) * var(--gap-scale, 1));\n }\n\n .grid.has-col-gap {\n column-gap: calc(var(--spacing, 0.25rem) * var(--grid-col-gap-step, var(--grid-gap-step, 4)) * var(--gap-scale, 1));\n }\n\n @container grid-ctx (width < 400px) {\n .container .grid {\n grid-template-columns: 1fr;\n --grid-gap-step: 2;\n }\n }\n}\n",
1343
1722
  "styleableParts": [
1344
1723
  {
1345
1724
  "name": "root"
1346
1725
  }
1347
1726
  ],
1348
1727
  "cssVariables": [
1728
+ {
1729
+ "name": "--gap-scale",
1730
+ "value": "1",
1731
+ "defaultValue": null,
1732
+ "referencedVars": [],
1733
+ "variant": ".grid"
1734
+ },
1349
1735
  {
1350
1736
  "name": "--background",
1351
1737
  "value": "transparent",
@@ -1359,11 +1745,54 @@
1359
1745
  "defaultValue": null,
1360
1746
  "referencedVars": [],
1361
1747
  "variant": ".grid"
1748
+ },
1749
+ {
1750
+ "name": "--grid-gap-step",
1751
+ "value": "var(--grid-gap-step-sm, 2)",
1752
+ "defaultValue": "2",
1753
+ "referencedVars": [
1754
+ "--grid-gap-step-sm"
1755
+ ],
1756
+ "variant": ".grid.responsive-gap"
1757
+ },
1758
+ {
1759
+ "name": "--grid-gap-step",
1760
+ "value": "var(--grid-gap-step-md, var(--grid-gap-step-sm, 4))",
1761
+ "defaultValue": "var(--grid-gap-step-sm, 4",
1762
+ "referencedVars": [
1763
+ "--grid-gap-step-md"
1764
+ ],
1765
+ "variant": ".grid.responsive-gap"
1766
+ },
1767
+ {
1768
+ "name": "--grid-gap-step",
1769
+ "value": "var(--grid-gap-step-lg, var(--grid-gap-step-md, var(--grid-gap-step-sm, 4)))",
1770
+ "defaultValue": "var(--grid-gap-step-md, var(--grid-gap-step-sm, 4",
1771
+ "referencedVars": [
1772
+ "--grid-gap-step-lg"
1773
+ ],
1774
+ "variant": ".grid.responsive-gap"
1775
+ },
1776
+ {
1777
+ "name": "--grid-gap-step",
1778
+ "value": "var(--grid-gap-step-xl, var(--grid-gap-step-lg, var(--grid-gap-step-md, var(--grid-gap-step-sm, 4))))",
1779
+ "defaultValue": "var(--grid-gap-step-lg, var(--grid-gap-step-md, var(--grid-gap-step-sm, 4",
1780
+ "referencedVars": [
1781
+ "--grid-gap-step-xl"
1782
+ ],
1783
+ "variant": ".grid.responsive-gap"
1784
+ },
1785
+ {
1786
+ "name": "--grid-gap-step",
1787
+ "value": "2",
1788
+ "defaultValue": null,
1789
+ "referencedVars": [],
1790
+ "variant": ".container .grid"
1362
1791
  }
1363
1792
  ]
1364
1793
  },
1365
1794
  "gallery": {
1366
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .item-scope {\n @apply block min-w-0;\n }\n\n .item {\n --border-width: var(--border-width-base, 1px);\n --radius: var(--radius-sm, 0.375rem);\n --transition: 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n --view-width: 200px;\n\n @apply flex flex-col overflow-hidden no-underline cursor-pointer w-full;\n\n color: inherit;\n background: var(--background);\n border: var(--border-width) solid var(--background-border);\n border-radius: var(--radius);\n transition:\n border-color var(--transition),\n transform var(--transition),\n background-color var(--transition),\n box-shadow var(--transition);\n }\n\n .item:focus {\n outline: none;\n }\n\n .item[data-disabled=\"true\"] {\n @apply cursor-not-allowed;\n }\n\n .item[data-hovered=\"true\"] {\n border-color: var(--background-hover-border);\n }\n\n .item[data-pressed=\"true\"] {\n border-color: var(--background-pressed-border, var(--background-hover-border));\n }\n\n .item[data-orientation=\"horizontal\"] {\n @apply flex-row;\n }\n\n .item[data-orientation=\"horizontal\"] .view {\n width: var(--view-width);\n }\n\n .view {\n --aspect-ratio: 16/9;\n --background: transparent;\n\n @apply relative overflow-hidden;\n\n aspect-ratio: var(--aspect-ratio);\n background: var(--background);\n }\n\n .view > img,\n .view > video {\n @apply w-full h-full object-cover;\n }\n\n .body {\n --gap: calc(var(--spacing, 0.25rem) * 1);\n --padding: calc(var(--spacing, 0.25rem) * 3);\n --title-color: var(--foreground);\n --description-color: var(--foreground-muted, var(--foreground));\n\n @apply flex flex-col self-start min-w-0;\n\n gap: var(--gap);\n padding: var(--padding);\n }\n\n .item[data-orientation=\"horizontal\"] .body {\n flex: 1;\n align-self: stretch;\n }\n\n .body > :first-child {\n color: var(--title-color);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .body > :not(:first-child) {\n color: var(--description-color);\n font-size: var(--text-sm, 0.875rem);\n }\n}\n",
1795
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .item-scope {\n @apply block min-w-0 h-full;\n }\n\n .item {\n --border-width: var(--border-width-base, 1px);\n --radius: var(--radius-sm, 0.375rem);\n --transition: var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n --view-width: 200px;\n\n @apply flex flex-col overflow-hidden no-underline cursor-pointer w-full h-full;\n\n color: inherit;\n background: var(--background);\n border: var(--border-width) solid var(--background-border);\n border-radius: var(--radius);\n transition:\n border-color var(--transition),\n transform var(--transition),\n background-color var(--transition),\n box-shadow var(--transition);\n }\n\n .item:focus {\n outline: none;\n }\n\n .item[data-disabled=\"true\"] {\n @apply cursor-not-allowed;\n }\n\n .item[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n border-color: var(--background-hover-border);\n }\n\n .item[data-pressed=\"true\"] {\n border-color: var(--background-pressed-border, var(--background-hover-border));\n }\n\n .item[data-orientation=\"horizontal\"] {\n @apply flex-row;\n }\n\n .item[data-orientation=\"horizontal\"] .view {\n width: var(--view-width);\n }\n\n .view {\n --aspect-ratio: 16/9;\n --background: transparent;\n\n @apply relative overflow-hidden;\n\n aspect-ratio: var(--aspect-ratio);\n background: var(--background);\n }\n\n .view > img,\n .view > video {\n @apply w-full h-full object-cover;\n }\n\n .body {\n --gap: calc(var(--spacing, 0.25rem) * 1);\n --padding: calc(var(--spacing, 0.25rem) * 3);\n --title-color: var(--foreground);\n --description-color: var(--foreground-muted, var(--foreground));\n\n @apply flex flex-col self-start min-w-0;\n\n gap: var(--gap);\n padding: var(--padding);\n }\n\n .item[data-orientation=\"horizontal\"] .body {\n flex: 1;\n align-self: stretch;\n }\n\n .body > :first-child {\n color: var(--title-color);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .body > :not(:first-child) {\n color: var(--description-color);\n font-size: var(--text-sm, 0.875rem);\n }\n}\n",
1367
1796
  "styleableParts": [
1368
1797
  {
1369
1798
  "name": "root"
@@ -1399,9 +1828,12 @@
1399
1828
  },
1400
1829
  {
1401
1830
  "name": "--transition",
1402
- "value": "0.2s cubic-bezier(0.4, 0, 0.2, 1)",
1403
- "defaultValue": null,
1404
- "referencedVars": [],
1831
+ "value": "var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out))",
1832
+ "defaultValue": "var(--hover-transition-leave-duration, 300ms",
1833
+ "referencedVars": [
1834
+ "--hover-transition-duration",
1835
+ "--hover-transition-timing-function"
1836
+ ],
1405
1837
  "variant": ".item"
1406
1838
  },
1407
1839
  {
@@ -1411,6 +1843,15 @@
1411
1843
  "referencedVars": [],
1412
1844
  "variant": ".item"
1413
1845
  },
1846
+ {
1847
+ "name": "--hover-transition-duration",
1848
+ "value": "var(--hover-transition-enter-duration, 0ms)",
1849
+ "defaultValue": "0ms",
1850
+ "referencedVars": [
1851
+ "--hover-transition-enter-duration"
1852
+ ],
1853
+ "variant": ".item[data-hovered=\"true\"]"
1854
+ },
1414
1855
  {
1415
1856
  "name": "--aspect-ratio",
1416
1857
  "value": "16/9",
@@ -1492,16 +1933,52 @@
1492
1933
  ]
1493
1934
  },
1494
1935
  "flex": {
1495
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .flex {\n @apply flex w-full;\n }\n\n /* Direction variants */\n .flex.row { flex-direction: row; }\n .flex.column { flex-direction: column; }\n\n /* Wrap variants */\n .flex.wrap { flex-wrap: wrap; }\n .flex.nowrap { flex-wrap: nowrap; }\n\n /* Gap variants */\n .flex.gap-xs { gap: var(--spacing-xs); }\n .flex.gap-sm { gap: var(--spacing-sm); }\n .flex.gap-md { gap: var(--spacing-md); }\n .flex.gap-lg { gap: var(--spacing-lg); }\n .flex.gap-xl { gap: var(--spacing-xl); }\n\n /* Justify-content variants */\n .flex.justify-flex-start { justify-content: flex-start; }\n .flex.justify-flex-end { justify-content: flex-end; }\n .flex.justify-center { justify-content: center; }\n .flex.justify-space-between { justify-content: space-between; }\n .flex.justify-space-around { justify-content: space-around; }\n .flex.justify-space-evenly { justify-content: space-evenly; }\n\n /* Align-items variants */\n .flex.align-flex-start { align-items: flex-start; }\n .flex.align-flex-end { align-items: flex-end; }\n .flex.align-center { align-items: center; }\n .flex.align-stretch { align-items: stretch; }\n .flex.align-baseline { align-items: baseline; }\n\n /* Container query parent - establishes containment context */\n .container-query-parent {\n container-type: inline-size;\n container-name: flex-parent;\n @apply w-full;\n }\n\n /* Container query responsive behavior - use .flex.container-responsive for specificity parity with base variants */\n @container flex-parent (width < 400px) {\n .flex.container-responsive {\n flex-direction: column;\n flex-wrap: wrap;\n justify-content: flex-start;\n gap: var(--spacing-sm);\n }\n }\n\n @container flex-parent (400px <= width < 500px) {\n .flex.container-responsive {\n flex-wrap: wrap;\n gap: var(--spacing-sm);\n }\n }\n\n @container flex-parent (500px <= width < 900px) {\n .flex.container-responsive {\n gap: var(--spacing-md);\n }\n }\n\n @container flex-parent (width >= 900px) {\n .flex.container-responsive {\n gap: var(--spacing-lg);\n }\n }\n}\n",
1936
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .flex {\n --gap-scale: 0.5;\n\n @apply flex w-full;\n gap: calc(var(--spacing, 0.25rem) * var(--flex-gap-step, 4) * var(--gap-scale, 1));\n }\n\n /* Direction variants */\n .flex.row { flex-direction: row; }\n .flex.column { flex-direction: column; }\n\n /* Wrap variants */\n .flex.wrap { flex-wrap: wrap; }\n .flex.nowrap { flex-wrap: nowrap; }\n\n /* Justify-content variants */\n .flex.justify-start { justify-content: flex-start; }\n .flex.justify-end { justify-content: flex-end; }\n .flex.justify-center { justify-content: center; }\n .flex.justify-between { justify-content: space-between; }\n .flex.justify-around { justify-content: space-around; }\n .flex.justify-evenly { justify-content: space-evenly; }\n\n /* Align-items variants */\n .flex.align-start { align-items: flex-start; }\n .flex.align-end { align-items: flex-end; }\n .flex.align-center { align-items: center; }\n .flex.align-stretch { align-items: stretch; }\n .flex.align-baseline { align-items: baseline; }\n\n /* Container query parent - establishes containment context */\n .container-query-parent {\n container-type: inline-size;\n container-name: flex-parent;\n @apply w-full;\n }\n\n /* Container query responsive behavior - use .flex.container-responsive for specificity parity with base variants */\n @container flex-parent (width < 400px) {\n .flex.container-responsive {\n flex-direction: column;\n flex-wrap: wrap;\n justify-content: flex-start;\n --flex-gap-step: 2;\n }\n }\n\n @container flex-parent (400px <= width < 500px) {\n .flex.container-responsive {\n flex-wrap: wrap;\n --flex-gap-step: 2;\n }\n }\n\n @container flex-parent (500px <= width < 900px) {\n .flex.container-responsive {\n --flex-gap-step: 4;\n }\n }\n\n @container flex-parent (width >= 900px) {\n .flex.container-responsive {\n --flex-gap-step: 6;\n }\n }\n}\n",
1496
1937
  "styleableParts": [
1497
1938
  {
1498
1939
  "name": "root"
1499
1940
  }
1500
1941
  ],
1501
- "cssVariables": []
1942
+ "cssVariables": [
1943
+ {
1944
+ "name": "--gap-scale",
1945
+ "value": "0.5",
1946
+ "defaultValue": null,
1947
+ "referencedVars": [],
1948
+ "variant": ".flex"
1949
+ },
1950
+ {
1951
+ "name": "--flex-gap-step",
1952
+ "value": "2",
1953
+ "defaultValue": null,
1954
+ "referencedVars": [],
1955
+ "variant": ".flex.container-responsive"
1956
+ },
1957
+ {
1958
+ "name": "--flex-gap-step",
1959
+ "value": "2",
1960
+ "defaultValue": null,
1961
+ "referencedVars": [],
1962
+ "variant": ".flex.container-responsive"
1963
+ },
1964
+ {
1965
+ "name": "--flex-gap-step",
1966
+ "value": "4",
1967
+ "defaultValue": null,
1968
+ "referencedVars": [],
1969
+ "variant": ".flex.container-responsive"
1970
+ },
1971
+ {
1972
+ "name": "--flex-gap-step",
1973
+ "value": "6",
1974
+ "defaultValue": null,
1975
+ "referencedVars": [],
1976
+ "variant": ".flex.container-responsive"
1977
+ }
1978
+ ]
1502
1979
  },
1503
1980
  "expand": {
1504
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n position: relative;\n display: block;\n width: 100%;\n }\n\n .expand {\n --expand-disabled-opacity: 0.6;\n --expand-trigger-padding-x: 0.75rem;\n --expand-trigger-padding-y: 0.5rem;\n --expand-divider-spacing: 0.5rem;\n\n @apply flex w-full flex-col;\n }\n\n .expand[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--expand-disabled-opacity);\n }\n\n .trigger {\n @apply flex w-full items-stretch justify-between border-0 p-0 text-left;\n\n appearance: none;\n color: var(--foreground);\n background-color: var(--background);\n cursor: pointer;\n border-radius: 0;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n outline: none;\n box-shadow: none;\n transition:\n background-color 200ms var(--ease-smooth-settle),\n opacity 200ms var(--ease-smooth-settle)\n }\n\n .trigger:focus,\n .trigger:focus-visible {\n outline: none;\n box-shadow: none;\n }\n\n .trigger[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--expand-disabled-opacity);\n }\n\n .title {\n @apply flex min-w-0 flex-1 items-center overflow-hidden;\n\n padding: var(--expand-trigger-padding-y) 0 var(--expand-trigger-padding-y)\n var(--expand-trigger-padding-x);\n font-weight: var(--font-weight-medium);\n border-radius: 0;\n color: inherit;\n background-color: transparent;\n }\n\n .trigger:not([data-disabled=\"true\"]):has(.icon:hover) .title {\n background-color: transparent;\n }\n\n .icon {\n @apply flex shrink-0 items-center justify-center;\n\n padding: var(--expand-trigger-padding-y) var(--expand-trigger-padding-x);\n color: inherit;\n border-radius: 0;\n }\n\n @media (hover: hover) {\n .trigger:not([data-disabled=\"true\"]):hover .title,\n .trigger:not([data-disabled=\"true\"]):hover .icon {\n background-color: var(--background-hover);\n }\n\n .trigger:not([data-disabled=\"true\"]):has(.icon:hover) .title {\n background-color: transparent;\n }\n\n .trigger:not([data-disabled=\"true\"]) .icon:hover {\n border-radius: 0;\n }\n }\n\n .icon > * {\n transition: transform 250ms var(--ease-smooth-settle);\n }\n\n .icon[data-selected=\"true\"] > * {\n transform: rotate(180deg);\n }\n\n .expand:has(.content[data-from=\"above\"]) {\n flex-direction: column-reverse;\n }\n\n .expand:has(.content[data-from=\"above\"]) .icon > * {\n transform: rotate(180deg);\n }\n\n .expand:has(.content[data-from=\"above\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(0deg);\n }\n\n .expand:has(.content[data-from=\"left\"]) {\n @apply flex-row-reverse items-start;\n }\n\n .expand:has(.content[data-from=\"left\"]) .trigger {\n @apply w-auto flex-col;\n }\n\n .expand:has(.content[data-from=\"left\"]) .icon > * {\n transform: rotate(-90deg);\n }\n\n .expand:has(.content[data-from=\"left\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(90deg);\n }\n\n .expand:has(.content[data-from=\"right\"]) {\n @apply flex-row items-start;\n }\n\n .expand:has(.content[data-from=\"right\"]) .trigger {\n @apply w-auto flex-col;\n }\n\n .expand:has(.content[data-from=\"right\"]) .icon > * {\n transform: rotate(90deg);\n }\n\n .expand:has(.content[data-from=\"right\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(-90deg);\n }\n\n .content {\n display: grid;\n overflow: hidden;\n grid-template-rows: 0fr;\n transition: grid-template-rows 300ms var(--ease-smooth-settle);\n }\n\n .content[data-selected=\"true\"] {\n grid-template-rows: 1fr;\n }\n\n .content[data-from=\"left\"],\n .content[data-from=\"right\"] {\n grid-template-rows: 1fr;\n grid-template-columns: 0fr;\n transition: grid-template-columns 300ms var(--ease-smooth-settle);\n }\n\n .content[data-from=\"left\"][data-selected=\"true\"],\n .content[data-from=\"right\"][data-selected=\"true\"] {\n grid-template-columns: 1fr;\n }\n\n .content-inner {\n @apply min-h-0 overflow-hidden;\n\n min-width: 0;\n color: var(--foreground-content);\n background-color: var(--background-content);\n }\n\n .divider {\n margin-top: var(--expand-divider-spacing);\n }\n}\n",
1981
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .scope {\n position: relative;\n display: block;\n width: 100%;\n }\n\n .expand {\n --expand-disabled-opacity: 0.6;\n --expand-trigger-padding-x: 0.75rem;\n --expand-trigger-padding-y: 0.5rem;\n --expand-divider-spacing: 0.5rem;\n\n @apply flex w-full flex-col;\n }\n\n .expand[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--expand-disabled-opacity);\n }\n\n .trigger {\n @apply flex w-full items-stretch justify-between border-0 p-0 text-left;\n\n appearance: none;\n color: var(--foreground);\n background-color: var(--background);\n cursor: pointer;\n border-radius: 0;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n outline: none;\n box-shadow: none;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-smooth-settle, ease-out)),\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-smooth-settle, ease-out));\n }\n\n .trigger:focus,\n .trigger:focus-visible {\n outline: none;\n box-shadow: none;\n }\n\n .trigger[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--expand-disabled-opacity);\n }\n\n .title {\n @apply flex min-w-0 flex-1 items-center overflow-hidden;\n\n padding: var(--expand-trigger-padding-y) 0 var(--expand-trigger-padding-y)\n var(--expand-trigger-padding-x);\n font-weight: var(--font-weight-medium);\n border-radius: 0;\n color: inherit;\n background-color: transparent;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-smooth-settle, ease-out));\n }\n\n .trigger:not([data-disabled=\"true\"]):has(.icon:hover) .title {\n background-color: transparent;\n }\n\n .icon {\n @apply flex shrink-0 items-center justify-center;\n\n padding: var(--expand-trigger-padding-y) var(--expand-trigger-padding-x);\n color: inherit;\n border-radius: 0;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-smooth-settle, ease-out));\n }\n\n @media (hover: hover) {\n .trigger:not([data-disabled=\"true\"]):hover .title,\n .trigger:not([data-disabled=\"true\"]):hover .icon {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n\n .trigger:not([data-disabled=\"true\"]):has(.icon:hover) .title {\n background-color: transparent;\n }\n\n .trigger:not([data-disabled=\"true\"]) .icon:hover {\n border-radius: 0;\n }\n }\n\n .icon > * {\n transition: transform 250ms var(--ease-smooth-settle);\n }\n\n .icon[data-selected=\"true\"] > * {\n transform: rotate(180deg);\n }\n\n .expand:has(.content[data-from=\"above\"]) {\n flex-direction: column-reverse;\n }\n\n .expand:has(.content[data-from=\"above\"]) .icon > * {\n transform: rotate(180deg);\n }\n\n .expand:has(.content[data-from=\"above\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(0deg);\n }\n\n .expand:has(.content[data-from=\"left\"]) {\n @apply flex-row-reverse items-start;\n }\n\n .expand:has(.content[data-from=\"left\"]) .trigger {\n @apply w-auto flex-col;\n }\n\n .expand:has(.content[data-from=\"left\"]) .icon > * {\n transform: rotate(-90deg);\n }\n\n .expand:has(.content[data-from=\"left\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(90deg);\n }\n\n .expand:has(.content[data-from=\"right\"]) {\n @apply flex-row items-start;\n }\n\n .expand:has(.content[data-from=\"right\"]) .trigger {\n @apply w-auto flex-col;\n }\n\n .expand:has(.content[data-from=\"right\"]) .icon > * {\n transform: rotate(90deg);\n }\n\n .expand:has(.content[data-from=\"right\"]) .icon[data-selected=\"true\"] > * {\n transform: rotate(-90deg);\n }\n\n .content {\n display: grid;\n overflow: hidden;\n grid-template-rows: 0fr;\n transition: grid-template-rows 300ms var(--ease-smooth-settle);\n }\n\n .content[data-selected=\"true\"] {\n grid-template-rows: 1fr;\n }\n\n .content[data-from=\"left\"],\n .content[data-from=\"right\"] {\n grid-template-rows: 1fr;\n grid-template-columns: 0fr;\n transition: grid-template-columns 300ms var(--ease-smooth-settle);\n }\n\n .content[data-from=\"left\"][data-selected=\"true\"],\n .content[data-from=\"right\"][data-selected=\"true\"] {\n grid-template-columns: 1fr;\n }\n\n .content-inner {\n @apply min-h-0 overflow-hidden;\n\n min-width: 0;\n color: var(--foreground-content);\n background-color: var(--background-content);\n }\n\n .divider {\n margin-top: var(--expand-divider-spacing);\n }\n}\n",
1505
1982
  "styleableParts": [
1506
1983
  {
1507
1984
  "name": "root"
@@ -1556,11 +2033,20 @@
1556
2033
  "defaultValue": null,
1557
2034
  "referencedVars": [],
1558
2035
  "variant": ".expand"
2036
+ },
2037
+ {
2038
+ "name": "--hover-transition-duration",
2039
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2040
+ "defaultValue": "0ms",
2041
+ "referencedVars": [
2042
+ "--hover-transition-enter-duration"
2043
+ ],
2044
+ "variant": ".trigger:not([data-disabled=\"true\"]):hover .title,\n .trigger:not([data-disabled=\"true\"]):hover .icon"
1559
2045
  }
1560
2046
  ]
1561
2047
  },
1562
2048
  "divider": {
1563
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .divider {\n --divider-background: var(--background);\n }\n}\n",
2049
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .divider {\n --divider-background: var(--group-divider-background, var(--background-border, var(--background)));\n }\n}\n",
1564
2050
  "styleableParts": [
1565
2051
  {
1566
2052
  "name": "root"
@@ -1569,17 +2055,17 @@
1569
2055
  "cssVariables": [
1570
2056
  {
1571
2057
  "name": "--divider-background",
1572
- "value": "var(--background)",
1573
- "defaultValue": null,
2058
+ "value": "var(--group-divider-background, var(--background-border, var(--background)))",
2059
+ "defaultValue": "var(--background-border, var(--background",
1574
2060
  "referencedVars": [
1575
- "--background"
2061
+ "--group-divider-background"
1576
2062
  ],
1577
2063
  "variant": ".divider"
1578
2064
  }
1579
2065
  ]
1580
2066
  },
1581
2067
  "date": {
1582
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .calendar {\n --disabled-opacity: 0.5;\n\n @apply inline-flex flex-col overflow-hidden gap-0;\n border-radius: var(--radius-md);\n background-color: var(--background);\n border: var(--border-width-base) solid var(--border);\n }\n\n .day-headers {\n @apply grid gap-2 px-4 pt-3 pb-1;\n grid-template-columns: repeat(7, 1fr);\n background: var(--day-headers-background);\n border-top: var(--border-width-base) solid var(--border);\n border-radius: var(--radius-md) var(--radius-md) 0 0;\n }\n\n .day-header {\n @apply flex items-center justify-center;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm);\n color: var(--day-header-color);\n }\n\n .header {\n @apply flex items-center justify-between gap-4 pl-2 pr-1.5 py-1.5;\n color: var(--header-color);\n }\n\n .month-year {\n @apply ml-2;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm);\n text-align: center;\n }\n\n .nav-button {\n @apply inline-flex min-h-8 min-w-8 items-center justify-center cursor-pointer;\n border-radius: var(--radius-sm);\n background-color: transparent;\n color: var(--nav-button-color);\n border: 1px solid transparent;\n font-size: var(--text-sm);\n font-weight: 500;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .nav-button:hover { background-color: var(--nav-button-background-hover); }\n\n .nav-button:focus-visible {\n background: var(--nav-button-background-hover);\n border-radius: 0px;\n outline: 0px solid var(--accent-500);\n }\n\n .grid {\n @apply grid gap-1 px-4 pb-4;\n grid-template-columns: repeat(7, 1fr); /* 7 days only */\n background: var(--grid-background);\n border-radius: 0 0 var(--radius-sm) var(--radius-sm);\n }\n\n .day-cell {\n --cell-background: transparent;\n\n @apply flex min-h-8 items-center justify-center px-2.5 py-2 cursor-pointer;\n border-radius: var(--radius-base);\n background-color: var(--cell-background);\n color: var(--cell-text);\n border: 2px solid transparent;\n font-size: var(--text-sm);\n font-weight: 400;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n }\n\n .week-header {\n display: none;\n }\n\n .week-number {\n display: none;\n }\n}\n\n/* Variant states - these are outside @layer */\n.day-cell[data-selected=\"true\"] {\n font-weight: 500;\n}\n\n.day-cell[data-today=\"true\"] {\n border-color: transparent;\n}\n\n.day-cell[data-disabled=\"true\"],\n.day-cell[data-out-of-range=\"true\"] {\n opacity: var(--disabled-opacity);\n}\n\n.day-cell[data-disabled=\"true\"] { cursor: not-allowed; }\n\n.day-cell[data-focus-visible=\"true\"]:not([data-disabled=\"true\"]) { outline: 2px solid var(--focus-ring); outline-offset: 2px; }\n",
2068
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .calendar {\n --disabled-opacity: 0.5;\n\n @apply inline-flex p-1.5 flex-col overflow-hidden gap-0;\n border-radius: var(--radius-sm);\n background-color: var(--background);\n border: var(--border-width-base) solid var(--border);\n }\n\n .day-headers {\n @apply grid gap-2 px-4 pt-3 pb-1;\n grid-template-columns: repeat(7, 1fr);\n background: var(--day-headers-background);\n border: var(--border-width-base) solid var(--border);\n border-bottom: none;\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\n }\n\n .day-header {\n @apply flex items-center justify-center;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-xs);\n color: var(--day-header-color);\n }\n\n .header {\n @apply flex items-center justify-between gap-4 pl-2 pr-1.5 py-1.5;\n color: var(--header-color);\n }\n\n .month-year {\n @apply ml-2;\n font-weight: var(--font-weight-medium);\n font-size: var(--text-sm);\n text-align: center;\n }\n\n .nav-button {\n @apply inline-flex min-h-8 min-w-8 items-center justify-center cursor-pointer;\n border-radius: var(--radius-sm);\n background-color: transparent;\n color: var(--nav-button-color);\n border: 1px solid transparent;\n font-size: var(--text-sm);\n font-weight: 500;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .nav-button:focus-visible {\n outline: none;\n }\n\n .nav-button:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--nav-button-background-hover);\n }\n\n .grid {\n @apply grid gap-1 px-4 pb-4;\n grid-template-columns: repeat(7, 1fr); /* 7 days only */\n background: var(--grid-background);\n border-radius: 0 0 var(--radius-sm) var(--radius-sm);\n border: var(--border-width-base) solid var(--border);\n }\n\n .day-cell {\n --cell-background: transparent;\n\n @apply flex min-h-8 items-center justify-center px-2.5 py-2 cursor-pointer;\n border-radius: var(--radius-base);\n background-color: var(--cell-background);\n color: var(--cell-text);\n border: 2px solid transparent;\n font-size: var(--text-xs);\n font-weight: 400;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .day-cell:focus-visible {\n outline: none;\n }\n\n .week-header {\n display: none;\n }\n\n .week-number {\n display: none;\n }\n}\n\n/* Variant states - these are outside @layer */\n.day-cell[data-selected=\"true\"] {\n font-weight: 500;\n}\n\n.day-cell[data-today=\"true\"] {\n border-color: transparent;\n}\n\n.day-cell[data-disabled=\"true\"],\n.day-cell[data-out-of-range=\"true\"] {\n opacity: var(--disabled-opacity);\n}\n\n.day-cell[data-disabled=\"true\"] { cursor: not-allowed; }\n",
1583
2069
  "styleableParts": [
1584
2070
  {
1585
2071
  "name": "root"
@@ -1605,6 +2091,15 @@
1605
2091
  "referencedVars": [],
1606
2092
  "variant": ".calendar"
1607
2093
  },
2094
+ {
2095
+ "name": "--hover-transition-duration",
2096
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2097
+ "defaultValue": "0ms",
2098
+ "referencedVars": [
2099
+ "--hover-transition-enter-duration"
2100
+ ],
2101
+ "variant": ".nav-button:hover"
2102
+ },
1608
2103
  {
1609
2104
  "name": "--cell-background",
1610
2105
  "value": "transparent",
@@ -1850,7 +2345,7 @@
1850
2345
  ]
1851
2346
  },
1852
2347
  "command": {
1853
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n /* Overlay Container */\n .overlay {\n @apply fixed inset-0 flex items-start justify-center overflow-hidden;\n z-index: 999;\n padding-top: 20vh;\n /* Apply backdrop styles directly to avoid creating a containing block that disrupts sticky elements */\n background-color: var(--overlay);\n backdrop-filter: var(--overlay-backdrop);\n }\n\n /* Content */\n .content {\n @apply relative m-2 w-full max-w-[28rem];\n border-radius: var(--radius-sm);\n background: var(--background);\n margin-inline: 1rem;\n box-shadow: var(--shadow);\n animation: fade-in-zoom-in 0.2s ease-out;\n }\n\n .inner {\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\n border-top: var(--border-width-base) solid var(--border-color);\n @apply overflow-hidden;\n }\n\n /* Search Section */\n .search {\n @apply border-none flex p-1.5;\n --input-active-border-color: transparent;\n --input-active-box-shadow: none;\n }\n\n .input {\n border-color: transparent;\n background: transparent;\n box-shadow: none;\n\n &[data-active],\n &[data-focus-visible] {\n border-color: transparent;\n box-shadow: none;\n }\n }\n\n /* List Section */\n .list {\n @apply py-0.5 px-2 space-y-2;\n background-color: var(--background-list);\n }\n\n .list :global([role=\"listbox\"]) {\n @apply flex w-full flex-col;\n }\n\n .item {\n @apply flex items-center justify-between rounded-sm px-2 py-0.5 cursor-pointer;\n border-radius: 0.375rem;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n color: var(--foreground);\n }\n\n .item:hover {\n background-color: var(--background-hover);\n }\n\n .item[data-highlighted=\"true\"] {\n background-color: var(--background-pressed);\n }\n\n .item-content {\n @apply flex min-w-0 flex-1 items-center gap-2.5;\n flex: 1;\n }\n\n .item-icon {\n @apply flex h-6 w-6 shrink-0 items-center justify-center;\n color: var(--foreground);\n }\n\n .item-labels {\n flex: 1;\n @apply min-w-0;\n }\n\n .item-label {\n font-size: var(--text-sm);\n color: var(--foreground);\n font-weight: var(--font-weight-medium);\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .item-description {\n color: var(--foreground-muted);\n font-size: 0.875rem;\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .hint-wrapper {\n @apply flex items-center;\n }\n\n .category-header {\n @apply px-2 py-1.5 mt-2 first:mt-0;\n font-size: var(--text-sm);\n font-weight: var(--font-weight-semibold);\n color: var(--foreground-muted);\n }\n\n /* Empty State */\n .empty {\n padding: 1.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n color: var(--foreground-muted);\n }\n\n /* Footer */\n .footer {\n @apply flex w-full items-center gap-2 px-1.5 py-2;\n background-color: var(--background-footer);\n border-top: 1px solid var(--border-color);\n justify-content: flex-between;\n }\n\n /* Animations */\n @keyframes fade-in-zoom-in { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }\n}\n",
2348
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n /* Overlay Container */\n .overlay {\n @apply fixed inset-0 flex items-start justify-center overflow-hidden;\n z-index: 999;\n padding-top: 20vh;\n /* Apply backdrop styles directly to avoid creating a containing block that disrupts sticky elements */\n background-color: var(--overlay);\n backdrop-filter: var(--overlay-backdrop);\n }\n\n /* Content */\n .content {\n @apply relative m-2 w-full max-w-[28rem];\n border-radius: var(--radius-sm);\n background: var(--background);\n margin-inline: 1rem;\n box-shadow: var(--shadow);\n animation: fade-in-zoom-in 0.2s ease-out;\n }\n\n .inner {\n border-radius: var(--radius-sm) var(--radius-sm) 0 0;\n border-top: var(--border-width-base) solid var(--border);\n @apply overflow-hidden;\n }\n\n /* Search Section */\n .search {\n @apply border-none flex p-1.5;\n --input-active-border-color: transparent;\n --input-active-box-shadow: none;\n }\n\n .input {\n border-color: transparent;\n background: transparent;\n box-shadow: none;\n\n &[data-active],\n &[data-focus-visible] {\n border-color: transparent;\n box-shadow: none;\n }\n }\n\n /* List Section */\n .list {\n @apply py-0.5 px-2 space-y-2;\n background-color: var(--background-list);\n }\n\n .list :global([role=\"listbox\"]) {\n @apply flex w-full flex-col;\n }\n\n .item {\n @apply flex items-center justify-between rounded-sm px-2 py-0.5 cursor-pointer;\n border-radius: 0.375rem;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n color: var(--foreground);\n }\n\n .item:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n }\n\n .item[data-highlighted=\"true\"] {\n background-color: var(--background-pressed);\n }\n\n .item-content {\n @apply flex min-w-0 flex-1 items-center gap-2.5;\n flex: 1;\n }\n\n .item-icon {\n @apply flex h-6 w-6 shrink-0 items-center justify-center;\n color: var(--foreground);\n }\n\n .item-labels {\n flex: 1;\n @apply min-w-0;\n }\n\n .item-label {\n font-size: var(--text-sm);\n color: var(--foreground);\n font-weight: var(--font-weight-medium);\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .item-description {\n color: var(--foreground-muted);\n font-size: 0.875rem;\n @apply overflow-hidden text-ellipsis whitespace-nowrap;\n }\n\n .hint-wrapper {\n @apply flex items-center;\n }\n\n .category-header {\n @apply px-2 py-1.5 mt-2 first:mt-0;\n font-size: var(--text-sm);\n font-weight: var(--font-weight-semibold);\n color: var(--foreground-muted);\n }\n\n /* Empty State */\n .empty {\n padding: 1.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n color: var(--foreground-muted);\n }\n\n /* Footer */\n .footer {\n @apply flex w-full items-center gap-2 px-1.5 py-2;\n background-color: var(--background-footer);\n border-top: 1px solid var(--border);\n justify-content: flex-between;\n }\n\n /* Animations */\n @keyframes fade-in-zoom-in { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }\n}\n",
1854
2349
  "styleableParts": [
1855
2350
  {
1856
2351
  "name": "root"
@@ -1888,60 +2383,35 @@
1888
2383
  "defaultValue": null,
1889
2384
  "referencedVars": [],
1890
2385
  "variant": ".search"
2386
+ },
2387
+ {
2388
+ "name": "--hover-transition-duration",
2389
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2390
+ "defaultValue": "0ms",
2391
+ "referencedVars": [
2392
+ "--hover-transition-enter-duration"
2393
+ ],
2394
+ "variant": ".item:hover"
1891
2395
  }
1892
2396
  ]
1893
2397
  },
1894
- "code": {
1895
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .code {\n --border-color: var(--background-700);\n --header-bg: mix(var(--background-900) 90%, transparent);\n --scroll-track-bg: mix(var(--background-950) 50%, transparent);\n\n max-height: 52.5rem;\n border-radius: var(--radius-sm);\n border: 1px solid var(--border-color);\n @apply flex w-full min-w-0 flex-col overflow-hidden;\n }\n\n .header {\n flex: none;\n background-color: var(--header-bg);\n @apply flex items-center justify-between px-3 py-1.5;\n font-size: var(--text-sm);\n font-weight: var(--font-weight-semibold);\n border-bottom: 1px solid var(--border-color);\n color: var(--foreground-400);\n }\n\n\n .body {\n @apply relative flex min-h-0 flex-1 flex-col;\n flex: 1;\n }\n\n .viewport { @apply overflow-hidden; }\n\n .viewport :global(pre) {\n background: transparent;\n @apply m-0 p-0;\n width: fit-content;\n }\n\n .viewport :global(code) {\n color: var(--foreground-300);\n white-space: pre;\n }\n\n .viewport::-webkit-scrollbar {\n width: 0.5rem;\n }\n\n .viewport::-webkit-scrollbar-track {\n background: transparent;\n }\n\n .viewport::-webkit-scrollbar-thumb {\n background: var(--background-700);\n border-radius: 9999px;\n }\n\n .viewport::-webkit-scrollbar-thumb:hover {\n background: var(--background-600);\n }\n\n .scroll-track {\n flex: none;\n @apply w-full;\n overflow-x: auto;\n background-color: var(--scroll-track-bg);\n backdrop-filter: blur(4px);\n }\n\n .expand-button {\n @apply flex w-full items-center gap-3 px-4 py-2 cursor-pointer;\n color: var(--foreground-300);\n font-size: var(--text-sm);\n font-weight: var(--font-weight-medium);\n transition: background-color 0.15s ease-out;\n border-top: 1px solid var(--border-color);\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n }\n\n .expand-button:hover { background-color: var(--background-800); }\n\n .expand-icon { @apply shrink-0; color: var(--foreground-400); }\n\n .copy-button {\n @apply absolute right-2 top-2 flex items-center justify-center p-1 cursor-pointer;\n border-radius: var(--radius-sm);\n color: var(--foreground-400);\n opacity: 0;\n transition: opacity 0.15s ease-out, background-color 0.15s ease-out, color 0.15s ease-out;\n background: transparent;\n border: none;\n z-index: 1;\n }\n\n .copy-button:hover { background-color: var(--background-800); color: var(--foreground-300); }\n\n .copy-button:focus, .body:hover .copy-button { opacity: 1; }\n}\n",
2398
+ "color": {
2399
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .color {\n --background: color-mix(in srgb, var(--background-800) 30%, transparent);\n --background-border: var(--background-700);\n --focus-visible: var(--accent-500);\n\n display: flex;\n flex-direction: column;\n gap: 1rem;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n width: 260px;\n }\n\n .color[data-disabled=\"true\"] {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .color[data-variant=\"popover\"] {\n background: transparent;\n border-color: transparent;\n border-radius: 0;\n }\n\n .color-provider {\n display: inline-flex;\n width: fit-content;\n }\n\n .color-provider .color-trigger {\n --trigger-background: color-mix(in srgb, var(--background-800) 35%, transparent);\n --trigger-background-hover: color-mix(in srgb, var(--background-700) 45%, transparent);\n --trigger-border: var(--background-700);\n --trigger-text: var(--foreground-200);\n --background-border: var(--background-700);\n --focus-visible: var(--accent-500);\n --checkerboard-dark: var(--background-700);\n --checkerboard-light: var(--background-800);\n\n display: inline-flex;\n align-items: center;\n gap: 0.625rem;\n min-width: 170px;\n height: 40px;\n padding: 0 0.75rem;\n border: var(--border-width-base, 1px) solid var(--trigger-border);\n border-radius: var(--radius-sm, 0.375rem);\n background: var(--trigger-background);\n color: var(--trigger-text);\n cursor: pointer;\n font: inherit;\n font-size: 0.875rem;\n line-height: 1;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .color-provider .color-trigger:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background: var(--trigger-background-hover);\n }\n\n .color-provider .color-trigger:focus-visible {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .color-provider .color-trigger[data-disabled=\"true\"] {\n opacity: 0.5;\n cursor: not-allowed;\n }\n\n .color-provider .color-trigger[data-size=\"sm\"] {\n min-width: 150px;\n height: 34px;\n padding: 0 0.625rem;\n font-size: 0.8125rem;\n }\n\n .color-provider .color-trigger[data-size=\"lg\"] {\n min-width: 190px;\n height: 46px;\n padding: 0 0.875rem;\n font-size: 0.9375rem;\n }\n\n .color-provider .color-trigger-swatch {\n position: relative;\n width: 20px;\n height: 20px;\n flex: 0 0 auto;\n border-radius: var(--radius-xs, 0.25rem);\n border: var(--border-width-base, 1px) solid var(--background-border);\n overflow: hidden;\n }\n\n .color-provider .color-trigger-swatch::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 4px,\n var(--checkerboard-light) 4px,\n var(--checkerboard-light) 8px\n );\n }\n\n .color-provider .color-trigger-swatch::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background-color: var(--preview-color, transparent);\n }\n\n .color-provider .color-trigger-value {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .color .controls {\n @apply pb-3 px-3 space-y-3;\n }\n\n .input-group {\n width: 100%;\n }\n\n .input-group > div:first-child {\n flex: 1;\n min-width: 0;\n }\n\n .input-group .input {\n width: 100%;\n }\n\n .input-group .format {\n flex-shrink: 0;\n width: 85px;\n }\n\n .color[data-size=\"sm\"] .format {\n width: 75px;\n }\n\n .canvas {\n position: relative;\n width: 96%;\n @apply mx-auto mt-2;\n cursor: crosshair;\n touch-action: none;\n display: flex;\n flex-direction: column;\n min-height: 160px;\n }\n\n .canvas[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .canvas .canvas-inner {\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n }\n\n .canvas .canvas-gradient-hue {\n position: absolute;\n inset: 0;\n overflow: hidden;\n }\n\n .canvas .canvas-gradient-saturation {\n position: absolute;\n inset: 0;\n background: linear-gradient(to right, rgb(255, 255, 255), transparent);\n }\n\n .canvas .canvas-gradient-brightness {\n position: absolute;\n inset: 0;\n background: linear-gradient(to top, rgb(0, 0, 0), transparent);\n }\n\n .canvas .canvas-pointer {\n --pointer-border: color-mix(in srgb, var(--foreground-200) 50%, transparent);\n\n position: absolute;\n width: 12px;\n height: 12px;\n border-radius: var(--radius-full);\n border: 2px solid var(--pointer-border);\n box-shadow: 0 0 0 1px rgb(0 0 0 / 0.3), 0 2px 4px rgb(0 0 0 / 0.3);\n pointer-events: none;\n transform: translate(-50%, -50%);\n z-index: 10;\n }\n\n .hue-slider {\n --slider-track-size: 16px;\n --slider-thumb-size: 12px;\n --slider-hit-size: 16px;\n --slider-track-radius: var(--radius-full);\n --slider-track-border: var(--border-width-base, 1px) solid var(--background-border);\n --slider-track-background: linear-gradient(\n to right,\n hsl(0, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(360, 100%, 50%)\n );\n --slider-range-display: none;\n --slider-thumb-scale-active: 1;\n\n width: 100%;\n min-height: 16px;\n border-radius: var(--radius-full);\n }\n\n .hue-slider .hue-track {\n position: relative;\n width: 100%;\n }\n\n .hue-slider .hue-thumb {\n --thumb-border: white;\n --thumb-background: white;\n --slider-thumb-background: var(--thumb-background);\n --slider-thumb-border: 2px solid var(--thumb-border);\n --slider-thumb-shadow: 0 2px 4px rgb(0 0 0 / 0.3);\n --slider-thumb-shadow-hover: 0 2px 6px rgb(0 0 0 / 0.4);\n --slider-thumb-shadow-active: 0 1px 3px rgb(0 0 0 / 0.3);\n\n border-radius: var(--radius-full);\n }\n\n .hue-slider .hue-thumb[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .hue-slider .hue-thumb[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n box-shadow: var(--slider-thumb-shadow-hover);\n }\n\n .hue-slider .hue-thumb[data-pressed=\"true\"] {\n box-shadow: var(--slider-thumb-shadow-active);\n }\n\n .opacity-slider {\n --slider-track-size: 12px;\n --slider-thumb-size: 10px;\n --slider-hit-size: 12px;\n --slider-track-radius: var(--radius-full);\n --slider-track-border: var(--border-width-base, 1px) solid var(--background-border);\n --slider-range-display: none;\n --slider-thumb-scale-active: 1;\n --checkerboard-dark: var(--background-800);\n --checkerboard-light: var(--background-700);\n --slider-track-background:\n linear-gradient(to right, transparent, var(--color-slider-opacity-color, rgb(0, 0, 0))),\n repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 10px,\n var(--checkerboard-light) 10px,\n var(--checkerboard-light) 20px\n );\n\n width: 100%;\n min-height: 12px;\n border-radius: var(--radius-full);\n }\n\n .opacity-slider .opacity-track {\n position: relative;\n width: 100%;\n overflow: hidden;\n }\n\n .opacity-slider .opacity-thumb {\n --thumb-border: white;\n --thumb-background: white;\n --slider-thumb-background: var(--thumb-background);\n --slider-thumb-border: 2px solid var(--thumb-border);\n --slider-thumb-shadow: 0 2px 4px rgb(0 0 0 / 0.3);\n --slider-thumb-shadow-hover: 0 2px 6px rgb(0 0 0 / 0.4);\n --slider-thumb-shadow-active: 0 1px 3px rgb(0 0 0 / 0.3);\n\n border-radius: var(--radius-full);\n }\n\n .opacity-slider .opacity-thumb[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .opacity-slider .opacity-thumb[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n box-shadow: var(--slider-thumb-shadow-hover);\n }\n\n .opacity-slider .opacity-thumb[data-pressed=\"true\"] {\n box-shadow: var(--slider-thumb-shadow-active);\n }\n\n .recent-colors {\n display: flex;\n gap: 0.5rem;\n overflow-x: auto;\n padding-bottom: 0.25rem;\n }\n\n .recent-colors .recent-color-swatch {\n flex-shrink: 0;\n width: 32px;\n height: 32px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n cursor: pointer;\n background: none;\n padding: 0;\n outline: none;\n transition:\n box-shadow var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .recent-colors .recent-color-swatch:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n transform: scale(1.1);\n box-shadow: 0 0 0 2px var(--focus-visible);\n }\n\n .recent-colors .recent-color-swatch:active {\n transform: scale(0.95);\n }\n\n .recent-colors .recent-color-swatch:focus-visible {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .preview-swatch {\n --checkerboard-dark: var(--background-700);\n --checkerboard-light: var(--background-800);\n\n position: relative;\n width: 36px;\n height: 36px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n box-shadow: 0 1px 3px rgb(0 0 0 / 0.1);\n overflow: hidden;\n flex-shrink: 0;\n }\n\n .preview-swatch::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 6px,\n var(--checkerboard-light) 6px,\n var(--checkerboard-light) 12px\n );\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 1;\n }\n\n .preview-swatch::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background-color: var(--preview-color, transparent);\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 2;\n }\n\n .preview {\n --checkerboard-dark: var(--background-700);\n --checkerboard-light: var(--background-800);\n\n position: relative;\n width: 64px;\n height: 64px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n box-shadow: 0 2px 8px rgb(0 0 0 / 0.2);\n overflow: hidden;\n }\n\n .preview::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 10px,\n var(--checkerboard-light) 10px,\n var(--checkerboard-light) 20px\n );\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 1;\n }\n}\n",
1896
2400
  "styleableParts": [
1897
2401
  {
1898
- "name": "root"
1899
- },
1900
- {
1901
- "name": "header"
2402
+ "name": "provider"
1902
2403
  },
1903
2404
  {
1904
- "name": "body"
2405
+ "name": "root"
1905
2406
  },
1906
2407
  {
1907
- "name": "viewport"
1908
- }
1909
- ],
1910
- "cssVariables": [
1911
- {
1912
- "name": "--border-color",
1913
- "value": "var(--background-700)",
1914
- "defaultValue": null,
1915
- "referencedVars": [
1916
- "--background-700"
1917
- ],
1918
- "variant": ".code"
2408
+ "name": "trigger"
1919
2409
  },
1920
2410
  {
1921
- "name": "--header-bg",
1922
- "value": "mix(var(--background-900) 90%, transparent)",
1923
- "defaultValue": null,
1924
- "referencedVars": [
1925
- "--background-900"
1926
- ],
1927
- "variant": ".code"
2411
+ "name": "triggerSwatch"
1928
2412
  },
1929
2413
  {
1930
- "name": "--scroll-track-bg",
1931
- "value": "mix(var(--background-950) 50%, transparent)",
1932
- "defaultValue": null,
1933
- "referencedVars": [
1934
- "--background-950"
1935
- ],
1936
- "variant": ".code"
1937
- }
1938
- ]
1939
- },
1940
- "color": {
1941
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .color {\n --background: color-mix(in srgb, var(--background-800) 30%, transparent);\n --background-border: var(--background-700);\n --focus-visible: var(--accent-500);\n\n display: flex;\n flex-direction: column;\n gap: 1rem;\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n width: 260px;\n }\n\n .color[data-disabled=\"true\"] {\n opacity: 0.5;\n pointer-events: none;\n }\n\n .controls {\n @apply pb-3 px-3 space-y-3;\n }\n\n .input-group {\n width: 100%;\n }\n\n .input-group > div:first-child {\n flex: 1;\n min-width: 0;\n }\n\n .input {\n width: 100%;\n }\n\n .format {\n flex-shrink: 0;\n width: 85px;\n }\n\n .color[data-size=\"sm\"] .format {\n width: 75px;\n }\n\n .canvas {\n position: relative;\n width: 96%;\n @apply mx-auto mt-2;\n cursor: crosshair;\n touch-action: none;\n display: flex;\n flex-direction: column;\n min-height: 160px;\n }\n\n .canvas[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .canvas-inner {\n position: relative;\n width: 100%;\n flex: 1;\n overflow: hidden;\n }\n\n .canvas-gradient-hue {\n position: absolute;\n inset: 0;\n overflow: hidden;\n }\n\n .canvas-gradient-saturation {\n position: absolute;\n inset: 0;\n background: linear-gradient(to right, rgb(255, 255, 255), transparent);\n }\n\n .canvas-gradient-brightness {\n position: absolute;\n inset: 0;\n background: linear-gradient(to top, rgb(0, 0, 0), transparent);\n }\n\n .canvas-pointer {\n --pointer-border: color-mix(in srgb, var(--foreground-200) 50%, transparent);\n\n position: absolute;\n width: 12px;\n height: 12px;\n border-radius: var(--radius-full);\n border: 2px solid var(--pointer-border);\n box-shadow: 0 0 0 1px rgb(0 0 0 / 0.3), 0 2px 4px rgb(0 0 0 / 0.3);\n pointer-events: none;\n transform: translate(-50%, -50%);\n z-index: 10;\n }\n\n .hue-slider {\n display: flex;\n align-items: center;\n height: 16px;\n border-radius: var(--radius-full);\n position: relative;\n cursor: pointer;\n touch-action: none;\n overflow: hidden;\n }\n\n .hue-track {\n position: relative;\n width: 100%;\n height: 100%;\n border-radius: var(--radius-full);\n background: linear-gradient(\n to right,\n hsl(0, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(360, 100%, 50%)\n );\n border: var(--border-width-base, 1px) solid var(--background-border);\n }\n\n .hue-thumb {\n --thumb-border: white;\n --thumb-background: white;\n\n position: absolute;\n width: 12px;\n height: 12px;\n border-radius: var(--radius-full);\n border: 2px solid var(--thumb-border);\n box-shadow: 0 2px 4px rgb(0 0 0 / 0.3);\n top: 50%;\n transform: translateY(-50%) translateX(-50%);\n background: var(--thumb-background);\n pointer-events: none;\n }\n\n .hue-slider[data-focus-visible=\"true\"] .hue-thumb {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .hue-thumb:hover {\n box-shadow: 0 2px 6px rgb(0 0 0 / 0.4);\n }\n\n .hue-thumb:active {\n box-shadow: 0 1px 3px rgb(0 0 0 / 0.3);\n }\n\n .opacity-slider {\n display: flex;\n align-items: center;\n height: 12px;\n border-radius: var(--radius-full);\n position: relative;\n cursor: pointer;\n touch-action: none;\n overflow: hidden;\n }\n\n .opacity-track {\n --checkerboard-dark: var(--background-800);\n --checkerboard-light: var(--background-700);\n\n position: relative;\n width: 100%;\n height: 100%;\n border-radius: var(--radius-full);\n border: var(--border-width-base, 1px) solid var(--background-border);\n overflow: hidden;\n }\n\n .opacity-thumb {\n --thumb-border: white;\n --thumb-background: white;\n\n position: absolute;\n width: 10px;\n height: 10px;\n border-radius: var(--radius-full);\n border: 2px solid var(--thumb-border);\n box-shadow: 0 2px 4px rgb(0 0 0 / 0.3);\n top: 50%;\n transform: translateY(-50%) translateX(-50%);\n background: var(--thumb-background);\n pointer-events: none;\n }\n\n .opacity-slider[data-focus-visible=\"true\"] .opacity-thumb {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .opacity-thumb:hover {\n box-shadow: 0 2px 6px rgb(0 0 0 / 0.4);\n }\n\n .opacity-thumb:active {\n box-shadow: 0 1px 3px rgb(0 0 0 / 0.3);\n }\n\n .recent-colors {\n display: flex;\n gap: 0.5rem;\n overflow-x: auto;\n padding-bottom: 0.25rem;\n }\n\n .recent-color-swatch {\n flex-shrink: 0;\n width: 32px;\n height: 32px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n cursor: pointer;\n background: none;\n padding: 0;\n outline: none;\n }\n\n .recent-color-swatch:hover {\n transform: scale(1.1);\n box-shadow: 0 0 0 2px var(--focus-visible);\n }\n\n .recent-color-swatch:active {\n transform: scale(0.95);\n }\n\n .recent-color-swatch:focus-visible {\n outline: 2px solid var(--focus-visible);\n outline-offset: 2px;\n }\n\n .preview-swatch {\n --checkerboard-dark: var(--background-700);\n --checkerboard-light: var(--background-800);\n\n position: relative;\n width: 36px;\n height: 36px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n box-shadow: 0 1px 3px rgb(0 0 0 / 0.1);\n overflow: hidden;\n flex-shrink: 0;\n }\n\n .preview-swatch::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 6px,\n var(--checkerboard-light) 6px,\n var(--checkerboard-light) 12px\n );\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 1;\n }\n\n .preview-swatch::after {\n content: \"\";\n position: absolute;\n inset: 0;\n background-color: var(--preview-color, transparent);\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 2;\n }\n\n .preview {\n --checkerboard-dark: var(--background-700);\n --checkerboard-light: var(--background-800);\n\n position: relative;\n width: 64px;\n height: 64px;\n border-radius: var(--radius-sm);\n border: var(--border-width-base, 1px) solid var(--background-border);\n box-shadow: 0 2px 8px rgb(0 0 0 / 0.2);\n overflow: hidden;\n }\n\n .preview::before {\n content: \"\";\n position: absolute;\n inset: 0;\n background-image: repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 10px,\n var(--checkerboard-light) 10px,\n var(--checkerboard-light) 20px\n );\n border-radius: var(--radius-sm);\n pointer-events: none;\n z-index: 1;\n }\n}\n",
1942
- "styleableParts": [
1943
- {
1944
- "name": "root"
2414
+ "name": "triggerValue"
1945
2415
  },
1946
2416
  {
1947
2417
  "name": "controls"
@@ -2030,36 +2500,280 @@
2030
2500
  "variant": ".color"
2031
2501
  },
2032
2502
  {
2033
- "name": "--pointer-border",
2034
- "value": "color-mix(in srgb, var(--foreground-200) 50%, transparent)",
2503
+ "name": "--trigger-background",
2504
+ "value": "color-mix(in srgb, var(--background-800) 35%, transparent)",
2035
2505
  "defaultValue": null,
2036
2506
  "referencedVars": [
2037
- "--foreground-200"
2507
+ "--background-800"
2038
2508
  ],
2039
- "variant": ".canvas-pointer"
2509
+ "variant": ".color-provider .color-trigger"
2040
2510
  },
2041
2511
  {
2042
- "name": "--thumb-border",
2043
- "value": "white",
2512
+ "name": "--trigger-background-hover",
2513
+ "value": "color-mix(in srgb, var(--background-700) 45%, transparent)",
2044
2514
  "defaultValue": null,
2045
- "referencedVars": [],
2046
- "variant": ".hue-thumb"
2515
+ "referencedVars": [
2516
+ "--background-700"
2517
+ ],
2518
+ "variant": ".color-provider .color-trigger"
2047
2519
  },
2048
2520
  {
2049
- "name": "--thumb-background",
2050
- "value": "white",
2521
+ "name": "--trigger-border",
2522
+ "value": "var(--background-700)",
2051
2523
  "defaultValue": null,
2052
- "referencedVars": [],
2053
- "variant": ".hue-thumb"
2524
+ "referencedVars": [
2525
+ "--background-700"
2526
+ ],
2527
+ "variant": ".color-provider .color-trigger"
2054
2528
  },
2055
2529
  {
2056
- "name": "--checkerboard-dark",
2057
- "value": "var(--background-800)",
2530
+ "name": "--trigger-text",
2531
+ "value": "var(--foreground-200)",
2058
2532
  "defaultValue": null,
2059
2533
  "referencedVars": [
2060
- "--background-800"
2534
+ "--foreground-200"
2535
+ ],
2536
+ "variant": ".color-provider .color-trigger"
2537
+ },
2538
+ {
2539
+ "name": "--background-border",
2540
+ "value": "var(--background-700)",
2541
+ "defaultValue": null,
2542
+ "referencedVars": [
2543
+ "--background-700"
2544
+ ],
2545
+ "variant": ".color-provider .color-trigger"
2546
+ },
2547
+ {
2548
+ "name": "--focus-visible",
2549
+ "value": "var(--accent-500)",
2550
+ "defaultValue": null,
2551
+ "referencedVars": [
2552
+ "--accent-500"
2061
2553
  ],
2062
- "variant": ".opacity-track"
2554
+ "variant": ".color-provider .color-trigger"
2555
+ },
2556
+ {
2557
+ "name": "--checkerboard-dark",
2558
+ "value": "var(--background-700)",
2559
+ "defaultValue": null,
2560
+ "referencedVars": [
2561
+ "--background-700"
2562
+ ],
2563
+ "variant": ".color-provider .color-trigger"
2564
+ },
2565
+ {
2566
+ "name": "--checkerboard-light",
2567
+ "value": "var(--background-800)",
2568
+ "defaultValue": null,
2569
+ "referencedVars": [
2570
+ "--background-800"
2571
+ ],
2572
+ "variant": ".color-provider .color-trigger"
2573
+ },
2574
+ {
2575
+ "name": "--hover-transition-duration",
2576
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2577
+ "defaultValue": "0ms",
2578
+ "referencedVars": [
2579
+ "--hover-transition-enter-duration"
2580
+ ],
2581
+ "variant": ".color-provider .color-trigger:hover"
2582
+ },
2583
+ {
2584
+ "name": "--pointer-border",
2585
+ "value": "color-mix(in srgb, var(--foreground-200) 50%, transparent)",
2586
+ "defaultValue": null,
2587
+ "referencedVars": [
2588
+ "--foreground-200"
2589
+ ],
2590
+ "variant": ".canvas .canvas-pointer"
2591
+ },
2592
+ {
2593
+ "name": "--slider-track-size",
2594
+ "value": "16px",
2595
+ "defaultValue": null,
2596
+ "referencedVars": [],
2597
+ "variant": ".hue-slider"
2598
+ },
2599
+ {
2600
+ "name": "--slider-thumb-size",
2601
+ "value": "12px",
2602
+ "defaultValue": null,
2603
+ "referencedVars": [],
2604
+ "variant": ".hue-slider"
2605
+ },
2606
+ {
2607
+ "name": "--slider-hit-size",
2608
+ "value": "16px",
2609
+ "defaultValue": null,
2610
+ "referencedVars": [],
2611
+ "variant": ".hue-slider"
2612
+ },
2613
+ {
2614
+ "name": "--slider-track-radius",
2615
+ "value": "var(--radius-full)",
2616
+ "defaultValue": null,
2617
+ "referencedVars": [
2618
+ "--radius-full"
2619
+ ],
2620
+ "variant": ".hue-slider"
2621
+ },
2622
+ {
2623
+ "name": "--slider-track-border",
2624
+ "value": "var(--border-width-base, 1px) solid var(--background-border)",
2625
+ "defaultValue": "1px",
2626
+ "referencedVars": [
2627
+ "--border-width-base",
2628
+ "--background-border"
2629
+ ],
2630
+ "variant": ".hue-slider"
2631
+ },
2632
+ {
2633
+ "name": "--slider-track-background",
2634
+ "value": "linear-gradient(\n to right,\n hsl(0, 100%, 50%),\n hsl(60, 100%, 50%),\n hsl(120, 100%, 50%),\n hsl(180, 100%, 50%),\n hsl(240, 100%, 50%),\n hsl(300, 100%, 50%),\n hsl(360, 100%, 50%)\n )",
2635
+ "defaultValue": null,
2636
+ "referencedVars": [],
2637
+ "variant": ".hue-slider"
2638
+ },
2639
+ {
2640
+ "name": "--slider-range-display",
2641
+ "value": "none",
2642
+ "defaultValue": null,
2643
+ "referencedVars": [],
2644
+ "variant": ".hue-slider"
2645
+ },
2646
+ {
2647
+ "name": "--slider-thumb-scale-active",
2648
+ "value": "1",
2649
+ "defaultValue": null,
2650
+ "referencedVars": [],
2651
+ "variant": ".hue-slider"
2652
+ },
2653
+ {
2654
+ "name": "--thumb-border",
2655
+ "value": "white",
2656
+ "defaultValue": null,
2657
+ "referencedVars": [],
2658
+ "variant": ".hue-slider .hue-thumb"
2659
+ },
2660
+ {
2661
+ "name": "--thumb-background",
2662
+ "value": "white",
2663
+ "defaultValue": null,
2664
+ "referencedVars": [],
2665
+ "variant": ".hue-slider .hue-thumb"
2666
+ },
2667
+ {
2668
+ "name": "--slider-thumb-background",
2669
+ "value": "var(--thumb-background)",
2670
+ "defaultValue": null,
2671
+ "referencedVars": [
2672
+ "--thumb-background"
2673
+ ],
2674
+ "variant": ".hue-slider .hue-thumb"
2675
+ },
2676
+ {
2677
+ "name": "--slider-thumb-border",
2678
+ "value": "2px solid var(--thumb-border)",
2679
+ "defaultValue": null,
2680
+ "referencedVars": [
2681
+ "--thumb-border"
2682
+ ],
2683
+ "variant": ".hue-slider .hue-thumb"
2684
+ },
2685
+ {
2686
+ "name": "--slider-thumb-shadow",
2687
+ "value": "0 2px 4px rgb(0 0 0 / 0.3)",
2688
+ "defaultValue": null,
2689
+ "referencedVars": [],
2690
+ "variant": ".hue-slider .hue-thumb"
2691
+ },
2692
+ {
2693
+ "name": "--slider-thumb-shadow-hover",
2694
+ "value": "0 2px 6px rgb(0 0 0 / 0.4)",
2695
+ "defaultValue": null,
2696
+ "referencedVars": [],
2697
+ "variant": ".hue-slider .hue-thumb"
2698
+ },
2699
+ {
2700
+ "name": "--slider-thumb-shadow-active",
2701
+ "value": "0 1px 3px rgb(0 0 0 / 0.3)",
2702
+ "defaultValue": null,
2703
+ "referencedVars": [],
2704
+ "variant": ".hue-slider .hue-thumb"
2705
+ },
2706
+ {
2707
+ "name": "--hover-transition-duration",
2708
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2709
+ "defaultValue": "0ms",
2710
+ "referencedVars": [
2711
+ "--hover-transition-enter-duration"
2712
+ ],
2713
+ "variant": ".hue-slider .hue-thumb[data-hovered=\"true\"]"
2714
+ },
2715
+ {
2716
+ "name": "--slider-track-size",
2717
+ "value": "12px",
2718
+ "defaultValue": null,
2719
+ "referencedVars": [],
2720
+ "variant": ".opacity-slider"
2721
+ },
2722
+ {
2723
+ "name": "--slider-thumb-size",
2724
+ "value": "10px",
2725
+ "defaultValue": null,
2726
+ "referencedVars": [],
2727
+ "variant": ".opacity-slider"
2728
+ },
2729
+ {
2730
+ "name": "--slider-hit-size",
2731
+ "value": "12px",
2732
+ "defaultValue": null,
2733
+ "referencedVars": [],
2734
+ "variant": ".opacity-slider"
2735
+ },
2736
+ {
2737
+ "name": "--slider-track-radius",
2738
+ "value": "var(--radius-full)",
2739
+ "defaultValue": null,
2740
+ "referencedVars": [
2741
+ "--radius-full"
2742
+ ],
2743
+ "variant": ".opacity-slider"
2744
+ },
2745
+ {
2746
+ "name": "--slider-track-border",
2747
+ "value": "var(--border-width-base, 1px) solid var(--background-border)",
2748
+ "defaultValue": "1px",
2749
+ "referencedVars": [
2750
+ "--border-width-base",
2751
+ "--background-border"
2752
+ ],
2753
+ "variant": ".opacity-slider"
2754
+ },
2755
+ {
2756
+ "name": "--slider-range-display",
2757
+ "value": "none",
2758
+ "defaultValue": null,
2759
+ "referencedVars": [],
2760
+ "variant": ".opacity-slider"
2761
+ },
2762
+ {
2763
+ "name": "--slider-thumb-scale-active",
2764
+ "value": "1",
2765
+ "defaultValue": null,
2766
+ "referencedVars": [],
2767
+ "variant": ".opacity-slider"
2768
+ },
2769
+ {
2770
+ "name": "--checkerboard-dark",
2771
+ "value": "var(--background-800)",
2772
+ "defaultValue": null,
2773
+ "referencedVars": [
2774
+ "--background-800"
2775
+ ],
2776
+ "variant": ".opacity-slider"
2063
2777
  },
2064
2778
  {
2065
2779
  "name": "--checkerboard-light",
@@ -2068,21 +2782,89 @@
2068
2782
  "referencedVars": [
2069
2783
  "--background-700"
2070
2784
  ],
2071
- "variant": ".opacity-track"
2785
+ "variant": ".opacity-slider"
2786
+ },
2787
+ {
2788
+ "name": "--slider-track-background",
2789
+ "value": "linear-gradient(to right, transparent, var(--color-slider-opacity-color, rgb(0, 0, 0))),\n repeating-linear-gradient(\n 45deg,\n var(--checkerboard-dark),\n var(--checkerboard-dark) 10px,\n var(--checkerboard-light) 10px,\n var(--checkerboard-light) 20px\n )",
2790
+ "defaultValue": "rgb(0, 0, 0",
2791
+ "referencedVars": [
2792
+ "--color-slider-opacity-color",
2793
+ "--checkerboard-dark",
2794
+ "--checkerboard-light"
2795
+ ],
2796
+ "variant": ".opacity-slider"
2072
2797
  },
2073
2798
  {
2074
2799
  "name": "--thumb-border",
2075
2800
  "value": "white",
2076
2801
  "defaultValue": null,
2077
2802
  "referencedVars": [],
2078
- "variant": ".opacity-thumb"
2803
+ "variant": ".opacity-slider .opacity-thumb"
2079
2804
  },
2080
2805
  {
2081
2806
  "name": "--thumb-background",
2082
2807
  "value": "white",
2083
2808
  "defaultValue": null,
2084
2809
  "referencedVars": [],
2085
- "variant": ".opacity-thumb"
2810
+ "variant": ".opacity-slider .opacity-thumb"
2811
+ },
2812
+ {
2813
+ "name": "--slider-thumb-background",
2814
+ "value": "var(--thumb-background)",
2815
+ "defaultValue": null,
2816
+ "referencedVars": [
2817
+ "--thumb-background"
2818
+ ],
2819
+ "variant": ".opacity-slider .opacity-thumb"
2820
+ },
2821
+ {
2822
+ "name": "--slider-thumb-border",
2823
+ "value": "2px solid var(--thumb-border)",
2824
+ "defaultValue": null,
2825
+ "referencedVars": [
2826
+ "--thumb-border"
2827
+ ],
2828
+ "variant": ".opacity-slider .opacity-thumb"
2829
+ },
2830
+ {
2831
+ "name": "--slider-thumb-shadow",
2832
+ "value": "0 2px 4px rgb(0 0 0 / 0.3)",
2833
+ "defaultValue": null,
2834
+ "referencedVars": [],
2835
+ "variant": ".opacity-slider .opacity-thumb"
2836
+ },
2837
+ {
2838
+ "name": "--slider-thumb-shadow-hover",
2839
+ "value": "0 2px 6px rgb(0 0 0 / 0.4)",
2840
+ "defaultValue": null,
2841
+ "referencedVars": [],
2842
+ "variant": ".opacity-slider .opacity-thumb"
2843
+ },
2844
+ {
2845
+ "name": "--slider-thumb-shadow-active",
2846
+ "value": "0 1px 3px rgb(0 0 0 / 0.3)",
2847
+ "defaultValue": null,
2848
+ "referencedVars": [],
2849
+ "variant": ".opacity-slider .opacity-thumb"
2850
+ },
2851
+ {
2852
+ "name": "--hover-transition-duration",
2853
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2854
+ "defaultValue": "0ms",
2855
+ "referencedVars": [
2856
+ "--hover-transition-enter-duration"
2857
+ ],
2858
+ "variant": ".opacity-slider .opacity-thumb[data-hovered=\"true\"]"
2859
+ },
2860
+ {
2861
+ "name": "--hover-transition-duration",
2862
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2863
+ "defaultValue": "0ms",
2864
+ "referencedVars": [
2865
+ "--hover-transition-enter-duration"
2866
+ ],
2867
+ "variant": ".recent-colors .recent-color-swatch:hover"
2086
2868
  },
2087
2869
  {
2088
2870
  "name": "--checkerboard-dark",
@@ -2122,8 +2904,90 @@
2122
2904
  }
2123
2905
  ]
2124
2906
  },
2907
+ "code": {
2908
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .code {\n --border-color: var(--background-700);\n --header-bg: mix(var(--background-900) 90%, transparent);\n --scroll-track-bg: mix(var(--background-950) 50%, transparent);\n\n max-height: 52.5rem;\n border-radius: var(--radius-sm);\n border: 1px solid var(--border-color);\n @apply flex w-full min-w-0 flex-col overflow-hidden;\n }\n\n .header {\n flex: none;\n background-color: var(--header-bg);\n @apply flex items-center justify-between px-3 py-1.5;\n font-size: var(--text-sm);\n font-weight: var(--font-weight-semibold);\n border-bottom: 1px solid var(--border-color);\n color: var(--foreground-400);\n }\n\n\n .body {\n @apply relative flex min-h-0 flex-1 flex-col;\n flex: 1;\n }\n\n .viewport { @apply overflow-hidden; }\n\n .viewport :global(pre) {\n background: transparent;\n @apply m-0 p-0;\n width: fit-content;\n }\n\n .viewport :global(code) {\n color: var(--foreground-300);\n white-space: pre;\n }\n\n .viewport::-webkit-scrollbar {\n width: 0.5rem;\n }\n\n .viewport::-webkit-scrollbar-track {\n background: transparent;\n }\n\n .viewport::-webkit-scrollbar-thumb {\n background-color: var(--background-700);\n border-radius: 9999px;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .viewport::-webkit-scrollbar-thumb:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-600);\n }\n\n .scroll-track {\n flex: none;\n @apply w-full;\n overflow-x: auto;\n background-color: var(--scroll-track-bg);\n backdrop-filter: blur(4px);\n }\n\n .expand-button {\n @apply flex w-full items-center gap-3 px-4 py-2 cursor-pointer;\n color: var(--foreground-300);\n font-size: var(--text-sm);\n font-weight: var(--font-weight-medium);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n border-top: 1px solid var(--border-color);\n background: transparent;\n border-left: none;\n border-right: none;\n border-bottom: none;\n font-family: inherit;\n }\n\n .expand-button:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-800);\n }\n\n .expand-icon { @apply shrink-0; color: var(--foreground-400); }\n\n .copy-button {\n @apply absolute right-2 top-2 flex items-center justify-center p-1 cursor-pointer;\n border-radius: var(--radius-sm);\n color: var(--foreground-400);\n opacity: 0;\n transition:\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n background: transparent;\n border: none;\n z-index: 1;\n }\n\n .copy-button:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-800);\n color: var(--foreground-300);\n }\n\n .copy-button:focus,\n .body:hover .copy-button {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n opacity: 1;\n }\n}\n",
2909
+ "styleableParts": [
2910
+ {
2911
+ "name": "root"
2912
+ },
2913
+ {
2914
+ "name": "header"
2915
+ },
2916
+ {
2917
+ "name": "body"
2918
+ },
2919
+ {
2920
+ "name": "viewport"
2921
+ }
2922
+ ],
2923
+ "cssVariables": [
2924
+ {
2925
+ "name": "--border-color",
2926
+ "value": "var(--background-700)",
2927
+ "defaultValue": null,
2928
+ "referencedVars": [
2929
+ "--background-700"
2930
+ ],
2931
+ "variant": ".code"
2932
+ },
2933
+ {
2934
+ "name": "--header-bg",
2935
+ "value": "mix(var(--background-900) 90%, transparent)",
2936
+ "defaultValue": null,
2937
+ "referencedVars": [
2938
+ "--background-900"
2939
+ ],
2940
+ "variant": ".code"
2941
+ },
2942
+ {
2943
+ "name": "--scroll-track-bg",
2944
+ "value": "mix(var(--background-950) 50%, transparent)",
2945
+ "defaultValue": null,
2946
+ "referencedVars": [
2947
+ "--background-950"
2948
+ ],
2949
+ "variant": ".code"
2950
+ },
2951
+ {
2952
+ "name": "--hover-transition-duration",
2953
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2954
+ "defaultValue": "0ms",
2955
+ "referencedVars": [
2956
+ "--hover-transition-enter-duration"
2957
+ ],
2958
+ "variant": ".viewport::-webkit-scrollbar-thumb:hover"
2959
+ },
2960
+ {
2961
+ "name": "--hover-transition-duration",
2962
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2963
+ "defaultValue": "0ms",
2964
+ "referencedVars": [
2965
+ "--hover-transition-enter-duration"
2966
+ ],
2967
+ "variant": ".expand-button:hover"
2968
+ },
2969
+ {
2970
+ "name": "--hover-transition-duration",
2971
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2972
+ "defaultValue": "0ms",
2973
+ "referencedVars": [
2974
+ "--hover-transition-enter-duration"
2975
+ ],
2976
+ "variant": ".copy-button:hover"
2977
+ },
2978
+ {
2979
+ "name": "--hover-transition-duration",
2980
+ "value": "var(--hover-transition-enter-duration, 0ms)",
2981
+ "defaultValue": "0ms",
2982
+ "referencedVars": [
2983
+ "--hover-transition-enter-duration"
2984
+ ],
2985
+ "variant": ".copy-button:focus,\n .body:hover .copy-button"
2986
+ }
2987
+ ]
2988
+ },
2125
2989
  "checkbox": {
2126
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .checkbox-root {\n @apply inline-flex items-center justify-center gap-3;\n }\n\n .container {\n @apply relative inline-flex items-center justify-center;\n }\n\n .checkbox {\n @apply relative h-5 w-5 cursor-pointer appearance-none;\n\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-xs, 0.25rem);\n outline: none;\n transition: all 200ms var(--ease-snappy-pop), transform 200ms var(--ease-snappy-pop);\n\n &:hover:not([data-disabled=\"true\"]) {\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n }\n\n &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n border-color: var(--background-selected-border);\n }\n\n &[data-indeterminate=\"true\"] {\n background-color: var(--background-indeterminate);\n border-color: var(--background-indeterminate-border);\n }\n\n &[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--disabled-opacity, 0.6);\n pointer-events: none;\n }\n\n /* Sizes */\n &.size-sm {\n @apply h-4 w-4;\n }\n\n &.size-md {\n @apply h-5 w-5;\n }\n\n &.size-lg {\n @apply h-6 w-6;\n }\n }\n\n .checkmark,\n .indeterminate {\n @apply absolute;\n inset: 50%;\n width: 65%;\n height: 65%;\n transform: translate(-50%, -50%);\n color: var(--icon-foreground);\n pointer-events: none;\n }\n\n .label {\n @apply cursor-pointer select-none;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-disabled=\"true\"] {\n @apply opacity-60 cursor-not-allowed;\n }\n }\n\n .label-sm {\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .label-md {\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .label-lg {\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .helper-text {\n @apply text-sm ml-8;\n transition: color 200ms var(--ease-snappy-pop);\n color: var(--helper-text-foreground);\n\n &[data-error=\"true\"] {\n color: var(--helper-text-error-foreground);\n }\n }\n}\n",
2990
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .checkbox-root {\n @apply inline-grid gap-x-3;\n grid-template-columns: auto 1fr;\n grid-template-rows: auto auto;\n }\n\n .container {\n @apply relative inline-flex items-center justify-center;\n }\n\n .checkbox {\n @apply relative h-5 w-5 cursor-pointer appearance-none;\n\n background-color: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-xs, 0.25rem);\n outline: none;\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &:hover:not([data-disabled=\"true\"]) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n }\n\n &[data-selected=\"true\"] {\n background-color: var(--background-selected);\n border-color: var(--background-selected-border);\n }\n\n &[data-indeterminate=\"true\"] {\n background-color: var(--background-indeterminate);\n border-color: var(--background-indeterminate-border);\n }\n\n &[data-invalid=\"true\"] {\n border-color: var(--background-error-border, var(--danger-600));\n }\n\n &[data-invalid=\"true\"][data-selected=\"true\"],\n &[data-invalid=\"true\"][data-indeterminate=\"true\"] {\n border-color: var(--background-selected-border);\n }\n\n &[data-disabled=\"true\"] {\n cursor: not-allowed;\n opacity: var(--disabled-opacity, 0.6);\n pointer-events: none;\n }\n }\n\n .checkmark,\n .indeterminate {\n @apply absolute;\n inset: 50%;\n width: 65%;\n height: 65%;\n transform: translate(-50%, -50%);\n color: var(--icon-foreground);\n pointer-events: none;\n }\n\n .label {\n @apply cursor-pointer select-none;\n transition: color 200ms var(--ease-snappy-pop);\n\n &[data-disabled=\"true\"] {\n @apply opacity-60 cursor-not-allowed;\n }\n }\n\n .label-md {\n font-size: var(--text-sm, 0.875rem);\n font-weight: var(--font-weight-medium, 500);\n }\n\n .helper-text {\n @apply text-xs;\n grid-column: 2;\n transition: color 200ms var(--ease-snappy-pop);\n color: var(--helper-foreground);\n\n &[data-error=\"true\"] {\n color: var(--helper-error-foreground, var(--foreground-error, var(--danger-600)));\n }\n }\n}\n",
2127
2991
  "styleableParts": [
2128
2992
  {
2129
2993
  "name": "root"
@@ -2150,10 +3014,20 @@
2150
3014
  "name": "\"helper-text\""
2151
3015
  }
2152
3016
  ],
2153
- "cssVariables": []
3017
+ "cssVariables": [
3018
+ {
3019
+ "name": "--hover-transition-duration",
3020
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3021
+ "defaultValue": "0ms",
3022
+ "referencedVars": [
3023
+ "--hover-transition-enter-duration"
3024
+ ],
3025
+ "variant": ".checkbox:hover:not([data-disabled=\"true\"])"
3026
+ }
3027
+ ]
2154
3028
  },
2155
3029
  "card": {
2156
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .card {\n @apply overflow-hidden;\n background-color: var(--background, var(--background-800));\n border: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n border-radius: var(--radius-sm, 0.375rem);\n transition: background-color 0.15s ease-out, border-color 0.15s ease-out;\n }\n\n .card:hover {\n background-color: var(--background-hover, var(--background));\n border-color: var(--background-hover-border, var(--background-border, var(--border)));\n }\n\n .card[data-pressed=\"true\"] {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n border-color: var(--background-pressed-border, var(--background-hover-border, var(--background-border, var(--border))));\n }\n\n .card[data-focused=\"true\"] {\n outline: 2px solid var(--focus-visible, var(--focus-ring));\n outline-offset: 2px;\n }\n\n .header {\n @apply p-4;\n border-bottom: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n }\n\n .body {\n @apply px-4 py-2;\n }\n\n .footer {\n @apply px-2 py-2;\n background-color: var(--background, var(--background-800));\n border-top: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n }\n}\n",
3030
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .card {\n @apply overflow-hidden;\n background-color: var(--background, var(--background-800));\n color: var(--foreground, inherit);\n border: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n border-radius: var(--radius-sm, 0.375rem);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .header {\n @apply p-4;\n color: var(--foreground, inherit);\n border-bottom: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n }\n\n .body {\n @apply px-4 py-2;\n color: var(--foreground, inherit);\n }\n\n .footer {\n @apply px-2 py-2;\n color: var(--foreground, inherit);\n background-color: var(--background, var(--background-800));\n border-top: var(--border-width-base, 1px) solid var(--background-border, var(--border));\n }\n}\n",
2157
3031
  "styleableParts": [
2158
3032
  {
2159
3033
  "name": "root"
@@ -2171,7 +3045,7 @@
2171
3045
  "cssVariables": []
2172
3046
  },
2173
3047
  "button": {
2174
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .button {\n @apply inline-flex items-center justify-center gap-2 select-none cursor-pointer whitespace-nowrap;\n background-color: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n\n font-weight: var(--font-weight-medium, 500);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-tight, 1.25);\n\n &:hover:not(:disabled) {\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n }\n\n &[data-pressed=\"true\"]:not([data-disabled]) {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n border-color: var(--background-pressed-border, var(--background-hover-border, var(--background-border)));\n }\n\n &:focus-visible {\n outline: none;\n }\n\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n filter: grayscale(0.5);\n }\n }\n}\n",
3048
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .button {\n @apply inline-flex items-center justify-center gap-2 select-none cursor-pointer whitespace-nowrap;\n background-color: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n\n font-weight: var(--font-weight-medium, 500);\n font-size: var(--text-sm, 0.875rem);\n line-height: var(--leading-tight, 1.25);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &:hover:not(:disabled),\n &[data-hovered=\"true\"]:not([data-disabled=\"true\"]) {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover);\n border-color: var(--background-hover-border);\n }\n\n &[data-pressed=\"true\"]:not([data-disabled]) {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n border-color: var(--background-pressed-border, var(--background-hover-border, var(--background-border)));\n }\n\n &:focus-visible {\n outline: none;\n }\n\n &:disabled {\n opacity: 0.5;\n cursor: not-allowed;\n filter: grayscale(0.5);\n }\n }\n}\n",
2175
3049
  "styleableParts": [
2176
3050
  {
2177
3051
  "name": "root"
@@ -2183,10 +3057,20 @@
2183
3057
  "name": "icon.right"
2184
3058
  }
2185
3059
  ],
2186
- "cssVariables": []
3060
+ "cssVariables": [
3061
+ {
3062
+ "name": "--hover-transition-duration",
3063
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3064
+ "defaultValue": "0ms",
3065
+ "referencedVars": [
3066
+ "--hover-transition-enter-duration"
3067
+ ],
3068
+ "variant": ".button:hover:not(:disabled),\n .button[data-hovered=\"true\"]:not([data-disabled=\"true\"])"
3069
+ }
3070
+ ]
2187
3071
  },
2188
3072
  "banner": {
2189
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .banner {\n @apply flex w-full items-start gap-4;\n font-family: inherit;\n font-weight: var(--font-weight-medium, 500);\n line-height: var(--leading-normal, 1.5);\n background-color: var(--background, var(--background-900));\n color: var(--foreground, var(--foreground-200));\n border: var(--border-width-base, 1px) solid var(--border, var(--background-700));\n border-radius: var(--radius-sm, 0.375rem);\n transition: background-color 0.15s ease-out, border-color 0.15s ease-out;\n }\n\n .banner:hover {\n background-color: var(--background-hover, var(--background));\n border-color: var(--border-hover, var(--border));\n }\n\n .banner[data-pressed=\"true\"] {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n border-color: var(--border-pressed, var(--border-hover, var(--border)));\n }\n\n .content {\n @apply flex flex-col gap-2;\n }\n\n .iconContainer {\n @apply flex shrink-0 items-center justify-center self-start;\n }\n\n .icon {\n @apply mr-4 h-5 w-5;\n color: var(--icon-color, currentColor);\n }\n\n .dismiss {\n @apply flex h-8 w-8 shrink-0 items-center justify-center p-0 cursor-pointer;\n background-color: transparent;\n color: currentColor;\n border: none;\n border-radius: var(--radius-sm, 0.375rem);\n transition: background-color 0.15s ease-out;\n\n &:hover {\n background-color: var(--dismiss-hover-background, transparent);\n }\n\n &[data-pressed=\"true\"] {\n background-color: var(--dismiss-pressed-background, transparent);\n }\n\n &:focus-visible {\n outline: 2px solid currentColor;\n outline-offset: 2px;\n }\n }\n\n .title {\n font-weight: var(--font-weight-semibold, 600);\n font-size: inherit;\n line-height: var(--leading-tight, 1.25);\n @apply my-0;\n }\n\n .body {\n font-weight: var(--font-weight-medium, 500);\n font-size: inherit;\n line-height: var(--leading-normal, 1.5);\n @apply my-0;\n }\n}\n\n\n.banner.sm {\n @apply px-3 py-2;\n}\n\n.banner.md {\n @apply px-4 py-3;\n}\n\n.banner.lg {\n @apply px-6 py-4;\n}\n",
3073
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .banner {\n @apply flex w-full items-start gap-3 px-4 py-3;\n font-family: inherit;\n font-weight: var(--font-weight-medium, 500);\n line-height: var(--leading-normal, 1.5);\n background-color: var(--background, var(--background-900));\n color: var(--foreground, var(--foreground-200));\n border: var(--border-width-base, 1px) solid var(--border, var(--background-700));\n border-radius: var(--radius-sm, 0.375rem);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n border-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n }\n\n .banner:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--background-hover, var(--background));\n border-color: var(--border-hover, var(--border));\n }\n\n .banner[data-pressed=\"true\"] {\n background-color: var(--background-pressed, var(--background-hover, var(--background)));\n border-color: var(--border-pressed, var(--border-hover, var(--border)));\n }\n\n .content {\n @apply min-w-0 flex flex-col gap-1;\n }\n\n .iconContainer {\n @apply flex shrink-0 items-start justify-center pt-0.5;\n }\n\n .icon {\n @apply h-5 w-5;\n color: var(--icon-color, currentColor);\n }\n\n .dismiss {\n @apply flex h-8 w-8 shrink-0 items-center justify-center p-0 cursor-pointer;\n background-color: transparent;\n color: currentColor;\n border: none;\n border-radius: var(--radius-sm, 0.375rem);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n\n &:hover {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--dismiss-hover-background, transparent);\n }\n\n &[data-pressed=\"true\"] {\n background-color: var(--dismiss-pressed-background, transparent);\n }\n\n &:focus-visible {\n outline: 2px solid currentColor;\n outline-offset: 2px;\n }\n }\n\n .title {\n font-weight: var(--font-weight-semibold, 600);\n font-size: inherit;\n line-height: var(--leading-tight, 1.25);\n @apply my-0;\n }\n\n .body {\n font-weight: var(--font-weight-medium, 500);\n font-size: inherit;\n line-height: var(--leading-normal, 1.5);\n @apply my-0;\n }\n}\n",
2190
3074
  "styleableParts": [
2191
3075
  {
2192
3076
  "name": "root"
@@ -2201,25 +3085,63 @@
2201
3085
  "name": "dismiss"
2202
3086
  }
2203
3087
  ],
2204
- "cssVariables": []
3088
+ "cssVariables": [
3089
+ {
3090
+ "name": "--hover-transition-duration",
3091
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3092
+ "defaultValue": "0ms",
3093
+ "referencedVars": [
3094
+ "--hover-transition-enter-duration"
3095
+ ],
3096
+ "variant": ".banner:hover"
3097
+ },
3098
+ {
3099
+ "name": "--hover-transition-duration",
3100
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3101
+ "defaultValue": "0ms",
3102
+ "referencedVars": [
3103
+ "--hover-transition-enter-duration"
3104
+ ],
3105
+ "variant": ".dismiss:hover"
3106
+ }
3107
+ ]
2205
3108
  },
2206
3109
  "badge": {
2207
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .badge {\n @apply inline-flex items-center justify-center gap-2;\n height: fit-content;\n width: fit-content;\n background-color: var(--background);\n color: var(--foreground);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n }\n\n .badge.dismissible {\n @apply pr-0.5;\n }\n\n .pill {\n border-radius: 9999px;\n }\n\n .icon {\n @apply flex items-center shrink-0;\n }\n\n .dismiss {\n @apply ml-1 flex items-center justify-center p-1 cursor-pointer;\n border-radius: var(--radius-xs, 0.25rem);\n background: transparent;\n border: none;\n color: var(--dismiss-foreground, var(--foreground-400));\n transition: opacity 150ms var(--ease-snappy-pop), transform 150ms var(--ease-snappy-pop);\n outline: none;\n }\n\n .dismiss[data-hovered=\"true\"] {\n background: var(--dismiss-hover-background, color-mix(in srgb, var(--background-700) 80%, var(--background-900)));\n }\n\n .dismiss[data-pressed=\"true\"] {\n background: var(--dismiss-pressed-background, var(--background-700));\n transform: scale(0.95);\n }\n\n .dismiss[data-focus-visible=\"true\"] {\n box-shadow: 0 0 0 1.5px var(--dismiss-focus-visible, var(--focus-visible));\n }\n}\n",
3110
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .badge {\n @apply inline-flex items-center justify-center gap-2 select-none whitespace-nowrap px-1.5;\n height: fit-content;\n width: fit-content;\n background-color: var(--background, var(--background-800));\n color: var(--foreground, var(--foreground-200));\n border: var(--border-width-base, 1px) solid var(--background-border, var(--background-600));\n border-radius: var(--radius-sm, 0.375rem);\n font-weight: var(--font-weight-semibold, 600);\n font-size: var(--text-xs, 0.75rem);\n line-height: var(--leading-tight, 1.25);\n }\n\n .badge.dismissible {\n @apply pr-0.5;\n }\n\n .pill {\n border-radius: 9999px;\n }\n\n .icon {\n @apply flex items-center shrink-0;\n }\n\n .dismiss {\n @apply ml-1 flex shrink-0 items-center justify-center p-0 cursor-pointer;\n width: 1em;\n height: 1em;\n line-height: 1;\n border-radius: var(--radius-xs, 0.25rem);\n background-color: var(--dismiss-background, var(--background, transparent));\n color: var(--dismiss-foreground, var(--foreground, var(--foreground-400)));\n border: none;\n transition:\n opacity var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n outline: none;\n }\n\n .dismiss svg {\n width: 100%;\n height: 100%;\n }\n\n .dismiss[data-hovered=\"true\"] {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(\n --dismiss-hover-background,\n var(--background-hover, var(--dismiss-background, transparent))\n );\n }\n\n .dismiss[data-pressed=\"true\"] {\n background-color: var(\n --dismiss-pressed-background,\n var(--background-pressed, var(--background-hover, var(--dismiss-background, transparent)))\n );\n transform: scale(0.95);\n }\n\n .dismiss[data-focus-visible=\"true\"] {\n box-shadow: 0 0 0 1.5px var(--dismiss-focus-visible, var(--focus-visible, var(--foreground)));\n }\n}\n",
2208
3111
  "styleableParts": [
2209
3112
  {
2210
3113
  "name": "root"
2211
3114
  },
2212
3115
  {
2213
- "name": "icon"
3116
+ "name": "icon.left"
3117
+ },
3118
+ {
3119
+ "name": "icon.right"
3120
+ },
3121
+ {
3122
+ "name": "iconLeft"
3123
+ },
3124
+ {
3125
+ "name": "iconRight"
2214
3126
  },
2215
3127
  {
2216
3128
  "name": "dismiss"
2217
3129
  }
2218
3130
  ],
2219
- "cssVariables": []
3131
+ "cssVariables": [
3132
+ {
3133
+ "name": "--hover-transition-duration",
3134
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3135
+ "defaultValue": "0ms",
3136
+ "referencedVars": [
3137
+ "--hover-transition-enter-duration"
3138
+ ],
3139
+ "variant": ".dismiss[data-hovered=\"true\"]"
3140
+ }
3141
+ ]
2220
3142
  },
2221
3143
  "anchor": {
2222
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .preview, .anchor {\n display: inline\n }\n\n .root {\n @apply inline-block relative cursor-pointer;\n display: inline-block;\n color: var(--foreground, currentColor);\n text-decoration: none;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n\n &:hover .underline {\n background: var(--underline-background-hover, var(--foreground-400));\n }\n\n &[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible, var(--focus-ring));\n outline-offset: 2px;\n border-radius: 2px;\n }\n }\n\n .underline {\n @apply absolute left-0 right-0 bottom-0 h-px;\n background: var(--underline-background, var(--background-600));\n transform-origin: right;\n transform: scaleX(1);\n transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n pointer-events: none;\n }\n\n .preview {\n }\n}\n",
3144
+ "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .preview, .anchor {\n display: inline\n }\n\n .root {\n @apply inline-block relative cursor-pointer;\n display: inline-block;\n color: var(--foreground, currentColor);\n text-decoration: none;\n\n &:hover .underline {\n --hover-transition-duration: var(--hover-transition-enter-duration, 0ms);\n background-color: var(--underline-background-hover, var(--foreground-400));\n }\n\n &[data-focus-visible=\"true\"] {\n outline: 2px solid var(--focus-visible, var(--focus-ring));\n outline-offset: 2px;\n border-radius: 2px;\n }\n }\n\n .underline {\n @apply absolute left-0 right-0 bottom-0 h-px;\n background-color: var(--underline-background, var(--background-600));\n transform-origin: right;\n transform: scaleX(1);\n transition:\n background-color var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out)),\n transform var(--hover-transition-duration, var(--hover-transition-leave-duration, 300ms)) var(--hover-transition-timing-function, var(--ease-snappy-pop, ease-out));\n pointer-events: none;\n }\n\n .preview {\n }\n}\n",
2223
3145
  "styleableParts": [
2224
3146
  {
2225
3147
  "name": "root"
@@ -2231,6 +3153,16 @@
2231
3153
  "name": "preview"
2232
3154
  }
2233
3155
  ],
2234
- "cssVariables": []
3156
+ "cssVariables": [
3157
+ {
3158
+ "name": "--hover-transition-duration",
3159
+ "value": "var(--hover-transition-enter-duration, 0ms)",
3160
+ "defaultValue": "0ms",
3161
+ "referencedVars": [
3162
+ "--hover-transition-enter-duration"
3163
+ ],
3164
+ "variant": ".root:hover .underline"
3165
+ }
3166
+ ]
2235
3167
  }
2236
3168
  }