@mortenbrudvik/waveui 0.7.0 → 0.8.0

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 (408) hide show
  1. package/README.md +395 -132
  2. package/dist/components/button/Button.cjs +1 -1
  3. package/dist/components/button/Button.cjs.map +1 -1
  4. package/dist/components/button/Button.mjs +36 -35
  5. package/dist/components/button/Button.mjs.map +1 -1
  6. package/dist/components/button/Button.slots.cjs +1 -1
  7. package/dist/components/button/Button.slots.cjs.map +1 -1
  8. package/dist/components/button/Button.slots.mjs +31 -21
  9. package/dist/components/button/Button.slots.mjs.map +1 -1
  10. package/dist/components/button/CompoundButton.cjs +1 -1
  11. package/dist/components/button/CompoundButton.cjs.map +1 -1
  12. package/dist/components/button/CompoundButton.mjs +31 -29
  13. package/dist/components/button/CompoundButton.mjs.map +1 -1
  14. package/dist/components/button/Link.cjs +1 -1
  15. package/dist/components/button/Link.cjs.map +1 -1
  16. package/dist/components/button/Link.mjs +24 -23
  17. package/dist/components/button/Link.mjs.map +1 -1
  18. package/dist/components/button/MenuButton.cjs +1 -1
  19. package/dist/components/button/MenuButton.cjs.map +1 -1
  20. package/dist/components/button/MenuButton.mjs +29 -28
  21. package/dist/components/button/MenuButton.mjs.map +1 -1
  22. package/dist/components/button/SplitButton.cjs +1 -1
  23. package/dist/components/button/SplitButton.cjs.map +1 -1
  24. package/dist/components/button/SplitButton.mjs +46 -45
  25. package/dist/components/button/SplitButton.mjs.map +1 -1
  26. package/dist/components/button/ToggleButton.cjs +1 -1
  27. package/dist/components/button/ToggleButton.cjs.map +1 -1
  28. package/dist/components/button/ToggleButton.mjs +38 -35
  29. package/dist/components/button/ToggleButton.mjs.map +1 -1
  30. package/dist/components/button/Toolbar.cjs +1 -1
  31. package/dist/components/button/Toolbar.cjs.map +1 -1
  32. package/dist/components/button/Toolbar.mjs +43 -42
  33. package/dist/components/button/Toolbar.mjs.map +1 -1
  34. package/dist/components/button/Toolbar.parts.cjs +1 -1
  35. package/dist/components/button/Toolbar.parts.cjs.map +1 -1
  36. package/dist/components/button/Toolbar.parts.mjs +76 -81
  37. package/dist/components/button/Toolbar.parts.mjs.map +1 -1
  38. package/dist/components/data-display/Avatar.cjs +1 -1
  39. package/dist/components/data-display/Avatar.cjs.map +1 -1
  40. package/dist/components/data-display/Avatar.mjs +72 -67
  41. package/dist/components/data-display/Avatar.mjs.map +1 -1
  42. package/dist/components/data-display/AvatarGroup.cjs +1 -1
  43. package/dist/components/data-display/AvatarGroup.cjs.map +1 -1
  44. package/dist/components/data-display/AvatarGroup.mjs +89 -88
  45. package/dist/components/data-display/AvatarGroup.mjs.map +1 -1
  46. package/dist/components/data-display/Badge.cjs +1 -1
  47. package/dist/components/data-display/Badge.cjs.map +1 -1
  48. package/dist/components/data-display/Badge.mjs +17 -16
  49. package/dist/components/data-display/Badge.mjs.map +1 -1
  50. package/dist/components/data-display/CounterBadge.cjs +1 -1
  51. package/dist/components/data-display/CounterBadge.cjs.map +1 -1
  52. package/dist/components/data-display/CounterBadge.mjs +18 -17
  53. package/dist/components/data-display/CounterBadge.mjs.map +1 -1
  54. package/dist/components/data-display/Divider.cjs +1 -1
  55. package/dist/components/data-display/Divider.cjs.map +1 -1
  56. package/dist/components/data-display/Divider.mjs +31 -30
  57. package/dist/components/data-display/Divider.mjs.map +1 -1
  58. package/dist/components/data-display/Image.cjs +1 -1
  59. package/dist/components/data-display/Image.cjs.map +1 -1
  60. package/dist/components/data-display/Image.mjs +16 -15
  61. package/dist/components/data-display/Image.mjs.map +1 -1
  62. package/dist/components/data-display/InfoLabel.cjs +1 -1
  63. package/dist/components/data-display/InfoLabel.cjs.map +1 -1
  64. package/dist/components/data-display/InfoLabel.mjs +74 -73
  65. package/dist/components/data-display/InfoLabel.mjs.map +1 -1
  66. package/dist/components/data-display/List.cjs +1 -1
  67. package/dist/components/data-display/List.cjs.map +1 -1
  68. package/dist/components/data-display/List.mjs +175 -174
  69. package/dist/components/data-display/List.mjs.map +1 -1
  70. package/dist/components/data-display/Persona.cjs +1 -1
  71. package/dist/components/data-display/Persona.cjs.map +1 -1
  72. package/dist/components/data-display/Persona.mjs +31 -29
  73. package/dist/components/data-display/Persona.mjs.map +1 -1
  74. package/dist/components/data-display/PresenceBadge.cjs +1 -1
  75. package/dist/components/data-display/PresenceBadge.cjs.map +1 -1
  76. package/dist/components/data-display/PresenceBadge.mjs +25 -24
  77. package/dist/components/data-display/PresenceBadge.mjs.map +1 -1
  78. package/dist/components/data-display/Tag.cjs +1 -1
  79. package/dist/components/data-display/Tag.cjs.map +1 -1
  80. package/dist/components/data-display/Tag.mjs +87 -82
  81. package/dist/components/data-display/Tag.mjs.map +1 -1
  82. package/dist/components/feedback/MessageBar.cjs +1 -1
  83. package/dist/components/feedback/MessageBar.cjs.map +1 -1
  84. package/dist/components/feedback/MessageBar.mjs +129 -71
  85. package/dist/components/feedback/MessageBar.mjs.map +1 -1
  86. package/dist/components/feedback/MessageBar.parts.cjs +2 -0
  87. package/dist/components/feedback/MessageBar.parts.cjs.map +1 -0
  88. package/dist/components/feedback/MessageBar.parts.mjs +84 -0
  89. package/dist/components/feedback/MessageBar.parts.mjs.map +1 -0
  90. package/dist/components/feedback/MessageBar.reflow.cjs +2 -0
  91. package/dist/components/feedback/MessageBar.reflow.cjs.map +1 -0
  92. package/dist/components/feedback/MessageBar.reflow.mjs +74 -0
  93. package/dist/components/feedback/MessageBar.reflow.mjs.map +1 -0
  94. package/dist/components/feedback/MessageBar.status.cjs +1 -1
  95. package/dist/components/feedback/MessageBar.status.cjs.map +1 -1
  96. package/dist/components/feedback/MessageBar.status.mjs +2 -1
  97. package/dist/components/feedback/MessageBar.status.mjs.map +1 -1
  98. package/dist/components/feedback/ProgressBar.cjs +1 -1
  99. package/dist/components/feedback/ProgressBar.cjs.map +1 -1
  100. package/dist/components/feedback/ProgressBar.mjs +44 -43
  101. package/dist/components/feedback/ProgressBar.mjs.map +1 -1
  102. package/dist/components/feedback/Skeleton.cjs +1 -1
  103. package/dist/components/feedback/Skeleton.cjs.map +1 -1
  104. package/dist/components/feedback/Skeleton.mjs +26 -24
  105. package/dist/components/feedback/Skeleton.mjs.map +1 -1
  106. package/dist/components/feedback/Spinner.cjs +1 -1
  107. package/dist/components/feedback/Spinner.cjs.map +1 -1
  108. package/dist/components/feedback/Spinner.mjs +32 -31
  109. package/dist/components/feedback/Spinner.mjs.map +1 -1
  110. package/dist/components/feedback/Toast.cjs +1 -1
  111. package/dist/components/feedback/Toast.cjs.map +1 -1
  112. package/dist/components/feedback/Toast.context.cjs +2 -0
  113. package/dist/components/feedback/Toast.context.cjs.map +1 -0
  114. package/dist/components/feedback/Toast.context.mjs +23 -0
  115. package/dist/components/feedback/Toast.context.mjs.map +1 -0
  116. package/dist/components/feedback/Toast.mjs +10 -342
  117. package/dist/components/feedback/Toast.mjs.map +1 -1
  118. package/dist/components/feedback/Toast.parts.cjs +2 -0
  119. package/dist/components/feedback/Toast.parts.cjs.map +1 -0
  120. package/dist/components/feedback/Toast.parts.mjs +98 -0
  121. package/dist/components/feedback/Toast.parts.mjs.map +1 -0
  122. package/dist/components/feedback/Toast.root.cjs +2 -0
  123. package/dist/components/feedback/Toast.root.cjs.map +1 -0
  124. package/dist/components/feedback/Toast.root.mjs +109 -0
  125. package/dist/components/feedback/Toast.root.mjs.map +1 -0
  126. package/dist/components/feedback/Toaster.cjs +2 -0
  127. package/dist/components/feedback/Toaster.cjs.map +1 -0
  128. package/dist/components/feedback/Toaster.mjs +564 -0
  129. package/dist/components/feedback/Toaster.mjs.map +1 -0
  130. package/dist/components/input/AlphaSlider.cjs +2 -0
  131. package/dist/components/input/AlphaSlider.cjs.map +1 -0
  132. package/dist/components/input/AlphaSlider.mjs +115 -0
  133. package/dist/components/input/AlphaSlider.mjs.map +1 -0
  134. package/dist/components/input/Checkbox.cjs +1 -1
  135. package/dist/components/input/Checkbox.cjs.map +1 -1
  136. package/dist/components/input/Checkbox.mjs +47 -46
  137. package/dist/components/input/Checkbox.mjs.map +1 -1
  138. package/dist/components/input/ColorArea.cjs +2 -0
  139. package/dist/components/input/ColorArea.cjs.map +1 -0
  140. package/dist/components/input/ColorArea.mjs +204 -0
  141. package/dist/components/input/ColorArea.mjs.map +1 -0
  142. package/dist/components/input/ColorPicker.cjs +5 -5
  143. package/dist/components/input/ColorPicker.cjs.map +1 -1
  144. package/dist/components/input/ColorPicker.mjs +142 -165
  145. package/dist/components/input/ColorPicker.mjs.map +1 -1
  146. package/dist/components/input/ColorPicker.parts.cjs +2 -0
  147. package/dist/components/input/ColorPicker.parts.cjs.map +1 -0
  148. package/dist/components/input/ColorPicker.parts.mjs +192 -0
  149. package/dist/components/input/ColorPicker.parts.mjs.map +1 -0
  150. package/dist/components/input/ColorSlider.cjs +2 -0
  151. package/dist/components/input/ColorSlider.cjs.map +1 -0
  152. package/dist/components/input/ColorSlider.mjs +138 -0
  153. package/dist/components/input/ColorSlider.mjs.map +1 -0
  154. package/dist/components/input/Combobox.cjs +1 -1
  155. package/dist/components/input/Combobox.cjs.map +1 -1
  156. package/dist/components/input/Combobox.expand.cjs +1 -1
  157. package/dist/components/input/Combobox.expand.cjs.map +1 -1
  158. package/dist/components/input/Combobox.expand.mjs +9 -9
  159. package/dist/components/input/Combobox.expand.mjs.map +1 -1
  160. package/dist/components/input/Combobox.mjs +90 -85
  161. package/dist/components/input/Combobox.mjs.map +1 -1
  162. package/dist/components/input/DatePicker.cjs +1 -1
  163. package/dist/components/input/DatePicker.cjs.map +1 -1
  164. package/dist/components/input/DatePicker.mjs +186 -185
  165. package/dist/components/input/DatePicker.mjs.map +1 -1
  166. package/dist/components/input/Dropdown.cjs +1 -1
  167. package/dist/components/input/Dropdown.cjs.map +1 -1
  168. package/dist/components/input/Dropdown.mjs +71 -68
  169. package/dist/components/input/Dropdown.mjs.map +1 -1
  170. package/dist/components/input/Field.cjs +1 -1
  171. package/dist/components/input/Field.cjs.map +1 -1
  172. package/dist/components/input/Field.mjs +113 -112
  173. package/dist/components/input/Field.mjs.map +1 -1
  174. package/dist/components/input/Input.cjs +1 -1
  175. package/dist/components/input/Input.cjs.map +1 -1
  176. package/dist/components/input/Input.mjs +55 -54
  177. package/dist/components/input/Input.mjs.map +1 -1
  178. package/dist/components/input/Label.cjs +1 -1
  179. package/dist/components/input/Label.cjs.map +1 -1
  180. package/dist/components/input/Label.mjs +12 -11
  181. package/dist/components/input/Label.mjs.map +1 -1
  182. package/dist/components/input/Option.cjs +1 -1
  183. package/dist/components/input/Option.cjs.map +1 -1
  184. package/dist/components/input/Option.mjs +100 -98
  185. package/dist/components/input/Option.mjs.map +1 -1
  186. package/dist/components/input/RadioGroup.cjs +1 -1
  187. package/dist/components/input/RadioGroup.cjs.map +1 -1
  188. package/dist/components/input/RadioGroup.mjs +89 -88
  189. package/dist/components/input/RadioGroup.mjs.map +1 -1
  190. package/dist/components/input/Rating.cjs +1 -1
  191. package/dist/components/input/Rating.cjs.map +1 -1
  192. package/dist/components/input/Rating.mjs +110 -109
  193. package/dist/components/input/Rating.mjs.map +1 -1
  194. package/dist/components/input/SearchBox.cjs +1 -1
  195. package/dist/components/input/SearchBox.cjs.map +1 -1
  196. package/dist/components/input/SearchBox.mjs +118 -119
  197. package/dist/components/input/SearchBox.mjs.map +1 -1
  198. package/dist/components/input/Select.cjs +1 -1
  199. package/dist/components/input/Select.cjs.map +1 -1
  200. package/dist/components/input/Select.mjs +25 -24
  201. package/dist/components/input/Select.mjs.map +1 -1
  202. package/dist/components/input/Slider.cjs +1 -1
  203. package/dist/components/input/Slider.cjs.map +1 -1
  204. package/dist/components/input/Slider.mjs +47 -46
  205. package/dist/components/input/Slider.mjs.map +1 -1
  206. package/dist/components/input/SpinButton.cjs +1 -1
  207. package/dist/components/input/SpinButton.cjs.map +1 -1
  208. package/dist/components/input/SpinButton.mjs +76 -75
  209. package/dist/components/input/SpinButton.mjs.map +1 -1
  210. package/dist/components/input/SwatchPicker.cjs +1 -1
  211. package/dist/components/input/SwatchPicker.cjs.map +1 -1
  212. package/dist/components/input/SwatchPicker.mjs +38 -37
  213. package/dist/components/input/SwatchPicker.mjs.map +1 -1
  214. package/dist/components/input/Switch.cjs +1 -1
  215. package/dist/components/input/Switch.cjs.map +1 -1
  216. package/dist/components/input/Switch.mjs +65 -64
  217. package/dist/components/input/Switch.mjs.map +1 -1
  218. package/dist/components/input/TagPicker.cjs +1 -1
  219. package/dist/components/input/TagPicker.cjs.map +1 -1
  220. package/dist/components/input/TagPicker.mjs +161 -157
  221. package/dist/components/input/TagPicker.mjs.map +1 -1
  222. package/dist/components/input/Textarea.cjs +1 -1
  223. package/dist/components/input/Textarea.cjs.map +1 -1
  224. package/dist/components/input/Textarea.mjs +24 -23
  225. package/dist/components/input/Textarea.mjs.map +1 -1
  226. package/dist/components/input/TimePicker.cjs +1 -1
  227. package/dist/components/input/TimePicker.cjs.map +1 -1
  228. package/dist/components/input/TimePicker.mjs +202 -199
  229. package/dist/components/input/TimePicker.mjs.map +1 -1
  230. package/dist/components/input/colorName.cjs +2 -0
  231. package/dist/components/input/colorName.cjs.map +1 -0
  232. package/dist/components/input/colorName.mjs +30 -0
  233. package/dist/components/input/colorName.mjs.map +1 -0
  234. package/dist/components/input/colorUtils.cjs +1 -1
  235. package/dist/components/input/colorUtils.cjs.map +1 -1
  236. package/dist/components/input/colorUtils.mjs +154 -56
  237. package/dist/components/input/colorUtils.mjs.map +1 -1
  238. package/dist/components/layout/Accordion.cjs +1 -1
  239. package/dist/components/layout/Accordion.cjs.map +1 -1
  240. package/dist/components/layout/Accordion.mjs +130 -129
  241. package/dist/components/layout/Accordion.mjs.map +1 -1
  242. package/dist/components/layout/Card.cjs +1 -1
  243. package/dist/components/layout/Card.cjs.map +1 -1
  244. package/dist/components/layout/Card.mjs +78 -77
  245. package/dist/components/layout/Card.mjs.map +1 -1
  246. package/dist/components/layout/Carousel.cjs +1 -1
  247. package/dist/components/layout/Carousel.cjs.map +1 -1
  248. package/dist/components/layout/Carousel.mjs +111 -110
  249. package/dist/components/layout/Carousel.mjs.map +1 -1
  250. package/dist/components/layout/Flex.cjs +1 -1
  251. package/dist/components/layout/Flex.cjs.map +1 -1
  252. package/dist/components/layout/Flex.mjs +22 -21
  253. package/dist/components/layout/Flex.mjs.map +1 -1
  254. package/dist/components/layout/Grid.cjs +1 -1
  255. package/dist/components/layout/Grid.cjs.map +1 -1
  256. package/dist/components/layout/Grid.mjs +19 -18
  257. package/dist/components/layout/Grid.mjs.map +1 -1
  258. package/dist/components/layout/Overflow.cjs +1 -1
  259. package/dist/components/layout/Overflow.cjs.map +1 -1
  260. package/dist/components/layout/Overflow.mjs +92 -91
  261. package/dist/components/layout/Overflow.mjs.map +1 -1
  262. package/dist/components/layout/Stack.cjs +1 -1
  263. package/dist/components/layout/Stack.cjs.map +1 -1
  264. package/dist/components/layout/Stack.mjs +14 -13
  265. package/dist/components/layout/Stack.mjs.map +1 -1
  266. package/dist/components/layout/TabList.cjs +1 -1
  267. package/dist/components/layout/TabList.cjs.map +1 -1
  268. package/dist/components/layout/TabList.mjs +118 -117
  269. package/dist/components/layout/TabList.mjs.map +1 -1
  270. package/dist/components/layout/Tree.cjs +1 -1
  271. package/dist/components/layout/Tree.cjs.map +1 -1
  272. package/dist/components/layout/Tree.context.cjs +2 -0
  273. package/dist/components/layout/Tree.context.cjs.map +1 -0
  274. package/dist/components/layout/Tree.context.mjs +33 -0
  275. package/dist/components/layout/Tree.context.mjs.map +1 -0
  276. package/dist/components/layout/Tree.core.cjs +2 -0
  277. package/dist/components/layout/Tree.core.cjs.map +1 -0
  278. package/dist/components/layout/Tree.core.mjs +416 -0
  279. package/dist/components/layout/Tree.core.mjs.map +1 -0
  280. package/dist/components/layout/Tree.itemPersonaLayout.cjs +2 -0
  281. package/dist/components/layout/Tree.itemPersonaLayout.cjs.map +1 -0
  282. package/dist/components/layout/Tree.itemPersonaLayout.mjs +46 -0
  283. package/dist/components/layout/Tree.itemPersonaLayout.mjs.map +1 -0
  284. package/dist/components/layout/Tree.mjs +7 -215
  285. package/dist/components/layout/Tree.mjs.map +1 -1
  286. package/dist/components/layout/Tree.selection.cjs +2 -0
  287. package/dist/components/layout/Tree.selection.cjs.map +1 -0
  288. package/dist/components/layout/Tree.selection.mjs +73 -0
  289. package/dist/components/layout/Tree.selection.mjs.map +1 -0
  290. package/dist/components/navigation/Breadcrumb.cjs +1 -1
  291. package/dist/components/navigation/Breadcrumb.cjs.map +1 -1
  292. package/dist/components/navigation/Breadcrumb.mjs +76 -75
  293. package/dist/components/navigation/Breadcrumb.mjs.map +1 -1
  294. package/dist/components/navigation/Menu.group.cjs +1 -1
  295. package/dist/components/navigation/Menu.group.cjs.map +1 -1
  296. package/dist/components/navigation/Menu.group.mjs +39 -37
  297. package/dist/components/navigation/Menu.group.mjs.map +1 -1
  298. package/dist/components/navigation/Menu.items.cjs +1 -1
  299. package/dist/components/navigation/Menu.items.cjs.map +1 -1
  300. package/dist/components/navigation/Menu.items.mjs +67 -61
  301. package/dist/components/navigation/Menu.items.mjs.map +1 -1
  302. package/dist/components/navigation/Menu.link.cjs +1 -1
  303. package/dist/components/navigation/Menu.link.cjs.map +1 -1
  304. package/dist/components/navigation/Menu.link.mjs +34 -28
  305. package/dist/components/navigation/Menu.link.mjs.map +1 -1
  306. package/dist/components/navigation/Menu.popover.cjs +1 -1
  307. package/dist/components/navigation/Menu.popover.cjs.map +1 -1
  308. package/dist/components/navigation/Menu.popover.mjs +110 -109
  309. package/dist/components/navigation/Menu.popover.mjs.map +1 -1
  310. package/dist/components/navigation/Menu.root.cjs +1 -1
  311. package/dist/components/navigation/Menu.root.cjs.map +1 -1
  312. package/dist/components/navigation/Menu.root.mjs +171 -170
  313. package/dist/components/navigation/Menu.root.mjs.map +1 -1
  314. package/dist/components/navigation/Menu.selectable.cjs +1 -1
  315. package/dist/components/navigation/Menu.selectable.cjs.map +1 -1
  316. package/dist/components/navigation/Menu.selectable.mjs +85 -63
  317. package/dist/components/navigation/Menu.selectable.mjs.map +1 -1
  318. package/dist/components/navigation/Menu.splitGroup.cjs +1 -1
  319. package/dist/components/navigation/Menu.splitGroup.cjs.map +1 -1
  320. package/dist/components/navigation/Menu.splitGroup.mjs +27 -26
  321. package/dist/components/navigation/Menu.splitGroup.mjs.map +1 -1
  322. package/dist/components/navigation/Menu.trigger.cjs +1 -1
  323. package/dist/components/navigation/Menu.trigger.cjs.map +1 -1
  324. package/dist/components/navigation/Menu.trigger.mjs +6 -6
  325. package/dist/components/navigation/Nav.cjs +1 -1
  326. package/dist/components/navigation/Nav.cjs.map +1 -1
  327. package/dist/components/navigation/Nav.mjs +170 -155
  328. package/dist/components/navigation/Nav.mjs.map +1 -1
  329. package/dist/components/navigation/Pagination.cjs +1 -1
  330. package/dist/components/navigation/Pagination.cjs.map +1 -1
  331. package/dist/components/navigation/Pagination.mjs +73 -65
  332. package/dist/components/navigation/Pagination.mjs.map +1 -1
  333. package/dist/components/navigation/Stepper.cjs +1 -1
  334. package/dist/components/navigation/Stepper.cjs.map +1 -1
  335. package/dist/components/navigation/Stepper.mjs +110 -109
  336. package/dist/components/navigation/Stepper.mjs.map +1 -1
  337. package/dist/components/overlays/Dialog.cjs +1 -1
  338. package/dist/components/overlays/Dialog.cjs.map +1 -1
  339. package/dist/components/overlays/Dialog.mjs +109 -108
  340. package/dist/components/overlays/Dialog.mjs.map +1 -1
  341. package/dist/components/overlays/Drawer.cjs +1 -1
  342. package/dist/components/overlays/Drawer.cjs.map +1 -1
  343. package/dist/components/overlays/Drawer.mjs +110 -109
  344. package/dist/components/overlays/Drawer.mjs.map +1 -1
  345. package/dist/components/overlays/Popover.cjs +1 -1
  346. package/dist/components/overlays/Popover.cjs.map +1 -1
  347. package/dist/components/overlays/Popover.mjs +229 -227
  348. package/dist/components/overlays/Popover.mjs.map +1 -1
  349. package/dist/components/overlays/TeachingPopover.cjs +1 -1
  350. package/dist/components/overlays/TeachingPopover.cjs.map +1 -1
  351. package/dist/components/overlays/TeachingPopover.mjs +41 -37
  352. package/dist/components/overlays/TeachingPopover.mjs.map +1 -1
  353. package/dist/components/overlays/Tooltip.cjs +1 -1
  354. package/dist/components/overlays/Tooltip.cjs.map +1 -1
  355. package/dist/components/overlays/Tooltip.mjs +87 -86
  356. package/dist/components/overlays/Tooltip.mjs.map +1 -1
  357. package/dist/components/portal/Portal.cjs +1 -1
  358. package/dist/components/portal/Portal.cjs.map +1 -1
  359. package/dist/components/portal/Portal.mjs +33 -32
  360. package/dist/components/portal/Portal.mjs.map +1 -1
  361. package/dist/components/provider/WaveProvider.cjs +1 -1
  362. package/dist/components/provider/WaveProvider.cjs.map +1 -1
  363. package/dist/components/provider/WaveProvider.mjs +31 -30
  364. package/dist/components/provider/WaveProvider.mjs.map +1 -1
  365. package/dist/components/table/DataGrid.cjs +1 -1
  366. package/dist/components/table/DataGrid.cjs.map +1 -1
  367. package/dist/components/table/DataGrid.mjs +228 -227
  368. package/dist/components/table/DataGrid.mjs.map +1 -1
  369. package/dist/components/table/Table.cjs +1 -1
  370. package/dist/components/table/Table.cjs.map +1 -1
  371. package/dist/components/table/Table.mjs +60 -59
  372. package/dist/components/table/Table.mjs.map +1 -1
  373. package/dist/components/typography/Text.cjs +1 -1
  374. package/dist/components/typography/Text.cjs.map +1 -1
  375. package/dist/components/typography/Text.mjs +12 -11
  376. package/dist/components/typography/Text.mjs.map +1 -1
  377. package/dist/hooks/useMediaQuery.cjs +2 -0
  378. package/dist/hooks/useMediaQuery.cjs.map +1 -0
  379. package/dist/hooks/useMediaQuery.mjs +20 -0
  380. package/dist/hooks/useMediaQuery.mjs.map +1 -0
  381. package/dist/hooks/usePrefersReducedMotion.cjs +1 -1
  382. package/dist/hooks/usePrefersReducedMotion.cjs.map +1 -1
  383. package/dist/hooks/usePrefersReducedMotion.mjs +4 -18
  384. package/dist/hooks/usePrefersReducedMotion.mjs.map +1 -1
  385. package/dist/hooks/useRovingTabIndex.cjs +1 -1
  386. package/dist/hooks/useRovingTabIndex.cjs.map +1 -1
  387. package/dist/hooks/useRovingTabIndex.mjs +3 -3
  388. package/dist/hooks/useRovingTabIndex.mjs.map +1 -1
  389. package/dist/index.cjs +1 -1
  390. package/dist/index.d.cts +2089 -102
  391. package/dist/index.d.ts +2089 -102
  392. package/dist/index.mjs +99 -87
  393. package/dist/lib/classNames.cjs +2 -0
  394. package/dist/lib/classNames.cjs.map +1 -0
  395. package/dist/lib/classNames.mjs +415 -0
  396. package/dist/lib/classNames.mjs.map +1 -0
  397. package/dist/lib/color.cjs +2 -0
  398. package/dist/lib/color.cjs.map +1 -0
  399. package/dist/lib/color.mjs +86 -0
  400. package/dist/lib/color.mjs.map +1 -0
  401. package/dist/lib/globalRegistry.cjs.map +1 -1
  402. package/dist/lib/globalRegistry.mjs.map +1 -1
  403. package/dist/lib/toaster.cjs +2 -0
  404. package/dist/lib/toaster.cjs.map +1 -0
  405. package/dist/lib/toaster.mjs +77 -0
  406. package/dist/lib/toaster.mjs.map +1 -0
  407. package/dist/styles.css +1 -1
  408. package/package.json +1 -1
