@mkbabb/glass-ui 4.0.1 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/dist/{CardAction-CW7a0m8M.js → CardAction-8whJrLWt.js} +23 -8
  2. package/dist/{CommandShortcut-DvZNQ_HF.js → CommandShortcut-D3yxgHNn.js} +23 -12
  3. package/dist/{ConfiguratorRow-BR4l-ixA.js → ConfiguratorRow-CaP7U3ZA.js} +11 -11
  4. package/dist/ContextMenuContent-B3ZsheLV.js +90 -0
  5. package/dist/{ContextMenuSubContent-xol4sD2q.js → ContextMenuSubContent-DDRID3qC.js} +15 -15
  6. package/dist/{DataTable-CuKwF7wr.js → DataTable-Bc9kUtu_.js} +2 -2
  7. package/dist/{DialogContent-DcKK8k9i.js → DialogContent-6JtTB5x2.js} +8 -5
  8. package/dist/DialogFooter-9phqcRIS.js +80 -0
  9. package/dist/DialogScrollContent-TTuovQst.js +93 -0
  10. package/dist/HoverCardContent-Bel1gdLZ.js +88 -0
  11. package/dist/{IconChip-BTD-nay5.js → IconChip-DhbdGdFQ.js} +1 -1
  12. package/dist/{IconTooltip-Bl8gFZ8d.js → IconTooltip-B0zimd2H.js} +1 -1
  13. package/dist/Input-Cg9DF62r.js +57 -0
  14. package/dist/{Notification-VUwexFUf.js → Notification-CphK7AAm.js} +3 -3
  15. package/dist/NumberFieldContent-D8cXeyO4.js +140 -0
  16. package/dist/PagerDots-Cjx96la-.js +98 -0
  17. package/dist/{SelectScrollDownButton-CrA8F0iV.js → SelectScrollDownButton-DAKCBEdW.js} +62 -57
  18. package/dist/{SelectSeparator-DXswVdRz.js → SelectSeparator-C2UGOkXF.js} +1 -1
  19. package/dist/Separator-DQcwC2TR.js +44 -0
  20. package/dist/Switch-B8RscmRu.js +49 -0
  21. package/dist/{Toaster-Bw4xR8xV.js → Toaster-D9qIHjBI.js} +1 -1
  22. package/dist/{ToggleGroupItem-pEM9vIhs.js → ToggleGroupItem-BLtr3TJq.js} +2 -2
  23. package/dist/TooltipProvider-BJ_Y5EGX.js +109 -0
  24. package/dist/animated-digit.js +1 -1
  25. package/dist/api/index.d.ts +15 -32
  26. package/dist/api/types-extra.d.ts +31 -0
  27. package/dist/api.js +1 -1
  28. package/dist/aurora.js +579 -251
  29. package/dist/border-progress.js +49 -57
  30. package/dist/{button-DYCUa-tH.js → button-5dY1Dvhd.js} +13 -14
  31. package/dist/button.js +1 -1
  32. package/dist/canvas.js +2 -3
  33. package/dist/card.js +1 -1
  34. package/dist/carousel.js +20 -20
  35. package/dist/color-Cs0-oxYL.js +116 -0
  36. package/dist/color.js +2 -2
  37. package/dist/command.js +1 -1
  38. package/dist/completion-seal.d.ts +1 -0
  39. package/dist/completion-seal.js +89 -0
  40. package/dist/components/custom/aurora/Aurora.vue.d.ts +10 -5
  41. package/dist/components/custom/aurora/composables/color.d.ts +13 -0
  42. package/dist/components/custom/aurora/composables/frameLoop.d.ts +9 -0
  43. package/dist/components/custom/aurora/composables/runtime.d.ts +12 -0
  44. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +11 -2
  45. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +8 -0
  46. package/dist/components/custom/aurora/constants/presets.d.ts +18 -0
  47. package/dist/components/custom/aurora/constants/renderMode.d.ts +16 -8
  48. package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
  49. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  50. package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +25 -0
  51. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +14 -18
  52. package/dist/components/custom/border-progress/index.d.ts +1 -1
  53. package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +21 -0
  54. package/dist/components/custom/completion-seal/composables/useCompletionSeal.d.ts +37 -0
  55. package/dist/components/custom/completion-seal/constants.d.ts +46 -0
  56. package/dist/components/custom/completion-seal/index.d.ts +4 -0
  57. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +7 -0
  58. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +9 -0
  59. package/dist/components/custom/concentric/composables/ringField.d.ts +57 -16
  60. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +2 -1
  61. package/dist/components/custom/concentric/composables/useConcentric.d.ts +4 -4
  62. package/dist/components/custom/concentric/constants.d.ts +30 -6
  63. package/dist/components/custom/concentric/index.d.ts +2 -2
  64. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +2 -2
  65. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -1
  66. package/dist/components/custom/confirm-dialog/ConfirmDialog.vue.d.ts +3 -3
  67. package/dist/components/custom/constellation/Constellation.vue.d.ts +5 -4
  68. package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +10 -0
  69. package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +19 -0
  70. package/dist/components/custom/constellation/composables/uniformBridgeWGPU.d.ts +66 -0
  71. package/dist/components/custom/constellation/composables/useConstellation.d.ts +3 -10
  72. package/dist/components/custom/constellation/constants.d.ts +33 -0
  73. package/dist/components/custom/constellation/constellationField.d.ts +31 -1
  74. package/dist/components/custom/constellation/constellationInteraction.d.ts +23 -14
  75. package/dist/components/custom/constellation/constellationRender.d.ts +25 -0
  76. package/dist/components/custom/constellation/constellationTypes.d.ts +38 -0
  77. package/dist/components/custom/constellation/constellationWell.d.ts +15 -0
  78. package/dist/components/custom/constellation/index.d.ts +5 -5
  79. package/dist/components/custom/constellation/shaders/constellation-lines.glsl.d.ts +2 -0
  80. package/dist/components/custom/constellation/shaders/constellation-lines.wgsl.d.ts +1 -0
  81. package/dist/components/custom/constellation/shaders/constellation-points.glsl.d.ts +2 -0
  82. package/dist/components/custom/constellation/shaders/constellation-points.wgsl.d.ts +1 -0
  83. package/dist/components/custom/deck/DeckPager.vue.d.ts +29 -0
  84. package/dist/components/custom/deck/composables/useDeck.d.ts +27 -0
  85. package/dist/components/custom/deck/composables/useDeckKeyboard.d.ts +25 -0
  86. package/dist/components/custom/deck/composables/useDeckSpring.d.ts +22 -0
  87. package/dist/components/custom/deck/constants.d.ts +14 -0
  88. package/dist/components/custom/deck/index.d.ts +8 -0
  89. package/dist/components/custom/dock/DockIconButton.vue.d.ts +12 -0
  90. package/dist/components/custom/dock/DockStack.vue.d.ts +65 -0
  91. package/dist/components/custom/dock/GlassDock.vue.d.ts +4 -2
  92. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +80 -0
  93. package/dist/components/custom/dock/composables/index.d.ts +2 -0
  94. package/dist/components/custom/dock/composables/useDockSearch.d.ts +85 -0
  95. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +11 -0
  96. package/dist/components/custom/dock/constants.d.ts +18 -14
  97. package/dist/components/custom/dock/index.d.ts +5 -2
  98. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +15 -11
  99. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +48 -6
  100. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +23 -8
  101. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +6 -5
  102. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +18 -5
  103. package/dist/components/custom/dot-flow-field/constants.d.ts +42 -21
  104. package/dist/components/custom/dot-flow-field/index.d.ts +2 -2
  105. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -1
  106. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +4 -20
  107. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -1
  108. package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +43 -0
  109. package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +89 -0
  110. package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +52 -0
  111. package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
  112. package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +27 -0
  113. package/dist/components/custom/dot-matrix/constants.d.ts +58 -0
  114. package/dist/components/custom/dot-matrix/index.d.ts +5 -0
  115. package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +4 -0
  116. package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -0
  117. package/dist/components/custom/easing/EasingPicker.vue.d.ts +2 -2
  118. package/dist/components/custom/easing/composables/useEasingPicker.d.ts +5 -0
  119. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +11 -0
  120. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +40 -47
  121. package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +15 -0
  122. package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +20 -0
  123. package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +41 -0
  124. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +40 -37
  125. package/dist/components/custom/fourier-field/constants.d.ts +61 -4
  126. package/dist/components/custom/fourier-field/index.d.ts +23 -18
  127. package/dist/components/custom/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +1 -0
  128. package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
  129. package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
  130. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +9 -1
  131. package/dist/components/custom/goo-blob/constants.d.ts +1 -1
  132. package/dist/components/custom/goo-blob/index.d.ts +1 -1
  133. package/dist/components/custom/goo-blob/shaders/metaball-noise.wgsl.d.ts +1 -0
  134. package/dist/components/custom/goo-blob/shaders/metaball-palette.wgsl.d.ts +1 -0
  135. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  136. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -1
  137. package/dist/components/custom/goo-blob/types.d.ts +36 -0
  138. package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +49 -0
  139. package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +24 -0
  140. package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +50 -0
  141. package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +35 -0
  142. package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
  143. package/dist/components/custom/goo-dot-matrix/constants.d.ts +76 -0
  144. package/dist/components/custom/goo-dot-matrix/index.d.ts +5 -0
  145. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +11 -0
  146. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +3 -0
  147. package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +21 -2
  148. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +15 -0
  149. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +9 -0
  150. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  151. package/dist/components/custom/pager-dots/pagerWindow.d.ts +9 -0
  152. package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +42 -0
  153. package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +90 -0
  154. package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +16 -0
  155. package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +19 -0
  156. package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +16 -0
  157. package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +31 -0
  158. package/dist/components/custom/paper-grid/constants.d.ts +57 -0
  159. package/dist/components/custom/paper-grid/index.d.ts +5 -0
  160. package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +4 -0
  161. package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -0
  162. package/dist/components/custom/search/FuzzySearch.vue.d.ts +8 -2
  163. package/dist/components/custom/search/SearchBar.vue.d.ts +8 -0
  164. package/dist/components/custom/search/index.d.ts +2 -0
  165. package/dist/components/custom/search/searchVariants.d.ts +19 -0
  166. package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +50 -0
  167. package/dist/components/custom/selectable-chip/index.d.ts +2 -0
  168. package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +23 -0
  169. package/dist/components/custom/split-chars/SplitChars.vue.d.ts +39 -0
  170. package/dist/components/custom/split-chars/index.d.ts +1 -0
  171. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +8 -6
  172. package/dist/components/custom/tabs/constants.d.ts +20 -2
  173. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +29 -16
  174. package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +10 -5
  175. package/dist/components/ui/_shared/index.d.ts +2 -0
  176. package/dist/components/ui/_shared/useControlSize.d.ts +46 -0
  177. package/dist/components/ui/button/index.d.ts +1 -1
  178. package/dist/components/ui/card/Card.vue.d.ts +45 -0
  179. package/dist/components/ui/card/index.d.ts +1 -1
  180. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +1 -1
  181. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +1 -1
  182. package/dist/components/ui/command/CommandDialog.vue.d.ts +9 -3
  183. package/dist/components/ui/command/CommandList.vue.d.ts +3 -0
  184. package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +5 -1
  185. package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.d.ts +4 -0
  186. package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +3 -0
  187. package/dist/components/ui/input/Input.vue.d.ts +3 -0
  188. package/dist/components/ui/number-field/NumberFieldInput.vue.d.ts +6 -1
  189. package/dist/components/ui/select/SelectContent.vue.d.ts +3 -0
  190. package/dist/components/ui/switch/Switch.vue.d.ts +2 -0
  191. package/dist/components/ui/textarea/Textarea.vue.d.ts +3 -0
  192. package/dist/components/ui/tooltip/TooltipContent.vue.d.ts +3 -0
  193. package/dist/composables/color/index.d.ts +2 -0
  194. package/dist/composables/color/useAccentTone.d.ts +34 -0
  195. package/dist/composables/glass/useVizChoreography.d.ts +123 -0
  196. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +10 -0
  197. package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
  198. package/dist/composables/glass/webgpu/index.d.ts +1 -1
  199. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +28 -7
  200. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -0
  201. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
  202. package/dist/composables/motion/core/index.d.ts +3 -0
  203. package/dist/composables/motion/scrollReader.d.ts +25 -0
  204. package/dist/composables/motion/springPresets.d.ts +20 -1
  205. package/dist/composables/motion/useCharStagger.d.ts +44 -0
  206. package/dist/composables/motion/useDockCtaReceive.d.ts +31 -6
  207. package/dist/composables/motion/useScrollChrome.d.ts +58 -0
  208. package/dist/composables/motion/useScrollTrigger.d.ts +67 -0
  209. package/dist/composables/motion/useSpringPress.d.ts +5 -5
  210. package/dist/composables/motion/useStaggerReveal.d.ts +24 -0
  211. package/dist/composables/sidebar/index.d.ts +4 -1
  212. package/dist/composables/sidebar/types.d.ts +68 -3
  213. package/dist/composables/sidebar/useClickDelegate.d.ts +4 -0
  214. package/dist/composables/sidebar/useLazyLoader.d.ts +5 -0
  215. package/dist/composables/sidebar/useScrollTo.d.ts +5 -0
  216. package/dist/composables/virtual/index.d.ts +4 -0
  217. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +72 -0
  218. package/dist/composables/virtual/useWindowedStore.d.ts +43 -0
  219. package/dist/composables/virtual/virtualSectionLayout.d.ts +103 -0
  220. package/dist/concentric.js +495 -221
  221. package/dist/configurator.js +2 -2
  222. package/dist/confirm-dialog.js +62 -47
  223. package/dist/constellation.js +635 -235
  224. package/dist/context-menu.js +2 -2
  225. package/dist/controls.js +1 -1
  226. package/dist/createCanvasLifecycle-Gh45Ce-p.js +93 -0
  227. package/dist/dark.js +1 -1
  228. package/dist/data-table.js +1 -1
  229. package/dist/deck.d.ts +1 -0
  230. package/dist/deck.js +105 -0
  231. package/dist/dialog.js +4 -3
  232. package/dist/dock.js +602 -458
  233. package/dist/dot-flow-field.js +580 -290
  234. package/dist/dot-matrix.d.ts +1 -0
  235. package/dist/dot-matrix.js +630 -0
  236. package/dist/dotMatrixField-D_x9_1qq.js +48 -0
  237. package/dist/{dropdown-menu-CofSZuk8.js → dropdown-menu-aJmV5SqE.js} +83 -79
  238. package/dist/dropdown-menu.js +1 -1
  239. package/dist/easing.js +188 -176
  240. package/dist/expandable-container.js +42 -20
  241. package/dist/fading-scroll.js +1 -1
  242. package/dist/flow.glsl-B2P7e0MT.js +4 -0
  243. package/dist/forms.js +62 -60
  244. package/dist/fourier-field.js +825 -178
  245. package/dist/fourier-math.js +1 -1
  246. package/dist/glass-ui.css +1 -1
  247. package/dist/glass-ui.js +145 -104
  248. package/dist/goo-blob.js +171 -1228
  249. package/dist/goo-dot-matrix.d.ts +1 -0
  250. package/dist/goo-dot-matrix.js +591 -0
  251. package/dist/handmark.js +1 -1
  252. package/dist/hover-card.js +1 -1
  253. package/dist/hover-popover.js +1 -1
  254. package/dist/icon-chip.js +1 -1
  255. package/dist/icon-tooltip.js +1 -1
  256. package/dist/index.d.ts +2 -0
  257. package/dist/instrument-chassis.js +1 -1
  258. package/dist/keyboard.js +1 -1
  259. package/dist/labeled-field.js +70 -60
  260. package/dist/metric-cell.js +1 -1
  261. package/dist/metric-stack.js +11 -2
  262. package/dist/motion-core.js +54 -32
  263. package/dist/motion-curves.js +11 -1
  264. package/dist/motion.js +46 -111
  265. package/dist/notification.js +1 -1
  266. package/dist/number-field.js +1 -1
  267. package/dist/pager-dots.js +2 -91
  268. package/dist/paper-backdrop.js +1 -1
  269. package/dist/paper-grid.d.ts +1 -0
  270. package/dist/paper-grid.js +788 -0
  271. package/dist/{presets-BW2b-fr1.js → presets-CvOUqtdY.js} +3 -3
  272. package/dist/{procedural-color.glsl-CIFsJhwI.js → procedural-color.wgsl-m7Zgv35j.js} +2 -2
  273. package/dist/progress.js +1 -1
  274. package/dist/pulse.js +1 -1
  275. package/dist/reactive.js +1 -1
  276. package/dist/{useCanvas2D-B8w_E3Rr.js → resolveCanvasColor-yPyIpJt9.js} +12 -2
  277. package/dist/scrollReader-DI1NWxUw.js +42 -0
  278. package/dist/scrolling-text.js +1 -1
  279. package/dist/search.js +160 -304
  280. package/dist/select.js +3 -3
  281. package/dist/selectable-chip.d.ts +1 -0
  282. package/dist/selectable-chip.js +65 -0
  283. package/dist/separator.js +1 -1
  284. package/dist/{sheet-tZMg0E0w.js → sheet-B2flBfLH.js} +2 -2
  285. package/dist/sheet.js +1 -1
  286. package/dist/sidebar.js +216 -114
  287. package/dist/slider.js +1 -1
  288. package/dist/sortable-list.js +1 -1
  289. package/dist/spectrum-walk-BVzA7Biz.js +33 -0
  290. package/dist/{springPresets-CFQGQfdl.js → springPresets-Ce7OYCm9.js} +12 -6
  291. package/dist/styles/animations.css +13 -3
  292. package/dist/styles/cards.css +69 -0
  293. package/dist/styles/completion-seal.css +131 -0
  294. package/dist/styles/components.css +2 -3
  295. package/dist/styles/configurator.css +55 -0
  296. package/dist/styles/critical-partition.mjs +33 -11
  297. package/dist/styles/deferred.css +2 -0
  298. package/dist/styles/dock/cta-seat.css +87 -0
  299. package/dist/styles/dock/density.css +153 -0
  300. package/dist/styles/dock/layers.css +55 -7
  301. package/dist/styles/dock/morph-bridge.css +54 -18
  302. package/dist/styles/dock/morph.css +41 -33
  303. package/dist/styles/dock/overflow.css +12 -0
  304. package/dist/styles/dock/search.css +68 -0
  305. package/dist/styles/dock/shape.css +124 -0
  306. package/dist/styles/dock/shell.css +23 -5
  307. package/dist/styles/dock/stack-rail.css +264 -0
  308. package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
  309. package/dist/styles/dock-controls/icon-button.css +14 -0
  310. package/dist/styles/dock.css +11 -1
  311. package/dist/styles/glass/accent-tone.css +66 -0
  312. package/dist/styles/glass/control-surfaces.css +167 -0
  313. package/dist/styles/glass/ladder.css +67 -17
  314. package/dist/styles/glass/rim.css +19 -9
  315. package/dist/styles/glass/surfaces.css +69 -148
  316. package/dist/styles/glass.css +10 -0
  317. package/dist/styles/index.css +15 -0
  318. package/dist/styles/scroll-chrome.css +123 -0
  319. package/dist/styles/scroll-driven.css +38 -0
  320. package/dist/styles/segmented-tabs.css +50 -14
  321. package/dist/styles/theme/bridges.css +22 -0
  322. package/dist/styles/theme/radius.css +18 -1
  323. package/dist/styles/tokens/color-radius.css +13 -3
  324. package/dist/styles/tokens/dark-arm.css +39 -6
  325. package/dist/styles/tokens/glass-deep.css +28 -3
  326. package/dist/styles/tokens/glass-fx.css +44 -1
  327. package/dist/styles/tokens/glass.css +91 -31
  328. package/dist/styles/tokens/light-dark.css +1 -1
  329. package/dist/styles/tokens/offsets.css +27 -0
  330. package/dist/styles/tokens/property-regs.css +133 -0
  331. package/dist/styles/tokens/scale-paper.css +73 -29
  332. package/dist/styles/tokens/scheme-motion.css +44 -6
  333. package/dist/styles/tokens/sizing-config.css +110 -0
  334. package/dist/styles/tokens/sizing.css +55 -104
  335. package/dist/styles/tokens.css +5 -0
  336. package/dist/styles/typography/semantic.css +18 -5
  337. package/dist/styles/utilities/a11y-overrides.css +20 -5
  338. package/dist/styles/utilities/base-misc.css +52 -0
  339. package/dist/styles/utilities/btn.css +14 -3
  340. package/dist/styles/utilities/components.css +31 -6
  341. package/dist/styles/utilities/metal.css +26 -0
  342. package/dist/switch.js +1 -1
  343. package/dist/tabs.js +8 -8
  344. package/dist/timeline.js +1 -1
  345. package/dist/toast.js +1 -1
  346. package/dist/toggle-chip.js +10 -10
  347. package/dist/toggle-group.js +1 -1
  348. package/dist/tooltip.js +1 -1
  349. package/dist/typewriter.js +1 -1
  350. package/dist/uniformBridgeWGPU-CtAKl45L.js +1204 -0
  351. package/dist/{useAnimatedNumber-BfUq2bUM.js → useAnimatedNumber-CLrxicG9.js} +1 -1
  352. package/dist/{useConfiguratorState-DNlOh6c8.js → useConfiguratorState-4xblKfwd.js} +25 -24
  353. package/dist/useControlSize-SH1UmJCi.js +9 -0
  354. package/dist/useDockCtaReceive-DfFkmgL1.js +82 -0
  355. package/dist/{useDragMorph-DgxnsVJz.js → useDragMorph-BUgAC-zK.js} +4 -4
  356. package/dist/useFuzzySearch-DIhcYtcw.js +177 -0
  357. package/dist/useGpuSubstrate-4pTcp6mX.js +294 -0
  358. package/dist/{useLiquidPress-kfb4KX79.js → useLiquidPress-BooG97RY.js} +2 -2
  359. package/dist/usePointerVelocityField-QLsy3_kv.js +91 -0
  360. package/dist/useScrollChrome-D66AVP7C.js +258 -0
  361. package/dist/{useSpringMount-q1amq1SJ.js → useSpringMount-BWDnKIwh.js} +1 -1
  362. package/dist/useSpringPress-B1-Czp-V.js +36 -0
  363. package/dist/useViewTransition-CUI1nAgn.js +95 -0
  364. package/dist/{vendor-CKmzio-i.js → vendor-B2qOlYY3.js} +24 -11
  365. package/dist/virtual.d.ts +1 -0
  366. package/dist/virtual.js +225 -0
  367. package/dist/watercolor-dot.js +116 -73
  368. package/package.json +127 -7
  369. package/src/styles/animations.css +13 -3
  370. package/src/styles/cards.css +69 -0
  371. package/src/styles/completion-seal.css +131 -0
  372. package/src/styles/configurator.css +55 -0
  373. package/src/styles/critical-partition.mjs +33 -11
  374. package/src/styles/dock/cta-seat.css +87 -0
  375. package/src/styles/dock/density.css +153 -0
  376. package/src/styles/dock/layers.css +55 -7
  377. package/src/styles/dock/morph-bridge.css +54 -18
  378. package/src/styles/dock/morph.css +41 -33
  379. package/src/styles/dock/overflow.css +12 -0
  380. package/src/styles/dock/search.css +68 -0
  381. package/src/styles/dock/shape.css +124 -0
  382. package/src/styles/dock/shell.css +23 -5
  383. package/src/styles/dock/stack-rail.css +264 -0
  384. package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
  385. package/src/styles/dock-controls/icon-button.css +14 -0
  386. package/src/styles/dock.css +11 -1
  387. package/src/styles/glass/accent-tone.css +66 -0
  388. package/src/styles/glass/control-surfaces.css +167 -0
  389. package/src/styles/glass/ladder.css +67 -17
  390. package/src/styles/glass/rim.css +19 -9
  391. package/src/styles/glass/surfaces.css +69 -148
  392. package/src/styles/glass.css +10 -0
  393. package/src/styles/index.css +15 -0
  394. package/src/styles/scroll-chrome.css +123 -0
  395. package/src/styles/scroll-driven.css +38 -0
  396. package/src/styles/segmented-tabs.css +50 -14
  397. package/src/styles/theme/bridges.css +22 -0
  398. package/src/styles/theme/radius.css +18 -1
  399. package/src/styles/tokens/color-radius.css +13 -3
  400. package/src/styles/tokens/dark-arm.css +39 -6
  401. package/src/styles/tokens/glass-deep.css +28 -3
  402. package/src/styles/tokens/glass-fx.css +44 -1
  403. package/src/styles/tokens/glass.css +91 -31
  404. package/src/styles/tokens/light-dark.css +1 -1
  405. package/src/styles/tokens/offsets.css +27 -0
  406. package/src/styles/tokens/property-regs.css +133 -0
  407. package/src/styles/tokens/scale-paper.css +73 -29
  408. package/src/styles/tokens/scheme-motion.css +44 -6
  409. package/src/styles/tokens/sizing-config.css +110 -0
  410. package/src/styles/tokens/sizing.css +55 -104
  411. package/src/styles/tokens.css +5 -0
  412. package/src/styles/typography/semantic.css +18 -5
  413. package/src/styles/utilities/a11y-overrides.css +20 -5
  414. package/src/styles/utilities/base-misc.css +52 -0
  415. package/src/styles/utilities/btn.css +14 -3
  416. package/src/styles/utilities/components.css +31 -6
  417. package/src/styles/utilities/metal.css +26 -0
  418. package/dist/ContextMenuContent-uWnVxDab.js +0 -85
  419. package/dist/DialogFooter-BZNX5aVr.js +0 -165
  420. package/dist/HoverCardContent-b2uaAMRR.js +0 -83
  421. package/dist/Input-h9v5LeXf.js +0 -55
  422. package/dist/NumberFieldContent-Cq7EzX-U.js +0 -138
  423. package/dist/Separator-pKF0oA4M.js +0 -37
  424. package/dist/Switch-CwYNf8bo.js +0 -47
  425. package/dist/TooltipProvider-rzvnXz60.js +0 -104
  426. package/dist/color-DweYl7pE.js +0 -86
  427. package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +0 -35
  428. package/dist/components/custom/constellation/constellationDraw.d.ts +0 -30
  429. package/dist/components/custom/dock/DockRail.vue.d.ts +0 -89
  430. package/dist/createCanvasLifecycle-CHD5XrDW.js +0 -82
  431. package/dist/procedural-color.wgsl-CToRHugY.js +0 -224
  432. package/dist/resolveCanvasColor-CUyHr5Uu.js +0 -11
  433. package/dist/styles/dock/rail-extend.css +0 -397
  434. package/dist/usePointerVelocityField-JbRd5CrM.js +0 -137
  435. package/dist/useRAFLoop-UYa4zoiN.js +0 -109
  436. package/dist/useSpringPress-BsqPr7FJ.js +0 -34
  437. package/src/styles/dock/rail-extend.css +0 -397
  438. /package/dist/{FadingScroll-DI6hQhT9.js → FadingScroll-DLRbH5Xr.js} +0 -0
  439. /package/dist/{HoverPopover-CbqbNwgU.js → HoverPopover-BcIxvyqZ.js} +0 -0
  440. /package/dist/{InstrumentChassis-Bx0F_q5g.js → InstrumentChassis-CxsHSyMj.js} +0 -0
  441. /package/dist/{PaperBackdrop-Vf3tlpvd.js → PaperBackdrop-CqwjnfLv.js} +0 -0
  442. /package/dist/{Progress-DctG61iZ.js → Progress-CnqB7gLm.js} +0 -0
  443. /package/dist/{ScrollingText-yOpBzFYq.js → ScrollingText-CTZbA_cG.js} +0 -0
  444. /package/dist/{SelectGroup-DwwjicPY.js → SelectGroup-BFiod7X2.js} +0 -0
  445. /package/dist/{compile-CQEFRTmx.js → compile-nZ1xVYTp.js} +0 -0
  446. /package/dist/{constants-BPOqYJAm.js → constants--C2DkLW8.js} +0 -0
  447. /package/dist/{math-BINYmg5z.js → math-Eb0w3LqU.js} +0 -0
  448. /package/dist/{prng-Za0Rmgag.js → prng-B-d9eYX8.js} +0 -0
  449. /package/dist/{slider-DVb4HXU-.js → slider-2A0rPn79.js} +0 -0
  450. /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-CmjB9E32.js} +0 -0
  451. /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-Dbozzjgm.js} +0 -0
  452. /package/dist/{useInterval-CvK1mL92.js → useInterval-CNdua40W.js} +0 -0
  453. /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BPRp33Im.js} +0 -0
  454. /package/dist/{useLiquidFlex-mZPMiNXh.js → useLiquidFlex-UmA6LMZu.js} +0 -0
  455. /package/dist/{useScrollProgress-D7bYU2RK.js → useScrollProgress-c3yxmH6a.js} +0 -0
  456. /package/dist/{useSortable-DHjtZSEd.js → useSortable-BVqlJRBR.js} +0 -0
  457. /package/dist/{useTextHighlight-CWEi25hf.js → useTextHighlight-NmBM5V_4.js} +0 -0
  458. /package/dist/{vReveal-Czsb7zQC.js → vReveal-D9k0jADx.js} +0 -0
  459. /package/dist/{vSpecular-CQFmLNzA.js → vSpecular-EX7loENl.js} +0 -0
