ui-lab-registry 0.3.43 → 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 (898) 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 +12 -13
  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 +1101 -406
  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 +1270 -446
  648. package/dist/generated-styles.js.map +1 -1
  649. package/dist/generated-styles.json +1270 -446
  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 +538 -63
  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/Group/metadata.json +3 -2
  773. package/src/components/Input/examples/03-sign-in.tsx +41 -0
  774. package/src/components/Input/examples/04-search.tsx +31 -0
  775. package/src/components/Input/examples/05-user-handle.tsx +40 -0
  776. package/src/components/Input/examples/06-api-key.tsx +48 -0
  777. package/src/components/Input/examples/07-url-validation.tsx +36 -0
  778. package/src/components/Input/examples/08-quantity.tsx +26 -0
  779. package/src/components/Input/examples/index.ts +12 -0
  780. package/src/components/Input/examples.json +30 -0
  781. package/src/components/Input/index.tsx +12 -0
  782. package/src/components/List/examples/02-review-queue.tsx +54 -0
  783. package/src/components/List/examples/03-notification-rules.tsx +80 -0
  784. package/src/components/List/examples/04-quota-editor.tsx +71 -0
  785. package/src/components/List/examples/05-permissions-matrix.tsx +91 -0
  786. package/src/components/List/examples/index.ts +8 -0
  787. package/src/components/List/examples.json +20 -0
  788. package/src/components/List/index.tsx +10 -2
  789. package/src/components/Menu/examples/03-toolbar-dropdown.tsx +35 -0
  790. package/src/components/Menu/examples/04-table-row-actions.tsx +60 -0
  791. package/src/components/Menu/examples/05-context-menu.tsx +36 -0
  792. package/src/components/Menu/examples/06-view-options.tsx +39 -0
  793. package/src/components/Menu/examples/index.ts +8 -0
  794. package/src/components/Menu/examples.json +20 -0
  795. package/src/components/Menu/index.tsx +8 -0
  796. package/src/components/Modal/examples/02-form-modal.tsx +1 -1
  797. package/src/components/Modal/examples/03-delete-confirmation.tsx +42 -0
  798. package/src/components/Modal/examples/04-create-api-key.tsx +54 -0
  799. package/src/components/Modal/examples/05-notification-settings.tsx +58 -0
  800. package/src/components/Modal/examples/index.ts +6 -0
  801. package/src/components/Modal/examples.json +16 -1
  802. package/src/components/Modal/index.tsx +8 -0
  803. package/src/components/Modal/metadata.json +41 -1
  804. package/src/components/Panel/examples/01-sidebar-toggle.tsx +20 -0
  805. package/src/components/Panel/examples/index.ts +2 -0
  806. package/src/components/Panel/examples.json +7 -1
  807. package/src/components/Panel/index.tsx +9 -0
  808. package/src/components/Path/examples/01-basic-path.tsx +5 -5
  809. package/src/components/Path/examples/02-custom-separator.tsx +17 -0
  810. package/src/components/Path/examples/03-collapsed-breadcrumb.tsx +37 -0
  811. package/src/components/Path/examples/index.ts +4 -0
  812. package/src/components/Path/examples.json +11 -1
  813. package/src/components/Path/index.tsx +15 -11
  814. package/src/components/Popover/examples/01-basic-popover.tsx +24 -5
  815. package/src/components/Popover/examples/02-toggleable-options.tsx +58 -0
  816. package/src/components/Popover/examples/03-table-row-actions.tsx +64 -0
  817. package/src/components/Popover/examples/04-input-form.tsx +46 -0
  818. package/src/components/Popover/examples/05-arrow-positions.tsx +27 -0
  819. package/src/components/Popover/examples/index.ts +8 -0
  820. package/src/components/Popover/examples.json +23 -3
  821. package/src/components/Popover/index.tsx +8 -0
  822. package/src/components/Progress/examples/01-basic-progress.tsx +34 -5
  823. package/src/components/Progress/examples/02-storage-quota.tsx +22 -0
  824. package/src/components/Progress/examples/03-onboarding-steps.tsx +34 -0
  825. package/src/components/Progress/examples/04-indeterminate.tsx +33 -0
  826. package/src/components/Progress/examples/05-skill-levels.tsx +22 -0
  827. package/src/components/Progress/examples/index.ts +8 -0
  828. package/src/components/Progress/examples.json +23 -3
  829. package/src/components/Progress/index.tsx +10 -14
  830. package/src/components/Scroll/examples/01-basic-scroll.tsx +45 -12
  831. package/src/components/Scroll/examples/02-settings-panel.tsx +40 -0
  832. package/src/components/Scroll/examples/03-horizontal-tags.tsx +38 -0
  833. package/src/components/Scroll/examples/index.ts +4 -0
  834. package/src/components/Scroll/examples.json +13 -3
  835. package/src/components/Scroll/index.tsx +4 -0
  836. package/src/components/Select/examples/03-country-select.tsx +55 -0
  837. package/src/components/Select/examples/index.ts +2 -0
  838. package/src/components/Select/examples.json +5 -0
  839. package/src/components/Select/index.tsx +2 -0
  840. package/src/components/Slider/examples/01-basic-slider.tsx +19 -4
  841. package/src/components/Slider/examples/02-settings-panel.tsx +33 -0
  842. package/src/components/Slider/examples/03-price-range.tsx +34 -0
  843. package/src/components/Slider/examples/04-step-slider.tsx +35 -0
  844. package/src/components/Slider/examples/05-disabled-state.tsx +21 -0
  845. package/src/components/Slider/examples/06-vertical-mixer.tsx +34 -0
  846. package/src/components/Slider/examples/index.ts +10 -0
  847. package/src/components/Slider/examples.json +28 -3
  848. package/src/components/Slider/index.tsx +11 -13
  849. package/src/components/Switch/examples/01-basic-switch.tsx +20 -4
  850. package/src/components/Switch/examples/02-settings-panel.tsx +32 -0
  851. package/src/components/Switch/examples/03-disabled-state.tsx +21 -0
  852. package/src/components/Switch/examples/04-small-size.tsx +25 -0
  853. package/src/components/Switch/examples/05-controlled-toggle.tsx +32 -0
  854. package/src/components/Switch/examples/index.ts +8 -0
  855. package/src/components/Switch/examples.json +23 -3
  856. package/src/components/Switch/index.tsx +8 -0
  857. package/src/components/Table/index.tsx +0 -1
  858. package/src/components/Tabs/examples/03-underline-tabs.tsx +23 -0
  859. package/src/components/Tabs/examples/04-vertical-underline-tabs.tsx +23 -0
  860. package/src/components/Tabs/examples/index.ts +4 -0
  861. package/src/components/Tabs/examples.json +10 -0
  862. package/src/components/Tabs/index.tsx +4 -0
  863. package/src/components/Textarea/examples/01-basic-textarea.tsx +21 -8
  864. package/src/components/Textarea/examples/02-bio-settings.tsx +30 -0
  865. package/src/components/Textarea/examples/03-error-state.tsx +31 -0
  866. package/src/components/Textarea/examples/04-disabled-readonly.tsx +25 -0
  867. package/src/components/Textarea/examples/05-scrolling.tsx +26 -0
  868. package/src/components/Textarea/examples/index.ts +8 -0
  869. package/src/components/Textarea/examples.json +23 -3
  870. package/src/components/Textarea/index.tsx +8 -0
  871. package/src/components/Toast/index.tsx +1 -4
  872. package/src/generated-data.ts +1101 -406
  873. package/src/generated-styles.ts +1270 -446
  874. package/src/index.ts +2 -0
  875. package/src/patterns/data/badge-row/variations/main/index.tsx +1 -1
  876. package/src/patterns/data/badge-row/variations/mixed/index.tsx +1 -1
  877. package/src/patterns/data/badge-row/variations/outline/index.tsx +1 -1
  878. package/src/patterns/data/data-table-row/variations/expandable/index.tsx +1 -1
  879. package/src/patterns/data/data-table-row/variations/main/index.tsx +1 -1
  880. package/src/patterns/data/data-table-row/variations/selectable/index.tsx +1 -1
  881. package/src/patterns/interaction/tab-content-header/variations/with-badge/index.tsx +1 -1
  882. package/src/patterns/layout/split-row/variations/main/index.tsx +1 -1
  883. package/src/registry.ts +538 -63
  884. package/src/types.ts +20 -1
  885. package/src/utils/load-component-examples.ts +8 -7
  886. package/src/components/Anchor/examples/01-basic-anchor.tsx +0 -18
  887. package/src/components/Badge/examples/01-basic-badge.tsx +0 -11
  888. package/src/components/Badge/examples/02-variants-and-sizes.tsx +0 -71
  889. package/src/components/Banner/examples/01-basic-banner.tsx +0 -15
  890. package/src/components/Card/examples/01-basic-card.tsx +0 -22
  891. package/src/components/Checkbox/examples/01-basic-checkbox.tsx +0 -21
  892. package/src/components/Checkbox/examples/02-checkbox-group-with-descriptions.tsx +0 -59
  893. package/src/components/Color/examples/01-basic-color.tsx +0 -25
  894. package/src/components/Color/examples/02-opacity-slider.tsx +0 -26
  895. package/src/components/Color/examples/03-format-switching.tsx +0 -46
  896. package/src/components/Expand/examples/01-basic-expand.tsx +0 -18
  897. package/src/components/Flex/examples/01-basic-flex.tsx +0 -17
  898. package/src/components/Gallery/examples/01-basic-gallery.tsx +0 -28
@@ -39,383 +39,295 @@
39
39
  }
40
40
  ]
41
41
  },
