@mkbabb/glass-ui 5.0.0 → 7.0.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 (1048) hide show
  1. package/README.md +61 -56
  2. package/dist/DropdownMenuTrigger-ClIq8RJE.js +93 -0
  3. package/dist/FeedbackMark-DZq5001h.js +23 -0
  4. package/dist/Input-9BlLluik.js +77 -0
  5. package/dist/PagerDots-BEq0MgtH.js +311 -0
  6. package/dist/Surface-kFQeYrYv.js +82 -0
  7. package/dist/accent-tone-solve-Cw7WkRD9.js +14 -0
  8. package/dist/animated-digit.js +5 -5
  9. package/dist/asElement-CRnm6A2v.js +9 -0
  10. package/dist/aurora.js +858 -793
  11. package/dist/axes.js +25 -14
  12. package/dist/badge-u65NClWn.js +62 -0
  13. package/dist/badge.js +1 -1
  14. package/dist/blob-config.d.ts +0 -4
  15. package/dist/blob-config.js +1 -1
  16. package/dist/blob.js +490 -424
  17. package/dist/button-Bu9F4uU6.js +98 -0
  18. package/dist/button.js +2 -2
  19. package/dist/canvas.js +1 -1
  20. package/dist/card-Bk96VI2R.js +234 -0
  21. package/dist/card.js +2 -2
  22. package/dist/carousel.d.ts +1 -2
  23. package/dist/carousel.js +109 -238
  24. package/dist/chip-DFZQr6rV.js +129 -0
  25. package/dist/chip.d.ts +0 -9
  26. package/dist/chip.js +2 -81
  27. package/dist/{class-names-5jotTFzp.js → class-names-Cpy5eaBk.js} +11 -4
  28. package/dist/collapsible-BAP95XTt.js +154 -0
  29. package/dist/collapsible.js +1 -1
  30. package/dist/color.js +83 -3
  31. package/dist/{procedural-color.wgsl-ByduxnzV.js → color.wgsl-Ct5o9dpf.js} +410 -3
  32. package/dist/command-SFqDQ65h.js +320 -0
  33. package/dist/command.js +1 -1
  34. package/dist/completion-seal.js +72 -63
  35. package/dist/components/_shared/FeedbackMark.vue.d.ts +11 -0
  36. package/dist/components/_shared/axes.d.ts +9 -3
  37. package/dist/components/_shared/class-names.d.ts +9 -8
  38. package/dist/components/_shared/control-size.d.ts +2 -0
  39. package/dist/components/_shared/disclosure-context.d.ts +7 -0
  40. package/dist/components/_shared/disclosure.css +1 -0
  41. package/dist/components/_shared/feedback.d.ts +7 -0
  42. package/dist/components/_shared/field-control.css +1 -0
  43. package/dist/components/_shared/field-surfaces.css +1 -0
  44. package/dist/components/_shared/fieldControl.d.ts +13 -0
  45. package/dist/components/_shared/floating.d.ts +14 -0
  46. package/dist/components/_shared/index.d.ts +2 -6
  47. package/dist/components/_shared/interaction.d.ts +23 -0
  48. package/dist/components/_shared/menu.css +1 -0
  49. package/dist/components/_shared/menuRowClass.d.ts +2 -0
  50. package/dist/components/_shared/primitive.d.ts +19 -0
  51. package/dist/components/_shared/resolveSurfaceClass.d.ts +3 -0
  52. package/dist/components/_shared/selection.d.ts +7 -0
  53. package/dist/components/_shared/useMotionAxis.d.ts +5 -4
  54. package/dist/components/_shared/valueDomain.d.ts +6 -0
  55. package/dist/components/accordion/Accordion.vue.d.ts +41 -16
  56. package/dist/components/accordion/AccordionContent.vue.d.ts +11 -9
  57. package/dist/components/accordion/AccordionItem.vue.d.ts +12 -9
  58. package/dist/components/accordion/AccordionTrigger.vue.d.ts +8 -11
  59. package/dist/components/accordion/index.d.ts +4 -4
  60. package/dist/components/alert/Alert.vue.d.ts +9 -5
  61. package/dist/components/alert/index.d.ts +17 -8
  62. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +3 -4
  63. package/dist/components/aurora/Aurora.vue.d.ts +44 -43
  64. package/dist/components/aurora/composables/atoms-fields.d.ts +13 -2
  65. package/dist/components/aurora/composables/atoms.d.ts +52 -50
  66. package/dist/components/aurora/composables/auroraFallbackGround.d.ts +13 -13
  67. package/dist/components/aurora/composables/auroraImageSource.d.ts +4 -5
  68. package/dist/components/aurora/composables/color.d.ts +15 -20
  69. package/dist/components/aurora/composables/frameLoop.d.ts +14 -11
  70. package/dist/components/aurora/composables/glSetup.d.ts +19 -2
  71. package/dist/components/aurora/composables/runtime.d.ts +58 -60
  72. package/dist/components/aurora/composables/uniformBridge.d.ts +9 -14
  73. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +21 -22
  74. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +13 -13
  75. package/dist/components/aurora/composables/useAurora.d.ts +21 -30
  76. package/dist/components/aurora/composables/wgpuSetup.d.ts +10 -8
  77. package/dist/components/aurora/constants/budget.d.ts +12 -25
  78. package/dist/components/aurora/constants/presets.d.ts +47 -58
  79. package/dist/components/aurora/constants/renderMode.d.ts +21 -36
  80. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +1 -1
  81. package/dist/components/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -1
  82. package/dist/components/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  83. package/dist/components/aurora/constants/shaders/brush.glsl.d.ts +1 -1
  84. package/dist/components/aurora/constants/shaders/composition.glsl.d.ts +1 -1
  85. package/dist/components/aurora/constants/shaders/flow.glsl.d.ts +1 -1
  86. package/dist/components/aurora/constants/shaders/metal-medium.glsl.d.ts +2 -2
  87. package/dist/components/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -1
  88. package/dist/components/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -1
  89. package/dist/components/aurora/index.d.ts +2 -1
  90. package/dist/components/avatar/Avatar.vue.d.ts +72 -11
  91. package/dist/components/avatar/AvatarFallback.vue.d.ts +1 -2
  92. package/dist/components/avatar/AvatarImage.vue.d.ts +12 -6
  93. package/dist/components/avatar/index.d.ts +3 -9
  94. package/dist/components/avatar/styles.css +1 -0
  95. package/dist/components/badge/Badge.vue.d.ts +2 -9
  96. package/dist/components/badge/index.d.ts +32 -9
  97. package/dist/components/blob/Blob.vue.d.ts +16 -12
  98. package/dist/components/blob/composables/blobSimulation.d.ts +80 -0
  99. package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
  100. package/dist/components/blob/composables/resolveBlobSurface.d.ts +6 -0
  101. package/dist/components/blob/composables/satelliteKinematics.d.ts +3 -3
  102. package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +1 -1
  103. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +4 -31
  104. package/dist/components/blob/composables/useBlobMood.d.ts +5 -5
  105. package/dist/components/blob/composables/useBlobPointer.d.ts +11 -12
  106. package/dist/components/blob/composables/useMetaballRenderer.d.ts +29 -24
  107. package/dist/components/blob/composables/wgpuSetup.d.ts +7 -5
  108. package/dist/components/blob/config.d.ts +1 -1
  109. package/dist/components/blob/index.d.ts +2 -2
  110. package/dist/components/blob/presets.d.ts +2 -2
  111. package/dist/components/blob/shaders/metaball-palette.wgsl.d.ts +1 -1
  112. package/dist/components/blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  113. package/dist/components/blob/shaders/metaball.wgsl.d.ts +1 -1
  114. package/dist/components/blob/shaders/sdf-body.glsl.d.ts +1 -1
  115. package/dist/components/blob/shaders/watercolor-edges.glsl.d.ts +1 -1
  116. package/dist/components/blob/types.d.ts +28 -60
  117. package/dist/components/button/Button.vue.d.ts +27 -19
  118. package/dist/components/button/index.d.ts +1 -9
  119. package/dist/components/button/styles.css +1 -0
  120. package/dist/components/card/Card.vue.d.ts +20 -155
  121. package/dist/components/card/CardAction.vue.d.ts +0 -7
  122. package/dist/components/card/CardContent.vue.d.ts +2 -2
  123. package/dist/components/card/CardDescription.vue.d.ts +2 -2
  124. package/dist/components/card/CardFooter.vue.d.ts +2 -2
  125. package/dist/components/card/CardHeader.vue.d.ts +3 -42
  126. package/dist/components/card/CardTitle.vue.d.ts +6 -3
  127. package/dist/components/card/card-scroll.css +1 -0
  128. package/dist/components/card/index.d.ts +1 -3
  129. package/dist/components/card/styles.css +1 -0
  130. package/dist/components/carousel/Carousel.vue.d.ts +2 -2
  131. package/dist/components/carousel/index.d.ts +0 -3
  132. package/dist/components/carousel/interface.d.ts +2 -0
  133. package/dist/components/carousel/useCarousel.d.ts +2 -2
  134. package/dist/components/checkbox/Checkbox.vue.d.ts +17 -9
  135. package/dist/components/checkbox/index.d.ts +1 -1
  136. package/dist/components/checkbox/styles.css +1 -0
  137. package/dist/components/chip/Chip.vue.d.ts +12 -7
  138. package/dist/components/chip/chipVariants.d.ts +20 -43
  139. package/dist/components/chip/index.d.ts +1 -1
  140. package/dist/components/chip/types.d.ts +45 -30
  141. package/dist/components/collapsible/Collapsible.vue.d.ts +22 -9
  142. package/dist/components/collapsible/CollapsibleContent.vue.d.ts +11 -5
  143. package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +12 -9
  144. package/dist/components/collapsible/index.d.ts +3 -3
  145. package/dist/components/combobox/Combobox.vue.d.ts +10 -20
  146. package/dist/components/combobox/ComboboxAnchor.vue.d.ts +2 -6
  147. package/dist/components/combobox/ComboboxEmpty.vue.d.ts +2 -6
  148. package/dist/components/combobox/ComboboxGroup.vue.d.ts +2 -7
  149. package/dist/components/combobox/ComboboxInput.vue.d.ts +7 -12
  150. package/dist/components/combobox/ComboboxItem.vue.d.ts +7 -11
  151. package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +2 -6
  152. package/dist/components/combobox/ComboboxList.vue.d.ts +14 -17
  153. package/dist/components/combobox/ComboboxTrigger.vue.d.ts +16 -0
  154. package/dist/components/combobox/index.d.ts +2 -3
  155. package/dist/components/combobox/types.d.ts +87 -0
  156. package/dist/components/command/Command.vue.d.ts +9 -23
  157. package/dist/components/command/CommandDialog.vue.d.ts +8 -10
  158. package/dist/components/command/CommandEmpty.vue.d.ts +2 -6
  159. package/dist/components/command/CommandGroup.vue.d.ts +2 -7
  160. package/dist/components/command/CommandInput.vue.d.ts +6 -7
  161. package/dist/components/command/CommandItem.vue.d.ts +7 -11
  162. package/dist/components/command/CommandList.vue.d.ts +12 -19
  163. package/dist/components/command/CommandSeparator.vue.d.ts +2 -6
  164. package/dist/components/command/CommandShortcut.vue.d.ts +2 -2
  165. package/dist/components/command/dialogContext.d.ts +6 -0
  166. package/dist/components/command/index.d.ts +10 -10
  167. package/dist/components/command/styles.css +1 -0
  168. package/dist/components/command/types.d.ts +27 -0
  169. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +2 -2
  170. package/dist/components/completion-seal/constants.d.ts +2 -2
  171. package/dist/components/completion-seal/styles.css +1 -0
  172. package/dist/components/configurator/Configurator.vue.d.ts +6 -6
  173. package/dist/components/configurator/ConfiguratorLayer.vue.d.ts +14 -18
  174. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +14 -17
  175. package/dist/components/configurator/size.d.ts +5 -7
  176. package/dist/components/configurator/styles.css +1 -0
  177. package/dist/components/constellation/Constellation.vue.d.ts +7 -2
  178. package/dist/components/constellation/composables/createConstellationField.d.ts +2 -2
  179. package/dist/components/constellation/composables/useConstellation.d.ts +3 -16
  180. package/dist/components/constellation/constants.d.ts +14 -24
  181. package/dist/components/constellation/constellationField.d.ts +8 -11
  182. package/dist/components/constellation/constellationInteraction.d.ts +9 -9
  183. package/dist/components/constellation/constellationRender.d.ts +11 -21
  184. package/dist/components/constellation/constellationTypes.d.ts +64 -62
  185. package/dist/components/constellation/constellationWell.d.ts +2 -2
  186. package/dist/components/constellation/index.d.ts +1 -1
  187. package/dist/components/dark-mode-toggle/DarkModeToggle.vue.d.ts +12 -0
  188. package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -0
  189. package/dist/components/dark-mode-toggle/index.d.ts +2 -0
  190. package/dist/components/data-table/DataTable.vue.d.ts +12 -48
  191. package/dist/components/data-table/composables/useDataTableRowIdentity.d.ts +5 -23
  192. package/dist/components/data-table/index.d.ts +1 -2
  193. package/dist/components/data-table/styles.css +1 -0
  194. package/dist/components/data-table/types.d.ts +36 -13
  195. package/dist/components/deck/constants.d.ts +0 -10
  196. package/dist/components/deck/index.d.ts +0 -2
  197. package/dist/components/dialog/Dialog.vue.d.ts +8 -3
  198. package/dist/components/dialog/DialogClose.vue.d.ts +3 -1
  199. package/dist/components/dialog/DialogContent.vue.d.ts +28 -85
  200. package/dist/components/dialog/DialogDescription.vue.d.ts +5 -6
  201. package/dist/components/dialog/DialogTitle.vue.d.ts +5 -6
  202. package/dist/components/dialog/DialogTrigger.vue.d.ts +3 -1
  203. package/dist/components/dialog/ModalOverlay.vue.d.ts +45 -0
  204. package/dist/components/dialog/dialogStageContext.d.ts +7 -0
  205. package/dist/components/dialog/index.d.ts +8 -9
  206. package/dist/components/dialog/placement.css +1 -0
  207. package/dist/components/dialog/sheet-motion.d.ts +17 -0
  208. package/dist/components/dock/DockControl.vue.d.ts +13 -16
  209. package/dist/components/dock/DockCrossfade.vue.d.ts +4 -8
  210. package/dist/components/dock/DockLayer.vue.d.ts +2 -3
  211. package/dist/components/dock/DockLayerGroup.vue.d.ts +6 -6
  212. package/dist/components/dock/DockSeparator.vue.d.ts +8 -8
  213. package/dist/components/dock/GlassDock.vue.d.ts +1 -0
  214. package/dist/components/dock/composables/dockContext.d.ts +4 -14
  215. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +6 -7
  216. package/dist/components/dock/composables/dockMorphMeasure.d.ts +6 -75
  217. package/dist/components/dock/composables/index.d.ts +1 -1
  218. package/dist/components/dock/composables/useDockClickIntegrity.d.ts +5 -1
  219. package/dist/components/dock/composables/useDockHold.d.ts +4 -5
  220. package/dist/components/dock/composables/useDockMorph.d.ts +26 -0
  221. package/dist/components/dock/composables/useDockOverflowFit.d.ts +7 -9
  222. package/dist/components/dock/composables/useDockSearch.d.ts +8 -8
  223. package/dist/components/dock/composables/useDockShellProps.d.ts +53 -43
  224. package/dist/components/dock/composables/useDockSpring.d.ts +7 -11
  225. package/dist/components/dock/composables/useDockState.d.ts +14 -5
  226. package/dist/components/dock/composables/useDockTouchGate.d.ts +14 -23
  227. package/dist/components/dock/constants.d.ts +5 -90
  228. package/dist/components/dock/index.d.ts +2 -6
  229. package/dist/components/dock/styles/adaptive-legibility.css +1 -0
  230. package/dist/components/dock/styles/controls/icon-button.css +1 -0
  231. package/dist/{styles/dock-controls → components/dock/styles/controls}/touch-floor.css +1 -1
  232. package/dist/components/dock/styles/controls.css +1 -0
  233. package/dist/components/dock/styles/crossfade.css +1 -0
  234. package/dist/{styles/dock → components/dock/styles}/density.css +1 -1
  235. package/dist/components/dock/styles/dock.css +1 -0
  236. package/dist/components/dock/styles/index.css +1 -0
  237. package/dist/components/dock/styles/layer-group.css +1 -0
  238. package/dist/components/dock/styles/layers.css +1 -0
  239. package/dist/components/dock/styles/morph.css +1 -0
  240. package/dist/components/dock/styles/overflow.css +1 -0
  241. package/dist/components/dock/styles/shape.css +1 -0
  242. package/dist/components/dock/styles/shell.css +1 -0
  243. package/dist/components/drawer/Drawer.vue.d.ts +20 -23
  244. package/dist/components/drawer/DrawerContent.vue.d.ts +15 -16
  245. package/dist/components/drawer/DrawerDescription.vue.d.ts +5 -6
  246. package/dist/components/drawer/DrawerOverlay.vue.d.ts +6 -6
  247. package/dist/components/drawer/DrawerTitle.vue.d.ts +5 -6
  248. package/dist/components/drawer/composables/drawerSnapContext.d.ts +9 -1
  249. package/dist/components/drawer/composables/useDrawerSnap.d.ts +3 -1
  250. package/dist/components/drawer/constants.d.ts +10 -28
  251. package/dist/components/drawer/index.d.ts +13 -15
  252. package/dist/components/drawer/styles.css +1 -0
  253. package/dist/components/dropdown-menu/DropdownMenu.vue.d.ts +43 -16
  254. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts +22 -13
  255. package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +28 -19
  256. package/dist/components/dropdown-menu/DropdownMenuGroup.vue.d.ts +6 -4
  257. package/dist/components/dropdown-menu/DropdownMenuItem.vue.d.ts +21 -9
  258. package/dist/components/dropdown-menu/DropdownMenuLabel.vue.d.ts +9 -9
  259. package/dist/components/dropdown-menu/DropdownMenuRadioGroup.vue.d.ts +13 -6
  260. package/dist/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts +18 -11
  261. package/dist/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts +5 -6
  262. package/dist/components/dropdown-menu/DropdownMenuShortcut.vue.d.ts +7 -8
  263. package/dist/components/dropdown-menu/DropdownMenuSub.vue.d.ts +15 -7
  264. package/dist/components/dropdown-menu/DropdownMenuSubContent.vue.d.ts +24 -17
  265. package/dist/components/dropdown-menu/DropdownMenuSubTrigger.vue.d.ts +11 -9
  266. package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +18 -5
  267. package/dist/components/dropdown-menu/index.d.ts +15 -16
  268. package/dist/components/dropdown-menu/styles.css +1 -0
  269. package/dist/components/dropdown-menu/useMenuTrigger.d.ts +2 -9
  270. package/dist/components/easing/EasingConfigurator.vue.d.ts +1 -1
  271. package/dist/components/easing/EasingPicker.vue.d.ts +2 -2
  272. package/dist/components/easing/composables/useEasingPicker.d.ts +8 -7
  273. package/dist/components/easing/constants.d.ts +3 -1
  274. package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +1 -25
  275. package/dist/components/expandable-container/styles.css +1 -0
  276. package/dist/components/fading-scroll/FadingScroll.vue.d.ts +4 -0
  277. package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +7 -3
  278. package/dist/components/fading-scroll/constants.d.ts +1 -2
  279. package/dist/components/fourier-field/FourierField.vue.d.ts +10 -6
  280. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +1 -1
  281. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +1 -1
  282. package/dist/components/fourier-field/composables/useFourierField.d.ts +6 -5
  283. package/dist/components/fourier-field/constants.d.ts +10 -10
  284. package/dist/components/fourier-field/index.d.ts +3 -3
  285. package/dist/components/fourier-field/presets.d.ts +3 -3
  286. package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +2 -2
  287. package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
  288. package/dist/components/handmark/HandMark.vue.d.ts +2 -2
  289. package/dist/components/handmark/brush.d.ts +1 -1
  290. package/dist/components/handmark/composables/useHandMark.d.ts +4 -4
  291. package/dist/components/handmark/constants.d.ts +10 -10
  292. package/dist/components/handmark/geometry.d.ts +9 -9
  293. package/dist/components/handmark/index.d.ts +11 -14
  294. package/dist/components/handmark/noise.d.ts +3 -3
  295. package/dist/components/handmark/types.d.ts +2 -2
  296. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +3 -21
  297. package/dist/components/header-ribbon/styles.css +1 -0
  298. package/dist/components/header-ribbon/types.d.ts +5 -2
  299. package/dist/components/index.d.ts +0 -4
  300. package/dist/components/infinite-scroll/composables/types.d.ts +1 -1
  301. package/dist/components/infinite-scroll/index.d.ts +1 -0
  302. package/dist/components/input/Input.vue.d.ts +10 -35
  303. package/dist/components/input/index.d.ts +2 -1
  304. package/dist/components/input/types.d.ts +22 -0
  305. package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +10 -84
  306. package/dist/components/instrument-chassis/index.d.ts +1 -2
  307. package/dist/components/instrument-chassis/styles.css +1 -0
  308. package/dist/components/instrument-chassis/types.d.ts +13 -0
  309. package/dist/components/label/Label.vue.d.ts +9 -14
  310. package/dist/components/label/index.d.ts +1 -1
  311. package/dist/components/labeled-field/LabeledField.vue.d.ts +11 -99
  312. package/dist/components/labeled-field/LabeledInput.vue.d.ts +5 -18
  313. package/dist/components/labeled-field/LabeledSelect.vue.d.ts +12 -18
  314. package/dist/components/labeled-field/LabeledSlider.vue.d.ts +12 -18
  315. package/dist/components/labeled-field/LabeledSwitch.vue.d.ts +14 -17
  316. package/dist/components/labeled-field/index.d.ts +1 -0
  317. package/dist/components/labeled-field/types.d.ts +50 -0
  318. package/dist/components/liquid-grid/LiquidGrid.vue.d.ts +4 -0
  319. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +5 -5
  320. package/dist/components/liquid-grid/composables/useLiquidGrid.d.ts +2 -1
  321. package/dist/components/liquid-grid/constants.d.ts +6 -7
  322. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +1 -1
  323. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +1 -1
  324. package/dist/components/metric/Metric.vue.d.ts +24 -0
  325. package/dist/components/metric/MetricCell.vue.d.ts +26 -0
  326. package/dist/components/metric/MetricRow.vue.d.ts +22 -0
  327. package/dist/components/metric/MetricStack.vue.d.ts +16 -0
  328. package/dist/components/metric/coalesce-metric.d.ts +7 -28
  329. package/dist/components/metric/index.d.ts +5 -0
  330. package/dist/components/metric/styles.css +1 -0
  331. package/dist/components/metric/types.d.ts +32 -0
  332. package/dist/components/number-field/NumberField.vue.d.ts +21 -9
  333. package/dist/components/number-field/NumberFieldContent.vue.d.ts +2 -2
  334. package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +6 -6
  335. package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +6 -6
  336. package/dist/components/number-field/NumberFieldInput.vue.d.ts +1 -6
  337. package/dist/components/number-field/context.d.ts +6 -0
  338. package/dist/components/number-field/index.d.ts +5 -5
  339. package/dist/components/number-field/styles.css +1 -0
  340. package/dist/components/pager-dots/PagerDots.vue.d.ts +1 -1
  341. package/dist/components/pager-dots/constants.d.ts +1 -2
  342. package/dist/components/pager-dots/index.d.ts +0 -2
  343. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +1 -14
  344. package/dist/components/paper-backdrop/index.d.ts +1 -1
  345. package/dist/components/popover/Popover.vue.d.ts +24 -36
  346. package/dist/components/popover/PopoverContent.vue.d.ts +23 -29
  347. package/dist/components/popover/PopoverTrigger.vue.d.ts +12 -7
  348. package/dist/components/popover/index.d.ts +3 -3
  349. package/dist/components/popover/popoverContext.d.ts +3 -4
  350. package/dist/components/progress/Progress.vue.d.ts +6 -49
  351. package/dist/components/progress/index.d.ts +1 -5
  352. package/dist/components/progress/types.d.ts +19 -0
  353. package/dist/components/pulse/Pulse.vue.d.ts +8 -47
  354. package/dist/components/pulse/index.d.ts +1 -0
  355. package/dist/components/radio-group/RadioGroup.vue.d.ts +27 -15
  356. package/dist/components/radio-group/RadioGroupItem.vue.d.ts +9 -6
  357. package/dist/components/radio-group/index.d.ts +2 -0
  358. package/dist/components/radio-group/styles.css +1 -0
  359. package/dist/components/scroll-progress-rim/styles.css +1 -0
  360. package/dist/components/search/FuzzySearch.vue.d.ts +4 -2
  361. package/dist/components/search/SearchBar.vue.d.ts +3 -3
  362. package/dist/components/search/searchVariants.d.ts +15 -17
  363. package/dist/components/select/Select.vue.d.ts +25 -14
  364. package/dist/components/select/SelectContent.vue.d.ts +26 -29
  365. package/dist/components/select/SelectGroup.vue.d.ts +7 -11
  366. package/dist/components/select/SelectItem.vue.d.ts +24 -13
  367. package/dist/components/select/SelectLabel.vue.d.ts +7 -11
  368. package/dist/components/select/SelectScrollDownButton.vue.d.ts +3 -4
  369. package/dist/components/select/SelectScrollUpButton.vue.d.ts +3 -4
  370. package/dist/components/select/SelectSeparator.vue.d.ts +5 -6
  371. package/dist/components/select/SelectTrigger.vue.d.ts +15 -41
  372. package/dist/components/select/SelectValue.vue.d.ts +13 -7
  373. package/dist/components/select/index.d.ts +16 -10
  374. package/dist/components/separator/Separator.vue.d.ts +11 -6
  375. package/dist/components/separator/index.d.ts +1 -1
  376. package/dist/components/skeleton/Skeleton.vue.d.ts +3 -31
  377. package/dist/components/slider/Slider.vue.d.ts +10 -35
  378. package/dist/components/slider/index.d.ts +1 -45
  379. package/dist/components/slider/types.d.ts +25 -0
  380. package/dist/components/sortable-list/SortableList.vue.d.ts +1 -1
  381. package/dist/components/sortable-list/composables/ghostRenderer.d.ts +1 -1
  382. package/dist/components/sortable-list/composables/touchGate.d.ts +1 -1
  383. package/dist/components/sortable-list/composables/transitionTiming.d.ts +1 -1
  384. package/dist/components/status-dot/StatusDot.vue.d.ts +7 -10
  385. package/dist/components/status-dot/index.d.ts +1 -0
  386. package/dist/components/surface/Surface.vue.d.ts +13 -21
  387. package/dist/components/surface/index.d.ts +2 -2
  388. package/dist/components/switch/Switch.vue.d.ts +20 -11
  389. package/dist/components/switch/index.d.ts +2 -1
  390. package/dist/components/switch/styles.css +1 -0
  391. package/dist/components/table/Table.vue.d.ts +5 -1
  392. package/dist/components/tabs/SegmentedTabs.vue.d.ts +31 -13
  393. package/dist/components/tabs/composables/useTabDragMorph.d.ts +6 -6
  394. package/dist/components/tabs/composables/useTabResponsive.d.ts +5 -6
  395. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +16 -16
  396. package/dist/components/tabs/constants.d.ts +1 -1
  397. package/dist/components/tabs/index.d.ts +1 -1
  398. package/dist/components/tabs/styles/drag.css +1 -0
  399. package/dist/components/tabs/styles/segmented.css +1 -0
  400. package/dist/components/tags-input/TagsInput.vue.d.ts +28 -15
  401. package/dist/components/tags-input/TagsInputInput.vue.d.ts +8 -6
  402. package/dist/components/tags-input/TagsInputItem.vue.d.ts +9 -8
  403. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +5 -6
  404. package/dist/components/tags-input/TagsInputItemText.vue.d.ts +5 -6
  405. package/dist/components/tags-input/context.d.ts +5 -0
  406. package/dist/components/tags-input/index.d.ts +5 -5
  407. package/dist/components/tags-input/styles.css +1 -0
  408. package/dist/components/textarea/Textarea.vue.d.ts +10 -55
  409. package/dist/components/textarea/index.d.ts +2 -1
  410. package/dist/components/textarea/types.d.ts +22 -0
  411. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +2 -4
  412. package/dist/components/timeline/ContinuousRail.vue.d.ts +3 -6
  413. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +11 -12
  414. package/dist/components/timeline/GlassTimeline.vue.d.ts +9 -10
  415. package/dist/components/timeline/ScrubberTimeline.vue.d.ts +4 -4
  416. package/dist/components/timeline/SegmentedTimeline.vue.d.ts +2 -3
  417. package/dist/components/timeline/geometry.d.ts +3 -4
  418. package/dist/components/timeline/types.d.ts +3 -3
  419. package/dist/components/toast/Toast.vue.d.ts +38 -80
  420. package/dist/components/toast/ToastAction.vue.d.ts +5 -5
  421. package/dist/components/toast/ToastClose.vue.d.ts +4 -5
  422. package/dist/components/toast/ToastDescription.vue.d.ts +4 -5
  423. package/dist/components/toast/ToastTitle.vue.d.ts +4 -5
  424. package/dist/components/toast/Toaster.vue.d.ts +1 -1
  425. package/dist/components/toast/index.d.ts +8 -9
  426. package/dist/components/toast/use-toast.d.ts +20 -163
  427. package/dist/components/toggle-group/ToggleGroup.vue.d.ts +44 -22
  428. package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +11 -9
  429. package/dist/components/toggle-group/index.d.ts +3 -2
  430. package/dist/components/toggle-group/styles.css +1 -0
  431. package/dist/components/toggle-group/toggleGroupContext.d.ts +4 -15
  432. package/dist/components/tooltip/Tooltip.vue.d.ts +20 -7
  433. package/dist/components/tooltip/TooltipContent.vue.d.ts +20 -12
  434. package/dist/components/tooltip/TooltipProvider.vue.d.ts +12 -5
  435. package/dist/components/tooltip/TooltipTrigger.vue.d.ts +12 -5
  436. package/dist/components/tooltip/index.d.ts +4 -4
  437. package/dist/components/typewriter/TypewriterText.vue.d.ts +1 -4
  438. package/dist/components/typewriter/composables/useTypewriter.d.ts +1 -1
  439. package/dist/components/typewriter/utils/graphemes.d.ts +1 -0
  440. package/dist/components/typewriter/utils/timing.d.ts +0 -2
  441. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +5 -18
  442. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +1 -4
  443. package/dist/composables/color/accent-tone-solve.d.ts +2 -5
  444. package/dist/composables/color/index.d.ts +31 -38
  445. package/dist/composables/color/useAccentTone.d.ts +0 -3
  446. package/dist/composables/color/value.d.ts +21 -0
  447. package/dist/composables/context/createContext.d.ts +2 -2
  448. package/dist/composables/dark/index.d.ts +1 -1
  449. package/dist/composables/dark/useGlobalDark.d.ts +7 -6
  450. package/dist/composables/dom/useBreakpoint.d.ts +2 -2
  451. package/dist/composables/dom/useClipboard.d.ts +28 -52
  452. package/dist/composables/dom/useDocumentVisibility.d.ts +3 -1
  453. package/dist/composables/dom/useIdleReady.d.ts +5 -6
  454. package/dist/composables/dom/useTokenColor.d.ts +2 -2
  455. package/dist/composables/dom/useUserInvalidAria.d.ts +2 -3
  456. package/dist/composables/dom/useViewportReady.d.ts +4 -4
  457. package/dist/composables/glass/backdropLuminanceSample.d.ts +7 -6
  458. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +7 -1
  459. package/dist/composables/glass/textureUpload.d.ts +8 -10
  460. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +42 -19
  461. package/dist/composables/glass/useSpecularPointer.d.ts +6 -6
  462. package/dist/composables/glass/useSpecularTracking.d.ts +12 -15
  463. package/dist/composables/glass/wave/waveField.d.ts +2 -2
  464. package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -1
  465. package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -1
  466. package/dist/composables/glass/webgl/backingSize.d.ts +5 -8
  467. package/dist/composables/glass/webgl/compile.d.ts +1 -1
  468. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +20 -20
  469. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -28
  470. package/dist/composables/glass/webgl/visibility.d.ts +3 -4
  471. package/dist/composables/glass/webgpu/rendererStatus.d.ts +13 -0
  472. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +13 -10
  473. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -1
  474. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +14 -10
  475. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +15 -16
  476. package/dist/composables/motion/core/asElement.d.ts +2 -0
  477. package/dist/composables/motion/{constants.d.ts → core/constants.d.ts} +2 -3
  478. package/dist/composables/motion/core/index.d.ts +20 -23
  479. package/dist/composables/motion/core/useReducedMotion.d.ts +5 -0
  480. package/dist/composables/motion/core/useViewTransition.d.ts +44 -0
  481. package/dist/composables/motion/index.d.ts +14 -16
  482. package/dist/composables/motion/{useDockCtaReceive.d.ts → morph/useDockCtaReceive.d.ts} +57 -3
  483. package/dist/composables/motion/{useDragMorph.d.ts → morph/useDragMorph.d.ts} +7 -7
  484. package/dist/composables/motion/morph/useElementMorph.d.ts +50 -0
  485. package/dist/composables/motion/{useLeadTrail.d.ts → morph/useLeadTrail.d.ts} +6 -6
  486. package/dist/composables/motion/{useSelectionGroup.d.ts → morph/useSelectionGroup.d.ts} +7 -5
  487. package/dist/composables/motion/{useSelectionIndicator.d.ts → morph/useSelectionIndicator.d.ts} +9 -16
  488. package/dist/composables/motion/{useAnimatedNumber.d.ts → number/useAnimatedNumber.d.ts} +1 -6
  489. package/dist/composables/motion/{useCountup.d.ts → number/useCountup.d.ts} +1 -6
  490. package/dist/composables/motion/{useNumericTransition.d.ts → number/useNumericTransition.d.ts} +4 -2
  491. package/dist/composables/motion/{pointerFieldMappings.d.ts → pointer/pointerFieldMappings.d.ts} +7 -10
  492. package/dist/composables/motion/{usePointerVelocityField.d.ts → pointer/usePointerVelocityField.d.ts} +1 -1
  493. package/dist/composables/motion/{bloomUpField.d.ts → reveal/bloomUpField.d.ts} +1 -1
  494. package/dist/composables/motion/reveal/useBloomUp.d.ts +33 -0
  495. package/dist/composables/motion/{useLiquidReveal.d.ts → reveal/useLiquidReveal.d.ts} +5 -5
  496. package/dist/composables/motion/{useStagger.d.ts → reveal/useStagger.d.ts} +3 -3
  497. package/dist/composables/motion/reveal/useStaggerReveal.d.ts +28 -0
  498. package/dist/composables/motion/{useTextHighlight.d.ts → reveal/useTextHighlight.d.ts} +2 -1
  499. package/dist/composables/motion/{useScrollChrome.d.ts → scroll/useScrollChrome.d.ts} +2 -2
  500. package/dist/composables/motion/{useScrollProgress.d.ts → scroll/useScrollProgress.d.ts} +12 -2
  501. package/dist/composables/motion/{springPresets.d.ts → spring/springPresets.d.ts} +8 -7
  502. package/dist/composables/motion/spring/springProjection.d.ts +19 -0
  503. package/dist/composables/motion/{useLiquidFlex.d.ts → spring/useLiquidFlex.d.ts} +11 -12
  504. package/dist/composables/motion/{useLiquidPress.d.ts → spring/useLiquidPress.d.ts} +15 -7
  505. package/dist/composables/motion/{useSpring.d.ts → spring/useSpring.d.ts} +5 -2
  506. package/dist/composables/motion/{useSpringMount.d.ts → spring/useSpringMount.d.ts} +8 -1
  507. package/dist/composables/sidebar/types.d.ts +3 -3
  508. package/dist/configurator-M5OaIlJd.js +311 -0
  509. package/dist/configurator.js +2 -3
  510. package/dist/{constants-D8lSMkOz.js → constants-nBz23tJE.js} +1 -1
  511. package/dist/constellation.js +230 -565
  512. package/dist/createCanvasLifecycle-DbXRwjU_.js +214 -0
  513. package/dist/dark-mode-toggle.d.ts +1 -0
  514. package/dist/dark-mode-toggle.js +43 -0
  515. package/dist/dark-z_P5QwqI.js +70 -0
  516. package/dist/dark.d.ts +1 -2
  517. package/dist/dark.js +2 -20
  518. package/dist/data-table-BygKg6ZA.js +491 -0
  519. package/dist/data-table.js +2 -2
  520. package/dist/deck.js +12 -23
  521. package/dist/dialog-TNRDkcE4.js +385 -0
  522. package/dist/dialog.js +2 -3
  523. package/dist/dock.js +624 -908
  524. package/dist/dockContext-BUTlGRNJ.js +13 -0
  525. package/dist/dom.js +134 -7
  526. package/dist/drawer.js +291 -193
  527. package/dist/dropdown-menu-BlbnvMaZ.js +507 -0
  528. package/dist/dropdown-menu.js +3 -2
  529. package/dist/easing.d.ts +0 -9
  530. package/dist/easing.js +385 -222
  531. package/dist/expandable-container.js +107 -85
  532. package/dist/fading-scroll-DhxXIhm2.js +96 -0
  533. package/dist/fading-scroll.js +1 -1
  534. package/dist/field-control.css_vue_type_style_index_0_src_true_lang-CeLay9Tk.js +21 -0
  535. package/dist/floating-dB5TD88k.js +7 -0
  536. package/dist/{flow.glsl-CVqPSj8_.js → flow.wgsl-Cd2GUkPx.js} +2 -2
  537. package/dist/fonts/README.md +14 -18
  538. package/dist/forms.js +268 -204
  539. package/dist/fourier-field.js +298 -288
  540. package/dist/fourier-math.d.ts +0 -6
  541. package/dist/fourier-math.js +112 -2
  542. package/dist/glass-ui.css +1 -1
  543. package/dist/glass-ui.js +512 -437
  544. package/dist/handmark.d.ts +0 -2
  545. package/dist/handmark.js +84 -84
  546. package/dist/header-ribbon.js +37 -57
  547. package/dist/index.d.ts +9 -19
  548. package/dist/infinite-scroll.d.ts +0 -1
  549. package/dist/infinite-scroll.js +39 -34
  550. package/dist/instrument-chassis.js +54 -2
  551. package/dist/keyboard.js +104 -2
  552. package/dist/label-DnMqH7jr.js +55 -0
  553. package/dist/label.js +1 -1
  554. package/dist/labeled-field.js +295 -192
  555. package/dist/liquid-grid.js +199 -198
  556. package/dist/menuRowClass-Nh7CtMON.js +12 -0
  557. package/dist/metric.d.ts +1 -0
  558. package/dist/metric.js +192 -0
  559. package/dist/motion-core.js +73 -166
  560. package/dist/motion.js +111 -167
  561. package/dist/number-field-Boe09SvX.js +154 -0
  562. package/dist/number-field.js +1 -1
  563. package/dist/pager-dots.js +2 -2
  564. package/dist/paper-backdrop.js +23 -2
  565. package/dist/{pointerFieldMappings-4VtmkOWv.js → pointerFieldMappings-DP5tla5z.js} +4 -7
  566. package/dist/popover-BQGYXZyO.js +244 -0
  567. package/dist/popover.js +1 -1
  568. package/dist/{presets-B07HzyKd.js → presets-5myqNv59.js} +1 -1
  569. package/dist/primitive-B2t2jdqM.js +11 -0
  570. package/dist/progress-DClbhRAT.js +88 -0
  571. package/dist/progress.js +2 -2
  572. package/dist/pulse.js +29 -41
  573. package/dist/reactive.js +19 -3
  574. package/dist/rendererStatus-BxUlBLVy.js +40 -0
  575. package/dist/resolveCanvasColor-DS_6DBxA.js +82 -0
  576. package/dist/resolveSurfaceClass-DCZ4PZcy.js +6 -0
  577. package/dist/scroll-progress-rim.js +1 -1
  578. package/dist/{scrollReader-DzYqPQ6V.js → scrollReader-Brf5cQNo.js} +1 -1
  579. package/dist/search.js +287 -218
  580. package/dist/select-BcBAyLXA.js +336 -0
  581. package/dist/select.js +2 -4
  582. package/dist/selection-DqIULxRG.js +6 -0
  583. package/dist/separator-CgZInrX-.js +75 -0
  584. package/dist/separator.js +1 -1
  585. package/dist/sidebar.js +53 -42
  586. package/dist/slider-DzqeQmMu.js +162 -0
  587. package/dist/slider.js +2 -2
  588. package/dist/sortable-list.js +51 -50
  589. package/dist/springPresets-rCii5KqX.js +52 -0
  590. package/dist/status-dot.js +26 -43
  591. package/dist/styles/accessibility.css +1 -0
  592. package/dist/styles/animations.css +1 -1
  593. package/dist/styles/components.css +1 -1
  594. package/dist/styles/glass/a11y-fallback.css +1 -1
  595. package/dist/styles/glass/accent-tone.css +1 -1
  596. package/dist/styles/glass/control-surfaces.css +1 -1
  597. package/dist/styles/glass/defined.css +1 -1
  598. package/dist/styles/glass/glass-atom.css +1 -1
  599. package/dist/styles/glass/glass-capsule.css +1 -1
  600. package/dist/styles/glass/glass-chip.css +1 -1
  601. package/dist/styles/glass/ladder.css +1 -1
  602. package/dist/styles/glass/liquid-fill.css +1 -1
  603. package/dist/styles/glass/material-roles.css +1 -0
  604. package/dist/styles/glass/material.css +1 -1
  605. package/dist/styles/glass/reveal.css +1 -1
  606. package/dist/styles/glass/squircle.css +1 -1
  607. package/dist/styles/glass/surface-axis.css +1 -1
  608. package/dist/styles/glass/surfaces-pager.css +1 -1
  609. package/dist/styles/glass/surfaces.css +1 -1
  610. package/dist/styles/glass-refract.css +1 -1
  611. package/dist/styles/glass.css +1 -1
  612. package/dist/styles/index.css +1 -1
  613. package/dist/styles/paper.css +1 -1
  614. package/dist/styles/scroll-driven.css +1 -1
  615. package/dist/styles/theme/bridges.css +1 -1
  616. package/dist/styles/theme/radius.css +1 -1
  617. package/dist/styles/tokens/color-radius.css +1 -1
  618. package/dist/styles/tokens/dark-arm.css +1 -1
  619. package/dist/styles/tokens/glass-deep.css +1 -1
  620. package/dist/styles/tokens/glass-fx.css +1 -1
  621. package/dist/styles/tokens/glass.css +1 -1
  622. package/dist/styles/tokens/light-dark.css +1 -1
  623. package/dist/styles/tokens/manifest.d.ts +14 -0
  624. package/dist/styles/tokens/manifest.ts +56 -0
  625. package/dist/styles/tokens/motion-registers.css +1 -1
  626. package/dist/styles/tokens/offsets.css +1 -1
  627. package/dist/styles/tokens/property-regs-specular.css +1 -1
  628. package/dist/styles/tokens/property-regs.css +1 -1
  629. package/dist/styles/tokens/scale-paper.css +1 -1
  630. package/dist/styles/tokens/scheme-motion.css +1 -1
  631. package/dist/styles/tokens/scheme-spring.css +1 -1
  632. package/dist/styles/tokens/scroll-tokens.css +1 -1
  633. package/dist/styles/tokens/shadow.css +1 -1
  634. package/dist/styles/tokens/sizing-config.css +1 -1
  635. package/dist/styles/tokens/sizing.css +1 -1
  636. package/dist/styles/tokens.d.ts +48 -0
  637. package/dist/styles/tokens.ts +54 -0
  638. package/dist/styles/transitions.css +1 -1
  639. package/dist/styles/typography/scale.css +1 -1
  640. package/dist/styles/typography/semantic.css +1 -1
  641. package/dist/styles/typography/utilities.css +1 -1
  642. package/dist/styles/utilities/a11y-overrides.css +1 -1
  643. package/dist/styles/utilities/base-misc.css +1 -1
  644. package/dist/styles/utilities/base.css +1 -1
  645. package/dist/styles/utilities/btn.css +1 -1
  646. package/dist/styles/utilities/components.css +1 -1
  647. package/dist/styles/utilities/metal.css +1 -1
  648. package/dist/styles/utilities/responsive.css +1 -0
  649. package/dist/styles/utilities.css +1 -1
  650. package/dist/styles/view-transition.css +1 -1
  651. package/dist/{supportsCssTimeline-Ie4xJFbD.js → supportsCssTimeline-C2zyWpl8.js} +1 -1
  652. package/dist/surface.js +2 -3
  653. package/dist/switch-DZjQuFLa.js +54 -0
  654. package/dist/switch.js +1 -1
  655. package/dist/tabs.js +146 -168
  656. package/dist/timeline.js +86 -87
  657. package/dist/toast-CH5mnsYT.js +267 -0
  658. package/dist/toast.js +1 -1
  659. package/dist/toggle-group-O6jBo7AE.js +150 -0
  660. package/dist/toggle-group.js +1 -1
  661. package/dist/tokens.d.ts +1 -53
  662. package/dist/tokens.js +96 -5
  663. package/dist/tooltip-Drx5qnw_.js +148 -0
  664. package/dist/tooltip.js +1 -1
  665. package/dist/typewriter.js +233 -219
  666. package/dist/{useAccentTone-D25DxviG.js → useAccentTone-DyInfHXE.js} +2 -2
  667. package/dist/{useAnimatedNumber-2XC4aRB6.js → useAnimatedNumber-WPtMz0AN.js} +2 -2
  668. package/dist/useClipboard-D36OTaeT.js +53 -0
  669. package/dist/useDockCtaReceive-DkrOTM0q.js +146 -0
  670. package/dist/useDocumentVisibility-Dh_TGXsU.js +21 -0
  671. package/dist/useDragMorph-BogSV_nv.js +293 -0
  672. package/dist/{useIntersectionPause-Cmt5Tnv9.js → useIntersectionPause-B5mAU6XY.js} +15 -15
  673. package/dist/useLeadTrail-AW1-zZcd.js +74 -0
  674. package/dist/{useLiquidFlex-Ch4exNvN.js → useLiquidFlex-TJZmRqyY.js} +1 -1
  675. package/dist/useLiquidPress-BOxuDkKa.js +101 -0
  676. package/dist/useMotionAxis-D-rtIhca.js +19 -0
  677. package/dist/usePointerVelocityField-DsIf7yyq.js +121 -0
  678. package/dist/useRAFLoop-B3YlWK4M.js +98 -0
  679. package/dist/useReducedMotion-vCXA_vyM.js +27 -0
  680. package/dist/useRoutePointer-B8itM7Ka.js +53 -0
  681. package/dist/useScrollProgress-CSFYXIZT.js +43 -0
  682. package/dist/useScrollTrigger-BDdqptlc.js +87 -0
  683. package/dist/useSelectionGroup-B5XplBbo.js +132 -0
  684. package/dist/{useSpring-BBSKFx_0.js → useSpring-9u2_shxV.js} +2 -2
  685. package/dist/useSpringMount-uQ8QL9Ff.js +74 -0
  686. package/dist/useTabRovingFocus-YnWh-Ytr.js +169 -0
  687. package/dist/useTextHighlight-mfwNIC1f.js +112 -0
  688. package/dist/{useTouchGate-BlegwvwL.js → useTouchGate-B4mzQcHJ.js} +1 -1
  689. package/dist/vSpecular-DMJo8pfD.js +68 -0
  690. package/dist/value-DMhh2R94.js +33 -0
  691. package/dist/valueDomain-SbVzoHMH.js +13 -0
  692. package/dist/watercolor-dot.js +77 -101
  693. package/package.json +166 -242
  694. package/dist/CardAction-2uUvjMQK.js +0 -285
  695. package/dist/CollapsibleContent-DiHcB_HH.js +0 -63
  696. package/dist/CommandShortcut-fmdbsEJL.js +0 -302
  697. package/dist/ConfiguratorRow-BV6zPjTM.js +0 -151
  698. package/dist/DataTable-Bxya8nBn.js +0 -518
  699. package/dist/DialogContent-Bl4v10AC.js +0 -192
  700. package/dist/DialogFooter-C0v4Hz2F.js +0 -168
  701. package/dist/FadingScroll-BSRLqQCx.js +0 -76
  702. package/dist/FocusScope-BzKwhsBn.js +0 -23
  703. package/dist/IconChip-CwLmBJ_K.js +0 -57
  704. package/dist/IconTooltip-D9sbK-Mk.js +0 -25
  705. package/dist/Input-DKf-XwUM.js +0 -57
  706. package/dist/InstrumentChassis-Dss5Tjcm.js +0 -65
  707. package/dist/Label-C84TaQiw.js +0 -36
  708. package/dist/Notification-DQv2cOh9.js +0 -43
  709. package/dist/NumberFieldContent-BkE7xPS9.js +0 -140
  710. package/dist/PagerDots-BP6jh7z4.js +0 -279
  711. package/dist/PaperBackdrop-BYwE8_kg.js +0 -31
  712. package/dist/PopoverContent-DOtszFWK.js +0 -251
  713. package/dist/Progress-uWLyXE7J.js +0 -308
  714. package/dist/SelectGroup-BuEptUsa.js +0 -31
  715. package/dist/SelectScrollDownButton-CDtwaWkZ.js +0 -261
  716. package/dist/SelectSeparator-4QGephvr.js +0 -49
  717. package/dist/Separator-DqJ6PfOd.js +0 -44
  718. package/dist/Surface-BWRfwyn8.js +0 -59
  719. package/dist/Switch-BPBfhMU3.js +0 -49
  720. package/dist/Toaster-C_-WeU9W.js +0 -281
  721. package/dist/ToggleGroupItem-DNWx2aSW.js +0 -175
  722. package/dist/TooltipProvider-GtfYdSVf.js +0 -110
  723. package/dist/accent-tone-solve-CBw3L0cy.js +0 -20
  724. package/dist/badge-C0C-rTBu.js +0 -80
  725. package/dist/button-BXzhydVB.js +0 -187
  726. package/dist/coalesce-metric-B8o7zT9u.js +0 -13
  727. package/dist/color-Bp5jmv4Z.js +0 -86
  728. package/dist/color-swatch.d.ts +0 -1
  729. package/dist/color-swatch.js +0 -47
  730. package/dist/components/_shared/ModalOverlay.vue.d.ts +0 -90
  731. package/dist/components/_shared/menuItemVariants.d.ts +0 -51
  732. package/dist/components/_shared/useControlSize.d.ts +0 -46
  733. package/dist/components/_shared/useStalePropWarning.d.ts +0 -27
  734. package/dist/components/_shared/useSurfaceAxis.d.ts +0 -64
  735. package/dist/components/card/ScrollCard.vue.d.ts +0 -33
  736. package/dist/components/card/ScrollCardHeader.vue.d.ts +0 -17
  737. package/dist/components/carousel/CarouselNext.vue.d.ts +0 -21
  738. package/dist/components/carousel/CarouselPrevious.vue.d.ts +0 -21
  739. package/dist/components/carousel/GlassCarouselPager.vue.d.ts +0 -50
  740. package/dist/components/color-swatch/ColorSwatch.vue.d.ts +0 -22
  741. package/dist/components/color-swatch/index.d.ts +0 -1
  742. package/dist/components/combobox/ComboboxSeparator.vue.d.ts +0 -18
  743. package/dist/components/combobox/ComboboxViewport.vue.d.ts +0 -18
  744. package/dist/components/constellation/composables/constellationGLSetup.d.ts +0 -10
  745. package/dist/components/constellation/composables/constellationWGPUSetup.d.ts +0 -19
  746. package/dist/components/constellation/composables/uniformBridgeWGPU.d.ts +0 -66
  747. package/dist/components/constellation/shaders/constellation-lines.glsl.d.ts +0 -2
  748. package/dist/components/constellation/shaders/constellation-lines.wgsl.d.ts +0 -1
  749. package/dist/components/constellation/shaders/constellation-points.glsl.d.ts +0 -2
  750. package/dist/components/constellation/shaders/constellation-points.wgsl.d.ts +0 -1
  751. package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -34
  752. package/dist/components/controls/index.d.ts +0 -1
  753. package/dist/components/data-table/DataTablePagination.vue.d.ts +0 -13
  754. package/dist/components/deck/composables/useDeckSpring.d.ts +0 -22
  755. package/dist/components/dialog/DialogScrollContent.vue.d.ts +0 -33
  756. package/dist/components/dock/DockSection.vue.d.ts +0 -69
  757. package/dist/components/dock/DockStack.vue.d.ts +0 -73
  758. package/dist/components/dock/composables/dockMorphContext.d.ts +0 -89
  759. package/dist/components/dock/composables/useDockFisheye.d.ts +0 -24
  760. package/dist/components/dock/composables/useDockPopover.d.ts +0 -68
  761. package/dist/components/focus-scope/FocusScope.vue.d.ts +0 -20
  762. package/dist/components/focus-scope/index.d.ts +0 -2
  763. package/dist/components/goo-filter/GooFilter.vue.d.ts +0 -22
  764. package/dist/components/goo-filter/index.d.ts +0 -1
  765. package/dist/components/icon-chip/IconChip.vue.d.ts +0 -4
  766. package/dist/components/icon-chip/index.d.ts +0 -2
  767. package/dist/components/icon-chip/types.d.ts +0 -92
  768. package/dist/components/icon-tooltip/IconTooltip.vue.d.ts +0 -16
  769. package/dist/components/icon-tooltip/index.d.ts +0 -1
  770. package/dist/components/instrument-chassis/ChassisDivider.vue.d.ts +0 -30
  771. package/dist/components/metric-badge/MetricBadge.vue.d.ts +0 -40
  772. package/dist/components/metric-badge/index.d.ts +0 -2
  773. package/dist/components/metric-cell/MetricCell.vue.d.ts +0 -108
  774. package/dist/components/metric-cell/index.d.ts +0 -2
  775. package/dist/components/metric-stack/MetricRow.vue.d.ts +0 -120
  776. package/dist/components/metric-stack/MetricStack.vue.d.ts +0 -92
  777. package/dist/components/metric-stack/index.d.ts +0 -4
  778. package/dist/components/notification/Notification.vue.d.ts +0 -16
  779. package/dist/components/notification/index.d.ts +0 -1
  780. package/dist/components/progress/ProgressDefault.vue.d.ts +0 -25
  781. package/dist/components/progress/ProgressGradient.vue.d.ts +0 -25
  782. package/dist/components/progress/ProgressLiquid.vue.d.ts +0 -21
  783. package/dist/components/progress/ProgressSectioned.vue.d.ts +0 -47
  784. package/dist/components/progress/useProgressGeometry.d.ts +0 -60
  785. package/dist/components/section/Section.vue.d.ts +0 -73
  786. package/dist/components/section/index.d.ts +0 -1
  787. package/dist/components/spa-view/SpaView.vue.d.ts +0 -50
  788. package/dist/components/spa-view/index.d.ts +0 -2
  789. package/dist/components/split-chars/SplitChars.vue.d.ts +0 -53
  790. package/dist/components/split-chars/index.d.ts +0 -1
  791. package/dist/components/stacked-icons/StackedIconGroup.vue.d.ts +0 -30
  792. package/dist/components/stacked-icons/index.d.ts +0 -2
  793. package/dist/components/stacked-icons/types.d.ts +0 -19
  794. package/dist/components/tabs/composables/useEyeglassLive.d.ts +0 -17
  795. package/dist/components/toggle/Toggle.vue.d.ts +0 -29
  796. package/dist/components/toggle/index.d.ts +0 -26
  797. package/dist/composables/glass/webgl/shaders/glass-refract.glsl.d.ts +0 -36
  798. package/dist/composables/motion/curves.d.ts +0 -48
  799. package/dist/composables/motion/gooBarbellGeometry.d.ts +0 -79
  800. package/dist/composables/motion/morphSignatures.d.ts +0 -88
  801. package/dist/composables/motion/suite.d.ts +0 -2
  802. package/dist/composables/motion/useBloomUp.d.ts +0 -97
  803. package/dist/composables/motion/useCharStagger.d.ts +0 -44
  804. package/dist/composables/motion/useElementMorph.d.ts +0 -99
  805. package/dist/composables/motion/useGooMorph.d.ts +0 -72
  806. package/dist/composables/motion/usePrioritizedTask.d.ts +0 -41
  807. package/dist/composables/motion/useStaggerReveal.d.ts +0 -52
  808. package/dist/composables/motion/useViewTransition.d.ts +0 -81
  809. package/dist/composables/virtual/index.d.ts +0 -4
  810. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +0 -72
  811. package/dist/composables/virtual/useWindowedStore.d.ts +0 -43
  812. package/dist/composables/virtual/virtualSectionLayout.d.ts +0 -103
  813. package/dist/controls.d.ts +0 -1
  814. package/dist/controls.js +0 -91
  815. package/dist/createCanvasLifecycle-DlrcvWbb.js +0 -209
  816. package/dist/dockContext-d-WpJN2Z.js +0 -13
  817. package/dist/dropdown-menu-DaGlVdp9.js +0 -421
  818. package/dist/focus-scope.d.ts +0 -1
  819. package/dist/focus-scope.js +0 -2
  820. package/dist/icon-chip.d.ts +0 -1
  821. package/dist/icon-chip.js +0 -2
  822. package/dist/icon-tooltip.d.ts +0 -1
  823. package/dist/icon-tooltip.js +0 -2
  824. package/dist/math-CIEcwsYi.js +0 -112
  825. package/dist/menuItemVariants-DbO-Fr74.js +0 -36
  826. package/dist/metric-badge.d.ts +0 -1
  827. package/dist/metric-badge.js +0 -79
  828. package/dist/metric-cell.d.ts +0 -1
  829. package/dist/metric-cell.js +0 -61
  830. package/dist/metric-stack.d.ts +0 -1
  831. package/dist/metric-stack.js +0 -113
  832. package/dist/motion-curves.d.ts +0 -21
  833. package/dist/motion-curves.js +0 -146
  834. package/dist/notification.d.ts +0 -1
  835. package/dist/notification.js +0 -2
  836. package/dist/resolveCanvasColor-B3L-akX0.js +0 -93
  837. package/dist/slider-Cxuj_W_H.js +0 -151
  838. package/dist/spa-view.d.ts +0 -1
  839. package/dist/spa-view.js +0 -46
  840. package/dist/springPresets-h5VKJQqG.js +0 -58
  841. package/dist/stacked-icons.d.ts +0 -1
  842. package/dist/stacked-icons.js +0 -98
  843. package/dist/styles/card-scroll.css +0 -1
  844. package/dist/styles/cards.css +0 -1
  845. package/dist/styles/completion-seal.css +0 -1
  846. package/dist/styles/configurator.css +0 -1
  847. package/dist/styles/dialog-placement.css +0 -1
  848. package/dist/styles/dock/adaptive-legibility.css +0 -1
  849. package/dist/styles/dock/crossfade.css +0 -1
  850. package/dist/styles/dock/dock.css +0 -1
  851. package/dist/styles/dock/fisheye.css +0 -1
  852. package/dist/styles/dock/layer-group.css +0 -1
  853. package/dist/styles/dock/layers.css +0 -1
  854. package/dist/styles/dock/morph.css +0 -1
  855. package/dist/styles/dock/overflow.css +0 -1
  856. package/dist/styles/dock/popover.css +0 -1
  857. package/dist/styles/dock/section.css +0 -1
  858. package/dist/styles/dock/shape.css +0 -1
  859. package/dist/styles/dock/shell.css +0 -1
  860. package/dist/styles/dock-controls/dark-mode-toggle.css +0 -1
  861. package/dist/styles/dock-controls/icon-button.css +0 -1
  862. package/dist/styles/dock-controls.css +0 -1
  863. package/dist/styles/dock.css +0 -1
  864. package/dist/styles/drawer.css +0 -1
  865. package/dist/styles/glass/progress-rail.css +0 -1
  866. package/dist/styles/icon-chip.css +0 -1
  867. package/dist/styles/instrument-chassis.css +0 -1
  868. package/dist/styles/menu.css +0 -1
  869. package/dist/styles/scroll-progress-rim.css +0 -1
  870. package/dist/styles/segmented-tabs.css +0 -1
  871. package/dist/styles/select.css +0 -1
  872. package/dist/styles/tabs/segmented-tabs-drag.css +0 -1
  873. package/dist/styles/utilities/animate.css +0 -0
  874. package/dist/useConfiguratorState-Dq35N_7t.js +0 -167
  875. package/dist/useControlSize-DJwe-7ZQ.js +0 -9
  876. package/dist/useDockCtaReceive-BgMmeINo.js +0 -161
  877. package/dist/useDocumentVisibility-CpJGUgcJ.js +0 -17
  878. package/dist/useDragMorph-65ihHePq.js +0 -93
  879. package/dist/useGlobalDark-DjKMEQE2.js +0 -53
  880. package/dist/useGooMorph-CU1pwuC6.js +0 -268
  881. package/dist/useGpuSubstrate-DcY584kE.js +0 -347
  882. package/dist/useInterval-ZATRi-1T.js +0 -18
  883. package/dist/useKeyboardShortcuts-ynVmNFo3.js +0 -104
  884. package/dist/useLeadTrail-DOH4XkL1.js +0 -74
  885. package/dist/useLiquidPress-BXNHydZh.js +0 -40
  886. package/dist/useMotionAxis-DCCXMC-i.js +0 -20
  887. package/dist/usePointerVelocityField-CwXyeW0Z.js +0 -122
  888. package/dist/useRAFLoop-CvOo_kgb.js +0 -109
  889. package/dist/useRoutePointer-DL7I0gY4.js +0 -52
  890. package/dist/useScrollProgress-C-yImzhU.js +0 -35
  891. package/dist/useSelectionGroup-Btpf24aY.js +0 -215
  892. package/dist/useSpringMount-CNvvgGiC.js +0 -71
  893. package/dist/useSpringPress-BypV_KO-.js +0 -36
  894. package/dist/useSurfaceAxis-DudiZVOR.js +0 -10
  895. package/dist/useTabRovingFocus-CG1H1k1J.js +0 -143
  896. package/dist/useTextHighlight-C46Le9u_.js +0 -72
  897. package/dist/useViewportReady-c0isoKL8.js +0 -191
  898. package/dist/vReveal-DUmiEkX_.js +0 -10
  899. package/dist/vSpecular-DlYN0UZy.js +0 -68
  900. package/src/fonts/README.md +0 -124
  901. package/src/fonts/fira-code/OFL.txt +0 -93
  902. package/src/fonts/fira-code/fira-code-latin-ext.woff2 +0 -0
  903. package/src/fonts/fira-code/fira-code-latin.woff2 +0 -0
  904. package/src/fonts/plus-jakarta-sans/OFL.txt +0 -93
  905. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext.woff2 +0 -0
  906. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2 +0 -0
  907. package/src/styles/animations.css +0 -468
  908. package/src/styles/card-scroll.css +0 -189
  909. package/src/styles/cards.css +0 -485
  910. package/src/styles/completion-seal.css +0 -205
  911. package/src/styles/configurator.css +0 -359
  912. package/src/styles/dialog-placement.css +0 -68
  913. package/src/styles/dock/adaptive-legibility.css +0 -119
  914. package/src/styles/dock/crossfade.css +0 -139
  915. package/src/styles/dock/cta-seat.css +0 -87
  916. package/src/styles/dock/density.css +0 -458
  917. package/src/styles/dock/dock.css +0 -199
  918. package/src/styles/dock/fisheye.css +0 -81
  919. package/src/styles/dock/layer-group.css +0 -329
  920. package/src/styles/dock/layers.css +0 -438
  921. package/src/styles/dock/morph.css +0 -455
  922. package/src/styles/dock/overflow.css +0 -332
  923. package/src/styles/dock/popover.css +0 -249
  924. package/src/styles/dock/search.css +0 -68
  925. package/src/styles/dock/section.css +0 -59
  926. package/src/styles/dock/shape.css +0 -188
  927. package/src/styles/dock/shell-regions.css +0 -73
  928. package/src/styles/dock/shell.css +0 -500
  929. package/src/styles/dock-controls/dark-mode-toggle.css +0 -123
  930. package/src/styles/dock-controls/icon-button.css +0 -221
  931. package/src/styles/dock-controls/tab-button.css +0 -143
  932. package/src/styles/dock-controls/touch-floor.css +0 -119
  933. package/src/styles/dock-controls/triggers.css +0 -157
  934. package/src/styles/dock-controls.css +0 -92
  935. package/src/styles/dock.css +0 -219
  936. package/src/styles/draw-in.css +0 -89
  937. package/src/styles/drawer.css +0 -434
  938. package/src/styles/feedback-tone.css +0 -104
  939. package/src/styles/fonts.css +0 -143
  940. package/src/styles/glass/a11y-fallback.css +0 -188
  941. package/src/styles/glass/accent-tone.css +0 -66
  942. package/src/styles/glass/control-surfaces.css +0 -171
  943. package/src/styles/glass/deep.css +0 -114
  944. package/src/styles/glass/defined.css +0 -88
  945. package/src/styles/glass/glass-atom.css +0 -247
  946. package/src/styles/glass/glass-capsule.css +0 -175
  947. package/src/styles/glass/glass-chip.css +0 -211
  948. package/src/styles/glass/grain-overlay.css +0 -79
  949. package/src/styles/glass/ladder-undershadow.css +0 -61
  950. package/src/styles/glass/ladder.css +0 -452
  951. package/src/styles/glass/liquid-enter.css +0 -240
  952. package/src/styles/glass/liquid-fill.css +0 -65
  953. package/src/styles/glass/material.css +0 -494
  954. package/src/styles/glass/progress-rail.css +0 -78
  955. package/src/styles/glass/reveal.css +0 -333
  956. package/src/styles/glass/rim.css +0 -122
  957. package/src/styles/glass/squircle.css +0 -58
  958. package/src/styles/glass/surface-axis.css +0 -136
  959. package/src/styles/glass/surfaces-pager.css +0 -79
  960. package/src/styles/glass/surfaces.css +0 -434
  961. package/src/styles/glass-refract.css +0 -112
  962. package/src/styles/glass-specular-track.css +0 -74
  963. package/src/styles/glass.css +0 -110
  964. package/src/styles/icon-chip.css +0 -256
  965. package/src/styles/index.css +0 -280
  966. package/src/styles/instrument-chassis.css +0 -449
  967. package/src/styles/menu.css +0 -187
  968. package/src/styles/paper.css +0 -187
  969. package/src/styles/scroll-choreography.css +0 -294
  970. package/src/styles/scroll-chrome.css +0 -123
  971. package/src/styles/scroll-driven.css +0 -123
  972. package/src/styles/scroll-progress-rim.css +0 -87
  973. package/src/styles/segmented-tabs.css +0 -424
  974. package/src/styles/select.css +0 -201
  975. package/src/styles/tabs/segmented-tabs-drag.css +0 -200
  976. package/src/styles/theme/bridges.css +0 -386
  977. package/src/styles/theme/dark.css +0 -7
  978. package/src/styles/theme/literals.css +0 -104
  979. package/src/styles/theme/radius.css +0 -148
  980. package/src/styles/theme.css +0 -33
  981. package/src/styles/tokens/color-radius.css +0 -308
  982. package/src/styles/tokens/dark-arm-glass.css +0 -55
  983. package/src/styles/tokens/dark-arm.css +0 -455
  984. package/src/styles/tokens/glass-deep.css +0 -126
  985. package/src/styles/tokens/glass-fx.css +0 -484
  986. package/src/styles/tokens/glass.css +0 -478
  987. package/src/styles/tokens/light-dark.css +0 -216
  988. package/src/styles/tokens/motion-registers.css +0 -93
  989. package/src/styles/tokens/offsets.css +0 -143
  990. package/src/styles/tokens/on-glass-fg.css +0 -39
  991. package/src/styles/tokens/property-regs-specular.css +0 -160
  992. package/src/styles/tokens/property-regs.css +0 -447
  993. package/src/styles/tokens/scale-paper.css +0 -496
  994. package/src/styles/tokens/scheme-motion.css +0 -422
  995. package/src/styles/tokens/scheme-spring.css +0 -292
  996. package/src/styles/tokens/scroll-tokens.css +0 -137
  997. package/src/styles/tokens/shadow.css +0 -232
  998. package/src/styles/tokens/sizing-config.css +0 -110
  999. package/src/styles/tokens/sizing.css +0 -505
  1000. package/src/styles/tokens.css +0 -68
  1001. package/src/styles/transitions.css +0 -228
  1002. package/src/styles/typography/scale.css +0 -163
  1003. package/src/styles/typography/semantic.css +0 -233
  1004. package/src/styles/typography/utilities.css +0 -197
  1005. package/src/styles/typography.css +0 -46
  1006. package/src/styles/utilities/a11y-overrides.css +0 -184
  1007. package/src/styles/utilities/animate.css +0 -29
  1008. package/src/styles/utilities/base-misc.css +0 -307
  1009. package/src/styles/utilities/base.css +0 -337
  1010. package/src/styles/utilities/btn.css +0 -327
  1011. package/src/styles/utilities/components.css +0 -337
  1012. package/src/styles/utilities/metal.css +0 -272
  1013. package/src/styles/utilities.css +0 -26
  1014. package/src/styles/view-transition.css +0 -67
  1015. package/src/styles/viz-reveal.css +0 -63
  1016. /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-B3ysoDQm.js} +0 -0
  1017. /package/dist/{compile-C55K3P9g.js → compile-D7VYG3gi.js} +0 -0
  1018. /package/dist/{styles → components/_shared}/feedback-tone.css +0 -0
  1019. /package/dist/{styles/dock-controls → components/dock/styles/controls}/tab-button.css +0 -0
  1020. /package/dist/{styles/dock-controls → components/dock/styles/controls}/triggers.css +0 -0
  1021. /package/dist/{styles/dock → components/dock/styles}/cta-seat.css +0 -0
  1022. /package/dist/{styles/dock → components/dock/styles}/search.css +0 -0
  1023. /package/dist/{styles/dock → components/dock/styles}/shell-regions.css +0 -0
  1024. /package/dist/composables/glass/{webgl/shaders/procedural-color.glsl.d.ts → procedural/color.glsl.d.ts} +0 -0
  1025. /package/dist/{components/aurora/constants/shaders/procedural-color.wgsl.d.ts → composables/glass/procedural/color.wgsl.d.ts} +0 -0
  1026. /package/dist/composables/motion/{motionTempo.d.ts → core/motionTempo.d.ts} +0 -0
  1027. /package/dist/composables/motion/{useIntersectionPause.d.ts → core/useIntersectionPause.d.ts} +0 -0
  1028. /package/dist/composables/motion/{useRAFLoop.d.ts → core/useRAFLoop.d.ts} +0 -0
  1029. /package/dist/composables/motion/{useYieldToMain.d.ts → core/useYieldToMain.d.ts} +0 -0
  1030. /package/dist/composables/motion/{useAnimatedNumberMap.d.ts → number/useAnimatedNumberMap.d.ts} +0 -0
  1031. /package/dist/composables/motion/{useRoutePointer.d.ts → pointer/useRoutePointer.d.ts} +0 -0
  1032. /package/dist/composables/motion/{vReveal.d.ts → reveal/vReveal.d.ts} +0 -0
  1033. /package/dist/composables/motion/{scrollReader.d.ts → scroll/scrollReader.d.ts} +0 -0
  1034. /package/dist/composables/motion/{supportsCssTimeline.d.ts → scroll/supportsCssTimeline.d.ts} +0 -0
  1035. /package/dist/composables/motion/{useScrollPin.d.ts → scroll/useScrollPin.d.ts} +0 -0
  1036. /package/dist/composables/motion/{useScrollScene.d.ts → scroll/useScrollScene.d.ts} +0 -0
  1037. /package/dist/composables/motion/{useScrollTrigger.d.ts → scroll/useScrollTrigger.d.ts} +0 -0
  1038. /package/dist/composables/motion/{useSpringPress.d.ts → spring/useSpringPress.d.ts} +0 -0
  1039. /package/dist/{createContext-BQ1Gy_LB.js → createContext-BhkE9mLH.js} +0 -0
  1040. /package/dist/{motionTempo-CMS5b0Vu.js → motionTempo-tscp92Nm.js} +0 -0
  1041. /package/dist/{prng-B0PLRmR6.js → prng-2uS6J_A1.js} +0 -0
  1042. /package/dist/{useDragVelocity-BWcNMCux.js → useDragVelocity-6ONX0sr0.js} +0 -0
  1043. /package/dist/{useFuzzySearch-KslRxiJY.js → useFuzzySearch-CUnZknpm.js} +0 -0
  1044. /package/dist/{useResizeObserver-DDuoBeBo.js → useResizeObserver-CdUlm2QZ.js} +0 -0
  1045. /package/dist/{useResolveTokenColor-DVT5kwv6.js → useResolveTokenColor-B2FfJnd9.js} +0 -0
  1046. /package/dist/{useTimer-CkDV8SC2.js → useTimer-C3yfti4C.js} +0 -0
  1047. /package/dist/{useUserInvalidAria-Bkruei7M.js → useUserInvalidAria-0GNrddMX.js} +0 -0
  1048. /package/dist/{writeVelocityWeight-D1rvdxJu.js → writeVelocityWeight-DoGOCW3e.js} +0 -0