@@ -28,6 +28,18 @@
28
28
  paper tier, exactly like `.paper-texture` / `cartoon-surface` /
29
29
  `veil-surface`.
30
30
 
31
+ BC.W-GRID-SIMPLE — the card-interior pitch UNIFIES onto the ONE
32
+ `--grid-*` rhythm source: `--paper-grid-texture-size` now reads
33
+ `var(--grid-pitch)` (scale-paper.css), retiring the prior 32px literal so
34
+ the demo page grid + this card interior share ONE pitch (the
35
+ two-parallel-28px/32px-systems fix). This card-interior register keeps its
36
+ OWN quieter ambient strength (`--paper-grid-opacity`), DISTINCT from the
37
+ full-bleed page-bg 3%/11% tier — a card interior reads softer than a page
38
+ wash. It is a host `background-image` only — NO `backdrop-filter`/`filter`
39
+ on this element, so the grid lines are NEVER convolved into the "blurry
40
+ mess" the page grid suffered (the de-blur discipline: the grid is the
41
+ card's own underlay, not a crisp grid read THROUGH a blurred glass plate).
42
+
31
43
  THE SEAM (the two-pseudo-budget reveal, recorded — the Triumvirate's
32
44
  through-glass-read locate-the-seam, NOT a token-α loop): a glass tier