42
- "textarea": {
43
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .textarea {\n --padding-inline: 0.75rem;\n --padding-block: 0.5rem;\n --background: var(--background-950);\n --background-border: var(--background-700);\n --background-hover: var(--background-900);\n --background-focused: var(--background-900);\n --background-focused-border: var(--accent-500);\n --background-disabled: var(--background-900);\n --foreground: var(--foreground-50);\n --foreground-disabled: var(--foreground-400);\n --placeholder: var(--foreground-400);\n --focus-visible: var(--accent-500);\n --disabled-opacity: 0.6;\n\n @apply block w-full px-3 py-2;\n font-family: inherit;\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\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 box-sizing: border-box;\n resize: none;\n outline: none;\n transition: all 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 background-color: var(--background-hover);\n }\n\n &[data-focused=\"true\"] {\n border-color: var(--background-focused-border);\n background-color: var(--background-focused);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n border-color: var(--background-focused-border);\n box-shadow: 0 0 0 1px var(--focus-visible);\n background-color: var(--background-focused);\n }\n\n &[data-disabled] {\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] {\n border-color: var(--background-error-border, var(--background-border));\n\n &[data-focused=\"true\"],\n &[data-focus-visible=\"true\"] {\n border-color: var(--background-error-focused-border, var(--background-focused-border));\n }\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 overflow: hidden;\n resize: none;\n background: transparent;\n border: none;\n border-radius: 0;\n box-shadow: none;\n\n &[data-focused=\"true\"],\n &[data-focus-visible=\"true\"] {\n border-color: transparent;\n box-shadow: none;\n }\n\n &[data-disabled] {\n background-color: transparent;\n opacity: 1;\n }\n\n &[data-error] {\n border-color: transparent;\n\n &[data-focused=\"true\"],\n &[data-focus-visible=\"true\"] {\n border-color: transparent;\n box-shadow: none;\n }\n }\n }\n }\n\n .surface {\n @apply relative w-full;\n }\n\n .resize-handle {\n --handle-background: color-mix(in srgb, var(--foreground-400) 72%, transparent);\n --handle-hover-background: color-mix(in srgb, var(--foreground-200) 90%, transparent);\n\n position: absolute;\n z-index: 1;\n touch-action: none;\n user-select: none;\n\n &::before {\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 &::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 &[data-axis=\"both\"] {\n right: 3px;\n bottom: 3px;\n width: 1.5rem;\n height: 1.5rem;\n cursor: nwse-resize;\n\n &::before {\n bottom: 0.35rem;\n right: 0.15rem;\n width: 0.5rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n\n &::after {\n bottom: 0.6rem;\n right: 0.2rem;\n width: 1rem;\n height: 0.125rem;\n transform: rotate(-45deg);\n transform-origin: center;\n }\n }\n\n &[data-axis=\"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\n &[data-axis=\"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 }\n\n .scroll-wrapper {\n --background: var(--background-950);\n --background-border: var(--background-700);\n --background-hover: var(--background-900);\n --background-focused: var(--background-900);\n --background-focused-border: var(--accent-500);\n --background-disabled: var(--background-900);\n --focus-visible: var(--accent-500);\n --disabled-opacity: 0.6;\n\n @apply w-full overflow-hidden;\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\n &:hover:not([data-disabled]) {\n background-color: var(--background-hover);\n }\n\n &[data-focused=\"true\"] {\n border-color: var(--background-focused-border);\n background-color: var(--background-focused);\n }\n\n &[data-focus-visible=\"true\"] {\n outline: none;\n border-color: var(--background-focused-border);\n box-shadow: 0 0 0 1px var(--focus-visible);\n background-color: var(--background-focused);\n }\n\n &[data-disabled] {\n background-color: var(--background-disabled);\n opacity: var(--disabled-opacity);\n }\n\n &[data-error] {\n border-color: var(--background-error-border, var(--background-border));\n\n &[data-focused=\"true\"],\n &[data-focus-visible=\"true\"] {\n border-color: var(--background-error-focused-border, var(--background-focused-border));\n }\n }\n }\n\n .textarea[data-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 .textarea[data-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 .textarea[data-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 .character-count {\n --count-foreground: var(--foreground-400);\n --count-over-limit-foreground: var(--danger-600);\n\n font-size: var(--text-sm);\n color: var(--count-foreground);\n @apply mt-1;\n transition: color 0.15s var(--ease-snappy-pop);\n }\n\n .character-count[data-over-limit] {\n color: var(--count-over-limit-foreground);\n }\n}\n",
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:\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"
47
47
  },
48
48
  {
49
- "name": "container"
49
+ "name": "iconWrap"
50
50
  },
51
51
  {
52
- "name": "surface"
52
+ "name": "icon"
53
53
  },
54
54
  {
55
- "name": "scrollWrapper"
55
+ "name": "content"
56
56
  },
57
57
  {
58
- "name": "resizeHandle.both"
58
+ "name": "title"
59
59
  },
60
60
  {
61
- "name": "resizeHandle.x"
61
+ "name": "description"
62
62
  },
63
63
  {
64
- "name": "resizeHandle.y"
64
+ "name": "close"
65
65
  },
66
66
  {
67
- "name": "characterCount"
67
+ "name": "closeIcon"
68
68
  }
69
69
  ],