@@ -0,0 +1,86 @@
1
+ //#region src/lib/color.ts
2
+ var e = /^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;
3
+ function t(t) {
4
+ let n = e.exec(t.trim());
5
+ if (!n) return null;
6
+ let r = n[1], i = r.length <= 4 ? r.split("").map((e) => e + e).join("") : r, a = (e) => parseInt(i.slice(e, e + 2), 16), o = i.length === 8;
7
+ return {
8
+ r: a(0),
9
+ g: a(2),
10
+ b: a(4),
11
+ alpha: o ? a(6) : 255,
12
+ hasAlpha: o
13
+ };
14
+ }
15
+ function n(e) {
16
+ return Number.isFinite(e) ? (e % 360 + 360) % 360 : 0;
17
+ }
18
+ function r(e, t) {
19
+ return e === void 0 || Number.isNaN(e) ? t : Math.min(1, Math.max(0, e));
20
+ }
21
+ function i(e) {
22
+ let t = n(e.h) / 60, i = r(e.s, 0), a = r(e.v, 0), o = a * i, s = o * (1 - Math.abs(t % 2 - 1)), c = a - o, l;
23
+ return l = t < 1 ? [
24
+ o,
25
+ s,
26
+ 0
27
+ ] : t < 2 ? [
28
+ s,
29
+ o,
30
+ 0
31
+ ] : t < 3 ? [
32
+ 0,
33
+ o,
34
+ s
35
+ ] : t < 4 ? [
36
+ 0,
37
+ s,
38
+ o
39
+ ] : t < 5 ? [
40
+ s,
41
+ 0,
42
+ o
43
+ ] : [
44
+ o,
45
+ 0,
46
+ s
47
+ ], {
48
+ r: (l[0] + c) * 255,
49
+ g: (l[1] + c) * 255,
50
+ b: (l[2] + c) * 255
51
+ };
52
+ }
53
+ function a(e, t, n) {
54
+ let r = e / 255, i = t / 255, a = n / 255, o = Math.max(r, i, a), s = o - Math.min(r, i, a), c = 0;
55
+ return s !== 0 && (c = o === r ? (i - a) / s % 6 : o === i ? (a - r) / s + 2 : (r - i) / s + 4, c *= 60, c < 0 && (c += 360)), {
56
+ h: c,
57
+ s: o === 0 ? 0 : s / o,
58
+ v: o
59
+ };
60
+ }
61
+ function o(e) {
62
+ return Math.round(e).toString(16).padStart(2, "0");
63
+ }
64
+ function s(e) {
65
+ let { r: t, g: n, b: a } = i(e), s = Math.round(r(e.a, 1) * 255), c = `#${o(t)}${o(n)}${o(a)}`;
66
+ return s === 255 ? c : c + o(s);
67
+ }
68
+ function c(e) {
69
+ let n = t(e);
70
+ if (!n) return null;
71
+ let { h: r, s: i, v: o } = a(n.r, n.g, n.b);
72
+ return n.hasAlpha ? {
73
+ h: r,
74
+ s: i,
75
+ v: o,
76
+ a: n.alpha / 255
77
+ } : {
78
+ h: r,
79
+ s: i,
80
+ v: o
81
+ };
82
+ }
83
+ //#endregion
84
+ export { r as clampUnit, c as hexToHsv, s as hsvToHex, i as hsvToRgb, t as parseHexBytes, a as rgbToHsv, n as wrapHue };
85
+
86
+ //# sourceMappingURL=color.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"color.mjs","names":["HEX_COLOR","parseHexBytes","match","value","digits","long","d","byte","index","hasAlpha","wrapHue","h","clampUnit","fallback","hsvToRgb","color","s","v","c","x","m","rgb","rgbToHsv","red","r","green","g","blue","b","max","delta","toHexByte","hsvToHex","alpha","hex","hexToHsv","bytes"],"sources":["../../src/lib/color.ts"],"sourcesContent":["/**\n * Conversions between HSV colors and hex strings (spec P3-05, D18). Server-safe: no React and no\n * DOM, so the helpers run in a Server Component and during server rendering.\n *\n * Public: `hsvToHex` and `hexToHsv`, exported from the package entry. The other exports are\n * internal helpers of the color components (not exported from the package).\n */\nimport type { HsvColor } from './types';\n\nconst HEX_COLOR = /^#([0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;\n\n/** @internal The channels of a hex color as bytes (0–255). */\nexport interface HexBytes {\n r: number;\n g: number;\n b: number;\n /** The alpha byte; 255 when the input has no alpha digits. */\n alpha: number;\n /** Whether the input has alpha digits (`#rgba`, `#rrggbbaa`). */\n hasAlpha: boolean;\n}\n\n/**\n * @internal Parses `#rgb`, `#rgba`, `#rrggbb` or `#rrggbbaa` (surrounding whitespace ignored, any\n * case), else `null`. The one hex grammar of the library: `colorUtils.parseHexColor` reads it too.\n */\nexport function parseHexBytes(value: string): HexBytes | null {\n const match = HEX_COLOR.exec(value.trim());\n if (!match) return null;\n const digits = match[1];\n const long =\n digits.length <= 4\n ? digits\n .split('')\n .map((d) => d + d)\n .join('')\n : digits;\n const byte = (index: number) => parseInt(long.slice(index, index + 2), 16);\n const hasAlpha = long.length === 8;\n return { r: byte(0), g: byte(2), b: byte(4), alpha: hasAlpha ? byte(6) : 255, hasAlpha };\n}\n\n/** @internal `h` wrapped into [0, 360); a hue that is not finite reads as 0. */\nexport function wrapHue(h: number): number {\n return Number.isFinite(h) ? ((h % 360) + 360) % 360 : 0;\n}\n\n/** @internal `value` clamped to [0, 1]; `NaN` or `undefined` reads as `fallback`. */\nexport function clampUnit(value: number | undefined, fallback: number): number {\n if (value === undefined || Number.isNaN(value)) return fallback;\n return Math.min(1, Math.max(0, value));\n}\n\n/** @internal An HSV color, normalized first, as sRGB channels from 0 to 255 (unrounded). */\nexport function hsvToRgb(color: HsvColor): { r: number; g: number; b: number } {\n const h = wrapHue(color.h) / 60;\n const s = clampUnit(color.s, 0);\n const v = clampUnit(color.v, 0);\n const c = v * s;\n const x = c * (1 - Math.abs((h % 2) - 1));\n const m = v - c;\n let rgb: [number, number, number];\n if (h < 1) rgb = [c, x, 0];\n else if (h < 2) rgb = [x, c, 0];\n else if (h < 3) rgb = [0, c, x];\n else if (h < 4) rgb = [0, x, c];\n else if (h < 5) rgb = [x, 0, c];\n else rgb = [c, 0, x];\n return { r: (rgb[0] + m) * 255, g: (rgb[1] + m) * 255, b: (rgb[2] + m) * 255 };\n}\n\n/** @internal sRGB channels (0–255) as a hue in degrees and saturation and brightness from 0 to 1. */\nexport function rgbToHsv(r: number, g: number, b: number): { h: number; s: number; v: number } {\n const red = r / 255;\n const green = g / 255;\n const blue = b / 255;\n const max = Math.max(red, green, blue);\n const delta = max - Math.min(red, green, blue);\n let h = 0;\n if (delta !== 0) {\n if (max === red) h = ((green - blue) / delta) % 6;\n else if (max === green) h = (blue - red) / delta + 2;\n else h = (red - green) / delta + 4;\n h *= 60;\n if (h < 0) h += 360;\n }\n return { h, s: max === 0 ? 0 : delta / max, v: max };\n}\n\nfunction toHexByte(value: number): string {\n return Math.round(value).toString(16).padStart(2, '0');\n}\n\n/**\n * The hex string of an HSV color: lowercase `#rrggbb`, or `#rrggbbaa` when `a` is below 1\n * (ColorPicker's value format). The hue wraps into [0, 360); saturation, brightness and alpha are\n * clamped to [0, 1]; a channel that is not a number reads as 0 (alpha: as left out, so opaque).\n *\n * @example hsvToHex({ h: 208, s: 0.92, v: 0.74 }) // '#0f6cbd'\n */\nexport function hsvToHex(color: HsvColor): string {\n const { r, g, b } = hsvToRgb(color);\n const alpha = Math.round(clampUnit(color.a, 1) * 255);\n const hex = `#${toHexByte(r)}${toHexByte(g)}${toHexByte(b)}`;\n return alpha === 255 ? hex : hex + toHexByte(alpha);\n}\n\n/**\n * The HSV color of a hex string: `#rgb`, `#rgba`, `#rrggbb` or `#rrggbbaa` (surrounding whitespace\n * ignored, any case). `a` is set only when the input has alpha digits. Returns `null` for anything\n * else (named colors, `rgb()`, a missing `#`). `hsvToHex(hexToHsv(x))` gives `x` back in\n * ColorPicker's normal form.\n *\n * @example hexToHsv('#ff000080') // { h: 0, s: 1, v: 1, a: 0.50196… }\n */\nexport function hexToHsv(hex: string): HsvColor | null {\n const bytes = parseHexBytes(hex);\n if (!bytes) return null;\n const { h, s, v } = rgbToHsv(bytes.r, bytes.g, bytes.b);\n return bytes.hasAlpha ? { h, s, v, a: bytes.alpha / 255 } : { h, s, v };\n}\n"],"mappings":";AASA,IAAMA,IAAY;AAiBlB,SAAgBC,EAAc,GAAgC;CAC5D,IAAMC,IAAQF,EAAU,KAAKG,EAAM,KAAK,CAAC;CACzC,IAAI,CAACD,GAAO,OAAO;CACnB,IAAME,IAASF,EAAM,IACfG,IACJD,EAAO,UAAU,IACbA,EACG,MAAM,EAAE,CAAC,CACT,KAAK,MAAME,IAAIA,CAAC,CAAC,CACjB,KAAK,EAAE,IACVF,GACAG,KAAQ,MAAkB,SAASF,EAAK,MAAMG,GAAOA,IAAQ,CAAC,GAAG,EAAE,GACnEC,IAAWJ,EAAK,WAAW;CACjC,OAAO;EAAE,GAAGE,EAAK,CAAC;EAAG,GAAGA,EAAK,CAAC;EAAG,GAAGA,EAAK,CAAC;EAAG,OAAOE,IAAWF,EAAK,CAAC,IAAI;EAAK;CAAS;AACzF;AAGA,SAAgBG,EAAQ,GAAmB;CACzC,OAAO,OAAO,SAASC,CAAC,KAAMA,IAAI,MAAO,OAAO,MAAM;AACxD;AAGA,SAAgBC,EAAU,GAA2B,GAA0B;CAE7E,OADIT,MAAU,KAAA,KAAa,OAAO,MAAMA,CAAK,IAAUU,IAChD,KAAK,IAAI,GAAG,KAAK,IAAI,GAAGV,CAAK,CAAC;AACvC;AAGA,SAAgBW,EAAS,GAAsD;CAC7E,IAAMH,IAAID,EAAQK,EAAM,CAAC,IAAI,IACvBC,IAAIJ,EAAUG,EAAM,GAAG,CAAC,GACxBE,IAAIL,EAAUG,EAAM,GAAG,CAAC,GACxBG,IAAID,IAAID,GACRG,IAAID,KAAK,IAAI,KAAK,IAAKP,IAAI,IAAK,CAAC,IACjCS,IAAIH,IAAIC,GACVG;CAOJ,OANA,AAKKA,IALDV,IAAI,IAAS;EAACO;EAAGC;EAAG;CAAC,IAChBR,IAAI,IAAS;EAACQ;EAAGD;EAAG;CAAC,IACrBP,IAAI,IAAS;EAAC;EAAGO;EAAGC;CAAC,IACrBR,IAAI,IAAS;EAAC;EAAGQ;EAAGD;CAAC,IACrBP,IAAI,IAAS;EAACQ;EAAG;EAAGD;CAAC,IACnB;EAACA;EAAG;EAAGC;CAAC,GACZ;EAAE,IAAIE,EAAI,KAAKD,KAAK;EAAK,IAAIC,EAAI,KAAKD,KAAK;EAAK,IAAIC,EAAI,KAAKD,KAAK;CAAI;AAC/E;AAGA,SAAgBE,EAAS,GAAW,GAAW,GAAgD;CAC7F,IAAMC,IAAMC,IAAI,KACVC,IAAQC,IAAI,KACZC,IAAOC,IAAI,KACXC,IAAM,KAAK,IAAIN,GAAKE,GAAOE,CAAI,GAC/BG,IAAQD,IAAM,KAAK,IAAIN,GAAKE,GAAOE,CAAI,GACzChB,IAAI;CAQR,OAPImB,MAAU,MACZ,AAEKnB,IAFDkB,MAAQN,KAAWE,IAAQE,KAAQG,IAAS,IACvCD,MAAQJ,KAAYE,IAAOJ,KAAOO,IAAQ,KACzCP,IAAME,KAASK,IAAQ,GACjC,KAAK,IACDnB,IAAI,MAAG,KAAK,OAEX;EAAE;EAAG,GAAGkB,MAAQ,IAAI,IAAIC,IAAQD;EAAK,GAAGA;CAAI;AACrD;AAEA,SAASE,EAAU,GAAuB;CACxC,OAAO,KAAK,MAAM5B,CAAK,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,SAAS,GAAG,GAAG;AACvD;AASA,SAAgB6B,EAAS,GAAyB;CAChD,IAAM,EAAE,MAAG,MAAG,SAAMlB,EAASC,CAAK,GAC5BkB,IAAQ,KAAK,MAAMrB,EAAUG,EAAM,GAAG,CAAC,IAAI,GAAG,GAC9CmB,IAAM,IAAIH,EAAUP,CAAC,IAAIO,EAAUL,CAAC,IAAIK,EAAUH,CAAC;CACzD,OAAOK,MAAU,MAAMC,IAAMA,IAAMH,EAAUE,CAAK;AACpD;AAUA,SAAgBE,EAAS,GAA8B;CACrD,IAAMC,IAAQnC,EAAciC,CAAG;CAC/B,IAAI,CAACE,GAAO,OAAO;CACnB,IAAM,EAAE,MAAG,MAAG,SAAMd,EAASc,EAAM,GAAGA,EAAM,GAAGA,EAAM,CAAC;CACtD,OAAOA,EAAM,WAAW;EAAE;EAAG;EAAG;EAAG,GAAGA,EAAM,QAAQ;CAAI,IAAI;EAAE;EAAG;EAAG;CAAE;AACxE"}
@@ -1 +1 @@
1
- {"version":3,"file":"globalRegistry.cjs","names":["getGlobalRegistry","symbol","key","store","create"],"sources":["../../src/lib/globalRegistry.ts"],"sourcesContent":["const NAMESPACE = '@mortenbrudvik/waveui/';\n\ntype GlobalStore = Record<symbol, unknown>;\n\n/**\n * Returns the module singleton registered under `key`, creating it with `create` on first use.\n *\n * The value is stored on `globalThis[Symbol.for('@mortenbrudvik/waveui/' + key)]` (non-enumerable),\n * so an app that evaluates the library twice — the ESM and the CJS build side by side (Next.js\n * server CJS + client ESM, or a dependency that `require`s the package) — still shares one state\n * per key. A change to the value shape stored under a key must stay compatible with the other copy.\n *\n * Keys and their users:\n * - `'layers'` — the dismiss-layer stack (`layers.ts`);\n * - `'traps'` — the focus-trap stack (`useFocusTrap`);\n * - `'scrollLock'` — the scroll-lock counter (`useScrollLock`);\n * - `'inert'` — the elements made inert behind a modal (`useModalIsolation`);\n * - `'restoreFocusTracker'` — the pointer/focus tracker of `useRestoreFocus`;\n * - `'announcer'` — the live-region announcer (`useAnnounce`);\n * - `'orderedSurfaces'` — the open surfaces whose keyboard order `usePopoverTabOrder` manages\n * (`Popover.shared.tsx`);\n * - `'warnings'` and `'missing-context'` — the warn-once keys and the logged missing-context\n * texts (`dev.ts`).\n *\n * @param key Registry name, e.g. `'warnings'` or `'layers'`.\n * @param create Factory for the initial value; called at most once per realm.\n */\nexport function getGlobalRegistry<T>(key: string, create: () => T): T {\n const symbol = Symbol.for(NAMESPACE + key);\n const store = globalThis as unknown as GlobalStore;\n if (!Object.prototype.hasOwnProperty.call(store, symbol)) {\n Object.defineProperty(store, symbol, {\n value: create(),\n configurable: true,\n enumerable: false,\n writable: true,\n });\n }\n return store[symbol] as T;\n}\n"],"mappings":"AA2BA,SAAgBA,EAAqB,EAAa,EAAoB,CACpE,IAAMC,EAAS,OAAO,IAAI,yBAAYC,CAAG,EACnCC,EAAQ,WASd,OARK,OAAO,UAAU,eAAe,KAAKA,EAAOF,CAAM,GACrD,OAAO,eAAeE,EAAOF,EAAQ,CACnC,MAAOG,EAAO,EACd,aAAc,GACd,WAAY,GACZ,SAAU,EACZ,CAAC,EAEID,EAAMF,EACf"}
1
+ {"version":3,"file":"globalRegistry.cjs","names":["getGlobalRegistry","symbol","key","store","create"],"sources":["../../src/lib/globalRegistry.ts"],"sourcesContent":["const NAMESPACE = '@mortenbrudvik/waveui/';\n\ntype GlobalStore = Record<symbol, unknown>;\n\n/**\n * Returns the module singleton registered under `key`, creating it with `create` on first use.\n *\n * The value is stored on `globalThis[Symbol.for('@mortenbrudvik/waveui/' + key)]` (non-enumerable),\n * so an app that evaluates the library twice — the ESM and the CJS build side by side (Next.js\n * server CJS + client ESM, or a dependency that `require`s the package) — still shares one state\n * per key. A change to the value shape stored under a key must stay compatible with the other copy.\n *\n * Keys and their users:\n * - `'layers'` — the dismiss-layer stack (`layers.ts`);\n * - `'traps'` — the focus-trap stack (`useFocusTrap`);\n * - `'scrollLock'` — the scroll-lock counter (`useScrollLock`);\n * - `'inert'` — the elements made inert behind a modal (`useModalIsolation`);\n * - `'restoreFocusTracker'` — the pointer/focus tracker of `useRestoreFocus`;\n * - `'announcer'` — the live-region announcer (`useAnnounce`);\n * - `'orderedSurfaces'` — the open surfaces whose keyboard order `usePopoverTabOrder` manages\n * (`Popover.shared.tsx`);\n * - `'toasterHandles'` — the state of every `createToaster()` handle (`toaster.ts`);\n * - `'warnings'` and `'missing-context'` — the warn-once keys and the logged missing-context\n * texts (`dev.ts`).\n *\n * @param key Registry name, e.g. `'warnings'` or `'layers'`.\n * @param create Factory for the initial value; called at most once per realm.\n */\nexport function getGlobalRegistry<T>(key: string, create: () => T): T {\n const symbol = Symbol.for(NAMESPACE + key);\n const store = globalThis as unknown as GlobalStore;\n if (!Object.prototype.hasOwnProperty.call(store, symbol)) {\n Object.defineProperty(store, symbol, {\n value: create(),\n configurable: true,\n enumerable: false,\n writable: true,\n });\n }\n return store[symbol] as T;\n}\n"],"mappings":"AA4BA,SAAgBA,EAAqB,EAAa,EAAoB,CACpE,IAAMC,EAAS,OAAO,IAAI,yBAAYC,CAAG,EACnCC,EAAQ,WASd,OARK,OAAO,UAAU,eAAe,KAAKA,EAAOF,CAAM,GACrD,OAAO,eAAeE,EAAOF,EAAQ,CACnC,MAAOG,EAAO,EACd,aAAc,GACd,WAAY,GACZ,SAAU,EACZ,CAAC,EAEID,EAAMF,EACf"}
@@ -1 +1 @@
1
- {"version":3,"file":"globalRegistry.mjs","names":["getGlobalRegistry","symbol","key","store","create"],"sources":["../../src/lib/globalRegistry.ts"],"sourcesContent":["const NAMESPACE = '@mortenbrudvik/waveui/';\n\ntype GlobalStore = Record<symbol, unknown>;\n\n/**\n * Returns the module singleton registered under `key`, creating it with `create` on first use.\n *\n * The value is stored on `globalThis[Symbol.for('@mortenbrudvik/waveui/' + key)]` (non-enumerable),\n * so an app that evaluates the library twice — the ESM and the CJS build side by side (Next.js\n * server CJS + client ESM, or a dependency that `require`s the package) — still shares one state\n * per key. A change to the value shape stored under a key must stay compatible with the other copy.\n *\n * Keys and their users:\n * - `'layers'` — the dismiss-layer stack (`layers.ts`);\n * - `'traps'` — the focus-trap stack (`useFocusTrap`);\n * - `'scrollLock'` — the scroll-lock counter (`useScrollLock`);\n * - `'inert'` — the elements made inert behind a modal (`useModalIsolation`);\n * - `'restoreFocusTracker'` — the pointer/focus tracker of `useRestoreFocus`;\n * - `'announcer'` — the live-region announcer (`useAnnounce`);\n * - `'orderedSurfaces'` — the open surfaces whose keyboard order `usePopoverTabOrder` manages\n * (`Popover.shared.tsx`);\n * - `'warnings'` and `'missing-context'` — the warn-once keys and the logged missing-context\n * texts (`dev.ts`).\n *\n * @param key Registry name, e.g. `'warnings'` or `'layers'`.\n * @param create Factory for the initial value; called at most once per realm.\n */\nexport function getGlobalRegistry<T>(key: string, create: () => T): T {\n const symbol = Symbol.for(NAMESPACE + key);\n const store = globalThis as unknown as GlobalStore;\n if (!Object.prototype.hasOwnProperty.call(store, symbol)) {\n Object.defineProperty(store, symbol, {\n value: create(),\n configurable: true,\n enumerable: false,\n writable: true,\n });\n }\n return store[symbol] as T;\n}\n"],"mappings":"AA2BA,SAAgBA,EAAqB,GAAa,GAAoB;CACpE,IAAMC,IAAS,OAAO,IAAI,2BAAYC,CAAG,GACnCC,IAAQ;CASd,OARK,OAAO,UAAU,eAAe,KAAKA,GAAOF,CAAM,KACrD,OAAO,eAAeE,GAAOF,GAAQ;EACnC,OAAOG,EAAO;EACd,cAAc;EACd,YAAY;EACZ,UAAU;CACZ,CAAC,GAEID,EAAMF;AACf"}
1
+ {"version":3,"file":"globalRegistry.mjs","names":["getGlobalRegistry","symbol","key","store","create"],"sources":["../../src/lib/globalRegistry.ts"],"sourcesContent":["const NAMESPACE = '@mortenbrudvik/waveui/';\n\ntype GlobalStore = Record<symbol, unknown>;\n\n/**\n * Returns the module singleton registered under `key`, creating it with `create` on first use.\n *\n * The value is stored on `globalThis[Symbol.for('@mortenbrudvik/waveui/' + key)]` (non-enumerable),\n * so an app that evaluates the library twice — the ESM and the CJS build side by side (Next.js\n * server CJS + client ESM, or a dependency that `require`s the package) — still shares one state\n * per key. A change to the value shape stored under a key must stay compatible with the other copy.\n *\n * Keys and their users:\n * - `'layers'` — the dismiss-layer stack (`layers.ts`);\n * - `'traps'` — the focus-trap stack (`useFocusTrap`);\n * - `'scrollLock'` — the scroll-lock counter (`useScrollLock`);\n * - `'inert'` — the elements made inert behind a modal (`useModalIsolation`);\n * - `'restoreFocusTracker'` — the pointer/focus tracker of `useRestoreFocus`;\n * - `'announcer'` — the live-region announcer (`useAnnounce`);\n * - `'orderedSurfaces'` — the open surfaces whose keyboard order `usePopoverTabOrder` manages\n * (`Popover.shared.tsx`);\n * - `'toasterHandles'` — the state of every `createToaster()` handle (`toaster.ts`);\n * - `'warnings'` and `'missing-context'` — the warn-once keys and the logged missing-context\n * texts (`dev.ts`).\n *\n * @param key Registry name, e.g. `'warnings'` or `'layers'`.\n * @param create Factory for the initial value; called at most once per realm.\n */\nexport function getGlobalRegistry<T>(key: string, create: () => T): T {\n const symbol = Symbol.for(NAMESPACE + key);\n const store = globalThis as unknown as GlobalStore;\n if (!Object.prototype.hasOwnProperty.call(store, symbol)) {\n Object.defineProperty(store, symbol, {\n value: create(),\n configurable: true,\n enumerable: false,\n writable: true,\n });\n }\n return store[symbol] as T;\n}\n"],"mappings":"AA4BA,SAAgBA,EAAqB,GAAa,GAAoB;CACpE,IAAMC,IAAS,OAAO,IAAI,2BAAYC,CAAG,GACnCC,IAAQ;CASd,OARK,OAAO,UAAU,eAAe,KAAKA,GAAOF,CAAM,KACrD,OAAO,eAAeE,GAAOF,GAAQ;EACnC,OAAOG,EAAO;EACd,cAAc;EACd,YAAY;EACZ,UAAU;CACZ,CAAC,GAEID,EAAMF;AACf"}
@@ -0,0 +1,2 @@
1
+ const e=require("./globalRegistry.cjs");function t(e){if(typeof e!=`object`||!e||`$$typeof`in e||Symbol.iterator in e||typeof e.then==`function`)return!1;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype||Object.getPrototypeOf(t)===null}var n=e.getGlobalRegistry(`toasterHandles`,()=>({states:new WeakMap,count:0}));function r(){n.count+=1;let e=`wave-toaster-h${n.count}`,r=0,i={controller:null,owner:null,queue:[]},a=()=>(r+=1,`${e}-${r}`),o=(e,t)=>{if(typeof window>`u`)return e;if(i.controller)return t(i.controller),e;let n=i.queue.findIndex(t=>t.id===e);return n===-1?i.queue.push({id:e,run:t}):i.queue[n]={id:e,run:t},e};function s(e,n){if(t(e)){let t=e.toastId??a(),n={...e,toastId:t};return o(t,e=>{e.dispatchToast(n)})}let r=n?.toastId??a(),i={...n,toastId:r};return o(r,t=>{t.dispatchToast(e,i)})}let c={dispatchToast:s,dismissToast(e){i.controller?i.controller.dismissToast(e):i.queue=i.queue.filter(t=>t.id!==e)},dismissAllToasts(){i.controller?i.controller.dismissAllToasts():i.queue=[]}};return n.states.set(c,i),c}function i(e,t,r){let i=n.states.get(e);if(!i)return{status:`unknown`};if(i.owner!==null&&i.owner!==t)return{status:`taken`};i.owner=t,i.controller=r;let a=i.queue;i.queue=[];for(let e of a)e.run(r);return{status:`bound`,unbind:()=>{i.owner===t&&(i.owner=null,i.controller=null)}}}exports.bindToasterHandle=i,exports.createToaster=r,exports.isToastOptions=t;
2
+ //# sourceMappingURL=toaster.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toaster.cjs","names":["getGlobalRegistry","require_globalRegistry","isToastOptions","value","proto","handleRegistry","createToaster","prefix","dispatchCount","state","nextId","send","id","run","index","call","dispatchToast","first","options","controller","second","handle","bindToasterHandle","owner","queued"],"sources":["../../src/lib/toaster.ts"],"sourcesContent":["/**\n * The toaster module (P3-01, P3-08): the options recogniser and the toaster handle. Server-safe:\n * it imports only types (and the dependency-free global registry) and touches no DOM, so a Server\n * Component may import it.\n */\nimport type * as React from 'react';\nimport { getGlobalRegistry } from './globalRegistry';\nimport type {\n ToastController,\n ToastDispatchOptions,\n ToastOptions,\n} from '../components/feedback/Toaster';\n\n/**\n * Whether a `dispatchToast` argument is the options form (0.5): a plain object (prototype\n * `Object.prototype` or `null`, from any realm) that is no React node — no `$$typeof`, not\n * iterable, not a thenable (the slot-object rule of `src/lib/slot.ts`). Anything else is content:\n * an element, a portal, a string, a number, an array or another iterable, a thenable, `null`.\n */\nexport function isToastOptions(value: unknown): value is ToastOptions {\n if (typeof value !== 'object' || value === null) return false;\n if ('$$typeof' in value || Symbol.iterator in value) return false;\n if (typeof (value as { then?: unknown }).then === 'function') return false;\n const proto: unknown = Object.getPrototypeOf(value);\n return proto === null || proto === Object.prototype || Object.getPrototypeOf(proto) === null;\n}\n\n/**\n * A toast controller that code outside React components can call (a query-cache callback, a\n * server-event handler, a shared helper). Bind it to one Toaster with `<Toaster toaster={handle}>`;\n * toasts dispatched through it render there. One handle per Toaster is also how an app runs\n * several Toasters (Fluent's `toasterId`).\n */\nexport type ToasterHandle = ToastController;\n\n/** A dispatch waiting for a Toaster to bind the handle. */\ninterface QueuedDispatch {\n id: string;\n run: (controller: ToastController) => void;\n}\n\n/** The internal state of a handle, never reachable from the handle itself. */\ninterface HandleState {\n controller: ToastController | null;\n /** The Toaster the handle is bound to (an identity token), or `null`. */\n owner: object | null;\n queue: QueuedDispatch[];\n}\n\n/** Shared by the ESM and CJS copies of the library, so either copy's Toaster binds either's handle. */\nconst handleRegistry = getGlobalRegistry('toasterHandles', () => ({\n states: new WeakMap<object, HandleState>(),\n count: 0,\n}));\n\n/**\n * Creates a handle. It touches no DOM, so a module-scope handle is safe during server rendering;\n * a dispatch on the server does nothing (it returns the id), so no toast is carried from one\n * request to the next.\n *\n * - `dispatchToast` returns the id at once: `toastId`, or one the handle generates.\n * - Before a Toaster binds the handle, dispatches wait in its queue, in dispatch order (a dispatch\n * with the id of a waiting one replaces it in place); `dismissToast` removes a waiting toast and\n * `dismissAllToasts` empties the queue. The Toaster that binds takes the queue.\n *\n * @example\n * export const appToaster = createToaster();\n * // <Toaster toaster={appToaster}><App /></Toaster>\n * queryClient.getMutationCache().config.onError = () => {\n * appToaster.dispatchToast({ status: 'error', title: 'Could not save' });\n * };\n */\nexport function createToaster(): ToasterHandle {\n handleRegistry.count += 1;\n const prefix = `wave-toaster-h${handleRegistry.count}`;\n let dispatchCount = 0;\n const state: HandleState = { controller: null, owner: null, queue: [] };\n const nextId = () => {\n dispatchCount += 1;\n return `${prefix}-${dispatchCount}`;\n };\n const send = (id: string, run: (controller: ToastController) => void): string => {\n if (typeof window === 'undefined') return id;\n if (state.controller) {\n run(state.controller);\n return id;\n }\n const index = state.queue.findIndex((call) => call.id === id);\n if (index === -1) state.queue.push({ id, run });\n else state.queue[index] = { id, run };\n return id;\n };\n\n function dispatchToast(content: React.ReactNode, options?: ToastDispatchOptions): string;\n function dispatchToast(options: ToastOptions): string;\n function dispatchToast(\n first: React.ReactNode | ToastOptions,\n second?: ToastDispatchOptions,\n ): string {\n if (isToastOptions(first)) {\n const id = first.toastId ?? nextId();\n const options: ToastOptions = { ...first, toastId: id };\n return send(id, (controller) => {\n controller.dispatchToast(options);\n });\n }\n const id = second?.toastId ?? nextId();\n const options: ToastDispatchOptions = { ...second, toastId: id };\n return send(id, (controller) => {\n controller.dispatchToast(first, options);\n });\n }\n\n const handle: ToasterHandle = {\n dispatchToast,\n dismissToast(id) {\n if (state.controller) state.controller.dismissToast(id);\n else state.queue = state.queue.filter((call) => call.id !== id);\n },\n dismissAllToasts() {\n if (state.controller) state.controller.dismissAllToasts();\n else state.queue = [];\n },\n };\n handleRegistry.states.set(handle, state);\n return handle;\n}\n\n/** The result of {@link bindToasterHandle}. */\nexport type ToasterHandleBinding =\n { status: 'bound'; unbind: () => void } | { status: 'taken' } | { status: 'unknown' };\n\n/**\n * Internal (the Toaster's layout effect; not exported from the package): binds `handle` to the\n * controller of the Toaster identified by `owner` and replays the queue in dispatch order. A handle\n * bound to another mounted Toaster is `taken`; an object that `createToaster()` did not make is\n * `unknown`. The same owner binding again (StrictMode's remount) finds the queue already taken.\n */\nexport function bindToasterHandle(\n handle: ToastController,\n owner: object,\n controller: ToastController,\n): ToasterHandleBinding {\n const state = handleRegistry.states.get(handle);\n if (!state) return { status: 'unknown' };\n if (state.owner !== null && state.owner !== owner) return { status: 'taken' };\n state.owner = owner;\n state.controller = controller;\n const queued = state.queue;\n state.queue = [];\n for (const call of queued) call.run(controller);\n return {\n status: 'bound',\n unbind: () => {\n if (state.owner !== owner) return;\n state.owner = null;\n state.controller = null;\n },\n };\n}\n"],"mappings":"wCAmBA,SAAgBE,EAAe,EAAuC,CAGpE,GAFI,OAAOC,GAAU,WAAYA,GAC7B,aAAcA,GAAS,OAAO,YAAYA,GAC1C,OAAQA,EAA6B,MAAS,WAAY,MAAO,GACrE,IAAMC,EAAiB,OAAO,eAAeD,CAAK,EAClD,OAAOC,IAAU,MAAQA,IAAU,OAAO,WAAa,OAAO,eAAeA,CAAK,IAAM,IAC1F,CAyBA,IAAMC,EAAiBL,EAAAA,kBAAkB,sBAAyB,CAChE,OAAQ,IAAI,QACZ,MAAO,CACT,EAAE,EAmBF,SAAgBM,GAA+B,CAC7C,EAAe,OAAS,EACxB,IAAMC,EAAS,iBAAiBF,EAAe,QAC3CG,EAAgB,EACdC,EAAqB,CAAE,WAAY,KAAM,MAAO,KAAM,MAAO,CAAC,CAAE,EAChEC,OACJ,GAAiB,EACV,GAAGH,EAAO,GAAGC,KAEhBG,GAAQ,EAAY,IAAuD,CAC/E,GAAI,OAAO,OAAW,IAAa,OAAOC,EAC1C,GAAIH,EAAM,WAER,OADAI,EAAIJ,EAAM,UAAU,EACbG,EAET,IAAME,EAAQL,EAAM,MAAM,UAAW,GAASM,EAAK,KAAOH,CAAE,EAG5D,OAFIE,IAAU,GAAIL,EAAM,MAAM,KAAK,CAAE,KAAI,KAAI,CAAC,EACzC,EAAM,MAAMK,GAAS,CAAE,KAAI,KAAI,EAC7BF,CACT,EAIA,SAASI,EACP,EACA,EACQ,CACR,GAAId,EAAee,CAAK,EAAG,CACzB,IAAML,EAAKK,EAAM,SAAWP,EAAO,EAC7BQ,EAAwB,CAAE,GAAGD,EAAO,QAASL,CAAG,EACtD,OAAOD,EAAKC,EAAK,GAAe,CAC9BO,EAAW,cAAcD,CAAO,CAClC,CAAC,CACH,CACA,IAAMN,EAAKQ,GAAQ,SAAWV,EAAO,EAC/BQ,EAAgC,CAAE,GAAGE,EAAQ,QAASR,CAAG,EAC/D,OAAOD,EAAKC,EAAK,GAAe,CAC9BO,EAAW,cAAcF,EAAOC,CAAO,CACzC,CAAC,CACH,CAEA,IAAMG,EAAwB,CAC5B,gBACA,aAAa,EAAI,CACXZ,EAAM,WAAYA,EAAM,WAAW,aAAaG,CAAE,EACjD,EAAM,MAAQH,EAAM,MAAM,OAAQ,GAASM,EAAK,KAAOH,CAAE,CAChE,EACA,kBAAmB,CACbH,EAAM,WAAYA,EAAM,WAAW,iBAAiB,EACnD,EAAM,MAAQ,CAAC,CACtB,CACF,EAEA,OADAJ,EAAe,OAAO,IAAIgB,EAAQZ,CAAK,EAChCY,CACT,CAYA,SAAgBC,EACd,EACA,EACA,EACsB,CACtB,IAAMb,EAAQJ,EAAe,OAAO,IAAIgB,CAAM,EAC9C,GAAI,CAACZ,EAAO,MAAO,CAAE,OAAQ,SAAU,EACvC,GAAIA,EAAM,QAAU,MAAQA,EAAM,QAAUc,EAAO,MAAO,CAAE,OAAQ,OAAQ,EAC5E,EAAM,MAAQA,EACd,EAAM,WAAaJ,EACnB,IAAMK,EAASf,EAAM,MACrB,EAAM,MAAQ,CAAC,EACf,IAAK,IAAMM,KAAQS,EAAQT,EAAK,IAAII,CAAU,EAC9C,MAAO,CACL,OAAQ,QACR,WAAc,CACRV,EAAM,QAAUc,IACpB,EAAM,MAAQ,KACd,EAAM,WAAa,KACrB,CACF,CACF"}
@@ -0,0 +1,77 @@
1
+ import { getGlobalRegistry as e } from "./globalRegistry.mjs";
2
+ //#region src/lib/toaster.ts
3
+ function t(e) {
4
+ if (typeof e != "object" || !e || "$$typeof" in e || Symbol.iterator in e || typeof e.then == "function") return !1;
5
+ let t = Object.getPrototypeOf(e);
6
+ return t === null || t === Object.prototype || Object.getPrototypeOf(t) === null;
7
+ }
8
+ var n = e("toasterHandles", () => ({
9
+ states: /* @__PURE__ */ new WeakMap(),
10
+ count: 0
11
+ }));
12
+ function r() {
13
+ n.count += 1;
14
+ let e = `wave-toaster-h${n.count}`, r = 0, i = {
15
+ controller: null,
16
+ owner: null,
17
+ queue: []
18
+ }, a = () => (r += 1, `${e}-${r}`), o = (e, t) => {
19
+ if (typeof window > "u") return e;
20
+ if (i.controller) return t(i.controller), e;
21
+ let n = i.queue.findIndex((t) => t.id === e);
22
+ return n === -1 ? i.queue.push({
23
+ id: e,
24
+ run: t
25
+ }) : i.queue[n] = {
26
+ id: e,
27
+ run: t
28
+ }, e;
29
+ };
30
+ function s(e, n) {
31
+ if (t(e)) {
32
+ let t = e.toastId ?? a(), n = {
33
+ ...e,
34
+ toastId: t
35
+ };
36
+ return o(t, (e) => {
37
+ e.dispatchToast(n);
38
+ });
39
+ }
40
+ let r = n?.toastId ?? a(), i = {
41
+ ...n,
42
+ toastId: r
43
+ };
44
+ return o(r, (t) => {
45
+ t.dispatchToast(e, i);
46
+ });
47
+ }
48
+ let c = {
49
+ dispatchToast: s,
50
+ dismissToast(e) {
51
+ i.controller ? i.controller.dismissToast(e) : i.queue = i.queue.filter((t) => t.id !== e);
52
+ },
53
+ dismissAllToasts() {
54
+ i.controller ? i.controller.dismissAllToasts() : i.queue = [];
55
+ }
56
+ };
57
+ return n.states.set(c, i), c;
58
+ }
59
+ function i(e, t, r) {
60
+ let i = n.states.get(e);
61
+ if (!i) return { status: "unknown" };
62
+ if (i.owner !== null && i.owner !== t) return { status: "taken" };
63
+ i.owner = t, i.controller = r;
64
+ let a = i.queue;
65
+ i.queue = [];
66
+ for (let e of a) e.run(r);
67
+ return {
68
+ status: "bound",
69
+ unbind: () => {
70
+ i.owner === t && (i.owner = null, i.controller = null);
71
+ }
72
+ };
73
+ }
74
+ //#endregion
75
+ export { i as bindToasterHandle, r as createToaster, t as isToastOptions };
76
+
77
+ //# sourceMappingURL=toaster.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toaster.mjs","names":["isToastOptions","value","proto","handleRegistry","getGlobalRegistry","createToaster","prefix","dispatchCount","state","nextId","send","id","run","index","call","dispatchToast","first","options","second","handle","bindToasterHandle","owner","controller","queued"],"sources":["../../src/lib/toaster.ts"],"sourcesContent":["/**\n * The toaster module (P3-01, P3-08): the options recogniser and the toaster handle. Server-safe:\n * it imports only types (and the dependency-free global registry) and touches no DOM, so a Server\n * Component may import it.\n */\nimport type * as React from 'react';\nimport { getGlobalRegistry } from './globalRegistry';\nimport type {\n ToastController,\n ToastDispatchOptions,\n ToastOptions,\n} from '../components/feedback/Toaster';\n\n/**\n * Whether a `dispatchToast` argument is the options form (0.5): a plain object (prototype\n * `Object.prototype` or `null`, from any realm) that is no React node — no `$$typeof`, not\n * iterable, not a thenable (the slot-object rule of `src/lib/slot.ts`). Anything else is content:\n * an element, a portal, a string, a number, an array or another iterable, a thenable, `null`.\n */\nexport function isToastOptions(value: unknown): value is ToastOptions {\n if (typeof value !== 'object' || value === null) return false;\n if ('$$typeof' in value || Symbol.iterator in value) return false;\n if (typeof (value as { then?: unknown }).then === 'function') return false;\n const proto: unknown = Object.getPrototypeOf(value);\n return proto === null || proto === Object.prototype || Object.getPrototypeOf(proto) === null;\n}\n\n/**\n * A toast controller that code outside React components can call (a query-cache callback, a\n * server-event handler, a shared helper). Bind it to one Toaster with `<Toaster toaster={handle}>`;\n * toasts dispatched through it render there. One handle per Toaster is also how an app runs\n * several Toasters (Fluent's `toasterId`).\n */\nexport type ToasterHandle = ToastController;\n\n/** A dispatch waiting for a Toaster to bind the handle. */\ninterface QueuedDispatch {\n id: string;\n run: (controller: ToastController) => void;\n}\n\n/** The internal state of a handle, never reachable from the handle itself. */\ninterface HandleState {\n controller: ToastController | null;\n /** The Toaster the handle is bound to (an identity token), or `null`. */\n owner: object | null;\n queue: QueuedDispatch[];\n}\n\n/** Shared by the ESM and CJS copies of the library, so either copy's Toaster binds either's handle. */\nconst handleRegistry = getGlobalRegistry('toasterHandles', () => ({\n states: new WeakMap<object, HandleState>(),\n count: 0,\n}));\n\n/**\n * Creates a handle. It touches no DOM, so a module-scope handle is safe during server rendering;\n * a dispatch on the server does nothing (it returns the id), so no toast is carried from one\n * request to the next.\n *\n * - `dispatchToast` returns the id at once: `toastId`, or one the handle generates.\n * - Before a Toaster binds the handle, dispatches wait in its queue, in dispatch order (a dispatch\n * with the id of a waiting one replaces it in place); `dismissToast` removes a waiting toast and\n * `dismissAllToasts` empties the queue. The Toaster that binds takes the queue.\n *\n * @example\n * export const appToaster = createToaster();\n * // <Toaster toaster={appToaster}><App /></Toaster>\n * queryClient.getMutationCache().config.onError = () => {\n * appToaster.dispatchToast({ status: 'error', title: 'Could not save' });\n * };\n */\nexport function createToaster(): ToasterHandle {\n handleRegistry.count += 1;\n const prefix = `wave-toaster-h${handleRegistry.count}`;\n let dispatchCount = 0;\n const state: HandleState = { controller: null, owner: null, queue: [] };\n const nextId = () => {\n dispatchCount += 1;\n return `${prefix}-${dispatchCount}`;\n };\n const send = (id: string, run: (controller: ToastController) => void): string => {\n if (typeof window === 'undefined') return id;\n if (state.controller) {\n run(state.controller);\n return id;\n }\n const index = state.queue.findIndex((call) => call.id === id);\n if (index === -1) state.queue.push({ id, run });\n else state.queue[index] = { id, run };\n return id;\n };\n\n function dispatchToast(content: React.ReactNode, options?: ToastDispatchOptions): string;\n function dispatchToast(options: ToastOptions): string;\n function dispatchToast(\n first: React.ReactNode | ToastOptions,\n second?: ToastDispatchOptions,\n ): string {\n if (isToastOptions(first)) {\n const id = first.toastId ?? nextId();\n const options: ToastOptions = { ...first, toastId: id };\n return send(id, (controller) => {\n controller.dispatchToast(options);\n });\n }\n const id = second?.toastId ?? nextId();\n const options: ToastDispatchOptions = { ...second, toastId: id };\n return send(id, (controller) => {\n controller.dispatchToast(first, options);\n });\n }\n\n const handle: ToasterHandle = {\n dispatchToast,\n dismissToast(id) {\n if (state.controller) state.controller.dismissToast(id);\n else state.queue = state.queue.filter((call) => call.id !== id);\n },\n dismissAllToasts() {\n if (state.controller) state.controller.dismissAllToasts();\n else state.queue = [];\n },\n };\n handleRegistry.states.set(handle, state);\n return handle;\n}\n\n/** The result of {@link bindToasterHandle}. */\nexport type ToasterHandleBinding =\n { status: 'bound'; unbind: () => void } | { status: 'taken' } | { status: 'unknown' };\n\n/**\n * Internal (the Toaster's layout effect; not exported from the package): binds `handle` to the\n * controller of the Toaster identified by `owner` and replays the queue in dispatch order. A handle\n * bound to another mounted Toaster is `taken`; an object that `createToaster()` did not make is\n * `unknown`. The same owner binding again (StrictMode's remount) finds the queue already taken.\n */\nexport function bindToasterHandle(\n handle: ToastController,\n owner: object,\n controller: ToastController,\n): ToasterHandleBinding {\n const state = handleRegistry.states.get(handle);\n if (!state) return { status: 'unknown' };\n if (state.owner !== null && state.owner !== owner) return { status: 'taken' };\n state.owner = owner;\n state.controller = controller;\n const queued = state.queue;\n state.queue = [];\n for (const call of queued) call.run(controller);\n return {\n status: 'bound',\n unbind: () => {\n if (state.owner !== owner) return;\n state.owner = null;\n state.controller = null;\n },\n };\n}\n"],"mappings":";;AAmBA,SAAgBA,EAAe,GAAuC;CAGpE,IAFI,OAAOC,KAAU,aAAYA,KAC7B,cAAcA,KAAS,OAAO,YAAYA,KAC1C,OAAQA,EAA6B,QAAS,YAAY,OAAO;CACrE,IAAMC,IAAiB,OAAO,eAAeD,CAAK;CAClD,OAAOC,MAAU,QAAQA,MAAU,OAAO,aAAa,OAAO,eAAeA,CAAK,MAAM;AAC1F;AAyBA,IAAMC,IAAiBC,EAAkB,yBAAyB;CAChE,wBAAQ,IAAI,QAA6B;CACzC,OAAO;AACT,EAAE;AAmBF,SAAgBC,IAA+B;CAC7C,EAAe,SAAS;CACxB,IAAMC,IAAS,iBAAiBH,EAAe,SAC3CI,IAAgB,GACdC,IAAqB;EAAE,YAAY;EAAM,OAAO;EAAM,OAAO,CAAC;CAAE,GAChEC,WACJ,KAAiB,GACV,GAAGH,EAAO,GAAGC,MAEhBG,KAAQ,GAAY,MAAuD;EAC/E,IAAI,OAAO,SAAW,KAAa,OAAOC;EAC1C,IAAIH,EAAM,YAER,OADAI,EAAIJ,EAAM,UAAU,GACbG;EAET,IAAME,IAAQL,EAAM,MAAM,WAAW,MAASM,EAAK,OAAOH,CAAE;EAG5D,OAFIE,MAAU,KAAIL,EAAM,MAAM,KAAK;GAAE;GAAI;EAAI,CAAC,IACzC,EAAM,MAAMK,KAAS;GAAE;GAAI;EAAI,GAC7BF;CACT;CAIA,SAASI,EACP,GACA,GACQ;EACR,IAAIf,EAAegB,CAAK,GAAG;GACzB,IAAML,IAAKK,EAAM,WAAWP,EAAO,GAC7BQ,IAAwB;IAAE,GAAGD;IAAO,SAASL;GAAG;GACtD,OAAOD,EAAKC,IAAK,MAAe;IAC9B,EAAW,cAAcM,CAAO;GAClC,CAAC;EACH;EACA,IAAMN,IAAKO,GAAQ,WAAWT,EAAO,GAC/BQ,IAAgC;GAAE,GAAGC;GAAQ,SAASP;EAAG;EAC/D,OAAOD,EAAKC,IAAK,MAAe;GAC9B,EAAW,cAAcK,GAAOC,CAAO;EACzC,CAAC;CACH;CAEA,IAAME,IAAwB;EAC5B;EACA,aAAa,GAAI;GACf,AAAIX,EAAM,aAAYA,EAAM,WAAW,aAAaG,CAAE,IACjD,EAAM,QAAQH,EAAM,MAAM,QAAQ,MAASM,EAAK,OAAOH,CAAE;EAChE;EACA,mBAAmB;GACjB,AAAIH,EAAM,aAAYA,EAAM,WAAW,iBAAiB,IACnD,EAAM,QAAQ,CAAC;EACtB;CACF;CAEA,OADAL,EAAe,OAAO,IAAIgB,GAAQX,CAAK,GAChCW;AACT;AAYA,SAAgBC,EACd,GACA,GACA,GACsB;CACtB,IAAMZ,IAAQL,EAAe,OAAO,IAAIgB,CAAM;CAC9C,IAAI,CAACX,GAAO,OAAO,EAAE,QAAQ,UAAU;CACvC,IAAIA,EAAM,UAAU,QAAQA,EAAM,UAAUa,GAAO,OAAO,EAAE,QAAQ,QAAQ;CAE5E,AADA,EAAM,QAAQA,GACd,EAAM,aAAaC;CACnB,IAAMC,IAASf,EAAM;CACrB,EAAM,QAAQ,CAAC;CACf,KAAK,IAAMM,KAAQS,GAAQ,EAAK,IAAID,CAAU;CAC9C,OAAO;EACL,QAAQ;EACR,cAAc;GACZ,AAAId,EAAM,UAAUa,MACpB,EAAM,QAAQ,MACd,EAAM,aAAa;EACrB;CACF;AACF"}
package/dist/styles.css CHANGED
@@ -1,2 +1,2 @@
1
1
  /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-outline-style:solid}}}:root{--wave-font-family:"Segoe UI", "Segoe UI Web (West European)", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;--wave-z-overlay:1000;--wave-z-toast:1100;--wave-z-tooltip:1200;--wave-duration-ultra-fast:50ms;--wave-duration-faster:.1s;--wave-duration-fast:.15s;--wave-duration-normal:.2s;--wave-duration-gentle:.25s;--wave-duration-slow:.3s;--wave-duration-slower:.4s;--wave-duration-ultra-slow:.5s;--wave-curve-accelerate-max:cubic-bezier(.9, .1, 1, .2);--wave-curve-accelerate-mid:cubic-bezier(1, 0, 1, 1);--wave-curve-accelerate-min:cubic-bezier(.8, 0, .78, 1);--wave-curve-decelerate-max:cubic-bezier(.1, .9, .2, 1);--wave-curve-decelerate-mid:cubic-bezier(0, 0, 0, 1);--wave-curve-decelerate-min:cubic-bezier(.33, 0, .1, 1);--wave-curve-easy-ease-max:cubic-bezier(.8, 0, .2, 1);--wave-curve-easy-ease:cubic-bezier(.33, 0, .67, 1);--wave-curve-linear:cubic-bezier(0, 0, 1, 1);--wave-brand-10:var(--brand-10,#061724);--wave-brand-20:var(--brand-20,#082338);--wave-brand-30:var(--brand-30,#0a2e4a);--wave-brand-40:var(--brand-40,#0c3b5e);--wave-brand-50:var(--brand-50,#0e4775);--wave-brand-60:var(--brand-60,#0f548c);--wave-brand-70:var(--brand-70,#115ea3);--wave-brand-80:var(--brand-80,#0f6cbd);--wave-brand-90:var(--brand-90,#2886de);--wave-brand-100:var(--brand-100,#479ef5);--wave-brand-110:var(--brand-110,#62abf5);--wave-brand-120:var(--brand-120,#77b7f7);--wave-brand-130:var(--brand-130,#96c6fa);--wave-brand-140:var(--brand-140,#b4d6fa);--wave-brand-150:var(--brand-150,#cfe4fa);--wave-brand-160:var(--brand-160,#ebf3fc);--wave-grey-2:var(--grey-2,#050505);--wave-grey-4:var(--grey-4,#0a0a0a);--wave-grey-6:var(--grey-6,#0f0f0f);--wave-grey-8:var(--grey-8,#141414);--wave-grey-10:var(--grey-10,#1a1a1a);--wave-grey-12:var(--grey-12,#1f1f1f);--wave-grey-14:var(--grey-14,#242424);--wave-grey-16:var(--grey-16,#292929);--wave-grey-20:var(--grey-20,#333);--wave-grey-24:var(--grey-24,#3d3d3d);--wave-grey-26:var(--grey-26,#424242);--wave-grey-30:var(--grey-30,#4d4d4d);--wave-grey-34:var(--grey-34,#575757);--wave-grey-38:var(--grey-38,#616161);--wave-grey-40:var(--grey-40,#666);--wave-grey-44:var(--grey-44,#707070);--wave-grey-50:var(--grey-50,gray);--wave-grey-60:var(--grey-60,#999);--wave-grey-68:var(--grey-68,#adadad);--wave-grey-74:var(--grey-74,#bdbdbd);--wave-grey-78:var(--grey-78,#c7c7c7);--wave-grey-82:var(--grey-82,#d1d1d1);--wave-grey-86:var(--grey-86,#dbdbdb);--wave-grey-88:var(--grey-88,#e0e0e0);--wave-grey-90:var(--grey-90,#e6e6e6);--wave-grey-92:var(--grey-92,#ebebeb);--wave-grey-94:var(--grey-94,#f0f0f0);--wave-grey-96:var(--grey-96,#f5f5f5);--wave-grey-98:var(--grey-98,#fafafa)}:root,.wave-light{--wave-background:#fff;--wave-foreground:#242424;--wave-card:#fafafa;--wave-secondary:#f5f5f5;--wave-muted:#f0f0f0;--wave-muted-foreground:#616161;--wave-primary:var(--wave-brand-80);--wave-primary-foreground:#fff;--wave-primary-hover:var(--wave-brand-70);--wave-primary-pressed:var(--wave-brand-40);--wave-destructive:#c50f1f;--wave-destructive-foreground:#fff;--wave-error:#c50f1f;--wave-error-foreground:#fff;--wave-subtle:transparent;--wave-subtle-hover:#f5f5f5;--wave-subtle-pressed:#ebebeb;--wave-subtle-selected:#ebebeb;--wave-selected:var(--wave-brand-160);--wave-selected-foreground:var(--wave-brand-60);--wave-border:#e0e0e0;--wave-stroke:#d1d1d1;--wave-stroke-hover:#c7c7c7;--wave-stroke-accessible:#616161;--wave-input:#d1d1d1;--wave-ring:var(--wave-brand-80);--wave-success:#107c10;--wave-success-foreground:#fff;--wave-success-tint:#f1faf1;--wave-success-tint-foreground:#0e700e;--wave-warning:#fde300;--wave-warning-foreground:#242424;--wave-warning-tint:#fffbe6;--wave-warning-tint-foreground:#6d5b00;--wave-error-tint:#fdf3f4;--wave-error-tint-foreground:#b10e1c;--wave-severe:#da3b01;--wave-severe-foreground:#fff;--wave-severe-tint:#fdf6f3;--wave-severe-tint-foreground:#a52c00;--wave-info:#0f6cbd;--wave-info-foreground:#fff;--wave-info-tint:#ebf3fc;--wave-info-tint-foreground:#0f548c;--wave-inverted:#292929;--wave-inverted-foreground:#fff;--wave-inverted-border:transparent;--wave-track:#e0e0e0;--wave-skeleton:#e0e0e0;--wave-rating:#b86e00;--wave-presence-available:#107c10;--wave-presence-busy:#c50f1f;--wave-presence-away:#a67c00;--wave-presence-offline:#616161;--wave-presence-oof:#b4009e;--wave-presence-glyph:#fff;--wave-backdrop:#0006;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-dark,.dark{--wave-background:#292929;--wave-foreground:#fff;--wave-card:#333;--wave-secondary:#333;--wave-muted:#383838;--wave-muted-foreground:#adadad;--wave-primary:var(--wave-brand-110);--wave-primary-foreground:#000;--wave-primary-hover:var(--wave-brand-120);--wave-primary-pressed:var(--wave-brand-90);--wave-destructive:#f48a94;--wave-destructive-foreground:#000;--wave-error:#f48a94;--wave-error-foreground:#000;--wave-subtle:transparent;--wave-subtle-hover:#333;--wave-subtle-pressed:#2e2e2e;--wave-subtle-selected:#383838;--wave-selected:var(--wave-brand-20);--wave-selected-foreground:var(--wave-brand-110);--wave-border:#666;--wave-stroke:#666;--wave-stroke-hover:#757575;--wave-stroke-accessible:#adadad;--wave-input:#666;--wave-ring:var(--wave-brand-100);--wave-success:#5db55d;--wave-success-foreground:#000;--wave-success-tint:#052505;--wave-success-tint-foreground:#54b054;--wave-warning:#fde300;--wave-warning-foreground:#000;--wave-warning-tint:#463100;--wave-warning-tint-foreground:#fde300;--wave-error-tint:#3b0509;--wave-error-tint-foreground:#f48a94;--wave-severe:#e97548;--wave-severe-foreground:#000;--wave-severe-tint:#411200;--wave-severe-tint-foreground:#e97548;--wave-info:#479ef5;--wave-info-foreground:#000;--wave-info-tint:#082338;--wave-info-tint-foreground:#62abf5;--wave-inverted:#fff;--wave-inverted-foreground:#242424;--wave-inverted-border:transparent;--wave-track:#3d3d3d;--wave-skeleton:#3d3d3d;--wave-rating:#f7b538;--wave-presence-available:#54b054;--wave-presence-busy:#f48a94;--wave-presence-away:#f7b538;--wave-presence-offline:#adadad;--wave-presence-oof:#d696c8;--wave-presence-glyph:#000;--wave-backdrop:#00000080;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-high-contrast,.high-contrast{--wave-background:#000;--wave-foreground:#fff;--wave-card:#000;--wave-secondary:#000;--wave-muted:#1a1a1a;--wave-muted-foreground:#fff;--wave-primary:#1aebff;--wave-primary-foreground:#000;--wave-primary-hover:#6ef3ff;--wave-primary-pressed:#00c4d6;--wave-destructive:#ff6e6e;--wave-destructive-foreground:#000;--wave-error:#ff6e6e;--wave-error-foreground:#000;--wave-subtle:transparent;--wave-subtle-hover:#1f1f1f;--wave-subtle-pressed:#333;--wave-subtle-selected:#333;--wave-selected:#003a40;--wave-selected-foreground:#fff;--wave-border:#fff;--wave-stroke:#fff;--wave-stroke-hover:#fff;--wave-stroke-accessible:#fff;--wave-input:#fff;--wave-ring:#ff0;--wave-success:#3ff23f;--wave-success-foreground:#000;--wave-success-tint:#000;--wave-success-tint-foreground:#3ff23f;--wave-warning:#ff0;--wave-warning-foreground:#000;--wave-warning-tint:#000;--wave-warning-tint-foreground:#ff0;--wave-error-tint:#000;--wave-error-tint-foreground:#ff6060;--wave-severe:#ff8c00;--wave-severe-foreground:#000;--wave-severe-tint:#000;--wave-severe-tint-foreground:#ff8c00;--wave-info:#1aebff;--wave-info-foreground:#000;--wave-info-tint:#000;--wave-info-tint-foreground:#1aebff;--wave-inverted:#000;--wave-inverted-foreground:#fff;--wave-inverted-border:#fff;--wave-track:#4d4d4d;--wave-skeleton:#333;--wave-rating:#ff0;--wave-presence-available:#3ff23f;--wave-presence-busy:#ff6060;--wave-presence-away:#ff0;--wave-presence-offline:#fff;--wave-presence-oof:#ff80ff;--wave-presence-glyph:#000;--wave-backdrop:#000c;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-light{color-scheme:light}.wave-dark,.wave-high-contrast{color-scheme:dark}.wave-root,.wave-portal{font-family:var(--wave-font-family);color:var(--wave-foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:20px}.wave-root{background-color:var(--wave-background)}:where(.wave-root,.wave-portal) :where(*),:where(.wave-root,.wave-portal) :where(*):before,:where(.wave-root,.wave-portal) :where(*):after{box-sizing:border-box;border-color:var(--wave-border)}:where(.wave-root,.wave-portal) :where(button,input,select,textarea){font:inherit;color:inherit;letter-spacing:inherit;background-color:#0000;border:0 solid;margin:0;padding:0}:where(.wave-root,.wave-portal) :where(button,[role=button]){cursor:pointer}:where(.wave-root,.wave-portal) :where(ul,ol){margin:0;padding:0;list-style:none}:where(.wave-root,.wave-portal) :where(h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd){margin:0}:where(.wave-root,.wave-portal) :where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit}:where(.wave-root,.wave-portal) :where(fieldset){border:0;min-width:0;margin:0;padding:0}:where(.wave-root,.wave-portal) :where(legend){padding:0}:where(.wave-root,.wave-portal) :where(table){border-collapse:collapse;text-indent:0}:where(.wave-root,.wave-portal) :where(hr){height:0;color:inherit;border:0 solid;border-top-width:1px;margin:0}:where(.wave-root,.wave-portal) :where(img,svg,video){vertical-align:middle}:where(.wave-root,.wave-portal) :where([hidden]:not([hidden=until-found])){display:none!important}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.start-0{inset-inline-start:0}.start-2{inset-inline-start:.5rem}.start-4{inset-inline-start:1rem}.-end-1{inset-inline-end:-.25rem}.end-0{inset-inline-end:0}.end-1{inset-inline-end:.25rem}.end-2{inset-inline-end:.5rem}.end-3{inset-inline-end:.75rem}.end-4{inset-inline-end:1rem}.end-7{inset-inline-end:1.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.right-0{right:0}.right-4{right:1rem}.-bottom-1{bottom:-.25rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-4{left:1rem}.isolate{isolation:isolate}.z-10{z-index:10}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.m-0{margin:0}.-mx-1{margin-inline:-.25rem}.mx-1{margin-inline:.25rem}.mx-2{margin-inline:.5rem}.mx-auto{margin-inline:auto}.my-1{margin-block:.25rem}.-ms-2{margin-inline-start:-.5rem}.ms-\(--wave-toaster-offset\){margin-inline-start:var(--wave-toaster-offset)}.ms-0\.5{margin-inline-start:.125rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-3\.75{margin-inline-start:.9375rem}.ms-4{margin-inline-start:1rem}.ms-auto{margin-inline-start:auto}.me-\(--wave-toaster-offset\){margin-inline-end:var(--wave-toaster-offset)}.me-1{margin-inline-end:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-6{margin-top:1.5rem}.mt-px{margin-top:1px}.mr-\(--wave-toaster-offset\){margin-right:var(--wave-toaster-offset)}.-mb-1{margin-bottom:-.25rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-\(--wave-toaster-offset\){margin-left:var(--wave-toaster-offset)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.size-2{width:.5rem;height:.5rem}.size-2\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-10{width:2.5rem;height:2.5rem}.size-full{width:100%;height:100%}.h-0{height:0}.h-0\.5{height:.125rem}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-\[10px\]{height:10px}.h-\[14px\]{height:14px}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[20px\]{height:20px}.h-auto{height:auto}.h-full{height:100%}.max-h-\(--wave-popup-available-height\){max-height:var(--wave-popup-available-height)}.max-h-60{max-height:15rem}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.min-h-0{min-height:0}.min-h-2{min-height:.5rem}.min-h-6{min-height:1.5rem}.min-h-12{min-height:3rem}.min-h-20{min-height:5rem}.w-0{width:0}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-2{width:.5rem}.w-2\/5{width:40%}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-24{width:6rem}.w-40{width:10rem}.w-60{width:15rem}.w-64{width:16rem}.w-80{width:20rem}.w-\[10px\]{width:10px}.w-\[14px\]{width:14px}.w-\[18px\]{width:18px}.w-\[32px\]{width:32px}.w-\[40px\]{width:40px}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-\(--wave-popup-available-width\){max-width:var(--wave-popup-available-width)}.max-w-60{max-width:15rem}.max-w-\[400px\]{max-width:400px}.max-w-\[600px\]{max-width:600px}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-xs{max-width:20rem}.min-w-0{min-width:0}.min-w-2{min-width:.5rem}.min-w-5{min-width:1.25rem}.min-w-6{min-width:1.5rem}.min-w-15{min-width:3.75rem}.min-w-24{min-width:6rem}.min-w-32{min-width:8rem}.min-w-\[180px\]{min-width:180px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-1\/3{flex-basis:33.3333%}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.translate-x-\[2px\]{--tw-translate-x:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[18px\]{--tw-translate-x:18px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[22px\]{--tw-translate-x:22px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-scale-x-100{--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.animate-wave-indeterminate{animation:1.5s ease-in-out infinite wave-indeterminate}.animate-wave-indeterminate-rtl{animation:1.5s ease-in-out infinite wave-indeterminate-rtl}.animate-wave-pulse{animation:1.5s ease-in-out infinite wave-pulse}.animate-wave-spin{animation:.8s linear infinite wave-spin}.animate-wave-spin-slow{animation:2.4s linear infinite wave-spin}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.scroll-pb-\(--wave-dialog-footer-height\){scroll-padding-bottom:var(--wave-dialog-footer-height)}.list-none{list-style-type:none}.\[appearance\:textfield\]{appearance:textfield}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-evenly{justify-content:space-evenly}.justify-start{justify-content:flex-start}.justify-items-center{justify-items:center}.justify-items-end{justify-items:end}.justify-items-start{justify-items:start}.justify-items-stretch{justify-items:stretch}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-\[inherit\]{gap:inherit}.gap-x-0{column-gap:0}.gap-x-1{column-gap:.25rem}.gap-x-2{column-gap:.5rem}.gap-x-3{column-gap:.75rem}.gap-x-4{column-gap:1rem}.gap-x-6{column-gap:1.5rem}.gap-y-0{row-gap:0}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.gap-y-6{row-gap:1.5rem}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--wave-border)}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.25rem}.rounded-xs{border-radius:.125rem}.rounded-s-none{border-start-start-radius:0;border-end-start-radius:0}.rounded-e-none{border-start-end-radius:0;border-end-end-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-s-2{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.border-s-4{border-inline-start-style:var(--tw-border-style);border-inline-start-width:4px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-e-0{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-border{border-color:var(--wave-border)}.border-current\/30{border-color:currentColor}@supports (color:color-mix(in lab, red, red)){.border-current\/30{border-color:color-mix(in oklab, currentcolor 30%, transparent)}}.border-destructive{border-color:var(--wave-destructive)}.border-error{border-color:var(--wave-error)}.border-inherit{border-color:inherit}.border-input{border-color:var(--wave-input)}.border-inverted-border{border-color:var(--wave-inverted-border)}.border-muted-foreground{border-color:var(--wave-muted-foreground)}.border-primary{border-color:var(--wave-primary)}.border-severe{border-color:var(--wave-severe)}.border-stroke{border-color:var(--wave-stroke)}.border-stroke-accessible{border-color:var(--wave-stroke-accessible)}.border-success{border-color:var(--wave-success)}.border-track{border-color:var(--wave-track)}.border-transparent{border-color:#0000}.border-warning{border-color:var(--wave-warning)}.border-warning-tint-foreground{border-color:var(--wave-warning-tint-foreground)}.border-s-error{border-inline-start-color:var(--wave-error)}.border-s-info{border-inline-start-color:var(--wave-info)}.border-s-primary{border-inline-start-color:var(--wave-primary)}.border-s-primary-foreground\/30{border-inline-start-color:var(--wave-primary-foreground)}@supports (color:color-mix(in lab, red, red)){.border-s-primary-foreground\/30{border-inline-start-color:color-mix(in oklab, var(--wave-primary-foreground) 30%, transparent)}}.border-s-stroke{border-inline-start-color:var(--wave-stroke)}.border-s-success{border-inline-start-color:var(--wave-success)}.border-s-warning{border-inline-start-color:var(--wave-warning)}.border-t-current{border-top-color:currentColor}.border-t-primary{border-top-color:var(--wave-primary)}.border-b-primary{border-bottom-color:var(--wave-primary)}.border-b-stroke-accessible{border-bottom-color:var(--wave-stroke-accessible)}.bg-\(--option-bg\){background-color:var(--option-bg)}.bg-backdrop{background-color:var(--wave-backdrop)}.bg-background{background-color:var(--wave-background)}.bg-border{background-color:var(--wave-border)}.bg-card{background-color:var(--wave-card)}.bg-destructive{background-color:var(--wave-destructive)}.bg-error{background-color:var(--wave-error)}.bg-error-tint{background-color:var(--wave-error-tint)}.bg-info-tint{background-color:var(--wave-info-tint)}.bg-inherit{background-color:inherit}.bg-inverted{background-color:var(--wave-inverted)}.bg-muted{background-color:var(--wave-muted)}.bg-muted-foreground{background-color:var(--wave-muted-foreground)}.bg-presence-available{background-color:var(--wave-presence-available)}.bg-presence-away{background-color:var(--wave-presence-away)}.bg-presence-busy{background-color:var(--wave-presence-busy)}.bg-presence-oof{background-color:var(--wave-presence-oof)}.bg-primary{background-color:var(--wave-primary)}.bg-primary-foreground{background-color:var(--wave-primary-foreground)}.bg-primary-pressed{background-color:var(--wave-primary-pressed)}.bg-selected{background-color:var(--wave-selected)}.bg-severe{background-color:var(--wave-severe)}.bg-severe-tint{background-color:var(--wave-severe-tint)}.bg-skeleton{background-color:var(--wave-skeleton)}.bg-stroke-accessible{background-color:var(--wave-stroke-accessible)}.bg-subtle-selected{background-color:var(--wave-subtle-selected)}.bg-success{background-color:var(--wave-success)}.bg-success-tint{background-color:var(--wave-success-tint)}.bg-track{background-color:var(--wave-track)}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--wave-warning)}.bg-warning-tint{background-color:var(--wave-warning-tint)}.bg-warning-tint-foreground{background-color:var(--wave-warning-tint-foreground)}.bg-\[image\:linear-gradient\(45deg\,transparent_50\%\,var\(--wave-muted-foreground\)_50\%\)\,linear-gradient\(135deg\,var\(--wave-muted-foreground\)_50\%\,transparent_50\%\)\]{background-image:linear-gradient(45deg,transparent 50%,var(--wave-muted-foreground) 50%),linear-gradient(135deg,var(--wave-muted-foreground) 50%,transparent 50%)}.bg-\[size\:5px_5px\,5px_5px\]{background-size:5px 5px,5px 5px}.bg-\[position\:right_16px_center\,right_11px_center\]{background-position:right 16px center,right 11px center}.bg-no-repeat{background-repeat:no-repeat}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-none{object-fit:none}.object-center{object-position:center}.object-left-top{object-position:left top}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-inline:0}.px-1{padding-inline:.25rem}.px-1\.5{padding-inline:.375rem}.px-2{padding-inline:.5rem}.px-2\.5{padding-inline:.625rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-5{padding-inline:1.25rem}.py-0{padding-block:0}.py-0\.5{padding-block:.125rem}.py-1{padding-block:.25rem}.py-1\.5{padding-block:.375rem}.py-2{padding-block:.5rem}.py-3{padding-block:.75rem}.py-4{padding-block:1rem}.ps-1{padding-inline-start:.25rem}.ps-2{padding-inline-start:.5rem}.ps-3{padding-inline-start:.75rem}.ps-4{padding-inline-start:1rem}.ps-11{padding-inline-start:2.75rem}.pe-1\.5{padding-inline-end:.375rem}.pe-2{padding-inline-end:.5rem}.pe-3{padding-inline-end:.75rem}.pe-4{padding-inline-end:1rem}.pe-8{padding-inline-end:2rem}.pe-10{padding-inline-end:2.5rem}.pe-14{padding-inline-end:3.5rem}.pt-0{padding-top:0}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.text-center{text-align:center}.text-end{text-align:end}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-wave{font-family:var(--wave-font-family)}.text-display{font-size:68px;line-height:var(--tw-leading,92px);font-weight:var(--tw-font-weight,600)}.text-large-title{font-size:40px;line-height:var(--tw-leading,52px);font-weight:var(--tw-font-weight,600)}.text-subtitle-1{font-size:20px;line-height:var(--tw-leading,28px);font-weight:var(--tw-font-weight,600)}.text-subtitle-2{font-size:16px;line-height:var(--tw-leading,22px);font-weight:var(--tw-font-weight,600)}.text-title-1{font-size:32px;line-height:var(--tw-leading,40px);font-weight:var(--tw-font-weight,600)}.text-title-2{font-size:28px;line-height:var(--tw-leading,36px);font-weight:var(--tw-font-weight,600)}.text-title-3{font-size:24px;line-height:var(--tw-leading,32px);font-weight:var(--tw-font-weight,600)}.text-\[18px\]\/\[24px\]{font-size:18px;line-height:24px}.text-base{font-size:1rem;line-height:var(--tw-leading,calc(1.5 / 1))}.text-body-1{font-size:14px;line-height:var(--tw-leading,20px)}.text-body-2{font-size:16px;line-height:var(--tw-leading,22px)}.text-caption-1{font-size:12px;line-height:var(--tw-leading,16px)}.text-caption-2{font-size:10px;line-height:var(--tw-leading,14px)}.text-lg{font-size:1.125rem;line-height:var(--tw-leading,calc(1.75 / 1.125))}.text-sm{font-size:.875rem;line-height:var(--tw-leading,calc(1.25 / .875))}.text-xs{font-size:.75rem;line-height:var(--tw-leading,calc(1 / .75))}.text-\[10px\]{font-size:10px}.leading-\[14px\]{--tw-leading:14px;line-height:14px}.font-bold{--tw-font-weight:700;font-weight:700}.font-normal{--tw-font-weight:400;font-weight:400}.font-semibold{--tw-font-weight:600;font-weight:600}.tracking-normal{--tw-tracking:0em;letter-spacing:0}.tracking-wider{--tw-tracking:.05em;letter-spacing:.05em}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-current{color:currentColor}.text-destructive-foreground{color:var(--wave-destructive-foreground)}.text-error{color:var(--wave-error)}.text-error-tint-foreground{color:var(--wave-error-tint-foreground)}.text-foreground{color:var(--wave-foreground)}.text-info-tint-foreground{color:var(--wave-info-tint-foreground)}.text-inherit{color:inherit}.text-inverted-foreground{color:var(--wave-inverted-foreground)}.text-muted-foreground{color:var(--wave-muted-foreground)}.text-presence-busy{color:var(--wave-presence-busy)}.text-presence-glyph{color:var(--wave-presence-glyph)}.text-presence-offline{color:var(--wave-presence-offline)}.text-primary{color:var(--wave-primary)}.text-primary-foreground{color:var(--wave-primary-foreground)}.text-rating{color:var(--wave-rating)}.text-selected-foreground{color:var(--wave-selected-foreground)}.text-severe-foreground{color:var(--wave-severe-foreground)}.text-severe-tint-foreground{color:var(--wave-severe-tint-foreground)}.text-stroke-accessible{color:var(--wave-stroke-accessible)}.text-success{color:var(--wave-success)}.text-success-foreground{color:var(--wave-success-foreground)}.text-success-tint-foreground{color:var(--wave-success-tint-foreground)}.text-warning-foreground{color:var(--wave-warning-foreground)}.text-warning-tint-foreground{color:var(--wave-warning-tint-foreground)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.accent-primary{accent-color:var(--wave-primary)}.opacity-50{opacity:.5}.shadow-2{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 1px 2px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-4{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 2px 4px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-8{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 4px 8px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-16{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 8px 16px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-64{--tw-shadow:0 0 8px var(--tw-shadow-color,#0000001f), 0 32px 64px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.inset-ring-2{--tw-inset-ring-shadow:inset 0 0 0 2px var(--tw-inset-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-background{--tw-ring-color:var(--wave-background)}.ring-foreground{--tw-ring-color:var(--wave-foreground)}.ring-primary{--tw-ring-color:var(--wave-primary)}.inset-ring-primary-foreground{--tw-inset-ring-color:var(--wave-primary-foreground)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--wave-background)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-\[width\,background-color\]{transition-property:width,background-color;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:cubic-bezier(.4, 0, .2, 1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--option-bg\:transparent\]{--option-bg:transparent}.\[font\:inherit\]{font:inherit}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:bg-foreground:is(:where(.group):hover *){background-color:var(--wave-foreground)}}.group-has-\[\[data-menu-checkmark\]\]\/menu\:inline-flex:is(:where(.group\/menu):has([data-menu-checkmark]) *),.group-has-\[\[data-menu-icon\]\]\/menu\:inline-flex:is(:where(.group\/menu):has([data-menu-icon]) *){display:inline-flex}.placeholder\:text-muted-foreground::placeholder{color:var(--wave-muted-foreground)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-y-2:before{content:var(--tw-content);inset-block:.5rem}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0}.before\:w-0\.5:before{content:var(--tw-content);width:.125rem}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:bg-primary:before{content:var(--tw-content);background-color:var(--wave-primary)}.focus-within\:border-b-2:focus-within{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.focus-within\:border-b-destructive:focus-within{border-bottom-color:var(--wave-destructive)}.focus-within\:border-b-primary:focus-within{border-bottom-color:var(--wave-primary)}.focus-within\:outline-2:focus-within{outline-style:var(--tw-outline-style);outline-width:2px}.focus-within\:outline-offset-2:focus-within{outline-offset:2px}.focus-within\:outline-ring:focus-within{outline-color:var(--wave-ring)}@media (hover:hover){.hover\:border-stroke-hover:hover{border-color:var(--wave-stroke-hover)}.hover\:bg-subtle-hover:hover{background-color:var(--wave-subtle-hover)}.not-disabled\:not-aria-disabled\:hover\:border-primary:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-primary)}.not-disabled\:not-aria-disabled\:hover\:border-primary-hover:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-primary-hover)}.not-disabled\:not-aria-disabled\:hover\:border-stroke-hover:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-stroke-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-primary-hover:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-primary-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-primary-pressed:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-primary-pressed)}.not-disabled\:not-aria-disabled\:hover\:bg-selected:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-selected)}.not-disabled\:not-aria-disabled\:hover\:bg-subtle-hover:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-subtle-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-subtle-pressed:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-subtle-pressed)}.not-disabled\:not-aria-disabled\:hover\:text-foreground:not(:disabled):not([aria-disabled=true]):hover{color:var(--wave-foreground)}.not-disabled\:not-aria-disabled\:hover\:underline:not(:disabled):not([aria-disabled=true]):hover{text-decoration-line:underline}.not-disabled\:not-aria-disabled\:hover\:decoration-2:not(:disabled):not([aria-disabled=true]):hover{text-decoration-thickness:2px}.not-disabled\:not-aria-disabled\:hover\:\[--option-bg\:var\(--wave-subtle-hover\)\]:not(:disabled):not([aria-disabled=true]):hover{--option-bg:var(--wave-subtle-hover)}}.focus\:border-b-2:focus{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.focus\:border-b-destructive:focus{border-bottom-color:var(--wave-destructive)}.focus\:border-b-primary:focus{border-bottom-color:var(--wave-primary)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.not-disabled\:not-aria-disabled\:focus\:bg-subtle-hover:not(:disabled):not([aria-disabled=true]):focus{background-color:var(--wave-subtle-hover)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:decoration-2:focus-visible{text-decoration-thickness:2px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:-outline-offset-2:focus-visible{outline-offset:calc(2px * -1)}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--wave-ring)}.not-disabled\:not-aria-disabled\:active\:bg-primary-pressed:not(:disabled):not([aria-disabled=true]):active{background-color:var(--wave-primary-pressed)}.not-disabled\:not-aria-disabled\:active\:bg-subtle-pressed:not(:disabled):not([aria-disabled=true]):active{background-color:var(--wave-subtle-pressed)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-focus-visible\:opacity-100:has(:focus-visible){opacity:1}.aria-disabled\:cursor-not-allowed[aria-disabled=true]{cursor:not-allowed}.aria-disabled\:text-muted-foreground[aria-disabled=true]{color:var(--wave-muted-foreground)}.aria-disabled\:line-through[aria-disabled=true]{text-decoration-line:line-through}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-disabled\:focus-visible\:opacity-100[aria-disabled=true]:focus-visible{opacity:1}.aria-expanded\:bg-subtle-hover[aria-expanded=true],.data-\[active\]\:bg-subtle-hover[data-active]{background-color:var(--wave-subtle-hover)}.data-\[active\]\:outline-2[data-active]{outline-style:var(--tw-outline-style);outline-width:2px}.data-\[active\]\:-outline-offset-2[data-active]{outline-offset:calc(2px * -1)}.data-\[active\]\:outline-ring[data-active]{outline-color:var(--wave-ring)}.data-\[active\]\:\[--option-bg\:var\(--wave-subtle-hover\)\][data-active]{--option-bg:var(--wave-subtle-hover)}.data-\[contains-current\]\:border-s-2[data-contains-current]{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.data-\[contains-current\]\:border-s-primary[data-contains-current]{border-inline-start-color:var(--wave-primary)}.data-\[contains-current\]\:bg-subtle-selected[data-contains-current]{background-color:var(--wave-subtle-selected)}.data-\[contains-current\]\:text-primary[data-contains-current]{color:var(--wave-primary)}.data-\[outside\]\:text-muted-foreground[data-outside]{color:var(--wave-muted-foreground)}.data-\[overflow-pinned\]\:bg-background[data-overflow-pinned]{background-color:var(--wave-background)}.data-\[overflow-pinned\]\:pe-1[data-overflow-pinned]{padding-inline-end:.25rem}.data-\[selected\]\:bg-primary[data-selected]{background-color:var(--wave-primary)}.data-\[selected\]\:bg-selected[data-selected]{background-color:var(--wave-selected)}.data-\[selected\]\:bg-subtle-selected[data-selected]{background-color:var(--wave-subtle-selected)}.data-\[selected\]\:font-semibold[data-selected]{--tw-font-weight:600;font-weight:600}.data-\[selected\]\:text-primary-foreground[data-selected]{color:var(--wave-primary-foreground)}.data-\[selected\]\:\[--option-bg\:var\(--wave-subtle-selected\)\][data-selected]{--option-bg:var(--wave-subtle-selected)}@media (hover:hover){.not-disabled\:not-aria-disabled\:data-\[selected\]\:hover\:bg-primary-hover:not(:disabled):not([aria-disabled=true])[data-selected]:hover{background-color:var(--wave-primary-hover)}}.data-\[side\=bottom\]\:before\:inset-x-0[data-side=bottom]:before{content:var(--tw-content);inset-inline:0}.data-\[side\=bottom\]\:before\:bottom-full[data-side=bottom]:before{content:var(--tw-content);bottom:100%}.data-\[side\=bottom\]\:before\:h-2[data-side=bottom]:before{content:var(--tw-content);height:.5rem}.data-\[side\=left\]\:before\:inset-y-0[data-side=left]:before{content:var(--tw-content);inset-block:0}.data-\[side\=left\]\:before\:left-full[data-side=left]:before{content:var(--tw-content);left:100%}.data-\[side\=left\]\:before\:w-2[data-side=left]:before{content:var(--tw-content);width:.5rem}.data-\[side\=right\]\:before\:inset-y-0[data-side=right]:before{content:var(--tw-content);inset-block:0}.data-\[side\=right\]\:before\:right-full[data-side=right]:before{content:var(--tw-content);right:100%}.data-\[side\=right\]\:before\:w-2[data-side=right]:before{content:var(--tw-content);width:.5rem}.data-\[side\=top\]\:before\:inset-x-0[data-side=top]:before{content:var(--tw-content);inset-inline:0}.data-\[side\=top\]\:before\:top-full[data-side=top]:before{content:var(--tw-content);top:100%}.data-\[side\=top\]\:before\:h-2[data-side=top]:before{content:var(--tw-content);height:.5rem}.data-\[today\]\:border[data-today]{border-style:var(--tw-border-style);border-width:1px}.data-\[today\]\:border-primary[data-today]{border-color:var(--wave-primary)}.data-\[today\]\:font-semibold[data-today]{--tw-font-weight:600;font-weight:600}@media (prefers-reduced-motion:reduce){.motion-reduce\:w-full{width:100%}.motion-reduce\:translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.motion-reduce\:animate-none{animation:none}.motion-reduce\:animate-wave-pulse{animation:1.5s ease-in-out infinite wave-pulse}.motion-reduce\:animate-wave-spin-slow{animation:2.4s linear infinite wave-spin}.motion-reduce\:transition-none{transition-property:none}}@media (forced-colors:active){.forced-colors\:appearance-auto{appearance:auto}.forced-colors\:border{border-style:var(--tw-border-style);border-width:1px}.forced-colors\:border-\[ButtonText\]{border-color:buttontext}.forced-colors\:border-\[CanvasText\]{border-color:canvastext}.forced-colors\:border-\[Canvas\]{border-color:canvas}.forced-colors\:border-\[GrayText\]{border-color:graytext}.forced-colors\:border-\[Highlight\]{border-color:highlight}.forced-colors\:border-t-\[Highlight\]{border-top-color:highlight}.forced-colors\:bg-\[ButtonText\]{background-color:buttontext}.forced-colors\:bg-\[CanvasText\]{background-color:canvastext}.forced-colors\:bg-\[Canvas\]{background-color:canvas}.forced-colors\:bg-\[GrayText\]{background-color:graytext}.forced-colors\:bg-\[HighlightText\]{background-color:highlighttext}.forced-colors\:bg-\[Highlight\]{background-color:highlight}.forced-colors\:bg-none{background-image:none}.forced-colors\:text-\[GrayText\]{color:graytext}.forced-colors\:text-\[HighlightText\]{color:highlighttext}.forced-colors\:outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.forced-colors\:-outline-offset-2{outline-offset:calc(2px * -1)}.forced-colors\:outline-\[GrayText\]{outline-color:graytext}.forced-colors\:outline-\[Highlight\]{outline-color:highlight}.forced-colors\:forced-color-adjust-none{forced-color-adjust:none}.forced-colors\:focus-visible\:outline-\[Highlight\]:focus-visible{outline-color:highlight}.forced-colors\:aria-expanded\:border-s-4[aria-expanded=true]{border-inline-start-style:var(--tw-border-style);border-inline-start-width:4px}.forced-colors\:aria-expanded\:border-\[Highlight\][aria-expanded=true]{border-color:highlight}.forced-colors\:aria-expanded\:ps-2[aria-expanded=true]{padding-inline-start:.5rem}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[2px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(2px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[2px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(2px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[18px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(18px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[18px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(18px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[22px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(22px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[22px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(22px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-scale-x-100:where(:nth-child(n of :dir(rtl))){--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-scale-x-100:where([dir=rtl],[dir=rtl] *){--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:animate-wave-indeterminate-rtl:where(:nth-child(n of :dir(rtl))){animation:1.5s ease-in-out infinite wave-indeterminate-rtl}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:animate-wave-indeterminate-rtl:where([dir=rtl],[dir=rtl] *){animation:1.5s ease-in-out infinite wave-indeterminate-rtl}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:bg-\[position\:left_11px_center\,left_16px_center\]:where(:nth-child(n of :dir(rtl))){background-position:11px,16px}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:bg-\[position\:left_11px_center\,left_16px_center\]:where([dir=rtl],[dir=rtl] *){background-position:11px,16px}}@supports selector(:nth-child(n of :dir(rtl))){@media (prefers-reduced-motion:reduce){.wave-rtl\:motion-reduce\:animate-wave-pulse:where(:nth-child(n of :dir(rtl))){animation:1.5s ease-in-out infinite wave-pulse}}}@supports not selector(:nth-child(n of :dir(rtl))){@media (prefers-reduced-motion:reduce){.wave-rtl\:motion-reduce\:animate-wave-pulse:where([dir=rtl],[dir=rtl] *){animation:1.5s ease-in-out infinite wave-pulse}}}.\[\&\:\:-moz-range-progress\]\:h-1::-moz-range-progress{height:.25rem}.\[\&\:\:-moz-range-progress\]\:rounded-full::-moz-range-progress{border-radius:3.40282e38px}.\[\&\:\:-moz-range-progress\]\:bg-primary::-moz-range-progress{background-color:var(--wave-primary)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-progress\]\:bg-\[Highlight\]::-moz-range-progress{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-moz-range-progress\]\:bg-\[GrayText\]:disabled::-moz-range-progress{background-color:graytext}}.\[\&\:\:-moz-range-thumb\]\:h-5::-moz-range-thumb{height:1.25rem}.\[\&\:\:-moz-range-thumb\]\:w-5::-moz-range-thumb{width:1.25rem}.\[\&\:\:-moz-range-thumb\]\:rounded-full::-moz-range-thumb{border-radius:3.40282e38px}.\[\&\:\:-moz-range-thumb\]\:border-2::-moz-range-thumb{border-style:var(--tw-border-style);border-width:2px}.\[\&\:\:-moz-range-thumb\]\:border-background::-moz-range-thumb{border-color:var(--wave-background)}.\[\&\:\:-moz-range-thumb\]\:bg-primary::-moz-range-thumb{background-color:var(--wave-primary)}.\[\&\:\:-moz-range-thumb\]\:shadow::-moz-range-thumb{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-thumb\]\:border-\[Canvas\]::-moz-range-thumb{border-color:canvas}.forced-colors\:\[\&\:\:-moz-range-thumb\]\:bg-\[Highlight\]::-moz-range-thumb{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-moz-range-thumb\]\:bg-\[GrayText\]:disabled::-moz-range-thumb{background-color:graytext}}.\[\&\:\:-moz-range-track\]\:h-1::-moz-range-track{height:.25rem}.\[\&\:\:-moz-range-track\]\:rounded-full::-moz-range-track{border-radius:3.40282e38px}.\[\&\:\:-moz-range-track\]\:bg-stroke-accessible::-moz-range-track{background-color:var(--wave-stroke-accessible)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-track\]\:bg-\[CanvasText\]::-moz-range-track{background-color:canvastext}.forced-colors\:disabled\:\[\&\:\:-moz-range-track\]\:bg-\[GrayText\]:disabled::-moz-range-track{background-color:graytext}}.\[\&\:\:-webkit-search-cancel-button\]\:hidden::-webkit-search-cancel-button{display:none}.\[\&\:\:-webkit-slider-runnable-track\]\:h-1::-webkit-slider-runnable-track{height:.25rem}.\[\&\:\:-webkit-slider-runnable-track\]\:rounded-full::-webkit-slider-runnable-track{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-runnable-track\]\:bg-stroke-accessible::-webkit-slider-runnable-track{background-color:var(--wave-stroke-accessible)}.\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_right\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]::-webkit-slider-runnable-track{background-image:linear-gradient(to right,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}@media (forced-colors:active){.forced-colors\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[CanvasText\]::-webkit-slider-runnable-track{background-color:canvastext}.forced-colors\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_right\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]::-webkit-slider-runnable-track{background-image:linear-gradient(to right,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[GrayText\]:disabled::-webkit-slider-runnable-track{background-color:graytext}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-none:disabled::-webkit-slider-runnable-track{background-image:none}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]:where(:nth-child(n of :dir(rtl)))::-webkit-slider-runnable-track{background-image:linear-gradient(to left,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]:where([dir=rtl],[dir=rtl] *)::-webkit-slider-runnable-track{background-image:linear-gradient(to left,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}}@media (forced-colors:active){@supports selector(:nth-child(n of :dir(rtl))){.forced-colors\:wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]:where(:nth-child(n of :dir(rtl)))::-webkit-slider-runnable-track{background-image:linear-gradient(to left,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}}@supports not selector(:nth-child(n of :dir(rtl))){.forced-colors\:wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]:where([dir=rtl],[dir=rtl] *)::-webkit-slider-runnable-track{background-image:linear-gradient(to left,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}}}.\[\&\:\:-webkit-slider-thumb\]\:-mt-2::-webkit-slider-thumb{margin-top:-.5rem}.\[\&\:\:-webkit-slider-thumb\]\:h-5::-webkit-slider-thumb{height:1.25rem}.\[\&\:\:-webkit-slider-thumb\]\:w-5::-webkit-slider-thumb{width:1.25rem}.\[\&\:\:-webkit-slider-thumb\]\:appearance-none::-webkit-slider-thumb{appearance:none}.\[\&\:\:-webkit-slider-thumb\]\:rounded-full::-webkit-slider-thumb{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-thumb\]\:border-2::-webkit-slider-thumb{border-style:var(--tw-border-style);border-width:2px}.\[\&\:\:-webkit-slider-thumb\]\:border-background::-webkit-slider-thumb{border-color:var(--wave-background)}.\[\&\:\:-webkit-slider-thumb\]\:bg-primary::-webkit-slider-thumb{background-color:var(--wave-primary)}.\[\&\:\:-webkit-slider-thumb\]\:shadow::-webkit-slider-thumb{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-webkit-slider-thumb\]\:border-\[Canvas\]::-webkit-slider-thumb{border-color:canvas}.forced-colors\:\[\&\:\:-webkit-slider-thumb\]\:bg-\[Highlight\]::-webkit-slider-thumb{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-thumb\]\:bg-\[GrayText\]:disabled::-webkit-slider-thumb{background-color:graytext}}.\[\&\:focus-visible\>\[data-tree-row\]\]\:outline-2:focus-visible>[data-tree-row]{outline-style:var(--tw-outline-style);outline-width:2px}.\[\&\:focus-visible\>\[data-tree-row\]\]\:-outline-offset-2:focus-visible>[data-tree-row]{outline-offset:calc(2px * -1)}.\[\&\:focus-visible\>\[data-tree-row\]\]\:outline-ring:focus-visible>[data-tree-row]{outline-color:var(--wave-ring)}.\[\&\>\:first-child\]\:flex-1>:first-child{flex:1}.\[\&\>\:first-child\:has\(\[role\=checkbox\]\,\[role\=switch\]\,label\>\[role\=radio\]\)\]\:py-1\.5>:first-child:has([role=checkbox],[role=switch],label>[role=radio]){padding-block:.375rem}.\[\&\>\:last-child\]\:border-s>:last-child{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.\[\&\>\:last-child\]\:border-border>:last-child{border-color:var(--wave-border)}.\[\&\>svg\]\:size-full>svg{width:100%;height:100%}:where(.\[\:where\(\&\>tbody\>tr\:nth-child\(odd\)\)\]\:bg-card>tbody>tr:nth-child(odd)){background-color:var(--wave-card)}@property --tw-border-spacing-x{syntax:"<length>";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"<length>";inherits:false;initial-value:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@keyframes wave-spin{to{transform:rotate(360deg)}}@keyframes wave-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes wave-indeterminate{0%{transform:translate(-100%)}to{transform:translate(350%)}}@keyframes wave-indeterminate-rtl{0%{transform:translate(100%)}to{transform:translate(-350%)}}
2
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-ease:initial;--tw-outline-style:solid;--tw-content:""}}}:root{--wave-font-family:"Segoe UI", "Segoe UI Web (West European)", -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", sans-serif;--wave-z-overlay:1000;--wave-z-toast:1100;--wave-z-tooltip:1200;--wave-duration-ultra-fast:50ms;--wave-duration-faster:.1s;--wave-duration-fast:.15s;--wave-duration-normal:.2s;--wave-duration-gentle:.25s;--wave-duration-slow:.3s;--wave-duration-slower:.4s;--wave-duration-ultra-slow:.5s;--wave-curve-accelerate-max:cubic-bezier(.9, .1, 1, .2);--wave-curve-accelerate-mid:cubic-bezier(1, 0, 1, 1);--wave-curve-accelerate-min:cubic-bezier(.8, 0, .78, 1);--wave-curve-decelerate-max:cubic-bezier(.1, .9, .2, 1);--wave-curve-decelerate-mid:cubic-bezier(0, 0, 0, 1);--wave-curve-decelerate-min:cubic-bezier(.33, 0, .1, 1);--wave-curve-easy-ease-max:cubic-bezier(.8, 0, .2, 1);--wave-curve-easy-ease:cubic-bezier(.33, 0, .67, 1);--wave-curve-linear:cubic-bezier(0, 0, 1, 1);--wave-brand-10:var(--brand-10,#061724);--wave-brand-20:var(--brand-20,#082338);--wave-brand-30:var(--brand-30,#0a2e4a);--wave-brand-40:var(--brand-40,#0c3b5e);--wave-brand-50:var(--brand-50,#0e4775);--wave-brand-60:var(--brand-60,#0f548c);--wave-brand-70:var(--brand-70,#115ea3);--wave-brand-80:var(--brand-80,#0f6cbd);--wave-brand-90:var(--brand-90,#2886de);--wave-brand-100:var(--brand-100,#479ef5);--wave-brand-110:var(--brand-110,#62abf5);--wave-brand-120:var(--brand-120,#77b7f7);--wave-brand-130:var(--brand-130,#96c6fa);--wave-brand-140:var(--brand-140,#b4d6fa);--wave-brand-150:var(--brand-150,#cfe4fa);--wave-brand-160:var(--brand-160,#ebf3fc);--wave-grey-2:var(--grey-2,#050505);--wave-grey-4:var(--grey-4,#0a0a0a);--wave-grey-6:var(--grey-6,#0f0f0f);--wave-grey-8:var(--grey-8,#141414);--wave-grey-10:var(--grey-10,#1a1a1a);--wave-grey-12:var(--grey-12,#1f1f1f);--wave-grey-14:var(--grey-14,#242424);--wave-grey-16:var(--grey-16,#292929);--wave-grey-20:var(--grey-20,#333);--wave-grey-24:var(--grey-24,#3d3d3d);--wave-grey-26:var(--grey-26,#424242);--wave-grey-30:var(--grey-30,#4d4d4d);--wave-grey-34:var(--grey-34,#575757);--wave-grey-38:var(--grey-38,#616161);--wave-grey-40:var(--grey-40,#666);--wave-grey-44:var(--grey-44,#707070);--wave-grey-50:var(--grey-50,gray);--wave-grey-60:var(--grey-60,#999);--wave-grey-68:var(--grey-68,#adadad);--wave-grey-74:var(--grey-74,#bdbdbd);--wave-grey-78:var(--grey-78,#c7c7c7);--wave-grey-82:var(--grey-82,#d1d1d1);--wave-grey-86:var(--grey-86,#dbdbdb);--wave-grey-88:var(--grey-88,#e0e0e0);--wave-grey-90:var(--grey-90,#e6e6e6);--wave-grey-92:var(--grey-92,#ebebeb);--wave-grey-94:var(--grey-94,#f0f0f0);--wave-grey-96:var(--grey-96,#f5f5f5);--wave-grey-98:var(--grey-98,#fafafa)}:root,.wave-light{--wave-background:#fff;--wave-foreground:#242424;--wave-card:#fafafa;--wave-secondary:#f5f5f5;--wave-muted:#f0f0f0;--wave-muted-foreground:#616161;--wave-primary:var(--wave-brand-80);--wave-primary-foreground:#fff;--wave-primary-hover:var(--wave-brand-70);--wave-primary-pressed:var(--wave-brand-40);--wave-destructive:#c50f1f;--wave-destructive-foreground:#fff;--wave-error:#c50f1f;--wave-error-foreground:#fff;--wave-subtle:transparent;--wave-subtle-hover:#f5f5f5;--wave-subtle-pressed:#ebebeb;--wave-subtle-selected:#ebebeb;--wave-selected:var(--wave-brand-160);--wave-selected-foreground:var(--wave-brand-60);--wave-border:#e0e0e0;--wave-stroke:#d1d1d1;--wave-stroke-hover:#c7c7c7;--wave-stroke-accessible:#616161;--wave-input:#d1d1d1;--wave-ring:var(--wave-brand-80);--wave-success:#107c10;--wave-success-foreground:#fff;--wave-success-tint:#f1faf1;--wave-success-tint-foreground:#0e700e;--wave-warning:#fde300;--wave-warning-foreground:#242424;--wave-warning-tint:#fffbe6;--wave-warning-tint-foreground:#6d5b00;--wave-error-tint:#fdf3f4;--wave-error-tint-foreground:#b10e1c;--wave-severe:#da3b01;--wave-severe-foreground:#fff;--wave-severe-tint:#fdf6f3;--wave-severe-tint-foreground:#a52c00;--wave-info:#0f6cbd;--wave-info-foreground:#fff;--wave-info-tint:#ebf3fc;--wave-info-tint-foreground:#0f548c;--wave-inverted:#292929;--wave-inverted-foreground:#fff;--wave-inverted-border:transparent;--wave-track:#e0e0e0;--wave-skeleton:#e0e0e0;--wave-rating:#b86e00;--wave-presence-available:#107c10;--wave-presence-busy:#c50f1f;--wave-presence-away:#a67c00;--wave-presence-offline:#616161;--wave-presence-oof:#b4009e;--wave-presence-glyph:#fff;--wave-backdrop:#0006;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-dark,.dark{--wave-background:#292929;--wave-foreground:#fff;--wave-card:#333;--wave-secondary:#333;--wave-muted:#383838;--wave-muted-foreground:#adadad;--wave-primary:var(--wave-brand-110);--wave-primary-foreground:#000;--wave-primary-hover:var(--wave-brand-120);--wave-primary-pressed:var(--wave-brand-90);--wave-destructive:#f48a94;--wave-destructive-foreground:#000;--wave-error:#f48a94;--wave-error-foreground:#000;--wave-subtle:transparent;--wave-subtle-hover:#333;--wave-subtle-pressed:#2e2e2e;--wave-subtle-selected:#383838;--wave-selected:var(--wave-brand-20);--wave-selected-foreground:var(--wave-brand-110);--wave-border:#666;--wave-stroke:#666;--wave-stroke-hover:#757575;--wave-stroke-accessible:#adadad;--wave-input:#666;--wave-ring:var(--wave-brand-100);--wave-success:#5db55d;--wave-success-foreground:#000;--wave-success-tint:#052505;--wave-success-tint-foreground:#54b054;--wave-warning:#fde300;--wave-warning-foreground:#000;--wave-warning-tint:#463100;--wave-warning-tint-foreground:#fde300;--wave-error-tint:#3b0509;--wave-error-tint-foreground:#f48a94;--wave-severe:#e97548;--wave-severe-foreground:#000;--wave-severe-tint:#411200;--wave-severe-tint-foreground:#e97548;--wave-info:#479ef5;--wave-info-foreground:#000;--wave-info-tint:#082338;--wave-info-tint-foreground:#62abf5;--wave-inverted:#fff;--wave-inverted-foreground:#242424;--wave-inverted-border:transparent;--wave-track:#3d3d3d;--wave-skeleton:#3d3d3d;--wave-rating:#f7b538;--wave-presence-available:#54b054;--wave-presence-busy:#f48a94;--wave-presence-away:#f7b538;--wave-presence-offline:#adadad;--wave-presence-oof:#d696c8;--wave-presence-glyph:#000;--wave-backdrop:#00000080;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-high-contrast,.high-contrast{--wave-background:#000;--wave-foreground:#fff;--wave-card:#000;--wave-secondary:#000;--wave-muted:#1a1a1a;--wave-muted-foreground:#fff;--wave-primary:#1aebff;--wave-primary-foreground:#000;--wave-primary-hover:#6ef3ff;--wave-primary-pressed:#00c4d6;--wave-destructive:#ff6e6e;--wave-destructive-foreground:#000;--wave-error:#ff6e6e;--wave-error-foreground:#000;--wave-subtle:transparent;--wave-subtle-hover:#1f1f1f;--wave-subtle-pressed:#333;--wave-subtle-selected:#333;--wave-selected:#003a40;--wave-selected-foreground:#fff;--wave-border:#fff;--wave-stroke:#fff;--wave-stroke-hover:#fff;--wave-stroke-accessible:#fff;--wave-input:#fff;--wave-ring:#ff0;--wave-success:#3ff23f;--wave-success-foreground:#000;--wave-success-tint:#000;--wave-success-tint-foreground:#3ff23f;--wave-warning:#ff0;--wave-warning-foreground:#000;--wave-warning-tint:#000;--wave-warning-tint-foreground:#ff0;--wave-error-tint:#000;--wave-error-tint-foreground:#ff6060;--wave-severe:#ff8c00;--wave-severe-foreground:#000;--wave-severe-tint:#000;--wave-severe-tint-foreground:#ff8c00;--wave-info:#1aebff;--wave-info-foreground:#000;--wave-info-tint:#000;--wave-info-tint-foreground:#1aebff;--wave-inverted:#000;--wave-inverted-foreground:#fff;--wave-inverted-border:#fff;--wave-track:#4d4d4d;--wave-skeleton:#333;--wave-rating:#ff0;--wave-presence-available:#3ff23f;--wave-presence-busy:#ff6060;--wave-presence-away:#ff0;--wave-presence-offline:#fff;--wave-presence-oof:#ff80ff;--wave-presence-glyph:#000;--wave-backdrop:#000c;--wave-card-foreground:var(--wave-foreground);--wave-secondary-foreground:var(--wave-foreground);--wave-accent:var(--wave-primary);--wave-accent-foreground:var(--wave-primary-foreground)}.wave-light{color-scheme:light}.wave-dark,.wave-high-contrast{color-scheme:dark}.wave-root,.wave-portal{font-family:var(--wave-font-family);color:var(--wave-foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:20px}.wave-root{background-color:var(--wave-background)}:where(.wave-root,.wave-portal) :where(*),:where(.wave-root,.wave-portal) :where(*):before,:where(.wave-root,.wave-portal) :where(*):after{box-sizing:border-box;border-color:var(--wave-border)}:where(.wave-root,.wave-portal) :where(button,input,select,textarea){font:inherit;color:inherit;letter-spacing:inherit;background-color:#0000;border:0 solid;margin:0;padding:0}:where(.wave-root,.wave-portal) :where(button,[role=button]){cursor:pointer}:where(.wave-root,.wave-portal) :where(ul,ol){margin:0;padding:0;list-style:none}:where(.wave-root,.wave-portal) :where(h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd){margin:0}:where(.wave-root,.wave-portal) :where(h1,h2,h3,h4,h5,h6){font-size:inherit;font-weight:inherit}:where(.wave-root,.wave-portal) :where(fieldset){border:0;min-width:0;margin:0;padding:0}:where(.wave-root,.wave-portal) :where(legend){padding:0}:where(.wave-root,.wave-portal) :where(table){border-collapse:collapse;text-indent:0}:where(.wave-root,.wave-portal) :where(hr){height:0;color:inherit;border:0 solid;border-top-width:1px;margin:0}:where(.wave-root,.wave-portal) :where(img,svg,video){vertical-align:middle}:where(.wave-root,.wave-portal) :where([hidden]:not([hidden=until-found])){display:none!important}.\[container-type\:size\]{container-type:size}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-x-3{inset-inline:.75rem}.inset-y-0{inset-block:0}.inset-y-3{inset-block:.75rem}.start-\(--wave-color-area-x\){inset-inline-start:var(--wave-color-area-x)}.start-\(--wave-color-slider-position\){inset-inline-start:var(--wave-color-slider-position)}.start-0{inset-inline-start:0}.start-1\/2{inset-inline-start:50%}.start-2{inset-inline-start:.5rem}.start-4{inset-inline-start:1rem}.-end-1{inset-inline-end:-.25rem}.end-0{inset-inline-end:0}.end-1{inset-inline-end:.25rem}.end-2{inset-inline-end:.5rem}.end-3{inset-inline-end:.75rem}.end-4{inset-inline-end:1rem}.end-7{inset-inline-end:1.75rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-4{top:1rem}.right-0{right:0}.right-4{right:1rem}.-bottom-1{bottom:-.25rem}.bottom-\(--wave-color-area-y\){bottom:var(--wave-color-area-y)}.bottom-\(--wave-color-slider-position\){bottom:var(--wave-color-slider-position)}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.bottom-4{bottom:1rem}.left-0{left:0}.left-4{left:1rem}.isolate{isolation:isolate}.z-10{z-index:10}.col-start-1{grid-column-start:1}.row-start-1{grid-row-start:1}.m-0{margin:0}.m-4{margin:1rem}.-mx-1{margin-inline:-.25rem}.mx-1{margin-inline:.25rem}.mx-2{margin-inline:.5rem}.mx-3{margin-inline:.75rem}.mx-auto{margin-inline:auto}.my-1{margin-block:.25rem}.my-3{margin-block:.75rem}.-ms-2{margin-inline-start:-.5rem}.ms-\(--wave-toaster-offset\){margin-inline-start:var(--wave-toaster-offset)}.ms-0\.5{margin-inline-start:.125rem}.ms-1{margin-inline-start:.25rem}.ms-2{margin-inline-start:.5rem}.ms-3\.75{margin-inline-start:.9375rem}.ms-4{margin-inline-start:1rem}.ms-auto{margin-inline-start:auto}.me-\(--wave-toaster-offset\){margin-inline-end:var(--wave-toaster-offset)}.me-1{margin-inline-end:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-6{margin-top:1.5rem}.mt-px{margin-top:1px}.mr-\(--wave-toaster-offset\){margin-right:var(--wave-toaster-offset)}.-mb-1{margin-bottom:-.25rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-\(--wave-toaster-offset\){margin-left:var(--wave-toaster-offset)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.size-2{width:.5rem;height:.5rem}.size-2\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-6{width:1.5rem;height:1.5rem}.size-8{width:2rem;height:2rem}.size-10{width:2.5rem;height:2.5rem}.size-full{width:100%;height:100%}.h-0{height:0}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-40{height:10rem}.h-\[10px\]{height:10px}.h-\[14px\]{height:14px}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[20px\]{height:20px}.h-auto{height:auto}.h-full{height:100%}.max-h-\(--wave-popup-available-height\){max-height:var(--wave-popup-available-height)}.max-h-60{max-height:15rem}.max-h-\[calc\(100dvh-2rem\)\]{max-height:calc(100dvh - 2rem)}.min-h-0{min-height:0}.min-h-2{min-height:.5rem}.min-h-6{min-height:1.5rem}.min-h-12{min-height:3rem}.min-h-20{min-height:5rem}.w-0{width:0}.w-0\.5{width:.125rem}.w-1\.5{width:.375rem}.w-2{width:.5rem}.w-2\/5{width:40%}.w-3{width:.75rem}.w-4{width:1rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-24{width:6rem}.w-40{width:10rem}.w-60{width:15rem}.w-64{width:16rem}.w-80{width:20rem}.w-\[10px\]{width:10px}.w-\[14px\]{width:14px}.w-\[18px\]{width:18px}.w-\[32px\]{width:32px}.w-\[40px\]{width:40px}.w-\[100cqh\]{width:100cqh}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.max-w-\(--wave-popup-available-width\){max-width:var(--wave-popup-available-width)}.max-w-60{max-width:15rem}.max-w-\[400px\]{max-width:400px}.max-w-\[600px\]{max-width:600px}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-xs{max-width:20rem}.min-w-0{min-width:0}.min-w-2{min-width:.5rem}.min-w-5{min-width:1.25rem}.min-w-6{min-width:1.5rem}.min-w-15{min-width:3.75rem}.min-w-24{min-width:6rem}.min-w-32{min-width:8rem}.min-w-40{min-width:10rem}.min-w-\[180px\]{min-width:180px}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.basis-1\/3{flex-basis:33.3333%}.border-collapse{border-collapse:collapse}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[2px\]{--tw-translate-x:2px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[18px\]{--tw-translate-x:18px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\[22px\]{--tw-translate-x:22px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-1\/2{--tw-translate-y:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}.-scale-x-100{--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}.-rotate-90{rotate:-90deg}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.animate-wave-indeterminate{animation:1.5s ease-in-out infinite wave-indeterminate}.animate-wave-indeterminate-rtl{animation:1.5s ease-in-out infinite wave-indeterminate-rtl}.animate-wave-pulse{animation:1.5s ease-in-out infinite wave-pulse}.animate-wave-spin{animation:.8s linear infinite wave-spin}.animate-wave-spin-slow{animation:2.4s linear infinite wave-spin}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize-y{resize:vertical}.scroll-pb-\(--wave-dialog-footer-height\){scroll-padding-bottom:var(--wave-dialog-footer-height)}.list-none{list-style-type:none}.\[appearance\:textfield\]{appearance:textfield}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.flex-wrap-reverse{flex-wrap:wrap-reverse}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-around{justify-content:space-around}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-evenly{justify-content:space-evenly}.justify-start{justify-content:flex-start}.justify-items-center{justify-items:center}.justify-items-end{justify-items:end}.justify-items-start{justify-items:start}.justify-items-stretch{justify-items:stretch}.gap-0{gap:0}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-\[inherit\]{gap:inherit}.gap-x-0{column-gap:0}.gap-x-1{column-gap:.25rem}.gap-x-2{column-gap:.5rem}.gap-x-3{column-gap:.75rem}.gap-x-4{column-gap:1rem}.gap-x-6{column-gap:1.5rem}.gap-y-0{row-gap:0}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.gap-y-6{row-gap:1.5rem}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-border>:not(:last-child)){border-color:var(--wave-border)}.self-stretch{align-self:stretch}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-none{border-radius:0}.rounded-sm{border-radius:.25rem}.rounded-xs{border-radius:.125rem}.rounded-s-none{border-start-start-radius:0;border-end-start-radius:0}.rounded-e-none{border-start-end-radius:0;border-end-end-radius:0}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-s{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.border-s-2{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.border-s-4{border-inline-start-style:var(--tw-border-style);border-inline-start-width:4px}.border-e{border-inline-end-style:var(--tw-border-style);border-inline-end-width:1px}.border-e-0{border-inline-end-style:var(--tw-border-style);border-inline-end-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-solid{--tw-border-style:solid;border-style:solid}.border-background{border-color:var(--wave-background)}.border-border{border-color:var(--wave-border)}.border-current\/30{border-color:currentColor}@supports (color:color-mix(in lab, red, red)){.border-current\/30{border-color:color-mix(in oklab, currentcolor 30%, transparent)}}.border-destructive{border-color:var(--wave-destructive)}.border-error{border-color:var(--wave-error)}.border-inherit{border-color:inherit}.border-input{border-color:var(--wave-input)}.border-inverted-border{border-color:var(--wave-inverted-border)}.border-muted-foreground{border-color:var(--wave-muted-foreground)}.border-primary{border-color:var(--wave-primary)}.border-severe{border-color:var(--wave-severe)}.border-stroke{border-color:var(--wave-stroke)}.border-stroke-accessible{border-color:var(--wave-stroke-accessible)}.border-success{border-color:var(--wave-success)}.border-track{border-color:var(--wave-track)}.border-transparent{border-color:#0000}.border-warning{border-color:var(--wave-warning)}.border-warning-tint-foreground{border-color:var(--wave-warning-tint-foreground)}.border-s-error{border-inline-start-color:var(--wave-error)}.border-s-info{border-inline-start-color:var(--wave-info)}.border-s-primary{border-inline-start-color:var(--wave-primary)}.border-s-primary-foreground\/30{border-inline-start-color:var(--wave-primary-foreground)}@supports (color:color-mix(in lab, red, red)){.border-s-primary-foreground\/30{border-inline-start-color:color-mix(in oklab, var(--wave-primary-foreground) 30%, transparent)}}.border-s-stroke{border-inline-start-color:var(--wave-stroke)}.border-s-success{border-inline-start-color:var(--wave-success)}.border-s-warning{border-inline-start-color:var(--wave-warning)}.border-t-current{border-top-color:currentColor}.border-t-primary{border-top-color:var(--wave-primary)}.border-b-primary{border-bottom-color:var(--wave-primary)}.border-b-stroke-accessible{border-bottom-color:var(--wave-stroke-accessible)}.bg-\(--option-bg\){background-color:var(--option-bg)}.bg-\(--wave-color-thumb\){background-color:var(--wave-color-thumb)}.bg-backdrop{background-color:var(--wave-backdrop)}.bg-background{background-color:var(--wave-background)}.bg-border{background-color:var(--wave-border)}.bg-card{background-color:var(--wave-card)}.bg-destructive{background-color:var(--wave-destructive)}.bg-error{background-color:var(--wave-error)}.bg-error-tint{background-color:var(--wave-error-tint)}.bg-info-tint{background-color:var(--wave-info-tint)}.bg-inherit{background-color:inherit}.bg-inverted{background-color:var(--wave-inverted)}.bg-muted{background-color:var(--wave-muted)}.bg-muted-foreground{background-color:var(--wave-muted-foreground)}.bg-presence-available{background-color:var(--wave-presence-available)}.bg-presence-away{background-color:var(--wave-presence-away)}.bg-presence-busy{background-color:var(--wave-presence-busy)}.bg-presence-oof{background-color:var(--wave-presence-oof)}.bg-primary{background-color:var(--wave-primary)}.bg-primary-foreground{background-color:var(--wave-primary-foreground)}.bg-primary-pressed{background-color:var(--wave-primary-pressed)}.bg-selected{background-color:var(--wave-selected)}.bg-severe{background-color:var(--wave-severe)}.bg-severe-tint{background-color:var(--wave-severe-tint)}.bg-skeleton{background-color:var(--wave-skeleton)}.bg-stroke-accessible{background-color:var(--wave-stroke-accessible)}.bg-subtle-selected{background-color:var(--wave-subtle-selected)}.bg-success{background-color:var(--wave-success)}.bg-success-tint{background-color:var(--wave-success-tint)}.bg-track{background-color:var(--wave-track)}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--wave-warning)}.bg-warning-tint{background-color:var(--wave-warning-tint)}.bg-warning-tint-foreground{background-color:var(--wave-warning-tint-foreground)}.bg-\(image\:--wave-color-area-gradient\){background-image:var(--wave-color-area-gradient)}.bg-\(image\:--wave-color-slider-gradient\){background-image:var(--wave-color-slider-gradient)}.bg-\[conic-gradient\(var\(--wave-stroke\)_25\%\,var\(--wave-background\)_0_50\%\,var\(--wave-stroke\)_0_75\%\,var\(--wave-background\)_0\)\]{background-image:conic-gradient(var(--wave-stroke) 25%,var(--wave-background) 0 50%,var(--wave-stroke) 0 75%,var(--wave-background) 0)}.bg-\[image\:linear-gradient\(45deg\,transparent_50\%\,var\(--wave-muted-foreground\)_50\%\)\,linear-gradient\(135deg\,var\(--wave-muted-foreground\)_50\%\,transparent_50\%\)\]{background-image:linear-gradient(45deg,transparent 50%,var(--wave-muted-foreground) 50%),linear-gradient(135deg,var(--wave-muted-foreground) 50%,transparent 50%)}.bg-\[size\:5px_5px\,5px_5px\]{background-size:5px 5px,5px 5px}.bg-size-\[8px_8px\]{background-size:8px 8px}.bg-\[position\:right_16px_center\,right_11px_center\]{background-position:right 16px center,right 11px center}.bg-no-repeat{background-repeat:no-repeat}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-none{object-fit:none}.object-center{object-position:center}.object-left-top{object-position:left top}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0{padding-inline:0}.px-1{padding-inline:.25rem}.px-1\.5{padding-inline:.375rem}.px-2{padding-inline:.5rem}.px-2\.5{padding-inline:.625rem}.px-3{padding-inline:.75rem}.px-4{padding-inline:1rem}.px-5{padding-inline:1.25rem}.py-0{padding-block:0}.py-0\.5{padding-block:.125rem}.py-1{padding-block:.25rem}.py-1\.5{padding-block:.375rem}.py-2{padding-block:.5rem}.py-3{padding-block:.75rem}.py-4{padding-block:1rem}.ps-1{padding-inline-start:.25rem}.ps-2{padding-inline-start:.5rem}.ps-3{padding-inline-start:.75rem}.ps-4{padding-inline-start:1rem}.ps-11{padding-inline-start:2.75rem}.pe-1\.5{padding-inline-end:.375rem}.pe-2{padding-inline-end:.5rem}.pe-3{padding-inline-end:.75rem}.pe-4{padding-inline-end:1rem}.pe-8{padding-inline-end:2rem}.pe-10{padding-inline-end:2.5rem}.pe-14{padding-inline-end:3.5rem}.pt-0{padding-top:0}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.text-center{text-align:center}.text-end{text-align:end}.text-start{text-align:start}.align-middle{vertical-align:middle}.font-wave{font-family:var(--wave-font-family)}.text-display{font-size:68px;line-height:var(--tw-leading,92px);font-weight:var(--tw-font-weight,600)}.text-large-title{font-size:40px;line-height:var(--tw-leading,52px);font-weight:var(--tw-font-weight,600)}.text-subtitle-1{font-size:20px;line-height:var(--tw-leading,28px);font-weight:var(--tw-font-weight,600)}.text-subtitle-2{font-size:16px;line-height:var(--tw-leading,22px);font-weight:var(--tw-font-weight,600)}.text-title-1{font-size:32px;line-height:var(--tw-leading,40px);font-weight:var(--tw-font-weight,600)}.text-title-2{font-size:28px;line-height:var(--tw-leading,36px);font-weight:var(--tw-font-weight,600)}.text-title-3{font-size:24px;line-height:var(--tw-leading,32px);font-weight:var(--tw-font-weight,600)}.text-\[18px\]\/\[24px\]{font-size:18px;line-height:24px}.text-base{font-size:1rem;line-height:var(--tw-leading,calc(1.5 / 1))}.text-body-1{font-size:14px;line-height:var(--tw-leading,20px)}.text-body-2{font-size:16px;line-height:var(--tw-leading,22px)}.text-caption-1{font-size:12px;line-height:var(--tw-leading,16px)}.text-caption-2{font-size:10px;line-height:var(--tw-leading,14px)}.text-lg{font-size:1.125rem;line-height:var(--tw-leading,calc(1.75 / 1.125))}.text-sm{font-size:.875rem;line-height:var(--tw-leading,calc(1.25 / .875))}.text-xs{font-size:.75rem;line-height:var(--tw-leading,calc(1 / .75))}.text-\[10px\]{font-size:10px}.leading-\[14px\]{--tw-leading:14px;line-height:14px}.font-bold{--tw-font-weight:700;font-weight:700}.font-normal{--tw-font-weight:400;font-weight:400}.font-semibold{--tw-font-weight:600;font-weight:600}.tracking-normal{--tw-tracking:0em;letter-spacing:0}.tracking-wider{--tw-tracking:.05em;letter-spacing:.05em}.break-words{overflow-wrap:break-word}.whitespace-normal{white-space:normal}.whitespace-nowrap{white-space:nowrap}.text-current{color:currentColor}.text-destructive-foreground{color:var(--wave-destructive-foreground)}.text-error{color:var(--wave-error)}.text-error-tint-foreground{color:var(--wave-error-tint-foreground)}.text-foreground{color:var(--wave-foreground)}.text-info-tint-foreground{color:var(--wave-info-tint-foreground)}.text-inherit{color:inherit}.text-inverted-foreground{color:var(--wave-inverted-foreground)}.text-muted-foreground{color:var(--wave-muted-foreground)}.text-presence-busy{color:var(--wave-presence-busy)}.text-presence-glyph{color:var(--wave-presence-glyph)}.text-presence-offline{color:var(--wave-presence-offline)}.text-primary{color:var(--wave-primary)}.text-primary-foreground{color:var(--wave-primary-foreground)}.text-rating{color:var(--wave-rating)}.text-selected-foreground{color:var(--wave-selected-foreground)}.text-severe-foreground{color:var(--wave-severe-foreground)}.text-severe-tint-foreground{color:var(--wave-severe-tint-foreground)}.text-stroke-accessible{color:var(--wave-stroke-accessible)}.text-success{color:var(--wave-success)}.text-success-foreground{color:var(--wave-success-foreground)}.text-success-tint-foreground{color:var(--wave-success-tint-foreground)}.text-warning-foreground{color:var(--wave-warning-foreground)}.text-warning-tint-foreground{color:var(--wave-warning-tint-foreground)}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.accent-primary{accent-color:var(--wave-primary)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.shadow-2{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 1px 2px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-4{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 2px 4px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-8{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 4px 8px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-16{--tw-shadow:0 0 2px var(--tw-shadow-color,#0000001f), 0 8px 16px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-64{--tw-shadow:0 0 8px var(--tw-shadow-color,#0000001f), 0 32px 64px var(--tw-shadow-color,#00000024);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.inset-ring-2{--tw-inset-ring-shadow:inset 0 0 0 2px var(--tw-inset-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-background{--tw-ring-color:var(--wave-background)}.ring-foreground{--tw-ring-color:var(--wave-foreground)}.ring-primary{--tw-ring-color:var(--wave-primary)}.inset-ring-primary-foreground{--tw-inset-ring-color:var(--wave-primary-foreground)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.ring-offset-background{--tw-ring-offset-color:var(--wave-background)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-\[width\,background-color\]{transition-property:width,background-color;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,cubic-bezier(.4, 0, .2, 1));transition-duration:var(--tw-duration,.15s)}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:cubic-bezier(.4, 0, .2, 1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--option-bg\:transparent\]{--option-bg:transparent}.\[font\:inherit\]{font:inherit}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:bg-foreground:is(:where(.group):hover *){background-color:var(--wave-foreground)}.group-hover\/row\:visible:is(:where(.group\/row):hover *){visibility:visible}}@media not all and (forced-colors:active){@media (hover:hover){.not-forced-colors\:group-hover\/row\:invisible:is(:where(.group\/row):hover *){visibility:hidden}}}.group-has-\[\:focus-visible\]\/alpha-slider\:ring-2:is(:where(.group\/alpha-slider):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\:focus-visible\]\/alpha-slider\:ring-background:is(:where(.group\/alpha-slider):has(:focus-visible) *){--tw-ring-color:var(--wave-background)}.group-has-\[\:focus-visible\]\/alpha-slider\:outline-2:is(:where(.group\/alpha-slider):has(:focus-visible) *){outline-style:var(--tw-outline-style);outline-width:2px}.group-has-\[\:focus-visible\]\/alpha-slider\:outline-offset-2:is(:where(.group\/alpha-slider):has(:focus-visible) *){outline-offset:2px}.group-has-\[\:focus-visible\]\/alpha-slider\:outline-ring:is(:where(.group\/alpha-slider):has(:focus-visible) *){outline-color:var(--wave-ring)}.group-has-\[\:focus-visible\]\/color-area\:ring-2:is(:where(.group\/color-area):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\:focus-visible\]\/color-area\:ring-background:is(:where(.group\/color-area):has(:focus-visible) *){--tw-ring-color:var(--wave-background)}.group-has-\[\:focus-visible\]\/color-area\:outline-2:is(:where(.group\/color-area):has(:focus-visible) *){outline-style:var(--tw-outline-style);outline-width:2px}.group-has-\[\:focus-visible\]\/color-area\:outline-offset-2:is(:where(.group\/color-area):has(:focus-visible) *){outline-offset:2px}.group-has-\[\:focus-visible\]\/color-area\:outline-ring:is(:where(.group\/color-area):has(:focus-visible) *){outline-color:var(--wave-ring)}.group-has-\[\:focus-visible\]\/color-slider\:ring-2:is(:where(.group\/color-slider):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\:focus-visible\]\/color-slider\:ring-background:is(:where(.group\/color-slider):has(:focus-visible) *){--tw-ring-color:var(--wave-background)}.group-has-\[\:focus-visible\]\/color-slider\:outline-2:is(:where(.group\/color-slider):has(:focus-visible) *){outline-style:var(--tw-outline-style);outline-width:2px}.group-has-\[\:focus-visible\]\/color-slider\:outline-offset-2:is(:where(.group\/color-slider):has(:focus-visible) *){outline-offset:2px}.group-has-\[\:focus-visible\]\/color-slider\:outline-ring:is(:where(.group\/color-slider):has(:focus-visible) *){outline-color:var(--wave-ring)}.group-has-\[\[data-menu-checkmark\]\]\/menu\:inline-flex:is(:where(.group\/menu):has([data-menu-checkmark]) *),.group-has-\[\[data-menu-icon\]\]\/menu\:inline-flex:is(:where(.group\/menu):has([data-menu-icon]) *){display:inline-flex}.placeholder\:text-muted-foreground::placeholder{color:var(--wave-muted-foreground)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:-inset-1:before{content:var(--tw-content);inset:-.25rem}.before\:inset-y-2:before{content:var(--tw-content);inset-block:.5rem}.before\:start-0:before{content:var(--tw-content);inset-inline-start:0}.before\:w-0\.5:before{content:var(--tw-content);width:.125rem}.before\:rounded-full:before{content:var(--tw-content);border-radius:3.40282e38px}.before\:bg-primary:before{content:var(--tw-content);background-color:var(--wave-primary)}.focus-within\:visible:focus-within{visibility:visible}.focus-within\:border-b-2:focus-within{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.focus-within\:border-b-destructive:focus-within{border-bottom-color:var(--wave-destructive)}.focus-within\:border-b-primary:focus-within{border-bottom-color:var(--wave-primary)}.focus-within\:outline-2:focus-within{outline-style:var(--tw-outline-style);outline-width:2px}.focus-within\:outline-offset-2:focus-within{outline-offset:2px}.focus-within\:outline-ring:focus-within{outline-color:var(--wave-ring)}@media (hover:hover){.hover\:border-stroke-hover:hover{border-color:var(--wave-stroke-hover)}.hover\:bg-subtle-hover:hover{background-color:var(--wave-subtle-hover)}.not-disabled\:not-aria-disabled\:hover\:border-primary:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-primary)}.not-disabled\:not-aria-disabled\:hover\:border-primary-hover:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-primary-hover)}.not-disabled\:not-aria-disabled\:hover\:border-stroke-hover:not(:disabled):not([aria-disabled=true]):hover{border-color:var(--wave-stroke-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-primary-hover:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-primary-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-primary-pressed:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-primary-pressed)}.not-disabled\:not-aria-disabled\:hover\:bg-selected:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-selected)}.not-disabled\:not-aria-disabled\:hover\:bg-subtle-hover:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-subtle-hover)}.not-disabled\:not-aria-disabled\:hover\:bg-subtle-pressed:not(:disabled):not([aria-disabled=true]):hover{background-color:var(--wave-subtle-pressed)}.not-disabled\:not-aria-disabled\:hover\:text-foreground:not(:disabled):not([aria-disabled=true]):hover{color:var(--wave-foreground)}.not-disabled\:not-aria-disabled\:hover\:underline:not(:disabled):not([aria-disabled=true]):hover{text-decoration-line:underline}.not-disabled\:not-aria-disabled\:hover\:decoration-2:not(:disabled):not([aria-disabled=true]):hover{text-decoration-thickness:2px}.not-disabled\:not-aria-disabled\:hover\:\[--option-bg\:var\(--wave-subtle-hover\)\]:not(:disabled):not([aria-disabled=true]):hover{--option-bg:var(--wave-subtle-hover)}}.focus\:border-b-2:focus{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.focus\:border-b-destructive:focus{border-bottom-color:var(--wave-destructive)}.focus\:border-b-primary:focus{border-bottom-color:var(--wave-primary)}.focus\:outline-hidden:focus{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.focus\:outline-hidden:focus{outline-offset:2px;outline:2px solid #0000}}.not-disabled\:not-aria-disabled\:focus\:bg-subtle-hover:not(:disabled):not([aria-disabled=true]):focus{background-color:var(--wave-subtle-hover)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:underline:focus-visible{text-decoration-line:underline}.focus-visible\:decoration-2:focus-visible{text-decoration-thickness:2px}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:-outline-offset-2:focus-visible{outline-offset:calc(2px * -1)}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-offset-4:focus-visible{outline-offset:4px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--wave-ring)}.not-disabled\:not-aria-disabled\:active\:bg-primary-pressed:not(:disabled):not([aria-disabled=true]):active{background-color:var(--wave-primary-pressed)}.not-disabled\:not-aria-disabled\:active\:bg-subtle-pressed:not(:disabled):not([aria-disabled=true]):active{background-color:var(--wave-subtle-pressed)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.has-focus-visible\:opacity-100:has(:focus-visible){opacity:1}.has-\[\[aria-expanded\=true\]\]\:visible:has([aria-expanded=true]){visibility:visible}.aria-disabled\:cursor-not-allowed[aria-disabled=true]{cursor:not-allowed}.aria-disabled\:text-muted-foreground[aria-disabled=true]{color:var(--wave-muted-foreground)}.aria-disabled\:line-through[aria-disabled=true]{text-decoration-line:line-through}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-disabled\:focus-visible\:opacity-100[aria-disabled=true]:focus-visible{opacity:1}.aria-expanded\:bg-subtle-hover[aria-expanded=true],.data-\[active\]\:bg-subtle-hover[data-active]{background-color:var(--wave-subtle-hover)}.data-\[active\]\:outline-2[data-active]{outline-style:var(--tw-outline-style);outline-width:2px}.data-\[active\]\:-outline-offset-2[data-active]{outline-offset:calc(2px * -1)}.data-\[active\]\:outline-ring[data-active]{outline-color:var(--wave-ring)}.data-\[active\]\:\[--option-bg\:var\(--wave-subtle-hover\)\][data-active]{--option-bg:var(--wave-subtle-hover)}.data-\[contains-current\]\:border-s-2[data-contains-current]{border-inline-start-style:var(--tw-border-style);border-inline-start-width:2px}.data-\[contains-current\]\:border-s-primary[data-contains-current]{border-inline-start-color:var(--wave-primary)}.data-\[contains-current\]\:bg-subtle-selected[data-contains-current]{background-color:var(--wave-subtle-selected)}.data-\[contains-current\]\:text-primary[data-contains-current]{color:var(--wave-primary)}.data-\[disabled\]\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[focus-in-popup\]\:visible[data-focus-in-popup]{visibility:visible}.data-\[outside\]\:text-muted-foreground[data-outside]{color:var(--wave-muted-foreground)}.data-\[overflow-pinned\]\:bg-background[data-overflow-pinned]{background-color:var(--wave-background)}.data-\[overflow-pinned\]\:pe-1[data-overflow-pinned]{padding-inline-end:.25rem}.data-\[selected\]\:bg-primary[data-selected]{background-color:var(--wave-primary)}.data-\[selected\]\:bg-selected[data-selected]{background-color:var(--wave-selected)}.data-\[selected\]\:bg-subtle-selected[data-selected]{background-color:var(--wave-subtle-selected)}.data-\[selected\]\:font-semibold[data-selected]{--tw-font-weight:600;font-weight:600}.data-\[selected\]\:text-primary-foreground[data-selected]{color:var(--wave-primary-foreground)}.data-\[selected\]\:\[--option-bg\:var\(--wave-subtle-selected\)\][data-selected]{--option-bg:var(--wave-subtle-selected)}@media (hover:hover){.not-disabled\:not-aria-disabled\:data-\[selected\]\:hover\:bg-primary-hover:not(:disabled):not([aria-disabled=true])[data-selected]:hover{background-color:var(--wave-primary-hover)}}.data-\[side\=bottom\]\:before\:inset-x-0[data-side=bottom]:before{content:var(--tw-content);inset-inline:0}.data-\[side\=bottom\]\:before\:bottom-full[data-side=bottom]:before{content:var(--tw-content);bottom:100%}.data-\[side\=bottom\]\:before\:h-2[data-side=bottom]:before{content:var(--tw-content);height:.5rem}.data-\[side\=left\]\:before\:inset-y-0[data-side=left]:before{content:var(--tw-content);inset-block:0}.data-\[side\=left\]\:before\:left-full[data-side=left]:before{content:var(--tw-content);left:100%}.data-\[side\=left\]\:before\:w-2[data-side=left]:before{content:var(--tw-content);width:.5rem}.data-\[side\=right\]\:before\:inset-y-0[data-side=right]:before{content:var(--tw-content);inset-block:0}.data-\[side\=right\]\:before\:right-full[data-side=right]:before{content:var(--tw-content);right:100%}.data-\[side\=right\]\:before\:w-2[data-side=right]:before{content:var(--tw-content);width:.5rem}.data-\[side\=top\]\:before\:inset-x-0[data-side=top]:before{content:var(--tw-content);inset-inline:0}.data-\[side\=top\]\:before\:top-full[data-side=top]:before{content:var(--tw-content);top:100%}.data-\[side\=top\]\:before\:h-2[data-side=top]:before{content:var(--tw-content);height:.5rem}.data-\[today\]\:border[data-today]{border-style:var(--tw-border-style);border-width:1px}.data-\[today\]\:border-primary[data-today]{border-color:var(--wave-primary)}.data-\[today\]\:font-semibold[data-today]{--tw-font-weight:600;font-weight:600}@media (prefers-reduced-motion:reduce){.motion-reduce\:w-full{width:100%}.motion-reduce\:translate-x-0{--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.motion-reduce\:animate-none{animation:none}.motion-reduce\:animate-wave-pulse{animation:1.5s ease-in-out infinite wave-pulse}.motion-reduce\:animate-wave-spin-slow{animation:2.4s linear infinite wave-spin}.motion-reduce\:transition-none{transition-property:none}}@media (forced-colors:active){.forced-colors\:visible{visibility:visible}.forced-colors\:flex{display:flex}.forced-colors\:appearance-auto{appearance:auto}.forced-colors\:border{border-style:var(--tw-border-style);border-width:1px}.forced-colors\:border-\[ButtonText\]{border-color:buttontext}.forced-colors\:border-\[CanvasText\]{border-color:canvastext}.forced-colors\:border-\[Canvas\]{border-color:canvas}.forced-colors\:border-\[GrayText\]{border-color:graytext}.forced-colors\:border-\[Highlight\]{border-color:highlight}.forced-colors\:border-t-\[Highlight\]{border-top-color:highlight}.forced-colors\:bg-\[ButtonText\]{background-color:buttontext}.forced-colors\:bg-\[CanvasText\]{background-color:canvastext}.forced-colors\:bg-\[Canvas\]{background-color:canvas}.forced-colors\:bg-\[GrayText\]{background-color:graytext}.forced-colors\:bg-\[HighlightText\]{background-color:highlighttext}.forced-colors\:bg-\[Highlight\]{background-color:highlight}.forced-colors\:bg-none{background-image:none}.forced-colors\:text-\[GrayText\]{color:graytext}.forced-colors\:text-\[HighlightText\]{color:highlighttext}.forced-colors\:ring-\[CanvasText\]{--tw-ring-color:CanvasText}.forced-colors\:outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.forced-colors\:-outline-offset-2{outline-offset:calc(2px * -1)}.forced-colors\:outline-\[GrayText\]{outline-color:graytext}.forced-colors\:outline-\[Highlight\]{outline-color:highlight}.forced-colors\:forced-color-adjust-none{forced-color-adjust:none}.forced-colors\:group-has-\[\:focus-visible\]\/alpha-slider\:ring-\[Canvas\]:is(:where(.group\/alpha-slider):has(:focus-visible) *){--tw-ring-color:Canvas}.forced-colors\:group-has-\[\:focus-visible\]\/alpha-slider\:outline-\[Highlight\]:is(:where(.group\/alpha-slider):has(:focus-visible) *){outline-color:highlight}.forced-colors\:group-has-\[\:focus-visible\]\/color-area\:ring-\[Canvas\]:is(:where(.group\/color-area):has(:focus-visible) *){--tw-ring-color:Canvas}.forced-colors\:group-has-\[\:focus-visible\]\/color-area\:outline-\[Highlight\]:is(:where(.group\/color-area):has(:focus-visible) *){outline-color:highlight}.forced-colors\:group-has-\[\:focus-visible\]\/color-slider\:ring-\[Canvas\]:is(:where(.group\/color-slider):has(:focus-visible) *){--tw-ring-color:Canvas}.forced-colors\:group-has-\[\:focus-visible\]\/color-slider\:outline-\[Highlight\]:is(:where(.group\/color-slider):has(:focus-visible) *),.forced-colors\:focus-visible\:outline-\[Highlight\]:focus-visible{outline-color:highlight}.forced-colors\:aria-expanded\:border-s-4[aria-expanded=true]{border-inline-start-style:var(--tw-border-style);border-inline-start-width:4px}.forced-colors\:aria-expanded\:border-\[Highlight\][aria-expanded=true]{border-color:highlight}.forced-colors\:aria-expanded\:ps-2[aria-expanded=true]{padding-inline-start:.5rem}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[2px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(2px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[2px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(2px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[18px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(18px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[18px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(18px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[22px\]:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(22px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-translate-x-\[22px\]:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(22px * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:translate-x-1\/2:where(:nth-child(n of :dir(rtl))){--tw-translate-x:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:translate-x-1\/2:where([dir=rtl],[dir=rtl] *){--tw-translate-x:calc(1 / 2 * 100%);translate:var(--tw-translate-x) var(--tw-translate-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-scale-x-100:where(:nth-child(n of :dir(rtl))){--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:-scale-x-100:where([dir=rtl],[dir=rtl] *){--tw-scale-x:calc(100% * -1);scale:var(--tw-scale-x) var(--tw-scale-y)}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:animate-wave-indeterminate-rtl:where(:nth-child(n of :dir(rtl))){animation:1.5s ease-in-out infinite wave-indeterminate-rtl}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:animate-wave-indeterminate-rtl:where([dir=rtl],[dir=rtl] *){animation:1.5s ease-in-out infinite wave-indeterminate-rtl}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:bg-\[position\:left_11px_center\,left_16px_center\]:where(:nth-child(n of :dir(rtl))){background-position:11px,16px}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:bg-\[position\:left_11px_center\,left_16px_center\]:where([dir=rtl],[dir=rtl] *){background-position:11px,16px}}@supports selector(:nth-child(n of :dir(rtl))){@media (prefers-reduced-motion:reduce){.wave-rtl\:motion-reduce\:animate-wave-pulse:where(:nth-child(n of :dir(rtl))){animation:1.5s ease-in-out infinite wave-pulse}}}@supports not selector(:nth-child(n of :dir(rtl))){@media (prefers-reduced-motion:reduce){.wave-rtl\:motion-reduce\:animate-wave-pulse:where([dir=rtl],[dir=rtl] *){animation:1.5s ease-in-out infinite wave-pulse}}}.\[\&\:\:-moz-range-progress\]\:h-1::-moz-range-progress{height:.25rem}.\[\&\:\:-moz-range-progress\]\:rounded-full::-moz-range-progress{border-radius:3.40282e38px}.\[\&\:\:-moz-range-progress\]\:bg-primary::-moz-range-progress{background-color:var(--wave-primary)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-progress\]\:bg-\[Highlight\]::-moz-range-progress{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-moz-range-progress\]\:bg-\[GrayText\]:disabled::-moz-range-progress{background-color:graytext}}.\[\&\:\:-moz-range-thumb\]\:size-6::-moz-range-thumb{width:1.5rem;height:1.5rem}.\[\&\:\:-moz-range-thumb\]\:h-5::-moz-range-thumb{height:1.25rem}.\[\&\:\:-moz-range-thumb\]\:w-5::-moz-range-thumb{width:1.25rem}.\[\&\:\:-moz-range-thumb\]\:rounded-full::-moz-range-thumb{border-radius:3.40282e38px}.\[\&\:\:-moz-range-thumb\]\:border-2::-moz-range-thumb{border-style:var(--tw-border-style);border-width:2px}.\[\&\:\:-moz-range-thumb\]\:border-background::-moz-range-thumb{border-color:var(--wave-background)}.\[\&\:\:-moz-range-thumb\]\:bg-primary::-moz-range-thumb{background-color:var(--wave-primary)}.\[\&\:\:-moz-range-thumb\]\:shadow::-moz-range-thumb{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-thumb\]\:border-\[Canvas\]::-moz-range-thumb{border-color:canvas}.forced-colors\:\[\&\:\:-moz-range-thumb\]\:bg-\[Highlight\]::-moz-range-thumb{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-moz-range-thumb\]\:bg-\[GrayText\]:disabled::-moz-range-thumb{background-color:graytext}}.\[\&\:\:-moz-range-track\]\:h-1::-moz-range-track{height:.25rem}.\[\&\:\:-moz-range-track\]\:rounded-full::-moz-range-track{border-radius:3.40282e38px}.\[\&\:\:-moz-range-track\]\:bg-stroke-accessible::-moz-range-track{background-color:var(--wave-stroke-accessible)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-moz-range-track\]\:bg-\[CanvasText\]::-moz-range-track{background-color:canvastext}.forced-colors\:disabled\:\[\&\:\:-moz-range-track\]\:bg-\[GrayText\]:disabled::-moz-range-track{background-color:graytext}}.\[\&\:\:-webkit-search-cancel-button\]\:hidden::-webkit-search-cancel-button{display:none}.\[\&\:\:-webkit-slider-runnable-track\]\:h-1::-webkit-slider-runnable-track{height:.25rem}.\[\&\:\:-webkit-slider-runnable-track\]\:rounded-full::-webkit-slider-runnable-track{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-runnable-track\]\:bg-stroke-accessible::-webkit-slider-runnable-track{background-color:var(--wave-stroke-accessible)}.\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_right\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]::-webkit-slider-runnable-track{background-image:linear-gradient(to right,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}@media (forced-colors:active){.forced-colors\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[CanvasText\]::-webkit-slider-runnable-track{background-color:canvastext}.forced-colors\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_right\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]::-webkit-slider-runnable-track{background-image:linear-gradient(to right,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[GrayText\]:disabled::-webkit-slider-runnable-track{background-color:graytext}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-none:disabled::-webkit-slider-runnable-track{background-image:none}}@supports selector(:nth-child(n of :dir(rtl))){.wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]:where(:nth-child(n of :dir(rtl)))::-webkit-slider-runnable-track{background-image:linear-gradient(to left,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}}@supports not selector(:nth-child(n of :dir(rtl))){.wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,var\(--wave-primary\)_var\(--wave-slider-progress\)\,var\(--wave-stroke-accessible\)_var\(--wave-slider-progress\)\)\]:where([dir=rtl],[dir=rtl] *)::-webkit-slider-runnable-track{background-image:linear-gradient(to left,var(--wave-primary) var(--wave-slider-progress),var(--wave-stroke-accessible) var(--wave-slider-progress))}}@media (forced-colors:active){@supports selector(:nth-child(n of :dir(rtl))){.forced-colors\:wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]:where(:nth-child(n of :dir(rtl)))::-webkit-slider-runnable-track{background-image:linear-gradient(to left,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}}@supports not selector(:nth-child(n of :dir(rtl))){.forced-colors\:wave-rtl\:\[\&\:\:-webkit-slider-runnable-track\]\:bg-\[linear-gradient\(to_left\,Highlight_var\(--wave-slider-progress\)\,CanvasText_var\(--wave-slider-progress\)\)\]:where([dir=rtl],[dir=rtl] *)::-webkit-slider-runnable-track{background-image:linear-gradient(to left,Highlight var(--wave-slider-progress),CanvasText var(--wave-slider-progress))}}}.\[\&\:\:-webkit-slider-thumb\]\:-mt-2::-webkit-slider-thumb{margin-top:-.5rem}.\[\&\:\:-webkit-slider-thumb\]\:size-6::-webkit-slider-thumb{width:1.5rem;height:1.5rem}.\[\&\:\:-webkit-slider-thumb\]\:h-5::-webkit-slider-thumb{height:1.25rem}.\[\&\:\:-webkit-slider-thumb\]\:w-5::-webkit-slider-thumb{width:1.25rem}.\[\&\:\:-webkit-slider-thumb\]\:appearance-none::-webkit-slider-thumb{appearance:none}.\[\&\:\:-webkit-slider-thumb\]\:rounded-full::-webkit-slider-thumb{border-radius:3.40282e38px}.\[\&\:\:-webkit-slider-thumb\]\:border-2::-webkit-slider-thumb{border-style:var(--tw-border-style);border-width:2px}.\[\&\:\:-webkit-slider-thumb\]\:border-background::-webkit-slider-thumb{border-color:var(--wave-background)}.\[\&\:\:-webkit-slider-thumb\]\:bg-primary::-webkit-slider-thumb{background-color:var(--wave-primary)}.\[\&\:\:-webkit-slider-thumb\]\:shadow::-webkit-slider-thumb{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (forced-colors:active){.forced-colors\:\[\&\:\:-webkit-slider-thumb\]\:border-\[Canvas\]::-webkit-slider-thumb{border-color:canvas}.forced-colors\:\[\&\:\:-webkit-slider-thumb\]\:bg-\[Highlight\]::-webkit-slider-thumb{background-color:highlight}.forced-colors\:disabled\:\[\&\:\:-webkit-slider-thumb\]\:bg-\[GrayText\]:disabled::-webkit-slider-thumb{background-color:graytext}}.\[\&\:focus-visible\>\[data-tree-row\]\]\:outline-2:focus-visible>[data-tree-row]{outline-style:var(--tw-outline-style);outline-width:2px}.\[\&\:focus-visible\>\[data-tree-row\]\]\:-outline-offset-2:focus-visible>[data-tree-row]{outline-offset:calc(2px * -1)}.\[\&\:focus-visible\>\[data-tree-row\]\]\:outline-ring:focus-visible>[data-tree-row]{outline-color:var(--wave-ring)}.\[\&\:focus-within\:not\(\:has\(\>\[role\=group\]_\:focus\)\)\>\[data-tree-row\]_\[data-tree-actions\]\]\:visible:focus-within:not(:has(>[role=group] :focus))>[data-tree-row] [data-tree-actions]{visibility:visible}.\[\&\>\*\]\:\[grid-area\:1\/1\]>*{grid-area:1/1}.\[\&\>\:first-child\]\:flex-1>:first-child{flex:1}.\[\&\>\:first-child\:has\(\[role\=checkbox\]\,\[role\=switch\]\,label\>\[role\=radio\]\)\]\:py-1\.5>:first-child:has([role=checkbox],[role=switch],label>[role=radio]){padding-block:.375rem}.\[\&\>\:last-child\]\:border-s>:last-child{border-inline-start-style:var(--tw-border-style);border-inline-start-width:1px}.\[\&\>\:last-child\]\:border-border>:last-child{border-color:var(--wave-border)}.\[\&\>svg\]\:size-full>svg{width:100%;height:100%}:where(.\[\:where\(\&\>tbody\>tr\:nth-child\(odd\)\)\]\:bg-card>tbody>tr:nth-child(odd)){background-color:var(--wave-card)}@media (hover:hover){@media not all and (forced-colors:active){.\[\@media\(hover\:hover\)\]\:not-forced-colors\:group-focus-within\/end\:invisible:is(:where(.group\/end):focus-within *),.\[\@media\(hover\:hover\)\]\:not-forced-colors\:group-has-\[\[aria-expanded\=true\]\]\/end\:invisible:is(:where(.group\/end):has([aria-expanded=true]) *),.\[\@media\(hover\:hover\)\]\:not-forced-colors\:group-has-\[\[data-focus-in-popup\]\]\/end\:invisible:is(:where(.group\/end):has([data-focus-in-popup]) *),.\[\@media\(hover\:hover\)\]\:not-forced-colors\:\[\&\:focus-within\:not\(\:has\(\>\[role\=group\]_\:focus\)\)\>\[data-tree-row\]_\[data-tree-aside\]\]\:invisible:focus-within:not(:has(>[role=group] :focus))>[data-tree-row] [data-tree-aside]{visibility:hidden}}}@media (hover:none){.\[\@media\(hover\:none\)\]\:visible{visibility:visible}.\[\@media\(hover\:none\)\]\:flex{display:flex}}@property --tw-border-spacing-x{syntax:"<length>";inherits:false;initial-value:0}@property --tw-border-spacing-y{syntax:"<length>";inherits:false;initial-value:0}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes wave-spin{to{transform:rotate(360deg)}}@keyframes wave-pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes wave-indeterminate{0%{transform:translate(-100%)}to{transform:translate(350%)}}@keyframes wave-indeterminate-rtl{0%{transform:translate(100%)}to{transform:translate(-350%)}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mortenbrudvik/waveui",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "type": "module",
5
5
  "description": "A comprehensive React component library with modern design tokens — accessible, composable components built with TypeScript and Tailwind CSS",
6
6
  "license": "MIT",