33
45
  already claims BOTH pseudos — `::before` is the moving-specular catch-
@@ -95,6 +107,63 @@
95
107
  }
96
108
  }
97
109
 
110
+ /* ── Selection-card decoration (BC.W-SELECTION-CARD — the I5 selection card) ──────
111
+ The ONE new Atlas component, realized as a `<Card variant="selection">`
112
+ DECORATION (NOT a new SFC, NOT a new tier, NOT a new compositing seam). It
113
+ COMPOSES the two BUILT seams — the A-2 `--glass-accent` rim (glass/rim.css +
114
+ glass/material.css) + the A-3 `.metal-*-border` swept rim (utilities/metal.css)
115
+ — and authors ZERO competing rim/background recipe of its own. The rule is a
116
+ TOKEN-SUBSTITUTION on the base tier (the `.glass-opaque`/`.glass-deep` precedent):
117
+ it re-points the EXISTING `--glass-accent-strength` (+ an OPTIONAL sub-perceptual
118
+ floating-tier lift) locally; it does NOT declare a `background`/`border`.
119
+
120
+ THE RIM-NOT-FILL DISCIPLINE (the no-saturated-slab structural bar): selection is
121
+ read by (a) the metal rim (the `.metal-*-border` class Card composes when
122
+ `:selected`), (b) a BOUNDED accent-strength LIFT (unselected → selected, both ≤
123
+ the W-GLASS-ACCENT rim ceiling), and OPTIONALLY (c) a sub-perceptual
124
+ `--glass-bg-floating`-tier lift (the "selected reads as glass" register). The
125
+ plate STAYS warm-cream translucent — the BC.W-GLASS-IDENTITY floor is inviolate.
126
+ This rule NEVER writes `--glass-tint-source`/`--glass-tint-strength` (the A-2
127
+ distinct-axis fence — the accent is rim+glint DECORATION, not whole-plate
128
+ legibility) and NEVER paints a `--foreground`/`--primary`/`--surface-tint` opaque
129
+ plate FILL (the "selected = loud fill" anti-pattern is the disease-root the gate's
130
+ S3 bite reds).
131
+
132
+ THE ACCENT-STRENGTH LADDER (the bounded lift, two tokens a consumer retunes):
133
+ unselected → --selection-accent-strength (~16% — a calm rim glow)
134
+ selected → --selection-accent-strength-selected (~28% — brighter at the rim,
135
+ still ≤ the W-GLASS-ACCENT ceiling; the data hue reads stronger at
136
+ the rim/glint, NOT a flooded plate)
137
+ The host (Card.vue) writes `--glass-accent` (the HUE) per-instance off `data-hue`;
138
+ this rule supplies the STRENGTH so the calm/selected lift is ONE source. An UNSET
139
+ `data-hue` leaves `--glass-accent: transparent` (the @property default), so even
140
+ with the strength engaged the `color-mix(in oklab, X, transparent N%)` === X — the
141
+ A-2 no-op floor: a `variant="selection"` card with no `data-hue` is byte-identical
142
+ to a bare Card. A consumer may override `--glass-accent-strength` per-instance
143
+ (Card.vue's `data-hue-strength`); this rule is the default. */
144
+ [data-variant="selection"] {
145
+ /* The bounded accent-strength ladder — both ≤ the W-GLASS-ACCENT rim ceiling.
146
+ A consumer retunes the calm/selected pair from these two knobs. */
147
+ --selection-accent-strength: 16%;
148
+ --selection-accent-strength-selected: 28%;
149
+ /* Re-point the EXISTING accent-strength seam to the calm rung (the rim glow at
150
+ rest). At an unset `--glass-accent: transparent` this is a provable no-op. */
151
+ --glass-accent-strength: var(--selection-accent-strength);
152
+ }
153
+
154
+ [data-variant="selection"][data-selected="true"] {
155
+ /* SELECTED — lift the accent-strength to the brighter (still-bounded) rung. The
156
+ brighter rim + the `.metal-*-border` Card composes are the selection read; the
157
+ plate is UNTOUCHED (no background/fill here — rim-not-fill). */
158
+ --glass-accent-strength: var(--selection-accent-strength-selected);
159
+ /* OPTIONAL sub-perceptual "selected reads as glass" lift — re-point the base
160
+ tier's resting fill toward the floating rung (the W-REGISTER-IOS tier), a
161
+ TOKEN re-point, NOT a `--surface-tint` gray plate, NEVER a `--foreground`
162
+ brand fill. The plate stays warm-cream translucent (the floating rung is the
163
+ SAME warm-cream material at a heavier rung, the BC.W-GLASS-IDENTITY ladder). */
164
+ --glass-bg-resting: var(--glass-bg-floating, var(--glass-bg-resting));
165
+ }
166
+
98
167
  /* ── Cartoon surface decoration ───────────────────────────────────
99
168
  The Memphis-sticker register. Composes ON TOP of a glass tier — it is
100
169
  NOT itself a tier. The former `.glass-cartoon` recipe declared
@@ -0,0 +1,131 @@
1
+ /* BC.W-AX-COMPLETION-SEAL — the hero-scale earned-GOLD completion seal.
2
+ *
3
+ * A determinate process completes and a HERO-SCALE gold mark DRAWS itself onto the
4
+ * surface: the stroke INKS (a `stroke-dashoffset` wipe on the registered `--seal-draw`
5
+ * <percentage>), settles with a small spring overshoot (the `--seal-scale` SPATIAL leg
6
+ * on the seal's own `--spring-snappy`/`--spring-bouncy` clock), and glints ONCE on
7
+ * settle (the `--seal-glint` + the W-AX-METAL-GLOW gold catch-light). It is GOLD because
8
+ * completion is EARNED — the ink reads the W-PHASE-PALETTE completion register
9
+ * (`--phase-complete-color`/`--color-gold`), so a consumer re-inking completion re-inks
10
+ * the seal in lockstep. The seal mints NO new gold token + does NOT re-author the metal
11
+ * glow — it COMPOSES both (the earned-gold register has ONE home).
12
+ *
13
+ * ONE-SHOT: the draw fires ONCE on `play` (the `.completion-seal[data-play]` arm), then
14
+ * holds the static fully-drawn seal — no looping shimmer (the §6 calm register; the disco
15
+ * family stays gone). PRM-gated: under `prefers-reduced-motion: reduce` the seal appears
16
+ * instantly fully-drawn (`--seal-draw: 100%` snap), no stroke animation, no glint sweep
17
+ * (the seal is correct, the motion off — the vestibular floor).
18
+ *
19
+ * COMPOSITOR-ONLY: the draw rides `stroke-dashoffset` (a paint prop) + `transform` (the
20
+ * scale) + `filter`/`opacity` (the glint) — NO layout property animates
21
+ * (`proof:no-layout-animation` holds). The registrations live in
22
+ * tokens/property-regs.css §18 (the specular/border-progress split: the @property reg
23
+ * there, the consumption here). */
24
+
25
+ .completion-seal {
26
+ /* The seal stroke ink — the EARNED-gold completion register (Q2). The runtime
27
+ cascade default is the token form: a consumer (or any ancestor) re-inking
28
+ `--phase-complete-color` re-inks the seal. The @property `initial-value` literal
29
+ light-gold is only the non-supporting-engine fallback. */
30
+ --seal-ink: var(--phase-complete-color, var(--color-gold));
31
+
32
+ display: inline-flex;
33
+ align-items: center;
34
+ justify-content: center;
35
+ /* The settle scale rides the SPATIAL leg — a small overshoot on the seal's own
36
+ spring clock (NOT a generic --duration-*). Compositor-only (transform). */
37
+ transform: scale(var(--seal-scale, 1));
38
+ }
39
+
40
+ /* The hero-scale gold-draw glyph — an SVG <path>/<circle> stroked in `--seal-ink`. The
41
+ stroke INKS itself via the `--seal-draw` wipe (a stroke-dashoffset paint, never a
42
+ fade). The glint reads the W-AX-METAL-GLOW catch-light (composed, not re-authored). */
43
+ .completion-seal__mark {
44
+ fill: none;
45
+ stroke: var(--seal-ink);
46
+ stroke-width: var(--seal-stroke-width, 6);
47
+ stroke-linecap: round;
48
+ stroke-linejoin: round;
49
+ /* The stroke-reveal: the dash array is the full path length, the offset rides the
50
+ `--seal-draw` extent (100% = drawn → offset 0; 0% = undrawn → offset = full
51
+ length). pathLength="100" normalizes the glyph so the wipe is path-agnostic. */
52
+ stroke-dasharray: 100;
53
+ stroke-dashoffset: calc(100 - var(--seal-draw, 100%) / 1%);
54
+ /* The one-pass gold glint on settle — the W-AX-METAL-GLOW catch-light, scaled by
55
+ `--seal-glint` (0 at rest → 1 on settle-pass). A drop-shadow halo of the seal's
56
+ OWN gold ink at the metal-glow radius/strength — composed, never re-authored.
57
+ The seal is NOT a `.metal-*` element, so the bare `--metal-glow-blur`/`-opacity`
58
+ (declared scoped inside `.metal-{gold,silver,bronze}`) do not cascade here; the
59
+ seal CONSUMES THE REGISTER by chaining to the `:root` `-default` retune seam
60
+ (glass-fx.css), NOT a hardcoded magic-number copy — a consumer who retunes
61
+ `--metal-glow-blur-default` re-tunes the seal halo in lockstep. */
62
+ --metal-glow-blur: var(--metal-glow-blur-default, 0.5em);
63
+ --metal-glow-opacity: var(--metal-glow-opacity-default, 0.35);
64
+ filter: drop-shadow(
65
+ 0 0
66
+ calc(var(--metal-glow-blur) * var(--seal-glint, 0))
67
+ color-mix(
68
+ in oklab,
69
+ var(--seal-ink),
70
+ transparent
71
+ calc(100% - var(--metal-glow-opacity) * var(--seal-glint, 0) * 100%)
72
+ )
73
+ );
74
+ }
75
+
76
+ /* THE ONE-SHOT DRAW — fires ONCE on `play`, then holds static. PRM-gated: the whole
77
+ motion sits inside the no-preference gate (under reduce the seal is the static
78
+ fully-drawn mark, the @property initial-values). The draw is NOT a loop — a single
79
+ pass each on the stroke-reveal + the settle + the glint. */
80
+ @media (prefers-reduced-motion: no-preference) {
81
+ .completion-seal[data-play] {
82
+ animation: completion-seal-settle var(--spring-bouncy-duration, 0.57s)
83
+ var(--spring-bouncy) both;
84
+ }
85
+ .completion-seal[data-play] .completion-seal__mark {
86
+ animation:
87
+ completion-seal-draw var(--spring-snappy-duration, 0.34s)
88
+ var(--ease-out, ease-out) both,
89
+ completion-seal-glint var(--spring-snappy-duration, 0.34s)
90
+ var(--ease-out, ease-out)
91
+ var(--spring-snappy-duration, 0.34s) both;
92
+ }
93
+ }
94
+
95
+ /* The stroke-reveal: the gold INKS itself 0→full (a stroke-dashoffset paint wipe — the
96
+ editorial draw-on). The registered `--seal-draw` interpolates; the offset reads it. */
97
+ @keyframes completion-seal-draw {
98
+ from {
99
+ --seal-draw: 0%;
100
+ }
101
+ to {
102
+ --seal-draw: 100%;
103
+ }
104
+ }
105
+
106
+ /* The settle: the seal lands with a small overshoot (the SPATIAL enter-bounce). The
107
+ transform scale rides the `--seal-scale` spring; the keyframe nudges the scale once
108
+ (the §6 calm overshoot — an ENTER may overshoot on arrival). Compositor-only. */
109
+ @keyframes completion-seal-settle {
110
+ from {
111
+ --seal-scale: 0.92;
112
+ }
113
+ to {
114
+ --seal-scale: 1;
115
+ }
116
+ }
117
+
118
+ /* The glint: a ONE-PASS gold catch-light sweep on settle (0 → peak → 0). NOT a loop —
119
+ a single pass, then the seal holds static at glint 0 (the metal-glow whisper is the
120
+ resting register; the disco family stays gone). */
121
+ @keyframes completion-seal-glint {
122
+ 0% {
123
+ --seal-glint: 0;
124
+ }
125
+ 45% {
126
+ --seal-glint: 1;
127
+ }
128
+ 100% {
129
+ --seal-glint: 0;
130
+ }
131
+ }
@@ -29,6 +29,7 @@
29
29
  --leading-snug: 1.375;