70
70
  "cssVariables": [
71
71
  {
72
- "name": "--padding-inline",
73
- "value": "0.75rem",
72
+ "name": "--foreground",
73
+ "value": "inherit",
74
74
  "defaultValue": null,
75
75
  "referencedVars": [],
76
- "variant": ".textarea"
76
+ "variant": ".title"
77
77
  },
78
78
  {
79
- "name": "--padding-block",
80
- "value": "0.5rem",
79
+ "name": "--foreground",
80
+ "value": "inherit",
81
81
  "defaultValue": null,
82
82
  "referencedVars": [],
83
- "variant": ".textarea"
84
- },
85
- {
86
- "name": "--background",
87
- "value": "var(--background-950)",
88
- "defaultValue": null,
89
- "referencedVars": [
90
- "--background-950"
91
- ],
92
- "variant": ".textarea"
93
- },
94
- {
95
- "name": "--background-border",
96
- "value": "var(--background-700)",
97
- "defaultValue": null,
98
- "referencedVars": [
99
- "--background-700"
100
- ],
101
- "variant": ".textarea"
102
- },
103
- {
104
- "name": "--background-hover",
105
- "value": "var(--background-900)",
106
- "defaultValue": null,
107
- "referencedVars": [
108
- "--background-900"
109
- ],
110
- "variant": ".textarea"
111
- },
112
- {
113
- "name": "--background-focused",
114
- "value": "var(--background-900)",
115
- "defaultValue": null,
116
- "referencedVars": [
117
- "--background-900"
118
- ],
119
- "variant": ".textarea"
120
- },
121
- {
122
- "name": "--background-focused-border",
123
- "value": "var(--accent-500)",
124
- "defaultValue": null,
125
- "referencedVars": [
126
- "--accent-500"
127
- ],
128
- "variant": ".textarea"
129
- },
130
- {
131
- "name": "--background-disabled",
132
- "value": "var(--background-900)",
133
- "defaultValue": null,
134
- "referencedVars": [
135
- "--background-900"
136
- ],
137
- "variant": ".textarea"
83
+ "variant": ".description"
138
84
  },
139
85
  {
140
86
  "name": "--foreground",
141
- "value": "var(--foreground-50)",
87
+ "value": "currentColor",
142
88
  "defaultValue": null,
143
- "referencedVars": [
144
- "--foreground-50"
145
- ],
146
- "variant": ".textarea"
89
+ "referencedVars": [],
90
+ "variant": ".close"
147
91
  },
148
92
  {
149
- "name": "--foreground-disabled",
150
- "value": "var(--foreground-400)",
93
+ "name": "--background-hover",
94
+ "value": "transparent",
151
95
  "defaultValue": null,
152
- "referencedVars": [
153
- "--foreground-400"
154
- ],
155
- "variant": ".textarea"
96
+ "referencedVars": [],
97
+ "variant": ".close"
156
98
  },
157
99
  {
158
- "name": "--placeholder",
159
- "value": "var(--foreground-400)",
160
- "defaultValue": null,
100
+ "name": "--hover-transition-duration",
101
+ "value": "var(--hover-transition-enter-duration, 0ms)",
102
+ "defaultValue": "0ms",
161
103
  "referencedVars": [
162
- "--foreground-400"
104
+ "--hover-transition-enter-duration"
163
105
  ],
164
- "variant": ".textarea"
165
- },
106
+ "variant": ".close[data-hovered=\"true\"]"
107
+ }
108
+ ]
109
+ },
110
+ "textarea": {
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",
112
+ "styleableParts": [
166
113
  {
167
- "name": "--focus-visible",
168
- "value": "var(--accent-500)",
169
- "defaultValue": null,
170
- "referencedVars": [
171
- "--accent-500"
172
- ],
173
- "variant": ".textarea"
114
+ "name": "root"
174
115
  },
175
116
  {
176
- "name": "--disabled-opacity",
177
- "value": "0.6",
178
- "defaultValue": null,
179
- "referencedVars": [],
180
- "variant": ".textarea"
117
+ "name": "container"
181
118
  },
182
119
  {
183
- "name": "--handle-background",
184
- "value": "color-mix(in srgb, var(--foreground-400) 72%, transparent)",
185
- "defaultValue": null,
186
- "referencedVars": [
187
- "--foreground-400"
188
- ],
189
- "variant": ".resize-handle"
120
+ "name": "surface"
190
121
  },
191
122
  {
192
- "name": "--handle-hover-background",
193
- "value": "color-mix(in srgb, var(--foreground-200) 90%, transparent)",
194
- "defaultValue": null,
195
- "referencedVars": [
196
- "--foreground-200"
197
- ],
198
- "variant": ".resize-handle"
123
+ "name": "scrollWrapper"
199
124
  },
200
125
  {
201
- "name": "--background",
202
- "value": "var(--background-950)",
203
- "defaultValue": null,
204
- "referencedVars": [
205
- "--background-950"
206
- ],
207
- "variant": ".scroll-wrapper"
126
+ "name": "resizeHandle.both"
208
127
  },
209
128
  {
210
- "name": "--background-border",
211
- "value": "var(--background-700)",
212
- "defaultValue": null,
213
- "referencedVars": [
214
- "--background-700"
215
- ],
216
- "variant": ".scroll-wrapper"
129
+ "name": "resizeHandle.x"
217
130
  },
218
131
  {
219
- "name": "--background-hover",
220
- "value": "var(--background-900)",
221
- "defaultValue": null,
222
- "referencedVars": [
223
- "--background-900"
224
- ],
225
- "variant": ".scroll-wrapper"
132
+ "name": "resizeHandle.y"
226
133
  },
227
134
  {
228
- "name": "--background-focused",
229
- "value": "var(--background-900)",
230
- "defaultValue": null,
231
- "referencedVars": [
232
- "--background-900"
233
- ],
234
- "variant": ".scroll-wrapper"
235
- },
135
+ "name": "characterCount"
136
+ }
137
+ ],
138
+ "cssVariables": [
236
139
  {
237
- "name": "--background-focused-border",
238
- "value": "var(--accent-500)",
140
+ "name": "--padding-inline",
141
+ "value": "0.75rem",
239
142
  "defaultValue": null,
240
- "referencedVars": [
241
- "--accent-500"
242
- ],
243
- "variant": ".scroll-wrapper"
143
+ "referencedVars": [],
144
+ "variant": ".textarea"
244
145
  },
245
146
  {
246
- "name": "--background-disabled",
247
- "value": "var(--background-900)",
147
+ "name": "--padding-block",
148
+ "value": "0.5rem",
248
149
  "defaultValue": null,
249
- "referencedVars": [
250
- "--background-900"
251
- ],
252
- "variant": ".scroll-wrapper"
150
+ "referencedVars": [],
151
+ "variant": ".textarea"
253
152
  },
254
153
  {
255
- "name": "--focus-visible",
256
- "value": "var(--accent-500)",
257
- "defaultValue": null,
154
+ "name": "--hover-transition-duration",
155
+ "value": "var(--hover-transition-enter-duration, 0ms)",
156
+ "defaultValue": "0ms",
258
157
  "referencedVars": [
259
- "--accent-500"
158
+ "--hover-transition-enter-duration"
260
159
  ],
261
- "variant": ".scroll-wrapper"
262
- },
263
- {
264
- "name": "--disabled-opacity",
265
- "value": "0.6",
266
- "defaultValue": null,
267
- "referencedVars": [],
268
- "variant": ".scroll-wrapper"
160
+ "variant": ".textarea:hover:not([data-disabled]),\n .textarea[data-hovered=\"true\"]:not([data-disabled])"
269
161
  },
270
162
  {
271
163
  "name": "--padding-inline",
272
164
  "value": "0.5rem",
273
165
  "defaultValue": null,
274
166
  "referencedVars": [],
275
- "variant": ".textarea[data-size=\"sm\"]"
167
+ "variant": ".size-sm"
276
168
  },
277
169
  {
278
170
  "name": "--padding-block",
279
171
  "value": "0.25rem",
280
172
  "defaultValue": null,
281
173
  "referencedVars": [],
282
- "variant": ".textarea[data-size=\"sm\"]"
174
+ "variant": ".size-sm"
283
175
  },
284
176
  {
285
177
  "name": "--padding-inline",
286
178
  "value": "0.75rem",
287
179
  "defaultValue": null,
288
180
  "referencedVars": [],
289
- "variant": ".textarea[data-size=\"md\"]"
181
+ "variant": ".size-md"
290
182
  },
291
183
  {
292
184
  "name": "--padding-block",
293
185
  "value": "0.5rem",
294
186
  "defaultValue": null,
295
187
  "referencedVars": [],
296
- "variant": ".textarea[data-size=\"md\"]"
188
+ "variant": ".size-md"
297
189
  },
298
190
  {
299
191
  "name": "--padding-inline",
300
192
  "value": "1rem",
301
193
  "defaultValue": null,
302
194
  "referencedVars": [],
303
- "variant": ".textarea[data-size=\"lg\"]"
195
+ "variant": ".size-lg"
304
196
  },
305
197
  {
306
198
  "name": "--padding-block",
307
199
  "value": "0.75rem",
308
200
  "defaultValue": null,
309
201
  "referencedVars": [],
310
- "variant": ".textarea[data-size=\"lg\"]"
202
+ "variant": ".size-lg"
311
203
  },
312
204
  {
313
- "name": "--count-foreground",
314
- "value": "var(--foreground-400)",
315
- "defaultValue": null,
205
+ "name": "--hover-transition-duration",
206
+ "value": "var(--hover-transition-enter-duration, 0ms)",
207
+ "defaultValue": "0ms",
316
208
  "referencedVars": [
317
- "--foreground-400"
209
+ "--hover-transition-enter-duration"
318
210
  ],
319
- "variant": ".character-count"
211
+ "variant": ".scroll-wrapper:hover:not([data-disabled=\"true\"]),\n .scroll-wrapper[data-hovered=\"true\"]:not([data-disabled=\"true\"])"
320
212
  },
321
213
  {
322
- "name": "--count-over-limit-foreground",
323
- "value": "var(--danger-600)",
324
- "defaultValue": null,
214
+ "name": "--hover-transition-duration",
215
+ "value": "var(--hover-transition-enter-duration, 0ms)",
216
+ "defaultValue": "0ms",
325
217
  "referencedVars": [
326
- "--danger-600"
218
+ "--hover-transition-enter-duration"
327
219
  ],
328
- "variant": ".character-count"
220
+ "variant": ".resize-handle:hover::before,\n .resize-handle:hover::after"
329
221
  }
330
222
  ]
331
223
  },
332
- "toast": {
333
- "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",
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",
334
226
  "styleableParts": [
335
227
  {
336
228
  "name": "root"
337
229
  },
338
230
  {
339
- "name": "iconWrap"
340
- },
341
- {
342
- "name": "icon"
343
- },
344
- {
345
- "name": "content"
346
- },
347
- {
348
- "name": "title"
349
- },
350
- {
351
- "name": "description"
231
+ "name": "indicator"
352
232
  },
353
233
  {
354
- "name": "close"
234
+ "name": "icon.left"
355
235
  },
356
236
  {
357
- "name": "closeIcon"
237
+ "name": "icon.right"
358
238
  }
359
239
  ],
360
240
  "cssVariables": [
361
241
  {
362
- "name": "--foreground",
363
- "value": "inherit",
364
- "defaultValue": null,
365
- "referencedVars": [],
366
- "variant": ".title"
367
- },
368
- {
369
- "name": "--foreground",
370
- "value": "inherit",
371
- "defaultValue": null,
372
- "referencedVars": [],
373
- "variant": ".description"
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"
374
249
  },
375
250
  {
376
- "name": "--foreground",
377
- "value": "currentColor",
251
+ "name": "--disabled-opacity",
252
+ "value": "0.5",
378
253
  "defaultValue": null,
379
254
  "referencedVars": [],
380
- "variant": ".close"
255
+ "variant": ".trigger[data-disabled=\"true\"]"
381
256
  },
382
257
  {
383
- "name": "--background-hover",
384
- "value": "transparent",
385
- "defaultValue": null,
386
- "referencedVars": [],
387
- "variant": ".close"
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"
388
265
  }
389
266
  ]
390
267
  },
391
- "tabs": {
392
- "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 rounded-sm 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 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 &[data-focus-visible] {\n background-color: var(--background-focused);\n outline: none;\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-xs);\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\"] &[data-focus-visible] {\n background-color: var(--background-focused);\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",
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",
393
270
  "styleableParts": [
394
271
  {
395
272
  "name": "root"
396
273
  },
397
274
  {
398
- "name": "indicator"
275
+ "name": "container"
399
276
  },
400
277
  {
401
- "name": "icon.left"
278
+ "name": "filterBar"
402
279
  },
403
280
  {
404
- "name": "icon.right"
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"
405
315
  }
406
316
  ],
407
317
  "cssVariables": [
408
318
  {
409
- "name": "--disabled-opacity",
410
- "value": "0.5",
411
- "defaultValue": null,
412
- "referencedVars": [],
413
- "variant": ".trigger[data-disabled=\"true\"]"
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"
414
326
  }
415
327
  ]
416
328
  },
417
329
  "switch": {
418
- "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 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 .switch[data-focus-visible] {\n box-shadow: var(--focus-visible);\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",
419
331
  "styleableParts": [
420
332
  {
421
333
  "name": "root"
@@ -480,6 +392,15 @@
480
392
  "referencedVars": [],
481
393
  "variant": ".switch"
482
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
+ },
483
404
  {
484
405
  "name": "--width",
485
406
  "value": "1.75rem",
@@ -510,47 +431,8 @@
510
431
  }
511
432
  ]
512
433
  },
