@revolist/ui 4.0.5-rc → 4.0.5

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 (356) hide show
  1. package/MIGRATION.md +36 -0
  2. package/OWNERSHIP.md +36 -36
  3. package/README.md +65 -408
  4. package/_button.scss +6 -2
  5. package/_chunks/{calendar-DsXIhybL.js → calendar-BQYQLu8Q.js} +5 -5
  6. package/_chunks/{cell-visuals-E-2oEKHg.js → cell-visuals-r6DOOhGh.js} +7 -7
  7. package/_chunks/{chart-frame-CuZABXVI.js → chart-frame-GprenwEg.js} +17 -13
  8. package/_chunks/{chevron-left-D0nc4Z5S.js → chevron-right-CM3ljziP.js} +2 -2
  9. package/_chunks/{choice-chips-BhP8MZjs.js → choice-chips-C5OxD0GV.js} +3 -3
  10. package/_chunks/{color-palette-DMJUChWC.js → color-palette-7siNch__.js} +3 -3
  11. package/_chunks/{color-picker-B4TQvxxB.js → color-picker-Cfc9eqZb.js} +4 -4
  12. package/_chunks/{component-qKctqdzk.js → component-C3k_8uIq.js} +44 -45
  13. package/_chunks/{component-metadata-BMOOmqx5.js → component-metadata-DlVkpW3h.js} +1 -9
  14. package/_chunks/{configurator-actions-C19O1rda.js → configurator-actions-vRnI54mO.js} +3 -3
  15. package/_chunks/{control-BkWukVt9.js → control-BRfF5DWQ.js} +32 -7
  16. package/_chunks/{controller-hRBm_Lfz.js → controller-BbiQuRt-.js} +5 -5
  17. package/_chunks/{controls-BLQnWEd7.js → controls-B3EgM_DS.js} +160 -132
  18. package/_chunks/{date-control-Cgw5PwlZ.js → date-control-87dcA5br.js} +5 -5
  19. package/_chunks/{date-time-B8rK5gpC.js → date-time-CfiFYodx.js} +316 -293
  20. package/_chunks/{delete-button-CW9vjLnk.js → delete-button-jneO24wa.js} +1 -1
  21. package/_chunks/dialog.parts-NqEEVc9P.js +131 -0
  22. package/_chunks/{duration-DwFXonEV.js → duration-BGZ_qJ99.js} +10 -7
  23. package/_chunks/{editor-commit-Bq3wSgvr.js → editor-commit-Dyo-FMgD.js} +1 -1
  24. package/_chunks/{editor-popup-BaaxL89T.js → editor-popup-NNP9Fh9U.js} +12 -11
  25. package/_chunks/field-configurator-DPulsY3l.js +288 -0
  26. package/_chunks/{field-context-D57PnBbH.js → field-context-C4_WrO2z.js} +1 -1
  27. package/_chunks/{framework-mount--RTLIqE-.js → framework-mount-D4I8HpVp.js} +2 -2
  28. package/_chunks/{icon-toolbar-xbqa0hu9.js → icon-toolbar-BAAdEvr9.js} +41 -35
  29. package/_chunks/{icons-Ci5mADVc.js → icons-B4qN13Yj.js} +1 -1
  30. package/_chunks/{iso-B0YHBK7m.js → iso-CJQl2kmq.js} +1 -1
  31. package/_chunks/{model-mPO2tG2f.js → model-CFrBgRHm.js} +3 -3
  32. package/_chunks/mount-C8CnIW9k.js +267 -0
  33. package/_chunks/{native.view-ByyZ1CT5.js → native-CJm3eq3-.js} +1 -1
  34. package/_chunks/{native-control-DO0d1kgx.js → native-control-um1L1wgZ.js} +124 -111
  35. package/_chunks/{number-input-s9ddPwX6.js → number-input-CKiA4d1N.js} +4 -4
  36. package/_chunks/{picker-AY05b41W.js → picker-igNshTRC.js} +5 -5
  37. package/_chunks/{popup-UXGCiv3n.js → popup-DECYM9FI.js} +21 -10
  38. package/_chunks/{rating-choice-BEs_QFZC.js → rating-choice-CepVfGUq.js} +2 -2
  39. package/_chunks/{render-m5eMMwFR.js → render-bTk3curw.js} +2 -2
  40. package/_chunks/{reorder-list-A49l172e.js → reorder-list-B4w3aARt.js} +2 -2
  41. package/_chunks/{request-trail-DCOfa5zw.js → request-trail-B1zVRPEf.js} +151 -142
  42. package/_chunks/{rich-text-xfMWadGi.js → rich-text-Ci4d6dHn.js} +11 -11
  43. package/_chunks/selection-list-tooltips-m00U3L6z.js +42 -0
  44. package/_chunks/{title-tooltip-Cw6LOZhb.js → title-tooltip-ncldbUwS.js} +2 -2
  45. package/_chunks/{tooltip-D4xkio5G.js → tooltip-h-Z8yFBY.js} +2 -2
  46. package/_chunks/{tooltip-owner-DjdvqKzz.js → tooltip-owner-BYho-vJl.js} +1 -1
  47. package/_chunks/{tooltip-session-B6X6x8G_.js → tooltip-session-CBtRMBPr.js} +3 -3
  48. package/_chunks/{tooltip-text-BXsUEmBH.js → tooltip-text-BN5WdGHn.js} +2 -2
  49. package/_chunks/{top-layer-popup-CNSDdfJV.js → top-layer-popup-CKJ7VJOF.js} +3 -3
  50. package/_dialog.scss +57 -22
  51. package/_form.scss +71 -21
  52. package/_legend.scss +25 -7
  53. package/_variables.scss +34 -32
  54. package/_view-switcher.scss +6 -0
  55. package/activity-message.d.ts +1 -1
  56. package/activity-message.js +1 -1
  57. package/ai/_chat.scss +7 -0
  58. package/ai/_style.scss +27 -20
  59. package/ai/components.d.ts +3 -1
  60. package/ai/index.js +2 -2
  61. package/ai/mount.d.ts +15 -7
  62. package/ai/request-trail.d.ts +9 -3
  63. package/ai/results/_style.scss +3 -0
  64. package/ai/results/index.d.ts +1 -1
  65. package/ai/translations.d.ts +1 -1
  66. package/angular/angular.d.ts +1 -1
  67. package/angular/angular.js +13 -7
  68. package/assignee/assignee.scss +28 -6
  69. package/assignee/index.js +6 -6
  70. package/avatar/avatar.style.scss +23 -6
  71. package/avatar/index.d.ts +25 -2
  72. package/avatar/index.js +2 -2
  73. package/badge.d.ts +1 -1
  74. package/badge.js +1 -1
  75. package/badge.view.d.ts +1 -1
  76. package/brush-range/_brush-range.scss +55 -49
  77. package/brush-range/component.d.ts +1 -3
  78. package/brush-range/component.js +10 -11
  79. package/buttons/delete-button.js +1 -1
  80. package/buttons/delete-button.style.scss +6 -2
  81. package/buttons/remove-button.d.ts +1 -1
  82. package/buttons/remove-button.js +2 -2
  83. package/buttons/remove-button.style.scss +1 -1
  84. package/buttons/svg-button.js +3 -3
  85. package/calendar/_calendar.scss +19 -23
  86. package/calendar/calendar.js +1 -1
  87. package/calendar/day.js +2 -2
  88. package/calendar/header.js +2 -3
  89. package/calendar/index.js +3 -3
  90. package/calendar/model.js +1 -1
  91. package/calendar/month-grid.js +2 -2
  92. package/calendar/translations.js +1 -1
  93. package/calendar/year-grid.js +2 -2
  94. package/cell-input.js +1 -1
  95. package/cell-input.scss +3 -7
  96. package/cell-visuals/badge.style.scss +6 -3
  97. package/cell-visuals/bar-chart.style.scss +2 -1
  98. package/cell-visuals/column-type.style.css +12 -0
  99. package/cell-visuals/index.js +1 -1
  100. package/cell-visuals/progress-line-value.renderer.style.scss +4 -2
  101. package/cell-visuals/progress-line.style.scss +1 -4
  102. package/cell-visuals/sparkline.style.scss +2 -1
  103. package/cell-visuals/timeline.style.css +4 -2
  104. package/checkbox/checkbox.scss +6 -24
  105. package/checkbox/index.js +1 -1
  106. package/choice-chips/index.js +1 -1
  107. package/color-palette/built-in-palettes.js +1 -1
  108. package/color-palette/chart-palettes.js +1 -1
  109. package/color-palette/color-palette.js +1 -1
  110. package/color-palette/color-palette.style.scss +88 -25
  111. package/color-palette/color-picker.constants.js +1 -1
  112. package/color-palette/color-picker.js +2 -2
  113. package/color-palette/color-picker.style.scss +23 -10
  114. package/color-palette/common-palettes.d.ts +1 -1
  115. package/color-palette/common-palettes.js +2 -2
  116. package/color-palette/gantt-palettes.js +1 -1
  117. package/color-palette/native.d.ts +15 -2
  118. package/color-palette/palette.js +1 -1
  119. package/color-palette/pivot-palettes.js +1 -1
  120. package/color-palette/platform-palettes.js +1 -1
  121. package/color-palette/pro-palettes.js +1 -1
  122. package/color-palette/scheduler-palettes.js +1 -1
  123. package/component-catalog.d.ts +3 -6
  124. package/configurator-actions.d.ts +6 -6
  125. package/configurator-actions.js +1 -1
  126. package/configurator-aggregation-list.d.ts +1 -1
  127. package/configurator-aggregation-list.js +19 -17
  128. package/configurator-drop-zone.d.ts +3 -2
  129. package/configurator-drop-zone.js +34 -32
  130. package/configurator-focus.js +1 -1
  131. package/configurator-sections.d.ts +3 -3
  132. package/configurator-sections.js +1 -1
  133. package/control-attributes.js +1 -1
  134. package/control-presentation.d.ts +8 -2
  135. package/control-presentation.js +2 -2
  136. package/controls.d.ts +11 -0
  137. package/controls.js +4 -4
  138. package/core/anchored-popover.js +1 -1
  139. package/core/control-id.js +1 -1
  140. package/core/editor-popup-position.d.ts +6 -2
  141. package/core/editor-popup.d.ts +4 -0
  142. package/core/editor-popup.js +1 -1
  143. package/core/motion.js +1 -1
  144. package/{_chunks/popover-controller-D-AvKQ7B.js → core/popover-controller.js} +8 -8
  145. package/core/selection-list-tooltips.d.ts +2 -0
  146. package/core/tooltip.d.ts +1 -1
  147. package/core/top-layer-popup.d.ts +1 -1
  148. package/core/top-layer-popup.js +1 -1
  149. package/date-time/attach.d.ts +1 -1
  150. package/date-time/date-control.d.ts +1 -1
  151. package/date-time/field.d.ts +4 -2
  152. package/date-time/index.js +1 -1
  153. package/date-time/style.scss +206 -46
  154. package/date-time/time-selection.d.ts +1 -1
  155. package/date-time/types.d.ts +5 -1
  156. package/dialog/dialog-action-footer.d.ts +17 -2
  157. package/dialog/dialog.dom.d.ts +15 -2
  158. package/dialog/dialog.dom.js +3 -3
  159. package/dialog/dialog.drag.js +1 -1
  160. package/dialog/dialog.parts.d.ts +1 -1
  161. package/dialog/dialog.parts.js +1 -1
  162. package/dialog/dialog.preact.js +1 -1
  163. package/distribution-chart/_distribution-chart.scss +115 -23
  164. package/distribution-chart/area-chart.js +2 -2
  165. package/distribution-chart/bar-chart.js +2 -2
  166. package/distribution-chart/chart-frame.d.ts +1 -1
  167. package/distribution-chart/index.d.ts +1 -1
  168. package/distribution-chart/index.js +1 -1
  169. package/distribution-chart/line-chart.js +2 -2
  170. package/dropdown/content.js +1 -1
  171. package/dropdown/control.js +1 -1
  172. package/dropdown/dropdown.service.js +1 -1
  173. package/dropdown/dropdown.types.d.ts +1 -1
  174. package/dropdown/editor-dropdown.style.scss +19 -9
  175. package/dropdown/index.js +2 -2
  176. package/dropdown/lookup-field.d.ts +5 -0
  177. package/dropdown/lookup-field.js +3 -3
  178. package/dropdown/popup.js +1 -1
  179. package/duration/index.js +1 -1
  180. package/editor-actions.js +2 -2
  181. package/editor-layout/index.d.ts +4 -4
  182. package/editor-layout/index.js +40 -35
  183. package/editor-layout/style.scss +82 -18
  184. package/favicon.svg +9 -0
  185. package/field-configurator.d.ts +22 -3
  186. package/field-configurator.js +1 -1
  187. package/field-reorder.hook.js +1 -1
  188. package/field-reorder.js +1 -1
  189. package/filter/filters/slider/_single-slider.scss +57 -38
  190. package/filter/filters/slider/_slider.scss +41 -16
  191. package/filter/filters/slider/component.js +1 -1
  192. package/filter/filters/slider/control.js +1 -1
  193. package/filter/filters/slider/inputs.js +1 -1
  194. package/filter/filters/slider/logic.js +1 -1
  195. package/filter/filters/slider/preact.js +1 -1
  196. package/filter/filters/slider/runtime.js +3 -3
  197. package/filter/filters/slider/single.js +2 -2
  198. package/filter-badge.js +2 -2
  199. package/filter-controls.d.ts +0 -1
  200. package/filter-controls.js +6 -7
  201. package/form-controls/index.d.ts +10 -2
  202. package/form-controls/index.js +3 -3
  203. package/form-controls/presentation.d.ts +1 -1
  204. package/form-controls/presentation.js +2 -2
  205. package/formatting/index.d.ts +1 -1
  206. package/formatting/index.js +7 -7
  207. package/formatting/styles.scss +13 -11
  208. package/framework.js +201 -205
  209. package/history-controls.js +1 -1
  210. package/html-controls.js +1 -1
  211. package/icon-toolbar.d.ts +6 -2
  212. package/icon-toolbar.js +1 -1
  213. package/icons/icon.d.ts +1 -1
  214. package/icons/icon.js +1 -1
  215. package/legend.d.ts +1 -1
  216. package/legend.js +1 -1
  217. package/masked-input/index.js +4 -4
  218. package/native-control.js +1 -1
  219. package/native-controls.d.ts +54 -2
  220. package/native-styles.css +1 -1
  221. package/native-styles.scss +6 -2
  222. package/native.d.ts +3 -3
  223. package/native.js +35 -35
  224. package/number-input/index.d.ts +1 -1
  225. package/number-input/index.js +1 -1
  226. package/package.json +49 -1
  227. package/pagination.js +12 -12
  228. package/pdf-viewer/controller.js +1 -1
  229. package/pdf-viewer/header.d.ts +1 -1
  230. package/pdf-viewer/index.d.ts +2 -2
  231. package/pdf-viewer/index.js +3 -3
  232. package/pdf-viewer/search-bar.d.ts +1 -1
  233. package/pdf-viewer/status.d.ts +1 -1
  234. package/pdf-viewer/style.scss +203 -42
  235. package/preact-mount.js +1 -1
  236. package/preact.d.ts +6 -10
  237. package/preact.js +108 -70
  238. package/progress/_bar.scss +9 -3
  239. package/progress/_circular.scss +2 -1
  240. package/progress/bar.js +1 -1
  241. package/progress/circular.js +1 -1
  242. package/progress/range.js +1 -1
  243. package/rating-choice.js +1 -1
  244. package/react-adapter.d.ts +4 -2
  245. package/react-control.d.ts +2 -0
  246. package/react-control.js +3 -3
  247. package/react.d.ts +2 -8
  248. package/react.js +55 -56
  249. package/reorder-list.d.ts +1 -1
  250. package/reorder-list.js +1 -1
  251. package/reorder-list.scss +59 -17
  252. package/resource-picker/resource-picker-avatar.js +1 -1
  253. package/resource-picker/resource-picker-option.js +1 -1
  254. package/resource-picker/resource-picker-popup.js +2 -2
  255. package/resource-picker/resource-picker.js +74 -72
  256. package/resource-picker/resource-picker.scss +62 -34
  257. package/resource-picker/resource-picker.utils.js +1 -1
  258. package/rich-text/index.js +1 -1
  259. package/rich-text/style.scss +203 -49
  260. package/rich-text/toolbar.d.ts +1 -1
  261. package/robots.txt +4 -0
  262. package/search-input/index.js +2 -2
  263. package/search-input/native.d.ts +21 -2
  264. package/segmented-switch/index.js +1 -1
  265. package/select.js +1 -1
  266. package/selection-list.d.ts +1 -0
  267. package/selection-list.js +3 -1
  268. package/status-feedback/badge.js +2 -2
  269. package/status-feedback/exit-snapshot.js +2 -2
  270. package/status-feedback/header.js +2 -2
  271. package/status-feedback/icons.js +1 -1
  272. package/status-feedback/index.js +1 -1
  273. package/status-feedback/item.js +2 -2
  274. package/status-feedback/motion.js +1 -1
  275. package/status-feedback/placement.js +1 -1
  276. package/status-feedback/popover.js +2 -2
  277. package/status-feedback/render.js +1 -1
  278. package/status-feedback/status-feedback.scss +124 -35
  279. package/styles/_activity-message.scss +24 -7
  280. package/styles/_alert.scss +78 -17
  281. package/styles/_cell-editor-frame.scss +11 -0
  282. package/styles/_compositions.scss +399 -79
  283. package/styles/_control.scss +30 -8
  284. package/styles/_disclosure.scss +15 -5
  285. package/styles/_editor-counter.scss +16 -6
  286. package/styles/_editor-slider.scss +8 -4
  287. package/styles/_field-configurator.scss +194 -42
  288. package/styles/_fields-grid.scss +18 -4
  289. package/styles/_filter-controls.scss +10 -2
  290. package/styles/_icon-action.scss +48 -15
  291. package/styles/_loading.scss +12 -3
  292. package/styles/_motion.scss +32 -9
  293. package/styles/_palette.scss +0 -24
  294. package/styles/_primitives.scss +348 -96
  295. package/styles/_theme.scss +130 -86
  296. package/styles/_thresholds.scss +28 -25
  297. package/styles/_time-grid.scss +8 -3
  298. package/styles/_tokens.scss +6 -1
  299. package/styles/color-roles.js +1 -1
  300. package/styles/configurator-actions.scss +126 -26
  301. package/styles/pagination.css +213 -0
  302. package/styles/{legacy-rating.css → rating.css} +8 -3
  303. package/styles.css +1 -1
  304. package/styles.scss +3 -5
  305. package/surfaces.d.ts +37 -4
  306. package/surfaces.js +8 -8
  307. package/svelte/UiComponent.svelte +44 -11
  308. package/svelte-control.js +1 -1
  309. package/svelte.d.ts +1 -1
  310. package/svelte.js +5 -5
  311. package/switch/index.js +2 -2
  312. package/time-grid.d.ts +0 -1
  313. package/time-grid.js +6 -6
  314. package/timeline-track/_style.scss +96 -24
  315. package/timeline-track/index.js +3 -3
  316. package/timeline-track/model.js +1 -1
  317. package/ui.css +1 -1
  318. package/view-switcher.d.ts +23 -0
  319. package/vue-badge.js +1 -1
  320. package/vue-control.js +1 -1
  321. package/vue-segmented-switch.js +1 -1
  322. package/vue.d.ts +5 -23
  323. package/vue.js +84 -91
  324. package/_chunks/badge.view-D30pMUfi.js +0 -14
  325. package/_chunks/chevron-right-sxHQMSkq.js +0 -4
  326. package/_chunks/dialog.parts-BSbvnEwX.js +0 -134
  327. package/_chunks/field-configurator-1eQP0tKy.js +0 -223
  328. package/_chunks/mount-D1i5DLRn.js +0 -266
  329. package/_shared/data-query/binding.d.ts +0 -30
  330. package/_shared/data-query/blocks.d.ts +0 -30
  331. package/_shared/data-query/commands.d.ts +0 -47
  332. package/_shared/data-query/contracts.d.ts +0 -106
  333. package/_shared/data-query/cursor-reader.d.ts +0 -25
  334. package/_shared/data-query/direct-binding.d.ts +0 -3
  335. package/_shared/data-query/index.d.ts +0 -23
  336. package/_shared/data-query/infinite-binding.d.ts +0 -18
  337. package/_shared/data-query/keys.d.ts +0 -9
  338. package/_shared/data-query/limiter.d.ts +0 -12
  339. package/_shared/data-query/load-options.d.ts +0 -25
  340. package/_shared/data-query/materialize.d.ts +0 -2
  341. package/_shared/data-query/policy.d.ts +0 -14
  342. package/_shared/data-query/provider-queries.d.ts +0 -22
  343. package/_shared/data-query/reader.d.ts +0 -23
  344. package/_shared/data-query/remote-load.d.ts +0 -7
  345. package/_shared/data-query/source.d.ts +0 -40
  346. package/avatar/index.view.d.ts +0 -25
  347. package/color-palette/native.view.d.ts +0 -15
  348. package/control-presentation.view.d.ts +0 -8
  349. package/dialog/dialog-action-footer.view.d.ts +0 -20
  350. package/dialog/dialog.dom.view.d.ts +0 -15
  351. package/form-controls/index.view.d.ts +0 -10
  352. package/formatting/control-tooltip.d.ts +0 -2
  353. package/native-controls.view.d.ts +0 -54
  354. package/search-input/native.view.d.ts +0 -21
  355. package/styles/legacy-pagination.css +0 -129
  356. package/surfaces.view.d.ts +0 -33