@@ -1 +1 @@
1
- :root { --glass-grain-opacity: 0.025; --paper-grain-opacity: 0.21; --glass-grain-engage-duration: 120ms; --glass-highlight: inset 0 0.5px 0 0 hsl(0 0% 100% / 0.25); --hairline-catch-light: inset 0 0.5px 0 0 rgb(255 255 255 / 0.06); --hairline-under-shadow: 0 0.5px 0 0 rgb(0 0 0 / 0.04); --border-hairline: var(--hairline-catch-light), var(--hairline-under-shadow); --metal-glow-blur-default: 0.5em; --metal-glow-opacity-default: 0.35; --glass-specular: inset 0 1.5px 0 0 hsl(0 0% 100% / 0.45); --glass-specular-dark: inset 0 1.5px 0 0 hsl(0 0% 100% / 0.30); --glass-edge-light: inset 0 0 0 0.75px hsl(0 0% 100% / 0.18); --glass-key-lit-x: -1px; --glass-key-lit-y: 1px; --glass-key-shade-x: 1px; --glass-key-shade-y: -1px; --glass-key-direction: 0; --glass-rim-top: inset 0 var(--glass-key-lit-y) 0 hsl(0 0% 100% / 0.30), inset var(--glass-key-lit-x) 0 0 hsl(0 0% 100% / 0.18); --glass-rim-bottom: inset 0 var(--glass-key-shade-y) 0 color-mix(in srgb, var(--foreground) 6%, transparent), inset var(--glass-key-shade-x) 0 0 color-mix(in srgb, var(--foreground) 4%, transparent); --glass-edge-light-dark: inset 0 0 0 0.75px hsl(0 0% 100% / 0.22); --glass-tint-source: var(--card); --glass-tint-strength: 0%; --glass-capsule-warm: oklch(0.88 0.1 75); --glass-capsule-warm-floor: 16%; --tab-track-recess-ink: color-mix(in srgb, var(--foreground) 7%, transparent); --glass-backdrop: dark; --glass-tint-ink: var(--foreground); --glass-tint-ink-dock: oklch(from var(--foreground) 0.42 0.05 h); --glass-backdrop-luma-knee: 0.6; --glass-tint-strength-aa: 20%; --glass-tint-strength-floor: 4%; --veil-feather-radial: radial-gradient( ellipse 100% 100% at 50% 50%, black 0%, black 70%, transparent 100% ); --glass-fringe-warm: oklch(0.92 0.06 40 / 0.22); --glass-fringe-cool: oklch(0.90 0.05 230 / 0.16); --glass-edge-dispersion: inset 0.75px 0 0 0 var(--glass-fringe-warm), inset -0.75px 0 0 0 var(--glass-fringe-cool); --glass-specular-size: 36%; --glass-curvature-intensity: 0.02; --glass-curvature-overlay: radial-gradient( ellipse at 50% -20%, hsl(40 30% 96% / var(--glass-curvature-intensity)), transparent 38% ); --glass-curvature-overlay-dark: var(--glass-curvature-overlay); --chart-ping: var(--viz-chebyshev); --chart-download: var(--viz-fourier); --chart-upload: var(--viz-amber); --chart-jitter: var(--viz-legendre); --chart-ping-label: oklch(0.40 0.18 230); --chart-download-label: oklch(0.40 0.20 22); --chart-upload-label: oklch(0.40 0.16 55); --chart-jitter-label: oklch(0.40 0.20 305); --meter-track-stroke: var(--foreground); --glass-shadow-wash: var(--shadow-sm), var(--glass-highlight); --glass-shadow-quiet: var(--shadow-md), var(--glass-highlight); --glass-shadow-resting: var(--shadow-lg), var(--glass-highlight); --glass-shadow-floating: var(--shadow-xl), 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 5%, transparent), var(--glass-highlight); --glass-shadow-overlay: var(--shadow-2xl), 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 8%, transparent), var(--glass-highlight); --glass-shadow: var(--glass-shadow-quiet); --glass-spine-opacity: 0; --glass-spine-blur: 0px; --glass-spine-border: var(--surface-tint-8); --glass-spine-vignette: radial-gradient( ellipse at 50% 0%, color-mix(in oklab, var(--phase-color, var(--surface-tint-8)) 8%, transparent), transparent 60% ); --glass-under-shadow-quiet: calc(2px * var(--glass-key-direction)) 2px 8px -1px oklch(0 0 0 / 0.04); --glass-under-shadow-default: calc(4px * var(--glass-key-direction)) 4px 16px -2px oklch(0 0 0 / 0.08); --glass-under-shadow-vivid: calc(8px * var(--glass-key-direction)) 8px 32px -4px oklch(0 0 0 / 0.12); --glass-under-shadow-spine: 0 1px 0 0 oklch(0 0 0 / 0.06); --overlay-scrim-ink: hsl(24 10% 10%); --overlay-scrim: color-mix(in srgb, var(--overlay-scrim-ink) 50%, transparent); --overlay-scrim-strong: color-mix(in srgb, var(--overlay-scrim-ink) 80%, transparent); --overlay-scrim-subtle: color-mix(in srgb, var(--overlay-scrim-ink) 40%, transparent); }
1
+ :root { --glass-grain-opacity: 0.025; --paper-grain-opacity: 0.21; --glass-grain-engage-duration: 120ms; --glass-highlight: inset 0 0.5px 0 0 hsl(0 0% 100% / 0.25); --hairline-catch-light: inset 0 0.5px 0 0 rgb(255 255 255 / 0.06); --hairline-under-shadow: 0 0.5px 0 0 rgb(0 0 0 / 0.04); --border-hairline: var(--hairline-catch-light), var(--hairline-under-shadow); --metal-glow-blur-default: 0.5em; --metal-glow-opacity-default: 0.35; --glass-specular: inset 0 1.5px 0 0 hsl(0 0% 100% / 0.45); --glass-specular-dark: inset 0 1.5px 0 0 hsl(0 0% 100% / 0.30); --glass-edge-light: inset 0 0 0 0.75px hsl(0 0% 100% / 0.18); --glass-key-lit-x: -1px; --glass-key-lit-y: 1px; --glass-key-shade-x: 1px; --glass-key-shade-y: -1px; --glass-key-direction: 0; --glass-rim-top: inset 0 var(--glass-key-lit-y) 0 hsl(0 0% 100% / 0.30), inset var(--glass-key-lit-x) 0 0 hsl(0 0% 100% / 0.18); --glass-rim-bottom: inset 0 var(--glass-key-shade-y) 0 color-mix(in srgb, var(--foreground) 6%, transparent), inset var(--glass-key-shade-x) 0 0 color-mix(in srgb, var(--foreground) 4%, transparent); --glass-edge-light-dark: inset 0 0 0 0.75px hsl(0 0% 100% / 0.22); --glass-tint-source: var(--card); --glass-tint-strength: 0%; --glass-capsule-warm: oklch(0.88 0.1 75); --glass-capsule-warm-floor: 16%; --tab-track-recess-ink: color-mix(in srgb, var(--foreground) 7%, transparent); --glass-backdrop: dark; --glass-tint-ink: var(--foreground); --glass-tint-ink-dock: oklch(from var(--foreground) 0.42 0.05 h); --glass-backdrop-luma-knee: 0.6; --glass-tint-strength-aa: 20%; --glass-tint-strength-floor: 4%; --glass-fringe-warm: oklch(0.92 0.06 40 / 0.22); --glass-fringe-cool: oklch(0.90 0.05 230 / 0.16); --glass-edge-dispersion: inset 0.75px 0 0 0 var(--glass-fringe-warm), inset -0.75px 0 0 0 var(--glass-fringe-cool); --glass-specular-size: 36%; --glass-curvature-intensity: 0.02; --glass-curvature-overlay: radial-gradient( ellipse at 50% -20%, hsl(40 30% 96% / var(--glass-curvature-intensity)), transparent 38% ); --chart-ping: var(--viz-chebyshev); --chart-download: var(--viz-fourier); --chart-upload: var(--viz-amber); --chart-jitter: var(--viz-legendre); --glass-shadow-wash: var(--shadow-sm), var(--glass-highlight); --glass-shadow-quiet: var(--shadow-md), var(--glass-highlight); --glass-shadow-resting: var(--shadow-lg), var(--glass-highlight); --glass-shadow-floating: var(--shadow-xl), 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 5%, transparent), var(--glass-highlight); --glass-shadow-overlay: var(--shadow-2xl), 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 8%, transparent), var(--glass-highlight); --glass-under-shadow-quiet: calc(2px * var(--glass-key-direction)) 2px 8px -1px oklch(0 0 0 / 0.04); --glass-under-shadow-default: calc(4px * var(--glass-key-direction)) 4px 16px -2px oklch(0 0 0 / 0.08); --glass-under-shadow-vivid: calc(8px * var(--glass-key-direction)) 8px 32px -4px oklch(0 0 0 / 0.12); --overlay-scrim-ink: hsl(24 10% 10%); --overlay-scrim: color-mix(in srgb, var(--overlay-scrim-ink) 50%, transparent); --overlay-scrim-strong: color-mix(in srgb, var(--overlay-scrim-ink) 80%, transparent); --overlay-scrim-subtle: color-mix(in srgb, var(--overlay-scrim-ink) 40%, transparent); }
@@ -1 +1 @@
1
- :root { --glass-opacity-wash: 0.30; --glass-opacity-quiet: 0.50; --glass-opacity-resting: 0.65; --glass-opacity-floating: 0.80; --glass-opacity-overlay: 0.95; --glass-blur-wash-radius: 1px; --glass-blur-quiet-radius: 8px; --glass-blur-resting-radius: 8px; --glass-blur-floating-radius: 13px; --glass-blur-overlay-radius: 13px; --glass-saturate-wash: 1.4; --glass-saturate-quiet: 1.4; --glass-saturate-resting: 1.4; --glass-saturate-floating: 1.6; --glass-saturate-overlay: 1.6; --glass-blur-wash: blur(calc(var(--glass-blur-wash-radius) * var(--glass-level))) saturate(var(--glass-saturate-wash)); --glass-blur-quiet: blur(calc(var(--glass-blur-quiet-radius) * var(--glass-level))) saturate(var(--glass-saturate-quiet)) brightness(1.02); --glass-blur-resting: blur(calc(var(--glass-blur-resting-radius) * var(--glass-level))) saturate(var(--glass-saturate-resting)); --glass-blur-floating: blur(calc(var(--glass-blur-floating-radius) * var(--glass-level))) saturate(var(--glass-saturate-floating)); --glass-blur-overlay: blur(calc(var(--glass-blur-overlay-radius) * var(--glass-level))) saturate(var(--glass-saturate-overlay)); --glass-blur-btn-radius: 6px; --glass-blur-btn: blur(calc(var(--glass-blur-btn-radius) * var(--glass-level))) saturate(var(--glass-saturate-resting)); --glass-opacity-dock: 0.50; --glass-opacity-dialog: 0.68; --glass-opacity-sheet: 0.74; --dock-fg-on-aurora: var(--foreground); --glass-opacity-chassis: 0.28; --glass-bg-wash: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-wash)) * var(--glass-level)) * 100%), transparent); --glass-bg-quiet: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-quiet)) * var(--glass-level)) * 100%), transparent); --glass-bg-resting: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-resting)) * var(--glass-level)) * 100%), transparent); --glass-bg-floating: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-floating)) * var(--glass-level)) * 100%), transparent); --glass-bg-overlay: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-overlay)) * var(--glass-level)) * 100%), transparent); --glass-bg-dock: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-dock)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-bg-chassis: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-chassis)) * var(--glass-level)) * 100%), transparent); --glass-bg-dialog: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-dialog)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-bg-sheet: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-sheet)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-well-tone: 8%; --glass-bg-well: color-mix(in oklab, var(--card), var(--foreground) var(--glass-well-tone)); --glass-fill-tinted: color-mix( in oklab, var(--glass-fill-tint, oklch(0.9 0.05 75 / 0)) var(--glass-fill-strength, 0%), oklch(0.9 0.05 75 / 0) ); --glass-border-wash: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-quiet: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-resting: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-floating: color-mix(in srgb, var(--foreground) 5%, transparent); --glass-border-overlay: color-mix(in srgb, var(--foreground) 5%, transparent); --glass-border-dock: color-mix(in srgb, var(--foreground) 8%, transparent); --glass-border: var(--glass-border-quiet); --glass-floor-fill-max: 15%; --glass-floor-fill: color-mix(in srgb, var(--card) calc(var(--glass-definition) * var(--glass-floor-fill-max)), transparent); --glass-border-defined: color-mix(in srgb, var(--foreground) calc(var(--glass-definition) * 14%), transparent); --control-surface-bg: var(--glass-bg-quiet); --control-surface-border: var(--glass-border-floating); --control-surface-blur: var(--glass-blur-quiet); --control-surface-bg-hover: color-mix(in oklab, var(--glass-bg-quiet), var(--glass-bg-resting) 35%); } @property --glass-ambient-hue { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-ambient-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; } @property --glass-fill-tint { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-fill-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; }
1
+ :root { --glass-opacity-wash: 0.30; --glass-opacity-quiet: 0.50; --glass-opacity-resting: 0.65; --glass-opacity-floating: 0.80; --glass-opacity-overlay: 0.95; --glass-blur-wash-radius: 1px; --glass-blur-quiet-radius: 7px; --glass-blur-resting-radius: 7px; --glass-blur-floating-radius: 11px; --glass-blur-overlay-radius: 11px; --glass-saturate-wash: 1.4; --glass-saturate-quiet: 1.4; --glass-saturate-resting: 1.4; --glass-saturate-floating: 1.6; --glass-saturate-overlay: 1.6; --glass-blur-wash: blur(calc(var(--glass-blur-wash-radius) * var(--glass-level))) saturate(var(--glass-saturate-wash)); --glass-blur-quiet: blur(calc(var(--glass-blur-quiet-radius) * var(--glass-level))) saturate(var(--glass-saturate-quiet)) brightness(1.02); --glass-blur-resting: blur(calc(var(--glass-blur-resting-radius) * var(--glass-level))) saturate(var(--glass-saturate-resting)); --glass-blur-floating: blur(calc(var(--glass-blur-floating-radius) * var(--glass-level))) saturate(var(--glass-saturate-floating)); --glass-blur-overlay: blur(calc(var(--glass-blur-overlay-radius) * var(--glass-level))) saturate(var(--glass-saturate-overlay)); --glass-halo-blur: 20px; --glass-halo-core: 13rem; --glass-halo-bloom: 7rem; --glass-opacity-dock: 0.50; --glass-opacity-dialog: 0.68; --glass-opacity-sheet: 0.74; --dock-fg-on-aurora: var(--foreground); --glass-opacity-chassis: 0.28; --glass-bg-wash: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-wash)) * var(--glass-level)) * 100%), transparent); --glass-bg-quiet: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-quiet)) * var(--glass-level)) * 100%), transparent); --glass-bg-resting: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-resting)) * var(--glass-level)) * 100%), transparent); --glass-bg-floating: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-floating)) * var(--glass-level)) * 100%), transparent); --glass-bg-overlay: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-overlay)) * var(--glass-level)) * 100%), transparent); --glass-bg-dock: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-dock)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-bg-chassis: color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-chassis)) * var(--glass-level)) * 100%), transparent); --glass-bg-dialog: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-dialog)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-bg-sheet: color-mix(in oklab, color-mix(in srgb, var(--card) calc((1 - (1 - var(--glass-opacity-sheet)) * var(--glass-level)) * 100%), transparent), var(--glass-tint-source) var(--glass-tint-strength)); --glass-well-tone: 8%; --glass-fill-tinted: color-mix( in oklab, var(--glass-fill-tint, oklch(0.9 0.05 75 / 0)) var(--glass-fill-strength, 0%), oklch(0.9 0.05 75 / 0) ); --glass-border-wash: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-quiet: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-resting: color-mix(in srgb, var(--foreground) 4%, transparent); --glass-border-floating: color-mix(in srgb, var(--foreground) 5%, transparent); --glass-border-overlay: color-mix(in srgb, var(--foreground) 5%, transparent); --glass-border-dock: color-mix(in srgb, var(--foreground) 8%, transparent); --glass-border: var(--glass-border-quiet); --glass-floor-fill-max: 15%; --glass-floor-fill: color-mix(in srgb, var(--card) calc(var(--glass-definition) * var(--glass-floor-fill-max)), transparent); --glass-border-defined: color-mix(in srgb, var(--foreground) calc(var(--glass-definition) * 14%), transparent); --control-surface-bg: var(--glass-bg-quiet); --control-surface-border: var(--glass-border-floating); --control-surface-blur: var(--glass-blur-quiet); --control-surface-bg-hover: color-mix(in oklab, var(--glass-bg-quiet), var(--glass-bg-resting) 35%); } @property --glass-ambient-hue { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-ambient-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; } @property --glass-fill-tint { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-fill-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; }
@@ -1 +1 @@
1
- @media (pointer: coarse) { :root { --ui-scale: var(--ui-coarse-scale, 1.5); --control-floor: var(--touch-target, 2.75rem); } } @media (min-resolution: 2dppx) { :root { --glass-blur-overlay-radius: 20px; } } @supports (color: light-dark(white, black)) { :root { --neutral-0: light-dark(hsl(40 30% 98%), hsl(24 9% 4%)); --neutral-1: light-dark(hsl(38 26% 95%), hsl(28 12% 11%)); --neutral-2: light-dark(hsl(34 28% 90%), hsl(28 14% 16%)); --neutral-3: light-dark(hsl(33 30% 82%), hsl(30 18% 22%)); --neutral-4: light-dark(hsl(32 26% 70%), hsl(30 16% 34%)); --neutral-5: light-dark(hsl(30 22% 40%), hsl(34 14% 62%)); --neutral-6: light-dark(hsl(28 24% 30%), hsl(36 14% 72%)); --foreground: light-dark(hsl(24 10% 10%), hsl(30 14% 90%)); --card: light-dark(hsl(30 85% 96%), hsl(26 22% 17%)); --popover: light-dark(hsl(30 85% 96%), hsl(26 22% 17%)); --surface-public-data-panel: light-dark(hsl(44 16% 96%), hsl(36 9% 18%)); --primary: light-dark(hsl(24 10% 10%), oklch(0.739 0.134 318.1)); --primary-foreground: light-dark(var(--neutral-0), hsl(24 10% 10%)); --destructive: light-dark(hsl(0 72% 50%), hsl(0 80% 60%)); --destructive-foreground: light-dark(var(--neutral-0), hsl(48 10% 90%)); --focus-ring-color: light-dark(hsl(24 10% 10%), hsl(48 10% 70%)); --shadow: light-dark(hsl(24 10% 10%), hsl(0 0% 5%)); --accent-color: light-dark(var(--primary), var(--focus-ring-color)); --section-color-0: light-dark(oklch(0.552 0.192 359.8), oklch(0.721 0.145 354.0)); --section-color-1: light-dark(oklch(0.502 0.165 305.9), oklch(0.733 0.113 308.2)); --section-color-2: light-dark(oklch(0.484 0.163 265.5), oklch(0.718 0.107 268.4)); --section-color-3: light-dark(oklch(0.542 0.089 222.8), oklch(0.767 0.091 219.9)); --section-color-4: light-dark(oklch(0.551 0.088 171.1), oklch(0.776 0.105 172.6)); --section-color-5: light-dark(oklch(0.530 0.124 69.6), oklch(0.813 0.109 78.2)); --section-color-6: light-dark(oklch(0.579 0.201 30.4), oklch(0.693 0.151 28.1)); --section-color-7: light-dark(oklch(0.532 0.180 317.5), oklch(0.739 0.134 318.1)); --section-color-8: light-dark(oklch(0.520 0.176 8.4), oklch(0.709 0.142 2.3)); --section-color-9: light-dark(oklch(0.492 0.038 239.6), oklch(0.763 0.032 239.0)); --section-color-10: light-dark(oklch(0.556 0.103 128.8), oklch(0.794 0.116 127.9)); --section-color-11: light-dark(oklch(0.601 0.092 208.0), oklch(0.805 0.095 206.7)); --section-color-12: light-dark(oklch(0.513 0.163 291.9), oklch(0.719 0.115 295.6)); --accent-pink: light-dark(oklch(0.613 0.197 353.8), oklch(0.683 0.131 354.7)); --section-heading: light-dark(oklch(0.545 0.189 352.8), oklch(0.711 0.123 349.3)); --accent-red: light-dark(oklch(0.574 0.216 27.5), oklch(0.644 0.165 22.9)); --viz-fourier: light-dark(oklch(0.579 0.201 30.4), oklch(0.693 0.151 28.1)); --viz-chebyshev: light-dark(oklch(0.484 0.163 265.5), oklch(0.718 0.107 268.4)); --viz-legendre: light-dark(oklch(0.532 0.180 317.5), oklch(0.739 0.134 318.1)); --chart-ping-label: light-dark(oklch(0.40 0.18 230), oklch(0.85 0.12 230)); --chart-download-label: light-dark(oklch(0.40 0.20 22), oklch(0.85 0.14 22)); --chart-upload-label: light-dark(oklch(0.40 0.16 55), oklch(0.85 0.12 55)); --chart-jitter-label: light-dark(oklch(0.40 0.20 305), oklch(0.85 0.14 305)); --tier-featured: light-dark(oklch(0.841 0.173 84.2), oklch(0.867 0.165 88.7)); --tier-saved: light-dark(oklch(0.676 0.176 252.3), oklch(0.748 0.135 250.1)); --like: light-dark(oklch(0.633 0.200 24.9), oklch(0.690 0.162 22.2)); --success: light-dark(oklch(0.720 0.192 149.5), oklch(0.805 0.186 151.6)); --warning: light-dark(oklch(0.770 0.165 70.6), oklch(0.809 0.150 76.6)); --info: light-dark(oklch(0.626 0.186 259.6), oklch(0.713 0.138 259.5)); --delete: light-dark(oklch(0.597 0.198 25.5), oklch(0.644 0.170 23.1)); --success-foreground: light-dark(var(--neutral-0), hsl(48 10% 96%)); --info-foreground: light-dark(var(--neutral-0), hsl(48 10% 96%)); --shadow-cartoon-color: light-dark(rgb(0 0 0 / 0.12), rgb(255 255 255 / 0.07)); --shadow-cartoon-color-soft: light-dark(rgb(0 0 0 / 0.06), rgb(255 255 255 / 0.03)); --gold: light-dark(oklch(0.751 0.147 84.2), oklch(0.784 0.143 86.0)); --gold-light: light-dark(oklch(0.890 0.183 96.1), oklch(0.898 0.182 97.4)); --gold-dark: light-dark(oklch(0.599 0.132 64.2), oklch(0.678 0.150 63.8)); --silver: light-dark(oklch(0.760 0.012 255), oklch(0.792 0.012 255)); --silver-light: light-dark(oklch(0.902 0.010 255), oklch(0.912 0.010 255)); --silver-dark: light-dark(oklch(0.582 0.014 255), oklch(0.648 0.014 255)); --bronze: light-dark(oklch(0.620 0.092 54.0), oklch(0.650 0.090 54.0)); --bronze-light: light-dark(oklch(0.760 0.112 60.0), oklch(0.790 0.110 60.0)); --bronze-dark: light-dark(oklch(0.500 0.082 50.0), oklch(0.560 0.085 50.0)); } }
1
+ @media (pointer: coarse) { :root { --ui-scale: var(--ui-coarse-scale, 1.5); --control-floor: var(--touch-target, 2.75rem); } } @media (min-resolution: 2dppx) { :root { --glass-blur-overlay-radius: 17px; } } @supports (color: light-dark(white, black)) { :root { --neutral-0: light-dark(hsl(40 30% 98%), hsl(24 9% 4%)); --neutral-1: light-dark(hsl(38 26% 95%), hsl(28 12% 11%)); --neutral-2: light-dark(hsl(34 28% 90%), hsl(28 14% 16%)); --neutral-3: light-dark(hsl(33 30% 82%), hsl(30 18% 22%)); --neutral-4: light-dark(hsl(32 26% 70%), hsl(30 16% 34%)); --neutral-5: light-dark(hsl(30 22% 40%), hsl(34 14% 62%)); --neutral-6: light-dark(hsl(28 24% 30%), hsl(36 14% 72%)); --foreground: light-dark(hsl(24 10% 10%), hsl(30 14% 90%)); --card: light-dark(hsl(30 85% 96%), hsl(26 22% 17%)); --popover: light-dark(hsl(30 85% 96%), hsl(26 22% 17%)); --surface-public-data-panel: light-dark(hsl(44 16% 96%), hsl(36 9% 18%)); --primary: light-dark(hsl(24 10% 10%), oklch(0.739 0.134 318.1)); --primary-foreground: light-dark(var(--neutral-0), hsl(24 10% 10%)); --destructive: light-dark(hsl(0 72% 50%), hsl(0 80% 60%)); --destructive-foreground: light-dark(var(--neutral-0), hsl(48 10% 90%)); --focus-ring-color: light-dark(hsl(24 10% 10%), hsl(48 10% 70%)); --shadow: light-dark(hsl(24 10% 10%), hsl(0 0% 5%)); --accent-color: light-dark(var(--primary), var(--focus-ring-color)); --section-color-0: light-dark(oklch(0.552 0.192 359.8), oklch(0.721 0.145 354.0)); --section-color-1: light-dark(oklch(0.502 0.165 305.9), oklch(0.733 0.113 308.2)); --section-color-2: light-dark(oklch(0.484 0.163 265.5), oklch(0.718 0.107 268.4)); --section-color-3: light-dark(oklch(0.542 0.089 222.8), oklch(0.767 0.091 219.9)); --section-color-4: light-dark(oklch(0.551 0.088 171.1), oklch(0.776 0.105 172.6)); --section-color-5: light-dark(oklch(0.530 0.124 69.6), oklch(0.813 0.109 78.2)); --section-color-6: light-dark(oklch(0.579 0.201 30.4), oklch(0.693 0.151 28.1)); --section-color-7: light-dark(oklch(0.532 0.180 317.5), oklch(0.739 0.134 318.1)); --section-color-8: light-dark(oklch(0.520 0.176 8.4), oklch(0.709 0.142 2.3)); --section-color-9: light-dark(oklch(0.492 0.038 239.6), oklch(0.763 0.032 239.0)); --section-color-10: light-dark(oklch(0.556 0.103 128.8), oklch(0.794 0.116 127.9)); --section-color-11: light-dark(oklch(0.601 0.092 208.0), oklch(0.805 0.095 206.7)); --section-color-12: light-dark(oklch(0.513 0.163 291.9), oklch(0.719 0.115 295.6)); --accent-pink: light-dark(oklch(0.613 0.197 353.8), oklch(0.683 0.131 354.7)); --section-heading: light-dark(oklch(0.545 0.189 352.8), oklch(0.711 0.123 349.3)); --accent-red: light-dark(oklch(0.574 0.216 27.5), oklch(0.644 0.165 22.9)); --viz-fourier: light-dark(oklch(0.579 0.201 30.4), oklch(0.693 0.151 28.1)); --viz-chebyshev: light-dark(oklch(0.484 0.163 265.5), oklch(0.718 0.107 268.4)); --viz-legendre: light-dark(oklch(0.532 0.180 317.5), oklch(0.739 0.134 318.1)); --tier-featured: light-dark(oklch(0.841 0.173 84.2), oklch(0.867 0.165 88.7)); --tier-saved: light-dark(oklch(0.676 0.176 252.3), oklch(0.748 0.135 250.1)); --like: light-dark(oklch(0.633 0.200 24.9), oklch(0.690 0.162 22.2)); --success: light-dark(oklch(0.720 0.192 149.5), oklch(0.805 0.186 151.6)); --warning: light-dark(oklch(0.770 0.165 70.6), oklch(0.809 0.150 76.6)); --info: light-dark(oklch(0.626 0.186 259.6), oklch(0.713 0.138 259.5)); --delete: light-dark(oklch(0.597 0.198 25.5), oklch(0.644 0.170 23.1)); --success-foreground: light-dark(var(--neutral-0), hsl(48 10% 96%)); --info-foreground: light-dark(var(--neutral-0), hsl(48 10% 96%)); --gold: light-dark(oklch(0.751 0.147 84.2), oklch(0.784 0.143 86.0)); --gold-light: light-dark(oklch(0.890 0.183 96.1), oklch(0.898 0.182 97.4)); --gold-dark: light-dark(oklch(0.599 0.132 64.2), oklch(0.678 0.150 63.8)); --silver: light-dark(oklch(0.760 0.012 255), oklch(0.792 0.012 255)); --silver-light: light-dark(oklch(0.902 0.010 255), oklch(0.912 0.010 255)); --silver-dark: light-dark(oklch(0.582 0.014 255), oklch(0.648 0.014 255)); --bronze: light-dark(oklch(0.620 0.092 54.0), oklch(0.650 0.090 54.0)); --bronze-light: light-dark(oklch(0.760 0.112 60.0), oklch(0.790 0.110 60.0)); --bronze-dark: light-dark(oklch(0.500 0.082 50.0), oklch(0.560 0.085 50.0)); } }
@@ -0,0 +1,14 @@
1
+ /** Public semantic override points, grouped by design responsibility. */
2
+ export declare const tokenDomains: readonly ["color", "material", "type", "space", "radius", "shadow", "motion", "interaction"];
3
+ export type TokenDomain = (typeof tokenDomains)[number];
4
+ export declare const semanticTokens: {
5
+ readonly color: readonly ["--background", "--foreground", "--primary", "--secondary", "--muted", "--accent", "--destructive", "--border"];
6
+ readonly material: readonly ["--glass-level", "--glass-depth", "--glass-accent", "--glass-accent-strength", "--glass-opacity-quiet", "--glass-opacity-resting", "--glass-opacity-floating", "--glass-opacity-overlay"];
7
+ readonly type: readonly ["--font-stack-text", "--font-stack-display", "--font-stack-mono", "--type-body", "--type-subheading", "--type-heading", "--type-title", "--type-display-1"];
8
+ readonly space: readonly ["--ui-scale", "--control-h-sm", "--control-h-md", "--control-h-lg", "--overlay-pad-inline", "--overlay-pad-block", "--card-pad-inline", "--card-pad-block"];
9
+ readonly radius: readonly ["--radius", "--radius-sm", "--radius-xl", "--radius-2xl", "--radius-pill", "--radius-card", "--radius-input", "--radius-button"];
10
+ readonly shadow: readonly ["--shadow-sm", "--shadow-md", "--shadow-lg", "--shadow-xl", "--shadow-card", "--shadow-dock", "--shadow-modal", "--focus-ring-shadow"];
11
+ readonly motion: readonly ["--duration-fast", "--duration-normal", "--duration-slow", "--spring-smooth", "--spring-snappy", "--spring-bouncy", "--ease-standard", "--ease-out"];
12
+ readonly interaction: readonly ["--touch-target", "--focus-ring-width", "--focus-ring-color", "--opacity-disabled", "--scale-hover", "--scale-press", "--glass-specular-intensity-rest", "--glass-specular-intensity-hover", "--glass-specular-intensity-active"];
13
+ };
14
+ export type SemanticToken = (typeof semanticTokens)[TokenDomain][number];
@@ -0,0 +1,56 @@
1
+ /** Public semantic override points, grouped by design responsibility. */
2
+ export const tokenDomains = [
3
+ "color",
4
+ "material",
5
+ "type",
6
+ "space",
7
+ "radius",
8
+ "shadow",
9
+ "motion",
10
+ "interaction",
11
+ ] as const;
12
+
13
+ export type TokenDomain = (typeof tokenDomains)[number];
14
+
15
+ export const semanticTokens = {
16
+ color: [
17
+ "--background", "--foreground", "--primary", "--secondary",
18
+ "--muted", "--accent", "--destructive", "--border",
19
+ ],
20
+ material: [
21
+ "--glass-level", "--glass-depth", "--glass-accent", "--glass-accent-strength",
22
+ "--glass-opacity-quiet", "--glass-opacity-resting",
23
+ "--glass-opacity-floating", "--glass-opacity-overlay",
24
+ ],
25
+ type: [
26
+ "--font-stack-text", "--font-stack-display", "--font-stack-mono",
27
+ "--type-body", "--type-subheading", "--type-heading", "--type-title",
28
+ "--type-display-1",
29
+ ],
30
+ space: [
31
+ "--ui-scale", "--control-h-sm", "--control-h-md", "--control-h-lg",
32
+ "--overlay-pad-inline", "--overlay-pad-block", "--card-pad-inline",
33
+ "--card-pad-block",
34
+ ],
35
+ radius: [
36
+ "--radius", "--radius-sm", "--radius-xl", "--radius-2xl",
37
+ "--radius-pill", "--radius-card", "--radius-input", "--radius-button",
38
+ ],
39
+ shadow: [
40
+ "--shadow-sm", "--shadow-md", "--shadow-lg", "--shadow-xl",
41
+ "--shadow-card", "--shadow-dock", "--shadow-modal", "--focus-ring-shadow",
42
+ ],
43
+ motion: [
44
+ "--duration-fast", "--duration-normal", "--duration-slow",
45
+ "--spring-smooth", "--spring-snappy", "--spring-bouncy",
46
+ "--ease-standard", "--ease-out",
47
+ ],
48
+ interaction: [
49
+ "--touch-target", "--focus-ring-width", "--focus-ring-color",
50
+ "--opacity-disabled", "--scale-hover", "--scale-press",
51
+ "--glass-specular-intensity-rest", "--glass-specular-intensity-hover",
52
+ "--glass-specular-intensity-active",
53
+ ],
54
+ } as const satisfies Record<TokenDomain, readonly `--${string}`[]>;
55
+
56
+ export type SemanticToken = (typeof semanticTokens)[TokenDomain][number];
@@ -1 +1 @@
1
- :root { --enter-overlay-spring: var(--spring-snappy); --enter-overlay-clock: var(--spring-snappy-duration); --enter-overlay-scale: 0.88; --enter-overlay-blur: 6px; --enter-overlay-slide: 0.5rem; --enter-menu-spring: var(--spring-smooth); --enter-menu-clock: var(--spring-smooth-duration); --enter-menu-scale: 0.96; --enter-menu-blur: 2px; --enter-menu-slide: 0.5rem; --enter-tooltip-spring: var(--ease-out-expo); --enter-tooltip-clock: var(--duration-fast); --enter-tooltip-scale: 0.97; --enter-tooltip-blur: 0px; --enter-tooltip-slide: 0px; --enter-transient-spring: var(--spring-transient); --enter-transient-clock: var(--spring-transient-duration); --enter-transient-scale: 0.5; --enter-transient-blur: 8px; --enter-transient-slide: 0px; --exit-overlay-duration: 0.15s; --exit-transient-duration: 0.1s; --exit-curve: var(--ease-out); }
1
+ :root { --enter-overlay-spring: var(--spring-snappy); --enter-overlay-clock: var(--spring-snappy-duration); --enter-overlay-scale: 0.94; --enter-overlay-blur: 6px; --enter-overlay-slide: 0.5rem; --enter-menu-spring: var(--spring-smooth); --enter-menu-clock: var(--spring-smooth-duration); --enter-menu-scale: 0.96; --enter-menu-blur: 2px; --enter-menu-slide: 0.5rem; --enter-tooltip-spring: var(--ease-out-expo); --enter-tooltip-clock: var(--duration-fast); --enter-tooltip-scale: 0.97; --enter-tooltip-blur: 0px; --enter-tooltip-slide: 0px; --enter-transient-spring: var(--spring-transient); --enter-transient-clock: var(--spring-transient-duration); --enter-transient-scale: 0.5; --enter-transient-blur: 8px; --enter-transient-slide: 0px; --exit-overlay-duration: 0.15s; --exit-transient-duration: 0.1s; --exit-curve: var(--ease-out); }
@@ -1 +1 @@
1
- :root { --lift-sm: -1px; --lift-md: -2px; --lift-lg: -4px; --fade-scroll-width: 1rem; --dock-max-inline-size: min(80vw, 64rem); --dock-max-block-size: min(80vh, 48rem); --chassis-max-block-size: calc( 100dvh - var(--dock-footer-space, 5.75rem) - var(--page-padding-top, 0rem) - 1rem ); --instrument-dial-min-height-mobile: 24rem; --instrument-dial-meter-reserve-mobile: minmax(0, 1fr); --instrument-dial-min-block-size-desktop: var(--chassis-max-block-size); --max-width-input: 24rem; --input-min-width-sm: 5rem; --min-width-input-sm: var(--input-min-width-sm); --popover-width: 200px; --panel-padding: 0.375rem; --overlay-min-width: 8rem; --overlay-max-block: 60vh; --tooltip-text: var(--type-caption); --select-chevron-opacity: 0.5; --chart-height-compact: 15rem; --chart-height-default: 22.5rem; --chart-height-large: 25rem; --chart-margin: 1.25rem; --paper-texture-size: 200px 200px; }
1
+ :root { --lift-sm: -1px; --lift-md: -2px; --lift-lg: -4px; --fade-scroll-width: 1rem; --dock-max-inline-size: min(80vw, 64rem); --dock-max-block-size: min(80vh, 48rem); --max-width-input: 24rem; --input-min-width-sm: 5rem; --popover-width: 200px; --panel-padding: 0.375rem; --overlay-min-width: 8rem; --overlay-max-block: 60vh; --tooltip-text: var(--type-caption); --select-chevron-opacity: 0.5; --chart-height-compact: 15rem; --chart-height-default: 22.5rem; --chart-height-large: 25rem; --chart-margin: 1.25rem; --paper-texture-size: 200px 200px; }
@@ -1 +1 @@
1
- :root { --glass-specular-intensity-rest: 0; --glass-specular-intensity-hover: 0.1; --glass-specular-intensity-active: 0.16; --glass-specular-btn-hover: 0.14; } .dark { --glass-specular-intensity-hover: 0.08; --glass-specular-intensity-active: 0.12; --glass-specular-btn-hover: 0.11; } @property --glass-btn-press-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --seal-draw { syntax: "<percentage>"; inherits: false; initial-value: 100%; } @property --seal-scale { syntax: "<number>"; inherits: false; initial-value: 1; } @property --seal-glint { syntax: "<number>"; inherits: false; initial-value: 0; } @property --seal-ink { syntax: "<color>"; inherits: true; initial-value: oklch(0.751 0.147 84.2); } @property --scroll-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --chrome-collapse-t { syntax: "<number>"; inherits: true; initial-value: 0; }
1
+ :root { --glass-specular-intensity-rest: 0; --glass-specular-intensity-hover: 0.1; --glass-specular-intensity-active: 0.16; --glass-specular-btn-hover: 0.14; } .dark { --glass-specular-intensity-hover: 0.08; --glass-specular-intensity-active: 0.12; --glass-specular-btn-hover: 0.11; } @property --glass-btn-press-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --seal-draw { syntax: "<percentage>"; inherits: false; initial-value: 100%; } @property --seal-scale { syntax: "<number>"; inherits: false; initial-value: 1; } @property --seal-glint { syntax: "<number>"; inherits: false; initial-value: 0; } @property --seal-ink { syntax: "<color>"; inherits: true; initial-value: oklch(0.751 0.147 84.2); } @property --chrome-collapse-t { syntax: "<number>"; inherits: true; initial-value: 0; }
@@ -1 +1 @@
1
- @property --progress-crescendo { syntax: "<percentage>"; inherits: false; initial-value: 0%; } @property --scroll-progress-rim-fill { syntax: "<percentage>"; inherits: false; initial-value: 0%; } @property --goo-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --tab-blob { syntax: "<number>"; inherits: false; initial-value: 1; } @property --tab-flood-t { syntax: "<number>"; inherits: false; initial-value: 0; } @property --eyeglass-live-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --phase-tint-amount { syntax: "<percentage>"; inherits: true; initial-value: 0%; } @property --specular-x { syntax: "<percentage>"; inherits: false; initial-value: 50%; } @property --specular-y { syntax: "<percentage>"; inherits: false; initial-value: 50%; } @property --specular-intensity { syntax: "<number>"; inherits: false; initial-value: 0; } @property --specular-angle { syntax: "<angle>"; inherits: false; initial-value: 0deg; } @property --flex-vel { syntax: "<number>"; inherits: false; initial-value: 0; } @property --cartoon-press-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --cast-travel { syntax: "<length>"; inherits: false; initial-value: 0px; } @property --cast-spread { syntax: "<number>"; inherits: false; initial-value: 1; } @property --cartoon-cast-dx { syntax: "<length>"; inherits: true; initial-value: 0px; } @property --cartoon-cast-dy { syntax: "<length>"; inherits: true; initial-value: 0px; } @property --glass-accent { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-accent-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; } @property --pulse-aura-breath-scale { syntax: "<number>"; inherits: true; initial-value: 1; } @property --glass-level { syntax: "<number>"; inherits: true; initial-value: 1; } @property --glass-backdrop-luma { syntax: "<number>"; inherits: true; initial-value: 0; } @property --glass-depth { syntax: "<number>"; inherits: true; initial-value: 1; } @property --glass-definition { syntax: "<number>"; inherits: true; initial-value: 0; } @property --ui-scale { syntax: "<number>"; inherits: true; initial-value: 1; } @property --motion-weight { syntax: "<number>"; inherits: true; initial-value: 0.618; } @property --motion-tempo { syntax: "<number>"; inherits: true; initial-value: 1; }
1
+ @property --progress-crescendo { syntax: "<percentage>"; inherits: false; initial-value: 0%; } @property --scroll-progress-rim-fill { syntax: "<percentage>"; inherits: false; initial-value: 0%; } @property --tab-blob { syntax: "<number>"; inherits: false; initial-value: 1; } @property --specular-x { syntax: "<percentage>"; inherits: false; initial-value: 50%; } @property --specular-y { syntax: "<percentage>"; inherits: false; initial-value: 50%; } @property --specular-intensity { syntax: "<number>"; inherits: false; initial-value: 0; } @property --specular-angle { syntax: "<angle>"; inherits: false; initial-value: 0deg; } @property --flex-vel { syntax: "<number>"; inherits: false; initial-value: 0; } @property --cartoon-press-t { syntax: "<number>"; inherits: true; initial-value: 0; } @property --cast-travel { syntax: "<length>"; inherits: false; initial-value: 0px; } @property --cast-spread { syntax: "<number>"; inherits: false; initial-value: 1; } @property --cartoon-cast-dx { syntax: "<length>"; inherits: true; initial-value: 0px; } @property --cartoon-cast-dy { syntax: "<length>"; inherits: true; initial-value: 0px; } @property --glass-accent { syntax: "<color>"; inherits: true; initial-value: transparent; } @property --glass-accent-strength { syntax: "<percentage>"; inherits: true; initial-value: 0%; } @property --glass-level { syntax: "<number>"; inherits: true; initial-value: 1; } @property --glass-backdrop-luma { syntax: "<number>"; inherits: true; initial-value: 0; } @property --glass-depth { syntax: "<number>"; inherits: true; initial-value: 1; } @property --glass-definition { syntax: "<number>"; inherits: true; initial-value: 0; } @property --ui-scale { syntax: "<number>"; inherits: true; initial-value: 1; } @property --motion-weight { syntax: "<number>"; inherits: true; initial-value: 0.618; } @property --motion-tempo { syntax: "<number>"; inherits: true; initial-value: 1; }
@@ -1 +1 @@
1
- :root { --scale-hover: 1.08; --scale-hover-btn: 1.05; --scale-hover-dock: 1.1; --scale-press: 0.96; --scale-press-dock: var(--scale-press); --scale-press-sm: 0.97; --scale-press-btn: var(--scale-press-sm); --tab-indicator-max-stretch: 1.11; --tab-indicator-blob-max: 1.045; --tab-indicator-duration: var(--spring-snappy-duration); --opacity-disabled: 0.5; --opacity-icon-muted: 0.8; --focus-ring-width: 2px; --focus-ring-shadow: 0 0 0 var(--focus-ring-width) color-mix(in srgb, var(--focus-ring-color) 30%, transparent), 0 0 8px color-mix(in srgb, var(--focus-ring-color) 15%, transparent); --focus-ring: var(--focus-ring-shadow); --invalid-ring-tint: 35%; --invalid-ring: 0 0 0 var(--focus-ring-width) color-mix(in srgb, var(--destructive) var(--invalid-ring-tint), transparent); --control-ring: color-mix(in srgb, var(--foreground) 12%, transparent); --control-checked-bg: color-mix(in srgb, var(--primary) 88%, var(--glass-bg-floating)); --paper-clean-texture: url("data:image/svg+xml,%3Csvg width='200' height='200' viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E"); --paper-aged-texture: url("data:image/svg+xml,%3Csvg width='200' height='200' viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='5' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E"); --grid-pitch: 1rem; --grid-major: 5rem; --grid-line: color-mix(in srgb, var(--foreground) 3%, transparent); --grid-line-major: color-mix(in srgb, var(--foreground) 11%, transparent); --paper-grid-opacity: 0.08; --paper-grid-texture-size: var(--grid-pitch); --paper-grid-line: color-mix( in srgb, var(--foreground) calc(var(--paper-grid-opacity) * 100%), transparent ); --paper-grid-line-major: color-mix( in srgb, var(--foreground) calc(var(--paper-grid-opacity) * 160%), transparent ); --paper-grid-texture: linear-gradient(to right, var(--paper-grid-line-major) 1px, transparent 1px), linear-gradient(to bottom, var(--paper-grid-line-major) 1px, transparent 1px), linear-gradient(to right, var(--paper-grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--paper-grid-line) 1px, transparent 1px); --gold: oklch(0.751 0.147 84.2); --gold-light: oklch(0.890 0.183 96.1); --gold-dark: oklch(0.599 0.132 64.2); --gold-deep: oklch(0.487 0.103 63.0); --color-gold: var(--gold); --color-gold-light: var(--gold-light); --color-gold-dark: var(--gold-dark); --color-gold-deep: var(--gold-deep); --silver: oklch(0.760 0.012 255); --silver-light: oklch(0.902 0.010 255); --silver-dark: oklch(0.582 0.014 255); --silver-deep: oklch(0.462 0.016 258); --color-silver: var(--silver); --color-silver-light: var(--silver-light); --color-silver-dark: var(--silver-dark); --color-silver-deep: var(--silver-deep); --bronze: oklch(0.620 0.092 54.0); --bronze-light: oklch(0.760 0.112 60.0); --bronze-dark: oklch(0.500 0.082 50.0); --bronze-deep: oklch(0.430 0.072 50.0); --color-bronze: var(--bronze); --color-bronze-light: var(--bronze-light); --color-bronze-dark: var(--bronze-dark); --color-bronze-deep: var(--bronze-deep); --rainbow-red: oklch(0.636 0.210 25.5); --rainbow-orange: oklch(0.737 0.163 58.9); --rainbow-yellow: oklch(0.900 0.183 103.7); --rainbow-green: oklch(0.772 0.233 144.8); --rainbow-blue: oklch(0.633 0.162 252.1); --rainbow-indigo: oklch(0.566 0.206 294.1); --rainbow-violet: oklch(0.684 0.250 327.9); --rainbow-pastel-red: oklch(0.793 0.066 18.7); --rainbow-pastel-orange: oklch(0.823 0.059 57.3); --rainbow-pastel-yellow: oklch(0.889 0.068 98.1); --rainbow-pastel-green: oklch(0.826 0.072 149.5); --rainbow-pastel-blue: oklch(0.783 0.056 264.2); --rainbow-pastel-indigo: oklch(0.772 0.062 300.2); --rainbow-pastel-violet: oklch(0.799 0.070 314.4); --timeline-scrubber-height: 0.5rem; --timeline-continuous-height: 0.75rem; --timeline-dot-size: 0.875rem; --timeline-dot-size-touch: 1.25rem; --timeline-touch-target: 44px; --timeline-segment-flex: 1 1 0; --timeline-dot-fill: var(--surface-tint-12); --timeline-dot-blur: var(--glass-blur-quiet); --timeline-dot-ring: var(--glass-border-floating); --timeline-dot-tint-current: var(--accent, var(--foreground)); --timeline-dot-tint-completed: var(--success, var(--foreground)); --timeline-dot-check-color: var(--timeline-dot-tint-completed); --timeline-continuous-seam-opacity: 0.25; --timeline-continuous-seam-color: color-mix( in srgb, var(--foreground) calc(var(--timeline-continuous-seam-opacity) * 100%), transparent ); --timeline-segment-default-gradient: linear-gradient( 90deg, var(--surface-tint-15), var(--surface-tint-25) ); --timeline-segment-gradient-ping: linear-gradient( 90deg, var(--chart-ping), color-mix(in srgb, var(--chart-ping) 60%, transparent) ); --timeline-segment-gradient-download: linear-gradient( 90deg, var(--chart-download), color-mix(in srgb, var(--chart-download) 60%, transparent) ); --timeline-segment-gradient-upload: linear-gradient( 90deg, var(--chart-upload), color-mix(in srgb, var(--chart-upload) 60%, transparent) ); --timeline-segment-gradient-jitter: linear-gradient( 90deg, var(--chart-jitter), color-mix(in srgb, var(--chart-jitter) 60%, transparent) ); --metric-row-value-clamp-min: 4.5rem; --metric-row-value-clamp-cqi: 34cqi; --metric-row-value-clamp-max: var(--type-display-hero); --metric-row-unit-clamp-min: 1.5rem; --metric-row-unit-clamp-max: 3.25rem; --metric-row-label-clamp-min: 1.125rem; --metric-row-label-clamp-cqi: 5cqi; --metric-row-label-clamp-max: 2.75rem; --metric-row-label-align: left; --metric-row-icon-color: inherit; --meter-progress-inset: calc(var(--meter-size, 200px) * 0.04); --progress-stack-gap: clamp(0.1875rem, 0.4cqi, 0.375rem); --celebration-row-rhythm: clamp(0.5rem, 1.6cqi, 1rem); --text-celebration-headline-size: clamp(2.5rem, 12cqi, 9rem); --complete-headline-size: clamp(2.25rem, 11cqi, 4rem); --table-density: 1; --table-cell-px: calc(1rem * var(--table-density)); --table-cell-py: calc(1rem * var(--table-density)); --table-head-h: calc(3rem * var(--table-density)); --table-head-px: calc(1rem * var(--table-density)); }
1
+ :root { --scale-hover: 1.08; --scale-hover-dock: 1.1; --scale-press: 0.96; --scale-press-dock: var(--scale-press); --scale-press-sm: 0.97; --scale-press-btn: var(--scale-press-sm); --tab-indicator-max-stretch: 1.11; --tab-indicator-blob-max: 1.045; --tab-indicator-duration: var(--spring-snappy-duration); --opacity-disabled: 0.5; --opacity-icon-muted: 0.8; --focus-ring-width: 2px; --focus-ring-shadow: 0 0 0 var(--focus-ring-width) color-mix(in srgb, var(--focus-ring-color) 30%, transparent), 0 0 8px color-mix(in srgb, var(--focus-ring-color) 15%, transparent); --invalid-ring-tint: 35%; --invalid-ring: 0 0 0 var(--focus-ring-width) color-mix(in srgb, var(--destructive) var(--invalid-ring-tint), transparent); --control-ring: color-mix(in srgb, var(--foreground) 12%, transparent); --control-checked-bg: color-mix(in srgb, var(--primary) 88%, var(--glass-bg-floating)); --paper-clean-texture: url("data:image/svg+xml,%3Csvg width='200' height='200' viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E"); --grid-pitch: 1rem; --grid-major: 5rem; --grid-line: color-mix(in srgb, var(--foreground) 3%, transparent); --grid-line-major: color-mix(in srgb, var(--foreground) 11%, transparent); --paper-grid-opacity: 0.08; --paper-grid-texture-size: var(--grid-pitch); --paper-grid-line: color-mix( in srgb, var(--foreground) calc(var(--paper-grid-opacity) * 100%), transparent ); --paper-grid-line-major: color-mix( in srgb, var(--foreground) calc(var(--paper-grid-opacity) * 160%), transparent ); --paper-grid-texture: linear-gradient(to right, var(--paper-grid-line-major) 1px, transparent 1px), linear-gradient(to bottom, var(--paper-grid-line-major) 1px, transparent 1px), linear-gradient(to right, var(--paper-grid-line) 1px, transparent 1px), linear-gradient(to bottom, var(--paper-grid-line) 1px, transparent 1px); --gold: oklch(0.751 0.147 84.2); --gold-light: oklch(0.890 0.183 96.1); --gold-dark: oklch(0.599 0.132 64.2); --gold-deep: oklch(0.487 0.103 63.0); --color-gold: var(--gold); --color-gold-light: var(--gold-light); --color-gold-dark: var(--gold-dark); --color-gold-deep: var(--gold-deep); --silver: oklch(0.760 0.012 255); --silver-light: oklch(0.902 0.010 255); --silver-dark: oklch(0.582 0.014 255); --silver-deep: oklch(0.462 0.016 258); --color-silver: var(--silver); --color-silver-light: var(--silver-light); --color-silver-dark: var(--silver-dark); --color-silver-deep: var(--silver-deep); --bronze: oklch(0.620 0.092 54.0); --bronze-light: oklch(0.760 0.112 60.0); --bronze-dark: oklch(0.500 0.082 50.0); --bronze-deep: oklch(0.430 0.072 50.0); --color-bronze: var(--bronze); --color-bronze-light: var(--bronze-light); --color-bronze-dark: var(--bronze-dark); --color-bronze-deep: var(--bronze-deep); --rainbow-red: oklch(0.636 0.210 25.5); --rainbow-orange: oklch(0.737 0.163 58.9); --rainbow-yellow: oklch(0.900 0.183 103.7); --rainbow-green: oklch(0.772 0.233 144.8); --rainbow-blue: oklch(0.633 0.162 252.1); --rainbow-indigo: oklch(0.566 0.206 294.1); --rainbow-violet: oklch(0.684 0.250 327.9); --rainbow-pastel-red: oklch(0.793 0.066 18.7); --rainbow-pastel-orange: oklch(0.823 0.059 57.3); --rainbow-pastel-yellow: oklch(0.889 0.068 98.1); --rainbow-pastel-green: oklch(0.826 0.072 149.5); --rainbow-pastel-blue: oklch(0.783 0.056 264.2); --rainbow-pastel-indigo: oklch(0.772 0.062 300.2); --rainbow-pastel-violet: oklch(0.799 0.070 314.4); --timeline-continuous-height: 0.75rem; --timeline-dot-size: 0.875rem; --timeline-dot-size-touch: 1.25rem; --timeline-touch-target: 44px; --timeline-segment-flex: 1 1 0; --timeline-dot-fill: var(--surface-tint-12); --timeline-dot-blur: var(--glass-blur-quiet); --timeline-dot-ring: var(--glass-border-floating); --timeline-dot-tint-current: var(--accent, var(--foreground)); --timeline-dot-tint-completed: var(--success, var(--foreground)); --timeline-dot-check-color: var(--timeline-dot-tint-completed); --timeline-continuous-seam-opacity: 0.25; --timeline-continuous-seam-color: color-mix( in srgb, var(--foreground) calc(var(--timeline-continuous-seam-opacity) * 100%), transparent ); --timeline-segment-default-gradient: linear-gradient( 90deg, var(--surface-tint-15), var(--surface-tint-25) ); --table-density: 1; --table-cell-px: calc(1rem * var(--table-density)); --table-cell-py: calc(1rem * var(--table-density)); --table-head-h: calc(3rem * var(--table-density)); --table-head-px: calc(1rem * var(--table-density)); }
@@ -1 +1 @@
1
- :root { color-scheme: light dark; accent-color: var(--accent-color); --font-stack-text: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", system-ui, sans-serif; --font-stack-display: var(--font-stack-text); --font-stack-sans: var(--font-stack-text); --font-stack-mono: "Fira Code", "Fira Code Fallback", "Fira Mono", monospace; --type-leading-micro: 1.2; --type-leading-caption: 1.3; --type-leading-small: 1.4; --type-leading-body: 1.5; --type-leading-prose: 1.618; --type-leading-heading: 1.2; --type-leading-display: 1.05; --type-tracking-tight: -0.025em; --type-tracking-display: -0.015em; --type-tracking-snug: -0.01em; --type-tracking-normal: 0; --type-tracking-wide: 0.025em; --type-tracking-wider: 0.05em; --type-tracking-caps: 0.1em; --duration-instant: 0.1s; --duration-control: 0.12s; --duration-fast: 0.2s; --duration-normal: 0.3s; --duration-slow: 0.45s; --duration-panel: 0.55s; --duration-xl: 1s; --duration-xxl: 1.5s; --duration-shimmer-fast: 3s; --duration-shimmer: 5s; --duration-metal: 6s; --motion-duration-staged: 320ms; --motion-duration-complete-shimmer: 2.4s; --motion-delay-complete-shimmer: 220ms; --motion-stagger-tight: 40ms; --motion-stagger-default: 80ms; --motion-stagger-relaxed: 120ms; --char-stagger-step: 30ms; --motion-weight: 0.618; --ease-cartoon-punch: linear( 0, -0.012, -0.038 12%, -0.018 18%, 0.18 34%, 0.62 46%, 0.98 56%, 1.14 64%, 1.22 70%, 1.16 78%, 1.06 86%, 1.012 92%, 1 ); --substrate-reveal-duration: 1100ms; --animate-ambient-pulse-duration: 6s; --animate-ambient-pulse-scale-min: 1.0; --animate-ambient-pulse-scale-max: 1.15; --animate-ambient-pulse-easing: var(--ease-apple); --pulse-aura-strength: 0.22; --pulse-aura-breath-min: 0.28; --pulse-aura-breath-max: 0.42; --pulse-aura-opacity-min: 0.55; --pulse-aura-opacity-max: 0.95; --progress-sectioned-height: 0.875rem; --progress-sectioned-track: var(--secondary); --motion-duration-progress-intake: 220ms; --motion-duration-progress-crescendo: 240ms; --motion-duration-progress-indeterminate: 4s; --phase-tint-peak: 6%; --skeleton-breath-duration: 6s; --z-behind: -10; --z-background: 0; --z-content: 10; --z-controls: 20; --z-bar: 30; --z-header: 35; --z-dock: 40; --z-panel: 45; --z-overlay: 50; --z-hovercard: 120; --z-tooltip: 120; --z-popover: 130; --z-modal: 140; --z-fullscreen: 150; --z-toast: 160; --z-toggle: 999; --z-max: 9999; --z-debug: 99999; } .liquid-stage { --motion-weight: 1; } :where([data-reorder], [data-autoplay]) { --motion-weight: 0; } :where(.glass-dock, .glass-drawer, .liquid-stage) { --motion-tempo: 1; } .motion-calm { --transition-liquid-spatial: var(--ease-standard); } @media (prefers-reduced-motion: reduce) { :root { --motion-weight: 0; --ease-cartoon-punch: var(--ease-standard); } }
1
+ :root { color-scheme: light dark; accent-color: var(--accent-color); --font-stack-text: "Plus Jakarta Sans", "Plus Jakarta Sans Fallback", system-ui, sans-serif; --font-stack-display: var(--font-stack-text); --font-stack-sans: var(--font-stack-text); --font-stack-mono: "Fira Code", "Fira Code Fallback", "Fira Mono", monospace; --type-leading-micro: 1.2; --type-leading-caption: 1.3; --type-leading-small: 1.4; --type-leading-body: 1.5; --type-leading-prose: 1.618; --type-leading-heading: 1.2; --type-leading-display: 1.05; --type-tracking-tight: -0.025em; --type-tracking-display: -0.015em; --type-tracking-snug: -0.01em; --type-tracking-normal: 0; --type-tracking-wide: 0.025em; --type-tracking-wider: 0.05em; --type-tracking-caps: 0.1em; --duration-instant: 0.1s; --duration-control: 0.12s; --duration-fast: 0.2s; --duration-normal: 0.3s; --duration-slow: 0.45s; --duration-panel: 0.55s; --duration-xl: 1s; --duration-xxl: 1.5s; --duration-shimmer-fast: 3s; --duration-shimmer: 5s; --duration-metal: 6s; --motion-stagger-default: 80ms; --motion-weight: 0.618; --ease-cartoon-punch: linear( 0, -0.012, -0.038 12%, -0.018 18%, 0.18 34%, 0.62 46%, 0.98 56%, 1.14 64%, 1.22 70%, 1.16 78%, 1.06 86%, 1.012 92%, 1 ); --substrate-reveal-duration: 1100ms; --motion-duration-progress-intake: 220ms; --motion-duration-progress-crescendo: 240ms; --motion-duration-progress-indeterminate: 4s; --z-behind: -10; --z-background: 0; --z-content: 10; --z-controls: 20; --z-bar: 30; --z-header: 35; --z-dock: 40; --z-panel: 45; --z-overlay: 50; --z-hovercard: 120; --z-tooltip: 120; --z-popover: 130; --z-modal: 140; --z-fullscreen: 150; --z-toast: 160; --z-toggle: 999; --z-max: 9999; } .liquid-stage { --motion-weight: 1; } :where([data-reorder], [data-autoplay]) { --motion-weight: 0; } :where(.glass-drawer, .liquid-stage) { --motion-tempo: 1; } .motion-calm { --transition-liquid-spatial: var(--ease-standard); } @media (prefers-reduced-motion: reduce) { :root { --motion-weight: 0; --ease-cartoon-punch: var(--ease-standard); } }
@@ -1 +1 @@
1
- :root { --spring-smooth: linear(0, 0.00287 2.041%, 0.01102 4.082%, 0.02379 6.122%, 0.04057 8.163%, 0.06079 10.204%, 0.08395 12.245%, 0.10956 14.286%, 0.13721 16.327%, 0.16649 18.367%, 0.19705 20.408%, 0.22858 22.449%, 0.26077 24.490%, 0.29338 26.531%, 0.32617 28.571%, 0.35893 30.612%, 0.39149 32.653%, 0.42368 34.694%, 0.45536 36.735%, 0.48642 38.776%, 0.51676 40.816%, 0.54628 42.857%, 0.57492 44.898%, 0.60262 46.939%, 0.62933 48.980%, 0.65501 51.020%, 0.67965 53.061%, 0.70322 55.102%, 0.72571 57.143%, 0.74713 59.184%, 0.76748 61.224%, 0.78677 63.265%, 0.80501 65.306%, 0.82223 67.347%, 0.83844 69.388%, 0.85367 71.429%, 0.86796 73.469%, 0.88132 75.510%, 0.89379 77.551%, 0.90541 79.592%, 0.91621 81.633%, 0.92623 83.673%, 0.93549 85.714%, 0.94404 87.755%, 0.95190 89.796%, 0.95912 91.837%, 0.96574 93.878%, 0.97177 95.918%, 0.97726 97.959%, 1); --spring-snappy: linear(0, 0.00652 2.041%, 0.02458 4.082%, 0.05211 6.122%, 0.08725 8.163%, 0.12834 10.204%, 0.17392 12.245%, 0.22268 14.286%, 0.27350 16.327%, 0.32540 18.367%, 0.37757 20.408%, 0.42929 22.449%, 0.47998 24.490%, 0.52916 26.531%, 0.57646 28.571%, 0.62156 30.612%, 0.66426 32.653%, 0.70440 34.694%, 0.74187 36.735%, 0.77662 38.776%, 0.80866 40.816%, 0.83800 42.857%, 0.86471 44.898%, 0.88887 46.939%, 0.91058 48.980%, 0.92996 51.020%, 0.94713 53.061%, 0.96223 55.102%, 0.97539 57.143%, 0.98677 59.184%, 0.99649 61.224%, 1.00471 63.265%, 1.01156 65.306%, 1.01716 67.347%, 1.02166 69.388%, 1.02516 71.429%, 1.02778 73.469%, 1.02964 75.510%, 1.03082 77.551%, 1.03142 79.592%, 1.03153 81.633%, 1.03122 83.673%, 1.03057 85.714%, 1.02963 87.755%, 1.02847 89.796%, 1.02713 91.837%, 1.02566 93.878%, 1.02410 95.918%, 1.02249 97.959%, 1); --spring-bouncy: linear(0, 0.00706 2.041%, 0.02686 4.082%, 0.05738 6.122%, 0.09674 8.163%, 0.14321 10.204%, 0.19517 12.245%, 0.25116 14.286%, 0.30987 16.327%, 0.37010 18.367%, 0.43083 20.408%, 0.49115 22.449%, 0.55028 24.490%, 0.60757 26.531%, 0.66248 28.571%, 0.71458 30.612%, 0.76353 32.653%, 0.80908 34.694%, 0.85107 36.735%, 0.88940 38.776%, 0.92404 40.816%, 0.95502 42.857%, 0.98241 44.898%, 1.00631 46.939%, 1.02688 48.980%, 1.04428 51.020%, 1.05870 53.061%, 1.07035 55.102%, 1.07945 57.143%, 1.08621 59.184%, 1.09087 61.224%, 1.09364 63.265%, 1.09474 65.306%, 1.09439 67.347%, 1.09278 69.388%, 1.09011 71.429%, 1.08656 73.469%, 1.08230 75.510%, 1.07749 77.551%, 1.07226 79.592%, 1.06675 81.633%, 1.06106 83.673%, 1.05531 85.714%, 1.04958 87.755%, 1.04394 89.796%, 1.03846 91.837%, 1.03320 93.878%, 1.02820 95.918%, 1.02348 97.959%, 1); --spring-gentle: linear(0, 0.00653 2.041%, 0.02415 4.082%, 0.05029 6.122%, 0.08283 8.163%, 0.12000 10.204%, 0.16036 12.245%, 0.20272 14.286%, 0.24614 16.327%, 0.28983 18.367%, 0.33320 20.408%, 0.37576 22.449%, 0.41716 24.490%, 0.45712 26.531%, 0.49544 28.571%, 0.53199 30.612%, 0.56669 32.653%, 0.59948 34.694%, 0.63037 36.735%, 0.65936 38.776%, 0.68650 40.816%, 0.71183 42.857%, 0.73542 44.898%, 0.75735 46.939%, 0.77768 48.980%, 0.79650 51.020%, 0.81390 53.061%, 0.82995 55.102%, 0.84474 57.143%, 0.85835 59.184%, 0.87086 61.224%, 0.88235 63.265%, 0.89288 65.306%, 0.90253 67.347%, 0.91136 69.388%, 0.91944 71.429%, 0.92682 73.469%, 0.93356 75.510%, 0.93970 77.551%, 0.94531 79.592%, 0.95041 81.633%, 0.95506 83.673%, 0.95929 85.714%, 0.96313 87.755%, 0.96663 89.796%, 0.96980 91.837%, 0.97268 93.878%, 0.97530 95.918%, 0.97767 97.959%, 1); --spring-dock: linear(0, 0.00315 2.041%, 0.01207 4.082%, 0.02597 6.122%, 0.04414 8.163%, 0.06595 10.204%, 0.09081 12.245%, 0.11817 14.286%, 0.14757 16.327%, 0.17856 18.367%, 0.21076 20.408%, 0.24381 22.449%, 0.27740 24.490%, 0.31127 26.531%, 0.34517 28.571%, 0.37888 30.612%, 0.41222 32.653%, 0.44503 34.694%, 0.47717 36.735%, 0.50853 38.776%, 0.53901 40.816%, 0.56854 42.857%, 0.59705 44.898%, 0.62449 46.939%, 0.65083 48.980%, 0.67603 51.020%, 0.70010 53.061%, 0.72301 55.102%, 0.74478 57.143%, 0.76540 59.184%, 0.78490 61.224%, 0.80330 63.265%, 0.82062 65.306%, 0.83688 67.347%, 0.85213 69.388%, 0.86638 71.429%, 0.87969 73.469%, 0.89207 75.510%, 0.90358 77.551%, 0.91425 79.592%, 0.92411 81.633%, 0.93322 83.673%, 0.94160 85.714%, 0.94930 87.755%, 0.95635 89.796%, 0.96279 91.837%, 0.96865 93.878%, 0.97398 95.918%, 0.97881 97.959%, 1); --spring-press: linear(0, 0.00284 2.041%, 0.01090 4.082%, 0.02354 6.122%, 0.04014 8.163%, 0.06017 10.204%, 0.08311 12.245%, 0.10850 14.286%, 0.13590 16.327%, 0.16495 18.367%, 0.19528 20.408%, 0.22657 22.449%, 0.25855 24.490%, 0.29095 26.531%, 0.32354 28.571%, 0.35613 30.612%, 0.38852 32.653%, 0.42057 34.694%, 0.45213 36.735%, 0.48309 38.776%, 0.51333 40.816%, 0.54279 42.857%, 0.57137 44.898%, 0.59903 46.939%, 0.62572 48.980%, 0.65141 51.020%, 0.67605 53.061%, 0.69965 55.102%, 0.72219 57.143%, 0.74366 59.184%, 0.76407 61.224%, 0.78343 63.265%, 0.80175 65.306%, 0.81906 67.347%, 0.83537 69.388%, 0.85070 71.429%, 0.86509 73.469%, 0.87857 75.510%, 0.89116 77.551%, 0.90290 79.592%, 0.91382 81.633%, 0.92395 83.673%, 0.93333 85.714%, 0.94200 87.755%, 0.94999 89.796%, 0.95733 91.837%, 0.96406 93.878%, 0.97020 95.918%, 0.97581 97.959%, 1); --spring-transient: linear(0, 0.00427 2.041%, 0.01615 4.082%, 0.03434 6.122%, 0.05769 8.163%, 0.08520 10.204%, 0.11598 12.245%, 0.14927 14.286%, 0.18439 16.327%, 0.22076 18.367%, 0.25789 20.408%, 0.29534 22.449%, 0.33275 24.490%, 0.36982 26.531%, 0.40630 28.571%, 0.44196 30.612%, 0.47666 32.653%, 0.51024 34.694%, 0.54261 36.735%, 0.57369 38.776%, 0.60342 40.816%, 0.63176 42.857%, 0.65871 44.898%, 0.68425 46.939%, 0.70840 48.980%, 0.73117 51.020%, 0.75259 53.061%, 0.77270 55.102%, 0.79153 57.143%, 0.80913 59.184%, 0.82554 61.224%, 0.84083 63.265%, 0.85503 65.306%, 0.86820 67.347%, 0.88039 69.388%, 0.89166 71.429%, 0.90206 73.469%, 0.91163 75.510%, 0.92043 77.551%, 0.92851 79.592%, 0.93591 81.633%, 0.94268 83.673%, 0.94886 85.714%, 0.95449 87.755%, 0.95961 89.796%, 0.96427 91.837%, 0.96849 93.878%, 0.97230 95.918%, 0.97575 97.959%, 1); --spring-eyeglass: linear(0, 0.00696 2.041%, 0.02640 4.082%, 0.05625 6.122%, 0.09463 8.163%, 0.13978 10.204%, 0.19012 12.245%, 0.24422 14.286%, 0.30080 16.327%, 0.35875 18.367%, 0.41708 20.408%, 0.47495 22.449%, 0.53163 24.490%, 0.58652 26.531%, 0.63915 28.571%, 0.68911 30.612%, 0.73612 32.653%, 0.77996 34.694%, 0.82048 36.735%, 0.85763 38.776%, 0.89137 40.816%, 0.92174 42.857%, 0.94882 44.898%, 0.97270 46.939%, 0.99352 48.980%, 1.01144 51.020%, 1.02663 53.061%, 1.03928 55.102%, 1.04957 57.143%, 1.05772 59.184%, 1.06392 61.224%, 1.06835 63.265%, 1.07123 65.306%, 1.07272 67.347%, 1.07301 69.388%, 1.07227 71.429%, 1.07066 73.469%, 1.06832 75.510%, 1.06538 77.551%, 1.06198 79.592%, 1.05823 81.633%, 1.05423 83.673%, 1.05007 85.714%, 1.04582 87.755%, 1.04156 89.796%, 1.03735 91.837%, 1.03324 93.878%, 1.02927 95.918%, 1.02547 97.959%, 1); --spring-smooth-settle: 0.35s; --spring-snappy-settle: 0.44s; --spring-bouncy-settle: 0.57s; --spring-gentle-settle: 0.76s; --spring-dock-settle: 0.19s; --spring-press-settle: 0.12s; --spring-transient-settle: 0.46s; --spring-eyeglass-settle: 0.34s; --spring-smooth-duration: calc(var(--spring-smooth-settle) * var(--motion-tempo)); --spring-snappy-duration: calc(var(--spring-snappy-settle) * var(--motion-tempo)); --spring-bouncy-duration: calc(var(--spring-bouncy-settle) * var(--motion-tempo)); --spring-gentle-duration: calc(var(--spring-gentle-settle) * var(--motion-tempo)); --spring-dock-duration: calc(var(--spring-dock-settle) * var(--motion-tempo)); --spring-press-duration: calc(var(--spring-press-settle) * var(--motion-tempo)); --spring-transient-duration: calc(var(--spring-transient-settle) * var(--motion-tempo)); --spring-eyeglass-duration: calc(var(--spring-eyeglass-settle) * var(--motion-tempo)); --transition-liquid-spatial: var(--spring-smooth); --spring-deck: var(--spring-smooth); --deck-goo-flow: linear( 0, 0.02206 4.167%, 0.07922 8.333%, 0.15799 12.5%, 0.24486 16.667%, 0.32632 20.833%, 0.38889 25%, 0.41905 29.167%, 0.43667 33.333%, 0.4575 37.5%, 0.47833 41.667%, 0.49917 45.833%, 0.52 50%, 0.54083 54.167%, 0.56167 58.333%, 0.58373 62.5%, 0.64 66.667%, 0.71 70.833%, 0.78 75%, 0.85 79.167%, 0.91 83.333%, 0.96 87.5%, 0.985 91.667%, 0.997 95.833%, 1 ); --deck-goo-duration: 1.1s; --deck-goo-max-stretch: 1.1; --pager-worm-max-stretch: 1.2; --motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1); --motion-ease-out: cubic-bezier(0, 0, 0.2, 1); --motion-ease-in: cubic-bezier(0.4, 0, 1, 1); --motion-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); --ease-standard: var(--motion-ease-standard); --ease-out: var(--motion-ease-out); --ease-in: var(--motion-ease-in); --ease-out-expo: var(--motion-ease-out-expo); --motion-ease-apple: cubic-bezier(0.25, 0.1, 0.25, 1); --ease-apple: var(--motion-ease-apple); --ease-spring: var(--spring-snappy); --ease-decelerate: var(--ease-out); --ease-accelerate: var(--ease-in); --ease-convergence: var(--spring-gentle); } @media (prefers-reduced-motion: reduce) { :root { --transition-liquid-spatial: var(--ease-standard); } }
1
+ :root { --spring-smooth: linear(0, 0.00287 2.041%, 0.01102 4.082%, 0.02379 6.122%, 0.04057 8.163%, 0.06079 10.204%, 0.08395 12.245%, 0.10956 14.286%, 0.13721 16.327%, 0.16649 18.367%, 0.19705 20.408%, 0.22858 22.449%, 0.26077 24.490%, 0.29338 26.531%, 0.32617 28.571%, 0.35893 30.612%, 0.39149 32.653%, 0.42368 34.694%, 0.45536 36.735%, 0.48642 38.776%, 0.51676 40.816%, 0.54628 42.857%, 0.57492 44.898%, 0.60262 46.939%, 0.62933 48.980%, 0.65501 51.020%, 0.67965 53.061%, 0.70322 55.102%, 0.72571 57.143%, 0.74713 59.184%, 0.76748 61.224%, 0.78677 63.265%, 0.80501 65.306%, 0.82223 67.347%, 0.83844 69.388%, 0.85367 71.429%, 0.86796 73.469%, 0.88132 75.510%, 0.89379 77.551%, 0.90541 79.592%, 0.91621 81.633%, 0.92623 83.673%, 0.93549 85.714%, 0.94404 87.755%, 0.95190 89.796%, 0.95912 91.837%, 0.96574 93.878%, 0.97177 95.918%, 0.97726 97.959%, 1); --spring-snappy: linear(0, 0.00652 2.041%, 0.02458 4.082%, 0.05211 6.122%, 0.08725 8.163%, 0.12834 10.204%, 0.17392 12.245%, 0.22268 14.286%, 0.27350 16.327%, 0.32540 18.367%, 0.37757 20.408%, 0.42929 22.449%, 0.47998 24.490%, 0.52916 26.531%, 0.57646 28.571%, 0.62156 30.612%, 0.66426 32.653%, 0.70440 34.694%, 0.74187 36.735%, 0.77662 38.776%, 0.80866 40.816%, 0.83800 42.857%, 0.86471 44.898%, 0.88887 46.939%, 0.91058 48.980%, 0.92996 51.020%, 0.94713 53.061%, 0.96223 55.102%, 0.97539 57.143%, 0.98677 59.184%, 0.99649 61.224%, 1.00471 63.265%, 1.01156 65.306%, 1.01716 67.347%, 1.02166 69.388%, 1.02516 71.429%, 1.02778 73.469%, 1.02964 75.510%, 1.03082 77.551%, 1.03142 79.592%, 1.03153 81.633%, 1.03122 83.673%, 1.03057 85.714%, 1.02963 87.755%, 1.02847 89.796%, 1.02713 91.837%, 1.02566 93.878%, 1.02410 95.918%, 1.02249 97.959%, 1); --spring-bouncy: linear(0, 0.00706 2.041%, 0.02686 4.082%, 0.05738 6.122%, 0.09674 8.163%, 0.14321 10.204%, 0.19517 12.245%, 0.25116 14.286%, 0.30987 16.327%, 0.37010 18.367%, 0.43083 20.408%, 0.49115 22.449%, 0.55028 24.490%, 0.60757 26.531%, 0.66248 28.571%, 0.71458 30.612%, 0.76353 32.653%, 0.80908 34.694%, 0.85107 36.735%, 0.88940 38.776%, 0.92404 40.816%, 0.95502 42.857%, 0.98241 44.898%, 1.00631 46.939%, 1.02688 48.980%, 1.04428 51.020%, 1.05870 53.061%, 1.07035 55.102%, 1.07945 57.143%, 1.08621 59.184%, 1.09087 61.224%, 1.09364 63.265%, 1.09474 65.306%, 1.09439 67.347%, 1.09278 69.388%, 1.09011 71.429%, 1.08656 73.469%, 1.08230 75.510%, 1.07749 77.551%, 1.07226 79.592%, 1.06675 81.633%, 1.06106 83.673%, 1.05531 85.714%, 1.04958 87.755%, 1.04394 89.796%, 1.03846 91.837%, 1.03320 93.878%, 1.02820 95.918%, 1.02348 97.959%, 1); --spring-gentle: linear(0, 0.00653 2.041%, 0.02415 4.082%, 0.05029 6.122%, 0.08283 8.163%, 0.12000 10.204%, 0.16036 12.245%, 0.20272 14.286%, 0.24614 16.327%, 0.28983 18.367%, 0.33320 20.408%, 0.37576 22.449%, 0.41716 24.490%, 0.45712 26.531%, 0.49544 28.571%, 0.53199 30.612%, 0.56669 32.653%, 0.59948 34.694%, 0.63037 36.735%, 0.65936 38.776%, 0.68650 40.816%, 0.71183 42.857%, 0.73542 44.898%, 0.75735 46.939%, 0.77768 48.980%, 0.79650 51.020%, 0.81390 53.061%, 0.82995 55.102%, 0.84474 57.143%, 0.85835 59.184%, 0.87086 61.224%, 0.88235 63.265%, 0.89288 65.306%, 0.90253 67.347%, 0.91136 69.388%, 0.91944 71.429%, 0.92682 73.469%, 0.93356 75.510%, 0.93970 77.551%, 0.94531 79.592%, 0.95041 81.633%, 0.95506 83.673%, 0.95929 85.714%, 0.96313 87.755%, 0.96663 89.796%, 0.96980 91.837%, 0.97268 93.878%, 0.97530 95.918%, 0.97767 97.959%, 1); --spring-dock: linear(0, 0.00315 2.041%, 0.01207 4.082%, 0.02597 6.122%, 0.04414 8.163%, 0.06595 10.204%, 0.09081 12.245%, 0.11817 14.286%, 0.14757 16.327%, 0.17856 18.367%, 0.21076 20.408%, 0.24381 22.449%, 0.27740 24.490%, 0.31127 26.531%, 0.34517 28.571%, 0.37888 30.612%, 0.41222 32.653%, 0.44503 34.694%, 0.47717 36.735%, 0.50853 38.776%, 0.53901 40.816%, 0.56854 42.857%, 0.59705 44.898%, 0.62449 46.939%, 0.65083 48.980%, 0.67603 51.020%, 0.70010 53.061%, 0.72301 55.102%, 0.74478 57.143%, 0.76540 59.184%, 0.78490 61.224%, 0.80330 63.265%, 0.82062 65.306%, 0.83688 67.347%, 0.85213 69.388%, 0.86638 71.429%, 0.87969 73.469%, 0.89207 75.510%, 0.90358 77.551%, 0.91425 79.592%, 0.92411 81.633%, 0.93322 83.673%, 0.94160 85.714%, 0.94930 87.755%, 0.95635 89.796%, 0.96279 91.837%, 0.96865 93.878%, 0.97398 95.918%, 0.97881 97.959%, 1); --spring-press: linear(0, 0.00284 2.041%, 0.01090 4.082%, 0.02354 6.122%, 0.04014 8.163%, 0.06017 10.204%, 0.08311 12.245%, 0.10850 14.286%, 0.13590 16.327%, 0.16495 18.367%, 0.19528 20.408%, 0.22657 22.449%, 0.25855 24.490%, 0.29095 26.531%, 0.32354 28.571%, 0.35613 30.612%, 0.38852 32.653%, 0.42057 34.694%, 0.45213 36.735%, 0.48309 38.776%, 0.51333 40.816%, 0.54279 42.857%, 0.57137 44.898%, 0.59903 46.939%, 0.62572 48.980%, 0.65141 51.020%, 0.67605 53.061%, 0.69965 55.102%, 0.72219 57.143%, 0.74366 59.184%, 0.76407 61.224%, 0.78343 63.265%, 0.80175 65.306%, 0.81906 67.347%, 0.83537 69.388%, 0.85070 71.429%, 0.86509 73.469%, 0.87857 75.510%, 0.89116 77.551%, 0.90290 79.592%, 0.91382 81.633%, 0.92395 83.673%, 0.93333 85.714%, 0.94200 87.755%, 0.94999 89.796%, 0.95733 91.837%, 0.96406 93.878%, 0.97020 95.918%, 0.97581 97.959%, 1); --spring-transient: linear(0, 0.00427 2.041%, 0.01615 4.082%, 0.03434 6.122%, 0.05769 8.163%, 0.08520 10.204%, 0.11598 12.245%, 0.14927 14.286%, 0.18439 16.327%, 0.22076 18.367%, 0.25789 20.408%, 0.29534 22.449%, 0.33275 24.490%, 0.36982 26.531%, 0.40630 28.571%, 0.44196 30.612%, 0.47666 32.653%, 0.51024 34.694%, 0.54261 36.735%, 0.57369 38.776%, 0.60342 40.816%, 0.63176 42.857%, 0.65871 44.898%, 0.68425 46.939%, 0.70840 48.980%, 0.73117 51.020%, 0.75259 53.061%, 0.77270 55.102%, 0.79153 57.143%, 0.80913 59.184%, 0.82554 61.224%, 0.84083 63.265%, 0.85503 65.306%, 0.86820 67.347%, 0.88039 69.388%, 0.89166 71.429%, 0.90206 73.469%, 0.91163 75.510%, 0.92043 77.551%, 0.92851 79.592%, 0.93591 81.633%, 0.94268 83.673%, 0.94886 85.714%, 0.95449 87.755%, 0.95961 89.796%, 0.96427 91.837%, 0.96849 93.878%, 0.97230 95.918%, 0.97575 97.959%, 1); --spring-smooth-settle: 0.35s; --spring-snappy-settle: 0.44s; --spring-bouncy-settle: 0.57s; --spring-gentle-settle: 0.76s; --spring-dock-settle: 0.19s; --spring-press-settle: 0.12s; --spring-transient-settle: 0.46s; --spring-smooth-duration: calc(var(--spring-smooth-settle) * var(--motion-tempo)); --spring-snappy-duration: calc(var(--spring-snappy-settle) * var(--motion-tempo)); --spring-bouncy-duration: calc(var(--spring-bouncy-settle) * var(--motion-tempo)); --spring-gentle-duration: calc(var(--spring-gentle-settle) * var(--motion-tempo)); --spring-dock-duration: calc(var(--spring-dock-settle) * var(--motion-tempo)); --spring-press-duration: calc(var(--spring-press-settle) * var(--motion-tempo)); --spring-transient-duration: calc(var(--spring-transient-settle) * var(--motion-tempo)); --transition-liquid-spatial: var(--spring-smooth); --pager-worm-max-stretch: 1.2; --motion-ease-standard: cubic-bezier(0.4, 0, 0.2, 1); --motion-ease-out: cubic-bezier(0, 0, 0.2, 1); --motion-ease-in: cubic-bezier(0.4, 0, 1, 1); --motion-ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); --ease-standard: var(--motion-ease-standard); --ease-out: var(--motion-ease-out); --ease-in: var(--motion-ease-in); --ease-out-expo: var(--motion-ease-out-expo); --motion-ease-apple: cubic-bezier(0.25, 0.1, 0.25, 1); --ease-apple: var(--motion-ease-apple); --ease-spring: var(--spring-snappy); --ease-decelerate: var(--ease-out); --ease-accelerate: var(--ease-in); } @media (prefers-reduced-motion: reduce) { :root { --transition-liquid-spatial: var(--ease-standard); } }
@@ -1 +1 @@
1
- :root { --scroll-reveal-rise: 6px; --scroll-reveal-range-end: 60%; --scroll-cascade-rise: 1.25rem; --scroll-cascade-range-end: 45%; --scroll-cascade-column-stagger: 6%; --scroll-pin-stage-height: 320vh; --scroll-pin-lift: 2.5rem; --top-layer-enter-scale: var(--enter-overlay-scale); --top-layer-enter-blur: var(--enter-overlay-blur); --top-layer-backdrop-blur: 8px; --top-layer-backdrop-dim: 0.5; --vt-duration: var(--duration-normal); --vt-ease: var(--spring-bouncy); --vt-rise: 8px; --dock-resize-spring: var(--spring-dock); --dock-press-spring: var(--spring-smooth-duration) var(--spring-smooth); }
1
+ :root { --scroll-reveal-rise: 6px; --scroll-reveal-range-end: 60%; --scroll-cascade-rise: 1.25rem; --scroll-cascade-range-end: 45%; --scroll-cascade-column-stagger: 6%; --scroll-pin-stage-height: 320vh; --scroll-pin-lift: 2.5rem; --top-layer-enter-scale: var(--enter-overlay-scale); --top-layer-enter-blur: var(--enter-overlay-blur); --top-layer-backdrop-blur: 7px; --top-layer-backdrop-dim: 0.5; --vt-duration: var(--duration-normal); --vt-ease: var(--spring-bouncy); --vt-rise: 8px; --dock-resize-spring: var(--spring-dock); --dock-press-spring: var(--spring-smooth-duration) var(--spring-smooth); }
@@ -1 +1 @@
1
- :root { --shadow-cartoon: -3px 3px 0px 0px var(--cartoon-ink-lead); --shadow-cartoon-hover: -4px 4px 0px 0px var(--cartoon-ink-lead); --shadow-soft: 0 4px 12px rgba(0, 0, 0, 0.1); --shadow-elevated: 0 8px 24px rgba(0, 0, 0, 0.12); --shadow-modal: -4px 4px 0px 0px var(--cartoon-ink-lead), 0 24px 64px color-mix(in srgb, var(--foreground) 12%, transparent); --cartoon-shadow: var(--shadow-cartoon); --cartoon-shadow-hover: var(--shadow-cartoon-hover); --soft-shadow: var(--shadow-soft); --elevated-shadow: var(--shadow-elevated); --modal-shadow: var(--shadow-modal); --shadow-xs: 0 1px 3px color-mix(in srgb, var(--shadow-color) 4%, transparent), 0 1px 2px color-mix(in srgb, var(--shadow-color) 6%, transparent); --shadow-sm: 0 2px 8px color-mix(in srgb, var(--shadow-color) 6%, transparent); --shadow-md: 0 4px 16px color-mix(in srgb, var(--shadow-color) 8%, transparent); --shadow-lg: 0 4px 20px color-mix(in srgb, var(--shadow-color) 12%, transparent); --shadow-xl: 0 8px 24px color-mix(in srgb, var(--shadow-color) 14%, transparent); --shadow-2xl: 0 25px 50px -12px color-mix(in srgb, var(--shadow-color) 25%, transparent); --shadow-uniform: 0 0 12px color-mix(in srgb, var(--shadow-color) 8%, transparent); --shadow-card: var(--shadow-md); --card-shadow: var(--shadow-card); --card-header-bg: color-mix(in srgb, var(--card) 60%, transparent); --shadow-dock: 0 0 20px color-mix(in srgb, var(--shadow-color) 14%, transparent); --shadow-dock-collapsed: 0 0 12px color-mix(in srgb, var(--shadow-color) 12%, transparent); --dock-shadow: var(--shadow-dock); --dock-shadow-collapsed: var(--shadow-dock-collapsed); --glass-material-rim: 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 5%, transparent); --shadow-dock-wrap: var(--shadow-xl), var(--glass-material-rim), var(--glass-under-shadow-vivid); --shadow-cartoon-color: rgb(0 0 0 / 0.12); --shadow-cartoon-color-soft: rgb(0 0 0 / 0.06); --cartoon-ink: oklch(from var(--foreground) clamp(0.28, l, 0.34) clamp(0.030, c, 0.050) h); --cartoon-ink-lead: color-mix(in oklab, var(--cartoon-ink) 32%, transparent); --cartoon-ink-mid: color-mix(in oklab, var(--cartoon-ink) 26%, transparent); --cartoon-ink-contact: color-mix(in oklab, var(--cartoon-ink) 18%, transparent); --cartoon-ink-fallback: #34251a; --shadow-cartoon-sm: -2px 2px 0 var(--cartoon-ink-lead), -3px 3px 0 var(--cartoon-ink-mid), -4px 4px 0 var(--cartoon-ink-contact); --shadow-cartoon-md: -3px 3px 0 var(--cartoon-ink-lead), -5px 5px 0 var(--cartoon-ink-mid), -7px 7px 0 var(--cartoon-ink-contact); --shadow-cartoon-lg: -4px 4px 0 var(--cartoon-ink-lead), -7px 7px 0 var(--cartoon-ink-mid), -11px 11px 0 var(--cartoon-ink-contact); --cartoon-shadow-sm: var(--shadow-cartoon-sm); --cartoon-shadow-md: var(--shadow-cartoon-md); --cartoon-shadow-lg: var(--shadow-cartoon-lg); --blob-shadow-offset: 0 4px; --blob-shadow-blur: 14px; --blob-shadow-color: color-mix(in srgb, var(--blob-color, var(--shadow-color)) 22%, var(--shadow-color)); --blob-shadow-strength: 20%; --blob-shadow-ambient: var(--blob-shadow-offset) var(--blob-shadow-blur) color-mix(in srgb, var(--blob-shadow-color) var(--blob-shadow-strength), transparent); --blob-shadow-contact-offset: 0 1px; --blob-shadow-contact-blur: 3px; --blob-shadow-contact-strength: 38%; --blob-shadow-contact: var(--blob-shadow-contact-offset) var(--blob-shadow-contact-blur) color-mix(in srgb, var(--blob-shadow-color) var(--blob-shadow-contact-strength), transparent); --blob-shadow: var(--blob-shadow-ambient); --blob-shadow-hover: 0 6px 20px color-mix(in srgb, var(--blob-shadow-color) 26%, transparent); --blob-shadow-contact-hover: 0 1px 4px color-mix(in srgb, var(--blob-shadow-color) 44%, transparent); } @supports not (color: oklch(from white l c h)) { :root { --cartoon-ink: var(--cartoon-ink-fallback); } } @media (prefers-contrast: more), (prefers-reduced-transparency: reduce) { :root { --cartoon-ink-lead: color-mix(in oklab, var(--cartoon-ink) 42%, transparent); --cartoon-ink-mid: color-mix(in oklab, var(--cartoon-ink) 34%, transparent); --cartoon-ink-contact: color-mix(in oklab, var(--cartoon-ink) 24%, transparent); } }
1
+ :root { --shadow-cartoon: -3px 3px 0px 0px var(--cartoon-ink-lead); --shadow-cartoon-hover: -4px 4px 0px 0px var(--cartoon-ink-lead); --shadow-soft: 0 4px 12px rgba(0, 0, 0, 0.1); --shadow-elevated: 0 8px 24px rgba(0, 0, 0, 0.12); --shadow-modal: -4px 4px 0px 0px var(--cartoon-ink-lead), 0 24px 64px color-mix(in srgb, var(--foreground) 12%, transparent); --shadow-sm: 0 2px 8px color-mix(in srgb, var(--shadow-color) 6%, transparent); --shadow-md: 0 4px 16px color-mix(in srgb, var(--shadow-color) 8%, transparent); --shadow-lg: 0 4px 20px color-mix(in srgb, var(--shadow-color) 12%, transparent); --shadow-xl: 0 8px 24px color-mix(in srgb, var(--shadow-color) 14%, transparent); --shadow-2xl: 0 25px 50px -12px color-mix(in srgb, var(--shadow-color) 25%, transparent); --shadow-card: var(--shadow-md); --shadow-dock: 0 0 20px color-mix(in srgb, var(--shadow-color) 14%, transparent); --shadow-dock-collapsed: 0 0 12px color-mix(in srgb, var(--shadow-color) 12%, transparent); --glass-material-rim: 0 0 0 0.5px color-mix(in srgb, var(--shadow-color) 5%, transparent); --cartoon-ink: oklch(from var(--foreground) clamp(0.28, l, 0.34) clamp(0.030, c, 0.050) h); --cartoon-ink-lead: color-mix(in oklab, var(--cartoon-ink) 32%, transparent); --cartoon-ink-mid: color-mix(in oklab, var(--cartoon-ink) 26%, transparent); --cartoon-ink-contact: color-mix(in oklab, var(--cartoon-ink) 18%, transparent); --cartoon-ink-fallback: #34251a; --shadow-cartoon-sm: -2px 2px 0 var(--cartoon-ink-lead), -3px 3px 0 var(--cartoon-ink-mid), -4px 4px 0 var(--cartoon-ink-contact); --shadow-cartoon-md: -3px 3px 0 var(--cartoon-ink-lead), -5px 5px 0 var(--cartoon-ink-mid), -7px 7px 0 var(--cartoon-ink-contact); --shadow-cartoon-lg: -4px 4px 0 var(--cartoon-ink-lead), -7px 7px 0 var(--cartoon-ink-mid), -11px 11px 0 var(--cartoon-ink-contact); --blob-shadow-offset: 0 4px; --blob-shadow-blur: 14px; --blob-shadow-color: color-mix(in srgb, var(--blob-color, var(--shadow-color)) 22%, var(--shadow-color)); --blob-shadow-strength: 20%; --blob-shadow-ambient: var(--blob-shadow-offset) var(--blob-shadow-blur) color-mix(in srgb, var(--blob-shadow-color) var(--blob-shadow-strength), transparent); --blob-shadow-contact-offset: 0 1px; --blob-shadow-contact-blur: 3px; --blob-shadow-contact-strength: 38%; --blob-shadow-contact: var(--blob-shadow-contact-offset) var(--blob-shadow-contact-blur) color-mix(in srgb, var(--blob-shadow-color) var(--blob-shadow-contact-strength), transparent); --blob-shadow-hover: 0 6px 20px color-mix(in srgb, var(--blob-shadow-color) 26%, transparent); --blob-shadow-contact-hover: 0 1px 4px color-mix(in srgb, var(--blob-shadow-color) 44%, transparent); } @supports not (color: oklch(from white l c h)) { :root { --cartoon-ink: var(--cartoon-ink-fallback); } } @media (prefers-contrast: more), (prefers-reduced-transparency: reduce) { :root { --cartoon-ink-lead: color-mix(in oklab, var(--cartoon-ink) 42%, transparent); --cartoon-ink-mid: color-mix(in oklab, var(--cartoon-ink) 34%, transparent); --cartoon-ink-contact: color-mix(in oklab, var(--cartoon-ink) 24%, transparent); } }
@@ -1 +1 @@
1
- :root { --metric-badge-min-height-stacked: 2.625rem; --metric-badge-padding-block-stacked: 0.375rem; --configurator-row-gap-mobile: 0.25rem; --configurator-row-gap-compact: 0.3125rem; --configurator-row-gap-comfortable: 0.375rem; --configurator-row-gap-spacious: 0.75rem; --configurator-row-py-mobile: 0.25rem; --configurator-row-py-compact: 0.375rem; --configurator-row-py-comfortable: 0.5rem; --configurator-row-py-spacious: 0.875rem; --configurator-section-size: var(--type-subheading); --configurator-section-weight: 600; --configurator-stage-min: 18rem; --configurator-preset-row-weight: 0.625rem; --configurator-preset-row-gap: 0.5rem; --configurator-divider: light-dark( color-mix(in srgb, var(--border) 55%, transparent), color-mix(in srgb, var(--foreground) 22%, transparent) ); --configurator-divider-section: light-dark( color-mix(in srgb, var(--border) 70%, transparent), color-mix(in srgb, var(--foreground) 30%, transparent) ); --configurator-section-tint: light-dark( transparent, color-mix(in srgb, var(--foreground) 3%, transparent) ); --select-font: inherit; }
1
+ :root { --configurator-row-gap-compact: 0.3125rem; --configurator-row-gap-comfortable: 0.375rem; --configurator-row-gap-spacious: 0.75rem; --configurator-row-py-compact: 0.375rem; --configurator-row-py-comfortable: 0.5rem; --configurator-row-py-spacious: 0.875rem; --configurator-section-size: var(--type-subheading); --configurator-section-weight: 600; --configurator-stage-min: 18rem; --configurator-preset-row-weight: 0.625rem; --configurator-preset-row-gap: 0.5rem; --configurator-divider: light-dark( color-mix(in srgb, var(--border) 55%, transparent), color-mix(in srgb, var(--foreground) 22%, transparent) ); --configurator-divider-section: light-dark( color-mix(in srgb, var(--border) 70%, transparent), color-mix(in srgb, var(--foreground) 30%, transparent) ); --configurator-section-tint: light-dark( transparent, color-mix(in srgb, var(--foreground) 3%, transparent) ); }
@@ -1 +1 @@
1
- :root { --ui-scale: 1; --ui-coarse-scale: 1.5; --control-floor: 0px; --control-h-xs: max(calc(1.75rem * var(--ui-scale)), var(--control-floor)); --control-h-sm: max(calc(2.25rem * var(--ui-scale)), var(--control-floor)); --control-h-md: max(calc(2.5rem * var(--ui-scale)), var(--control-floor)); --control-h-lg: max(calc(2.75rem * var(--ui-scale)), var(--control-floor)); --control-text: calc(var(--type-small) * var(--ui-scale)); --control-text-sm: calc(var(--type-caption) * var(--ui-scale)); --ui-glyph: calc(1rem * var(--ui-scale)); --ui-glyph-sm: calc(0.875rem * var(--ui-scale)); --dropdown-text: var(--control-text); --dropdown-text-secondary: var(--control-text-sm); --dropdown-input-height: var(--control-h-md); --search-icon-size: var(--ui-glyph-sm); --search-button-size: var(--control-h-xs); --search-result-text: var(--control-text); --search-result-text-secondary: var(--control-text-sm); --size-icon-btn: 2.5rem; --icon-xs: 0.75rem; --icon-sm: 0.875rem; --icon-md: 1rem; --icon-lg: 1.25rem; --icon-xl: 1.5rem; --icon-2xl: 2rem; --icon-3xl: var(--size-icon-btn); --icon-hero: 3.5rem; --space-phi-5: 2.618rem; --space-phi-6: 4.236rem; --dock-h: calc(var(--size-icon-btn) + 0.75rem + 3px); --dock-margin: 0.5rem; --dock-menubar-reserve: 4rem; --dock-scale: calc(var(--ui-scale) * var(--dock-local-scale, 1)); --dock-local-scale: 1; --dock-mobile-scale: initial; --dock-coarse-scale: 0.78; --dock-icon-glyph-ratio: 0.5; --dock-icon-glyph-floor: 1rem; --dock-icon-glyph: max( calc(var(--dock-layer-height, calc(2.5rem * var(--dock-scale))) * var(--dock-icon-glyph-ratio)), var(--dock-icon-glyph-floor) ); --dock-control-glyph-size: var(--dock-icon-glyph); --dock-collapsed-summary-min-size: calc(var(--dock-layer-height, 2.5rem) * 0.85); --dock-collapsed-padding: calc(0.25rem * var(--dock-scale)); --dock-pill-h: calc( var(--dock-layer-height, 2.5rem) + 2 * var(--dock-padding-block, 0.375rem) ); --dock-scroll-safe-inset: calc(var(--focus-ring-width, 2px) + 1px); --dock-scroll-gutter: var(--dock-scroll-safe-inset); --dock-fisheye-amp: 0.6; --dock-fisheye-sigma: 64; --dock-fisheye-duration: 80ms; --dock-control-hover-bg: var(--glass-bg-resting); --dock-control-active-bg: var(--glass-bg-floating); --dock-control-specular-size: 22%; --dock-layer-rail-bg: transparent; --dock-layer-rail-divider: color-mix(in srgb, var(--border) 40%, transparent); --dock-layer-rail-hover: color-mix(in srgb, var(--accent) 30%, transparent); --dock-layer-rail-active: var(--glass-bg-floating); --dock-layer-tab-size: calc(1.75rem * var(--dock-scale)); --dock-section-zone-gap: var(--dock-gap, 0.25rem); --dock-active-bg: var(--dock-control-active-bg); --dock-active-color: var(--foreground); --dock-active-scale: 1; --dock-active-border: none; --dock-active-shadow: none; --dock-selected-accent: color-mix(in oklab, var(--foreground) 14%, transparent); --dock-ring: var(--focus-ring-shadow); --dock-control-press-bg: color-mix( in oklab, var(--glass-bg-resting), var(--foreground) 7% ); --dock-touch-target: 2.75rem; --dock-label-ratio: 0.5088; --touch-target: 2.75rem; }
1
+ :root { --ui-scale: 1; --ui-coarse-scale: 1.5; --control-floor: 0px; --control-h-xs: max(calc(1.75rem * var(--ui-scale)), var(--control-floor)); --control-h-sm: max(calc(2.25rem * var(--ui-scale)), var(--control-floor)); --control-h-md: max(calc(2.5rem * var(--ui-scale)), var(--control-floor)); --control-h-lg: max(calc(2.75rem * var(--ui-scale)), var(--control-floor)); --control-text: calc(var(--type-small) * var(--ui-scale)); --control-text-sm: calc(var(--type-caption) * var(--ui-scale)); --ui-glyph: calc(1rem * var(--ui-scale)); --ui-glyph-sm: calc(0.875rem * var(--ui-scale)); --dropdown-text: var(--control-text); --dropdown-text-secondary: var(--control-text-sm); --dropdown-input-height: var(--control-h-md); --search-icon-size: var(--ui-glyph-sm); --search-button-size: var(--control-h-xs); --search-result-text: var(--control-text); --search-result-text-secondary: var(--control-text-sm); --size-icon-btn: 2.5rem; --icon-xs: 0.75rem; --icon-sm: 0.875rem; --icon-md: 1rem; --icon-lg: 1.25rem; --icon-xl: 1.5rem; --icon-2xl: 2rem; --icon-3xl: var(--size-icon-btn); --icon-hero: 3.5rem; --space-phi-5: 2.618rem; --space-phi-6: 4.236rem; --dock-h: calc(var(--size-icon-btn) + 0.75rem + 3px); --dock-scale: calc(var(--ui-scale) * var(--dock-local-scale, 1)); --dock-local-scale: 1; --dock-mobile-scale: initial; --dock-coarse-scale: 0.78; --dock-icon-glyph-ratio: 0.5; --dock-icon-glyph-floor: 1rem; --dock-icon-glyph: max( calc(var(--dock-layer-height, calc(2.5rem * var(--dock-scale))) * var(--dock-icon-glyph-ratio)), var(--dock-icon-glyph-floor) ); --dock-control-glyph-size: var(--dock-icon-glyph); --dock-collapsed-summary-min-size: calc(var(--dock-layer-height, 2.5rem) * 0.85); --dock-collapsed-padding: calc(0.25rem * var(--dock-scale)); --dock-scroll-safe-inset: calc(var(--focus-ring-width, 2px) + 1px); --dock-scroll-gutter: var(--dock-scroll-safe-inset); --dock-control-hover-bg: var(--glass-bg-resting); --dock-control-active-bg: var(--glass-bg-floating); --dock-control-specular-size: 22%; --dock-layer-rail-bg: transparent; --dock-layer-rail-divider: color-mix(in srgb, var(--border) 40%, transparent); --dock-layer-rail-hover: color-mix(in srgb, var(--accent) 30%, transparent); --dock-layer-rail-active: var(--glass-bg-floating); --dock-layer-tab-size: calc(1.75rem * var(--dock-scale)); --dock-active-bg: var(--dock-control-active-bg); --dock-active-color: var(--foreground); --dock-active-scale: 1; --dock-active-border: none; --dock-active-shadow: none; --dock-selected-accent: color-mix(in oklab, var(--foreground) 14%, transparent); --dock-ring: var(--focus-ring-shadow); --dock-control-press-bg: color-mix( in oklab, var(--glass-bg-resting), var(--foreground) 7% ); --dock-touch-target: 2.75rem; --dock-label-ratio: 0.5088; --touch-target: 2.75rem; }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Runtime design tokens — the JS/TS projection of glass-ui's CSS custom properties.
3
+ *
4
+ * CSS tokens in `src/styles/tokens.css` drive the rendered UI. Some contexts
5
+ * (echarts configs, Canvas 2D, WebGL, canvas-rendered charts) cannot resolve
6
+ * CSS variables at render time — they need literal numbers and strings.
7
+ *
8
+ * This module provides literal runtime values and the public semantic manifest.
9
+ */
10
+ /** Chart container heights (px). Match `--chart-height-*` in tokens.css. */
11
+ export declare const chartHeights: {
12
+ readonly compact: 240;
13
+ readonly default: 360;
14
+ readonly large: 400;
15
+ };
16
+ /** Echarts grid margin (px). Matches `--chart-margin` in tokens.css. */
17
+ export declare const chartMargin = 20;
18
+ /**
19
+ * Neutral divider colors for chart gridlines, axis ticks, overlays.
20
+ * rgba literals — echarts / Canvas 2D can't parse CSS vars in color options.
21
+ * Match `--color-divider-*` in tokens.css.
22
+ */
23
+ export declare const chartColors: {
24
+ readonly dividerSubtle: "rgba(128, 128, 128, 0.05)";
25
+ readonly dividerMedium: "rgba(128, 128, 128, 0.4)";
26
+ readonly dividerStrong: "rgba(128, 128, 128, 0.7)";
27
+ };
28
+ /** Default form-select minimum width (px). Matches `--input-min-width-sm`. */
29
+ export declare const minWidthInputSm = 80;
30
+ /**
31
+ * Stagger increments (ms) for animation cascades driven from JS
32
+ * (e.g. echarts `animationDelay: (idx) => idx * motionStagger.default`,
33
+ * Vue inline-style binding) so the JS-driven cascade and CSS-driven
34
+ * while CSS keeps only the default shared rung:
35
+ *
36
+ * - `tight` (40ms) — dense row cascades (StatsCards row strip,
37
+ * results-table `:nth-child` delays)
38
+ * - `default` (80ms) — canonical row stagger (ResultStack, bar
39
+ * entrance, useStaggerReveal default)
40
+ * - `relaxed` (120ms) — wider series cascades (TimeSeriesChart)
41
+ *
42
+ */
43
+ export declare const motionStagger: {
44
+ readonly tight: 40;
45
+ readonly default: 80;
46
+ readonly relaxed: 120;
47
+ };
48
+ export * from "./tokens/manifest";
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Runtime design tokens — the JS/TS projection of glass-ui's CSS custom properties.
3
+ *
4
+ * CSS tokens in `src/styles/tokens.css` drive the rendered UI. Some contexts
5
+ * (echarts configs, Canvas 2D, WebGL, canvas-rendered charts) cannot resolve
6
+ * CSS variables at render time — they need literal numbers and strings.
7
+ *
8
+ * This module provides literal runtime values and the public semantic manifest.
9
+ */
10
+
11
+ /** Chart container heights (px). Match `--chart-height-*` in tokens.css. */
12
+ export const chartHeights = {
13
+ compact: 240,
14
+ default: 360,
15
+ large: 400,
16
+ } as const;
17
+
18
+ /** Echarts grid margin (px). Matches `--chart-margin` in tokens.css. */
19
+ export const chartMargin = 20;
20
+
21
+ /**
22
+ * Neutral divider colors for chart gridlines, axis ticks, overlays.
23
+ * rgba literals — echarts / Canvas 2D can't parse CSS vars in color options.
24
+ * Match `--color-divider-*` in tokens.css.
25
+ */
26
+ export const chartColors = {
27
+ dividerSubtle: "rgba(128, 128, 128, 0.05)",
28
+ dividerMedium: "rgba(128, 128, 128, 0.4)",
29
+ dividerStrong: "rgba(128, 128, 128, 0.7)",
30
+ } as const;
31
+
32
+ /** Default form-select minimum width (px). Matches `--input-min-width-sm`. */
33
+ export const minWidthInputSm = 80;
34
+
35
+ /**
36
+ * Stagger increments (ms) for animation cascades driven from JS
37
+ * (e.g. echarts `animationDelay: (idx) => idx * motionStagger.default`,
38
+ * Vue inline-style binding) so the JS-driven cascade and CSS-driven
39
+ * while CSS keeps only the default shared rung:
40
+ *
41
+ * - `tight` (40ms) — dense row cascades (StatsCards row strip,
42
+ * results-table `:nth-child` delays)
43
+ * - `default` (80ms) — canonical row stagger (ResultStack, bar
44
+ * entrance, useStaggerReveal default)
45
+ * - `relaxed` (120ms) — wider series cascades (TimeSeriesChart)
46
+ *
47
+ */
48
+ export const motionStagger = {
49
+ tight: 40,
50
+ default: 80,
51
+ relaxed: 120,
52
+ } as const;
53
+
54
+ export * from "./tokens/manifest";
@@ -1 +1 @@
1
- @layer components { .fade-enter-active, .fade-leave-active { transition: opacity var(--duration-fast) var(--ease-standard); } .fade-enter-from, .fade-leave-to { opacity: 0; } .route-enter { animation: gl-route-enter var(--spring-snappy-duration) var(--spring-snappy) backwards; } .tab-fade-enter-active, .tab-fade-leave-active { transition: opacity var(--duration-fast) var(--ease-standard); } .tab-fade-enter-from, .tab-fade-leave-to { opacity: 0; } .pane-swap-enter-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--spring-smooth-duration) var(--spring-smooth); } .pane-swap-leave-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out); } .pane-swap-enter-from { opacity: 0; transform: translateX(0.75rem); } .pane-swap-leave-to { opacity: 0; transform: translateX(-0.75rem); } .metric-swap-enter-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--spring-smooth-duration) var(--spring-smooth); } .metric-swap-leave-active { transition: opacity var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard); } .metric-swap-enter-from, .metric-swap-leave-to { opacity: 0; transform: translateY(0.375rem) scale(0.95); } .dock-in { animation: dock-in var(--spring-snappy-duration) var(--spring-snappy) both; transform-origin: center bottom; } @media (prefers-reduced-motion: reduce) { .fade-enter-active, .fade-leave-active, .tab-fade-enter-active, .tab-fade-leave-active, .pane-swap-enter-active, .pane-swap-leave-active, .metric-swap-enter-active, .metric-swap-leave-active { transition-duration: 0.1s !important; } .pane-swap-enter-active, .pane-swap-leave-active, .metric-swap-enter-active, .metric-swap-leave-active { transition-property: opacity !important; transition-duration: 0.15s !important; animation-duration: 0.01ms !important; } .pane-swap-enter-from, .pane-swap-leave-to, .metric-swap-enter-from, .metric-swap-leave-to { transform: none !important; } .dock-in { animation-duration: 0.01ms !important; transform: none !important; } .route-enter { animation: gl-route-fade var(--duration-fast) var(--ease-out) backwards; } } } @keyframes gl-route-enter { from { opacity: 0; transform: translateY(1.25rem); } to { opacity: 1; transform: none; } } @keyframes gl-route-fade { from { opacity: 0; } to { opacity: 1; } }
1
+ @layer components { .fade-enter-active, .fade-leave-active { transition: opacity var(--duration-fast) var(--ease-standard); } .fade-enter-from, .fade-leave-to { opacity: 0; } .tab-fade-enter-active, .tab-fade-leave-active { transition: opacity var(--duration-fast) var(--ease-standard); } .tab-fade-enter-from, .tab-fade-leave-to { opacity: 0; } .pane-swap-enter-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--spring-smooth-duration) var(--spring-smooth); } .pane-swap-leave-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out); } .pane-swap-enter-from { opacity: 0; transform: translateX(0.75rem); } .pane-swap-leave-to { opacity: 0; transform: translateX(-0.75rem); } .metric-swap-enter-active { transition: opacity var(--duration-normal) var(--ease-out), transform var(--spring-smooth-duration) var(--spring-smooth); } .metric-swap-leave-active { transition: opacity var(--duration-fast) var(--ease-standard), transform var(--duration-fast) var(--ease-standard); } .metric-swap-enter-from, .metric-swap-leave-to { opacity: 0; transform: translateY(0.375rem) scale(0.95); } .dock-in { animation: dock-in var(--spring-snappy-duration) var(--spring-snappy) both; transform-origin: center bottom; } @media (prefers-reduced-motion: reduce) { .fade-enter-active, .fade-leave-active, .tab-fade-enter-active, .tab-fade-leave-active, .pane-swap-enter-active, .pane-swap-leave-active, .metric-swap-enter-active, .metric-swap-leave-active { transition-duration: 0.1s !important; } .pane-swap-enter-active, .pane-swap-leave-active, .metric-swap-enter-active, .metric-swap-leave-active { transition-property: opacity !important; transition-duration: 0.15s !important; animation-duration: 0.01ms !important; } .pane-swap-enter-from, .pane-swap-leave-to, .metric-swap-enter-from, .metric-swap-leave-to { transform: none !important; } .dock-in { animation-duration: 0.01ms !important; transform: none !important; } } }
@@ -1 +1 @@
1
- @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("System Font"), local(".SFNS-Regular"), local(".SFNSText-Regular"), local("-apple-system"); ascent-override: 92.3784%; descent-override: 19.7572%; size-adjust: 112.3639%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Segoe UI"), local("SegoeUI"); ascent-override: 98.3348%; descent-override: 21.0311%; size-adjust: 105.5577%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Roboto Regular"), local("Roboto-Regular"); ascent-override: 98.6597%; descent-override: 21.1006%; size-adjust: 105.2101%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Arial"), local("ArialMT"); ascent-override: 98.8763%; descent-override: 21.147%; line-gap-override: 0%; size-adjust: 104.9796%; } @font-face { font-family: "Fira Code Fallback"; src: local("SF Mono"), local("SFMono-Regular"), local("Menlo"), local("Consolas"), local("Courier New"), local("Roboto Mono Regular"); ascent-override: 99.0161%; descent-override: 32.2052%; size-adjust: 99.9837%; } :root { --type-admin-label: 0.625rem; --type-micro: 0.6875rem; --type-caption: clamp( 0.75rem, 0.71rem + 0.21vw, 1rem ); --type-small: clamp( 0.875rem, 0.8rem + 0.25vw, 1.25rem ); --type-body: clamp( 1rem, 0.92rem + 0.27vw, 1.375rem ); --type-prose: clamp( 1.125rem, 1.04rem + 0.28vw, 1.5rem ); --type-subheading: 1.272rem; --type-heading: 1.618rem; --type-title: 2.058rem; --type-display-1: clamp(1.618rem, 1.2rem + 1.6vw, 2.618rem); --type-display-2: clamp(2.058rem, 1.5rem + 2.2vw, 3.33rem); --type-display-3: clamp(2.618rem, 2rem + 3vw, 4.236rem); --type-display-4: clamp(3.33rem, 2.5rem + 4vw, 5.382rem); --type-display-5: clamp(4.236rem, 3.5rem + 6vw, 6.854rem); --type-display-mega: clamp( 5.382rem, 4rem + 9vw, 11.089rem ); --type-display-hero: clamp( 6.854rem, 4.5rem + 12vw, 17.942rem ); --type-display-audacious: clamp( 8.728rem, 5rem + 16vw, 22rem ); --type-weight-display: 600; --type-weight-heading: 700; --type-weight-title: 700; }
1
+ @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("System Font"), local(".SFNS-Regular"), local(".SFNSText-Regular"), local("-apple-system"); ascent-override: 92.3784%; descent-override: 19.7572%; size-adjust: 112.3639%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Segoe UI"), local("SegoeUI"); ascent-override: 98.3348%; descent-override: 21.0311%; size-adjust: 105.5577%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Roboto Regular"), local("Roboto-Regular"); ascent-override: 98.6597%; descent-override: 21.1006%; size-adjust: 105.2101%; } @font-face { font-family: "Plus Jakarta Sans Fallback"; src: local("Arial"), local("ArialMT"); ascent-override: 98.8763%; descent-override: 21.147%; line-gap-override: 0%; size-adjust: 104.9796%; } @font-face { font-family: "Fira Code Fallback"; src: local("SF Mono"), local("SFMono-Regular"), local("Menlo"), local("Consolas"), local("Courier New"), local("Roboto Mono Regular"); ascent-override: 99.0161%; descent-override: 32.2052%; size-adjust: 99.9837%; } :root { --type-admin-label: 0.625rem; --type-micro: 0.6875rem; --type-caption: clamp( 0.75rem, 0.71rem + 0.21vw, 1rem ); --type-small: clamp( 0.875rem, 0.8rem + 0.25vw, 1.25rem ); --type-body: clamp( 1rem, 0.92rem + 0.27vw, 1.375rem ); --type-prose: clamp( 1.125rem, 1.04rem + 0.28vw, 1.5rem ); --type-subheading: 1.272rem; --type-heading: 1.618rem; --type-title: 2.058rem; --type-display-1: clamp(1.618rem, 1.2rem + 1.6vw, 2.618rem); --type-display-2: clamp(2.058rem, 1.5rem + 2.2vw, 3.33rem); --type-proportional-ratio: 0.7861513777574233; --type-proportional-headline-size: var(--type-display-2); --type-proportional-kicker-size: calc( var(--type-proportional-headline-size) * var(--type-proportional-ratio) ); --type-proportional-leading: 1; --type-display-3: clamp(2.618rem, 2rem + 3vw, 4.236rem); --type-display-4: clamp(3.33rem, 2.5rem + 4vw, 5.382rem); --type-display-5: clamp(4.236rem, 3.5rem + 6vw, 6.854rem); --type-display-mega: clamp( 5.382rem, 4rem + 9vw, 11.089rem ); --type-display-hero: clamp( 6.854rem, 4.5rem + 12vw, 17.942rem ); --type-display-audacious: clamp( 8.728rem, 5rem + 16vw, 22rem ); --font-display-weight: 600; --type-weight-display: var(--font-display-weight); --type-weight-heading: 700; --type-weight-title: 700; }
@@ -1 +1 @@
1
- body { font-family: var(--font-text); color: var(--foreground); font-size: var(--type-body); line-height: var(--type-leading-body); } @utility text-display-audacious { font-family: var(--font-display); font-size: var(--type-display-audacious); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: 600; text-wrap: balance; } @utility text-hero { font-family: var(--font-display); font-size: var(--text-hero-size, var(--type-display-audacious)); line-height: var(--text-hero-leading, 0.84); letter-spacing: var(--text-hero-tracking, -0.03em); font-weight: 300; font-feature-settings: "ss01", "tnum", "lnum"; font-variant-numeric: tabular-nums lining-nums; font-optical-sizing: auto; display: inline-block; max-inline-size: 100%; white-space: nowrap; text-wrap: nowrap; } @utility text-display-hero { font-family: var(--font-display); font-size: var(--type-display-hero); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: 600; text-wrap: balance; } @utility text-display-mega { font-family: var(--font-display); font-size: var(--type-display-mega); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: 600; text-wrap: balance; } @utility text-display-5 { font-family: var(--font-display); font-size: var(--type-display-5); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: 600; text-wrap: balance; } @utility text-display-4 { font-family: var(--font-display); font-size: var(--type-display-4); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: 600; text-wrap: balance; } @utility text-display-3 { font-family: var(--font-display); font-size: var(--type-display-3); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-2 { font-family: var(--font-display); font-size: var(--type-display-2); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display { font-family: var(--font-display); font-size: var(--type-display-1); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-title { font-family: var(--font-text); font-size: var(--type-title); line-height: var(--type-leading-heading); letter-spacing: var(--type-tracking-tight); font-weight: var(--type-weight-title); text-wrap: balance; } @utility text-heading { font-family: var(--font-text); font-size: var(--type-heading); line-height: var(--type-leading-heading); font-weight: var(--type-weight-heading); text-wrap: balance; } @utility text-subheading { font-family: var(--font-text); font-size: var(--type-subheading); line-height: var(--type-leading-body); font-weight: 600; text-wrap: balance; } @utility dock-label { font-family: var(--font-text); font-size: var( --dock-label-size, calc(var(--dock-control-size, 2.5rem) * var(--dock-label-ratio)) ); line-height: var(--type-leading-body); font-weight: 400; letter-spacing: var(--type-tracking-normal); } @utility text-prose { font-family: var(--font-text); font-size: var(--type-prose); line-height: var(--type-leading-prose); font-weight: 400; text-wrap: pretty; } @utility text-body { font-family: var(--font-text); font-size: var(--type-body); line-height: var(--type-leading-body); font-weight: 400; text-wrap: pretty; } @utility text-small { font-family: var(--font-text); font-size: var(--type-small); line-height: var(--type-leading-small); font-weight: 400; } @utility text-caption { font-family: var(--font-text); font-size: var(--type-caption); line-height: var(--type-leading-caption); font-style: italic; font-weight: 400; } @utility text-micro { font-size: var(--type-micro); line-height: 1.25; } @utility text-admin-label { font-family: var(--font-mono); font-size: var(--type-admin-label); line-height: 1; text-transform: uppercase; letter-spacing: var(--type-tracking-caps); font-weight: 500; }
1
+ body { font-family: var(--font-text); color: var(--foreground); font-size: var(--type-body); line-height: var(--type-leading-body); } @utility text-proportional-headline { font-size: var(--type-proportional-headline-size); line-height: var(--type-proportional-leading); } @utility text-proportional-kicker { font-size: var(--type-proportional-kicker-size); line-height: var(--type-proportional-leading); } @utility text-display-audacious { font-family: var(--font-display); font-size: var(--type-display-audacious); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-hero { font-family: var(--font-display); font-size: var(--text-hero-size, var(--type-display-audacious)); line-height: var(--text-hero-leading, 0.84); letter-spacing: var(--text-hero-tracking, -0.03em); font-weight: 300; font-feature-settings: "ss01", "tnum", "lnum"; font-variant-numeric: tabular-nums lining-nums; font-optical-sizing: auto; display: inline-block; max-inline-size: 100%; white-space: nowrap; text-wrap: nowrap; } @utility text-display-hero { font-family: var(--font-display); font-size: var(--type-display-hero); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-mega { font-family: var(--font-display); font-size: var(--type-display-mega); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-5 { font-family: var(--font-display); font-size: var(--type-display-5); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-4 { font-family: var(--font-display); font-size: var(--type-display-4); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-3 { font-family: var(--font-display); font-size: var(--type-display-3); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display-2 { font-family: var(--font-display); font-size: var(--type-display-2); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-display { font-family: var(--font-display); font-size: var(--type-display-1); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-optical-sizing: auto; font-weight: var(--type-weight-display); text-wrap: balance; } @utility text-title { font-family: var(--font-text); font-size: var(--type-title); line-height: var(--type-leading-heading); letter-spacing: var(--type-tracking-tight); font-weight: var(--type-weight-title); text-wrap: balance; } @utility text-heading { font-family: var(--font-text); font-size: var(--type-heading); line-height: var(--type-leading-heading); font-weight: var(--type-weight-heading); text-wrap: balance; } @utility text-subheading { font-family: var(--font-text); font-size: var(--type-subheading); line-height: var(--type-leading-body); font-weight: 600; text-wrap: balance; } @utility dock-label { font-family: var(--font-text); font-size: var( --dock-label-size, calc(var(--dock-control-size, 2.5rem) * var(--dock-label-ratio)) ); line-height: var(--type-leading-body); font-weight: 400; letter-spacing: var(--type-tracking-normal); } @utility text-prose { font-family: var(--font-text); font-size: var(--type-prose); line-height: var(--type-leading-prose); font-weight: 400; text-wrap: pretty; } @utility text-body { font-family: var(--font-text); font-size: var(--type-body); line-height: var(--type-leading-body); font-weight: 400; text-wrap: pretty; } @utility text-small { font-family: var(--font-text); font-size: var(--type-small); line-height: var(--type-leading-small); font-weight: 400; } @utility text-caption { font-family: var(--font-text); font-size: var(--type-caption); line-height: var(--type-leading-caption); font-style: italic; font-weight: 400; } @utility text-micro { font-size: var(--type-micro); line-height: 1.25; } @utility text-admin-label { font-family: var(--font-mono); font-size: var(--type-admin-label); line-height: 1; text-transform: uppercase; letter-spacing: var(--type-tracking-caps); font-weight: 500; }
@@ -1 +1 @@
1
- @utility text-math { font-family: var(--font-text); font-style: italic; } @utility text-math-body { font-family: var(--font-text); font-size: var(--type-prose); line-height: var(--type-leading-prose); font-style: italic; } @utility text-mono-caption { font-family: var(--font-mono); font-size: var(--type-caption); letter-spacing: var(--type-tracking-caps); text-transform: uppercase; } @utility text-mono-small { font-family: var(--font-mono); font-size: var(--type-small); line-height: var(--type-leading-small); } @utility text-mono-prose { font-family: var(--font-mono); font-size: var(--type-prose); line-height: var(--type-leading-prose); letter-spacing: 0.02em; } @utility text-mono-micro { font-family: var(--font-mono); font-size: var(--type-micro); line-height: 1.25; letter-spacing: 0.025em; } @utility cm-serif { font-family: var(--font-serif-math, serif); } @utility fira-code { font-family: var(--font-mono); font-feature-settings: "liga", "calt"; } @utility fourier-f { font-family: var(--font-display); font-style: italic; font-size: 1.35em; line-height: 1; vertical-align: -0.05em; font-weight: 700; display: inline-block; } @layer components { .text-pane-title { font-family: var(--font-display); font-size: clamp(2.4rem, 1.8rem + 2vw, 3.33rem); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-tight); font-weight: 600; font-optical-sizing: auto; } @container (min-width: 40rem) { .text-pane-title { font-size: var(--type-display-3); } } .section-label { @apply text-mono-caption; color: var(--muted-foreground); } .section-label--tinted { color: var(--section-label-accent, var(--section-color-7)); } :root:not(.dark) [data-paper-field] .section-label:not(.section-label--tinted) { color: color-mix(in oklab, var(--neutral-5), var(--foreground) 22%); } .tabular-nums { font-variant-numeric: tabular-nums; } .char-stagger > .char { display: inline-block; animation: fade-in var(--spring-smooth-duration) var(--spring-smooth, ease) backwards; animation-delay: calc(var(--char-index, 0) * var(--char-stagger-step)); } .text-engraved { color: var(--muted-foreground); text-shadow: var(--text-shadow-engraved); } }
1
+ @utility text-math { font-family: var(--font-text); font-style: italic; } @utility text-math-body { font-family: var(--font-text); font-size: var(--type-prose); line-height: var(--type-leading-prose); font-style: italic; } @utility text-mono-caption { font-family: var(--font-mono); font-size: var(--type-caption); letter-spacing: var(--type-tracking-caps); text-transform: uppercase; } @utility text-mono-small { font-family: var(--font-mono); font-size: var(--type-small); line-height: var(--type-leading-small); } @utility text-mono-prose { font-family: var(--font-mono); font-size: var(--type-prose); line-height: var(--type-leading-prose); letter-spacing: 0.02em; } @utility text-mono-micro { font-family: var(--font-mono); font-size: var(--type-micro); line-height: 1.25; letter-spacing: 0.025em; } @utility cm-serif { font-family: var(--font-serif-math, serif); } @utility fira-code { font-family: var(--font-mono); font-feature-settings: "liga", "calt"; } @utility fourier-f { font-family: var(--font-display); font-style: italic; font-size: 1.35em; line-height: 1; vertical-align: -0.05em; font-weight: 700; display: inline-block; } @layer components { .text-pane-title { font-family: var(--font-display); font-size: var(--type-display-2); line-height: var(--type-leading-display); letter-spacing: var(--type-tracking-display); font-weight: var(--type-weight-display); font-optical-sizing: auto; } @container (min-width: 40rem) { .text-pane-title { font-size: var(--type-display-3); } } .section-label { @apply text-mono-caption; color: var(--muted-foreground); } .section-label--tinted { color: var(--section-label-accent, var(--section-color-7)); } :root:not(.dark) [data-paper-field] .section-label:not(.section-label--tinted) { color: color-mix(in oklab, var(--neutral-5), var(--foreground) 22%); } .tabular-nums { font-variant-numeric: tabular-nums lining-nums; } .text-engraved { color: var(--muted-foreground); text-shadow: var(--text-shadow-engraved); } }
@@ -1 +1 @@
1
- @media (prefers-reduced-motion: reduce) { *:not([data-allow-motion]) { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; } *:not([data-allow-motion]) { transition-duration: 0.1s !important; transition-property: opacity, color, background-color, border-color, box-shadow !important; } [data-allow-motion] { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } html.no-transition, html.no-transition *:not([data-allow-motion]), html.no-transition *:not([data-allow-motion])::before, html.no-transition *:not([data-allow-motion])::after { transition-duration: 0s !important; } @media (forced-colors: active) { .focus-ring:focus-visible, .glass-btn:focus-visible, .interactive-item:focus-visible, .btn-pill:focus-visible, .dock-icon-button:focus-visible, .dock-tab-button:focus-visible, .dock-select-trigger:focus-visible, .dock-dropdown-trigger:focus-visible, .input-pill:focus, .input-pill:focus-visible { outline: 2px solid Highlight; outline-offset: 2px; } .hairline-accent, .glass-dock { border: 1px solid CanvasText; } } @media (pointer: coarse) { [data-icon-only], [data-part="trigger"], .segmented-tabs__trigger { min-block-size: var(--touch-target, 2.75rem); min-inline-size: var(--touch-target, 2.75rem); } } @utility touch-hit-area { position: relative; @media (pointer: coarse) { &::before { content: ""; position: absolute; top: 50%; left: 50%; translate: -50% -50%; min-width: var(--touch-target, 2.75rem); min-height: var(--touch-target, 2.75rem); pointer-events: none; } } }
1
+ @media (prefers-reduced-motion: reduce) { *:not([data-allow-motion]) { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; } *:not([data-allow-motion]) { transition-duration: 0.1s !important; transition-property: opacity, color, background-color, border-color, box-shadow !important; } [data-allow-motion] { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; } } html.no-transition, html.no-transition *:not([data-allow-motion]), html.no-transition *:not([data-allow-motion])::before, html.no-transition *:not([data-allow-motion])::after { transition-duration: 0s !important; } @media (forced-colors: active) { .focus-ring:focus-visible, .interactive-item:focus-visible, .dock-icon-button:focus-visible, .dock-tab-button:focus-visible, .dock-select-trigger:focus-visible, .dock-dropdown-trigger:focus-visible, .dark-mode-toggle-button:focus-visible, .field-control:focus-visible, .input-pill:focus, .input-pill:focus-visible { outline: 2px solid Highlight; outline-offset: 2px; } .hairline-accent, .glass-dock { border: 1px solid CanvasText; } } @utility touch-hit-area { position: relative; @media (pointer: coarse) { &::before { content: ""; position: absolute; top: 50%; left: 50%; translate: -50% -50%; min-width: var(--touch-target, 2.75rem); min-height: var(--touch-target, 2.75rem); pointer-events: none; } } }
@@ -1 +1 @@
1
- @layer components { .status-dot { display: inline-block; width: 0.5rem; height: 0.5rem; border-radius: var(--radius-pill); flex-shrink: 0; transition: color var(--duration-fast) var(--ease-standard), background var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard); } .depth-text { --depth-color-primary: var(--primary); color: var(--depth-color-primary); text-shadow: var(--text-shadow-depth); } .preserve-3d { transform-style: preserve-3d; } .ios input, .ios select, .ios textarea, .ios [contenteditable] { font-size: max(1rem, 1em); } .fading-scroll { mask-image: linear-gradient( to right, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } .fading-scroll--x { overflow-x: auto; mask-image: linear-gradient( to right, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } .fading-scroll--y { overflow-y: auto; mask-image: linear-gradient( to bottom, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } @supports (animation-timeline: scroll()) { @keyframes gl-fade-start-in { from { --fade-start: 0px; } to { --fade-start: var(--fade-scroll-width); } } @keyframes gl-fade-end-out { from { --fade-end: var(--fade-scroll-width); } to { --fade-end: 0px; } } .fading-scroll--x[data-fade-start] { animation: gl-fade-start-in linear both; animation-timeline: scroll(self inline); animation-range: 0 var(--fade-scroll-width); } .fading-scroll--x[data-fade-end] { animation: gl-fade-end-out linear both; animation-timeline: scroll(self inline); animation-range: calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--x[data-fade-start][data-fade-end] { animation: gl-fade-start-in linear both, gl-fade-end-out linear both; animation-timeline: scroll(self inline), scroll(self inline); animation-range: 0 var(--fade-scroll-width), calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--y[data-fade-start] { animation: gl-fade-start-in linear both; animation-timeline: scroll(self block); animation-range: 0 var(--fade-scroll-width); } .fading-scroll--y[data-fade-end] { animation: gl-fade-end-out linear both; animation-timeline: scroll(self block); animation-range: calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--y[data-fade-start][data-fade-end] { animation: gl-fade-start-in linear both, gl-fade-end-out linear both; animation-timeline: scroll(self block), scroll(self block); animation-range: 0 var(--fade-scroll-width), calc(100% - var(--fade-scroll-width)) 100%; } } .deferred-section { content-visibility: auto; contain-intrinsic-size: auto var(--deferred-section-size, 30rem); } .deferred-section--cached { content-visibility: hidden; contain-intrinsic-size: auto var(--deferred-section-size, 30rem); } .card-scroll-host { contain: layout style paint; scroll-timeline: --card-scroll block; } .scroll-gutter-stable { scrollbar-gutter: stable; } .gold-shimmer { --metal-shimmer-color: gold; background: linear-gradient(90deg, var(--color-gold-dark), var(--color-gold-light), var(--color-gold), var(--color-gold-light), var(--color-gold-dark)); background-size: 250% 100%; background-clip: text; -webkit-background-clip: text; color: transparent; } @media (prefers-reduced-motion: no-preference) { .gold-shimmer { animation: metal-shimmer-sweep var(--duration-shimmer) linear infinite; } } .kbd { display: inline-flex; align-items: center; justify-content: center; min-height: 1.5rem; min-width: 1.5rem; padding: 0 0.375rem; font-family: var(--font-mono); font-size: var(--type-micro); background: var(--muted); border: 1px solid var(--border); border-radius: var(--radius-sm); box-shadow: 0 1px 0 1px color-mix(in srgb, var(--border) 30%, transparent); line-height: 1; } } @utility ghost-slot { border: 1px dashed color-mix(in srgb, var(--foreground) 22%, transparent); border-radius: var(--radius-card); background: color-mix(in oklab, var(--glass-bg-wash), transparent 40%); color: var(--muted-foreground); }
1
+ @layer components { .depth-text { --depth-color-primary: var(--primary); color: var(--depth-color-primary); text-shadow: var(--text-shadow-depth); } .preserve-3d { transform-style: preserve-3d; } .ios input, .ios select, .ios textarea, .ios [contenteditable] { font-size: max(1rem, 1em); } .fading-scroll { mask-image: linear-gradient( to right, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } .fading-scroll--x { overflow-x: auto; mask-image: linear-gradient( to right, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } .fading-scroll--y { overflow-y: auto; mask-image: linear-gradient( to bottom, transparent 0, black var(--fade-start), black calc(100% - var(--fade-end)), transparent 100% ); } @supports (animation-timeline: scroll()) { @keyframes gl-fade-start-in { from { --fade-start: 0px; } to { --fade-start: var(--fade-scroll-width); } } @keyframes gl-fade-end-out { from { --fade-end: var(--fade-scroll-width); } to { --fade-end: 0px; } } .fading-scroll--x[data-fade-start] { animation: gl-fade-start-in linear both; animation-timeline: scroll(self inline); animation-range: 0 var(--fade-scroll-width); } .fading-scroll--x[data-fade-end] { animation: gl-fade-end-out linear both; animation-timeline: scroll(self inline); animation-range: calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--x[data-fade-start][data-fade-end] { animation: gl-fade-start-in linear both, gl-fade-end-out linear both; animation-timeline: scroll(self inline), scroll(self inline); animation-range: 0 var(--fade-scroll-width), calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--y[data-fade-start] { animation: gl-fade-start-in linear both; animation-timeline: scroll(self block); animation-range: 0 var(--fade-scroll-width); } .fading-scroll--y[data-fade-end] { animation: gl-fade-end-out linear both; animation-timeline: scroll(self block); animation-range: calc(100% - var(--fade-scroll-width)) 100%; } .fading-scroll--y[data-fade-start][data-fade-end] { animation: gl-fade-start-in linear both, gl-fade-end-out linear both; animation-timeline: scroll(self block), scroll(self block); animation-range: 0 var(--fade-scroll-width), calc(100% - var(--fade-scroll-width)) 100%; } } .deferred-section { content-visibility: auto; contain-intrinsic-size: auto var(--deferred-section-size, 30rem); } .deferred-section--cached { content-visibility: hidden; contain-intrinsic-size: auto var(--deferred-section-size, 30rem); } .card-scroll-host { contain: layout style paint; } .scroll-gutter-stable { scrollbar-gutter: stable; } .gold-shimmer { background: linear-gradient(90deg, var(--color-gold-dark), var(--color-gold-light), var(--color-gold), var(--color-gold-light), var(--color-gold-dark)); background-size: 250% 100%; background-clip: text; -webkit-background-clip: text; color: transparent; } @media (prefers-reduced-motion: no-preference) { .gold-shimmer { animation: metal-shimmer-sweep var(--duration-shimmer) linear infinite; } } .kbd { display: inline-flex; align-items: center; justify-content: center; min-height: 1.5rem; min-width: 1.5rem; padding: 0 0.375rem; font-family: var(--font-mono); font-size: var(--type-micro); background: var(--muted); border: 1px solid var(--border); border-radius: var(--radius-sm); box-shadow: 0 1px 0 1px color-mix(in srgb, var(--border) 30%, transparent); line-height: 1; } } @utility ghost-slot { border: 1px dashed color-mix(in srgb, var(--foreground) 22%, transparent); border-radius: var(--radius-card); background: color-mix(in oklab, var(--glass-bg-wash), transparent 40%); color: var(--muted-foreground); }
@@ -1 +1 @@
1
- @property --fade-start { syntax: "<length-percentage>"; inherits: false; initial-value: 0px; } @property --fade-end { syntax: "<length-percentage>"; inherits: false; initial-value: 0px; } @layer components { .section-description { font-size: var(--type-body); color: var(--muted-foreground); line-height: 1.5; text-wrap: pretty; } .labeled-field-label { font-family: var(--font-display); font-size: var(--type-body); color: var(--field-label-color, var(--muted-foreground)); cursor: help; } .labeled-field { --field-label-color: var(--muted-foreground); display: flex; flex-direction: column; inline-size: 100%; min-inline-size: 0; } .labeled-field:has(:user-invalid), .labeled-field.has-error { --field-label-color: var(--destructive); } .labeled-field-error { display: none; font-size: var(--type-small); color: var(--destructive); margin-block-start: 0.25rem; } .labeled-field:has(:user-invalid) .labeled-field-error, .labeled-field.has-error .labeled-field-error { display: block; } .labeled-field:has(:user-valid) .labeled-field-error, .labeled-field.has-valid .labeled-field-error { display: none; } .popover-content { border-radius: var(--radius-panel); color: var(--popover-foreground); outline: none; } .scrollbar-hidden { scrollbar-width: none; } .scrollbar-hidden::-webkit-scrollbar { display: none; } .scrollbar-thin { scrollbar-width: thin; scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track); } @supports not (scrollbar-color: auto) { .scrollbar-thin::-webkit-scrollbar { width: 8px; height: 8px; } .scrollbar-thin::-webkit-scrollbar-track { background: var(--scrollbar-track); } .scrollbar-thin::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); border-radius: var(--radius-pill); } } .focus-ring:focus-visible { outline: none; border-radius: var(--radius-pill); box-shadow: var(--focus-ring-shadow); } .hairline-accent { box-shadow: var(--border-hairline); } .interactive-item { scale: 1; border-radius: var(--radius-lg); user-select: none; transition: background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), scale var(--duration-fast) var(--transition-liquid-spatial); } .interactive-item:hover { background-color: color-mix(in srgb, var(--accent) 50%, transparent); } .interactive-item:focus-visible { outline: none; box-shadow: var(--focus-ring-shadow); } .interactive-item:active { scale: var(--scale-press-sm); } .interactive-item:disabled, .interactive-item[data-disabled] { pointer-events: none; opacity: var(--opacity-disabled); cursor: not-allowed; } .tap-squish { scale: 1; transition: background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), scale var(--duration-fast) var(--transition-liquid-spatial); transform-origin: center center; } .tap-squish:active { scale: var(--scale-press); } @media (prefers-reduced-motion: reduce) { .tap-squish:active { scale: 1; } } .glass-press { cursor: pointer; min-block-size: max(0px, var(--control-floor, 0px)); filter: brightness(calc(1 + var(--card-press-t, 0) * 0.04)); } @property --card-press-t { syntax: "<number>"; inherits: true; initial-value: 0; } }
1
+ @property --fade-start { syntax: "<length-percentage>"; inherits: false; initial-value: 0px; } @property --fade-end { syntax: "<length-percentage>"; inherits: false; initial-value: 0px; } @layer components { .section-description { font-size: var(--type-body); color: var(--muted-foreground); line-height: 1.5; text-wrap: pretty; } .popover-content { border-radius: var(--radius-panel); color: var(--popover-foreground); outline: none; } .scrollbar-hidden { scrollbar-width: none; } .scrollbar-hidden::-webkit-scrollbar { display: none; } .scrollbar-thin { scrollbar-width: thin; scrollbar-color: var(--scrollbar-thumb) var(--scrollbar-track); } @supports not (scrollbar-color: auto) { .scrollbar-thin::-webkit-scrollbar { width: 8px; height: 8px; } .scrollbar-thin::-webkit-scrollbar-track { background: var(--scrollbar-track); } .scrollbar-thin::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb); border-radius: var(--radius-pill); } } .focus-ring:focus-visible { outline: none; border-radius: var(--radius-pill); box-shadow: var(--focus-ring-shadow); } .hairline-accent { box-shadow: var(--border-hairline); } .interactive-item { scale: 1; border-radius: var(--radius-lg); user-select: none; transition: background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), scale var(--duration-fast) var(--transition-liquid-spatial); } .interactive-item:hover { background-color: color-mix(in srgb, var(--accent) 50%, transparent); } .interactive-item:focus-visible { outline: none; box-shadow: var(--focus-ring-shadow); } .interactive-item:active { scale: var(--scale-press-sm); } .interactive-item:disabled, .interactive-item[data-disabled] { pointer-events: none; opacity: var(--opacity-disabled); cursor: not-allowed; } .tap-squish { scale: 1; transition: background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), opacity var(--duration-fast) var(--ease-standard), scale var(--duration-fast) var(--transition-liquid-spatial); transform-origin: center center; } .tap-squish:not([data-press-armed]):active { scale: var(--scale-press); } @media (prefers-reduced-motion: reduce) { .tap-squish:not([data-press-armed]):active { scale: 1; } } }
@@ -1 +1 @@
1
- @utility scale-on-hover { scale: 1; transition: scale var(--spring-smooth-duration) var(--spring-smooth); &:hover { scale: var(--scale-hover); } } @utility twin-line-divider { --twin-line-catch: rgb(255 255 255 / 0.10); --twin-line-shadow: rgb(0 0 0 / 0.12); :where(.dark) & { --twin-line-catch: rgb(255 255 255 / 0.06); --twin-line-shadow: rgb(0 0 0 / 0.18); } } @utility transition-control { transition-property: background-color, color, box-shadow, border-color; transition-duration: var(--duration-control); transition-timing-function: var(--ease-standard); } @utility transition-collapse { transition-property: height, opacity; } @utility transition-disclosure { transition: rotate var(--spring-snappy-duration) var(--ease-cartoon-punch); } @utility sheet-animate { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=open]:fade-in data-[state=closed]:fade-out data-[state=open]:duration-[var(--duration-panel)] data-[state=closed]:duration-[var(--duration-fast)]; } .btn-punch { position: relative; --motion-weight: 1; --cartoon-press-t: 0; transition: scale var(--spring-smooth-duration) var(--ease-cartoon-punch); } .btn-punch > :not(.cartoon-cast) { --btn-glyph-pop: 0.05; transition: scale var(--duration-fast) var(--ease-cartoon-punch) var(--duration-fast); } .btn-punch:active > :not(.cartoon-cast) { scale: calc(1 + var(--btn-glyph-pop) * var(--motion-weight)); } @media (prefers-reduced-motion: reduce) { .btn-punch { --motion-weight: 0; transition: scale var(--spring-smooth-duration) var(--ease-standard); } .btn-punch > :not(.cartoon-cast) { transition: none; } } @utility table-cell { padding-inline: var(--table-cell-px, 1rem); padding-block: var(--table-cell-py, 1rem); } @utility table-head { height: var(--table-head-h, 3rem); padding-inline: var(--table-head-px, 1rem); } @utility rainbow-vivid { background: linear-gradient( to right, var(--rainbow-red), var(--rainbow-orange), var(--rainbow-yellow), var(--rainbow-green), var(--rainbow-blue), var(--rainbow-indigo), var(--rainbow-violet) ); } @utility rainbow-pastel { background: linear-gradient( to right, var(--rainbow-pastel-red), var(--rainbow-pastel-orange), var(--rainbow-pastel-yellow), var(--rainbow-pastel-green), var(--rainbow-pastel-blue), var(--rainbow-pastel-indigo), var(--rainbow-pastel-violet) ); } ::highlight(glass-search-mark) { background-color: var( --text-highlight-search-bg, color-mix(in srgb, var(--rainbow-pastel-yellow) 55%, transparent) ); color: var(--text-highlight-search-fg, inherit); } ::highlight(glass-mark) { background-color: var( --text-highlight-bg, color-mix(in srgb, var(--primary) 18%, transparent) ); color: var(--text-highlight-fg, inherit); } @utility btn-interactive { scale: 1; transition: background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), scale var(--spring-smooth-duration) var(--transition-liquid-spatial), opacity var(--duration-fast) var(--ease-standard); &:hover { scale: var(--scale-hover-btn); } &:active { scale: var(--scale-press); } &:disabled { opacity: var(--opacity-disabled); pointer-events: none; } &:focus-visible { box-shadow: var(--focus-ring-shadow); outline: none; transition: background-color var(--duration-fast) var(--ease-standard), color var(--duration-fast) var(--ease-standard), scale var(--spring-smooth-duration) var(--transition-liquid-spatial), opacity var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard); } }
1
+ @utility scale-on-hover { scale: 1; transition: scale var(--spring-smooth-duration) var(--spring-smooth); &:hover { scale: var(--scale-hover); } } @utility transition-control { transition-property: background-color, color, box-shadow, border-color; transition-duration: var(--duration-control); transition-timing-function: var(--ease-standard); } @utility transition-disclosure { transition: rotate var(--spring-snappy-duration) var(--ease-cartoon-punch); } @utility sheet-animate { @apply data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=open]:fade-in data-[state=closed]:fade-out data-[state=open]:duration-[calc(var(--duration-panel)*var(--motion-tempo))] data-[state=closed]:duration-[calc(var(--duration-fast)*var(--motion-tempo))]; } @utility table-cell { padding-inline: var(--table-cell-px, 1rem); padding-block: var(--table-cell-py, 1rem); } @utility table-head { height: var(--table-head-h, 3rem); padding-inline: var(--table-head-px, 1rem); } @utility rainbow-vivid { background: linear-gradient( to right, var(--rainbow-red), var(--rainbow-orange), var(--rainbow-yellow), var(--rainbow-green), var(--rainbow-blue), var(--rainbow-indigo), var(--rainbow-violet) ); } @utility rainbow-pastel { background: linear-gradient( to right, var(--rainbow-pastel-red), var(--rainbow-pastel-orange), var(--rainbow-pastel-yellow), var(--rainbow-pastel-green), var(--rainbow-pastel-blue), var(--rainbow-pastel-indigo), var(--rainbow-pastel-violet) ); }
@@ -1 +1 @@
1
- @layer components { .metric-badge { display: inline-flex; align-items: center; justify-content: center; text-align: center; scale: 1; gap: var(--metric-badge-gap, 0.125rem); max-width: var(--metric-badge-max-width, 8rem); min-height: var(--metric-badge-min-height, 1.5rem); padding: var(--metric-badge-padding-block, 0.125rem) var(--metric-badge-padding-inline, 0.5rem); overflow: hidden; flex-shrink: 0; line-height: 1; border: 1px solid var(--metric-badge-border, var(--glass-border-quiet)); border-radius: var(--metric-badge-radius, var(--radius-badge, var(--radius-pill))); background: var(--metric-badge-bg, var(--glass-bg-quiet)); backdrop-filter: var(--metric-badge-blur, var(--glass-blur-quiet)); box-shadow: var(--metric-badge-shadow, 0 1px 6px color-mix(in srgb, var(--shadow-color) 8%, transparent), var(--glass-highlight)); transition: background var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), translate var(--spring-smooth-duration) var(--spring-smooth), scale var(--spring-smooth-duration) var(--spring-smooth); } .metric-badge > span { line-height: 1; overflow-wrap: anywhere; } .metric-badge:hover { border-color: var(--metric-badge-hover-border, var(--glass-border-resting)); background: var(--metric-badge-hover-bg, var(--glass-bg-resting)); box-shadow: var(--metric-badge-hover-shadow, var(--shadow-cartoon-sm), var(--glass-highlight)); translate: 0 var(--metric-badge-hover-translate, -2px); scale: var(--metric-badge-hover-scale, 1.04); } .metric-badge:active { scale: var(--metric-badge-press-scale, 0.96); } .metric-badge:focus-visible { outline: none; box-shadow: var(--focus-ring-shadow); } .metric-badge[data-just-resolved="true"] { box-shadow: inset 0 1px 0 0 rgb(255 255 255 / 0.18), var(--metric-badge-shadow, 0 1px 6px color-mix(in srgb, var(--shadow-color) 8%, transparent), var(--glass-highlight)); } .metric-badge--label-inline { flex-direction: row; align-items: baseline; justify-content: flex-start; gap: var(--metric-badge-label-gap, 0.375rem); max-width: var(--metric-badge-label-max-width, none); text-align: left; } .metric-badge--label-stacked { flex-direction: column; align-items: flex-start; justify-content: center; gap: var(--metric-badge-label-gap-stacked, 0.0625rem); max-width: var(--metric-badge-label-max-width, none); text-align: left; min-height: var(--metric-badge-min-height-stacked, 2.625rem); padding-block: var(--metric-badge-padding-block-stacked, 0.375rem); } .metric-badge--label-stacked .metric-badge__row { display: inline-flex; align-items: baseline; gap: var(--metric-badge-row-gap-stacked, 0.25rem); } .metric-pill:not([data-dense]).metric-badge--label-stacked { --metric-badge-padding-block-stacked: 0.5rem; --metric-badge-padding-inline: 0.75rem; } .metric-pill[data-dense].metric-badge--label-stacked { --metric-badge-padding-block-stacked: 0.25rem; --metric-badge-padding-inline: 0.5rem; } .metric-badge__label { letter-spacing: 0.18em; line-height: 1; } .metric-badge__label--full + .metric-badge__label--abbr { display: none; } .metric-badge[data-size="sm"] .metric-badge__label { letter-spacing: 0.1em; } .input-bar { display: flex; align-items: center; gap: 0.5rem; border-radius: var(--radius-2xl); border: 1px solid var(--glass-border-floating); background: var(--glass-bg-floating); backdrop-filter: var(--glass-blur-floating); padding: 0 0.75rem; height: var(--control-pill-h, var(--control-h-sm)); max-width: var(--max-width-input); width: 100%; transition: box-shadow var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard); } .input-bar:focus-within { box-shadow: var(--focus-ring-shadow); border-color: var(--border); } .input-bar-field { font-family: var(--input-bar-font, var(--font-mono, monospace)); font-size: var(--control-pill-text, var(--control-text)); background: transparent; border: none; outline: none; flex: 1; min-width: 0; } .input-bar-field::placeholder { color: color-mix(in srgb, var(--muted-foreground) 50%, transparent); } :where(.hover-lift, .hover-lift-md, .hover-lift-lg) { translate: 0; transition-property: translate, box-shadow; transition-duration: var(--duration-normal); transition-timing-function: var(--ease-standard); } .hover-lift:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-sm); box-shadow: var(--shadow-md); } .hover-lift-md:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-md); box-shadow: var(--shadow-md); } .hover-lift-lg:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-lg); box-shadow: var(--shadow-lg); } :where(.shadow-cartoon-sm, .shadow-cartoon-md, .shadow-cartoon-lg) { border: 2px solid var(--border); } .shadow-cartoon-sm { box-shadow: var(--shadow-cartoon-sm); translate: 0 -1px; } .shadow-cartoon-md { box-shadow: var(--shadow-cartoon-md); translate: 0 -1px; } .shadow-cartoon-lg { box-shadow: var(--shadow-cartoon-lg); translate: 0 -2px; } .divider-h { height: 2px; background: linear-gradient( to right, transparent 1%, var(--border) 8%, var(--border) 92%, transparent 99% ); } .divider-h-tapered { height: 2px; background: linear-gradient( to right, transparent 3%, var(--border) 15%, var(--border) 85%, transparent 97% ); } }
1
+ @layer components { .input-bar { display: flex; align-items: center; gap: 0.5rem; border-radius: var(--radius-2xl); border: 1px solid var(--glass-border-floating); background: var(--glass-bg-floating); -webkit-backdrop-filter: var(--glass-blur-floating); backdrop-filter: var(--glass-blur-floating); padding: 0 0.75rem; height: var(--control-pill-h, var(--control-h-sm)); max-width: var(--max-width-input); width: 100%; transition: box-shadow var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard); } .input-bar:focus-within { box-shadow: var(--focus-ring-shadow); border-color: var(--border); } .input-bar-field { font-family: var(--input-bar-font, var(--font-mono, monospace)); font-size: var(--control-pill-text, var(--control-text)); background: transparent; border: none; outline: none; flex: 1; min-width: 0; } .input-bar-field::placeholder { color: color-mix(in srgb, var(--muted-foreground) 50%, transparent); } :where(.hover-lift, .hover-lift-md, .hover-lift-lg) { translate: 0; transition-property: translate, box-shadow; transition-duration: var(--duration-normal); transition-timing-function: var(--ease-standard); } .hover-lift:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-sm); box-shadow: var(--shadow-md); } .hover-lift-md:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-md); box-shadow: var(--shadow-md); } .hover-lift-lg:hover:not(:disabled):not([aria-disabled='true']) { translate: 0 var(--lift-lg); box-shadow: var(--shadow-lg); } :where(.shadow-cartoon-sm, .shadow-cartoon-md, .shadow-cartoon-lg) { border: 2px solid var(--border); } .shadow-cartoon-sm { box-shadow: var(--shadow-cartoon-sm); translate: 0 -1px; } .shadow-cartoon-md { box-shadow: var(--shadow-cartoon-md); translate: 0 -1px; } .shadow-cartoon-lg { box-shadow: var(--shadow-cartoon-lg); translate: 0 -2px; } .divider-h { height: 2px; background: linear-gradient( to right, transparent 1%, var(--border) 8%, var(--border) 92%, transparent 99% ); } .divider-h-tapered { height: 2px; background: linear-gradient( to right, transparent 3%, var(--border) 15%, var(--border) 85%, transparent 97% ); } } @utility shadow-cartoon { box-shadow: var(--shadow-cartoon); } @utility shadow-cartoon-hover { box-shadow: var(--shadow-cartoon-hover); } @utility shadow-soft { box-shadow: var(--shadow-soft); } @utility shadow-elevated { box-shadow: var(--shadow-elevated); } @utility shadow-modal { box-shadow: var(--shadow-modal); }
@@ -1 +1 @@
1
- @layer components { .metal-gold, .metal-silver, .metal-bronze { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); background: linear-gradient( 90deg, var(--metal-stop-dark), var(--metal-stop-light), var(--metal-stop-base), var(--metal-stop-light), var(--metal-stop-dark) ); background-size: 250% 100%; background-clip: text; -webkit-background-clip: text; color: transparent; --metal-glow-blur: var(--metal-glow-blur-default, 0.5em); --metal-glow-opacity: var(--metal-glow-opacity-default, 0.35); filter: drop-shadow( 0 0 var(--metal-glow-blur) color-mix( in srgb, var(--metal-stop-base) calc(var(--metal-glow-opacity) * 100%), transparent ) ); } .metal-gold { --metal-shimmer-color: gold; --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } .metal-silver { --metal-shimmer-color: silver; --metal-stop-dark: var(--color-silver-dark); --metal-stop-light: var(--color-silver-light); --metal-stop-base: var(--color-silver); } .metal-bronze { --metal-shimmer-color: bronze; --metal-stop-dark: var(--color-bronze-dark); --metal-stop-light: var(--color-bronze-light); --metal-stop-base: var(--color-bronze); } .metal-gold-border, .metal-silver-border, .metal-bronze-border { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } @supports (mask-composite: exclude) { .metal-gold-border, .metal-silver-border, .metal-bronze-border { position: relative; } .metal-gold-border::before, .metal-silver-border::before, .metal-bronze-border::before { content: ""; position: absolute; inset: 0; border-radius: inherit; border: var(--metal-border-width, 2px) solid transparent; pointer-events: none; background: linear-gradient( 90deg, var(--metal-stop-dark), var(--metal-stop-light), var(--metal-stop-base), var(--metal-stop-light), var(--metal-stop-dark) ); background-size: 250% 100%; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box; -webkit-mask-composite: xor; mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box; mask-composite: exclude; } } @supports not (mask-composite: exclude) { .metal-gold-border, .metal-silver-border, .metal-bronze-border { box-shadow: inset 0 0 0 var(--metal-border-width, 2px) var(--metal-stop-base); } } .metal-gold-border { --metal-shimmer-color: gold; --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } .metal-silver-border { --metal-shimmer-color: silver; --metal-stop-dark: var(--color-silver-dark); --metal-stop-light: var(--color-silver-light); --metal-stop-base: var(--color-silver); } .metal-bronze-border { --metal-shimmer-color: bronze; --metal-stop-dark: var(--color-bronze-dark); --metal-stop-light: var(--color-bronze-light); --metal-stop-base: var(--color-bronze); } .metal-rainbow-rim { --glass-accent: var(--color-gold); --glass-accent-strength: 45%; --metal-shimmer-color: rainbow; background-image: linear-gradient( 90deg, var(--rainbow-red), var(--rainbow-orange), var(--rainbow-yellow), var(--rainbow-green), var(--rainbow-blue), var(--rainbow-indigo), var(--rainbow-violet), var(--rainbow-red) ); background-size: 250% 100%; background-clip: border-box; } @media (prefers-reduced-motion: no-preference) { .metal-gold, .metal-silver, .metal-bronze, .metal-rainbow-rim, .metal-gold-border::before, .metal-silver-border::before, .metal-bronze-border::before { animation: metal-shimmer-sweep var(--duration-metal) linear infinite; } } }
1
+ @layer components { .metal-gold, .metal-silver, .metal-bronze { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); background: linear-gradient( 90deg, var(--metal-stop-dark), var(--metal-stop-light), var(--metal-stop-base), var(--metal-stop-light), var(--metal-stop-dark) ); background-size: 250% 100%; background-clip: text; -webkit-background-clip: text; color: transparent; --metal-glow-blur: var(--metal-glow-blur-default, 0.5em); --metal-glow-opacity: var(--metal-glow-opacity-default, 0.35); filter: drop-shadow( 0 0 var(--metal-glow-blur) color-mix( in srgb, var(--metal-stop-base) calc(var(--metal-glow-opacity) * 100%), transparent ) ); } .metal-gold { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } .metal-silver { --metal-stop-dark: var(--color-silver-dark); --metal-stop-light: var(--color-silver-light); --metal-stop-base: var(--color-silver); } .metal-bronze { --metal-stop-dark: var(--color-bronze-dark); --metal-stop-light: var(--color-bronze-light); --metal-stop-base: var(--color-bronze); } .metal-gold-border, .metal-silver-border, .metal-bronze-border { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } @supports (mask-composite: exclude) { .metal-gold-border, .metal-silver-border, .metal-bronze-border { position: relative; } .metal-gold-border::before, .metal-silver-border::before, .metal-bronze-border::before { content: ""; position: absolute; inset: 0; border-radius: inherit; border: var(--metal-border-width, 2px) solid transparent; pointer-events: none; background: linear-gradient( 90deg, var(--metal-stop-dark), var(--metal-stop-light), var(--metal-stop-base), var(--metal-stop-light), var(--metal-stop-dark) ); background-size: 250% 100%; -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box; -webkit-mask-composite: xor; mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0) border-box; mask-composite: exclude; } } @supports not (mask-composite: exclude) { .metal-gold-border, .metal-silver-border, .metal-bronze-border { box-shadow: inset 0 0 0 var(--metal-border-width, 2px) var(--metal-stop-base); } } .metal-gold-border { --metal-stop-dark: var(--color-gold-dark); --metal-stop-light: var(--color-gold-light); --metal-stop-base: var(--color-gold); } .metal-silver-border { --metal-stop-dark: var(--color-silver-dark); --metal-stop-light: var(--color-silver-light); --metal-stop-base: var(--color-silver); } .metal-bronze-border { --metal-stop-dark: var(--color-bronze-dark); --metal-stop-light: var(--color-bronze-light); --metal-stop-base: var(--color-bronze); } .metal-rainbow-rim { --glass-accent: var(--color-gold); --glass-accent-strength: 45%; background-image: linear-gradient( 90deg, var(--rainbow-red), var(--rainbow-orange), var(--rainbow-yellow), var(--rainbow-green), var(--rainbow-blue), var(--rainbow-indigo), var(--rainbow-violet), var(--rainbow-red) ); background-size: 250% 100%; background-clip: border-box; } @media (prefers-reduced-motion: no-preference) { .metal-gold, .metal-silver, .metal-bronze, .metal-rainbow-rim, .metal-gold-border::before, .metal-silver-border::before, .metal-bronze-border::before { animation: metal-shimmer-sweep var(--duration-metal) linear infinite; } } }