513
- "table": {
514
- "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",
515
- "styleableParts": [
516
- {
517
- "name": "root"
518
- },
519
- {
520
- "name": "container"
521
- },
522
- {
523
- "name": "filterBar"
524
- },
525
- {
526
- "name": "table"
527
- },
528
- {
529
- "name": "thead"
530
- },
531
- {
532
- "name": "tbody"
533
- },
534
- {
535
- "name": "headerRow"
536
- },
537
- {
538
- "name": "headerCell"
539
- },
540
- {
541
- "name": "bodyRow"
542
- },
543
- {
544
- "name": "cell"
545
- },
546
- {
547
- "name": "emptyState"
548
- }
549
- ],
550
- "cssVariables": []
551
- },
552
434
  "slider": {
553
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .slider {\n --disabled-opacity: 0.6;\n\n @apply relative flex w-full items-center;\n touch-action: none;\n user-select: none;\n }\n\n .slider[data-size=\"sm\"] { @apply h-6; }\n .slider[data-size=\"md\"] { @apply h-8; }\n .slider[data-size=\"lg\"] { @apply h-10; }\n\n .slider[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .track {\n --track-height-sm: 0.25rem;\n --track-height-md: 0.375rem;\n --track-height-lg: 0.5rem;\n\n @apply relative flex grow items-center;\n flex-grow: 1;\n overflow: visible;\n border-radius: var(--radius-xs);\n background-color: var(--track-background);\n }\n\n .slider[data-size=\"sm\"] .track { height: var(--track-height-sm); }\n .slider[data-size=\"md\"] .track { height: var(--track-height-md); }\n .slider[data-size=\"lg\"] .track { height: var(--track-height-lg); }\n\n .range {\n @apply absolute h-full;\n background-color: var(--range-background);\n transition: background-color 200ms var(--ease-snappy-pop);\n border-radius: var(--radius-xs);\n }\n\n .slider[data-disabled] .range { background-color: var(--range-disabled-background); }\n\n .thumb {\n --thumb-size-sm: 0.75rem;\n --thumb-size-md: 1rem;\n --thumb-size-lg: 1.25rem;\n\n @apply absolute block;\n background-color: var(--thumb-background);\n border-radius: 9999px;\n outline: none;\n top: 50%;\n transform: translate(-50%, -50%);\n }\n\n .slider[data-size=\"sm\"] .thumb {\n width: var(--thumb-size-sm);\n height: var(--thumb-size-sm);\n }\n\n .slider[data-size=\"md\"] .thumb {\n width: var(--thumb-size-md);\n height: var(--thumb-size-md);\n }\n\n .slider[data-size=\"lg\"] .thumb {\n width: var(--thumb-size-lg);\n height: var(--thumb-size-lg);\n }\n\n .slider[data-disabled] .thumb {\n background-color: var(--thumb-disabled-background);\n cursor: not-allowed;\n }\n\n .thumb[data-focus-visible=\"true\"] {\n background-color: var(--thumb-focused-background);\n box-shadow: 0 0 0 3px var(--focus-visible);\n }\n\n .thumb[data-dragging] {\n cursor: grabbing;\n transform: translate(-50%, -50%) scale(1.1);\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",
554
436
  "styleableParts": [
555
437
  {
556
438
  "name": "root"
@@ -574,51 +456,30 @@
574
456
  "variant": ".slider"
575
457
  },
576
458
  {
577
- "name": "--track-height-sm",
578
- "value": "0.25rem",
579
- "defaultValue": null,
580
- "referencedVars": [],
581
- "variant": ".track"
582
- },
583
- {
584
- "name": "--track-height-md",
459
+ "name": "--slider-track-size",
585
460
  "value": "0.375rem",
586
461
  "defaultValue": null,
587
462
  "referencedVars": [],
588
- "variant": ".track"
589
- },
590
- {
591
- "name": "--track-height-lg",
592
- "value": "0.5rem",
593
- "defaultValue": null,
594
- "referencedVars": [],
595
- "variant": ".track"
596
- },
597
- {
598
- "name": "--thumb-size-sm",
599
- "value": "0.75rem",
600
- "defaultValue": null,
601
- "referencedVars": [],
602
- "variant": ".thumb"
463
+ "variant": ".slider"
603
464
  },
604
465
  {
605
- "name": "--thumb-size-md",
466
+ "name": "--slider-thumb-size",
606
467
  "value": "1rem",
607
468
  "defaultValue": null,
608
469
  "referencedVars": [],
609
- "variant": ".thumb"
470
+ "variant": ".slider"
610
471
  },
611
472
  {
612
- "name": "--thumb-size-lg",
613
- "value": "1.25rem",
473
+ "name": "--slider-thumb-transform",
474
+ "value": "translate(-50%, 50%)",
614
475
  "defaultValue": null,
615
476
  "referencedVars": [],
616
- "variant": ".thumb"
477
+ "variant": ".slider[data-orientation=\"vertical\"] .thumb"
617
478
  }
618
479
  ]
619
480
  },
620
481
  "select": {
621
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\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\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 box-shadow: 0 0 0 2px var(--focus-visible-background), 0 0 0 4px var(--focus-visible);\n @apply outline-none;\n }\n\n :global(.group) &[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 px-2 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 box-shadow: 0 0 0 1px var(--focus-visible);\n z-index: 1;\n }\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",
622
483
  "styleableParts": [
623
484
  {
624
485
  "name": "root"
@@ -670,6 +531,9 @@
670
531
  },
671
532
  {
672
533
  "name": "searchInput"
534
+ },
535
+ {
536
+ "name": "emptyState"
673
537
  }
674
538
  ],
675
539
  "cssVariables": [
@@ -682,7 +546,7 @@
682
546
  },
683
547
  {
684
548
  "name": "--trigger-padding-inline",
685
- "value": "calc(var(--spacing) * 2)",
549
+ "value": "calc(var(--spacing) * 1.60)",
686
550
  "defaultValue": null,
687
551
  "referencedVars": [
688
552
  "--spacing"
@@ -691,7 +555,7 @@
691
555
  },
692
556
  {
693
557
  "name": "--trigger-padding-block",
694
- "value": "calc(var(--spacing) * 1.75)",
558
+ "value": "calc(var(--spacing) * 1.30)",
695
559
  "defaultValue": null,
696
560
  "referencedVars": [
697
561
  "--spacing"
@@ -717,6 +581,15 @@
717
581
  ],
718
582
  "variant": ".select"
719
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
+ },
720
593
  {
721
594
  "name": "--item-padding-inline",
722
595
  "value": "calc(var(--spacing) * 1.5)",
@@ -775,7 +648,7 @@
775
648
  ]
776
649
  },
777
650
  "scroll": {
778
- "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",
779
652
  "styleableParts": [
780
653
  {
781
654
  "name": "root"
@@ -804,11 +677,38 @@
804
677
  "defaultValue": null,
805
678
  "referencedVars": [],
806
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"
807
707
  }
808
708
  ]
809
709
  },
810
710
  "radio": {
811
- "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 }\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 box-shadow: 0 0 0 1.5px var(--focus-visible);\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",
812
712
  "styleableParts": [
813
713
  {
814
714
  "name": "root"
@@ -842,11 +742,20 @@
842
742
  "defaultValue": null,
843
743
  "referencedVars": [],
844
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"
845
754
  }
846
755
  ]
847
756
  },
848
757
  "progress": {
849
- "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",
850
759
  "styleableParts": [
851
760
  {
852
761
  "name": "root"
@@ -870,7 +779,7 @@
870
779
  "cssVariables": []
871
780
  },
872
781
  "popover": {
873
- "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",
874
783
  "styleableParts": [
875
784
  {
876
785
  "name": "root"
@@ -914,11 +823,14 @@
914
823
  ]
915
824
  },
916
825
  "path": {
917
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .path {\n --foreground: var(--foreground-primary);\n --foreground-muted: var(--foreground-secondary);\n --separator-color: var(--border-secondary);\n --focus-ring-color: var(--accent-500);\n --disabled-opacity: 0.6;\n\n @apply block;\n }\n\n .path-list {\n list-style: none;\n @apply m-0 flex flex-wrap items-center gap-2 p-0;\n flex-wrap: wrap;\n }\n\n .path-list.with-custom-separator .path-item:not(:last-child)::after {\n content: none;\n }\n\n .path-item {\n @apply m-0 flex items-center gap-2 p-0;\n }\n\n /* Separator after each item except the last */\n .path-item:not(:last-child)::after {\n content: '/';\n color: var(--separator-color);\n margin-left: 0.5rem;\n user-select: none;\n pointer-events: none;\n }\n\n /* Custom separator element */\n .separator {\n list-style: none;\n @apply m-0 flex items-center p-0;\n color: var(--separator-color);\n user-select: none;\n pointer-events: none;\n }\n\n .path-item-link {\n @apply relative cursor-pointer rounded-sm px-2 py-1;\n color: var(--foreground);\n text-decoration: none;\n font-size: var(--text-sm);\n font-weight: var(--font-weight-medium);\n line-height: 1.5;\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n\n &:hover:not([data-disabled='true']) {\n background-color: var(--background-hover, rgba(0, 0, 0, 0.04));\n color: var(--accent-600);\n }\n\n &:active:not([data-disabled='true']) {\n background-color: var(--background-active, rgba(0, 0, 0, 0.08));\n }\n\n &:focus-visible {\n outline: 2px solid var(--focus-ring-color);\n outline-offset: 2px;\n }\n\n &[data-current='true'] {\n color: var(--foreground-muted);\n cursor: default;\n font-weight: var(--font-weight-medium);\n\n &:hover {\n background-color: transparent;\n }\n }\n\n &[data-disabled='true'] {\n color: var(--foreground-muted);\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n\n &:hover {\n background-color: transparent;\n }\n }\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",
918
827
  "styleableParts": [
919
828
  {
920
829
  "name": "root"
921
830
  },
831
+ {
832
+ "name": "link"
833
+ },
922
834
  {
923
835
  "name": "list"
924
836
  },
@@ -928,59 +840,44 @@
928
840
  ],
929
841
  "cssVariables": [
930
842
  {
931
- "name": "--foreground",
932
- "value": "var(--foreground-primary)",
933
- "defaultValue": null,
843
+ "name": "--hover-transition-duration",
844
+ "value": "var(--hover-transition-enter-duration, 0ms)",
845
+ "defaultValue": "0ms",
934
846
  "referencedVars": [
935
- "--foreground-primary"
847
+ "--hover-transition-enter-duration"
936
848
  ],
937
- "variant": ".path"
938
- },
849
+ "variant": ".link[data-hovered=\"true\"]:not([data-disabled=\"true\"]):not([data-selected=\"true\"])"
850
+ }
851
+ ]
852
+ },
853
+ "panel": {
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",
855
+ "styleableParts": [
939
856
  {
940
- "name": "--foreground-muted",
941
- "value": "var(--foreground-secondary)",
942
- "defaultValue": null,
943
- "referencedVars": [
944
- "--foreground-secondary"
945
- ],
946
- "variant": ".path"
947
- },
857
+ "name": "root"
858
+ }
859
+ ],
860
+ "cssVariables": [
948
861
  {
949
- "name": "--separator-color",
950
- "value": "var(--border-secondary)",
951
- "defaultValue": null,
862
+ "name": "--hover-transition-duration",
863
+ "value": "var(--hover-transition-enter-duration, 0ms)",
864
+ "defaultValue": "0ms",
952
865
  "referencedVars": [
953
- "--border-secondary"
866
+ "--hover-transition-enter-duration"
954
867
  ],
955
- "variant": ".path"
868
+ "variant": ".resize:hover::before,\n .resize[data-resizing=\"true\"]::before"
956
869
  },
957
870
  {
958
- "name": "--focus-ring-color",
959
- "value": "var(--accent-500)",
960
- "defaultValue": null,
871
+ "name": "--hover-transition-duration",
872
+ "value": "var(--hover-transition-enter-duration, 0ms)",
873
+ "defaultValue": "0ms",
961
874
  "referencedVars": [
962
- "--accent-500"
875
+ "--hover-transition-enter-duration"
963
876
  ],
964
- "variant": ".path"
965
- },
966
- {
967
- "name": "--disabled-opacity",
968
- "value": "0.6",
969
- "defaultValue": null,
970
- "referencedVars": [],
971
- "variant": ".path"
877
+ "variant": ".resize[data-direction=\"vertical\"]:hover::before,\n .resize[data-direction=\"vertical\"][data-resizing=\"true\"]::before"
972
878
  }
973
879
  ]
974
880
  },
975
- "panel": {
976
- "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",
977
- "styleableParts": [
978
- {
979
- "name": "root"
980
- }
981
- ],
982
- "cssVariables": []
983
- },
984
881
  "page": {
985
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",
986
883
  "styleableParts": [
@@ -1044,7 +941,7 @@
1044
941
  ]
1045
942
  },
1046
943
  "modal": {
1047
- "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",
1048
945
  "styleableParts": [
1049
946
  {
1050
947
  "name": "root"
@@ -1079,16 +976,27 @@
1079
976
  ],
1080
977
  "cssVariables": [
1081
978
  {
1082
- "name": "--disabled-opacity",
1083
- "value": "0.5",
1084
- "defaultValue": null,
1085
- "referencedVars": [],
1086
- "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"
1087
995
  }
1088
996
  ]
1089
997
  },
1090
998
  "menu": {
1091
- "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",
1092
1000
  "styleableParts": [
1093
1001
  {
1094
1002
  "name": "root"
@@ -1111,7 +1019,7 @@
1111
1019
  "referencedVars": [
1112
1020
  "--spacing"
1113
1021
  ],
1114
- "variant": ".content,\n .sub-content"
1022
+ "variant": ":global(.menu) .content,\n .sub-content"
1115
1023
  },
1116
1024
  {
1117
1025
  "name": "--content-radius",
@@ -1120,7 +1028,7 @@
1120
1028
  "referencedVars": [
1121
1029
  "--radius-sm"
1122
1030
  ],
1123
- "variant": ".content,\n .sub-content"
1031
+ "variant": ":global(.menu) .content,\n .sub-content"
1124
1032
  },
1125
1033
  {
1126
1034
  "name": "--content-inner-radius",
@@ -1130,7 +1038,7 @@
1130
1038
  "--content-radius",
1131
1039
  "--border-width-base"
1132
1040
  ],
1133
- "variant": ".content,\n .sub-content"
1041
+ "variant": ":global(.menu) .content,\n .sub-content"
1134
1042
  },
1135
1043
  {
1136
1044
  "name": "--content-open-animation",
@@ -1139,7 +1047,7 @@
1139
1047
  "referencedVars": [
1140
1048
  "--ease-snappy-pop"
1141
1049
  ],
1142
- "variant": ".content,\n .sub-content"
1050
+ "variant": ":global(.menu) .content,\n .sub-content"
1143
1051
  },
1144
1052
  {
1145
1053
  "name": "--content-closed-animation",
@@ -1148,14 +1056,14 @@
1148
1056
  "referencedVars": [
1149
1057
  "--ease-snappy-pop"
1150
1058
  ],
1151
- "variant": ".content,\n .sub-content"
1059
+ "variant": ":global(.menu) .content,\n .sub-content"
1152
1060
  },
1153
1061
  {
1154
1062
  "name": "--disabled-opacity",
1155
1063
  "value": "0.5",
1156
1064
  "defaultValue": null,
1157
1065
  "referencedVars": [],
1158
- "variant": ".content,\n .sub-content"
1066
+ "variant": ":global(.menu) .content,\n .sub-content"
1159
1067
  }
1160
1068
  ]
1161
1069
  },
@@ -1172,7 +1080,7 @@
1172
1080
  "cssVariables": []
1173
1081
  },
1174
1082
  "list": {
1175
- "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",
1176
1084
  "styleableParts": [
1177
1085
  {
1178
1086
  "name": "root"
@@ -1193,10 +1101,10 @@
1193
1101
  "name": "media"
1194
1102
  },
1195
1103
  {
1196
- "name": "desc"
1104
+ "name": "title"
1197
1105
  },
1198
1106
  {
1199
- "name": "actionGroup"
1107
+ "name": "desc"
1200
1108
  },
1201
1109
  {
1202
1110
  "name": "actions"
@@ -1208,10 +1116,36 @@
1208
1116
  "name": "footer"
1209
1117
  }
1210
1118
  ],
1211
- "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
+ ]
1212
1146
  },
1213
1147
  "label": {
1214
- "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",
1215
1149
  "styleableParts": [
1216
1150
  {
1217
1151
  "name": "root"
@@ -1265,7 +1199,7 @@
1265
1199
  "referencedVars": [
1266
1200
  "--foreground-secondary"
1267
1201
  ],
1268
- "variant": ".helper-text"
1202
+ "variant": ".label > .helper-text"
1269
1203
  },
1270
1204
  {
1271
1205
  "name": "--helper-foreground-error",
@@ -1274,12 +1208,12 @@
1274
1208
  "referencedVars": [
1275
1209
  "--danger-600"
1276
1210
  ],
1277
- "variant": ".helper-text"
1211
+ "variant": ".label > .helper-text"
1278
1212
  }
1279
1213
  ]
1280
1214
  },
1281
1215
  "input": {
1282
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\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-focused] {\n border-color: var(--background-focused-border);\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n }\n\n &[data-focus-visible] {\n @apply ring-0;\n border-color: var(--background-focused-border);\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n }\n\n &[data-disabled] {\n background-color: var(--disabled-background);\n cursor: not-allowed;\n opacity: 0.5;\n }\n\n &[data-error] {\n &[data-focused],\n &[data-focus-visible] {\n border-color: var(--focus-visible);\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n }\n }\n\n &[data-variant=\"ghost\"] {\n background-color: transparent;\n border-color: transparent;\n\n &[data-focused],\n &[data-focus-visible] {\n border-color: transparent;\n box-shadow: none;\n }\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",
1283
1217
  "styleableParts": [
1284
1218
  {
1285
1219
  "name": "root"
@@ -1291,10 +1225,10 @@
1291
1225
  "name": "icon.right"
1292
1226
  },
1293
1227
  {
1294
- "name": "controls.up"
1228
+ "name": "stepper.up"
1295
1229
  },
1296
1230
  {
1297
- "name": "controls.down"
1231
+ "name": "stepper.down"
1298
1232
  }
1299
1233
  ],
1300
1234
  "cssVariables": [
@@ -1306,11 +1240,50 @@
1306
1240
  "--spacing"
1307
1241
  ],
1308
1242
  "variant": ".container"
1243
+ },
1244
+ {
1245
+ "name": "--ring-shadow",
1246
+ "value": "none",
1247
+ "defaultValue": null,
1248
+ "referencedVars": [],
1249
+ "variant": ".container[data-variant=\"ghost\"]"
1250
+ },
1251
+ {
1252
+ "name": "--ring-border",
1253
+ "value": "transparent",
1254
+ "defaultValue": null,
1255
+ "referencedVars": [],
1256
+ "variant": ".container[data-variant=\"ghost\"]"
1257
+ },
1258
+ {
1259
+ "name": "--ring-border-visible",
1260
+ "value": "transparent",
1261
+ "defaultValue": null,
1262
+ "referencedVars": [],
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)"
1309
1282
  }