30
30
  --radius: 0.25rem;
31
31
  --radius-lg: 0.5rem;
32
+ --radius-md: 0.375rem;
32
33
  --radius-sm: 0.25rem;
33
34
  --spacing: 0.25rem;
34
35
  --text-2xl: 1.5rem;
@@ -37,12 +38,10 @@
37
38
  --text-5xl--line-height: 1;
38
39
  --text-base: 1rem;
39
40
  --text-base--line-height: calc(1.5 / 1);
40
- --text-lg: 1.125rem;
41
- --text-lg--line-height: calc(1.75 / 1.125);
42
41
  --text-sm: 0.875rem;
43
42
  --text-sm--line-height: calc(1.25 / 0.875);
44
43
  --text-xs: 0.75rem;
45
44
  --text-xs--line-height: calc(1 / 0.75);
46
45
  --tracking-widest: 0.1em;
47
46
  }
48
- .pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{top:calc(-1 * var(--carousel-nav-offset))}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{right:calc(-1 * var(--carousel-nav-offset))}.bottom-\(--dock-pos\){bottom:var(--dock-pos)}.bottom-0{bottom:0}.bottom-1{bottom:var(--spacing)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{bottom:calc(-1 * var(--carousel-nav-offset))}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{left:calc(-1 * var(--carousel-nav-offset))}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-\[1\]{z-index:1}.z-dock{z-index:var(--z-dock)}.z-hovercard{z-index:var(--z-hovercard)}.z-modal{z-index:var(--z-modal)}.z-overlay{z-index:var(--z-overlay)}.z-popover{z-index:var(--z-popover)}.z-toast{z-index:var(--z-toast)}.z-tooltip{z-index:var(--z-tooltip)}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.my-8{margin-block:calc(var(--spacing) * 8)}.-mt-\(--stack-overlap-lg\){margin-top:calc(var(--stack-overlap-lg) * -1)}.-mt-\(--stack-overlap-md\){margin-top:calc(var(--stack-overlap-md) * -1)}.-mt-\(--stack-overlap-sm\){margin-top:calc(var(--stack-overlap-sm) * -1)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.-ml-\(--stack-overlap-lg\){margin-left:calc(var(--stack-overlap-lg) * -1)}.-ml-\(--stack-overlap-md\){margin-left:calc(var(--stack-overlap-md) * -1)}.-ml-\(--stack-overlap-sm\){margin-left:calc(var(--stack-overlap-sm) * -1)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.aspect-square{aspect-ratio:1}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-icon-sm{width:var(--icon-sm);height:var(--icon-sm)}.h-\(--carousel-nav-size\){height:var(--carousel-nav-size)}.h-\(--control-h-lg\){height:var(--control-h-lg)}.h-\(--control-h-md\){height:var(--control-h-md)}.h-\(--control-h-sm\){height:var(--control-h-sm)}.h-\(--control-h-xs\){height:var(--control-h-xs)}.h-\(--dropdown-input-height\){height:var(--dropdown-input-height)}.h-\(--reka-select-trigger-height\){height:var(--reka-select-trigger-height)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-32{height:calc(var(--spacing) * 32)}.h-\[1px\]{height:1px}.h-\[calc\(2rem\*var\(--ui-scale\)\)\]{height:calc(2rem * var(--ui-scale))}.h-\[var\(--progress-sectioned-height\,0\.875rem\)\]{height:var(--progress-sectioned-height,.875rem)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\[50vh\]{max-height:50vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-20{min-height:calc(var(--spacing) * 20)}.w-\(--carousel-nav-size\){width:var(--carousel-nav-size)}.w-\(--control-h-md\){width:var(--control-h-md)}.w-\(--control-h-xs\){width:var(--control-h-xs)}.w-\(--reka-popover-trigger-width\){width:var(--reka-popover-trigger-width)}.w-\(--reka-tabs-indicator-size\){width:var(--reka-tabs-indicator-size)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-16{width:calc(var(--spacing) * 16)}.w-32{width:calc(var(--spacing) * 32)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[1px\]{width:1px}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-popover{width:var(--popover-width)}.w-px{width:1px}.max-w-\[500px\]{max-width:500px}.max-w-lg{max-width:var(--container-lg)}.min-w-\(--reka-select-trigger-width\){min-width:var(--reka-select-trigger-width)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-\[300px\]{min-width:300px}.min-w-input-sm{min-width:var(--input-min-width-sm)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.origin-\(--reka-combobox-content-transform-origin\){transform-origin:var(--reka-combobox-content-transform-origin)}.origin-\(--reka-select-content-transform-origin\){transform-origin:var(--reka-select-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\(--reka-tabs-indicator-position\){--tw-translate-x:var(--reka-tabs-indicator-position);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0) var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.scroll-py-1{scroll-padding-block:var(--spacing)}.scrollbar-thin{scrollbar-width:thin}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-\[minmax\(var\(--configurator-stage-min\,18rem\)\,auto\)_minmax\(0\,1fr\)\]{grid-template-rows:minmax(var(--configurator-stage-min,18rem),auto) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-items-start{justify-items:start}.gap-\(--card-pad-title-gap\){gap:var(--card-pad-title-gap)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-\(--card-pad-title-gap\){row-gap:var(--card-pad-title-gap)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:var(--radius)}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-badge{border-radius:var(--radius-badge)}.rounded-button{border-radius:var(--radius-button)}.rounded-card{border-radius:var(--radius-card)}.rounded-control{border-radius:var(--radius-control)}.rounded-dialog{border-radius:var(--radius-dialog)}.rounded-field{border-radius:var(--radius-field)}.rounded-input{border-radius:var(--radius-input)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-panel{border-radius:var(--radius-panel)}.rounded-pill{border-radius:var(--radius-pill)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-tooltip{border-radius:var(--radius-tooltip)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-\(--configurator-divider-section\){border-color:var(--configurator-divider-section)}.border-\(--control-surface-border\){border-color:var(--control-surface-border)}.border-\[color-mix\(in_srgb\,var\(--border\)_35\%\,transparent\)\]{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-\[color-mix\(in_srgb\,var\(--border\)_35\%\,transparent\)\]{border-color:color-mix(in srgb,var(--border) 35%,transparent)}}.border-background{border-color:var(--background)}.border-border,.border-border\/40{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/40{border-color:color-mix(in oklab, var(--border) 40%, transparent)}}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-border\/60{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/60{border-color:color-mix(in oklab, var(--border) 60%, transparent)}}.border-input{border-color:var(--input)}.border-muted-foreground{border-color:var(--muted-foreground)}.border-primary{border-color:var(--primary)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\(--control-surface-bg\){background-color:var(--control-surface-bg)}.bg-\(--glass-bg-quiet\){background-color:var(--glass-bg-quiet)}.bg-\(--glass-bg-wash\){background-color:var(--glass-bg-wash)}.bg-\[color-mix\(in_srgb\,var\(--background\)_60\%\,transparent\)\]{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--background\)_60\%\,transparent\)\]{background-color:color-mix(in srgb,var(--background) 60%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\]{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\]{background-color:color-mix(in srgb,var(--background) 96%,transparent)}}.bg-\[var\(--progress-track\,var\(--progress-track-on-glass\)\)\]{background-color:var(--progress-track,var(--progress-track-on-glass))}.bg-accent{background-color:var(--accent)}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/15{background-color:color-mix(in oklab, var(--color-amber-500) 15%, transparent)}}.bg-background{background-color:var(--background)}.bg-border,.bg-border\/70{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.bg-border\/70{background-color:color-mix(in oklab, var(--border) 70%, transparent)}}.bg-card,.bg-card\/40{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.bg-card\/40{background-color:color-mix(in oklab, var(--card) 40%, transparent)}}.bg-card\/70{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.bg-card\/70{background-color:color-mix(in oklab, var(--card) 70%, transparent)}}.bg-current{background-color:currentColor}.bg-destructive{background-color:var(--destructive)}.bg-info{background-color:var(--info)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-overlay-scrim{background-color:var(--overlay-scrim)}.bg-overlay-scrim-strong{background-color:var(--overlay-scrim-strong)}.bg-overlay-scrim-subtle{background-color:var(--overlay-scrim-subtle)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-success{background-color:var(--success)}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--warning)}.fill-\(--easing-curve-accent\){fill:var(--easing-curve-accent)}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.fill-muted-foreground\/50{fill:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.fill-muted-foreground\/50{fill:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.fill-muted-foreground\/60{fill:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.fill-muted-foreground\/60{fill:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.stroke-\(--easing-curve-accent\){stroke:var(--easing-curve-accent)}.stroke-background{stroke:var(--background)}.stroke-border,.stroke-border\/40{stroke:var(--border)}@supports (color:color-mix(in lab, red, red)){.stroke-border\/40{stroke:color-mix(in oklab, var(--border) 40%, transparent)}}.stroke-muted-foreground\/30{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.stroke-muted-foreground\/30{stroke:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.stroke-muted-foreground\/50{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.stroke-muted-foreground\/50{stroke:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-\(--card-pad-inline\){padding-inline:var(--card-pad-inline)}.px-\(--overlay-pad-inline\){padding-inline:var(--overlay-pad-inline)}.px-1{padding-inline:var(--spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-9{padding-inline:calc(var(--spacing) * 9)}.py-\(--overlay-pad-block\){padding-block:var(--overlay-pad-block)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-\(--card-pad-block\){padding-top:var(--card-pad-block)}.pt-\(--card-pad-footer\){padding-top:var(--card-pad-footer)}.pt-\(--card-pad-section-gap\){padding-top:var(--card-pad-section-gap)}.pt-\(--overlay-pad-block\){padding-top:var(--overlay-pad-block)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-\(--card-pad-block\){padding-bottom:var(--card-pad-block)}.pb-\(--overlay-pad-block\){padding-bottom:var(--overlay-pad-block)}.pb-0{padding-bottom:0}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-7{padding-left:calc(var(--spacing) * 7)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-display{font-family:var(--font-stack-display)}.font-mono{font-family:var(--font-stack-mono)}.font-sans{font-family:var(--font-stack-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.6rem\]{font-size:.6rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[length\:calc\(var\(--type-body\)\*var\(--ui-scale\)\)\]{font-size:calc(var(--type-body) * var(--ui-scale))}.text-\[length\:var\(--control-text\)\]{font-size:var(--control-text)}.text-\[length\:var\(--control-text-sm\)\]{font-size:var(--control-text-sm)}.text-caption{font-size:var(--type-caption)}.text-dropdown{font-size:var(--dropdown-text)}.text-dropdown-secondary{font-size:var(--dropdown-text-secondary)}.text-heading{font-size:var(--type-heading)}.text-micro{font-size:var(--type-micro)}.text-prose{font-size:var(--type-prose)}.text-small{font-size:var(--type-small)}.text-subheading{font-size:var(--type-subheading)}.text-title{font-size:var(--type-title)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-snug{--tw-tracking:var(--type-tracking-snug);letter-spacing:var(--type-tracking-snug)}.tracking-tight{--tw-tracking:var(--type-tracking-tight);letter-spacing:var(--type-tracking-tight)}.tracking-wider{--tw-tracking:var(--type-tracking-wider);letter-spacing:var(--type-tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.whitespace-nowrap{white-space:nowrap}.text-\(--easing-curve-accent\){color:var(--easing-curve-accent)}.text-accent-foreground{color:var(--accent-foreground)}.text-amber-700{color:var(--color-amber-700)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground,.text-foreground\/50{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/50{color:color-mix(in oklab, var(--foreground) 50%, transparent)}}.text-foreground\/70{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/70{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.text-foreground\/85{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/85{color:color-mix(in oklab, var(--foreground) 85%, transparent)}}.text-info-foreground{color:var(--info-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-muted-foreground-strong{color:var(--muted-foreground-strong)}.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/40{color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-success-foreground{color:var(--success-foreground)}.text-warning-foreground{color:var(--warning-foreground)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.accent-\(--easing-curve-accent\){accent-color:var(--easing-curve-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-card{--tw-shadow:var(--card-shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-cartoon-sm{--tw-shadow:var(--cartoon-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--background)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,border-color\,box-shadow\,color\,opacity\,transform\]{transition-property:background-color,border-color,box-shadow,color,opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,color\,transform\,box-shadow\]{transition-property:background-color,color,transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,box-shadow\,opacity\]{transition-property:transform,box-shadow,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,translate\]{transition-property:width,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-fast{--tw-duration:var(--duration-fast);transition-duration:var(--duration-fast)}.duration-normal{--tw-duration:var(--duration-normal);transition-duration:var(--duration-normal)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-spring-snappy{--tw-ease:var(--spring-snappy);transition-timing-function:var(--spring-snappy)}.ease-standard{--tw-ease:var(--motion-ease-standard);transition-timing-function:var(--motion-ease-standard)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/stack\:translate-x-1\.5:is(:where(.group\/stack):hover *){--tw-translate-x:calc(var(--spacing) * 1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/stack\:translate-y-1\.5:is(:where(.group\/stack):hover *){--tw-translate-y:calc(var(--spacing) * 1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/stack\:scale-105:is(:where(.group\/stack):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.group-data-\[state\=indeterminate\]\:block:is(:where(.group)[data-state=indeterminate] *){display:block}.group-data-\[state\=indeterminate\]\:hidden:is(:where(.group)[data-state=indeterminate] *){display:none}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group).destructive *){color:var(--color-red-300)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.user-invalid\:border-\(--destructive\):user-invalid{border-color:var(--destructive)}.user-invalid\:shadow-\(--invalid-ring\):user-invalid{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.hover\:scale-\(--scale-hover-btn\):hover{scale:var(--scale-hover-btn)}.hover\:border-\(--glass-border-resting\):hover{border-color:var(--glass-border-resting)}.hover\:border-\(--surface-tint-22\):hover{border-color:var(--surface-tint-22)}.hover\:border-\[color-mix\(in_srgb\,var\(--border\)_50\%\,transparent\)\]:hover{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.hover\:border-\[color-mix\(in_srgb\,var\(--border\)_50\%\,transparent\)\]:hover{border-color:color-mix(in srgb,var(--border) 50%,transparent)}}.hover\:bg-\(--glass-bg-resting-tinted\):hover{background-color:var(--glass-bg-resting-tinted)}.hover\:bg-\(--surface-tint-8\):hover{background-color:var(--surface-tint-8)}.hover\:bg-\[color-mix\(in_srgb\,var\(--accent\)_40\%\,transparent\)\]:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_srgb\,var\(--accent\)_40\%\,transparent\)\]:hover{background-color:color-mix(in srgb,var(--accent) 40%,transparent)}}.hover\:bg-accent:hover,.hover\:bg-accent\/80:hover{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-accent\/80:hover{background-color:color-mix(in oklab, var(--accent) 80%, transparent)}}.hover\:bg-amber-500\/25:hover{background-color:#f99c0040}@supports (color:color-mix(in lab, red, red)){.hover\:bg-amber-500\/25:hover{background-color:color-mix(in oklab, var(--color-amber-500) 25%, transparent)}}.hover\:bg-background:hover{background-color:var(--background)}.hover\:bg-card\/70:hover{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-card\/70:hover{background-color:color-mix(in oklab, var(--card) 70%, transparent)}}.hover\:bg-destructive:hover,.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-foreground\/5:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/5:hover{background-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-foreground\/\[0\.04\]:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/\[0\.04\]:hover{background-color:color-mix(in oklab, var(--foreground) 4%, transparent)}}.hover\:bg-glass-quiet:hover{background-color:var(--glass-bg-quiet)}.hover\:bg-info\/80:hover{background-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-info\/80:hover{background-color:color-mix(in oklab, var(--info) 80%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/40:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/40:hover{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-primary\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/90:hover{background-color:color-mix(in oklab, var(--primary) 90%, transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:bg-success\/80:hover{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-success\/80:hover{background-color:color-mix(in oklab, var(--success) 80%, transparent)}}.hover\:bg-warning\/80:hover{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-warning\/80:hover{background-color:color-mix(in oklab, var(--warning) 80%, transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-destructive-foreground:hover{color:var(--destructive-foreground)}.hover\:text-foreground:hover,.hover\:text-foreground\/70:hover{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:text-foreground\/70:hover{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-cartoon-md:hover{--tw-shadow:var(--cartoon-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group).destructive *):hover{background-color:var(--destructive)}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group).destructive *):hover{color:var(--destructive-foreground)}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group).destructive *):hover{color:var(--color-red-50)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\:user-invalid\:shadow-\(--invalid-ring\):focus-visible:user-invalid{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-100:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\(--scale-press-btn\):active{scale:var(--scale-press-btn)}.active\:border-\(--glass-border-floating\):active{border-color:var(--glass-border-floating)}.active\:bg-\(--glass-bg-floating-tinted\):active{background-color:var(--glass-bg-floating-tinted)}.active\:bg-accent\/70:active{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.active\:bg-accent\/70:active{background-color:color-mix(in oklab, var(--accent) 70%, transparent)}}.active\:bg-accent\/80:active{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.active\:bg-accent\/80:active{background-color:color-mix(in oklab, var(--accent) 80%, transparent)}}.active\:bg-amber-500\/35:active{background-color:#f99c0059}@supports (color:color-mix(in lab, red, red)){.active\:bg-amber-500\/35:active{background-color:color-mix(in oklab, var(--color-amber-500) 35%, transparent)}}.active\:bg-destructive\/80:active{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.active\:bg-destructive\/80:active{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.active\:bg-foreground\/12:active{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.active\:bg-foreground\/12:active{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.active\:bg-foreground\/\[0\.08\]:active{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.active\:bg-foreground\/\[0\.08\]:active{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.active\:bg-primary\/80:active{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.active\:bg-primary\/80:active{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.active\:bg-secondary\/70:active{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.active\:bg-secondary\/70:active{background-color:color-mix(in oklab, var(--secondary) 70%, transparent)}}.active\:opacity-80:active{opacity:.8}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-disabled:disabled{opacity:var(--opacity-disabled)}.has-data-\[slot\=card-action\]\:grid:has([data-slot=card-action]){display:grid}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-action\]\:items-start:has([data-slot=card-action]){align-items:flex-start}.has-\[\:user-invalid\]\:border-\(--destructive\):has(:user-invalid){border-color:var(--destructive)}.has-\[\:user-invalid\]\:shadow-\(--invalid-ring\):has(:user-invalid){--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:border-\(--destructive\)[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:text-destructive[aria-invalid=true]{color:var(--destructive)}.aria-invalid\:shadow-\(--invalid-ring\)[aria-invalid=true]{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:placeholder\:text-\[color-mix\(in_srgb\,var\(--destructive\)_60\%\,transparent\)\][aria-invalid=true]::placeholder{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:placeholder\:text-\[color-mix\(in_srgb\,var\(--destructive\)_60\%\,transparent\)\][aria-invalid=true]::placeholder{color:color-mix(in srgb,var(--destructive) 60%,transparent)}}.focus-visible\:aria-invalid\:shadow-\(--invalid-ring\):focus-visible[aria-invalid=true]{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-pressed\:scale-\(--scale-press-btn\)[aria-pressed=true]{scale:var(--scale-press-btn)}.aria-pressed\:bg-\[color-mix\(in_srgb\,var\(--foreground\)_10\%\,var\(--glass-bg-resting-tinted\)\)\][aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-\[color-mix\(in_srgb\,var\(--foreground\)_10\%\,var\(--glass-bg-resting-tinted\)\)\][aria-pressed=true]{background-color:color-mix(in srgb,var(--foreground) 10%,var(--glass-bg-resting-tinted))}}.aria-pressed\:bg-accent[aria-pressed=true],.aria-pressed\:bg-accent\/60[aria-pressed=true]{background-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-accent\/60[aria-pressed=true]{background-color:color-mix(in oklab, var(--accent) 60%, transparent)}}.aria-pressed\:bg-amber-500\/30[aria-pressed=true]{background-color:#f99c004d}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-amber-500\/30[aria-pressed=true]{background-color:color-mix(in oklab, var(--color-amber-500) 30%, transparent)}}.aria-pressed\:bg-destructive\/85[aria-pressed=true]{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-destructive\/85[aria-pressed=true]{background-color:color-mix(in oklab, var(--destructive) 85%, transparent)}}.aria-pressed\:bg-foreground\/10[aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-foreground\/10[aria-pressed=true]{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.aria-pressed\:bg-foreground\/\[0\.1\][aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-foreground\/\[0\.1\][aria-pressed=true]{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.aria-pressed\:bg-primary\/85[aria-pressed=true]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-primary\/85[aria-pressed=true]{background-color:color-mix(in oklab, var(--primary) 85%, transparent)}}.aria-pressed\:bg-secondary\/60[aria-pressed=true]{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-secondary\/60[aria-pressed=true]{background-color:color-mix(in oklab, var(--secondary) 60%, transparent)}}.aria-pressed\:text-accent-foreground[aria-pressed=true]{color:var(--accent-foreground)}.aria-pressed\:text-foreground[aria-pressed=true]{color:var(--foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-\[disabled\]\:opacity-disabled[data-disabled]{opacity:var(--opacity-disabled)}.data-\[highlighted\]\:bg-accent[data-highlighted]{background-color:var(--accent)}.data-\[highlighted\]\:text-accent-foreground[data-highlighted]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=sm\]\:\[--card-pad-inline\:--spacing\(4\)\][data-size=sm]{--card-pad-inline:calc(var(--spacing) * 4)}.data-\[state\=active\]\:text-\[var\(--active-tab-color\,var\(--foreground\)\)\][data-state=active]{color:var(--active-tab-color,var(--foreground))}.data-\[state\=active\]\:ring-2[data-state=active]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=active\]\:ring-ring[data-state=active]{--tw-ring-color:var(--ring)}.data-\[state\=active\]\:ring-offset-2[data-state=active]{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x:calc(var(--spacing) * 5);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_88\%\,var\(--glass-bg-floating\)\)\][data-state=checked]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=checked\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_88\%\,var\(--glass-bg-floating\)\)\][data-state=checked]{background-color:color-mix(in srgb,var(--primary) 88%,var(--glass-bg-floating))}}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=indeterminate\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_88\%\,var\(--glass-bg-floating\)\)\][data-state=indeterminate]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=indeterminate\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_88\%\,var\(--glass-bg-floating\)\)\][data-state=indeterminate]{background-color:color-mix(in srgb,var(--primary) 88%,var(--glass-bg-floating))}}.data-\[state\=indeterminate\]\:text-primary-foreground[data-state=indeterminate]{color:var(--primary-foreground)}.data-\[state\=on\]\:scale-\(--scale-press-btn\)[data-state=on]{scale:var(--scale-press-btn)}.data-\[state\=on\]\:border-\[color-mix\(in_srgb\,var\(--primary\)_60\%\,transparent\)\][data-state=on]{border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=on\]\:border-\[color-mix\(in_srgb\,var\(--primary\)_60\%\,transparent\)\][data-state=on]{border-color:color-mix(in srgb,var(--primary) 60%,transparent)}}.data-\[state\=on\]\:border-glass-border-quiet[data-state=on]{border-color:var(--glass-border-quiet)}.data-\[state\=on\]\:border-primary[data-state=on]{border-color:var(--primary)}.data-\[state\=on\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_15\%\,transparent\)\][data-state=on]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=on\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_15\%\,transparent\)\][data-state=on]{background-color:color-mix(in srgb,var(--primary) 15%,transparent)}}.data-\[state\=on\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_18\%\,transparent\)\][data-state=on]{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.data-\[state\=on\]\:bg-\[color-mix\(in_srgb\,var\(--primary\)_18\%\,transparent\)\][data-state=on]{background-color:color-mix(in srgb,var(--primary) 18%,transparent)}}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:bg-glass-quiet[data-state=on]{background-color:var(--glass-bg-quiet)}.data-\[state\=on\]\:font-medium[data-state=on]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=on\]\:text-foreground[data-state=on]{color:var(--foreground)}.data-\[state\=on\]\:shadow-glass-quiet[data-state=on]{--tw-shadow:var(--glass-shadow-quiet);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-\(--glass-bg-wash\)[data-state=unchecked]{background-color:var(--glass-bg-wash)}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\(--reka-toast-swipe-end-x\)[data-swipe=end]{--tw-translate-x:var(--reka-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:translate-x-\(--reka-toast-swipe-move-x\)[data-swipe=move]{--tw-translate-x:var(--reka-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}@media (prefers-reduced-motion:no-preference){.motion-safe\:animate-ping{animation:var(--animate-ping)}}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media not all and (min-width:48rem){.max-md\:flex-wrap{flex-wrap:wrap}.max-md\:justify-center{justify-content:center}.max-md\:gap-2{gap:calc(var(--spacing) * 2)}}@media (min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:0}.sm\:bottom-0{bottom:0}.sm\:left-0{left:0}.sm\:left-1\/2{left:50%}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-x-2{column-gap:calc(var(--spacing) * 2)}.sm\:rounded-dialog{border-radius:var(--radius-dialog)}.sm\:text-left{text-align:left}}@media (min-width:48rem){.md\:w-full{width:100%}.md\:max-w-\[420px\]{max-width:420px}}@media (min-width:64rem){.lg\:col-start-1{grid-column-start:1}.lg\:col-start-2{grid-column-start:2}.lg\:row-start-1{grid-row-start:1}.lg\:grid-cols-\[1fr_18rem\]{grid-template-columns:1fr 18rem}.lg\:grid-cols-\[minmax\(0\,1fr\)_minmax\(var\(--configurator-aside-min\,280px\)\,var\(--configurator-aside-max\,360px\)\)\]{grid-template-columns:minmax(0,1fr) minmax(var(--configurator-aside-min,280px),var(--configurator-aside-max,360px))}.lg\:grid-rows-none{grid-template-rows:none}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.lg\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}}.dark\:bg-\[hsl\(0_70\%_45\%\)\]:where(.dark,.dark *){background-color:#c32222}.dark\:text-amber-400:where(.dark,.dark *){color:var(--color-amber-400)}@media (hover:hover){.dark\:hover\:bg-\[hsl\(0_70\%_45\%\)\]\/85:where(.dark,.dark *):hover{background-color:oklab(52.8351% .173873 .0893282/.85)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}
47
+ .pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-\(--overlay-pad-block\){top:var(--overlay-pad-block)}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-4{top:calc(var(--spacing) * 4)}.top-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{top:calc(-1 * var(--carousel-nav-offset))}.right-\(--overlay-pad-inline\){right:var(--overlay-pad-inline)}.right-0{right:0}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-4{right:calc(var(--spacing) * 4)}.right-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{right:calc(-1 * var(--carousel-nav-offset))}.bottom-\(--dock-pos\){bottom:var(--dock-pos)}.bottom-0{bottom:0}.bottom-1{bottom:var(--spacing)}.bottom-4{bottom:calc(var(--spacing) * 4)}.bottom-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{bottom:calc(-1 * var(--carousel-nav-offset))}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-\[calc\(-1\*var\(--carousel-nav-offset\)\)\]{left:calc(-1 * var(--carousel-nav-offset))}.isolate{isolation:isolate}.z-0{z-index:0}.z-10{z-index:10}.z-\[1\]{z-index:1}.z-dock{z-index:var(--z-dock)}.z-hovercard{z-index:var(--z-hovercard)}.z-modal{z-index:var(--z-modal)}.z-overlay{z-index:var(--z-overlay)}.z-popover{z-index:var(--z-popover)}.z-toast{z-index:var(--z-toast)}.z-tooltip{z-index:var(--z-tooltip)}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.my-8{margin-block:calc(var(--spacing) * 8)}.-mt-\(--stack-overlap-lg\){margin-top:calc(var(--stack-overlap-lg) * -1)}.-mt-\(--stack-overlap-md\){margin-top:calc(var(--stack-overlap-md) * -1)}.-mt-\(--stack-overlap-sm\){margin-top:calc(var(--stack-overlap-sm) * -1)}.-mt-4{margin-top:calc(var(--spacing) * -4)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-auto{margin-top:auto}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.-ml-\(--stack-overlap-lg\){margin-left:calc(var(--stack-overlap-lg) * -1)}.-ml-\(--stack-overlap-md\){margin-left:calc(var(--stack-overlap-md) * -1)}.-ml-\(--stack-overlap-sm\){margin-left:calc(var(--stack-overlap-sm) * -1)}.-ml-4{margin-left:calc(var(--spacing) * -4)}.ml-1{margin-left:var(--spacing)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-1{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.aspect-square{aspect-ratio:1}.size-\(--search-button-size\){width:var(--search-button-size);height:var(--search-button-size)}.size-\(--search-icon-size\){width:var(--search-icon-size);height:var(--search-icon-size)}.size-\(--switch-thumb\){width:var(--switch-thumb);height:var(--switch-thumb)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-icon-sm{width:var(--icon-sm);height:var(--icon-sm)}.h-\(--carousel-nav-size\){height:var(--carousel-nav-size)}.h-\(--control-h-lg\){height:var(--control-h-lg)}.h-\(--control-h-md\){height:var(--control-h-md)}.h-\(--control-h-sm\){height:var(--control-h-sm)}.h-\(--control-h-xs\){height:var(--control-h-xs)}.h-\(--dropdown-input-height\){height:var(--dropdown-input-height)}.h-\(--reka-select-trigger-height\){height:var(--reka-select-trigger-height)}.h-\(--switch-track-h\){height:var(--switch-track-h)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-32{height:calc(var(--spacing) * 32)}.h-\[calc\(2rem\*var\(--ui-scale\)\)\]{height:calc(2rem * var(--ui-scale))}.h-\[var\(--progress-sectioned-height\,0\.875rem\)\]{height:var(--progress-sectioned-height,.875rem)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-\(--overlay-max-block\){max-height:var(--overlay-max-block)}.max-h-\[50vh\]{max-height:50vh}.max-h-\[70vh\]{max-height:70vh}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:0}.min-h-4{min-height:calc(var(--spacing) * 4)}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-20{min-height:calc(var(--spacing) * 20)}.w-\(--carousel-nav-size\){width:var(--carousel-nav-size)}.w-\(--control-h-md\){width:var(--control-h-md)}.w-\(--control-h-xs\){width:var(--control-h-xs)}.w-\(--reka-popover-trigger-width\){width:var(--reka-popover-trigger-width)}.w-\(--reka-tabs-indicator-size\){width:var(--reka-tabs-indicator-size)}.w-\(--switch-track-w\){width:var(--switch-track-w)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-10{width:calc(var(--spacing) * 10)}.w-16{width:calc(var(--spacing) * 16)}.w-32{width:calc(var(--spacing) * 32)}.w-64{width:calc(var(--spacing) * 64)}.w-72{width:calc(var(--spacing) * 72)}.w-\[calc\(100\%-2rem\)\]{width:calc(100% - 2rem)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-popover{width:var(--popover-width)}.w-px{width:1px}.max-w-\(--search-modal-width\){max-width:var(--search-modal-width)}.max-w-\[500px\]{max-width:500px}.max-w-lg{max-width:var(--container-lg)}.min-w-\(--overlay-min-width\){min-width:var(--overlay-min-width)}.min-w-\(--reka-select-trigger-width\){min-width:var(--reka-select-trigger-width)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-\[300px\]{min-width:300px}.min-w-input-sm{min-width:var(--input-min-width-sm)}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.origin-\(--reka-combobox-content-transform-origin\){transform-origin:var(--reka-combobox-content-transform-origin)}.origin-\(--reka-select-content-transform-origin\){transform-origin:var(--reka-select-content-transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-\(--reka-tabs-indicator-position\){--tw-translate-x:var(--reka-tabs-indicator-position);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.scale-100{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.rotate-90{rotate:90deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0) var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.resize{resize:both}.scroll-py-1{scroll-padding-block:var(--spacing)}.scrollbar-thin{scrollbar-width:thin}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[0_1fr\]{grid-template-columns:0 1fr}.grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.grid-rows-\[minmax\(var\(--configurator-stage-min\,18rem\)\,auto\)_minmax\(0\,1fr\)\]{grid-template-rows:minmax(var(--configurator-stage-min,18rem),auto) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-items-start{justify-items:start}.gap-\(--card-pad-title-gap\){gap:var(--card-pad-title-gap)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}:where(.space-x-4>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)))}.gap-y-\(--card-pad-title-gap\){row-gap:var(--card-pad-title-gap)}.gap-y-0\.5{row-gap:calc(var(--spacing) * .5)}.gap-y-1{row-gap:var(--spacing)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:var(--radius)}.rounded-\[0\.625rem\]{border-radius:.625rem}.rounded-badge{border-radius:var(--radius-badge)}.rounded-button{border-radius:var(--radius-button)}.rounded-card{border-radius:var(--radius-card)}.rounded-control{border-radius:var(--radius-control)}.rounded-dialog{border-radius:var(--radius-dialog)}.rounded-field{border-radius:var(--radius-field)}.rounded-input{border-radius:var(--radius-input)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-panel{border-radius:var(--radius-panel)}.rounded-pill{border-radius:var(--radius-pill)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-tooltip{border-radius:var(--radius-tooltip)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-none{--tw-border-style:none;border-style:none}.border-\(--configurator-divider-section\){border-color:var(--configurator-divider-section)}.border-\(--control-ring\){border-color:var(--control-ring)}.border-\(--control-surface-border\){border-color:var(--control-surface-border)}.border-\(--glass-border-floating\){border-color:var(--glass-border-floating)}.border-\(--glass-border-resting\){border-color:var(--glass-border-resting)}.border-\[color-mix\(in_oklab\,transparent\,var\(--accent-edge\)_35\%\)\]{border-color:#0000}@supports (color:color-mix(in lab, red, red)){.border-\[color-mix\(in_oklab\,transparent\,var\(--accent-edge\)_35\%\)\]{border-color:color-mix(in oklab,transparent,var(--accent-edge) 35%)}}.border-background{border-color:var(--background)}.border-border,.border-border\/40{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/40{border-color:color-mix(in oklab, var(--border) 40%, transparent)}}.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-border\/60{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/60{border-color:color-mix(in oklab, var(--border) 60%, transparent)}}.border-muted-foreground{border-color:var(--muted-foreground)}.border-primary{border-color:var(--primary)}.border-transparent{border-color:#0000}.border-t-transparent{border-top-color:#0000}.bg-\(--accent-fill\){background-color:var(--accent-fill)}.bg-\(--control-surface-bg\){background-color:var(--control-surface-bg)}.bg-\(--glass-bg-quiet\){background-color:var(--glass-bg-quiet)}.bg-\(--glass-bg-wash\){background-color:var(--glass-bg-wash)}.bg-\(--separator-ink\){background-color:var(--separator-ink)}.bg-\[color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\]{background-color:var(--background)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--background\)_96\%\,transparent\)\]{background-color:color-mix(in srgb,var(--background) 96%,transparent)}}.bg-\[color-mix\(in_srgb\,var\(--foreground\)_12\%\,transparent\)\]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-\[color-mix\(in_srgb\,var\(--foreground\)_12\%\,transparent\)\]{background-color:color-mix(in srgb,var(--foreground) 12%,transparent)}}.bg-\[var\(--progress-track\,var\(--progress-track-on-glass\)\)\]{background-color:var(--progress-track,var(--progress-track-on-glass))}.bg-amber-500\/15{background-color:#f99c0026}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/15{background-color:color-mix(in oklab, var(--color-amber-500) 15%, transparent)}}.bg-background{background-color:var(--background)}.bg-border,.bg-border\/70{background-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.bg-border\/70{background-color:color-mix(in oklab, var(--border) 70%, transparent)}}.bg-card,.bg-card\/40{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.bg-card\/40{background-color:color-mix(in oklab, var(--card) 40%, transparent)}}.bg-card\/70{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.bg-card\/70{background-color:color-mix(in oklab, var(--card) 70%, transparent)}}.bg-current{background-color:currentColor}.bg-destructive{background-color:var(--destructive)}.bg-info{background-color:var(--info)}.bg-muted{background-color:var(--muted)}.bg-overlay-scrim{background-color:var(--overlay-scrim)}.bg-overlay-scrim-strong{background-color:var(--overlay-scrim-strong)}.bg-overlay-scrim-subtle{background-color:var(--overlay-scrim-subtle)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-success{background-color:var(--success)}.bg-transparent{background-color:#0000}.bg-warning{background-color:var(--warning)}.fill-\(--easing-curve-accent\){fill:var(--easing-curve-accent)}.fill-current{fill:currentColor}.fill-foreground{fill:var(--foreground)}.fill-muted-foreground\/50{fill:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.fill-muted-foreground\/50{fill:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.fill-muted-foreground\/60{fill:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.fill-muted-foreground\/60{fill:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.stroke-\(--easing-curve-accent\){stroke:var(--easing-curve-accent)}.stroke-background{stroke:var(--background)}.stroke-border,.stroke-border\/40{stroke:var(--border)}@supports (color:color-mix(in lab, red, red)){.stroke-border\/40{stroke:color-mix(in oklab, var(--border) 40%, transparent)}}.stroke-muted-foreground\/30{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.stroke-muted-foreground\/30{stroke:color-mix(in oklab, var(--muted-foreground) 30%, transparent)}}.stroke-muted-foreground\/50{stroke:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.stroke-muted-foreground\/50{stroke:color-mix(in oklab, var(--muted-foreground) 50%, transparent)}}.object-cover{object-fit:cover}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-\(--card-pad-inline\){padding-inline:var(--card-pad-inline)}.px-\(--overlay-pad-inline\){padding-inline:var(--overlay-pad-inline)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-9{padding-inline:calc(var(--spacing) * 9)}.py-\(--overlay-pad-block\){padding-block:var(--overlay-pad-block)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-\(--card-pad-block\){padding-top:var(--card-pad-block)}.pt-\(--card-pad-footer\){padding-top:var(--card-pad-footer)}.pt-\(--card-pad-section-gap\){padding-top:var(--card-pad-section-gap)}.pt-\(--overlay-pad-block\){padding-top:var(--overlay-pad-block)}.pt-0{padding-top:0}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-\(--card-pad-block\){padding-bottom:var(--card-pad-block)}.pb-\(--overlay-pad-block\){padding-bottom:var(--overlay-pad-block)}.pb-0{padding-bottom:0}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-7{padding-left:calc(var(--spacing) * 7)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-display{font-family:var(--font-stack-display)}.font-mono{font-family:var(--font-stack-mono)}.font-sans{font-family:var(--font-stack-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\(length\:--search-result-text\){font-size:var(--search-result-text)}.text-\(length\:--search-result-text-secondary\){font-size:var(--search-result-text-secondary)}.text-\(length\:--tooltip-text\){font-size:var(--tooltip-text)}.text-\[length\:calc\(var\(--type-body\)\*var\(--ui-scale\)\)\]{font-size:calc(var(--type-body) * var(--ui-scale))}.text-\[length\:var\(--control-text\)\]{font-size:var(--control-text)}.text-\[length\:var\(--control-text-sm\)\]{font-size:var(--control-text-sm)}.text-caption{font-size:var(--type-caption)}.text-dropdown{font-size:var(--dropdown-text)}.text-dropdown-secondary{font-size:var(--dropdown-text-secondary)}.text-heading{font-size:var(--type-heading)}.text-micro{font-size:var(--type-micro)}.text-prose{font-size:var(--type-prose)}.text-small{font-size:var(--type-small)}.text-subheading{font-size:var(--type-subheading)}.text-title{font-size:var(--type-title)}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-snug{--tw-tracking:var(--type-tracking-snug);letter-spacing:var(--type-tracking-snug)}.tracking-tight{--tw-tracking:var(--type-tracking-tight);letter-spacing:var(--type-tracking-tight)}.tracking-wider{--tw-tracking:var(--type-tracking-wider);letter-spacing:var(--type-tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.wrap-anywhere{overflow-wrap:anywhere}.whitespace-nowrap{white-space:nowrap}.text-\(--easing-curve-accent\){color:var(--easing-curve-accent)}.text-amber-700{color:var(--color-amber-700)}.text-card-foreground{color:var(--card-foreground)}.text-current{color:currentColor}.text-destructive{color:var(--destructive)}.text-destructive-foreground{color:var(--destructive-foreground)}.text-foreground,.text-foreground\/50{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/50{color:color-mix(in oklab, var(--foreground) 50%, transparent)}}.text-foreground\/70{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/70{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.text-foreground\/85{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/85{color:color-mix(in oklab, var(--foreground) 85%, transparent)}}.text-info-foreground{color:var(--info-foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-muted-foreground-strong{color:var(--muted-foreground-strong)}.text-muted-foreground\/40{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/40{color:color-mix(in oklab, var(--muted-foreground) 40%, transparent)}}.text-muted-foreground\/60{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/60{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}}.text-muted-foreground\/70{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/70{color:color-mix(in oklab, var(--muted-foreground) 70%, transparent)}}.text-muted-foreground\/80{color:var(--muted-foreground)}@supports (color:color-mix(in lab, red, red)){.text-muted-foreground\/80{color:color-mix(in oklab, var(--muted-foreground) 80%, transparent)}}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-success-foreground{color:var(--success-foreground)}.text-warning-foreground{color:var(--warning-foreground)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-\(--select-chevron-opacity\){opacity:var(--select-chevron-opacity)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-card{--tw-shadow:var(--card-shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-cartoon-sm{--tw-shadow:var(--cartoon-shadow-sm);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,border-color\,box-shadow\,color\,opacity\,transform\]{transition-property:background-color,border-color,box-shadow,color,opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[background-color\,color\,transform\,box-shadow\]{transition-property:background-color,color,transform,box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[opacity\,transform\]{transition-property:opacity,transform;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,box-shadow\,opacity\]{transition-property:transform,box-shadow,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,translate\]{transition-property:width,translate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-none{transition-property:none}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-fast{--tw-duration:var(--duration-fast);transition-duration:var(--duration-fast)}.duration-normal{--tw-duration:var(--duration-normal);transition-duration:var(--duration-normal)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-spring-snappy{--tw-ease:var(--spring-snappy);transition-timing-function:var(--spring-snappy)}.ease-standard{--tw-ease:var(--motion-ease-standard);transition-timing-function:var(--motion-ease-standard)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\/stack\:translate-x-1\.5:is(:where(.group\/stack):hover *){--tw-translate-x:calc(var(--spacing) * 1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/stack\:translate-y-1\.5:is(:where(.group\/stack):hover *){--tw-translate-y:calc(var(--spacing) * 1.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.group-hover\/stack\:scale-105:is(:where(.group\/stack):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x) var(--tw-scale-y)}}.group-data-\[state\=indeterminate\]\:block:is(:where(.group)[data-state=indeterminate] *){display:block}.group-data-\[state\=indeterminate\]\:hidden:is(:where(.group)[data-state=indeterminate] *){display:none}.group-data-\[state\=open\]\:rotate-180:is(:where(.group)[data-state=open] *){rotate:180deg}.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:border-muted\/40:is(:where(.group).destructive *){border-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.group-\[\.destructive\]\:text-red-300:is(:where(.group).destructive *){color:var(--color-red-300)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-\(length\:--control-text-sm\)::file-selector-button{font-size:var(--control-text-sm)}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.user-invalid\:border-\(--destructive\):user-invalid{border-color:var(--destructive)}.user-invalid\:shadow-\(--invalid-ring\):user-invalid{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (hover:hover){.hover\:scale-\(--scale-hover-btn\):hover{scale:var(--scale-hover-btn)}.hover\:border-\(--glass-border-floating\):hover{border-color:var(--glass-border-floating)}.hover\:border-\(--glass-border-resting\):hover{border-color:var(--glass-border-resting)}.hover\:border-\(--surface-tint-22\):hover{border-color:var(--surface-tint-22)}.hover\:bg-\(--glass-bg-quiet-tinted\):hover{background-color:var(--glass-bg-quiet-tinted)}.hover\:bg-\(--glass-bg-resting-tinted\):hover{background-color:var(--glass-bg-resting-tinted)}.hover\:bg-\(--surface-tint-8\):hover{background-color:var(--surface-tint-8)}.hover\:bg-accent:hover{background-color:var(--accent)}.hover\:bg-amber-500\/25:hover{background-color:#f99c0040}@supports (color:color-mix(in lab, red, red)){.hover\:bg-amber-500\/25:hover{background-color:color-mix(in oklab, var(--color-amber-500) 25%, transparent)}}.hover\:bg-background:hover{background-color:var(--background)}.hover\:bg-card\/70:hover{background-color:var(--card)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-card\/70:hover{background-color:color-mix(in oklab, var(--card) 70%, transparent)}}.hover\:bg-destructive:hover,.hover\:bg-destructive\/80:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/80:hover{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.hover\:bg-destructive\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/90:hover{background-color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.hover\:bg-foreground\/5:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/5:hover{background-color:color-mix(in oklab, var(--foreground) 5%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-foreground\/\[0\.04\]:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/\[0\.04\]:hover{background-color:color-mix(in oklab, var(--foreground) 4%, transparent)}}.hover\:bg-glass-quiet:hover{background-color:var(--glass-bg-quiet)}.hover\:bg-info\/80:hover{background-color:var(--info)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-info\/80:hover{background-color:color-mix(in oklab, var(--info) 80%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/40:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/40:hover{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-secondary:hover,.hover\:bg-secondary\/80:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.hover\:bg-success\/80:hover{background-color:var(--success)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-success\/80:hover{background-color:color-mix(in oklab, var(--success) 80%, transparent)}}.hover\:bg-warning\/80:hover{background-color:var(--warning)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-warning\/80:hover{background-color:color-mix(in oklab, var(--warning) 80%, transparent)}}.hover\:bg-white\/10:hover{background-color:#ffffff1a}@supports (color:color-mix(in lab, red, red)){.hover\:bg-white\/10:hover{background-color:color-mix(in oklab, var(--color-white) 10%, transparent)}}.hover\:text-accent-foreground:hover{color:var(--accent-foreground)}.hover\:text-destructive-foreground:hover{color:var(--destructive-foreground)}.hover\:text-foreground:hover,.hover\:text-foreground\/70:hover{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:text-foreground\/70:hover{color:color-mix(in oklab, var(--foreground) 70%, transparent)}}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-cartoon-md:hover{--tw-shadow:var(--cartoon-shadow-md);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.group-\[\.destructive\]\:hover\:border-destructive\/30:is(:where(.group).destructive *):hover{border-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.group-\[\.destructive\]\:hover\:bg-destructive:is(:where(.group).destructive *):hover{background-color:var(--destructive)}.group-\[\.destructive\]\:hover\:text-destructive-foreground:is(:where(.group).destructive *):hover{color:var(--destructive-foreground)}.group-\[\.destructive\]\:hover\:text-red-50:is(:where(.group).destructive *):hover{color:var(--color-red-50)}}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus{color:var(--accent-foreground)}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.focus-visible\:user-invalid\:shadow-\(--invalid-ring\):focus-visible:user-invalid{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-100:active{--tw-scale-x:100%;--tw-scale-y:100%;--tw-scale-z:100%;scale:var(--tw-scale-x) var(--tw-scale-y)}.active\:scale-\(--scale-press-btn\):active{scale:var(--scale-press-btn)}.active\:border-\(--glass-border-floating\):active{border-color:var(--glass-border-floating)}.active\:bg-\(--glass-bg-floating-tinted\):active{background-color:var(--glass-bg-floating-tinted)}.active\:bg-\(--glass-bg-resting-tinted\):active{background-color:var(--glass-bg-resting-tinted)}.active\:bg-amber-500\/35:active{background-color:#f99c0059}@supports (color:color-mix(in lab, red, red)){.active\:bg-amber-500\/35:active{background-color:color-mix(in oklab, var(--color-amber-500) 35%, transparent)}}.active\:bg-destructive\/80:active{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.active\:bg-destructive\/80:active{background-color:color-mix(in oklab, var(--destructive) 80%, transparent)}}.active\:bg-foreground\/12:active{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.active\:bg-foreground\/12:active{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.active\:bg-foreground\/\[0\.08\]:active{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.active\:bg-foreground\/\[0\.08\]:active{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.active\:opacity-80:active{opacity:.8}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-20:disabled{opacity:.2}.disabled\:opacity-disabled:disabled{opacity:var(--opacity-disabled)}.has-data-\[slot\=card-action\]\:grid:has([data-slot=card-action]){display:grid}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-action\]\:items-start:has([data-slot=card-action]){align-items:flex-start}.has-\[\:user-invalid\]\:border-\(--destructive\):has(:user-invalid){border-color:var(--destructive)}.has-\[\:user-invalid\]\:shadow-\(--invalid-ring\):has(:user-invalid){--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:border-\(--destructive\)[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:text-destructive[aria-invalid=true]{color:var(--destructive)}.aria-invalid\:shadow-\(--invalid-ring\)[aria-invalid=true]{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:placeholder\:text-\[color-mix\(in_srgb\,var\(--destructive\)_60\%\,transparent\)\][aria-invalid=true]::placeholder{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:placeholder\:text-\[color-mix\(in_srgb\,var\(--destructive\)_60\%\,transparent\)\][aria-invalid=true]::placeholder{color:color-mix(in srgb,var(--destructive) 60%,transparent)}}.focus-visible\:aria-invalid\:shadow-\(--invalid-ring\):focus-visible[aria-invalid=true]{--tw-shadow:var(--invalid-ring);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-pressed\:scale-\(--scale-press-btn\)[aria-pressed=true]{scale:var(--scale-press-btn)}.aria-pressed\:bg-\(--glass-bg-resting-tinted\)[aria-pressed=true]{background-color:var(--glass-bg-resting-tinted)}.aria-pressed\:bg-\[color-mix\(in_srgb\,var\(--foreground\)_10\%\,var\(--glass-bg-resting-tinted\)\)\][aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-\[color-mix\(in_srgb\,var\(--foreground\)_10\%\,var\(--glass-bg-resting-tinted\)\)\][aria-pressed=true]{background-color:color-mix(in srgb,var(--foreground) 10%,var(--glass-bg-resting-tinted))}}.aria-pressed\:bg-amber-500\/30[aria-pressed=true]{background-color:#f99c004d}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-amber-500\/30[aria-pressed=true]{background-color:color-mix(in oklab, var(--color-amber-500) 30%, transparent)}}.aria-pressed\:bg-destructive\/85[aria-pressed=true]{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-destructive\/85[aria-pressed=true]{background-color:color-mix(in oklab, var(--destructive) 85%, transparent)}}.aria-pressed\:bg-foreground\/10[aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-foreground\/10[aria-pressed=true]{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.aria-pressed\:bg-foreground\/\[0\.1\][aria-pressed=true]{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.aria-pressed\:bg-foreground\/\[0\.1\][aria-pressed=true]{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.aria-pressed\:text-foreground[aria-pressed=true]{color:var(--foreground)}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:cursor-not-allowed[data-disabled]{cursor:not-allowed}.data-\[disabled\]\:opacity-disabled[data-disabled]{opacity:var(--opacity-disabled)}.data-\[highlighted\]\:bg-accent[data-highlighted]{background-color:var(--accent)}.data-\[highlighted\]\:text-accent-foreground[data-highlighted]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:var(--spacing);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=sm\]\:\[--card-pad-inline\:--spacing\(4\)\][data-size=sm]{--card-pad-inline:calc(var(--spacing) * 4)}.data-\[state\=active\]\:text-\[var\(--active-tab-color\,var\(--foreground\)\)\][data-state=active]{color:var(--active-tab-color,var(--foreground))}.data-\[state\=active\]\:shadow-focus-ring[data-state=active]{--tw-shadow:var(--focus-ring-shadow);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=checked\]\:translate-x-\(--switch-throw\)[data-state=checked]{--tw-translate-x:var(--switch-throw);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=checked\]\:border-\(--control-checked-bg\)[data-state=checked]{border-color:var(--control-checked-bg)}.data-\[state\=checked\]\:bg-\(--control-checked-bg\)[data-state=checked]{background-color:var(--control-checked-bg)}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:var(--primary)}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:var(--primary-foreground)}.data-\[state\=indeterminate\]\:bg-\(--control-checked-bg\)[data-state=indeterminate]{background-color:var(--control-checked-bg)}.data-\[state\=indeterminate\]\:text-primary-foreground[data-state=indeterminate]{color:var(--primary-foreground)}.data-\[state\=on\]\:scale-\(--scale-press-btn\)[data-state=on]{scale:var(--scale-press-btn)}.data-\[state\=on\]\:border-\(--accent-edge\)[data-state=on]{border-color:var(--accent-edge)}.data-\[state\=on\]\:border-glass-border-quiet[data-state=on]{border-color:var(--glass-border-quiet)}.data-\[state\=on\]\:bg-\(--accent-band\)[data-state=on]{background-color:var(--accent-band)}.data-\[state\=on\]\:bg-accent[data-state=on]{background-color:var(--accent)}.data-\[state\=on\]\:bg-glass-quiet[data-state=on]{background-color:var(--glass-bg-quiet)}.data-\[state\=on\]\:font-medium[data-state=on]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-\[state\=on\]\:text-\(--accent-ink\)[data-state=on]{color:var(--accent-ink)}.data-\[state\=on\]\:text-accent-foreground[data-state=on]{color:var(--accent-foreground)}.data-\[state\=on\]\:text-foreground[data-state=on]{color:var(--foreground)}.data-\[state\=on\]\:shadow-glass-quiet[data-state=on]{--tw-shadow:var(--glass-shadow-quiet);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--accent)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:var(--secondary)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--muted-foreground)}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[state\=unchecked\]\:bg-\(--glass-bg-wash\)[data-state=unchecked]{background-color:var(--glass-bg-wash)}.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x:0;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=end\]\:translate-x-\(--reka-toast-swipe-end-x\)[data-swipe=end]{--tw-translate-x:var(--reka-toast-swipe-end-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:translate-x-\(--reka-toast-swipe-move-x\)[data-swipe=move]{--tw-translate-x:var(--reka-toast-swipe-move-x);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}@media (prefers-reduced-motion:no-preference){.motion-safe\:animate-ping{animation:var(--animate-ping)}}@media (prefers-reduced-motion:reduce){.motion-reduce\:transition-none{transition-property:none}}@media not all and (min-width:48rem){.max-md\:flex-wrap{flex-wrap:wrap}.max-md\:justify-center{justify-content:center}.max-md\:gap-2{gap:calc(var(--spacing) * 2)}}@media (min-width:40rem){.sm\:top-auto{top:auto}.sm\:right-0{right:0}.sm\:bottom-0{bottom:0}.sm\:left-0{left:0}.sm\:left-1\/2{left:50%}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.sm\:flex-col{flex-direction:column}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:gap-x-2{column-gap:calc(var(--spacing) * 2)}.sm\:rounded-dialog{border-radius:var(--radius-dialog)}.sm\:text-left{text-align:left}}@media (min-width:48rem){.md\:w-full{width:100%}.md\:max-w-\[420px\]{max-width:420px}}@media (min-width:64rem){.lg\:grid-cols-\[1fr_18rem\]{grid-template-columns:1fr 18rem}.lg\:border-t-0{border-top-style:var(--tw-border-style);border-top-width:0}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.lg\:border-l-0{border-left-style:var(--tw-border-style);border-left-width:0}}.dark\:bg-\[hsl\(0_70\%_45\%\)\]:where(.dark,.dark *){background-color:#c32222}.dark\:text-amber-400:where(.dark,.dark *){color:var(--color-amber-400)}@media (hover:hover){.dark\:hover\:bg-\[hsl\(0_70\%_45\%\)\]\/85:where(.dark,.dark *):hover{background-color:oklab(52.8351% .173873 .0893282/.85)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-space-x-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}
@@ -75,3 +75,58 @@
75
75
  .configurator-footer {
76
76
  border-color: var(--configurator-divider);
77
77
  }
78
+
79
+ /* 4. The DESKTOP TWO-COLUMN LAYOUT — controls on the RIGHT (BC.W-CONFIG-RIGHT).
80
+ *
81
+ * The configurator's own desktop grid was the next victim of the BA.W-EMISSION
82
+ * self-emission class (CLAUDE.md): the SFC carried the structural layout as a
83
+ * `lg:grid-cols-[minmax(0,1fr)_minmax(var(--configurator-aside-min,280px),var(--configurator-aside-max,360px))]`
84
+ * arbitrary utility — a `lg:` arbitrary bracket with NESTED `var()` + commas +
85
+ * `minmax()` that dies in a consumer's content-scan (the same failure that killed
86
+ * the Select collision-bound). So every studio rendered SINGLE-column (controls
87
+ * stacked BELOW the stage) on desktop: `getComputedStyle(cfg).gridTemplateColumns`
88
+ * read ONE `1131px` track at 1280px width, the aside below the stage, never right.
89
+ *
90
+ * The fix is the BA.W-EMISSION discipline: the structural layout lives in SHIPPED
91
+ * CSS as a precompiled rule scoped to `[data-slot="configurator"]`, NEVER
92
+ * load-bearing on a content-scan reach (the SAME mechanism the Select bound got in
93
+ * select.css). Below `lg` the base `grid grid-cols-1` + the mobile row template
94
+ * (emitted fine — a plain utility) keeps the single-column stack: stage above,
95
+ * controls below (a narrow viewport has no room for side-by-side). At `lg`+ this
96
+ * rule sets the two-column geometry off the SAME `--configurator-aside-{min,max}`
97
+ * token band (default 280px/360px, retunable via the `asideWidth` prop) the dead
98
+ * utility read — the token contract is byte-identical, only the MECHANISM moves
99
+ * onto shipped CSS. The explicit mobile rows reset to `none` so one auto row
100
+ * stretches to the taller column. */
101
+ @media (min-width: 1024px) {
102
+ [data-slot="configurator"] {
103
+ grid-template-columns: minmax(0, 1fr)
104
+ minmax(
105
+ var(--configurator-aside-min, 280px),
106
+ var(--configurator-aside-max, 360px)
107
+ );
108
+ grid-template-rows: none;
109
+ }
110
+ }
111
+
112
+ /* 5. The SIDE FLIP — a data-attr, default RIGHT (BC.W-CONFIG-RIGHT).
113
+ *
114
+ * The aside side moves off the dead `lg:col-start-*` arbitrary utility (gated
115
+ * behind the same silent-JIT-failure class) onto a `data-aside-side` attr the SFC
116
+ * binds. `right` (the default) is the NATURAL source order — stage in column 1,
117
+ * aside in column 2 — so it needs NO override (the bare desktop rule above already
118
+ * places them left→right). `left` is the reversible taste-level flip: it swaps the
119
+ * grid-COLUMN targets so the aside paints on the LEFT, while the DOM/tab order
120
+ * stays stage→aside (the side is grid-cell PLACEMENT + border-side only, never an
121
+ * `order:`/`row-reverse` that would desync the visual order from the DOM reading
122
+ * order — WCAG 1.3.2/2.4.3 inviolate, the AM.W0 contract). Below `lg` (single
123
+ * column) neither side has meaning. */
124
+ @media (min-width: 1024px) {
125
+ [data-slot="configurator"][data-aside-side="left"] .configurator-stage {
126
+ grid-column-start: 2;
127
+ }
128
+ [data-slot="configurator"][data-aside-side="left"] .configurator-aside {
129
+ grid-column-start: 1;
130
+ grid-row-start: 1;
131
+ }
132
+ }