package/legend.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { t as e } from "./_chunks/jsxRuntime.module-F6UFnpT-.js";
2
- //#region src/legend.tsx
2
+ //#region package/legend.tsx
3
3
  function t({ label: t, items: n, className: r = "", itemClassName: i = "" }) {
4
4
  return /* @__PURE__ */ e("div", {
5
5
  class: `rv-legend ${r}`,
@@ -1,8 +1,8 @@
1
1
  import { a as e, i as t, t as n } from "../_chunks/hooks.module-CG3gN83z.js";
2
2
  import { t as r } from "../_chunks/jsxRuntime.module-F6UFnpT-.js";
3
- import { n as i } from "../_chunks/native-control-DO0d1kgx.js";
3
+ import { n as i } from "../_chunks/native-control-um1L1wgZ.js";
4
4
  import { EditorActions as a } from "../editor-actions.js";
5
- //#region src/masked-input/model.ts
5
+ //#region package/masked-input/model.ts
6
6
  function o(e) {
7
7
  if (typeof e != "string") return;
8
8
  let t = [], n = Array.from(e);
@@ -66,7 +66,7 @@ function u(e, t) {
66
66
  return n.valid ? n.formatted ?? "" : e == null ? "" : String(e);
67
67
  }
68
68
  //#endregion
69
- //#region src/masked-input/edit.ts
69
+ //#region package/masked-input/edit.ts
70
70
  var d = "_";
71
71
  function f(e, t) {
72
72
  let n = t.filter((e) => "token" in e), r = Array.from(e), i = n.map(() => "");
@@ -228,7 +228,7 @@ function w(e, t) {
228
228
  return a && ((i ? r.past : r.future).push(y(e)), r.current = e.value = a.value, e.setSelectionRange(a.start, a.end)), !0;
229
229
  }
230
230
  //#endregion
231
- //#region src/masked-input/index.tsx
231
+ //#region package/masked-input/index.tsx
232
232
  var T = {
233
233
  required: "Enter a value.",
234
234
  invalid: "Use only the characters and separators specified by the mask.",
package/native-control.js CHANGED
@@ -1,3 +1,3 @@
1
- import { a as e, i as t, n, o as r, r as i, t as a } from "./_chunks/native-control-DO0d1kgx.js";
1
+ import { a as e, i as t, n, o as r, r as i, t as a } from "./_chunks/native-control-um1L1wgZ.js";
2
2
  import { nativeControlTag as o } from "./control-presentation.js";
3
3
  export { a as ButtonControl, r as Fieldset, n as Input, i as Select, t as Summary, e as TextArea, o as nativeControlTag };
@@ -1,2 +1,54 @@
1
- /** Compatibility entry; markup is owned by the Preact TSX implementation. */
2
- export * from './native-controls.view';
1
+ /** Renderer-neutral controls shared by native DOM, Stencil and Preact hosts. */
2
+ export type ElementFactory = (...args: any[]) => any;
3
+ export declare function renderLoadingIndicator<H extends ElementFactory>(h: H, options: {
4
+ className?: string;
5
+ label?: string;
6
+ ref?: (element?: HTMLElement) => void;
7
+ showSpinner?: boolean;
8
+ }): ReturnType<H>;
9
+ export declare function createButtonElement(document: Document, options: {
10
+ label: string;
11
+ text?: string;
12
+ disabled?: boolean;
13
+ className?: string;
14
+ onClick?: (event: MouseEvent) => void;
15
+ }): HTMLButtonElement;
16
+ export declare function renderMenuItem<H extends ElementFactory>(h: H, options: {
17
+ label: string;
18
+ disabled: boolean;
19
+ submenu: boolean;
20
+ onActivate: () => void;
21
+ style?: string;
22
+ }): ReturnType<H>;
23
+ export declare function renderRatingStars<H extends ElementFactory>(h: H, value: number, maximum?: number): ReturnType<H>[];
24
+ export interface ScalarSliderOptions {
25
+ min: number;
26
+ max: number;
27
+ step: number;
28
+ value: number;
29
+ hideValue?: boolean;
30
+ displayValue?: string | number;
31
+ formatValue?: (value: number) => string | number;
32
+ thresholdClassNames?: string;
33
+ thresholds?: readonly {
34
+ value: number;
35
+ className: string;
36
+ }[];
37
+ label?: string;
38
+ onChange: (value: number, event: Event) => void;
39
+ onMouseDown?: (event: MouseEvent) => void;
40
+ }
41
+ /** Shared scalar slider presentation; edit commits and threshold policy are caller-owned. */
42
+ export declare function renderScalarSlider<H extends ElementFactory>(h: H, options: ScalarSliderOptions): ReturnType<H>;
43
+ export interface CounterOptions {
44
+ value: number;
45
+ min: number;
46
+ max: number;
47
+ step: number;
48
+ hideValue?: boolean;
49
+ onChange: (value: number, event: MouseEvent) => void;
50
+ decreaseLabel?: string;
51
+ increaseLabel?: string;
52
+ onMouseDown?: (event: MouseEvent) => void;
53
+ }
54
+ export declare function renderCounter<H extends ElementFactory>(h: H, options: CounterOptions): ReturnType<H>;
package/native-styles.css CHANGED
@@ -1 +1 @@
1
- :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(.2, 0, 0, 1)}[data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}[data-rv-ui-motion=off],[data-rv-ui-motion=off]::before,[data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}[data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}[data-rv-ui-motion=off] *,[data-rv-ui-motion=off] *::before,[data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}[data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}[data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){:root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-disclosure-summary.rv-disclosure-summary--compact{display:inline-flex;width:fit-content;max-width:100%;margin-block:8px;text-align:start}.rv-disclosure-summary.rv-disclosure-summary--compact::before{content:"";flex:none;width:6px;height:6px;margin-inline:1px 3px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--rv-ui-motion-fast, 120ms) ease}details[open]>.rv-disclosure-summary--compact::before{transform:rotate(45deg)}@media(prefers-reduced-motion: reduce){.rv-disclosure-summary--compact::before{transition:none}}@supports(interpolate-size: allow-keywords) and (transition-behavior: allow-discrete){:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields){interpolate-size:allow-keywords}:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields)::details-content{block-size:0;opacity:0;overflow:clip;overflow-clip-margin:4px;transition:block-size var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease-out),opacity var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease-out),content-visibility var(--rv-ui-motion-normal, 160ms) allow-discrete}:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields)[open]::details-content{block-size:auto;opacity:1}}.rv-native-controls{--rv-ui-color-scheme: light;color-scheme:light;--rv-ui-overlay: color-mix(in srgb, black 38%, transparent);--rv-ui-shadow: color-mix(in srgb, black 10%, transparent);--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix(in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface));--rv-ui-warning-surface: color-mix(in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface));--rv-ui-success-surface: color-mix(in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface));--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix(in srgb, var(--rv-ui-accent, #2563eb) 90%, black);--rv-ui-field-surface: #f6f6f6;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-font-weight-medium: 500;--rv-ui-canvas: #f5f5f5;--rv-ui-surface: #ffffff;--rv-ui-surface-elevated: #ffffff;--rv-ui-surface-sunken: #f8f8f8;--rv-ui-surface-hover: #f1f1f1;--rv-ui-border: #e0e0e0;--rv-ui-border-strong: #cccccc;--rv-ui-text: #171717;--rv-ui-text-muted: #666666;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix(in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface));--rv-dropdown-container-tag-background: #eeeeee;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #171717;--rv-ui-selected-accent-fg: color-mix(in srgb, var(--rv-ui-accent) 65%, black);--rv-ui-danger: #b91c1c;--rv-ui-warning: #b45309;--rv-ui-success: #15803d;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-fg: #ffffff;--rv-ui-accent-text-weight: 90%;--rv-ui-accent-text-base: black;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 90%, black);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover:var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover:var(--rv-ui-border-strong);--rv-ui-btn-bg: #262626;--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-fg: #ffffff;--rv-ui-btn-secondary-bg: var(--rv-ui-border);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-border-strong);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-danger-bg: transparent;--rv-ui-btn-danger-bg-hover: rgba(220, 38, 38, 0.08);--rv-ui-btn-danger-fg: var(--rv-ui-danger);--rv-ui-btn-danger-outline: #dc2626;--rv-ui-btn-danger-outline-hover:rgba(220, 38, 38, 0.08);--rv-ui-btn-ghost-hover-bg: rgba(0, 0, 0, 0.06);--rv-ui-btn-ghost-active-bg: rgba(0, 0, 0, 0.10);--rv-ui-switch-track-off: #9ca3af;--rv-ui-switch-thumb: #ffffff;--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-badge-bg: var(--rv-ui-accent);--rv-ui-badge-fg: var(--rv-ui-accent-fg);--rv-ui-badge-disabled-bg: #a1a1aa;--rv-ui-badge-disabled-fg: #ffffff;--rv-ui-radius: 6px;--rv-ui-transition: var(--rv-ui-motion-fast, 120ms);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 35%, transparent);--rv-control-height: 32px;--rv-control-padding: 6px 9px;color:var(--rv-ui-text)}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}@keyframes rv-ui-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.rv-native-controls .rv-spinner>span{animation:none}}.rv-native-controls .rv-btn-link,.rv-native-controls .rv-btn-tab,.rv-native-controls .rv-btn-ghost,.rv-native-controls .rv-btn-secondary,.rv-native-controls .rv-btn-danger-ghost,.rv-native-controls .rv-btn-danger,.rv-native-controls .rv-btn-danger-outline,.rv-native-controls .rv-btn-primary,.rv-native-controls .rv-btn-solid,.rv-native-controls .rv-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:var(--rv-ui-radius);box-sizing:border-box;min-height:var(--rv-control-height, 32px);padding:var(--rv-control-padding, 6px 12px);font-family:inherit;font-size:var(--rv-control-font-size, 0.875rem);line-height:1;border:1px solid rgba(0,0,0,0);font-weight:var(--rv-ui-button-font-weight, 500);cursor:pointer;user-select:none;box-shadow:none;text-decoration:none;white-space:nowrap;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-link:focus-visible,.rv-native-controls .rv-btn-tab:focus-visible,.rv-native-controls .rv-btn-ghost:focus-visible,.rv-native-controls .rv-btn-secondary:focus-visible,.rv-native-controls .rv-btn-danger-ghost:focus-visible,.rv-native-controls .rv-btn-danger:focus-visible,.rv-native-controls .rv-btn-danger-outline:focus-visible,.rv-native-controls .rv-btn-primary:focus-visible,.rv-native-controls .rv-btn-solid:focus-visible,.rv-native-controls .rv-btn:focus-visible{outline:2px solid var(--rv-ui-accent-text);outline-offset:2px;box-shadow:0 0 0 2px var(--rv-ui-focus-ring)}.rv-native-controls .rv-btn-link:disabled,.rv-native-controls .rv-btn-tab:disabled,.rv-native-controls .rv-btn-ghost:disabled,.rv-native-controls .rv-btn-secondary:disabled,.rv-native-controls .rv-btn-danger-ghost:disabled,.rv-native-controls .rv-btn-danger:disabled,.rv-native-controls .rv-btn-danger-outline:disabled,.rv-native-controls .rv-btn-primary:disabled,.rv-native-controls .rv-btn-solid:disabled,.rv-native-controls .rv-btn:disabled,.rv-native-controls [disabled].rv-btn-link,.rv-native-controls [disabled].rv-btn-tab,.rv-native-controls [disabled].rv-btn-ghost,.rv-native-controls [disabled].rv-btn-secondary,.rv-native-controls [disabled].rv-btn-danger-ghost,.rv-native-controls [disabled].rv-btn-danger,.rv-native-controls [disabled].rv-btn-danger-outline,.rv-native-controls [disabled].rv-btn-primary,.rv-native-controls [disabled].rv-btn-solid,.rv-native-controls [disabled].rv-btn{pointer-events:none;opacity:.5}.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)){background:var(--rv-ui-btn-outline-bg);border-color:var(--rv-ui-btn-outline-border);color:var(--rv-ui-btn-outline-fg)}.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)):hover,.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)):active{background:var(--rv-ui-btn-outline-bg-hover);border-color:var(--rv-ui-btn-outline-border-hover)}.rv-native-controls .rv-btn-solid{background:var(--rv-ui-btn-bg);color:var(--rv-ui-btn-fg)}.rv-native-controls .rv-btn-solid:hover{background:var(--rv-ui-btn-bg-hover)}.rv-native-controls .rv-btn-solid:active{background:var(--rv-ui-btn-bg-hover)}.rv-native-controls .rv-btn-primary{background:var(--rv-ui-accent);color:var(--rv-ui-accent-fg)}.rv-native-controls .rv-btn-primary:hover{background:var(--rv-ui-accent-hover)}.rv-native-controls .rv-btn-primary:active{background:var(--rv-ui-accent-hover)}.rv-native-controls .rv-btn-danger,.rv-native-controls .rv-btn-danger-outline{border-color:var(--rv-ui-btn-danger-outline);background:rgba(0,0,0,0);color:var(--rv-ui-btn-danger-outline)}.rv-native-controls .rv-btn-danger:hover,.rv-native-controls .rv-btn-danger:active,.rv-native-controls .rv-btn-danger-outline:hover,.rv-native-controls .rv-btn-danger-outline:active{background:var(--rv-ui-btn-danger-outline-hover)}.rv-native-controls .rv-btn-danger-ghost{background:var(--rv-ui-btn-danger-bg);color:var(--rv-ui-btn-danger-fg)}.rv-native-controls .rv-btn-danger-ghost:hover,.rv-native-controls .rv-btn-danger-ghost:active{background:var(--rv-ui-btn-danger-bg-hover)}.rv-native-controls .rv-btn-secondary{background:var(--rv-ui-btn-secondary-bg);color:var(--rv-ui-btn-secondary-fg)}.rv-native-controls .rv-btn-secondary:hover{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-secondary:active{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-ghost{background:rgba(0,0,0,0);color:inherit}.rv-native-controls .rv-btn-ghost:hover{background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-btn-ghost:active{background:var(--rv-ui-btn-ghost-active-bg)}.rv-native-controls .rv-switch{appearance:none;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;cursor:pointer;font:inherit;text-align:start;user-select:none}.rv-native-controls .rv-switch:focus-visible{border-radius:8px;outline:2px solid var(--rv-ui-accent);outline-offset:3px}.rv-native-controls .rv-switch:disabled{cursor:default;opacity:.55}.rv-native-controls .rv-switch-label{min-width:0;line-height:1.35}.rv-native-controls label.rv-switch-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;user-select:none}.rv-native-controls .rv-switch-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rv-native-controls .rv-switch-input:checked+.rv-switch-track{background:var(--rv-ui-accent)}.rv-native-controls .rv-switch-input:checked+.rv-switch-track .rv-switch-thumb{inset-inline-start:15px}.rv-native-controls .rv-switch-input:focus-visible+.rv-switch-track{outline:2px solid var(--rv-ui-accent);outline-offset:3px}.rv-native-controls .rv-switch-track{position:relative;display:inline-flex;align-items:center;flex-shrink:0;width:34px;height:19px;padding:2px;box-sizing:border-box;border-radius:999px;background:var(--rv-ui-switch-track-off);transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-switch-thumb{position:relative;inset-inline-start:0;width:15px;height:15px;border-radius:50%;background:var(--rv-ui-switch-thumb);box-shadow:0 1px 3px var(--rv-ui-shadow);transition:inset-inline-start var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-switch[aria-checked=true] .rv-switch-track{background:var(--rv-ui-accent)}.rv-native-controls .rv-switch[aria-checked=true] .rv-switch-thumb{inset-inline-start:15px}.rv-native-controls .rv-btn-group{display:inline-flex;align-items:stretch;gap:0;border-radius:var(--rv-ui-radius);border:1px solid var(--rv-ui-group-border);overflow:visible}.rv-native-controls .rv-btn-group>.rv-btn{border:0;border-radius:0}.rv-native-controls .rv-btn-group>.rv-btn+.rv-btn{border-inline-start:1px solid var(--rv-ui-group-border)}.rv-native-controls .rv-btn-group>.rv-btn:first-child{border-start-start-radius:calc(var(--rv-ui-radius) - 1px);border-end-start-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn:last-child{border-start-end-radius:calc(var(--rv-ui-radius) - 1px);border-end-end-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn:focus-visible{z-index:1}.rv-native-controls .rv-btn-group>.rv-btn-group-item:first-child>span{border-start-start-radius:calc(var(--rv-ui-radius) - 1px);border-end-start-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn-group-item:last-child>span{border-start-end-radius:calc(var(--rv-ui-radius) - 1px);border-end-end-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group-item{position:relative;display:inline-flex}.rv-native-controls .rv-btn-group-item input[type=radio],.rv-native-controls .rv-btn-group-item input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.rv-native-controls .rv-btn-group-item input[type=radio]:checked+span,.rv-native-controls .rv-btn-group-item input[type=checkbox]:checked+span{background:var(--rv-ui-accent);color:var(--rv-ui-accent-fg)}.rv-native-controls .rv-btn-group-item span{display:block;padding:6px 16px;font-size:.875rem;cursor:pointer;user-select:none;color:inherit;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-group-item+.rv-btn-group-item span{border-inline-start:1px solid var(--rv-ui-group-border)}.rv-native-controls .rv-btn-group-item:hover span{background:var(--rv-ui-group-hover-bg)}.rv-native-controls .rv-chip-remove{appearance:none;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,0,0,0);border:0;border-radius:calc(var(--rv-ui-radius)/2);color:inherit;cursor:pointer;font-size:16px;line-height:1;opacity:.5;padding:0 2px;transition:opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-chip-remove:hover:not(:disabled){opacity:1;background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-chip-remove:disabled{cursor:not-allowed;opacity:.5}.rv-native-controls .rv-btn-pill{appearance:none;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--rv-ui-group-border);border-radius:999px;background:var(--rv-ui-btn-secondary-bg);color:inherit;font-size:.8rem;cursor:pointer;white-space:nowrap;line-height:1.4;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-pill:hover{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-pill:active{opacity:.75}.rv-native-controls .rv-btn-pill:disabled,.rv-native-controls .rv-btn-pill[disabled]{pointer-events:none;opacity:.5}.rv-native-controls .rv-switch-sm .rv-switch-track{width:28px;height:16px}.rv-native-controls .rv-switch-sm .rv-switch-thumb{width:12px;height:12px}.rv-native-controls .rv-switch-sm[aria-checked=true] .rv-switch-thumb{inset-inline-start:12px}.rv-native-controls .rv-switch-sm .rv-switch-input:checked+.rv-switch-track .rv-switch-thumb{inset-inline-start:12px}@media(prefers-reduced-motion: reduce){.rv-native-controls .rv-switch-track,.rv-native-controls .rv-switch-thumb{transition:none}}.rv-native-controls .rv-choice-chips{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.rv-native-controls .rv-choice-chips--scrollable{display:flex;flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;padding-block:3px;--rv-choice-chips-fade-left: 0px;--rv-choice-chips-fade-right: 0px;mask-image:linear-gradient(to right, transparent, #000 var(--rv-choice-chips-fade-left), #000 calc(100% - var(--rv-choice-chips-fade-right)), transparent)}.rv-native-controls .rv-choice-chips--scrollable[data-scroll-edges~=left]{--rv-choice-chips-fade-left: 12px}.rv-native-controls .rv-choice-chips--scrollable[data-scroll-edges~=right]{--rv-choice-chips-fade-right: 36px}.rv-native-controls .rv-choice-chips--scrollable::-webkit-scrollbar{display:none}.rv-native-controls .rv-choice-chips--scrollable>.rv-choice-chip{flex:none}.rv-native-controls .rv-choice-chip{appearance:none;min-height:29px;padding:0 11px;border:1px solid rgba(0,0,0,0);border-radius:8px;background:var(--rv-ui-surface-sunken);color:var(--rv-ui-text);cursor:pointer;font:inherit;font-size:13px;font-weight:400;line-height:1;white-space:nowrap;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-choice-chip:hover:not(:disabled){background:var(--rv-ui-surface-hover)}.rv-native-controls .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chip[data-selected=true]{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg));color:var(--rv-ui-selected-fg);font-weight:400}.rv-native-controls .rv-choice-chip:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-choice-chip:disabled{cursor:default;opacity:.5}.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip{border-color:var(--rv-ui-border);background:var(--rv-ui-surface)}.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip[data-selected=true]{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg))}.rv-native-controls .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chip[aria-pressed=true]:hover{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg));color:var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text));font-weight:500}.rv-native-controls .rv-choice-chips--small .rv-choice-chip{min-height:24px;padding:0 9px;border-radius:7px;font-size:12px}.rv-native-controls .group-expand{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border:none;border-radius:var(--rv-ui-radius);background:rgba(0,0,0,0);color:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .group-expand:hover{background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-segmented-switch,.rv-native-controls .rv-value-selection-editor{--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) var(--rv-ui-accent-text-weight, 90%), var(--rv-ui-accent-text-base, black))}.rv-native-controls .rv-segmented-switch{--rv-segmented-theme-item-hover-bg: color-mix(in srgb, var(--rv-ui-text) 8%, var(--rv-ui-surface-sunken));display:inline-flex;box-sizing:border-box;height:37px;align-items:center;gap:2px;background:var(--rv-segmented-bg, var(--rv-ah-bg-up, var(--rv-segmented-theme-bg, var(--rv-ui-surface-sunken))));border:1px solid var(--rv-segmented-border, var(--rv-ah-border, transparent));border-radius:10px;padding:2px;box-shadow:none}.rv-native-controls :where(.dark,[data-theme^=dark],revo-grid[theme^=dark]) .rv-segmented-switch,.rv-native-controls .rv-segmented-switch[data-theme^=dark]{--rv-segmented-theme-bg: var(--rv-ui-surface-sunken);--rv-segmented-theme-border: var(--rv-ui-border);--rv-segmented-theme-item-color: var(--rv-ui-text);--rv-segmented-theme-item-hover-bg: var(--rv-ui-surface-hover);--rv-segmented-theme-item-hover-color: var(--rv-ui-text);--rv-segmented-theme-active-bg: var(--rv-ui-surface-elevated);--rv-segmented-theme-active-border: var(--rv-ui-border-strong);--rv-segmented-theme-active-color: var(--rv-ui-accent-text);--rv-segmented-theme-focus-outline: var(--rv-ui-surface-elevated)}.rv-native-controls .rv-segmented-switch-item{box-sizing:border-box;flex:1 1 auto;display:flex;appearance:none;height:31px;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(0,0,0,0);border-radius:7px;padding:0 14px;background:rgba(0,0,0,0);color:var(--rv-segmented-item-color, var(--rv-ah-text-2, var(--rv-segmented-theme-item-color, var(--rv-ui-text))));cursor:pointer;font:inherit;font-size:13px;font-weight:400;line-height:1;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-segmented-switch--icon-only .rv-segmented-switch-item{flex:none;width:30px;padding:0}.rv-native-controls .rv-segmented-switch-label{gap:5px;display:inline-flex;align-items:center;justify-content:center}.rv-native-controls .rv-segmented-switch-item:where(:not(.on)):hover:not(:disabled){background:var(--rv-segmented-item-hover-bg, var(--rv-segmented-theme-item-hover-bg, var(--rv-ui-surface-hover)));color:var(--rv-segmented-item-hover-color, var(--rv-ah-text-2, var(--rv-segmented-theme-item-hover-color, var(--rv-ui-text))))}.rv-native-controls .rv-segmented-switch-item.on{background:var(--rv-segmented-active-bg, var(--rv-ah-bg, var(--rv-segmented-theme-active-bg, var(--rv-ui-surface))));color:var(--rv-segmented-active-color, var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text)));font-weight:500;border-color:var(--rv-segmented-active-border, var(--rv-segmented-theme-active-border, var(--rv-ui-border)));box-shadow:none}.rv-native-controls .rv-segmented-switch-item:focus-visible{outline:2px solid var(--rv-segmented-focus-outline, var(--rv-ah-bg, var(--rv-segmented-theme-focus-outline, var(--rv-ui-text-muted))));box-shadow:0 0 0 4px var(--rv-segmented-focus-ring, color-mix(in srgb, var(--rv-ui-accent) 28%, transparent))}.rv-native-controls .rv-segmented-switch-item:disabled{cursor:not-allowed;color:var(--rv-ui-text-muted);opacity:.55}.rv-native-controls .rv-segmented-switch-count{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;padding:1px 5px;border-radius:4px;background:var(--rv-segmented-count-bg, var(--rv-ah-bg-up, var(--rv-ui-surface-sunken)));color:var(--rv-segmented-count-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));border:1px solid var(--rv-segmented-count-border, var(--rv-ah-border, var(--rv-ui-border)))}.rv-native-controls .rv-segmented-switch-item.on .rv-segmented-switch-count{background:var(--rv-segmented-active-count-bg, var(--rv-ah-bg-hover, var(--rv-ui-surface-sunken)));color:var(--rv-segmented-active-count-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)))}.rv-native-controls .rv-search-input{min-width:0;position:relative}.rv-native-controls .rv-search-input-icon{position:absolute;inset-inline-start:10px;top:50%;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);color:var(--rv-search-input-icon-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));pointer-events:none}.rv-native-controls .rv-search-input>input:is([type=search],[type=text]){box-sizing:border-box;width:100%;height:var(--rv-search-input-height, var(--rv-control-height, 32px));min-height:var(--rv-search-input-height, var(--rv-control-height, 32px));appearance:none;background:var(--rv-search-input-bg, var(--rv-ah-bg-input, var(--rv-ui-surface-sunken)));border:1px solid var(--rv-search-input-border, var(--rv-ah-border, var(--rv-ui-border)));border-radius:8px;padding-block:0;padding-inline:32px 38px;color:var(--rv-search-input-color, var(--rv-ah-text, var(--rv-ui-text)));outline:none;font:inherit;font-size:var(--rv-control-font-size, 0.875rem);transition:border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-search-input>input[type=search]::-webkit-search-cancel-button{appearance:none}.rv-native-controls .rv-search-input>input:is([type=search],[type=text])::placeholder{color:var(--rv-search-input-placeholder-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)))}.rv-native-controls .rv-search-input>input:is([type=search],[type=text]):focus{transition:none;border-color:var(--rv-search-input-focus-border, var(--rv-ah-border-strong, var(--rv-ui-border-strong)));background:var(--rv-search-input-focus-bg, var(--rv-ah-bg, var(--rv-ui-surface)))}.rv-native-controls .rv-search-input--no-icon>input:is([type=search],[type=text]){padding-inline-start:12px}.rv-native-controls .rv-search-input--no-shortcut>input:is([type=search],[type=text]){padding-inline-end:12px}.rv-native-controls .rv-search-input-shortcut{position:absolute;inset-inline-end:8px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--rv-search-input-shortcut-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));background:var(--rv-search-input-shortcut-bg, var(--rv-ah-canvas, var(--rv-ui-surface-elevated)));border:1px solid var(--rv-search-input-shortcut-border, var(--rv-ah-border, var(--rv-ui-border)));padding:1px 5px;border-radius:3px}.rv-native-controls .rv-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:999px;background:var(--rv-ui-badge-bg);color:var(--rv-ui-badge-fg);font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;padding:0 4px;line-height:1;pointer-events:none}.rv-native-controls .rv-badge{position:absolute;inset-block-start:-6px;inset-inline-end:-6px;min-width:18px;height:18px;border-radius:999px;background:var(--rv-ui-badge-bg);color:var(--rv-ui-badge-fg);font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;pointer-events:none}.rv-native-controls button.rv-badge--inline{border:0;appearance:none;font-family:inherit;box-shadow:none;cursor:pointer;pointer-events:auto}.rv-native-controls button.rv-badge--inline:focus-visible{outline:2px solid var(--rv-ui-accent-text);outline-offset:2px}.rv-native-controls .rv-badge--inline:is(.rv-badge--neutral,.rv-badge--accent){min-height:20px;height:auto;padding:2px 7px;font-size:12px}.rv-native-controls .rv-badge--neutral{background:var(--rv-ui-surface-hover);color:var(--rv-ui-text-muted)}.rv-native-controls .rv-badge--accent{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text))}.rv-native-controls .rv-badge--rounded{border-radius:4px}.rv-native-controls .rv-btn:disabled .rv-badge,.rv-native-controls .rv-btn[disabled] .rv-badge{background:var(--rv-ui-badge-disabled-bg);color:var(--rv-ui-badge-disabled-fg)}.rv-native-controls .rv-svg-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:var(--rv-icon-size, 14px);height:var(--rv-icon-size, 14px);line-height:1}.rv-native-controls .rv-svg-icon>svg{display:block;width:var(--rv-icon-size, 14px);height:var(--rv-icon-size, 14px);fill:currentColor}.rv-native-controls .rv-btn-icon{box-sizing:border-box;flex:none;width:var(--rv-icon-button-size, 32px);height:var(--rv-icon-button-size, 32px);padding:6px}.rv-native-controls .rv-btn-icon[aria-pressed=true],.rv-native-controls .rv-btn-icon[data-active=true]{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-fg)}.rv-native-controls .rv-btn-icon{position:relative;overflow:visible}.rv-native-controls .rv-btn-icon .rv-badge{position:absolute;inset-block-start:-5px;inset-inline-end:-6px;min-width:16px;height:16px;padding:0 4px;font-size:10px;line-height:16px;pointer-events:none}.rv-native-controls .rv-history-controls{display:flex;align-items:center;gap:12px;padding-block:5px;padding-inline-end:6px}.rv-native-controls .rv-btn-icon:disabled{pointer-events:auto}.rv-native-controls .rv-toolbar--surface{--rv-icon-size: 18px;display:inline-flex;align-items:center;flex-wrap:wrap;width:fit-content;max-width:100%;gap:3px;padding:4px;border:1px solid var(--rv-ui-border);border-radius:10px;background:var(--rv-ui-surface);box-shadow:0 4px 10px -3px var(--rv-ui-shadow)}.rv-native-controls .rv-toolbar--surface>.rv-btn-icon[aria-pressed=true]{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-fg)}.rv-native-controls .rv-toolbar--surface>.rv-btn-icon[aria-pressed=true]:hover:not(:disabled){background:var(--rv-ui-selected-bg)}.rv-native-controls .rv-svg-icon>svg[fill=none]{fill:none}.rv-native-controls .rv-choice-chip--composite{position:relative;display:inline-flex;align-items:center;gap:4px;cursor:default}.rv-native-controls .rv-choice-chip--composite .rv-choice-chip-label{min-width:0}.rv-native-controls .rv-choice-chip--composite button.rv-choice-chip-label{appearance:none;border:0;padding:0;margin:0;background:rgba(0,0,0,0);color:inherit;font:inherit;cursor:pointer}.rv-native-controls .rv-choice-chip--composite button.rv-choice-chip-label:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-choice-chip--composite[aria-disabled=true]{opacity:.5}.rv-native-controls button.rv-choice-chip-info{box-sizing:border-box;min-width:24px;min-height:24px;box-shadow:none;display:inline-grid;width:24px;height:24px;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,0);color:var(--rv-ui-text-muted);font:600 13px/1 system-ui,sans-serif;cursor:pointer;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls button.rv-choice-chip-info:hover,.rv-native-controls button.rv-choice-chip-info:focus-visible{background:color-mix(in srgb, currentColor 10%, transparent);color:var(--rv-filter-active-icon-color, var(--rv-ui-accent-text))}.rv-native-controls button.rv-choice-chip-info:focus-visible,.rv-native-controls .rv-choice-chip .rv-chip-remove:focus-visible{outline:2px solid var(--rv-filter-active-icon-color, var(--rv-ui-accent));outline-offset:1px}.rv-native-controls .rv-choice-chip[data-color=true]:is([aria-pressed=true],[data-selected=true]){border-color:rgba(0,0,0,0);background:color-mix(in srgb, var(--rv-choice-chip-color) 9%, var(--rv-ui-surface));color:var(--rv-ui-text)}.rv-native-controls .rv-btn-tab{min-height:40px;padding:0 8px;border:0;border-radius:0;background:rgba(0,0,0,0);color:var(--rv-tab-color, var(--rv-ui-text-muted));font-size:14px;font-weight:500}.rv-native-controls .rv-btn-tab::after{position:absolute;inset-inline:8px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:rgba(0,0,0,0);content:""}.rv-native-controls .rv-btn-tab:hover:not(:disabled),.rv-native-controls .rv-btn-tab[aria-selected=true]{color:var(--rv-tab-accent, var(--rv-ui-accent-text))}.rv-native-controls .rv-btn-tab[aria-selected=true]::after{background:var(--rv-tab-accent, var(--rv-ui-accent-text))}.rv-native-controls .rv-btn-tab:focus-visible{z-index:2;border-radius:6px;outline-color:var(--rv-tab-accent, var(--rv-ui-accent-text));outline-offset:-4px;box-shadow:none}.rv-native-controls .rv-btn-link{min-height:30px;padding:0 7px;gap:6px;border:0;border-radius:6px;background:rgba(0,0,0,0);color:var(--rv-ui-accent-text);font-weight:400;text-decoration:none}.rv-native-controls .rv-btn-link svg{width:12px;height:12px;fill:currentColor}.rv-native-controls .rv-btn-link:hover:not(:disabled){background:rgba(0,0,0,0);text-decoration:underline}.rv-native-controls .rv-btn-link:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px;box-shadow:none}@media(forced-colors: active){.rv-native-controls :is(.rv-btn,.rv-btn-solid,.rv-btn-primary,.rv-btn-ghost,.rv-btn-link,.rv-control,.rv-choice-chip,.rv-segmented-switch-item,.rv-rating-choice):focus-visible{outline:2px solid Highlight;outline-offset:2px}}.rv-native-controls .rv-btn.rv-btn-busy:disabled{pointer-events:auto;cursor:progress}.rv-native-controls .rv-btn.rv-btn-busy:not(.rv-btn-busy-disabled):disabled{opacity:1}.rv-native-controls .rv-button-spinner{display:block;box-sizing:border-box;width:1em;height:1em;border:2px solid var(--rv-ui-border);border-block-start-color:var(--rv-ui-accent);border-radius:50%;animation:rv-ui-spin calc(var(--rv-ui-motion-normal, 160ms)*6.25) linear infinite;flex:0 0 auto;border-color:color-mix(in srgb, currentColor 30%, transparent);border-block-start-color:currentColor}.rv-native-controls .rv-btn-busy.rv-btn-icon>:not(.rv-button-spinner){display:none}.rv-native-controls .rv-btn-rounded.rv-btn-rounded{border-radius:9999px}.rv-native-controls .rv-btn-rounded[aria-disabled=true]{opacity:.5;pointer-events:none}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-native-controls .rv-form-section{display:grid;gap:14px;padding:16px;border:1px solid var(--rv-form-border, var(--rv-ui-border));border-radius:10px;background:var(--rv-form-section-bg, transparent)}.rv-native-controls .rv-form-section__heading{display:grid;gap:3px}.rv-native-controls .rv-form-section__title{margin:0;color:inherit;font-size:13px;font-weight:var(--rv-ui-font-weight-medium, 500);line-height:1.35}.rv-native-controls .rv-form-section__description,.rv-native-controls .rv-form-description{margin:0;color:var(--rv-dialog-muted, var(--rv-ui-text-muted));font-size:12px;line-height:1.45}.rv-native-controls .rv-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}.rv-native-controls .rv-field{display:grid;align-content:start;gap:6px;min-width:0}.rv-native-controls .rv-field[hidden]{display:none}.rv-native-controls .rv-field--wide{grid-column:1/-1}.rv-native-controls .rv-field__label{color:inherit;font-size:12px;font-weight:var(--rv-ui-font-weight-medium, 500);line-height:1.35}.rv-native-controls .rv-field__hint{color:var(--rv-dialog-muted, var(--rv-ui-text-muted));font-size:11px;line-height:1.35}.rv-native-controls .rv-control{appearance:none;box-sizing:border-box;width:100%;min-width:0;box-sizing:border-box;min-height:var(--rv-control-height, 32px);padding:var(--rv-control-padding, 6px 12px);font-family:inherit;font-size:var(--rv-control-font-size, 0.875rem);line-height:1;border:1px solid var(--rv-control-border, var(--rv-ui-border));border-radius:var(--rv-control-radius, 8px);background-color:var(--rv-control-bg, var(--rv-ui-surface-sunken));color:var(--rv-control-color, inherit);color-scheme:var(--rv-ui-color-scheme, normal);transition:border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-control::placeholder{color:var(--rv-ui-text-muted);opacity:.8}.rv-native-controls .rv-control:hover:not(:disabled):not([readonly]){border-color:var(--rv-ui-border-strong)}.rv-native-controls .rv-control:focus{transition:none;outline:none;border-color:var(--rv-ui-accent);box-shadow:0 0 0 3px var(--rv-ui-focus-ring)}.rv-native-controls .rv-control:disabled{cursor:not-allowed;opacity:var(--rv-control-disabled-opacity, 0.55)}.rv-native-controls .rv-control[readonly]{background-color:var(--rv-ui-surface);border-style:dashed}.rv-native-controls .rv-control[aria-invalid=true]{border-color:var(--rv-ui-danger)}.rv-native-controls .rv-control[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--rv-ui-danger) 20%, transparent)}.rv-native-controls textarea.rv-control{min-height:var(--rv-textarea-height, 92px);resize:vertical}.rv-native-controls [dir=ltr]{--rv-select-caret-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%}.rv-native-controls [dir=rtl]{--rv-select-caret-position: 11px 50%, 16px 50%}.rv-native-controls select.rv-control{padding-inline-end:34px;background-image:linear-gradient(45deg, transparent 50%, currentColor 50%),linear-gradient(135deg, currentColor 50%, transparent 50%);background-position:var(--rv-select-caret-position, calc(100% - 16px) 50%, calc(100% - 11px) 50%);background-repeat:no-repeat;background-size:5px 5px}.rv-native-controls select.rv-control[multiple]{background-image:none;padding-inline-end:10px}.rv-native-controls .rv-control--compact{--rv-control-font-size: 12px;--rv-control-height: 30px;--rv-control-padding: 5px 8px;--rv-control-radius: var(--rv-ui-radius, 6px);font-size:12px}.rv-native-controls select.rv-control--compact{padding-inline-end:28px}.rv-native-controls .rv-radio{width:16px;height:16px;margin:0;flex:none;accent-color:var(--rv-ui-accent)}.rv-native-controls .rv-radio:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-radio:disabled{opacity:.55;cursor:not-allowed}@media(max-width: 560px){.rv-native-controls .rv-form-grid{grid-template-columns:1fr}.rv-native-controls .rv-field--wide{grid-column:auto}}.rv-native-controls .rv-disclosure-summary{display:flex;align-items:center;gap:8px;min-width:0;cursor:pointer;list-style:none}.rv-native-controls .rv-disclosure-summary::-webkit-details-marker{display:none}.rv-native-controls .rv-disclosure-summary__label{min-width:0}.rv-native-controls .rv-disclosure-summary__icon{display:inline-flex;align-items:center;justify-content:center;flex:none}.rv-native-controls .rv-native-slider{width:100%;min-width:0;accent-color:var(--rv-ui-accent);cursor:pointer}.rv-native-controls .rv-native-slider:disabled{opacity:.55;cursor:not-allowed}.rv-native-controls .rv-native-slider:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-native-controls revo-grid{--rv-ui-checkbox-bg: var(--revo-row-select-checkbox-bg, var(--rv-ui-surface));--rv-ui-checkbox-border: var(--rv-column-dialog-check-border, var(--revo-row-select-checkbox-border, var(--rv-ui-border-strong)));--rv-ui-checkbox-checked: var(--rv-column-dialog-check-bg, var(--revo-row-select-checkbox-checked, var(--rv-ui-accent)));--rv-ui-checkbox-check: var(--revo-row-select-checkbox-check, var(--rv-ui-accent-fg));--rv-ui-checkbox-focus: var(--revo-row-select-checkbox-focus, var(--rv-ui-focus-ring))}.rv-native-controls revo-grid[theme^=dark]{--rv-ui-checkbox-bg: var(--revo-row-select-checkbox-bg, var(--rv-ui-surface-sunken));--rv-ui-checkbox-border: var(--rv-column-dialog-check-border, var(--revo-row-select-checkbox-border, var(--rv-ui-border-strong)));--rv-ui-checkbox-checked: var(--rv-column-dialog-check-bg, var(--revo-row-select-checkbox-checked, var(--rv-ui-accent)));--rv-ui-checkbox-focus: var(--revo-row-select-checkbox-focus, var(--rv-ui-focus-ring))}.rv-native-controls .rv-checkbox{appearance:none;-webkit-appearance:none;background-color:var(--rv-ui-checkbox-bg, var(--rv-ui-surface));border:2px solid var(--rv-ui-checkbox-border, var(--rv-ui-border-strong));border-radius:4px;box-sizing:border-box;color:var(--rv-ui-checkbox-check, var(--rv-ui-accent-fg));cursor:pointer;display:inline-grid;flex:0 0 auto;height:17px;margin:0;place-content:center;vertical-align:middle;width:17px;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-checkbox::after{content:"";display:block;transform:scale(0)}.rv-native-controls .rv-checkbox:checked,.rv-native-controls .rv-checkbox:indeterminate{background-color:var(--rv-ui-checkbox-checked, var(--rv-ui-accent));border-color:var(--rv-ui-checkbox-checked, var(--rv-ui-accent))}.rv-native-controls .rv-checkbox:checked::after{border:solid currentColor;border-width:0 2px 2px 0;height:8px;transform:translateY(-1px) rotate(45deg) scale(1);width:4px}.rv-native-controls .rv-checkbox:indeterminate::after{background:currentColor;border-radius:1px;height:2px;transform:scale(1);width:9px}.rv-native-controls .rv-checkbox:focus-visible{box-shadow:0 0 0 3px var(--rv-ui-checkbox-focus, var(--rv-ui-focus-ring));outline:none}.rv-native-controls .rv-checkbox:disabled{cursor:not-allowed;opacity:.55}.rv-native-controls .rv-checkbox-control{display:inline-flex;align-items:center;gap:9px;min-width:0;cursor:pointer}.rv-native-controls .rv-checkbox-control__copy{display:inline-flex;flex-direction:column;min-width:0}.rv-native-controls .rv-checkbox-control__label{line-height:1.25}.rv-native-controls .rv-checkbox-control__description{color:var(--rv-ui-text-muted);font-size:.85em;line-height:1.3}.rv-native-controls .rv-checkbox-control:has(.rv-checkbox:disabled){cursor:not-allowed;opacity:.55}.rv-native-controls[data-theme^=dark]{--rv-ui-color-scheme: dark;--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix(in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface));--rv-ui-warning-surface: color-mix(in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface));--rv-ui-success-surface: color-mix(in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface));--rv-ui-overlay: color-mix(in srgb, black 60%, transparent);--rv-ui-shadow: color-mix(in srgb, black 32%, transparent);--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix(in srgb, var(--rv-ui-accent, #2563eb) 45%, white);--rv-ui-field-surface: #262626;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-canvas: #0a0a0a;--rv-ui-surface: #1f1f1f;--rv-ui-surface-elevated: #262626;--rv-ui-surface-sunken: #111111;--rv-ui-surface-hover: #2f2f2f;--rv-ui-border: #3a3a3a;--rv-ui-border-strong: #525252;--rv-ui-text: #f5f5f5;--rv-ui-text-muted: #a3a3a3;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix(in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface));--rv-dropdown-container-tag-background: #2b2b2b;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #f5f5f5;--rv-ui-selected-accent-fg: var(--rv-ui-accent-text);--rv-ui-danger: #fca5a5;--rv-ui-warning: #fcd34d;--rv-ui-success: #86efac;--rv-ui-btn-danger-outline: #fca5a5;--rv-ui-btn-danger-outline-hover: rgba(252, 165, 165, 0.10);color-scheme:dark;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-text-weight: 45%;--rv-ui-accent-text-base: white;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 45%, white);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover:var(--rv-ui-border-strong);--rv-ui-btn-bg: var(--rv-ui-surface-elevated);--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-secondary-bg: var(--rv-ui-surface);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-ghost-hover-bg: rgba(255, 255, 255, 0.08);--rv-ui-btn-ghost-active-bg: rgba(255, 255, 255, 0.14);--rv-ui-switch-track-off: #666666;--rv-ui-switch-thumb: var(--rv-ui-text);--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);--rv-ui-badge-disabled-bg: #52525b;--rv-ui-badge-disabled-fg: #e4e4e7}@media(prefers-color-scheme: dark){.rv-native-controls[data-theme=auto]{--rv-ui-color-scheme: dark;--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix(in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface));--rv-ui-warning-surface: color-mix(in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface));--rv-ui-success-surface: color-mix(in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface));--rv-ui-overlay: color-mix(in srgb, black 60%, transparent);--rv-ui-shadow: color-mix(in srgb, black 32%, transparent);--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix(in srgb, var(--rv-ui-accent, #2563eb) 45%, white);--rv-ui-field-surface: #262626;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-canvas: #0a0a0a;--rv-ui-surface: #1f1f1f;--rv-ui-surface-elevated: #262626;--rv-ui-surface-sunken: #111111;--rv-ui-surface-hover: #2f2f2f;--rv-ui-border: #3a3a3a;--rv-ui-border-strong: #525252;--rv-ui-text: #f5f5f5;--rv-ui-text-muted: #a3a3a3;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix(in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface));--rv-dropdown-container-tag-background: #2b2b2b;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #f5f5f5;--rv-ui-selected-accent-fg: var(--rv-ui-accent-text);--rv-ui-danger: #fca5a5;--rv-ui-warning: #fcd34d;--rv-ui-success: #86efac;--rv-ui-btn-danger-outline: #fca5a5;--rv-ui-btn-danger-outline-hover: rgba(252, 165, 165, 0.10);color-scheme:dark;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-text-weight: 45%;--rv-ui-accent-text-base: white;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 45%, white);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover:var(--rv-ui-border-strong);--rv-ui-btn-bg: var(--rv-ui-surface-elevated);--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-secondary-bg: var(--rv-ui-surface);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-ghost-hover-bg: rgba(255, 255, 255, 0.08);--rv-ui-btn-ghost-active-bg: rgba(255, 255, 255, 0.14);--rv-ui-switch-track-off: #666666;--rv-ui-switch-thumb: var(--rv-ui-text);--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);--rv-ui-badge-disabled-bg: #52525b;--rv-ui-badge-disabled-fg: #e4e4e7}}
1
+ :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(0.2, 0, 0, 1)}[data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}[data-rv-ui-motion=off],[data-rv-ui-motion=off]::before,[data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}[data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}[data-rv-ui-motion=off] *,[data-rv-ui-motion=off] *::before,[data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}[data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}[data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){:root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}:where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,:where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-disclosure-summary.rv-disclosure-summary--compact{display:inline-flex;width:fit-content;max-width:100%;margin-block:8px;text-align:start}.rv-disclosure-summary.rv-disclosure-summary--compact::before{content:"";flex:none;width:6px;height:6px;margin-inline:1px 3px;border-inline-end:1.5px solid currentColor;border-block-end:1.5px solid currentColor;transform:rotate(-45deg);transition:transform var(--rv-ui-motion-fast, 120ms) ease}details[open]>.rv-disclosure-summary--compact::before{transform:rotate(45deg)}@media(prefers-reduced-motion: reduce){.rv-disclosure-summary--compact::before{transition:none}}@supports(interpolate-size: allow-keywords) and (transition-behavior: allow-discrete){:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields){interpolate-size:allow-keywords}:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields)::details-content{block-size:0;opacity:0;overflow:clip;overflow-clip-margin:4px;transition:block-size var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease-out),opacity var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease-out),content-visibility var(--rv-ui-motion-normal, 160ms) allow-discrete}:where(.rv-ui details,.rv-disclosure,.rv-format-inspector-section,.rv-configurator-available-fields)[open]::details-content{block-size:auto;opacity:1}}.rv-native-controls{--rv-ui-color-scheme: light;color-scheme:light;--rv-ui-overlay: color-mix(in srgb, black 38%, transparent);--rv-ui-shadow: color-mix(in srgb, black 10%, transparent);--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix( in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface) );--rv-ui-warning-surface: color-mix( in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface) );--rv-ui-success-surface: color-mix( in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface) );--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix( in srgb, var(--rv-ui-accent, #2563eb) 90%, black );--rv-ui-field-surface: #f6f6f6;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-font-weight-medium: 500;--rv-ui-canvas: #f5f5f5;--rv-ui-surface: #ffffff;--rv-ui-surface-elevated: #ffffff;--rv-ui-surface-sunken: #f8f8f8;--rv-ui-surface-hover: #f1f1f1;--rv-ui-border: #e0e0e0;--rv-ui-border-strong: #cccccc;--rv-ui-text: #171717;--rv-ui-text-muted: #666666;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix( in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface) );--rv-dropdown-container-tag-background: #eeeeee;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #171717;--rv-ui-selected-accent-fg: color-mix( in srgb, var(--rv-ui-accent) 65%, black );--rv-ui-danger: #b91c1c;--rv-ui-warning: #b45309;--rv-ui-success: #15803d;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-fg: #ffffff;--rv-ui-accent-text-weight: 90%;--rv-ui-accent-text-base: black;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 90%, black);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover: var(--rv-ui-border-strong);--rv-ui-btn-bg: #262626;--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-fg: #ffffff;--rv-ui-btn-secondary-bg: var(--rv-ui-border);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-border-strong);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-danger-bg: transparent;--rv-ui-btn-danger-bg-hover: rgba(220, 38, 38, 0.08);--rv-ui-btn-danger-fg: var(--rv-ui-danger);--rv-ui-btn-danger-outline: #dc2626;--rv-ui-btn-danger-outline-hover: rgba(220, 38, 38, 0.08);--rv-ui-btn-ghost-hover-bg: rgba(0, 0, 0, 0.06);--rv-ui-btn-ghost-active-bg: rgba(0, 0, 0, 0.10);--rv-ui-switch-track-off: #9ca3af;--rv-ui-switch-thumb: #ffffff;--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-badge-bg: var(--rv-ui-accent);--rv-ui-badge-fg: var(--rv-ui-accent-fg);--rv-ui-badge-disabled-bg: #a1a1aa;--rv-ui-badge-disabled-fg: #ffffff;--rv-ui-radius: 6px;--rv-ui-transition: var(--rv-ui-motion-fast, 120ms);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 35%, transparent);--rv-control-height: 32px;--rv-control-padding: 6px 9px;color:var(--rv-ui-text)}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(0.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}@keyframes rv-ui-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion: reduce){.rv-native-controls .rv-spinner>span{animation:none}}.rv-native-controls .rv-btn-link,.rv-native-controls .rv-btn-tab,.rv-native-controls .rv-btn-ghost,.rv-native-controls .rv-btn-secondary,.rv-native-controls .rv-btn-danger-ghost,.rv-native-controls .rv-btn-danger,.rv-native-controls .rv-btn-danger-outline,.rv-native-controls .rv-btn-primary,.rv-native-controls .rv-btn-solid,.rv-native-controls .rv-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:4px;border-radius:var(--rv-ui-radius);box-sizing:border-box;min-height:var(--rv-control-height, 32px);padding:var(--rv-control-padding, 6px 12px);font-family:inherit;font-size:var(--rv-control-font-size, 0.875rem);line-height:1;border:1px solid rgba(0,0,0,0);font-weight:var(--rv-ui-button-font-weight, 500);cursor:pointer;user-select:none;box-shadow:none;text-decoration:none;white-space:nowrap;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-link:focus-visible,.rv-native-controls .rv-btn-tab:focus-visible,.rv-native-controls .rv-btn-ghost:focus-visible,.rv-native-controls .rv-btn-secondary:focus-visible,.rv-native-controls .rv-btn-danger-ghost:focus-visible,.rv-native-controls .rv-btn-danger:focus-visible,.rv-native-controls .rv-btn-danger-outline:focus-visible,.rv-native-controls .rv-btn-primary:focus-visible,.rv-native-controls .rv-btn-solid:focus-visible,.rv-native-controls .rv-btn:focus-visible{outline:2px solid var(--rv-ui-accent-text);outline-offset:2px;box-shadow:0 0 0 2px var(--rv-ui-focus-ring)}.rv-native-controls .rv-btn-link:disabled,.rv-native-controls .rv-btn-tab:disabled,.rv-native-controls .rv-btn-ghost:disabled,.rv-native-controls .rv-btn-secondary:disabled,.rv-native-controls .rv-btn-danger-ghost:disabled,.rv-native-controls .rv-btn-danger:disabled,.rv-native-controls .rv-btn-danger-outline:disabled,.rv-native-controls .rv-btn-primary:disabled,.rv-native-controls .rv-btn-solid:disabled,.rv-native-controls .rv-btn:disabled,.rv-native-controls [disabled].rv-btn-link,.rv-native-controls [disabled].rv-btn-tab,.rv-native-controls [disabled].rv-btn-ghost,.rv-native-controls [disabled].rv-btn-secondary,.rv-native-controls [disabled].rv-btn-danger-ghost,.rv-native-controls [disabled].rv-btn-danger,.rv-native-controls [disabled].rv-btn-danger-outline,.rv-native-controls [disabled].rv-btn-primary,.rv-native-controls [disabled].rv-btn-solid,.rv-native-controls [disabled].rv-btn{pointer-events:none;opacity:.5}.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)){background:var(--rv-ui-btn-outline-bg);border-color:var(--rv-ui-btn-outline-border);color:var(--rv-ui-btn-outline-fg)}.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)):hover,.rv-native-controls .rv-btn:where(:not(.rv-btn-solid,.rv-btn-primary,.rv-btn-danger,.rv-btn-danger-outline,.rv-btn-danger-ghost,.rv-btn-secondary,.rv-btn-ghost,.rv-btn-link,.rv-btn-tab)):active{background:var(--rv-ui-btn-outline-bg-hover);border-color:var(--rv-ui-btn-outline-border-hover)}.rv-native-controls .rv-btn[hidden]:not([hidden=until-found]){display:none}.rv-native-controls .rv-btn-solid{background:var(--rv-ui-btn-bg);color:var(--rv-ui-btn-fg)}.rv-native-controls .rv-btn-solid:hover{background:var(--rv-ui-btn-bg-hover)}.rv-native-controls .rv-btn-solid:active{background:var(--rv-ui-btn-bg-hover)}.rv-native-controls .rv-btn-primary{background:var(--rv-ui-accent);color:var(--rv-ui-accent-fg)}.rv-native-controls .rv-btn-primary:hover{background:var(--rv-ui-accent-hover)}.rv-native-controls .rv-btn-primary:active{background:var(--rv-ui-accent-hover)}.rv-native-controls .rv-btn-danger,.rv-native-controls .rv-btn-danger-outline{border-color:var(--rv-ui-btn-danger-outline);background:rgba(0,0,0,0);color:var(--rv-ui-btn-danger-outline)}.rv-native-controls .rv-btn-danger:hover,.rv-native-controls .rv-btn-danger:active,.rv-native-controls .rv-btn-danger-outline:hover,.rv-native-controls .rv-btn-danger-outline:active{background:var(--rv-ui-btn-danger-outline-hover)}.rv-native-controls .rv-btn-danger-ghost{background:var(--rv-ui-btn-danger-bg);color:var(--rv-ui-btn-danger-fg)}.rv-native-controls .rv-btn-danger-ghost:hover,.rv-native-controls .rv-btn-danger-ghost:active{background:var(--rv-ui-btn-danger-bg-hover)}.rv-native-controls .rv-btn-secondary{background:var(--rv-ui-btn-secondary-bg);color:var(--rv-ui-btn-secondary-fg)}.rv-native-controls .rv-btn-secondary:hover{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-secondary:active{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-ghost{background:rgba(0,0,0,0);color:inherit}.rv-native-controls .rv-btn-ghost:hover{background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-btn-ghost:active{background:var(--rv-ui-btn-ghost-active-bg)}.rv-native-controls .rv-switch{appearance:none;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;margin:0;padding:0;border:0;background:rgba(0,0,0,0);color:inherit;cursor:pointer;font:inherit;text-align:start;user-select:none}.rv-native-controls .rv-switch:focus-visible{border-radius:8px;outline:2px solid var(--rv-ui-accent);outline-offset:3px}.rv-native-controls .rv-switch:disabled{cursor:default;opacity:.55}.rv-native-controls .rv-switch-label{min-width:0;line-height:1.35}.rv-native-controls label.rv-switch-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;user-select:none}.rv-native-controls .rv-switch-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rv-native-controls .rv-switch-input:checked+.rv-switch-track{background:var(--rv-ui-accent)}.rv-native-controls .rv-switch-input:checked+.rv-switch-track .rv-switch-thumb{inset-inline-start:15px}.rv-native-controls .rv-switch-input:focus-visible+.rv-switch-track{outline:2px solid var(--rv-ui-accent);outline-offset:3px}.rv-native-controls .rv-switch-track{position:relative;display:inline-flex;align-items:center;flex-shrink:0;width:34px;height:19px;padding:2px;box-sizing:border-box;border-radius:999px;background:var(--rv-ui-switch-track-off);transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-switch-thumb{position:relative;inset-inline-start:0;width:15px;height:15px;border-radius:50%;background:var(--rv-ui-switch-thumb);box-shadow:0 1px 3px var(--rv-ui-shadow);transition:inset-inline-start var(--rv-ui-motion-normal, 160ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-switch[aria-checked=true] .rv-switch-track{background:var(--rv-ui-accent)}.rv-native-controls .rv-switch[aria-checked=true] .rv-switch-thumb{inset-inline-start:15px}.rv-native-controls .rv-btn-group{display:inline-flex;align-items:stretch;gap:0;border-radius:var(--rv-ui-radius);border:1px solid var(--rv-ui-group-border);overflow:visible}.rv-native-controls .rv-btn-group>.rv-btn{border:0;border-radius:0}.rv-native-controls .rv-btn-group>.rv-btn+.rv-btn{border-inline-start:1px solid var(--rv-ui-group-border)}.rv-native-controls .rv-btn-group>.rv-btn:first-child{border-start-start-radius:calc(var(--rv-ui-radius) - 1px);border-end-start-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn:last-child{border-start-end-radius:calc(var(--rv-ui-radius) - 1px);border-end-end-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn:focus-visible{z-index:1}.rv-native-controls .rv-btn-group>.rv-btn-group-item:first-child>span{border-start-start-radius:calc(var(--rv-ui-radius) - 1px);border-end-start-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group>.rv-btn-group-item:last-child>span{border-start-end-radius:calc(var(--rv-ui-radius) - 1px);border-end-end-radius:calc(var(--rv-ui-radius) - 1px)}.rv-native-controls .rv-btn-group-item{position:relative;display:inline-flex}.rv-native-controls .rv-btn-group-item input[type=radio],.rv-native-controls .rv-btn-group-item input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.rv-native-controls .rv-btn-group-item input[type=radio]:checked+span,.rv-native-controls .rv-btn-group-item input[type=checkbox]:checked+span{background:var(--rv-ui-accent);color:var(--rv-ui-accent-fg)}.rv-native-controls .rv-btn-group-item span{display:block;padding:6px 16px;font-size:.875rem;cursor:pointer;user-select:none;color:inherit;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-group-item+.rv-btn-group-item span{border-inline-start:1px solid var(--rv-ui-group-border)}.rv-native-controls .rv-btn-group-item:hover span{background:var(--rv-ui-group-hover-bg)}.rv-native-controls .rv-chip-remove{appearance:none;display:inline-flex;align-items:center;justify-content:center;background:rgba(0,0,0,0);border:0;border-radius:calc(var(--rv-ui-radius)/2);color:inherit;cursor:pointer;font-size:16px;line-height:1;opacity:.5;padding:0 2px;transition:opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-chip-remove:hover:not(:disabled){opacity:1;background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-chip-remove:disabled{cursor:not-allowed;opacity:.5}.rv-native-controls .rv-btn-pill{appearance:none;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid var(--rv-ui-group-border);border-radius:999px;background:var(--rv-ui-btn-secondary-bg);color:inherit;font-size:.8rem;cursor:pointer;white-space:nowrap;line-height:1.4;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-btn-pill:hover{background:var(--rv-ui-btn-secondary-bg-hover)}.rv-native-controls .rv-btn-pill:active{opacity:.75}.rv-native-controls .rv-btn-pill:disabled,.rv-native-controls .rv-btn-pill[disabled]{pointer-events:none;opacity:.5}.rv-native-controls .rv-switch-sm .rv-switch-track{width:28px;height:16px}.rv-native-controls .rv-switch-sm .rv-switch-thumb{width:12px;height:12px}.rv-native-controls .rv-switch-sm[aria-checked=true] .rv-switch-thumb{inset-inline-start:12px}.rv-native-controls .rv-switch-sm .rv-switch-input:checked+.rv-switch-track .rv-switch-thumb{inset-inline-start:12px}@media(prefers-reduced-motion: reduce){.rv-native-controls .rv-switch-track,.rv-native-controls .rv-switch-thumb{transition:none}}.rv-native-controls .rv-choice-chips{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.rv-native-controls .rv-choice-chips--scrollable{display:flex;flex-wrap:nowrap;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;padding-block:3px;--rv-choice-chips-fade-left: 0px;--rv-choice-chips-fade-right: 0px;mask-image:linear-gradient(to right, transparent, #000 var(--rv-choice-chips-fade-left), #000 calc(100% - var(--rv-choice-chips-fade-right)), transparent)}.rv-native-controls .rv-choice-chips--scrollable[data-scroll-edges~=left]{--rv-choice-chips-fade-left: 12px}.rv-native-controls .rv-choice-chips--scrollable[data-scroll-edges~=right]{--rv-choice-chips-fade-right: 36px}.rv-native-controls .rv-choice-chips--scrollable::-webkit-scrollbar{display:none}.rv-native-controls .rv-choice-chips--scrollable>.rv-choice-chip{flex:none}.rv-native-controls .rv-choice-chip{appearance:none;min-height:29px;padding:0 11px;border:1px solid rgba(0,0,0,0);border-radius:8px;background:var(--rv-ui-surface-sunken);color:var(--rv-ui-text);cursor:pointer;font:inherit;font-size:13px;font-weight:400;line-height:1;white-space:nowrap;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-choice-chip:hover:not(:disabled){background:var(--rv-ui-surface-hover)}.rv-native-controls .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chip[data-selected=true]{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg));color:var(--rv-ui-selected-fg);font-weight:400}.rv-native-controls .rv-choice-chip:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-choice-chip:disabled{cursor:default;opacity:.5}.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip{border-color:var(--rv-ui-border);background:var(--rv-ui-surface)}.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chips--outlined .rv-choice-chip[data-selected=true]{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg))}.rv-native-controls .rv-choice-chip[aria-pressed=true],.rv-native-controls .rv-choice-chip[aria-pressed=true]:hover{border-color:rgba(0,0,0,0);background:var(--rv-ui-choice-chip-selected-bg, var(--rv-ui-selected-bg));color:var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text));font-weight:500}.rv-native-controls .rv-choice-chips--small .rv-choice-chip{min-height:24px;padding:0 9px;border-radius:7px;font-size:12px}.rv-native-controls .group-expand{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;border:none;border-radius:var(--rv-ui-radius);background:rgba(0,0,0,0);color:inherit;font-size:14px;line-height:1;cursor:pointer;padding:0;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .group-expand:hover{background:var(--rv-ui-btn-ghost-hover-bg)}.rv-native-controls .rv-segmented-switch,.rv-native-controls .rv-value-selection-editor{--rv-ui-accent-text: color-mix( in srgb, var(--rv-ui-accent) var(--rv-ui-accent-text-weight, 90%), var(--rv-ui-accent-text-base, black) )}.rv-native-controls .rv-segmented-switch{--rv-segmented-theme-item-hover-bg: color-mix( in srgb, var(--rv-ui-text) 8%, var(--rv-ui-surface-sunken) );display:inline-flex;box-sizing:border-box;height:37px;align-items:center;gap:2px;background:var(--rv-segmented-bg, var(--rv-ah-bg-up, var(--rv-segmented-theme-bg, var(--rv-ui-surface-sunken))));border:1px solid var(--rv-segmented-border, var(--rv-ah-border, transparent));border-radius:10px;padding:2px;box-shadow:none}.rv-native-controls :where(.dark,[data-theme^=dark],revo-grid[theme^=dark]) .rv-segmented-switch,.rv-native-controls .rv-segmented-switch[data-theme^=dark]{--rv-segmented-theme-bg: var(--rv-ui-surface-sunken);--rv-segmented-theme-border: var(--rv-ui-border);--rv-segmented-theme-item-color: var(--rv-ui-text);--rv-segmented-theme-item-hover-bg: var(--rv-ui-surface-hover);--rv-segmented-theme-item-hover-color: var(--rv-ui-text);--rv-segmented-theme-active-bg: var(--rv-ui-surface-elevated);--rv-segmented-theme-active-border: var(--rv-ui-border-strong);--rv-segmented-theme-active-color: var(--rv-ui-accent-text);--rv-segmented-theme-focus-outline: var(--rv-ui-surface-elevated)}.rv-native-controls .rv-segmented-switch-item{box-sizing:border-box;flex:1 1 auto;display:flex;appearance:none;height:31px;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(0,0,0,0);border-radius:7px;padding:0 14px;background:rgba(0,0,0,0);color:var(--rv-segmented-item-color, var(--rv-ah-text-2, var(--rv-segmented-theme-item-color, var(--rv-ui-text))));cursor:pointer;font:inherit;font-size:13px;font-weight:400;line-height:1;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-segmented-switch--icon-only .rv-segmented-switch-item{flex:none;width:30px;padding:0}.rv-native-controls .rv-segmented-switch-label{gap:5px;display:inline-flex;align-items:center;justify-content:center}.rv-native-controls .rv-segmented-switch-item:where(:not(.on)):hover:not(:disabled){background:var(--rv-segmented-item-hover-bg, var(--rv-segmented-theme-item-hover-bg, var(--rv-ui-surface-hover)));color:var(--rv-segmented-item-hover-color, var(--rv-ah-text-2, var(--rv-segmented-theme-item-hover-color, var(--rv-ui-text))))}.rv-native-controls .rv-segmented-switch-item.on{background:var(--rv-segmented-active-bg, var(--rv-ah-bg, var(--rv-segmented-theme-active-bg, var(--rv-ui-surface))));color:var(--rv-segmented-active-color, var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text)));font-weight:500;border-color:var(--rv-segmented-active-border, var(--rv-segmented-theme-active-border, var(--rv-ui-border)));box-shadow:none}.rv-native-controls .rv-segmented-switch-item:focus-visible{outline:2px solid var(--rv-segmented-focus-outline, var(--rv-ah-bg, var(--rv-segmented-theme-focus-outline, var(--rv-ui-text-muted))));box-shadow:0 0 0 4px var(--rv-segmented-focus-ring, color-mix(in srgb, var(--rv-ui-accent) 28%, transparent))}.rv-native-controls .rv-segmented-switch-item:disabled{cursor:not-allowed;color:var(--rv-ui-text-muted);opacity:.55}.rv-native-controls .rv-segmented-switch-count{font-family:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9.5px;padding:1px 5px;border-radius:4px;background:var(--rv-segmented-count-bg, var(--rv-ah-bg-up, var(--rv-ui-surface-sunken)));color:var(--rv-segmented-count-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));border:1px solid var(--rv-segmented-count-border, var(--rv-ah-border, var(--rv-ui-border)))}.rv-native-controls .rv-segmented-switch-item.on .rv-segmented-switch-count{background:var(--rv-segmented-active-count-bg, var(--rv-ah-bg-hover, var(--rv-ui-surface-sunken)));color:var(--rv-segmented-active-count-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)))}.rv-native-controls .rv-search-input{min-width:0;position:relative}.rv-native-controls .rv-search-input-icon{position:absolute;inset-inline-start:10px;top:50%;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);color:var(--rv-search-input-icon-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));pointer-events:none}.rv-native-controls .rv-search-input>input:is([type=search],[type=text]){box-sizing:border-box;width:100%;height:var(--rv-search-input-height, var(--rv-control-height, 32px));min-height:var(--rv-search-input-height, var(--rv-control-height, 32px));appearance:none;background:var(--rv-search-input-bg, var(--rv-ah-bg-input, var(--rv-ui-surface-sunken)));border:1px solid var(--rv-search-input-border, var(--rv-ah-border, var(--rv-ui-border)));border-radius:8px;padding-block:0;padding-inline:32px 38px;color:var(--rv-search-input-color, var(--rv-ah-text, var(--rv-ui-text)));outline:none;font:inherit;font-size:var(--rv-control-font-size, 0.875rem);transition:border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-search-input>input[type=search]::-webkit-search-cancel-button{appearance:none}.rv-native-controls .rv-search-input>input:is([type=search],[type=text])::placeholder{color:var(--rv-search-input-placeholder-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)))}.rv-native-controls .rv-search-input>input:is([type=search],[type=text]):focus{transition:none;border-color:var(--rv-search-input-focus-border, var(--rv-ah-border-strong, var(--rv-ui-border-strong)));background:var(--rv-search-input-focus-bg, var(--rv-ah-bg, var(--rv-ui-surface)))}.rv-native-controls .rv-search-input--no-icon>input:is([type=search],[type=text]){padding-inline-start:12px}.rv-native-controls .rv-search-input--no-shortcut>input:is([type=search],[type=text]){padding-inline-end:12px}.rv-native-controls .rv-search-input-shortcut{position:absolute;inset-inline-end:8px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--rv-search-input-shortcut-color, var(--rv-ah-text-2, var(--rv-ui-text-muted)));background:var(--rv-search-input-shortcut-bg, var(--rv-ah-canvas, var(--rv-ui-surface-elevated)));border:1px solid var(--rv-search-input-shortcut-border, var(--rv-ah-border, var(--rv-ui-border)));padding:1px 5px;border-radius:3px}.rv-native-controls .rv-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:999px;background:var(--rv-ui-badge-bg);color:var(--rv-ui-badge-fg);font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;padding:0 4px;line-height:1;pointer-events:none}.rv-native-controls .rv-badge{position:absolute;inset-block-start:-6px;inset-inline-end:-6px;min-width:18px;height:18px;border-radius:999px;background:var(--rv-ui-badge-bg);color:var(--rv-ui-badge-fg);font-size:10px;font-weight:500;font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;line-height:1;pointer-events:none}.rv-native-controls button.rv-badge--inline{border:0;appearance:none;font-family:inherit;box-shadow:none;cursor:pointer;pointer-events:auto}.rv-native-controls button.rv-badge--inline:focus-visible{outline:2px solid var(--rv-ui-accent-text);outline-offset:2px}.rv-native-controls .rv-badge--inline:is(.rv-badge--neutral,.rv-badge--accent){min-height:20px;height:auto;padding:2px 7px;font-size:12px}.rv-native-controls .rv-badge--neutral{background:var(--rv-ui-surface-hover);color:var(--rv-ui-text-muted)}.rv-native-controls .rv-badge--accent{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-accent-fg, var(--rv-ui-accent-text))}.rv-native-controls .rv-badge--rounded{border-radius:4px}.rv-native-controls .rv-btn:disabled .rv-badge,.rv-native-controls .rv-btn[disabled] .rv-badge{background:var(--rv-ui-badge-disabled-bg);color:var(--rv-ui-badge-disabled-fg)}.rv-native-controls .rv-svg-icon{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:var(--rv-icon-size, 14px);height:var(--rv-icon-size, 14px);line-height:1}.rv-native-controls .rv-svg-icon>svg{display:block;width:var(--rv-icon-size, 14px);height:var(--rv-icon-size, 14px);fill:currentColor}.rv-native-controls .rv-btn-icon{box-sizing:border-box;flex:none;width:var(--rv-icon-button-size, 32px);height:var(--rv-icon-button-size, 32px);padding:6px}.rv-native-controls .rv-btn-icon[aria-pressed=true],.rv-native-controls .rv-btn-icon[data-active=true]{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-fg)}.rv-native-controls .rv-btn-icon{position:relative;overflow:visible}.rv-native-controls .rv-btn-icon .rv-badge{position:absolute;inset-block-start:-5px;inset-inline-end:-6px;min-width:16px;height:16px;padding:0 4px;font-size:10px;line-height:16px;pointer-events:none}.rv-native-controls .rv-history-controls{display:flex;align-items:center;gap:12px;padding-block:5px;padding-inline-end:6px}.rv-native-controls .rv-btn-icon:disabled{pointer-events:auto}.rv-native-controls .rv-toolbar--surface{--rv-icon-size: 18px;display:inline-flex;align-items:center;flex-wrap:wrap;width:fit-content;max-width:100%;gap:3px;padding:4px;border:1px solid var(--rv-ui-border);border-radius:10px;background:var(--rv-ui-surface);box-shadow:0 4px 10px -3px var(--rv-ui-shadow)}.rv-native-controls .rv-toolbar--surface>.rv-btn-icon[aria-pressed=true]{background:var(--rv-ui-selected-bg);color:var(--rv-ui-selected-fg)}.rv-native-controls .rv-toolbar--surface>.rv-btn-icon[aria-pressed=true]:hover:not(:disabled){background:var(--rv-ui-selected-bg)}.rv-native-controls .rv-svg-icon>svg[fill=none]{fill:none}.rv-native-controls .rv-choice-chip--composite{position:relative;display:inline-flex;align-items:center;gap:4px;cursor:default}.rv-native-controls .rv-choice-chip--composite .rv-choice-chip-label{min-width:0}.rv-native-controls .rv-choice-chip--composite button.rv-choice-chip-label{appearance:none;border:0;padding:0;margin:0;background:rgba(0,0,0,0);color:inherit;font:inherit;cursor:pointer}.rv-native-controls .rv-choice-chip--composite button.rv-choice-chip-label:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-choice-chip--composite[aria-disabled=true]{opacity:.5}.rv-native-controls button.rv-choice-chip-info{box-sizing:border-box;min-width:24px;min-height:24px;box-shadow:none;display:inline-grid;width:24px;height:24px;flex:0 0 auto;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,0);color:var(--rv-ui-text-muted);font:600 13px/1 system-ui,sans-serif;cursor:pointer;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls button.rv-choice-chip-info:hover,.rv-native-controls button.rv-choice-chip-info:focus-visible{background:color-mix(in srgb, currentColor 10%, transparent);color:var(--rv-filter-active-icon-color, var(--rv-ui-accent-text))}.rv-native-controls button.rv-choice-chip-info:focus-visible,.rv-native-controls .rv-choice-chip .rv-chip-remove:focus-visible{outline:2px solid var(--rv-filter-active-icon-color, var(--rv-ui-accent));outline-offset:1px}.rv-native-controls .rv-choice-chip[data-color=true]:is([aria-pressed=true],[data-selected=true]){border-color:rgba(0,0,0,0);background:color-mix(in srgb, var(--rv-choice-chip-color) 9%, var(--rv-ui-surface));color:var(--rv-ui-text)}.rv-native-controls .rv-btn-tab{min-height:40px;padding:0 8px;border:0;border-radius:0;background:rgba(0,0,0,0);color:var(--rv-tab-color, var(--rv-ui-text-muted));font-size:14px;font-weight:500}.rv-native-controls .rv-btn-tab::after{position:absolute;inset-inline:8px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:rgba(0,0,0,0);content:""}.rv-native-controls .rv-btn-tab:hover:not(:disabled),.rv-native-controls .rv-btn-tab[aria-selected=true]{color:var(--rv-tab-accent, var(--rv-ui-accent-text))}.rv-native-controls .rv-btn-tab[aria-selected=true]::after{background:var(--rv-tab-accent, var(--rv-ui-accent-text))}.rv-native-controls .rv-btn-tab:focus-visible{z-index:2;border-radius:6px;outline-color:var(--rv-tab-accent, var(--rv-ui-accent-text));outline-offset:-4px;box-shadow:none}.rv-native-controls .rv-btn-link{min-height:30px;padding:0 7px;gap:6px;border:0;border-radius:6px;background:rgba(0,0,0,0);color:var(--rv-ui-accent-text);font-weight:400;text-decoration:none}.rv-native-controls .rv-btn-link svg{width:12px;height:12px;fill:currentColor}.rv-native-controls .rv-btn-link:hover:not(:disabled){background:rgba(0,0,0,0);text-decoration:underline}.rv-native-controls .rv-btn-link:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px;box-shadow:none}@media(forced-colors: active){.rv-native-controls :is(.rv-btn,.rv-btn-solid,.rv-btn-primary,.rv-btn-ghost,.rv-btn-link,.rv-control,.rv-choice-chip,.rv-segmented-switch-item,.rv-rating-choice):focus-visible{outline:2px solid Highlight;outline-offset:2px}}.rv-native-controls .rv-btn.rv-btn-busy:disabled{pointer-events:auto;cursor:progress}.rv-native-controls .rv-btn.rv-btn-busy:not(.rv-btn-busy-disabled):disabled{opacity:1}.rv-native-controls .rv-button-spinner{display:block;box-sizing:border-box;width:1em;height:1em;border:2px solid var(--rv-ui-border);border-block-start-color:var(--rv-ui-accent);border-radius:50%;animation:rv-ui-spin calc(var(--rv-ui-motion-normal, 160ms)*6.25) linear infinite;flex:0 0 auto;border-color:color-mix(in srgb, currentColor 30%, transparent);border-block-start-color:currentColor}.rv-native-controls .rv-btn-busy.rv-btn-icon>:not(.rv-button-spinner){display:none}.rv-native-controls .rv-btn-rounded.rv-btn-rounded{border-radius:9999px}.rv-native-controls .rv-btn-rounded[aria-disabled=true]{opacity:.5;pointer-events:none}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(0.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-native-controls .rv-form-section{display:grid;gap:14px;padding:16px;border:1px solid var(--rv-form-border, var(--rv-ui-border));border-radius:10px;background:var(--rv-form-section-bg, transparent)}.rv-native-controls .rv-form-section__heading{display:grid;gap:3px}.rv-native-controls .rv-form-section__title{margin:0;color:inherit;font-size:13px;font-weight:var(--rv-ui-font-weight-medium, 500);line-height:1.35}.rv-native-controls .rv-form-section__description,.rv-native-controls .rv-form-description{margin:0;color:var(--rv-dialog-muted, var(--rv-ui-text-muted));font-size:12px;line-height:1.45}.rv-native-controls .rv-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}.rv-native-controls .rv-field{display:grid;align-content:start;gap:6px;min-width:0}.rv-native-controls .rv-field[hidden]{display:none}.rv-native-controls .rv-field--wide{grid-column:1/-1}.rv-native-controls .rv-field__label{color:inherit;font-size:12px;font-weight:var(--rv-ui-font-weight-medium, 500);line-height:1.35}.rv-native-controls .rv-field__hint{color:var(--rv-dialog-muted, var(--rv-ui-text-muted));font-size:11px;line-height:1.35}.rv-native-controls .rv-control{appearance:none;box-sizing:border-box;width:100%;min-width:0;box-sizing:border-box;min-height:var(--rv-control-height, 32px);padding:var(--rv-control-padding, 6px 12px);font-family:inherit;font-size:var(--rv-control-font-size, 0.875rem);line-height:1;border:1px solid var(--rv-control-border, var(--rv-ui-border));border-radius:var(--rv-control-radius, 8px);background-color:var(--rv-control-bg, var(--rv-ui-surface-sunken));color:var(--rv-control-color, inherit);color-scheme:var(--rv-ui-color-scheme, normal);transition:border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-control::placeholder{color:var(--rv-ui-text-muted);opacity:.8}.rv-native-controls .rv-control:hover:not(:disabled):not([readonly]){border-color:var(--rv-ui-border-strong)}.rv-native-controls .rv-control:focus{transition:none;outline:none;border-color:var(--rv-ui-accent);box-shadow:0 0 0 3px var(--rv-ui-focus-ring)}.rv-native-controls .rv-control:disabled{cursor:not-allowed;opacity:var(--rv-control-disabled-opacity, 0.55)}.rv-native-controls .rv-control[readonly]{background-color:var(--rv-ui-surface);border-style:dashed}.rv-native-controls .rv-control[aria-invalid=true]{border-color:var(--rv-ui-danger)}.rv-native-controls .rv-control[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb, var(--rv-ui-danger) 20%, transparent)}.rv-native-controls textarea.rv-control{min-height:var(--rv-textarea-height, 92px);resize:vertical}.rv-native-controls [dir=ltr]{--rv-select-caret-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%}.rv-native-controls [dir=rtl]{--rv-select-caret-position: 11px 50%, 16px 50%}.rv-native-controls select.rv-control{padding-inline-end:34px;background-image:linear-gradient(45deg, transparent 50%, currentColor 50%),linear-gradient(135deg, currentColor 50%, transparent 50%);background-position:var(--rv-select-caret-position, calc(100% - 16px) 50%, calc(100% - 11px) 50%);background-repeat:no-repeat;background-size:5px 5px}.rv-native-controls select.rv-control[multiple]{background-image:none;padding-inline-end:10px}.rv-native-controls .rv-control--compact{--rv-control-font-size: 12px;--rv-control-height: 30px;--rv-control-padding: 5px 8px;--rv-control-radius: var(--rv-ui-radius, 6px);font-size:12px}.rv-native-controls select.rv-control--compact{padding-inline-end:28px}.rv-native-controls .rv-radio{width:16px;height:16px;margin:0;flex:none;accent-color:var(--rv-ui-accent)}.rv-native-controls .rv-radio:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls .rv-radio:disabled{opacity:.55;cursor:not-allowed}@media(max-width: 560px){.rv-native-controls .rv-form-grid{grid-template-columns:1fr}.rv-native-controls .rv-field--wide{grid-column:auto}}.rv-native-controls .rv-disclosure-summary{display:flex;align-items:center;gap:8px;min-width:0;cursor:pointer;list-style:none}.rv-native-controls .rv-disclosure-summary::-webkit-details-marker{display:none}.rv-native-controls .rv-disclosure-summary__label{min-width:0}.rv-native-controls .rv-disclosure-summary__icon{display:inline-flex;align-items:center;justify-content:center;flex:none}.rv-native-controls .rv-native-slider{width:100%;min-width:0;accent-color:var(--rv-ui-accent);cursor:pointer}.rv-native-controls .rv-native-slider:disabled{opacity:.55;cursor:not-allowed}.rv-native-controls .rv-native-slider:focus-visible{outline:2px solid var(--rv-ui-accent);outline-offset:2px}.rv-native-controls :root{--rv-ui-motion-enabled: 1;--rv-ui-motion-fast: 120ms;--rv-ui-motion-normal: 160ms;--rv-ui-motion-enter: 180ms;--rv-ui-motion-exit: 120ms;--rv-ui-motion-ease: cubic-bezier(0.2, 0, 0, 1)}.rv-native-controls [data-rv-ui-motion=off]{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls [data-rv-ui-motion=off],.rv-native-controls [data-rv-ui-motion=off]::before,.rv-native-controls [data-rv-ui-motion=off]::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off]::details-content{animation:none !important;transition:none !important}.rv-native-controls [data-rv-ui-motion=off] *,.rv-native-controls [data-rv-ui-motion=off] *::before,.rv-native-controls [data-rv-ui-motion=off] *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls [data-rv-ui-motion=off] *::details-content{animation:none !important;transition:none !important}@keyframes rv-ui-surface-in{from{opacity:0}to{opacity:1}}.rv-native-controls [data-rv-ui-surface]:not(.rv-status-feedback):not([data-status-feedback-exit]){animation:rv-ui-surface-in var(--rv-ui-motion-enter, 180ms) var(--rv-ui-motion-ease, ease-out)}@media(prefers-reduced-motion: reduce){.rv-native-controls :root{--rv-ui-motion-enabled: 0;--rv-ui-motion-fast: 0ms;--rv-ui-motion-normal: 0ms;--rv-ui-motion-enter: 0ms;--rv-ui-motion-exit: 0ms;--rv-ui-transition: 0s}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface]),.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::before,.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::after,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::before,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}.rv-native-controls :where([class^=rv-],[class*=" rv-"],[class^=revo-],[class*=" revo-"],.avatar-cell,.range_container,[data-rv-ui-surface])::details-content,.rv-native-controls :where(.rv-ui,.rv-native-controls,.rv-dialog-overlay,.revo-calendar,.range_container) *::details-content{animation:none !important;transition:none !important}}.rv-native-controls .rv-checkbox{appearance:none;-webkit-appearance:none;background-color:var(--rv-ui-checkbox-bg, var(--rv-ui-surface));border:2px solid var(--rv-ui-checkbox-border, var(--rv-ui-border-strong));border-radius:4px;box-sizing:border-box;color:var(--rv-ui-checkbox-check, var(--rv-ui-accent-fg));cursor:pointer;display:inline-grid;flex:0 0 auto;height:17px;margin:0;place-content:center;vertical-align:middle;width:17px;transition:background-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),border-color var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease),opacity var(--rv-ui-motion-fast, 120ms) var(--rv-ui-motion-ease, ease)}.rv-native-controls .rv-checkbox::after{content:"";display:block;transform:scale(0)}.rv-native-controls .rv-checkbox:checked,.rv-native-controls .rv-checkbox:indeterminate{background-color:var(--rv-ui-checkbox-checked, var(--rv-ui-accent));border-color:var(--rv-ui-checkbox-checked, var(--rv-ui-accent))}.rv-native-controls .rv-checkbox:checked::after{border:solid currentColor;border-width:0 2px 2px 0;height:8px;transform:translateY(-1px) rotate(45deg) scale(1);width:4px}.rv-native-controls .rv-checkbox:indeterminate::after{background:currentColor;border-radius:1px;height:2px;transform:scale(1);width:9px}.rv-native-controls .rv-checkbox:focus-visible{box-shadow:0 0 0 3px var(--rv-ui-checkbox-focus, var(--rv-ui-focus-ring));outline:none}.rv-native-controls .rv-checkbox:disabled{cursor:not-allowed;opacity:.55}.rv-native-controls .rv-checkbox-control{display:inline-flex;align-items:center;gap:9px;min-width:0;cursor:pointer}.rv-native-controls .rv-checkbox-control__copy{display:inline-flex;flex-direction:column;min-width:0}.rv-native-controls .rv-checkbox-control__label{line-height:1.25}.rv-native-controls .rv-checkbox-control__description{color:var(--rv-ui-text-muted);font-size:.85em;line-height:1.3}.rv-native-controls .rv-checkbox-control:has(.rv-checkbox:disabled){cursor:not-allowed;opacity:.55}.rv-native-controls[data-theme^=dark]{--rv-ui-color-scheme: dark;--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix( in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface) );--rv-ui-warning-surface: color-mix( in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface) );--rv-ui-success-surface: color-mix( in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface) );--rv-ui-overlay: color-mix(in srgb, black 60%, transparent);--rv-ui-shadow: color-mix(in srgb, black 32%, transparent);--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix( in srgb, var(--rv-ui-accent, #2563eb) 45%, white );--rv-ui-field-surface: #262626;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-canvas: #0a0a0a;--rv-ui-surface: #1f1f1f;--rv-ui-surface-elevated: #262626;--rv-ui-surface-sunken: #111111;--rv-ui-surface-hover: #2f2f2f;--rv-ui-border: #3a3a3a;--rv-ui-border-strong: #525252;--rv-ui-text: #f5f5f5;--rv-ui-text-muted: #a3a3a3;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix( in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface) );--rv-dropdown-container-tag-background: #2b2b2b;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #f5f5f5;--rv-ui-selected-accent-fg: var(--rv-ui-accent-text);--rv-ui-danger: #fca5a5;--rv-ui-warning: #fcd34d;--rv-ui-success: #86efac;--rv-ui-btn-danger-outline: #fca5a5;--rv-ui-btn-danger-outline-hover: rgba(252, 165, 165, 0.10);color-scheme:dark;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-text-weight: 45%;--rv-ui-accent-text-base: white;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 45%, white);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover: var(--rv-ui-border-strong);--rv-ui-btn-bg: var(--rv-ui-surface-elevated);--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-secondary-bg: var(--rv-ui-surface);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-ghost-hover-bg: rgba(255, 255, 255, 0.08);--rv-ui-btn-ghost-active-bg: rgba(255, 255, 255, 0.14);--rv-ui-switch-track-off: #666666;--rv-ui-switch-thumb: var(--rv-ui-text);--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);--rv-ui-badge-disabled-bg: #52525b;--rv-ui-badge-disabled-fg: #e4e4e7}@media(prefers-color-scheme: dark){.rv-native-controls[data-theme=auto]{--rv-ui-color-scheme: dark;--rv-ui-disabled-bg: var(--rv-ui-surface-sunken);--rv-ui-disabled-fg: var(--rv-ui-text-muted);--rv-ui-danger-surface: color-mix( in srgb, var(--rv-ui-danger) 10%, var(--rv-ui-surface) );--rv-ui-warning-surface: color-mix( in srgb, var(--rv-ui-warning) 10%, var(--rv-ui-surface) );--rv-ui-success-surface: color-mix( in srgb, var(--rv-ui-success) 10%, var(--rv-ui-surface) );--rv-ui-overlay: color-mix(in srgb, black 60%, transparent);--rv-ui-shadow: color-mix(in srgb, black 32%, transparent);--rv-ui-field-muted: var(--rv-ui-text-muted);--rv-ui-field-accent-text: color-mix( in srgb, var(--rv-ui-accent, #2563eb) 45%, white );--rv-ui-field-surface: #262626;--rv-ui-field-text: var(--rv-ui-text);--rv-ui-canvas: #0a0a0a;--rv-ui-surface: #1f1f1f;--rv-ui-surface-elevated: #262626;--rv-ui-surface-sunken: #111111;--rv-ui-surface-hover: #2f2f2f;--rv-ui-border: #3a3a3a;--rv-ui-border-strong: #525252;--rv-ui-text: #f5f5f5;--rv-ui-text-muted: #a3a3a3;--rv-ui-text-subtle: #737373;--rv-ui-selected-bg: color-mix( in srgb, var(--rv-ui-accent) 12%, var(--rv-ui-surface) );--rv-dropdown-container-tag-background: #2b2b2b;--rv-dropdown-placeholder-color: var(--rv-ui-text-muted);--rv-ui-selected-fg: #f5f5f5;--rv-ui-selected-accent-fg: var(--rv-ui-accent-text);--rv-ui-danger: #fca5a5;--rv-ui-warning: #fcd34d;--rv-ui-success: #86efac;--rv-ui-btn-danger-outline: #fca5a5;--rv-ui-btn-danger-outline-hover: rgba(252, 165, 165, 0.10);color-scheme:dark;--rv-ui-accent: #2563eb;--rv-ui-accent-hover: #1d4ed8;--rv-ui-accent-text-weight: 45%;--rv-ui-accent-text-base: white;--rv-ui-accent-text: color-mix(in srgb, var(--rv-ui-accent) 45%, white);--rv-ui-btn-outline-bg: transparent;--rv-ui-btn-outline-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-outline-fg: var(--rv-ui-text);--rv-ui-btn-outline-border: var(--rv-ui-border);--rv-ui-btn-outline-border-hover: var(--rv-ui-border-strong);--rv-ui-btn-bg: var(--rv-ui-surface-elevated);--rv-ui-btn-bg-hover: #404040;--rv-ui-btn-secondary-bg: var(--rv-ui-surface);--rv-ui-btn-secondary-bg-hover: var(--rv-ui-surface-hover);--rv-ui-btn-secondary-fg: var(--rv-ui-text);--rv-ui-btn-ghost-hover-bg: rgba(255, 255, 255, 0.08);--rv-ui-btn-ghost-active-bg: rgba(255, 255, 255, 0.14);--rv-ui-switch-track-off: #666666;--rv-ui-switch-thumb: var(--rv-ui-text);--rv-ui-group-border: var(--rv-ui-border);--rv-ui-group-hover-bg: var(--rv-ui-surface-hover);--rv-ui-focus-ring: color-mix(in srgb, var(--rv-ui-accent) 38%, transparent);--rv-ui-badge-disabled-bg: #52525b;--rv-ui-badge-disabled-fg: #e4e4e7}}
@@ -12,7 +12,11 @@
12
12
  @include meta.load-css('./form');
13
13
  @include meta.load-css('./checkbox/checkbox');
14
14
  }
15
- .rv-native-controls[data-theme^='dark'] { @include theme.rv-ui-dark-tokens; }
15
+ .rv-native-controls[data-theme^='dark'] {
16
+ @include theme.rv-ui-dark-tokens;
17
+ }
16
18
  @media (prefers-color-scheme: dark) {
17
- .rv-native-controls[data-theme='auto'] { @include theme.rv-ui-dark-tokens; }
19
+ .rv-native-controls[data-theme='auto'] {
20
+ @include theme.rv-ui-dark-tokens;
21
+ }
18
22
  }
package/native.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from './core/anchored-popover';
2
2
  export { mountAiAssistant } from './ai/mount';
3
- export type { AiAssistantMountState, AiAssistantMountOptions } from './ai/mount';
3
+ export type { AiAssistantMountState, AiAssistantMountOptions, } from './ai/mount';
4
4
  export * from './core/top-layer-popup';
5
5
  export * from './core/control-id';
6
6
  export * from './form-controls/index';
@@ -24,6 +24,6 @@ export * from './cell-visuals';
24
24
  export * from './color-palette/native';
25
25
  export * from './dialog/dialog-action-footer';
26
26
  export { renderAlert } from './alert';
27
- export { createAlertElement, renderAlertInto, releaseAlertElement } from './alert-native';
28
- export { isUiMotionEnabled, getUiMotionDuration, inheritUiMotion, type UiMotionTiming } from './core/motion';
27
+ export { createAlertElement, renderAlertInto, releaseAlertElement, } from './alert-native';
28
+ export { isUiMotionEnabled, getUiMotionDuration, inheritUiMotion, type UiMotionTiming, } from './core/motion';
29
29
  export { badgeClassName, type BadgeOptions } from './badge';
package/native.js CHANGED
@@ -1,39 +1,39 @@
1
1
  import { calculateAnchoredPopoverPosition as e } from "./core/anchored-popover.js";
2
- import { t } from "./_chunks/mount-D1i5DLRn.js";
2
+ import { t } from "./_chunks/mount-C8CnIW9k.js";
3
3
  import { i as n } from "./_chunks/hooks.module-CG3gN83z.js";
4
4
  import { t as r } from "./_chunks/jsxRuntime.module-F6UFnpT-.js";
5
5
  import { createPreactElement as i, releasePreactElement as a, renderPreactInto as o } from "./preact-mount.js";
6
- import { a as ee, c as te, i as s, n as c, r as l, s as u, t as d } from "./_chunks/top-layer-popup-CNSDdfJV.js";
6
+ import { a as ee, c as te, i as s, n as c, r as l, s as u, t as d } from "./_chunks/top-layer-popup-CKJ7VJOF.js";
7
7
  import { createControlId as f } from "./core/control-id.js";
8
8
  import { getUiMotionDuration as p, inheritUiMotion as m, isUiMotionEnabled as h } from "./core/motion.js";
9
- import { n as g, r as _, t as v } from "./_chunks/popover-controller-D-AvKQ7B.js";
9
+ import { PopoverController as g, TooltipController as _, createTooltipElement as v } from "./core/popover-controller.js";
10
10
  import { controlAttributes as y, controlClassName as b } from "./control-attributes.js";
11
11
  import { createControl as x, decorateIconAction as S, nativeControlTag as C, registerControl as w, renderControl as T } from "./control-presentation.js";
12
- import { t as E } from "./_chunks/control-BkWukVt9.js";
12
+ import { t as E } from "./_chunks/control-BRfF5DWQ.js";
13
13
  import { PaginationPanel as D, paginationItems as O, renderPaginationButton as k } from "./pagination.js";
14
- import { B as A, H as j, L as M, R as N, U as P, V as F, W as I, z as L } from "./_chunks/controls-BLQnWEd7.js";
15
- import { r as R, t as z } from "./_chunks/tooltip-D4xkio5G.js";
16
- import { d as B, f as V, u as H } from "./_chunks/dialog.parts-BSbvnEwX.js";
17
- import { createDialogButton as U, createDialogCloseButton as W, createDialogElements as G, getDialogFocusableElements as K, trapDialogFocus as q } from "./dialog/dialog.dom.js";
18
- import { attachDialogDrag as J } from "./dialog/dialog.drag.js";
19
- import { t as Y } from "./_chunks/tooltip-text-BXsUEmBH.js";
20
- import { DialogController as X, attachMenuKeyboard as ne, attachResizeHandle as Z } from "./surfaces.js";
21
- import { normalizeProgressRange as re } from "./progress/range.js";
22
- import { badgeClassName as ie } from "./badge.js";
23
- import { createFormField as ae, createTextControl as oe } from "./form-controls/index.js";
24
- import { AVATAR_CELL_BACKGROUNDS as se } from "./color-palette/common-palettes.js";
25
- import { AvatarElement as ce, avatarTemplate as le, avatarWithTextTemplate as ue, createAvatarElement as de, getAvatarCellBackground as fe, getAvatarIndex as pe, getAvatarInitials as me } from "./avatar/index.js";
14
+ import { G as A, H as j, K as M, R as N, U as P, V as F, W as I, z as L } from "./_chunks/controls-B3EgM_DS.js";
15
+ import { r as R, t as z } from "./_chunks/tooltip-h-Z8yFBY.js";
16
+ import { d as B, u as V } from "./_chunks/dialog.parts-NqEEVc9P.js";
17
+ import { createDialogButton as H, createDialogCloseButton as U, createDialogElements as W, getDialogFocusableElements as G, trapDialogFocus as K } from "./dialog/dialog.dom.js";
18
+ import { attachDialogDrag as q } from "./dialog/dialog.drag.js";
19
+ import { t as J } from "./_chunks/tooltip-text-BN5WdGHn.js";
20
+ import { DialogController as Y, attachMenuKeyboard as X, attachResizeHandle as ne } from "./surfaces.js";
21
+ import { normalizeProgressRange as Z } from "./progress/range.js";
22
+ import { badgeClassName as re } from "./badge.js";
23
+ import { createFormField as ie, createTextControl as ae } from "./form-controls/index.js";
24
+ import { AVATAR_CELL_BACKGROUNDS as oe } from "./color-palette/common-palettes.js";
25
+ import { AvatarElement as se, avatarTemplate as ce, avatarWithTextTemplate as le, createAvatarElement as ue, getAvatarCellBackground as de, getAvatarIndex as fe, getAvatarInitials as pe } from "./avatar/index.js";
26
26
  import "./dialog/dialog.types.js";
27
- import { renderProgressBar as he } from "./progress/bar.js";
28
- import { renderRangeSlider as ge } from "./filter/filters/slider/component.js";
27
+ import { renderProgressBar as me } from "./progress/bar.js";
28
+ import { renderRangeSlider as he } from "./filter/filters/slider/component.js";
29
29
  import "./filter/filters/slider/types.js";
30
- import { renderCircularProgress as _e } from "./progress/circular.js";
31
- import { applyControlPresentation as ve } from "./html-controls.js";
32
- import { n as ye, t as be } from "./_chunks/native.view-ByyZ1CT5.js";
33
- import { a as xe, c as Se, d as Ce, f as we, h as Te, i as Ee, l as De, m as Oe, n as Q, o as ke, p as Ae, r as je, s as Me, t as Ne, u as Pe } from "./_chunks/cell-visuals-E-2oEKHg.js";
34
- import { t as Fe } from "./_chunks/color-picker-B4TQvxxB.js";
35
- //#region src/icons/drawing-tools.ts
36
- var Ie = {
30
+ import { renderCircularProgress as ge } from "./progress/circular.js";
31
+ import { applyControlPresentation as _e } from "./html-controls.js";
32
+ import { n as ve, t as ye } from "./_chunks/native-CJm3eq3-.js";
33
+ import { a as be, c as xe, d as Se, f as Ce, h as we, i as Te, l as Ee, m as De, n as Oe, o as Q, p as ke, r as Ae, s as je, t as Me, u as Ne } from "./_chunks/cell-visuals-r6DOOhGh.js";
34
+ import { t as Pe } from "./_chunks/color-picker-Cfc9eqZb.js";
35
+ //#region package/icons/drawing-tools.ts
36
+ var Fe = {
37
37
  link: "M10 13a5 5 0 0 0 7 .5l3-3a5 5 0 0 0-7-7l-2 2 M14 11a5 5 0 0 0-7-.5l-3 3a5 5 0 0 0 7 7l2-2",
38
38
  select: "M5 3 19 12 12 13 9 20Z M12 13l5 7",
39
39
  rectangle: "M4 5h16v14H4Z",
@@ -42,10 +42,10 @@ var Ie = {
42
42
  note: "M5 3h14v14l-4 4H5Z M15 21v-4h4 M8 8h8 M8 12h6"
43
43
  };
44
44
  //#endregion
45
- //#region src/color-palette/native.view.tsx
46
- function Le(e) {
45
+ //#region package/color-palette/native.tsx
46
+ function Ie(e) {
47
47
  let [t, i] = n(e.value);
48
- return /* @__PURE__ */ r(Fe, {
48
+ return /* @__PURE__ */ r(Pe, {
49
49
  ...e,
50
50
  value: t,
51
51
  customHexLabel: e.customLabel,
@@ -54,28 +54,28 @@ function Le(e) {
54
54
  }
55
55
  });
56
56
  }
57
- function Re(e, t) {
58
- let n = i(e.ownerDocument, /* @__PURE__ */ r(Le, { ...t }));
57
+ function Le(e, t) {
58
+ let n = i(e.ownerDocument, /* @__PURE__ */ r(Ie, { ...t }));
59
59
  return e.append(n), { destroy() {
60
60
  a(n);
61
61
  } };
62
62
  }
63
63
  //#endregion
64
- //#region src/alert-native.tsx
64
+ //#region package/alert-native.tsx
65
65
  function $(e, { content: t, ...n }) {
66
- o(e, /* @__PURE__ */ r(M, {
66
+ o(e, /* @__PURE__ */ r(N, {
67
67
  ...n,
68
68
  children: t === void 0 ? n.children : typeof t == "string" ? t : /* @__PURE__ */ r("span", { ref: (e) => {
69
69
  e && e.replaceChildren(t);
70
70
  } })
71
71
  }));
72
72
  }
73
- function ze(e, t) {
73
+ function Re(e, t) {
74
74
  let n = i(e, /* @__PURE__ */ r("div", {}));
75
75
  return $(n, t), n;
76
76
  }
77
- function Be(e) {
77
+ function ze(e) {
78
78
  o(e, null), a(e);
79
79
  }
80
80
  //#endregion
81
- export { se as AVATAR_CELL_BACKGROUNDS, H as ActionFooterView, ce as AvatarElement, Ie as DRAWING_TOOL_PATHS, X as DialogController, D as PaginationPanel, v as PopoverController, ee as TOOLTIP_STYLES, g as TooltipController, z as TooltipSurface, Y as TooltipText, ve as applyControlPresentation, J as attachDialogDrag, ne as attachMenuKeyboard, Z as attachResizeHandle, le as avatarTemplate, ue as avatarWithTextTemplate, ie as badgeClassName, e as calculateAnchoredPopoverPosition, y as controlAttributes, b as controlClassName, ze as createAlertElement, de as createAvatarElement, L as createButtonElement, x as createControl, f as createControlId, U as createDialogButton, W as createDialogCloseButton, G as createDialogElements, E as createDropdownControl, ae as createFormField, be as createSearchInput, oe as createTextControl, _ as createTooltipElement, S as decorateIconAction, u as ensureTooltipStyles, Q as formatTimelineEvents, fe as getAvatarCellBackground, pe as getAvatarIndex, me as getAvatarInitials, K as getDialogFocusableElements, p as getUiMotionDuration, d as hideTopLayerPopup, m as inheritUiMotion, h as isUiMotionEnabled, t as mountAiAssistant, Re as mountColorPicker, B as mountDialogActionFooter, C as nativeControlTag, re as normalizeProgressRange, s as ownsPopupTarget, O as paginationItems, c as popupOwnsTarget, te as prepareTooltipSurface, w as registerControl, Be as releaseAlertElement, Me as renderAggregateSummary, N as renderAlert, $ as renderAlertInto, Se as renderBadgeValue, De as renderChange, _e as renderCircularProgress, T as renderControl, A as renderCounter, V as renderDialogActionFooter, Ee as renderHeatmap, Pe as renderLabelledIcon, F as renderLoadingIndicator, j as renderMenuItem, xe as renderMiniBarChart, k as renderPaginationButton, Ce as renderPercentageSummary, Ne as renderPie, he as renderProgressBar, we as renderProgressLine, Ae as renderProgressLineValue, ge as renderRangeSlider, P as renderRatingStars, I as renderScalarSlider, ye as renderSearchInput, ke as renderSparkline, Oe as renderThumbs, je as renderTimeline, Te as renderTypeIcon, l as showTopLayerPopup, q as trapDialogFocus, R as useTooltip };
81
+ export { oe as AVATAR_CELL_BACKGROUNDS, V as ActionFooterView, se as AvatarElement, z as ControlTooltip, Fe as DRAWING_TOOL_PATHS, Y as DialogController, D as PaginationPanel, g as PopoverController, ee as TOOLTIP_STYLES, _ as TooltipController, J as TooltipText, _e as applyControlPresentation, q as attachDialogDrag, X as attachMenuKeyboard, ne as attachResizeHandle, ce as avatarTemplate, le as avatarWithTextTemplate, re as badgeClassName, e as calculateAnchoredPopoverPosition, y as controlAttributes, b as controlClassName, Re as createAlertElement, ue as createAvatarElement, F as createButtonElement, x as createControl, f as createControlId, H as createDialogButton, U as createDialogCloseButton, W as createDialogElements, E as createDropdownControl, ie as createFormField, ye as createSearchInput, ae as createTextControl, v as createTooltipElement, S as decorateIconAction, u as ensureTooltipStyles, Oe as formatTimelineEvents, de as getAvatarCellBackground, fe as getAvatarIndex, pe as getAvatarInitials, G as getDialogFocusableElements, p as getUiMotionDuration, d as hideTopLayerPopup, m as inheritUiMotion, h as isUiMotionEnabled, t as mountAiAssistant, Le as mountColorPicker, B as mountDialogActionFooter, C as nativeControlTag, Z as normalizeProgressRange, s as ownsPopupTarget, O as paginationItems, c as popupOwnsTarget, te as prepareTooltipSurface, w as registerControl, ze as releaseAlertElement, je as renderAggregateSummary, L as renderAlert, $ as renderAlertInto, xe as renderBadgeValue, Ee as renderChange, ge as renderCircularProgress, T as renderControl, j as renderCounter, Te as renderHeatmap, Ne as renderLabelledIcon, P as renderLoadingIndicator, I as renderMenuItem, be as renderMiniBarChart, k as renderPaginationButton, Se as renderPercentageSummary, Me as renderPie, me as renderProgressBar, Ce as renderProgressLine, ke as renderProgressLineValue, he as renderRangeSlider, A as renderRatingStars, M as renderScalarSlider, ve as renderSearchInput, Q as renderSparkline, De as renderThumbs, Ae as renderTimeline, we as renderTypeIcon, l as showTopLayerPopup, K as trapDialogFocus, R as useTooltip };
@@ -1,5 +1,5 @@
1
1
  import { NumberInputOptions } from './model';
2
- export { formatNumberValue, formatNumberDraft, parseNumberInput, stepNumberInput } from './model';
2
+ export { formatNumberValue, formatNumberDraft, parseNumberInput, stepNumberInput, } from './model';
3
3
  export type { NumberInputOptions, NumberInputResult, NumberInputText, } from './model';
4
4
  /** Staged numeric input shared by number, currency and ratio editor adapters. */
5
5
  export declare function NumberDraft({ value, options, apply, cancel, initialSelection, }: {
@@ -1 +1 @@
1
- export { t as NumberDraft, n as formatNumberDraft, r as formatNumberValue, i as parseNumberInput, a as stepNumberInput } from "../_chunks/number-input-s9ddPwX6.js";
1
+ export { t as NumberDraft, n as formatNumberDraft, r as formatNumberValue, i as parseNumberInput, a as stepNumberInput } from "../_chunks/number-input-CKiA4d1N.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@revolist/ui",
3
- "version": " 4.0.5-rc",
3
+ "version": "4.0.5",
4
4
  "type": "module",
5
5
  "description": "Revo UI: UI components for financial apps, reporting dashboards, and project management with React, Vue, Angular, Svelte, Preact, and vanilla TypeScript adapters",
6
6
  "author": "revolist",
@@ -786,6 +786,54 @@
786
786
  "import": "./pdf-viewer/controller.js",
787
787
  "default": "./pdf-viewer/controller.js"
788
788
  },
789
+ "./dropdown/editor-dropdown.style.scss": "./dropdown/editor-dropdown.style.scss",
790
+ "./styles/_theme.scss": "./styles/_theme.scss",
791
+ "./styles/_field-configurator.scss": "./styles/_field-configurator.scss",
792
+ "./checkbox/_layout.scss": "./checkbox/_layout.scss",
793
+ "./_button.scss": "./_button.scss",
794
+ "./_form.scss": "./_form.scss",
795
+ "./_variables.scss": "./_variables.scss",
796
+ "./avatar/avatar.style.scss": "./avatar/avatar.style.scss",
797
+ "./buttons/delete-button.style.scss": "./buttons/delete-button.style.scss",
798
+ "./calendar/_calendar.scss": "./calendar/_calendar.scss",
799
+ "./styles/_thresholds.scss": "./styles/_thresholds.scss",
800
+ "./cell-visuals/badge.style.scss": "./cell-visuals/badge.style.scss",
801
+ "./cell-visuals/bar-chart.style.scss": "./cell-visuals/bar-chart.style.scss",
802
+ "./cell-visuals/change.style.css": "./cell-visuals/change.style.css",
803
+ "./cell-visuals/column-type.style.css": "./cell-visuals/column-type.style.css",
804
+ "./cell-visuals/heatmap.style.css": "./cell-visuals/heatmap.style.css",
805
+ "./cell-visuals/pie-chart.style.css": "./cell-visuals/pie-chart.style.css",
806
+ "./cell-visuals/progress-line-value.renderer.style.scss": "./cell-visuals/progress-line-value.renderer.style.scss",
807
+ "./cell-visuals/progress-line.style.scss": "./cell-visuals/progress-line.style.scss",
808
+ "./styles/rating.css": "./styles/rating.css",
809
+ "./cell-visuals/sparkline.style.scss": "./cell-visuals/sparkline.style.scss",
810
+ "./cell-visuals/summary-aggregate.style.css": "./cell-visuals/summary-aggregate.style.css",
811
+ "./cell-visuals/summary-percentage.style.css": "./cell-visuals/summary-percentage.style.css",
812
+ "./cell-visuals/thumbs.style.css": "./cell-visuals/thumbs.style.css",
813
+ "./cell-visuals/timeline.style.css": "./cell-visuals/timeline.style.css",
814
+ "./checkbox/checkbox.scss": "./checkbox/checkbox.scss",
815
+ "./distribution-chart/_distribution-chart.scss": "./distribution-chart/_distribution-chart.scss",
816
+ "./styles/_editor-counter.scss": "./styles/_editor-counter.scss",
817
+ "./editor-layout/style.scss": "./editor-layout/style.scss",
818
+ "./styles/_editor-slider.scss": "./styles/_editor-slider.scss",
819
+ "./styles/_filter-badge.scss": "./styles/_filter-badge.scss",
820
+ "./brush-range/_brush-range.scss": "./brush-range/_brush-range.scss",
821
+ "./filter/filters/slider/_slider.scss": "./filter/filters/slider/_slider.scss",
822
+ "./styles/_loading.scss": "./styles/_loading.scss",
823
+ "./styles/pagination.css": "./styles/pagination.css",
824
+ "./resource-picker/resource-picker.scss": "./resource-picker/resource-picker.scss",
825
+ "./styles/_cell-editor-frame.scss": "./styles/_cell-editor-frame.scss",
826
+ "./status-feedback/status-feedback.scss": "./status-feedback/status-feedback.scss",
827
+ "./core/popover-controller": {
828
+ "types": "./core/popover-controller.d.ts",
829
+ "import": "./core/popover-controller.js",
830
+ "default": "./core/popover-controller.js"
831
+ },
832
+ "./progress/_circular.scss": "./progress/_circular.scss",
833
+ "./progress/_bar.scss": "./progress/_bar.scss",
834
+ "./styles/_fields-grid.scss": "./styles/_fields-grid.scss",
835
+ "./styles/_time-grid.scss": "./styles/_time-grid.scss",
836
+ "./styles/_primitives.scss": "./styles/_primitives.scss",
789
837
  "./package.json": "./package.json"
790
838
  },
791
839
  "sideEffects": [