1310
1283
  ]
1311
1284
  },
1312
1285
  "group": {
1313
- "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 &.ghost {\n @apply gap-1 border-none overflow-visible;\n\n &.none {\n @apply gap-0;\n }\n }\n }\n\n .item {\n @apply flex items-stretch;\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) {\n height: 100%;\n min-height: var(--item-height);\n }\n\n .button {\n @apply flex box-border;\n width: auto;\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\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 }\n\n .group:not(.ghost) {\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 --focus-visible: transparent;\n }\n\n &.none {\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 &.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\n &.vertical {\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 :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.ghost {\n .button[data-selected=\"true\"] {\n border-radius: var(--background-inner-radius);\n }\n\n &:not(.none) .item .button[data-selected=\"false\"] {\n border-radius: var(--background-inner-radius);\n border: var(--border-width-base) solid transparent;\n }\n\n &.none {\n :is(.button, .select) {\n border: none;\n border-radius: 0;\n --background-radius: 0;\n --background-inner-radius: 0;\n }\n\n .input {\n --background-border: transparent;\n --radius-sm: 0;\n }\n }\n }\n\n :is(.button[data-focus-visible=\"true\"], .trigger[data-focus-visible=\"true\"], .input > [data-focus-visible=\"true\"]) {\n @apply relative outline-none z-10;\n }\n\n .group:not(.ghost) :is(.button[data-focus-visible=\"true\"], .trigger[data-focus-visible=\"true\"], .input > [data-focus-visible=\"true\"]) {\n box-shadow: inset 0 0 0 1px var(--focus-visible, var(--accent-500));\n }\n\n .group.ghost :is(.button[data-focus-visible=\"true\"], .trigger[data-focus-visible=\"true\"], .input > [data-focus-visible=\"true\"]) {\n box-shadow: 0 0 0 1px var(--focus-visible, var(--accent-500));\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",
1314
1287
  "styleableParts": [
1315
1288
  {
1316
1289
  "name": "root"
@@ -1335,6 +1308,9 @@
1335
1308
  },
1336
1309
  {
1337
1310
  "name": "select"
1311
+ },
1312
+ {
1313
+ "name": "expand"
1338
1314
  }
1339
1315
  ],
1340
1316
  "cssVariables": [
@@ -1397,26 +1373,130 @@
1397
1373
  "name": "--layout-vertical-spacing",
1398
1374
  "value": "calc(var(--spacing) * 4)",
1399
1375
  "defaultValue": null,
1400
- "referencedVars": [
1401
- "--spacing"
1402
- ],
1376
+ "referencedVars": [
1377
+ "--spacing"
1378
+ ],
1379
+ "variant": ".group"
1380
+ },
1381
+ {
1382
+ "name": "--layout-border-height",
1383
+ "value": "calc(var(--background-border-width) * 2)",
1384
+ "defaultValue": null,
1385
+ "referencedVars": [
1386
+ "--background-border-width"
1387
+ ],
1388
+ "variant": ".group"
1389
+ },
1390
+ {
1391
+ "name": "--layout-padding-height",
1392
+ "value": "calc(var(--layout-padding-size) * 2)",
1393
+ "defaultValue": null,
1394
+ "referencedVars": [
1395
+ "--layout-padding-size"
1396
+ ],
1397
+ "variant": ".group"
1398
+ },
1399
+ {
1400
+ "name": "--group-background",
1401
+ "value": "var(--background, transparent)",
1402
+ "defaultValue": "transparent",
1403
+ "referencedVars": [
1404
+ "--background"
1405
+ ],
1406
+ "variant": ".group"
1407
+ },
1408
+ {
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": [],
1403
1483
  "variant": ".group"
1404
1484
  },
1405
1485
  {
1406
- "name": "--layout-border-height",
1407
- "value": "calc(var(--background-border-width) * 2)",
1486
+ "name": "--group-input-hover-border",
1487
+ "value": "var(--group-input-border)",
1408
1488
  "defaultValue": null,
1409
1489
  "referencedVars": [
1410
- "--background-border-width"
1490
+ "--group-input-border"
1411
1491
  ],
1412
1492
  "variant": ".group"
1413
1493
  },
1414
1494
  {
1415
- "name": "--layout-padding-height",
1416
- "value": "calc(var(--layout-padding-size) * 2)",
1495
+ "name": "--group-input-focused-border",
1496
+ "value": "var(--group-input-border)",
1417
1497
  "defaultValue": null,
1418
1498
  "referencedVars": [
1419
- "--layout-padding-size"
1499
+ "--group-input-border"
1420
1500
  ],
1421
1501
  "variant": ".group"
1422
1502
  },
@@ -1468,101 +1548,190 @@
1468
1548
  "variant": ".group.sm"
1469
1549
  },
1470
1550
  {
1471
- "name": "--border-width-base",
1472
- "value": "0px",
1551
+ "name": "--background",
1552
+ "value": "var(--group-input-background)",
1473
1553
  "defaultValue": null,
1474
- "referencedVars": [],
1475
- "variant": ".group:not(.ghost) .input"
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
+ ],
1584
+ "variant": ".group .input"
1476
1585
  },
1477
1586
  {
1478
1587
  "name": "--background-border",
1479
- "value": "transparent",
1588
+ "value": "var(--group-input-border)",
1480
1589
  "defaultValue": null,
1481
- "referencedVars": [],
1482
- "variant": ".group:not(.ghost) .input"
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
+ ],
1602
+ "variant": ".group .input"
1483
1603
  },
1484
1604
  {
1485
1605
  "name": "--background-focused-border",
1486
- "value": "transparent",
1606
+ "value": "var(--group-input-focused-border)",
1487
1607
  "defaultValue": null,
1488
- "referencedVars": [],
1489
- "variant": ".group:not(.ghost) .input"
1608
+ "referencedVars": [
1609
+ "--group-input-focused-border"
1610
+ ],
1611
+ "variant": ".group .input"
1490
1612
  },
1491
1613
  {
1492
- "name": "--focus-visible",
1493
- "value": "transparent",
1614
+ "name": "--divider-background",
1615
+ "value": "var(--group-divider-background)",
1494
1616
  "defaultValue": null,
1495
- "referencedVars": [],
1496
- "variant": ".group:not(.ghost) .input"
1617
+ "referencedVars": [
1618
+ "--group-divider-background"
1619
+ ],
1620
+ "variant": ".group .item.divider > [role=\"separator\"]"
1497
1621
  },
1498
1622
  {
1499
1623
  "name": "--background-radius",
1500
1624
  "value": "0",
1501
1625
  "defaultValue": null,
1502
1626
  "referencedVars": [],
1503
- "variant": ".group:not(.ghost).none :is(.button, .trigger, .select)"
1627
+ "variant": ".group.none :is(.button, .trigger, .select)"
1504
1628
  },
1505
1629
  {
1506
1630
  "name": "--background-inner-radius",
1507
1631
  "value": "0",
1508
1632
  "defaultValue": null,
1509
1633
  "referencedVars": [],
1510
- "variant": ".group:not(.ghost).none :is(.button, .trigger, .select)"
1634
+ "variant": ".group.none :is(.button, .trigger, .select)"
1511
1635
  },
1512
1636
  {
1513
1637
  "name": "--radius-sm",
1514
1638
  "value": "0",
1515
1639
  "defaultValue": null,
1516
1640
  "referencedVars": [],
1517
- "variant": ".group:not(.ghost).none .input"
1641
+ "variant": ".group.none .input"
1518
1642
  },
1519
1643
  {
1520
- "name": "--radius-sm",
1644
+ "name": "--group-item-radius",
1645
+ "value": "var(--background-inner-radius) 0 0 var(--background-inner-radius)",
1646
+ "defaultValue": null,
1647
+ "referencedVars": [
1648
+ "--background-inner-radius"
1649
+ ],
1650
+ "variant": ".group.none .item:first-child"
1651
+ },
1652
+ {
1653
+ "name": "--group-item-radius",
1654
+ "value": "0 var(--background-inner-radius) var(--background-inner-radius) 0",
1655
+ "defaultValue": null,
1656
+ "referencedVars": [
1657
+ "--background-inner-radius"
1658
+ ],
1659
+ "variant": ".group.none .item:last-child"
1660
+ },
1661
+ {
1662
+ "name": "--group-item-radius",
1663
+ "value": "var(--background-inner-radius) var(--background-inner-radius) 0 0",
1664
+ "defaultValue": null,
1665
+ "referencedVars": [
1666
+ "--background-inner-radius"
1667
+ ],
1668
+ "variant": ".group.none.vertical .item:first-child"
1669
+ },
1670
+ {
1671
+ "name": "--group-item-radius",
1672
+ "value": "0 0 var(--background-inner-radius) var(--background-inner-radius)",
1673
+ "defaultValue": null,
1674
+ "referencedVars": [
1675
+ "--background-inner-radius"
1676
+ ],
1677
+ "variant": ".group.none.vertical .item:last-child"
1678
+ },
1679
+ {
1680
+ "name": "--group-item-radius",
1521
1681
  "value": "var(--background-inner-radius)",
1522
1682
  "defaultValue": null,
1523
1683
  "referencedVars": [
1524
1684
  "--background-inner-radius"
1525
1685
  ],
1526
- "variant": ".group:not(.ghost):is(.xs, .sm) .input"
1686
+ "variant": ".group:is(.xs, .sm) .item"
1527
1687
  },
1528
1688
  {
1529
- "name": "--background-radius",
1530
- "value": "0",
1689
+ "name": "--radius-sm",
1690
+ "value": "var(--background-inner-radius)",
1531
1691
  "defaultValue": null,
1532
- "referencedVars": [],
1533
- "variant": ".group.ghost.none :is(.button, .select)"
1692
+ "referencedVars": [
1693
+ "--background-inner-radius"
1694
+ ],
1695
+ "variant": ".group:is(.xs, .sm) .input"
1534
1696
  },
1535
1697
  {
1536
- "name": "--background-inner-radius",
1537
- "value": "0",
1698
+ "name": "--ring-shadow",
1699
+ "value": "none",
1538
1700
  "defaultValue": null,
1539
1701
  "referencedVars": [],
1540
- "variant": ".group.ghost.none :is(.button, .select)"
1702
+ "variant": ".group [data-ring=\"true\"]"
1541
1703
  },
1542
1704
  {
1543
- "name": "--background-border",
1705
+ "name": "--ring-border",
1544
1706
  "value": "transparent",
1545
1707
  "defaultValue": null,
1546
1708
  "referencedVars": [],
1547
- "variant": ".group.ghost.none .input"
1709
+ "variant": ".group [data-ring=\"true\"]"
1548
1710
  },
1549
1711
  {
1550
- "name": "--radius-sm",
1551
- "value": "0",
1712
+ "name": "--ring-border-visible",
1713
+ "value": "transparent",
1552
1714
  "defaultValue": null,
1553
1715
  "referencedVars": [],
1554
- "variant": ".group.ghost.none .input"
1716
+ "variant": ".group [data-ring=\"true\"]"
1555
1717
  }
1556
1718
  ]
1557
1719
  },
1558
1720
  "grid": {
1559
- "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",
1560
1722
  "styleableParts": [
1561
1723
  {
1562
1724
  "name": "root"
1563
1725
  }
1564
1726
  ],
1565
1727
  "cssVariables": [
1728
+ {
1729
+ "name": "--gap-scale",
1730
+ "value": "1",
1731
+ "defaultValue": null,
1732
+ "referencedVars": [],
1733
+ "variant": ".grid"
1734
+ },
1566
1735
  {
1567
1736
  "name": "--background",
1568
1737
  "value": "transparent",
@@ -1576,11 +1745,54 @@
1576
1745
  "defaultValue": null,
1577
1746
  "referencedVars": [],
1578
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"
1579
1791
  }
1580
1792
  ]
1581
1793
  },
1582
1794
  "gallery": {
1583
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .item {\n @apply flex flex-col border overflow-hidden no-underline cursor-pointer;\n\n background: var(--background);\n border: var(--border-width-base, 1px) solid var(--background-border);\n border-radius: var(--radius-sm, 0.375rem);\n\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n color: inherit;\n }\n\n .item:focus {\n outline: none;\n }\n\n .item[data-focus-visible=\"true\"] {\n box-shadow: 0 0 0 1.5px var(--focus-visible);\n outline: none;\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, var(--background-border)));\n }\n\n .item[data-orientation=\"horizontal\"] {\n @apply flex-row;\n }\n\n .item[data-orientation=\"horizontal\"] .view {\n width: var(--gallery-horizontal-view-width, 200px);\n }\n\n .view {\n --aspect-ratio: var(--gallery-aspect-ratio, 16/9);\n\n @apply relative overflow-hidden;\n aspect-ratio: var(--aspect-ratio);\n background: var(--background, transparent);\n }\n\n .view > img,\n .view > video {\n @apply w-full h-full object-cover;\n }\n\n .body {\n @apply flex flex-col gap-1 p-3 self-start min-w-0;\n }\n\n .item[data-orientation=\"horizontal\"] .body {\n flex: 1;\n align-self: stretch;\n }\n\n .body > :first-child {\n font-weight: var(--font-weight-medium, 500);\n color: var(--foreground);\n }\n\n .body > :not(:first-child) {\n font-size: var(--text-sm, 0.875rem);\n color: var(--foreground-muted, var(--foreground));\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",
1584
1796
  "styleableParts": [
1585
1797
  {
1586
1798
  "name": "root"
@@ -1597,13 +1809,98 @@
1597
1809
  ],
1598
1810
  "cssVariables": [
1599
1811
  {
1600
- "name": "--aspect-ratio",
1601
- "value": "var(--gallery-aspect-ratio, 16/9)",
1602
- "defaultValue": "16/9",
1812
+ "name": "--border-width",
1813
+ "value": "var(--border-width-base, 1px)",
1814
+ "defaultValue": "1px",
1815
+ "referencedVars": [
1816
+ "--border-width-base"
1817
+ ],
1818
+ "variant": ".item"
1819
+ },
1820
+ {
1821
+ "name": "--radius",
1822
+ "value": "var(--radius-sm, 0.375rem)",
1823
+ "defaultValue": "0.375rem",
1603
1824
  "referencedVars": [
1604
- "--gallery-aspect-ratio"
1825
+ "--radius-sm"
1826
+ ],
1827
+ "variant": ".item"
1828
+ },
1829
+ {
1830
+ "name": "--transition",
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
+ ],
1837
+ "variant": ".item"
1838
+ },
1839
+ {
1840
+ "name": "--view-width",
1841
+ "value": "200px",
1842
+ "defaultValue": null,
1843
+ "referencedVars": [],
1844
+ "variant": ".item"
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"
1605
1852
  ],
1853
+ "variant": ".item[data-hovered=\"true\"]"
1854
+ },
1855
+ {
1856
+ "name": "--aspect-ratio",
1857
+ "value": "16/9",
1858
+ "defaultValue": null,
1859
+ "referencedVars": [],
1860
+ "variant": ".view"
1861
+ },
1862
+ {
1863
+ "name": "--background",
1864
+ "value": "transparent",
1865
+ "defaultValue": null,
1866
+ "referencedVars": [],
1606
1867
  "variant": ".view"
1868
+ },
1869
+ {
1870
+ "name": "--gap",
1871
+ "value": "calc(var(--spacing, 0.25rem) * 1)",
1872
+ "defaultValue": "0.25rem",
1873
+ "referencedVars": [
1874
+ "--spacing"
1875
+ ],
1876
+ "variant": ".body"
1877
+ },
1878
+ {
1879
+ "name": "--padding",
1880
+ "value": "calc(var(--spacing, 0.25rem) * 3)",
1881
+ "defaultValue": "0.25rem",
1882
+ "referencedVars": [
1883
+ "--spacing"
1884
+ ],
1885
+ "variant": ".body"
1886
+ },
1887
+ {
1888
+ "name": "--title-color",
1889
+ "value": "var(--foreground)",
1890
+ "defaultValue": null,
1891
+ "referencedVars": [
1892
+ "--foreground"
1893
+ ],
1894
+ "variant": ".body"
1895
+ },
1896
+ {
1897
+ "name": "--description-color",
1898
+ "value": "var(--foreground-muted, var(--foreground))",
1899
+ "defaultValue": "var(--foreground",
1900
+ "referencedVars": [
1901
+ "--foreground-muted"
1902
+ ],
1903
+ "variant": ".body"
1607
1904
  }
1608
1905
  ]
1609
1906
  },
@@ -1636,16 +1933,52 @@
1636
1933
  ]
1637
1934
  },
1638
1935
  "flex": {
1639
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .flex {\n @apply flex w-full flex-row;\n flex-wrap: nowrap;\n gap: var(--spacing-md);\n justify-content: flex-start;\n align-items: stretch;\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",
1640
1937
  "styleableParts": [
1641
1938
  {
1642
1939
  "name": "root"
1643
1940
  }
1644
1941
  ],
1645
- "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
+ ]
1646
1979
  },
1647
1980
  "expand": {
1648
- "rawCss": "@reference \"tailwindcss\";\n\n@layer components {\n .expand {\n --disabled-opacity: 0.6;\n\n @apply flex flex-col;\n }\n\n .expand[data-disabled] {\n opacity: var(--disabled-opacity);\n cursor: not-allowed;\n }\n\n .trigger {\n @apply flex w-full items-stretch justify-between p-0 text-left cursor-pointer;\n\n font-size: var(--text-sm);\n line-height: var(--leading-snug);\n color: var(--foreground);\n background-color: var(--background);\n\n border: none;\n border-radius: var(--radius-sm);\n transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);\n\n &[data-disabled] {\n cursor: not-allowed;\n opacity: var(--disabled-opacity);\n }\n }\n\n .icon {\n @apply flex shrink-0 items-center justify-center px-3 py-2;\n color: inherit;\n border-radius: var(--radius-sm);\n\n @media (hover: hover) {\n .trigger:not([data-disabled]):hover & {\n background-color: var(--background-hover);\n border-radius: 0 var(--radius-sm) var(--radius-sm) 0;\n }\n\n /* When the icon itself is hovered, it should be isolated and fully rounded */\n .trigger:not([data-disabled]) &:hover {\n border-radius: var(--radius-sm);\n }\n }\n }\n\n .icon > * {\n transition: transform 250ms var(--ease-smooth-settle);\n }\n\n .expand:has(.trigger[data-expanded=\"true\"]) .icon > *,\n .icon[data-expanded=\"true\"] > * {\n transform: rotate(180deg);\n }\n\n /* from=\"above\": content expands upward above the trigger */\n .expand:has(.content[data-from=\"above\"]) {\n flex-direction: column-reverse;\n\n .icon > * {\n transform: rotate(180deg);\n }\n\n &:has(.trigger[data-expanded=\"true\"]) .icon > * {\n transform: rotate(0deg);\n }\n }\n\n /* from=\"left\": content appears left of trigger */\n .expand:has(.content[data-from=\"left\"]) {\n @apply flex-row-reverse items-start;\n\n .trigger {\n @apply w-auto flex-col;\n }\n\n .icon > * {\n transform: rotate(-90deg);\n }\n\n &:has(.trigger[data-expanded=\"true\"]) .icon > * {\n transform: rotate(90deg);\n }\n }\n\n /* from=\"right\": content appears right of trigger */\n .expand:has(.content[data-from=\"right\"]) {\n @apply flex-row items-start;\n\n .trigger {\n @apply w-auto flex-col;\n }\n\n .icon > * {\n transform: rotate(90deg);\n }\n\n &:has(.trigger[data-expanded=\"true\"]) .icon > * {\n transform: rotate(-90deg);\n }\n }\n\n /* Horizontal content animation */\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 &[data-expanded=\"true\"] {\n grid-template-columns: 1fr;\n }\n\n .content-inner {\n min-height: unset;\n min-width: 0;\n }\n }\n\n .title {\n @apply flex flex-1 min-w-0 items-center overflow-hidden py-2 pl-3;\n\n font-weight: var(--font-weight-medium);\n border-radius: var(--radius-sm) 0 0 var(--radius-sm);\n color: inherit;\n\n @media (hover: hover) {\n .trigger:not([data-disabled]):hover & {\n background-color: var(--background-hover);\n }\n\n /* When icon is hovered, remove background from title */\n .trigger:not([data-disabled]):has(.icon:hover) & {\n background-color: transparent;\n }\n }\n\n .trigger:not([data-disabled]) {\n background-color: transparent;\n }\n }\n\n .content {\n @apply grid overflow-hidden;\n grid-template-rows: 0fr;\n transition: grid-template-rows 300ms var(--ease-smooth-settle);\n\n &[data-expanded=\"true\"] {\n grid-template-rows: 1fr;\n }\n }\n\n .content-inner {\n @apply min-h-0 overflow-hidden;\n color: var(--foreground-content);\n background-color: var(--background-content);\n }\n\n .expand:has(.trigger[data-disabled]) {\n pointer-events: none;\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",
1649
1982
  "styleableParts": [
1650
1983
  {
1651
1984
  "name": "root"
@@ -1653,22 +1986,67 @@
1653
1986
  {
1654
1987
  "name": "trigger"
1655
1988
  },
1989
+ {
1990
+ "name": "icon.collapsed"
1991
+ },
1992
+ {
1993
+ "name": "icon.expanded"
1994
+ },
1995
+ {
1996
+ "name": "title"
1997
+ },
1656
1998
  {
1657
1999
  "name": "content"
2000
+ },
2001
+ {
2002
+ "name": "contentInner"
2003
+ },
2004
+ {
2005
+ "name": "divider"
1658
2006
  }
1659
2007
  ],
1660
2008
  "cssVariables": [
1661
2009
  {
1662
- "name": "--disabled-opacity",
2010
+ "name": "--expand-disabled-opacity",
1663
2011
  "value": "0.6",
1664
2012
  "defaultValue": null,
1665
2013
  "referencedVars": [],
1666
2014
  "variant": ".expand"
2015
+ },
2016
+ {
2017
+ "name": "--expand-trigger-padding-x",
2018
+ "value": "0.75rem",
2019
+ "defaultValue": null,
2020
+ "referencedVars": [],
2021
+ "variant": ".expand"
2022
+ },
2023
+ {
2024
+ "name": "--expand-trigger-padding-y",
2025
+ "value": "0.5rem",
2026
+ "defaultValue": null,
2027
+ "referencedVars": [],
2028
+ "variant": ".expand"
2029
+ },
2030
+ {
2031
+ "name": "--expand-divider-spacing",
2032
+ "value": "0.5rem",
2033
+ "defaultValue": null,
2034
+ "referencedVars": [],
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"
1667
2045
  }
1668
2046
  ]
1669
2047
  },
1670
2048
  "divider": {
1671
- "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",
1672
2050
  "styleableParts": [
1673
2051
  {
1674
2052
  "name": "root"
@@ -1677,17 +2055,17 @@
1677
2055
  "cssVariables": [
1678
2056
  {
1679
2057
  "name": "--divider-background",
1680
- "value": "var(--background)",
1681
- "defaultValue": null,
2058
+ "value": "var(--group-divider-background, var(--background-border, var(--background)))",
2059
+ "defaultValue": "var(--background-border, var(--background",
1682
2060
  "referencedVars": [
1683
- "--background"
2061
+ "--group-divider-background"
1684
2062
  ],
1685
2063
  "variant": ".divider"
1686
2064
  }
1687
2065
  ]
1688
2066
  },
1689
2067
  "date": {
1690
- "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",
1691
2069
  "styleableParts": [
1692
2070
  {
1693
2071
  "name": "root"
@@ -1713,6 +2091,15 @@
1713
2091
  "referencedVars": [],
1714
2092
  "variant": ".calendar"
1715
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
+ },
1716
2103
  {
1717
2104
  "name": "--cell-background",
1718
2105
  "value": "transparent",
@@ -1958,7 +2345,7 @@
1958
2345
  ]
1959
2346
  },
1960
2347
  "command": {
1961
- "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",
1962
2349
  "styleableParts": [
1963
2350
  {
1964
2351
  "name": "root"
@@ -1996,15 +2383,36 @@
1996
2383
  "defaultValue": null,
1997
2384
  "referencedVars": [],
1998
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"
1999
2395
  }
2000
2396
  ]
2001
2397
  },
2002
2398
  "color": {
2003
- "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",
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",
2004
2400
  "styleableParts": [
2401
+ {
2402
+ "name": "provider"
2403
+ },
2005
2404
  {
2006
2405
  "name": "root"
2007
2406
  },
2407
+ {
2408
+ "name": "trigger"
2409
+ },
2410
+ {
2411
+ "name": "triggerSwatch"
2412
+ },
2413
+ {
2414
+ "name": "triggerValue"
2415
+ },
2008
2416
  {
2009
2417
  "name": "controls"
2010
2418
  },
@@ -2091,6 +2499,87 @@
2091
2499
  ],
2092
2500
  "variant": ".color"
2093
2501
  },
2502
+ {
2503
+ "name": "--trigger-background",
2504
+ "value": "color-mix(in srgb, var(--background-800) 35%, transparent)",
2505
+ "defaultValue": null,
2506
+ "referencedVars": [
2507
+ "--background-800"
2508
+ ],
2509
+ "variant": ".color-provider .color-trigger"
2510
+ },
2511
+ {
2512
+ "name": "--trigger-background-hover",
2513
+ "value": "color-mix(in srgb, var(--background-700) 45%, transparent)",
2514
+ "defaultValue": null,
2515
+ "referencedVars": [
2516
+ "--background-700"
2517
+ ],
2518
+ "variant": ".color-provider .color-trigger"
2519
+ },
2520
+ {
2521
+ "name": "--trigger-border",
2522
+ "value": "var(--background-700)",
2523
+ "defaultValue": null,
2524
+ "referencedVars": [
2525
+ "--background-700"
2526
+ ],
2527
+ "variant": ".color-provider .color-trigger"
2528
+ },
2529
+ {
2530
+ "name": "--trigger-text",
2531
+ "value": "var(--foreground-200)",
2532
+ "defaultValue": null,
2533
+ "referencedVars": [
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"
2553
+ ],
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
+ },
2094
2583
  {
2095
2584
  "name": "--pointer-border",
2096
2585
  "value": "color-mix(in srgb, var(--foreground-200) 50%, transparent)",
@@ -2098,21 +2587,184 @@
2098
2587
  "referencedVars": [
2099
2588
  "--foreground-200"
2100
2589
  ],
2101
- "variant": ".canvas-pointer"
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"
2102
2652
  },
2103
2653
  {
2104
2654
  "name": "--thumb-border",
2105
2655
  "value": "white",
2106
2656
  "defaultValue": null,
2107
2657
  "referencedVars": [],
2108
- "variant": ".hue-thumb"
2658
+ "variant": ".hue-slider .hue-thumb"
2109
2659
  },
2110
2660
  {
2111
2661
  "name": "--thumb-background",
2112
2662
  "value": "white",
2113
2663
  "defaultValue": null,
2114
2664
  "referencedVars": [],
2115
- "variant": ".hue-thumb"
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"
2116
2768
  },
2117
2769
  {
2118
2770
  "name": "--checkerboard-dark",
@@ -2121,7 +2773,7 @@
2121
2773
  "referencedVars": [
2122
2774
  "--background-800"
2123
2775
  ],
2124
- "variant": ".opacity-track"
2776
+ "variant": ".opacity-slider"
2125
2777
  },
2126
2778
  {
2127
2779
  "name": "--checkerboard-light",
@@ -2130,21 +2782,89 @@
2130
2782
  "referencedVars": [
2131
2783
  "--background-700"
2132
2784
  ],
2133
- "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"
2134
2797
  },
2135
2798
  {
2136
2799
  "name": "--thumb-border",
2137
2800
  "value": "white",
2138
2801
  "defaultValue": null,
2139
2802
  "referencedVars": [],
2140
- "variant": ".opacity-thumb"
2803
+ "variant": ".opacity-slider .opacity-thumb"
2141
2804
  },
2142
2805
  {
2143
2806
  "name": "--thumb-background",
2144
2807
  "value": "white",
2145
2808
  "defaultValue": null,
2146
2809
  "referencedVars": [],
2147
- "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"
2148
2868
  },
2149
2869
  {
2150
2870
  "name": "--checkerboard-dark",
@@ -2185,7 +2905,7 @@
2185
2905
  ]
2186
2906
  },
2187
2907
  "code": {
2188
- "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",
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",
2189
2909
  "styleableParts": [
2190
2910
  {
2191
2911
  "name": "root"
@@ -2227,11 +2947,47 @@
2227
2947
  "--background-950"
2228
2948
  ],
2229
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"
2230
2986
  }
2231
2987
  ]
2232
2988
  },
2233
2989
  "checkbox": {
2234
- "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-focus-visible=\"true\"] {\n outline: 2px solid transparent;\n box-shadow: 0 0 0 3px var(--focus-visible);\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",
2235
2991
  "styleableParts": [
2236
2992
  {
2237
2993
  "name": "root"
@@ -2258,10 +3014,20 @@
2258
3014
  "name": "\"helper-text\""
2259
3015
  }
2260
3016
  ],
2261
- "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
+ ]
2262
3028
  },
2263
3029
  "card": {
2264
- "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",
2265
3031
  "styleableParts": [
2266
3032
  {
2267
3033
  "name": "root"
@@ -2279,7 +3045,7 @@
2279
3045
  "cssVariables": []
2280
3046
  },
2281
3047
  "button": {
2282
- "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 box-shadow: 0 0 0 1.5px var(--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",
2283
3049
  "styleableParts": [
2284
3050
  {
2285
3051
  "name": "root"
@@ -2291,10 +3057,20 @@
2291
3057
  "name": "icon.right"
2292
3058
  }
2293
3059
  ],
2294
- "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
+ ]
2295
3071
  },
2296
3072
  "banner": {
2297
- "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",
2298
3074
  "styleableParts": [
2299
3075
  {
2300
3076
  "name": "root"
@@ -2309,25 +3085,63 @@
2309
3085
  "name": "dismiss"
2310
3086
  }
2311
3087
  ],
2312
- "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
+ ]
2313
3108
  },
2314
3109
  "badge": {
2315
- "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",
2316
3111
  "styleableParts": [
2317
3112
  {
2318
3113
  "name": "root"
2319
3114
  },
2320
3115
  {
2321
- "name": "icon"
3116
+ "name": "icon.left"
3117
+ },
3118
+ {
3119
+ "name": "icon.right"
3120
+ },
3121
+ {
3122
+ "name": "iconLeft"
3123
+ },
3124
+ {
3125
+ "name": "iconRight"
2322
3126
  },
2323
3127
  {
2324
3128
  "name": "dismiss"
2325
3129
  }
2326
3130
  ],
2327
- "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
+ ]
2328
3142
  },
2329
3143
  "anchor": {
2330
- "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 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 &:focus-visible {\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",
2331
3145
  "styleableParts": [
2332
3146
  {
2333
3147
  "name": "root"
@@ -2339,6 +3153,16 @@
2339
3153
  "name": "preview"
2340
3154
  }
2341
3155
  ],
2342
- "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
+ ]
2343
3167
  }
2344
3168
  }