@mkbabb/glass-ui 6.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 (910) hide show
  1. package/README.md +36 -34
  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-BoTQ7g5l.js → PagerDots-BEq0MgtH.js} +85 -81
  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 +831 -776
  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.js +1 -1
  15. package/dist/blob.js +442 -395
  16. package/dist/button-Bu9F4uU6.js +98 -0
  17. package/dist/button.js +2 -2
  18. package/dist/canvas.js +1 -1
  19. package/dist/card-Bk96VI2R.js +234 -0
  20. package/dist/card.js +2 -2
  21. package/dist/carousel.js +109 -169
  22. package/dist/chip-DFZQr6rV.js +129 -0
  23. package/dist/chip.js +2 -81
  24. package/dist/{class-names-5jotTFzp.js → class-names-Cpy5eaBk.js} +11 -4
  25. package/dist/collapsible-BAP95XTt.js +154 -0
  26. package/dist/collapsible.js +1 -1
  27. package/dist/color.js +46 -50
  28. package/dist/{procedural-color.wgsl-B9mLK7v0.js → color.wgsl-Ct5o9dpf.js} +155 -121
  29. package/dist/command-SFqDQ65h.js +320 -0
  30. package/dist/command.js +1 -1
  31. package/dist/completion-seal.js +54 -54
  32. package/dist/components/_shared/FeedbackMark.vue.d.ts +11 -0
  33. package/dist/components/_shared/axes.d.ts +9 -3
  34. package/dist/components/_shared/class-names.d.ts +9 -8
  35. package/dist/components/_shared/control-size.d.ts +2 -0
  36. package/dist/components/_shared/disclosure-context.d.ts +7 -0
  37. package/dist/components/_shared/disclosure.css +1 -0
  38. package/dist/components/_shared/feedback.d.ts +7 -0
  39. package/dist/components/_shared/field-control.css +1 -0
  40. package/dist/components/_shared/field-surfaces.css +1 -1
  41. package/dist/components/_shared/fieldControl.d.ts +13 -0
  42. package/dist/components/_shared/floating.d.ts +14 -0
  43. package/dist/components/_shared/index.d.ts +2 -6
  44. package/dist/components/_shared/interaction.d.ts +23 -0
  45. package/dist/components/_shared/menu.css +1 -1
  46. package/dist/components/_shared/menuRowClass.d.ts +2 -0
  47. package/dist/components/_shared/primitive.d.ts +19 -0
  48. package/dist/components/_shared/resolveSurfaceClass.d.ts +3 -0
  49. package/dist/components/_shared/selection.d.ts +7 -0
  50. package/dist/components/_shared/useMotionAxis.d.ts +3 -2
  51. package/dist/components/accordion/Accordion.vue.d.ts +41 -16
  52. package/dist/components/accordion/AccordionContent.vue.d.ts +11 -9
  53. package/dist/components/accordion/AccordionItem.vue.d.ts +12 -9
  54. package/dist/components/accordion/AccordionTrigger.vue.d.ts +8 -11
  55. package/dist/components/accordion/index.d.ts +4 -4
  56. package/dist/components/alert/Alert.vue.d.ts +9 -5
  57. package/dist/components/alert/index.d.ts +17 -8
  58. package/dist/components/animated-digit/AnimatedDigit.vue.d.ts +2 -3
  59. package/dist/components/aurora/Aurora.vue.d.ts +37 -42
  60. package/dist/components/aurora/composables/atoms-fields.d.ts +13 -2
  61. package/dist/components/aurora/composables/atoms.d.ts +52 -50
  62. package/dist/components/aurora/composables/auroraFallbackGround.d.ts +13 -13
  63. package/dist/components/aurora/composables/auroraImageSource.d.ts +4 -5
  64. package/dist/components/aurora/composables/color.d.ts +15 -20
  65. package/dist/components/aurora/composables/frameLoop.d.ts +14 -11
  66. package/dist/components/aurora/composables/glSetup.d.ts +19 -2
  67. package/dist/components/aurora/composables/runtime.d.ts +56 -60
  68. package/dist/components/aurora/composables/uniformBridge.d.ts +9 -14
  69. package/dist/components/aurora/composables/uniformBridgeWGPU.d.ts +21 -22
  70. package/dist/components/aurora/composables/uniformBridgeWGPUImage.d.ts +13 -13
  71. package/dist/components/aurora/composables/useAurora.d.ts +19 -30
  72. package/dist/components/aurora/composables/wgpuSetup.d.ts +10 -8
  73. package/dist/components/aurora/constants/budget.d.ts +12 -25
  74. package/dist/components/aurora/constants/presets.d.ts +47 -58
  75. package/dist/components/aurora/constants/renderMode.d.ts +21 -36
  76. package/dist/components/aurora/constants/shaders/aurora-image.wgsl.d.ts +1 -1
  77. package/dist/components/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -1
  78. package/dist/components/aurora/constants/shaders/aurora.wgsl.d.ts +1 -1
  79. package/dist/components/aurora/constants/shaders/brush.glsl.d.ts +1 -1
  80. package/dist/components/aurora/constants/shaders/composition.glsl.d.ts +1 -1
  81. package/dist/components/aurora/constants/shaders/flow.glsl.d.ts +1 -1
  82. package/dist/components/aurora/constants/shaders/metal-medium.glsl.d.ts +2 -2
  83. package/dist/components/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -1
  84. package/dist/components/aurora/constants/shaders/vangogh-medium.glsl.d.ts +1 -1
  85. package/dist/components/aurora/index.d.ts +2 -1
  86. package/dist/components/avatar/Avatar.vue.d.ts +72 -11
  87. package/dist/components/avatar/AvatarFallback.vue.d.ts +1 -2
  88. package/dist/components/avatar/AvatarImage.vue.d.ts +12 -8
  89. package/dist/components/avatar/index.d.ts +3 -9
  90. package/dist/components/avatar/styles.css +1 -0
  91. package/dist/components/badge/Badge.vue.d.ts +2 -9
  92. package/dist/components/badge/index.d.ts +32 -9
  93. package/dist/components/blob/Blob.vue.d.ts +5 -12
  94. package/dist/components/blob/composables/blobSimulation.d.ts +80 -0
  95. package/dist/components/blob/composables/buildMetaballProgram.d.ts +1 -1
  96. package/dist/components/blob/composables/resolveBlobSurface.d.ts +6 -0
  97. package/dist/components/blob/composables/satelliteKinematics.d.ts +3 -3
  98. package/dist/components/blob/composables/uniformBridgeWGPU.d.ts +1 -1
  99. package/dist/components/blob/composables/uploadBlobUniforms.d.ts +4 -31
  100. package/dist/components/blob/composables/useBlobMood.d.ts +5 -5
  101. package/dist/components/blob/composables/useBlobPointer.d.ts +11 -12
  102. package/dist/components/blob/composables/useMetaballRenderer.d.ts +27 -24
  103. package/dist/components/blob/composables/wgpuSetup.d.ts +7 -5
  104. package/dist/components/blob/config.d.ts +1 -1
  105. package/dist/components/blob/index.d.ts +2 -2
  106. package/dist/components/blob/presets.d.ts +2 -2
  107. package/dist/components/blob/shaders/metaball-palette.wgsl.d.ts +1 -1
  108. package/dist/components/blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  109. package/dist/components/blob/shaders/metaball.wgsl.d.ts +1 -1
  110. package/dist/components/blob/shaders/sdf-body.glsl.d.ts +1 -1
  111. package/dist/components/blob/shaders/watercolor-edges.glsl.d.ts +1 -1
  112. package/dist/components/blob/types.d.ts +28 -60
  113. package/dist/components/button/Button.vue.d.ts +26 -20
  114. package/dist/components/button/index.d.ts +1 -9
  115. package/dist/components/button/styles.css +1 -0
  116. package/dist/components/card/Card.vue.d.ts +20 -155
  117. package/dist/components/card/CardAction.vue.d.ts +0 -7
  118. package/dist/components/card/CardContent.vue.d.ts +2 -2
  119. package/dist/components/card/CardDescription.vue.d.ts +2 -2
  120. package/dist/components/card/CardFooter.vue.d.ts +2 -2
  121. package/dist/components/card/CardHeader.vue.d.ts +3 -42
  122. package/dist/components/card/CardTitle.vue.d.ts +6 -3
  123. package/dist/components/card/card-scroll.css +1 -1
  124. package/dist/components/card/index.d.ts +1 -3
  125. package/dist/components/card/styles.css +1 -1
  126. package/dist/components/carousel/index.d.ts +0 -2
  127. package/dist/components/carousel/interface.d.ts +2 -0
  128. package/dist/components/checkbox/Checkbox.vue.d.ts +17 -9
  129. package/dist/components/checkbox/index.d.ts +1 -1
  130. package/dist/components/checkbox/styles.css +1 -0
  131. package/dist/components/chip/Chip.vue.d.ts +12 -7
  132. package/dist/components/chip/chipVariants.d.ts +20 -43
  133. package/dist/components/chip/index.d.ts +1 -1
  134. package/dist/components/chip/types.d.ts +45 -30
  135. package/dist/components/collapsible/Collapsible.vue.d.ts +22 -9
  136. package/dist/components/collapsible/CollapsibleContent.vue.d.ts +11 -5
  137. package/dist/components/collapsible/CollapsibleTrigger.vue.d.ts +12 -9
  138. package/dist/components/collapsible/index.d.ts +3 -3
  139. package/dist/components/combobox/Combobox.vue.d.ts +10 -20
  140. package/dist/components/combobox/ComboboxAnchor.vue.d.ts +2 -6
  141. package/dist/components/combobox/ComboboxEmpty.vue.d.ts +2 -6
  142. package/dist/components/combobox/ComboboxGroup.vue.d.ts +2 -7
  143. package/dist/components/combobox/ComboboxInput.vue.d.ts +7 -12
  144. package/dist/components/combobox/ComboboxItem.vue.d.ts +7 -11
  145. package/dist/components/combobox/ComboboxItemIndicator.vue.d.ts +2 -6
  146. package/dist/components/combobox/ComboboxList.vue.d.ts +14 -17
  147. package/dist/components/combobox/ComboboxTrigger.vue.d.ts +16 -0
  148. package/dist/components/combobox/index.d.ts +2 -1
  149. package/dist/components/combobox/types.d.ts +87 -0
  150. package/dist/components/command/Command.vue.d.ts +9 -23
  151. package/dist/components/command/CommandDialog.vue.d.ts +4 -9
  152. package/dist/components/command/CommandEmpty.vue.d.ts +2 -6
  153. package/dist/components/command/CommandGroup.vue.d.ts +2 -7
  154. package/dist/components/command/CommandInput.vue.d.ts +6 -7
  155. package/dist/components/command/CommandItem.vue.d.ts +7 -11
  156. package/dist/components/command/CommandList.vue.d.ts +12 -19
  157. package/dist/components/command/CommandSeparator.vue.d.ts +2 -6
  158. package/dist/components/command/CommandShortcut.vue.d.ts +2 -2
  159. package/dist/components/command/dialogContext.d.ts +6 -0
  160. package/dist/components/command/index.d.ts +10 -10
  161. package/dist/components/command/styles.css +1 -0
  162. package/dist/components/command/types.d.ts +27 -0
  163. package/dist/components/completion-seal/CompletionSeal.vue.d.ts +2 -2
  164. package/dist/components/completion-seal/constants.d.ts +2 -2
  165. package/dist/components/configurator/Configurator.vue.d.ts +6 -6
  166. package/dist/components/configurator/ConfiguratorLayer.vue.d.ts +14 -18
  167. package/dist/components/configurator/ConfiguratorRow.vue.d.ts +14 -17
  168. package/dist/components/configurator/size.d.ts +5 -7
  169. package/dist/components/configurator/styles.css +1 -1
  170. package/dist/components/constellation/Constellation.vue.d.ts +1 -1
  171. package/dist/components/constellation/composables/createConstellationField.d.ts +2 -2
  172. package/dist/components/constellation/constants.d.ts +8 -8
  173. package/dist/components/constellation/constellationField.d.ts +5 -6
  174. package/dist/components/constellation/constellationInteraction.d.ts +8 -8
  175. package/dist/components/constellation/constellationTypes.d.ts +53 -54
  176. package/dist/components/constellation/constellationWell.d.ts +2 -2
  177. package/dist/components/dark-mode-toggle/DarkModeToggle.vue.d.ts +12 -0
  178. package/dist/components/dark-mode-toggle/dark-mode-toggle.css +1 -0
  179. package/dist/components/dark-mode-toggle/index.d.ts +2 -0
  180. package/dist/components/data-table/DataTable.vue.d.ts +11 -59
  181. package/dist/components/data-table/composables/useDataTableRowIdentity.d.ts +5 -23
  182. package/dist/components/data-table/index.d.ts +1 -1
  183. package/dist/components/data-table/styles.css +1 -0
  184. package/dist/components/data-table/types.d.ts +10 -12
  185. package/dist/components/deck/index.d.ts +0 -1
  186. package/dist/components/dialog/Dialog.vue.d.ts +8 -3
  187. package/dist/components/dialog/DialogClose.vue.d.ts +3 -1
  188. package/dist/components/dialog/DialogContent.vue.d.ts +27 -90
  189. package/dist/components/dialog/DialogDescription.vue.d.ts +5 -6
  190. package/dist/components/dialog/DialogTitle.vue.d.ts +5 -6
  191. package/dist/components/dialog/DialogTrigger.vue.d.ts +3 -1
  192. package/dist/components/{_shared → dialog}/ModalOverlay.vue.d.ts +18 -16
  193. package/dist/components/dialog/dialogStageContext.d.ts +7 -0
  194. package/dist/components/dialog/index.d.ts +8 -8
  195. package/dist/components/dialog/placement.css +1 -1
  196. package/dist/components/dialog/sheet-motion.d.ts +17 -0
  197. package/dist/components/dock/DockControl.vue.d.ts +9 -12
  198. package/dist/components/dock/DockCrossfade.vue.d.ts +4 -8
  199. package/dist/components/dock/DockLayer.vue.d.ts +2 -3
  200. package/dist/components/dock/DockLayerGroup.vue.d.ts +6 -6
  201. package/dist/components/dock/DockSeparator.vue.d.ts +8 -8
  202. package/dist/components/dock/composables/dockContext.d.ts +4 -14
  203. package/dist/components/dock/composables/dockCrossfadeContext.d.ts +6 -7
  204. package/dist/components/dock/composables/dockMorphMeasure.d.ts +7 -86
  205. package/dist/components/dock/composables/index.d.ts +1 -1
  206. package/dist/components/dock/composables/useDockClickIntegrity.d.ts +1 -1
  207. package/dist/components/dock/composables/useDockHold.d.ts +4 -5
  208. package/dist/components/dock/composables/useDockMorph.d.ts +26 -0
  209. package/dist/components/dock/composables/useDockOverflowFit.d.ts +4 -6
  210. package/dist/components/dock/composables/useDockSearch.d.ts +8 -8
  211. package/dist/components/dock/composables/useDockShellProps.d.ts +46 -43
  212. package/dist/components/dock/composables/useDockSpring.d.ts +7 -11
  213. package/dist/components/dock/composables/useDockState.d.ts +12 -3
  214. package/dist/components/dock/composables/useDockTouchGate.d.ts +14 -23
  215. package/dist/components/dock/constants.d.ts +5 -78
  216. package/dist/components/dock/index.d.ts +2 -7
  217. package/dist/components/dock/styles/controls.css +1 -1
  218. package/dist/components/dock/styles/crossfade.css +1 -1
  219. package/dist/components/dock/styles/density.css +1 -1
  220. package/dist/components/dock/styles/index.css +1 -1
  221. package/dist/components/dock/styles/layer-group.css +1 -1
  222. package/dist/components/dock/styles/layers.css +1 -1
  223. package/dist/components/dock/styles/morph.css +1 -1
  224. package/dist/components/dock/styles/shape.css +1 -1
  225. package/dist/components/dock/styles/shell.css +1 -1
  226. package/dist/components/drawer/Drawer.vue.d.ts +17 -20
  227. package/dist/components/drawer/DrawerContent.vue.d.ts +15 -16
  228. package/dist/components/drawer/DrawerDescription.vue.d.ts +5 -6
  229. package/dist/components/drawer/DrawerOverlay.vue.d.ts +6 -6
  230. package/dist/components/drawer/DrawerTitle.vue.d.ts +5 -6
  231. package/dist/components/drawer/composables/drawerSnapContext.d.ts +7 -1
  232. package/dist/components/drawer/composables/useDrawerSnap.d.ts +3 -1
  233. package/dist/components/drawer/constants.d.ts +7 -25
  234. package/dist/components/drawer/index.d.ts +10 -10
  235. package/dist/components/drawer/styles.css +1 -1
  236. package/dist/components/dropdown-menu/DropdownMenu.vue.d.ts +43 -16
  237. package/dist/components/dropdown-menu/DropdownMenuCheckboxItem.vue.d.ts +22 -13
  238. package/dist/components/dropdown-menu/DropdownMenuContent.vue.d.ts +28 -19
  239. package/dist/components/dropdown-menu/DropdownMenuGroup.vue.d.ts +6 -4
  240. package/dist/components/dropdown-menu/DropdownMenuItem.vue.d.ts +21 -9
  241. package/dist/components/dropdown-menu/DropdownMenuLabel.vue.d.ts +9 -9
  242. package/dist/components/dropdown-menu/DropdownMenuRadioGroup.vue.d.ts +13 -6
  243. package/dist/components/dropdown-menu/DropdownMenuRadioItem.vue.d.ts +18 -11
  244. package/dist/components/dropdown-menu/DropdownMenuSeparator.vue.d.ts +5 -6
  245. package/dist/components/dropdown-menu/DropdownMenuShortcut.vue.d.ts +7 -8
  246. package/dist/components/dropdown-menu/DropdownMenuSub.vue.d.ts +15 -7
  247. package/dist/components/dropdown-menu/DropdownMenuSubContent.vue.d.ts +24 -17
  248. package/dist/components/dropdown-menu/DropdownMenuSubTrigger.vue.d.ts +11 -9
  249. package/dist/components/dropdown-menu/DropdownMenuTrigger.vue.d.ts +15 -8
  250. package/dist/components/dropdown-menu/index.d.ts +15 -15
  251. package/dist/components/dropdown-menu/styles.css +1 -0
  252. package/dist/components/dropdown-menu/useMenuTrigger.d.ts +2 -9
  253. package/dist/components/easing/composables/useEasingPicker.d.ts +5 -8
  254. package/dist/components/easing/constants.d.ts +1 -1
  255. package/dist/components/expandable-container/ExpandableContainer.vue.d.ts +1 -25
  256. package/dist/components/expandable-container/styles.css +1 -0
  257. package/dist/components/fading-scroll/FadingScroll.vue.d.ts +4 -0
  258. package/dist/components/fading-scroll/composables/useFadingScroll.d.ts +4 -0
  259. package/dist/components/fading-scroll/constants.d.ts +1 -2
  260. package/dist/components/fourier-field/FourierField.vue.d.ts +3 -5
  261. package/dist/components/fourier-field/composables/fourierFieldGLSetup.d.ts +1 -1
  262. package/dist/components/fourier-field/composables/fourierFieldWGPUSetup.d.ts +1 -1
  263. package/dist/components/fourier-field/composables/useFourierField.d.ts +4 -4
  264. package/dist/components/fourier-field/constants.d.ts +10 -10
  265. package/dist/components/fourier-field/index.d.ts +3 -3
  266. package/dist/components/fourier-field/presets.d.ts +3 -3
  267. package/dist/components/fourier-field/shaders/fourier-field.glsl.d.ts +2 -2
  268. package/dist/components/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -1
  269. package/dist/components/handmark/HandMark.vue.d.ts +1 -1
  270. package/dist/components/handmark/brush.d.ts +1 -1
  271. package/dist/components/handmark/composables/useHandMark.d.ts +4 -4
  272. package/dist/components/handmark/constants.d.ts +10 -10
  273. package/dist/components/handmark/geometry.d.ts +8 -8
  274. package/dist/components/handmark/index.d.ts +7 -8
  275. package/dist/components/handmark/noise.d.ts +3 -3
  276. package/dist/components/handmark/types.d.ts +2 -2
  277. package/dist/components/header-ribbon/HeaderRibbon.vue.d.ts +3 -21
  278. package/dist/components/header-ribbon/styles.css +1 -0
  279. package/dist/components/header-ribbon/types.d.ts +5 -2
  280. package/dist/components/index.d.ts +0 -3
  281. package/dist/components/infinite-scroll/composables/types.d.ts +1 -1
  282. package/dist/components/input/Input.vue.d.ts +10 -35
  283. package/dist/components/input/index.d.ts +2 -1
  284. package/dist/components/input/types.d.ts +22 -0
  285. package/dist/components/instrument-chassis/InstrumentChassis.vue.d.ts +10 -84
  286. package/dist/components/instrument-chassis/index.d.ts +1 -2
  287. package/dist/components/instrument-chassis/styles.css +1 -1
  288. package/dist/components/instrument-chassis/types.d.ts +13 -0
  289. package/dist/components/label/Label.vue.d.ts +9 -14
  290. package/dist/components/label/index.d.ts +1 -1
  291. package/dist/components/labeled-field/LabeledField.vue.d.ts +10 -108
  292. package/dist/components/labeled-field/LabeledInput.vue.d.ts +3 -23
  293. package/dist/components/labeled-field/LabeledSelect.vue.d.ts +12 -18
  294. package/dist/components/labeled-field/LabeledSlider.vue.d.ts +12 -18
  295. package/dist/components/labeled-field/LabeledSwitch.vue.d.ts +14 -17
  296. package/dist/components/labeled-field/index.d.ts +1 -0
  297. package/dist/components/labeled-field/types.d.ts +50 -0
  298. package/dist/components/liquid-grid/composables/liquidGrid.d.ts +5 -5
  299. package/dist/components/liquid-grid/constants.d.ts +6 -7
  300. package/dist/components/liquid-grid/shaders/liquid-grid.glsl.d.ts +1 -1
  301. package/dist/components/liquid-grid/shaders/liquid-grid.wgsl.d.ts +1 -1
  302. package/dist/components/metric/Metric.vue.d.ts +24 -0
  303. package/dist/components/metric/MetricCell.vue.d.ts +26 -0
  304. package/dist/components/metric/MetricRow.vue.d.ts +22 -0
  305. package/dist/components/metric/MetricStack.vue.d.ts +16 -0
  306. package/dist/components/metric/coalesce-metric.d.ts +7 -28
  307. package/dist/components/metric/index.d.ts +5 -0
  308. package/dist/components/metric/styles.css +1 -0
  309. package/dist/components/metric/types.d.ts +32 -0
  310. package/dist/components/number-field/NumberField.vue.d.ts +21 -9
  311. package/dist/components/number-field/NumberFieldContent.vue.d.ts +2 -2
  312. package/dist/components/number-field/NumberFieldDecrement.vue.d.ts +6 -6
  313. package/dist/components/number-field/NumberFieldIncrement.vue.d.ts +6 -6
  314. package/dist/components/number-field/NumberFieldInput.vue.d.ts +1 -6
  315. package/dist/components/number-field/context.d.ts +6 -0
  316. package/dist/components/number-field/index.d.ts +5 -5
  317. package/dist/components/number-field/styles.css +1 -0
  318. package/dist/components/pager-dots/constants.d.ts +1 -2
  319. package/dist/components/pager-dots/index.d.ts +0 -2
  320. package/dist/components/paper-backdrop/PaperBackdrop.vue.d.ts +1 -14
  321. package/dist/components/paper-backdrop/index.d.ts +1 -1
  322. package/dist/components/popover/Popover.vue.d.ts +24 -36
  323. package/dist/components/popover/PopoverContent.vue.d.ts +23 -29
  324. package/dist/components/popover/PopoverTrigger.vue.d.ts +12 -7
  325. package/dist/components/popover/index.d.ts +3 -3
  326. package/dist/components/popover/popoverContext.d.ts +3 -4
  327. package/dist/components/progress/Progress.vue.d.ts +5 -13
  328. package/dist/components/progress/index.d.ts +1 -0
  329. package/dist/components/progress/types.d.ts +19 -0
  330. package/dist/components/pulse/Pulse.vue.d.ts +8 -47
  331. package/dist/components/pulse/index.d.ts +1 -0
  332. package/dist/components/radio-group/RadioGroup.vue.d.ts +27 -15
  333. package/dist/components/radio-group/RadioGroupItem.vue.d.ts +9 -6
  334. package/dist/components/radio-group/index.d.ts +2 -0
  335. package/dist/components/radio-group/styles.css +1 -0
  336. package/dist/components/scroll-progress-rim/styles.css +1 -1
  337. package/dist/components/search/FuzzySearch.vue.d.ts +2 -2
  338. package/dist/components/search/SearchBar.vue.d.ts +2 -2
  339. package/dist/components/search/searchVariants.d.ts +15 -17
  340. package/dist/components/select/Select.vue.d.ts +25 -14
  341. package/dist/components/select/SelectContent.vue.d.ts +26 -29
  342. package/dist/components/select/SelectGroup.vue.d.ts +7 -11
  343. package/dist/components/select/SelectItem.vue.d.ts +24 -13
  344. package/dist/components/select/SelectLabel.vue.d.ts +7 -11
  345. package/dist/components/select/SelectScrollDownButton.vue.d.ts +3 -4
  346. package/dist/components/select/SelectScrollUpButton.vue.d.ts +3 -4
  347. package/dist/components/select/SelectSeparator.vue.d.ts +5 -6
  348. package/dist/components/select/SelectTrigger.vue.d.ts +15 -41
  349. package/dist/components/select/SelectValue.vue.d.ts +13 -7
  350. package/dist/components/select/index.d.ts +16 -8
  351. package/dist/components/separator/Separator.vue.d.ts +11 -6
  352. package/dist/components/separator/index.d.ts +1 -1
  353. package/dist/components/skeleton/Skeleton.vue.d.ts +3 -31
  354. package/dist/components/slider/Slider.vue.d.ts +10 -37
  355. package/dist/components/slider/index.d.ts +1 -45
  356. package/dist/components/slider/types.d.ts +25 -0
  357. package/dist/components/sortable-list/SortableList.vue.d.ts +1 -1
  358. package/dist/components/sortable-list/composables/ghostRenderer.d.ts +1 -1
  359. package/dist/components/sortable-list/composables/touchGate.d.ts +1 -1
  360. package/dist/components/sortable-list/composables/transitionTiming.d.ts +1 -1
  361. package/dist/components/status-dot/StatusDot.vue.d.ts +7 -10
  362. package/dist/components/status-dot/index.d.ts +1 -0
  363. package/dist/components/surface/Surface.vue.d.ts +13 -21
  364. package/dist/components/surface/index.d.ts +2 -2
  365. package/dist/components/switch/Switch.vue.d.ts +20 -11
  366. package/dist/components/switch/index.d.ts +2 -1
  367. package/dist/components/switch/styles.css +1 -0
  368. package/dist/components/table/Table.vue.d.ts +1 -1
  369. package/dist/components/tabs/SegmentedTabs.vue.d.ts +21 -13
  370. package/dist/components/tabs/composables/useTabDragMorph.d.ts +6 -6
  371. package/dist/components/tabs/composables/useTabResponsive.d.ts +5 -6
  372. package/dist/components/tabs/composables/useTabRovingFocus.d.ts +16 -16
  373. package/dist/components/tabs/constants.d.ts +1 -1
  374. package/dist/components/tabs/index.d.ts +1 -1
  375. package/dist/components/tabs/styles/drag.css +1 -1
  376. package/dist/components/tabs/styles/segmented.css +1 -1
  377. package/dist/components/tags-input/TagsInput.vue.d.ts +28 -15
  378. package/dist/components/tags-input/TagsInputInput.vue.d.ts +8 -6
  379. package/dist/components/tags-input/TagsInputItem.vue.d.ts +9 -8
  380. package/dist/components/tags-input/TagsInputItemDelete.vue.d.ts +5 -6
  381. package/dist/components/tags-input/TagsInputItemText.vue.d.ts +5 -6
  382. package/dist/components/tags-input/context.d.ts +5 -0
  383. package/dist/components/tags-input/index.d.ts +5 -5
  384. package/dist/components/tags-input/styles.css +1 -0
  385. package/dist/components/textarea/Textarea.vue.d.ts +10 -55
  386. package/dist/components/textarea/index.d.ts +2 -1
  387. package/dist/components/textarea/types.d.ts +22 -0
  388. package/dist/components/timeline/ContinuousMarkers.vue.d.ts +2 -4
  389. package/dist/components/timeline/ContinuousRail.vue.d.ts +3 -6
  390. package/dist/components/timeline/ContinuousTimeline.vue.d.ts +12 -13
  391. package/dist/components/timeline/GlassTimeline.vue.d.ts +7 -8
  392. package/dist/components/timeline/ScrubberTimeline.vue.d.ts +4 -4
  393. package/dist/components/timeline/SegmentedTimeline.vue.d.ts +2 -3
  394. package/dist/components/timeline/geometry.d.ts +3 -4
  395. package/dist/components/timeline/types.d.ts +3 -3
  396. package/dist/components/toast/Toast.vue.d.ts +37 -79
  397. package/dist/components/toast/ToastAction.vue.d.ts +5 -5
  398. package/dist/components/toast/ToastClose.vue.d.ts +4 -5
  399. package/dist/components/toast/ToastDescription.vue.d.ts +4 -5
  400. package/dist/components/toast/ToastTitle.vue.d.ts +4 -5
  401. package/dist/components/toast/Toaster.vue.d.ts +1 -1
  402. package/dist/components/toast/index.d.ts +8 -9
  403. package/dist/components/toast/use-toast.d.ts +20 -163
  404. package/dist/components/toggle-group/ToggleGroup.vue.d.ts +44 -22
  405. package/dist/components/toggle-group/ToggleGroupItem.vue.d.ts +11 -9
  406. package/dist/components/toggle-group/index.d.ts +3 -2
  407. package/dist/components/toggle-group/styles.css +1 -0
  408. package/dist/components/toggle-group/toggleGroupContext.d.ts +4 -15
  409. package/dist/components/tooltip/Tooltip.vue.d.ts +20 -7
  410. package/dist/components/tooltip/TooltipContent.vue.d.ts +20 -12
  411. package/dist/components/tooltip/TooltipProvider.vue.d.ts +12 -5
  412. package/dist/components/tooltip/TooltipTrigger.vue.d.ts +12 -5
  413. package/dist/components/tooltip/index.d.ts +4 -4
  414. package/dist/components/typewriter/composables/useTypewriter.d.ts +1 -0
  415. package/dist/components/typewriter/utils/timing.d.ts +0 -2
  416. package/dist/components/watercolor-dot/WatercolorDot.vue.d.ts +5 -18
  417. package/dist/components/watercolor-dot/useWatercolorBlob.d.ts +1 -4
  418. package/dist/composables/color/accent-tone-solve.d.ts +2 -5
  419. package/dist/composables/color/index.d.ts +31 -38
  420. package/dist/composables/color/useAccentTone.d.ts +0 -3
  421. package/dist/composables/color/value.d.ts +21 -0
  422. package/dist/composables/context/createContext.d.ts +2 -2
  423. package/dist/composables/dark/index.d.ts +1 -1
  424. package/dist/composables/dark/useGlobalDark.d.ts +7 -6
  425. package/dist/composables/dom/useBreakpoint.d.ts +2 -2
  426. package/dist/composables/dom/useClipboard.d.ts +28 -52
  427. package/dist/composables/dom/useDocumentVisibility.d.ts +3 -1
  428. package/dist/composables/dom/useIdleReady.d.ts +5 -6
  429. package/dist/composables/dom/useTokenColor.d.ts +2 -2
  430. package/dist/composables/dom/useUserInvalidAria.d.ts +2 -3
  431. package/dist/composables/dom/useViewportReady.d.ts +4 -4
  432. package/dist/composables/glass/backdropLuminanceSample.d.ts +7 -6
  433. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +7 -1
  434. package/dist/composables/glass/textureUpload.d.ts +8 -10
  435. package/dist/composables/glass/useGlassBackdropLuminance.d.ts +11 -19
  436. package/dist/composables/glass/useSpecularPointer.d.ts +6 -6
  437. package/dist/composables/glass/useSpecularTracking.d.ts +12 -15
  438. package/dist/composables/glass/wave/waveField.d.ts +2 -2
  439. package/dist/composables/glass/wave/waveField.glsl.d.ts +1 -1
  440. package/dist/composables/glass/wave/waveField.wgsl.d.ts +1 -1
  441. package/dist/composables/glass/webgl/backingSize.d.ts +5 -8
  442. package/dist/composables/glass/webgl/compile.d.ts +1 -1
  443. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +20 -20
  444. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -28
  445. package/dist/composables/glass/webgl/visibility.d.ts +3 -4
  446. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +10 -10
  447. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +1 -1
  448. package/dist/composables/glass/webgpu/webgpuCanvasTypes.d.ts +12 -10
  449. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +15 -16
  450. package/dist/composables/motion/core/asElement.d.ts +2 -0
  451. package/dist/composables/motion/{constants.d.ts → core/constants.d.ts} +2 -3
  452. package/dist/composables/motion/core/index.d.ts +20 -23
  453. package/dist/composables/motion/core/useReducedMotion.d.ts +5 -0
  454. package/dist/composables/motion/core/useViewTransition.d.ts +44 -0
  455. package/dist/composables/motion/index.d.ts +14 -16
  456. package/dist/composables/motion/{useDockCtaReceive.d.ts → morph/useDockCtaReceive.d.ts} +2 -3
  457. package/dist/composables/motion/{useDragMorph.d.ts → morph/useDragMorph.d.ts} +7 -7
  458. package/dist/composables/motion/morph/useElementMorph.d.ts +50 -0
  459. package/dist/composables/motion/{useLeadTrail.d.ts → morph/useLeadTrail.d.ts} +6 -6
  460. package/dist/composables/motion/{useSelectionGroup.d.ts → morph/useSelectionGroup.d.ts} +7 -5
  461. package/dist/composables/motion/{useSelectionIndicator.d.ts → morph/useSelectionIndicator.d.ts} +9 -16
  462. package/dist/composables/motion/{useNumericTransition.d.ts → number/useNumericTransition.d.ts} +2 -2
  463. package/dist/composables/motion/{pointerFieldMappings.d.ts → pointer/pointerFieldMappings.d.ts} +7 -10
  464. package/dist/composables/motion/{usePointerVelocityField.d.ts → pointer/usePointerVelocityField.d.ts} +1 -1
  465. package/dist/composables/motion/{bloomUpField.d.ts → reveal/bloomUpField.d.ts} +1 -1
  466. package/dist/composables/motion/reveal/useBloomUp.d.ts +33 -0
  467. package/dist/composables/motion/{useLiquidReveal.d.ts → reveal/useLiquidReveal.d.ts} +5 -5
  468. package/dist/composables/motion/{useStagger.d.ts → reveal/useStagger.d.ts} +3 -3
  469. package/dist/composables/motion/reveal/useStaggerReveal.d.ts +28 -0
  470. package/dist/composables/motion/{useScrollChrome.d.ts → scroll/useScrollChrome.d.ts} +2 -2
  471. package/dist/composables/motion/{useScrollProgress.d.ts → scroll/useScrollProgress.d.ts} +12 -2
  472. package/dist/composables/motion/{springPresets.d.ts → spring/springPresets.d.ts} +8 -7
  473. package/dist/composables/motion/{springProjection.d.ts → spring/springProjection.d.ts} +3 -0
  474. package/dist/composables/motion/{useLiquidFlex.d.ts → spring/useLiquidFlex.d.ts} +11 -12
  475. package/dist/composables/motion/{useLiquidPress.d.ts → spring/useLiquidPress.d.ts} +3 -3
  476. package/dist/composables/motion/{useSpring.d.ts → spring/useSpring.d.ts} +5 -2
  477. package/dist/composables/motion/{useSpringMount.d.ts → spring/useSpringMount.d.ts} +8 -1
  478. package/dist/composables/sidebar/types.d.ts +3 -3
  479. package/dist/{configurator-CSENXXSy.js → configurator-M5OaIlJd.js} +11 -11
  480. package/dist/configurator.js +1 -1
  481. package/dist/{constants-DRZmNIY-.js → constants-nBz23tJE.js} +1 -1
  482. package/dist/constellation.js +125 -124
  483. package/dist/{createCanvasLifecycle-hsFkQVdl.js → createCanvasLifecycle-DbXRwjU_.js} +87 -82
  484. package/dist/dark-mode-toggle.d.ts +1 -0
  485. package/dist/dark-mode-toggle.js +43 -0
  486. package/dist/dark.js +1 -1
  487. package/dist/data-table-BygKg6ZA.js +491 -0
  488. package/dist/data-table.js +1 -1
  489. package/dist/deck.js +3 -3
  490. package/dist/dialog-TNRDkcE4.js +385 -0
  491. package/dist/dialog.js +1 -1
  492. package/dist/dock.js +523 -940
  493. package/dist/dockContext-BUTlGRNJ.js +13 -0
  494. package/dist/dom.js +52 -114
  495. package/dist/drawer.js +262 -209
  496. package/dist/dropdown-menu-BlbnvMaZ.js +507 -0
  497. package/dist/dropdown-menu.js +2 -2
  498. package/dist/easing.js +294 -278
  499. package/dist/expandable-container.js +107 -93
  500. package/dist/fading-scroll-DhxXIhm2.js +96 -0
  501. package/dist/fading-scroll.js +1 -1
  502. package/dist/field-control.css_vue_type_style_index_0_src_true_lang-CeLay9Tk.js +21 -0
  503. package/dist/floating-dB5TD88k.js +7 -0
  504. package/dist/{flow.glsl-DEGFGE11.js → flow.wgsl-Cd2GUkPx.js} +2 -2
  505. package/dist/fonts/README.md +14 -18
  506. package/dist/forms.js +279 -174
  507. package/dist/fourier-field.js +148 -148
  508. package/dist/glass-ui.css +1 -1
  509. package/dist/glass-ui.js +512 -373
  510. package/dist/handmark.js +4 -4
  511. package/dist/header-ribbon.js +37 -68
  512. package/dist/index.d.ts +9 -18
  513. package/dist/infinite-scroll.js +31 -28
  514. package/dist/instrument-chassis.js +54 -2
  515. package/dist/label-DnMqH7jr.js +55 -0
  516. package/dist/label.js +1 -1
  517. package/dist/labeled-field.js +291 -214
  518. package/dist/liquid-grid.js +141 -151
  519. package/dist/menuRowClass-Nh7CtMON.js +12 -0
  520. package/dist/metric.d.ts +1 -0
  521. package/dist/metric.js +192 -0
  522. package/dist/motion-core.js +73 -165
  523. package/dist/motion.js +104 -161
  524. package/dist/number-field-Boe09SvX.js +154 -0
  525. package/dist/number-field.js +1 -1
  526. package/dist/pager-dots.js +2 -2
  527. package/dist/paper-backdrop.js +16 -24
  528. package/dist/{pointerFieldMappings-CZojkgKj.js → pointerFieldMappings-DP5tla5z.js} +4 -7
  529. package/dist/popover-BQGYXZyO.js +244 -0
  530. package/dist/popover.js +1 -1
  531. package/dist/{presets-CxeNvxuO.js → presets-5myqNv59.js} +1 -1
  532. package/dist/primitive-B2t2jdqM.js +11 -0
  533. package/dist/progress-DClbhRAT.js +88 -0
  534. package/dist/progress.js +1 -1
  535. package/dist/pulse.js +29 -43
  536. package/dist/reactive.js +1 -1
  537. package/dist/resolveCanvasColor-DS_6DBxA.js +82 -0
  538. package/dist/resolveSurfaceClass-DCZ4PZcy.js +6 -0
  539. package/dist/{scrollReader-C2oK9Hb8.js → scrollReader-Brf5cQNo.js} +1 -1
  540. package/dist/search.js +241 -213
  541. package/dist/select-BcBAyLXA.js +336 -0
  542. package/dist/select.js +1 -1
  543. package/dist/selection-DqIULxRG.js +6 -0
  544. package/dist/separator-CgZInrX-.js +75 -0
  545. package/dist/separator.js +1 -1
  546. package/dist/sidebar.js +53 -42
  547. package/dist/slider-DzqeQmMu.js +162 -0
  548. package/dist/slider.js +2 -2
  549. package/dist/sortable-list.js +9 -8
  550. package/dist/springPresets-rCii5KqX.js +52 -0
  551. package/dist/status-dot.js +26 -43
  552. package/dist/styles/accessibility.css +1 -1
  553. package/dist/styles/animations.css +1 -1
  554. package/dist/styles/components.css +1 -1
  555. package/dist/styles/glass/a11y-fallback.css +1 -1
  556. package/dist/styles/glass/accent-tone.css +1 -1
  557. package/dist/styles/glass/control-surfaces.css +1 -1
  558. package/dist/styles/glass/defined.css +1 -1
  559. package/dist/styles/glass/glass-atom.css +1 -1
  560. package/dist/styles/glass/glass-capsule.css +1 -1
  561. package/dist/styles/glass/glass-chip.css +1 -1
  562. package/dist/styles/glass/ladder.css +1 -1
  563. package/dist/styles/glass/liquid-fill.css +1 -1
  564. package/dist/styles/glass/material-roles.css +1 -1
  565. package/dist/styles/glass/material.css +1 -1
  566. package/dist/styles/glass/reveal.css +1 -1
  567. package/dist/styles/glass/squircle.css +1 -1
  568. package/dist/styles/glass/surface-axis.css +1 -1
  569. package/dist/styles/glass/surfaces-pager.css +1 -1
  570. package/dist/styles/glass/surfaces.css +1 -1
  571. package/dist/styles/glass-refract.css +1 -1
  572. package/dist/styles/glass.css +1 -1
  573. package/dist/styles/index.css +1 -1
  574. package/dist/styles/paper.css +1 -1
  575. package/dist/styles/scroll-driven.css +1 -1
  576. package/dist/styles/theme/bridges.css +1 -1
  577. package/dist/styles/theme/radius.css +1 -1
  578. package/dist/styles/tokens/color-radius.css +1 -1
  579. package/dist/styles/tokens/dark-arm.css +1 -1
  580. package/dist/styles/tokens/glass-deep.css +1 -1
  581. package/dist/styles/tokens/glass-fx.css +1 -1
  582. package/dist/styles/tokens/glass.css +1 -1
  583. package/dist/styles/tokens/light-dark.css +1 -1
  584. package/dist/styles/tokens/manifest.d.ts +14 -0
  585. package/dist/styles/tokens/manifest.ts +56 -0
  586. package/dist/styles/tokens/motion-registers.css +1 -1
  587. package/dist/styles/tokens/offsets.css +1 -1
  588. package/dist/styles/tokens/property-regs-specular.css +1 -1
  589. package/dist/styles/tokens/property-regs.css +1 -1
  590. package/dist/styles/tokens/scale-paper.css +1 -1
  591. package/dist/styles/tokens/scheme-motion.css +1 -1
  592. package/dist/styles/tokens/scheme-spring.css +1 -1
  593. package/dist/styles/tokens/scroll-tokens.css +1 -1
  594. package/dist/styles/tokens/shadow.css +1 -1
  595. package/dist/styles/tokens/sizing-config.css +1 -1
  596. package/dist/styles/tokens/sizing.css +1 -1
  597. package/dist/styles/tokens.d.ts +4 -9
  598. package/dist/styles/tokens.ts +5 -9
  599. package/dist/styles/transitions.css +1 -1
  600. package/dist/styles/typography/scale.css +1 -1
  601. package/dist/styles/typography/semantic.css +1 -1
  602. package/dist/styles/typography/utilities.css +1 -1
  603. package/dist/styles/utilities/a11y-overrides.css +1 -1
  604. package/dist/styles/utilities/base-misc.css +1 -1
  605. package/dist/styles/utilities/base.css +1 -1
  606. package/dist/styles/utilities/btn.css +1 -1
  607. package/dist/styles/utilities/components.css +1 -1
  608. package/dist/styles/utilities/metal.css +1 -1
  609. package/dist/styles/utilities/responsive.css +1 -0
  610. package/dist/styles/view-transition.css +1 -1
  611. package/dist/{supportsCssTimeline-Dz-GVxXM.js → supportsCssTimeline-C2zyWpl8.js} +1 -1
  612. package/dist/surface.js +2 -3
  613. package/dist/switch-DZjQuFLa.js +54 -0
  614. package/dist/switch.js +1 -1
  615. package/dist/tabs.js +141 -169
  616. package/dist/timeline.js +86 -87
  617. package/dist/toast-CH5mnsYT.js +267 -0
  618. package/dist/toast.js +1 -1
  619. package/dist/toggle-group-O6jBo7AE.js +150 -0
  620. package/dist/toggle-group.js +1 -1
  621. package/dist/tokens.js +96 -5
  622. package/dist/tooltip-Drx5qnw_.js +148 -0
  623. package/dist/tooltip.js +1 -1
  624. package/dist/typewriter.js +222 -193
  625. package/dist/{useAccentTone-C-p6WdPe.js → useAccentTone-DyInfHXE.js} +2 -2
  626. package/dist/{useAnimatedNumber-BRVVaFFc.js → useAnimatedNumber-WPtMz0AN.js} +2 -2
  627. package/dist/useClipboard-D36OTaeT.js +53 -0
  628. package/dist/useDockCtaReceive-DkrOTM0q.js +146 -0
  629. package/dist/useDocumentVisibility-Dh_TGXsU.js +21 -0
  630. package/dist/useDragMorph-BogSV_nv.js +293 -0
  631. package/dist/{useIntersectionPause-B-dbxl9w.js → useIntersectionPause-B5mAU6XY.js} +15 -15
  632. package/dist/useLeadTrail-AW1-zZcd.js +74 -0
  633. package/dist/{useLiquidFlex-Ch4exNvN.js → useLiquidFlex-TJZmRqyY.js} +1 -1
  634. package/dist/useLiquidPress-BOxuDkKa.js +101 -0
  635. package/dist/useMotionAxis-D-rtIhca.js +19 -0
  636. package/dist/usePointerVelocityField-DsIf7yyq.js +121 -0
  637. package/dist/useRAFLoop-B3YlWK4M.js +98 -0
  638. package/dist/useReducedMotion-vCXA_vyM.js +27 -0
  639. package/dist/useRoutePointer-B8itM7Ka.js +53 -0
  640. package/dist/useScrollProgress-CSFYXIZT.js +43 -0
  641. package/dist/useScrollTrigger-BDdqptlc.js +87 -0
  642. package/dist/useSelectionGroup-B5XplBbo.js +132 -0
  643. package/dist/{useSpring-BBSKFx_0.js → useSpring-9u2_shxV.js} +2 -2
  644. package/dist/useSpringMount-uQ8QL9Ff.js +74 -0
  645. package/dist/useTabRovingFocus-YnWh-Ytr.js +169 -0
  646. package/dist/useTextHighlight-mfwNIC1f.js +112 -0
  647. package/dist/{useTouchGate-Cj5fOkTv.js → useTouchGate-B4mzQcHJ.js} +1 -1
  648. package/dist/vSpecular-DMJo8pfD.js +68 -0
  649. package/dist/value-DMhh2R94.js +33 -0
  650. package/dist/watercolor-dot.js +77 -103
  651. package/package.json +163 -232
  652. package/dist/DropdownMenuTrigger-BzQtd9lt.js +0 -65
  653. package/dist/FadingScroll-C1ZWEjmG.js +0 -83
  654. package/dist/Input-B4WQ_CMc.js +0 -57
  655. package/dist/Surface-BWRfwyn8.js +0 -59
  656. package/dist/accent-tone-solve-Dii9ePhK.js +0 -20
  657. package/dist/badge-C0C-rTBu.js +0 -80
  658. package/dist/button-32mg6xA8.js +0 -194
  659. package/dist/card-16xmzIr3.js +0 -303
  660. package/dist/coalesce-metric-znAcLzkB.js +0 -13
  661. package/dist/collapsible-bPzS1aQk.js +0 -63
  662. package/dist/color-swatch.d.ts +0 -1
  663. package/dist/color-swatch.js +0 -48
  664. package/dist/command-BjPjUU9z.js +0 -307
  665. package/dist/components/_shared/menuItemVariants.d.ts +0 -51
  666. package/dist/components/_shared/useControlSize.d.ts +0 -46
  667. package/dist/components/_shared/useStalePropWarning.d.ts +0 -27
  668. package/dist/components/_shared/useSurfaceAxis.d.ts +0 -64
  669. package/dist/components/card/ScrollCard.vue.d.ts +0 -33
  670. package/dist/components/card/ScrollCardHeader.vue.d.ts +0 -17
  671. package/dist/components/carousel/CarouselNext.vue.d.ts +0 -21
  672. package/dist/components/carousel/CarouselPrevious.vue.d.ts +0 -21
  673. package/dist/components/color-swatch/ColorSwatch.vue.d.ts +0 -22
  674. package/dist/components/color-swatch/index.d.ts +0 -1
  675. package/dist/components/controls/DarkModeToggle.vue.d.ts +0 -32
  676. package/dist/components/controls/dark-mode-toggle.css +0 -1
  677. package/dist/components/controls/index.d.ts +0 -1
  678. package/dist/components/data-table/DataTablePagination.vue.d.ts +0 -13
  679. package/dist/components/dock/DockSection.vue.d.ts +0 -69
  680. package/dist/components/dock/DockStack.vue.d.ts +0 -73
  681. package/dist/components/dock/composables/dockMorphContext.d.ts +0 -91
  682. package/dist/components/dock/composables/useDockFisheye.d.ts +0 -24
  683. package/dist/components/dock/composables/useDockPopover.d.ts +0 -70
  684. package/dist/components/dock/styles/fisheye.css +0 -1
  685. package/dist/components/dock/styles/popover.css +0 -1
  686. package/dist/components/dock/styles/section.css +0 -1
  687. package/dist/components/focus-scope/FocusScope.vue.d.ts +0 -20
  688. package/dist/components/focus-scope/index.d.ts +0 -2
  689. package/dist/components/goo-filter/GooFilter.vue.d.ts +0 -22
  690. package/dist/components/goo-filter/index.d.ts +0 -1
  691. package/dist/components/icon-chip/IconChip.vue.d.ts +0 -4
  692. package/dist/components/icon-chip/index.d.ts +0 -2
  693. package/dist/components/icon-chip/styles.css +0 -1
  694. package/dist/components/icon-chip/types.d.ts +0 -92
  695. package/dist/components/icon-tooltip/IconTooltip.vue.d.ts +0 -16
  696. package/dist/components/icon-tooltip/index.d.ts +0 -1
  697. package/dist/components/instrument-chassis/ChassisDivider.vue.d.ts +0 -30
  698. package/dist/components/metric-badge/MetricBadge.vue.d.ts +0 -40
  699. package/dist/components/metric-badge/index.d.ts +0 -2
  700. package/dist/components/metric-cell/MetricCell.vue.d.ts +0 -108
  701. package/dist/components/metric-cell/index.d.ts +0 -2
  702. package/dist/components/metric-stack/MetricRow.vue.d.ts +0 -120
  703. package/dist/components/metric-stack/MetricStack.vue.d.ts +0 -92
  704. package/dist/components/metric-stack/index.d.ts +0 -4
  705. package/dist/components/notification/Notification.vue.d.ts +0 -16
  706. package/dist/components/notification/index.d.ts +0 -1
  707. package/dist/components/progress/ProgressDefault.vue.d.ts +0 -9
  708. package/dist/components/progress/ProgressGradient.vue.d.ts +0 -26
  709. package/dist/components/progress/ProgressLiquid.vue.d.ts +0 -22
  710. package/dist/components/progress/valueMarks.css +0 -1
  711. package/dist/components/spa-view/SpaView.vue.d.ts +0 -50
  712. package/dist/components/spa-view/index.d.ts +0 -2
  713. package/dist/components/split-chars/SplitChars.vue.d.ts +0 -53
  714. package/dist/components/split-chars/index.d.ts +0 -1
  715. package/dist/components/tabs/composables/useEyeglassLive.d.ts +0 -17
  716. package/dist/components/toggle/Toggle.vue.d.ts +0 -29
  717. package/dist/components/toggle/index.d.ts +0 -26
  718. package/dist/composables/glass/webgl/shaders/glass-refract.glsl.d.ts +0 -36
  719. package/dist/composables/motion/curves.d.ts +0 -48
  720. package/dist/composables/motion/gooBarbellGeometry.d.ts +0 -79
  721. package/dist/composables/motion/morphSignatures.d.ts +0 -88
  722. package/dist/composables/motion/suite.d.ts +0 -2
  723. package/dist/composables/motion/useBloomUp.d.ts +0 -97
  724. package/dist/composables/motion/useCharStagger.d.ts +0 -44
  725. package/dist/composables/motion/useElementMorph.d.ts +0 -107
  726. package/dist/composables/motion/useGooMorph.d.ts +0 -72
  727. package/dist/composables/motion/usePrioritizedTask.d.ts +0 -41
  728. package/dist/composables/motion/useStaggerReveal.d.ts +0 -52
  729. package/dist/composables/motion/useViewTransition.d.ts +0 -81
  730. package/dist/composables/virtual/index.d.ts +0 -4
  731. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +0 -72
  732. package/dist/composables/virtual/useWindowedStore.d.ts +0 -43
  733. package/dist/composables/virtual/virtualSectionLayout.d.ts +0 -103
  734. package/dist/controls.d.ts +0 -1
  735. package/dist/controls.js +0 -83
  736. package/dist/data-table-DveMdgBM.js +0 -629
  737. package/dist/dialog-BzQxKrUr.js +0 -281
  738. package/dist/dockContext-4S9qP0Z4.js +0 -13
  739. package/dist/dropdown-menu-DORIA52F.js +0 -378
  740. package/dist/focus-scope-DUTKveod.js +0 -23
  741. package/dist/focus-scope.d.ts +0 -1
  742. package/dist/focus-scope.js +0 -2
  743. package/dist/icon-chip-BWuxz1-u.js +0 -57
  744. package/dist/icon-chip.d.ts +0 -1
  745. package/dist/icon-chip.js +0 -2
  746. package/dist/icon-tooltip-CO6rw0dZ.js +0 -25
  747. package/dist/icon-tooltip.d.ts +0 -1
  748. package/dist/icon-tooltip.js +0 -2
  749. package/dist/instrument-chassis-Cvstg4_U.js +0 -65
  750. package/dist/label-Cj38tJKG.js +0 -36
  751. package/dist/menuItemVariants-D6AOzzND.js +0 -36
  752. package/dist/metric-badge.d.ts +0 -1
  753. package/dist/metric-badge.js +0 -79
  754. package/dist/metric-cell.d.ts +0 -1
  755. package/dist/metric-cell.js +0 -61
  756. package/dist/metric-stack.d.ts +0 -1
  757. package/dist/metric-stack.js +0 -113
  758. package/dist/motion-curves.d.ts +0 -1
  759. package/dist/motion-curves.js +0 -146
  760. package/dist/notification-DVs7ODMg.js +0 -52
  761. package/dist/notification.d.ts +0 -1
  762. package/dist/notification.js +0 -2
  763. package/dist/number-field-PvkGedHk.js +0 -140
  764. package/dist/popover-WMgyRSyN.js +0 -256
  765. package/dist/progress-C-HHuFZy.js +0 -192
  766. package/dist/resolveCanvasColor-yarP5bdk.js +0 -93
  767. package/dist/select-BIv4R3Ir.js +0 -326
  768. package/dist/separator-CBU94kTM.js +0 -62
  769. package/dist/slider-Cc_qw6GA.js +0 -166
  770. package/dist/spa-view.d.ts +0 -1
  771. package/dist/spa-view.js +0 -46
  772. package/dist/springPresets-h5VKJQqG.js +0 -58
  773. package/dist/styles/glass/progress-rail.css +0 -1
  774. package/dist/switch-Boj4Ucn5.js +0 -49
  775. package/dist/toast-kAbchIN2.js +0 -281
  776. package/dist/toggle-group-BPchFsns.js +0 -178
  777. package/dist/tooltip-BmOQJzh0.js +0 -111
  778. package/dist/useControlSize-CFfOk8I-.js +0 -9
  779. package/dist/useDockCtaReceive-CK-RLASa.js +0 -257
  780. package/dist/useDocumentVisibility-YeBDGqtI.js +0 -17
  781. package/dist/useDragMorph-7ygF9O0m.js +0 -93
  782. package/dist/useGooMorph-D1F6QJlH.js +0 -349
  783. package/dist/useLeadTrail-BYu8dq4G.js +0 -74
  784. package/dist/useLiquidPress-BYcwwGQV.js +0 -68
  785. package/dist/useMotionAxis-DCCXMC-i.js +0 -20
  786. package/dist/usePointerVelocityField-BdvnO0py.js +0 -122
  787. package/dist/useRAFLoop-BtwQ9DyY.js +0 -109
  788. package/dist/useRoutePointer-BDNMFN73.js +0 -52
  789. package/dist/useScrollProgress-DZI4nf4v.js +0 -35
  790. package/dist/useSelectionGroup-LDzBdR1Y.js +0 -215
  791. package/dist/useSpringMount-C6-DBx4e.js +0 -71
  792. package/dist/useSpringPress-BypV_KO-.js +0 -36
  793. package/dist/useSurfaceAxis-DudiZVOR.js +0 -10
  794. package/dist/useTabRovingFocus-DkLYwo4L.js +0 -143
  795. package/dist/vReveal-DZfWl9XI.js +0 -10
  796. package/dist/vSpecular-CQFmLNzA.js +0 -68
  797. package/src/fonts/README.md +0 -124
  798. package/src/fonts/fira-code/OFL.txt +0 -93
  799. package/src/fonts/fira-code/fira-code-latin-ext.woff2 +0 -0
  800. package/src/fonts/fira-code/fira-code-latin.woff2 +0 -0
  801. package/src/fonts/plus-jakarta-sans/OFL.txt +0 -93
  802. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin-ext.woff2 +0 -0
  803. package/src/fonts/plus-jakarta-sans/plus-jakarta-sans-latin.woff2 +0 -0
  804. package/src/styles/accessibility.css +0 -48
  805. package/src/styles/animations.css +0 -468
  806. package/src/styles/draw-in.css +0 -89
  807. package/src/styles/fonts.css +0 -143
  808. package/src/styles/glass/a11y-fallback.css +0 -188
  809. package/src/styles/glass/accent-tone.css +0 -66
  810. package/src/styles/glass/control-surfaces.css +0 -171
  811. package/src/styles/glass/deep.css +0 -114
  812. package/src/styles/glass/defined.css +0 -88
  813. package/src/styles/glass/glass-atom.css +0 -247
  814. package/src/styles/glass/glass-capsule.css +0 -175
  815. package/src/styles/glass/glass-chip.css +0 -211
  816. package/src/styles/glass/grain-overlay.css +0 -79
  817. package/src/styles/glass/ladder-undershadow.css +0 -61
  818. package/src/styles/glass/ladder.css +0 -452
  819. package/src/styles/glass/liquid-enter.css +0 -240
  820. package/src/styles/glass/liquid-fill.css +0 -65
  821. package/src/styles/glass/material-roles.css +0 -18
  822. package/src/styles/glass/material.css +0 -500
  823. package/src/styles/glass/progress-rail.css +0 -78
  824. package/src/styles/glass/reveal.css +0 -333
  825. package/src/styles/glass/rim.css +0 -122
  826. package/src/styles/glass/squircle.css +0 -58
  827. package/src/styles/glass/surface-axis.css +0 -136
  828. package/src/styles/glass/surfaces-pager.css +0 -79
  829. package/src/styles/glass/surfaces.css +0 -434
  830. package/src/styles/glass-refract.css +0 -112
  831. package/src/styles/glass-specular-track.css +0 -74
  832. package/src/styles/glass.css +0 -110
  833. package/src/styles/index.css +0 -288
  834. package/src/styles/paper.css +0 -187
  835. package/src/styles/scroll-choreography.css +0 -294
  836. package/src/styles/scroll-chrome.css +0 -123
  837. package/src/styles/scroll-driven.css +0 -123
  838. package/src/styles/theme/bridges.css +0 -380
  839. package/src/styles/theme/dark.css +0 -7
  840. package/src/styles/theme/literals.css +0 -104
  841. package/src/styles/theme/radius.css +0 -148
  842. package/src/styles/theme.css +0 -33
  843. package/src/styles/tokens/color-radius.css +0 -308
  844. package/src/styles/tokens/dark-arm-glass.css +0 -55
  845. package/src/styles/tokens/dark-arm.css +0 -455
  846. package/src/styles/tokens/glass-deep.css +0 -126
  847. package/src/styles/tokens/glass-fx.css +0 -480
  848. package/src/styles/tokens/glass.css +0 -477
  849. package/src/styles/tokens/light-dark.css +0 -216
  850. package/src/styles/tokens/motion-registers.css +0 -93
  851. package/src/styles/tokens/offsets.css +0 -142
  852. package/src/styles/tokens/on-glass-fg.css +0 -39
  853. package/src/styles/tokens/property-regs-specular.css +0 -160
  854. package/src/styles/tokens/property-regs.css +0 -448
  855. package/src/styles/tokens/scale-paper.css +0 -495
  856. package/src/styles/tokens/scheme-motion.css +0 -425
  857. package/src/styles/tokens/scheme-spring.css +0 -282
  858. package/src/styles/tokens/scroll-tokens.css +0 -137
  859. package/src/styles/tokens/shadow.css +0 -206
  860. package/src/styles/tokens/sizing-config.css +0 -110
  861. package/src/styles/tokens/sizing.css +0 -505
  862. package/src/styles/tokens.css +0 -68
  863. package/src/styles/tokens.ts +0 -58
  864. package/src/styles/transitions.css +0 -228
  865. package/src/styles/typography/scale.css +0 -166
  866. package/src/styles/typography/semantic.css +0 -233
  867. package/src/styles/typography/utilities.css +0 -197
  868. package/src/styles/typography.css +0 -46
  869. package/src/styles/utilities/a11y-overrides.css +0 -184
  870. package/src/styles/utilities/base-misc.css +0 -307
  871. package/src/styles/utilities/base.css +0 -337
  872. package/src/styles/utilities/btn.css +0 -306
  873. package/src/styles/utilities/components.css +0 -337
  874. package/src/styles/utilities/metal.css +0 -272
  875. package/src/styles/utilities.css +0 -24
  876. package/src/styles/view-transition.css +0 -67
  877. package/src/styles/viz-reveal.css +0 -63
  878. /package/dist/{_plugin-vue_export-helper-C1je1s0u.js → _plugin-vue_export-helper-B3ysoDQm.js} +0 -0
  879. /package/dist/{compile-DK3Fri1B.js → compile-D7VYG3gi.js} +0 -0
  880. /package/dist/composables/glass/{webgl/shaders/procedural-color.glsl.d.ts → procedural/color.glsl.d.ts} +0 -0
  881. /package/dist/{components/aurora/constants/shaders/procedural-color.wgsl.d.ts → composables/glass/procedural/color.wgsl.d.ts} +0 -0
  882. /package/dist/composables/motion/{motionTempo.d.ts → core/motionTempo.d.ts} +0 -0
  883. /package/dist/composables/motion/{useIntersectionPause.d.ts → core/useIntersectionPause.d.ts} +0 -0
  884. /package/dist/composables/motion/{useRAFLoop.d.ts → core/useRAFLoop.d.ts} +0 -0
  885. /package/dist/composables/motion/{useYieldToMain.d.ts → core/useYieldToMain.d.ts} +0 -0
  886. /package/dist/composables/motion/{useAnimatedNumber.d.ts → number/useAnimatedNumber.d.ts} +0 -0
  887. /package/dist/composables/motion/{useAnimatedNumberMap.d.ts → number/useAnimatedNumberMap.d.ts} +0 -0
  888. /package/dist/composables/motion/{useCountup.d.ts → number/useCountup.d.ts} +0 -0
  889. /package/dist/composables/motion/{useRoutePointer.d.ts → pointer/useRoutePointer.d.ts} +0 -0
  890. /package/dist/composables/motion/{useTextHighlight.d.ts → reveal/useTextHighlight.d.ts} +0 -0
  891. /package/dist/composables/motion/{vReveal.d.ts → reveal/vReveal.d.ts} +0 -0
  892. /package/dist/composables/motion/{scrollReader.d.ts → scroll/scrollReader.d.ts} +0 -0
  893. /package/dist/composables/motion/{supportsCssTimeline.d.ts → scroll/supportsCssTimeline.d.ts} +0 -0
  894. /package/dist/composables/motion/{useScrollPin.d.ts → scroll/useScrollPin.d.ts} +0 -0
  895. /package/dist/composables/motion/{useScrollScene.d.ts → scroll/useScrollScene.d.ts} +0 -0
  896. /package/dist/composables/motion/{useScrollTrigger.d.ts → scroll/useScrollTrigger.d.ts} +0 -0
  897. /package/dist/composables/motion/{useSpringPress.d.ts → spring/useSpringPress.d.ts} +0 -0
  898. /package/dist/{createContext-FU0n5MGK.js → createContext-BhkE9mLH.js} +0 -0
  899. /package/dist/{dark-DIH-blY1.js → dark-z_P5QwqI.js} +0 -0
  900. /package/dist/{motionTempo-CMS5b0Vu.js → motionTempo-tscp92Nm.js} +0 -0
  901. /package/dist/{prng-Dz2_9RJu.js → prng-2uS6J_A1.js} +0 -0
  902. /package/dist/{rendererStatus-C2-zC2Q-.js → rendererStatus-BxUlBLVy.js} +0 -0
  903. /package/dist/{useDragVelocity-CbMZEBaC.js → useDragVelocity-6ONX0sr0.js} +0 -0
  904. /package/dist/{useFuzzySearch-BOgep7RE.js → useFuzzySearch-CUnZknpm.js} +0 -0
  905. /package/dist/{useResizeObserver-BcUTquV7.js → useResizeObserver-CdUlm2QZ.js} +0 -0
  906. /package/dist/{useResolveTokenColor-C07e-qaT.js → useResolveTokenColor-B2FfJnd9.js} +0 -0
  907. /package/dist/{useTimer-D8koDvJS.js → useTimer-C3yfti4C.js} +0 -0
  908. /package/dist/{useUserInvalidAria-Cr4nR3tu.js → useUserInvalidAria-0GNrddMX.js} +0 -0
  909. /package/dist/{valueDomain-B8L04u3U.js → valueDomain-SbVzoHMH.js} +0 -0
  910. /package/dist/{writeVelocityWeight-D_AcvTsE.js → writeVelocityWeight-DoGOCW3e.js} +0 -0
@@ -1,187 +0,0 @@
1
- /*
2
- * paper.css — Paper-texture primitives (BG.W-PAPER-TEXTURE-UNIFY — ONE warm
3
- * raster tooth PRIMARY; feTurbulence RETIRED as the primary, DEMOTED to an
4
- * `@supports`-gated relief enhancement).
5
- *
6
- * Two composable Tailwind `@utility` declarations:
7
- * - paper-underpaint: fixed, app-root, fullscreen tooth texture at z-index -1
8
- * - paper-grain-overlay: ::after tooth overlay for individual surfaces
9
- *
10
- * THE HISTORY the design is immune to (KS-PAPER §1.1): the paper register was
11
- * built three times on procedural SVG noise; the user rejected the SVG-noise
12
- * path TWICE ("disgusting metallic"). The class recurred a third time (D-2): the
13
- * grey `saturate=0` tooth borrowed ALL its warmth from the substrate, so once
14
- * the universal warm plane was retired, multiply desaturated surfaces below the
15
- * C 0.02 warm floor and the tooth read metallic-gray. Two structural causes: (a)
16
- * `feDiffuseLighting` computes normals from a noise bump-map → an anisotropic
17
- * brushed-metal sheen ("specular IS the metal"); (b) grey-at-source warmth was
18
- * borrowed, never baked.
19
- *
20
- * THE FIX — warmth BAKED AT SOURCE, no lighting primitive (KS-PAPER §3.Q1):
21
- * `--paper-grain-tooth` is now a WARM RASTER tooth — a deterministic, engine-
22
- * invariant, warm-ecru fiber weave composed from crossed `repeating-linear-
23
- * gradient` fibers (two fine crossed bands at incommensurate periods + one
24
- * coarse raking band; every stop a warm-ecru/umber `oklch()`, mean C ≈ 0.045,
25
- * 2-3× the 0.020 warm floor). It reads warm over ANY substrate — bare, dark, or
26
- * washed — the D-2 substrate-warmth dependency SEVERED. It has NO lighting
27
- * primitive, NO normals, NO specular term: a warm raster cannot read metallic
28
- * (KS-PAPER R2). All periods divide the 140px tile evenly → seamless repeat.
29
- *
30
- * THE DEMOTED feTurbulence — `--paper-grain-relief` (default `none`): the
31
- * procedural noise survives ONLY as a capability-gated ENHANCEMENT, layered
32
- * ABOVE the raster in the same `background-image` stack, NEVER load-bearing. It
33
- * is a WARM-DUOTONE feTurbulence (the grey noise mapped umber→ecru through an
34
- * `feComponentTransfer` `table` ramp) with NO `feDiffuseLighting`/lighting term
35
- * (the metallic primitive is retired) at a partial layer alpha — a subtle warm
36
- * fiber grain, never the sheen. sRGB-pinned, deterministic seed. Gated behind
37
- * `@supports (backdrop-filter: blur(1px))` (the library's capable-engine probe)
38
- * so a lean engine paints the always-warm raster alone.
39
- *
40
- * THE BLEND LAW (UNTOUCHED — the physically-true move): `multiply` (light — ink
41
- * sinks into the paper's pits → darken) / `screen` (dark — fiber catches light →
42
- * lighten). Baseline, sRGB-safe, identical both engines. Plain per-mode arms.
43
- * The always-present `background-image` longhand + opacity-only engage discipline
44
- * (design-idioms §12 anti-pop) survives the swap: opacity is the only engaged
45
- * channel; the image is never `none → image`.
46
- *
47
- * THE LIBRARY FENCE: `--glass-grain-opacity` (0.025/0.045) is BYTE-UNTOUCHED —
48
- * the calm glass whisper stands; paper is warm material, glass is a whisper. That
49
- * separation IS the design (the register fence, KS-PAPER §3.Q3).
50
- */
51
-
52
- /* The ONE warm-ecru raster tooth — DRY single source, both utilities resolve it.
53
- Deterministic, engine-invariant (no procedural noise), warm at SOURCE (every
54
- stop a warm-ecru/umber oklch, C ≥ 0.02); the mix-blend-mode carries the
55
- darken/lighten. All three fiber periods (2.8px / 3.5px / 7px) divide the 140px
56
- tile → seamless repeat; the two fine bands run incommensurate (LCM 14px) so the
57
- weave reads organic, not a clean grid. */
58
- :root {
59
- --paper-grain-tooth:
60
- repeating-linear-gradient(
61
- 28deg,
62
- oklch(0.9 0.045 84 / 0.5) 0,
63
- oklch(0.62 0.052 60 / 0.5) 1.4px,
64
- oklch(0.9 0.045 84 / 0.5) 2.8px
65
- ),
66
- repeating-linear-gradient(
67
- -64deg,
68
- oklch(0.88 0.04 82 / 0.38) 0,
69
- oklch(0.6 0.05 58 / 0.38) 1.75px,
70
- oklch(0.88 0.04 82 / 0.38) 3.5px
71
- ),
72
- repeating-linear-gradient(
73
- 10deg,
74
- oklch(0.85 0.05 78 / 0.28) 0,
75
- oklch(0.7 0.055 66 / 0.28) 3.5px,
76
- oklch(0.85 0.05 78 / 0.28) 7px
77
- );
78
- --paper-grain-tile: 140px;
79
- /* The demoted feTurbulence relief is DROPPED by default — the everywhere
80
- floor is the warm raster ALONE (KS-PAPER §3.Q1: the enhancement is never
81
- load-bearing; DROP unless a capable engine warrants it). */
82
- --paper-grain-relief: none;
83
- }
84
-
85
- /* feTurbulence DEMOTED — the warm-duotone fine-grain relief, gated behind the
86
- library's capable-engine probe (`backdrop-filter`) and layered ABOVE the
87
- raster. NO `feDiffuseLighting`/lighting term (the metallic primitive is
88
- retired): the grey fractalNoise is mapped umber→ecru through an
89
- `feComponentTransfer` `table` ramp and painted at a PARTIAL layer alpha, so it
90
- reads as a subtle warm fiber grain over the raster, never a brushed-metal
91
- sheen. sRGB-pinned, deterministic seed. On a lean engine the block is skipped
92
- and the always-warm raster paints alone. */
93
- @supports (backdrop-filter: blur(1px)) {
94
- :root {
95
- --paper-grain-relief: url("data:image/svg+xml,%3Csvg width='120' height='120' viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='r' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' seed='11' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='table' tableValues='0.31 0.96'/%3E%3CfeFuncG type='table' tableValues='0.25 0.9'/%3E%3CfeFuncB type='table' tableValues='0.15 0.78'/%3E%3CfeFuncA type='linear' slope='0.42' intercept='0.12'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23r)'/%3E%3C/svg%3E");
96
- }
97
- }
98
-
99
- @utility paper-underpaint {
100
- position: fixed;
101
- inset: 0;
102
- z-index: -1;
103
- pointer-events: none;
104
- /* Two ALWAYS-PRESENT layers: the demoted relief (default `none` — paints
105
- nothing) ABOVE the warm raster tooth. The layer count is stable (anti-pop);
106
- on a lean engine `--paper-grain-relief` stays `none` so only the raster
107
- paints, byte-identical in effect to a single-layer raster. A single
108
- background-size applies to both layers. */
109
- background-image: var(--paper-grain-relief), var(--paper-grain-tooth);
110
- background-repeat: repeat;
111
- background-size: var(--paper-grain-tile) var(--paper-grain-tile);
112
- opacity: var(--paper-grain-opacity, var(--glass-grain-opacity));
113
- /* LIGHT: ink sinks into the cream → multiply darkens the valleys. */
114
- mix-blend-mode: multiply;
115
- }
116
-
117
- :where(.dark) .paper-underpaint,
118
- .dark .paper-underpaint {
119
- /* DARK: fiber catches light off the ink → screen lifts (NOT soft-light, which
120
- collapses to identity on the near-black pole — the self-cancelling defect). */
121
- mix-blend-mode: screen;
122
- }
123
-
124
- @utility paper-grain-overlay {
125
- position: relative;
126
- isolation: isolate;
127
-
128
- &::after {
129
- content: "";
130
- position: absolute;
131
- inset: 0;
132
- border-radius: inherit;
133
- pointer-events: none;
134
- /* The relief (default `none`) ABOVE the warm raster tooth — two
135
- always-present layers, the anti-pop discipline (opacity is the only
136
- engaged channel; the image is never `none → image`). */
137
- background-image: var(--paper-grain-relief), var(--paper-grain-tooth);
138
- background-repeat: repeat;
139
- background-size: var(--paper-grain-tile) var(--paper-grain-tile);
140
- opacity: var(--paper-grain-opacity, var(--glass-grain-opacity));
141
- /* LIGHT tooth: multiply — the physically-true ink-into-pits darken (NOT
142
- overlay, which is identity on the L≈0.98 cream pole). */
143
- mix-blend-mode: multiply;
144
- }
145
- }
146
-
147
- :where(.dark) .paper-grain-overlay::after,
148
- .dark .paper-grain-overlay::after {
149
- /* DARK tooth: screen — fiber catches light off the ink (NOT soft-light). */
150
- mix-blend-mode: screen;
151
- }
152
-
153
- /* ═══════════════════════════════════════════════════════════════════════
154
- BG.W-FIELD-AURORA — the WARM COLORFUL FIELD register is RETIRED here.
155
- ───────────────────────────────────────────────────────────────────────
156
- The `.paper-field` CSS plane (the per-route four-layer technicolor CEL +
157
- base wash + cel-drift) is SUPERSEDED by the ONE shell `<Aurora>` (a
158
- recessive vividness:0 painterly field) mounted in AppShell.vue behind every
159
- NON-focal route. The grain register (`.paper-underpaint` /
160
- `.paper-grain-overlay::after`) below is the SURVIVOR — a clean break, no
161
- alias (`.paper-field`, its `.dark` arm, the `::before` cel-drift, the
162
- `@keyframes field-cel-drift`, and the `--field-h-raw`/`--field-intensity`
163
- @property regs are all DELETED). `proof:no-paper-field` asserts the recipe
164
- ABSENT and the grain register PRESENT.
165
- ═══════════════════════════════════════════════════════════════════════ */
166
-
167
- /* ═══════════════════════════════════════════════
168
- A11y — respect user motion + transparency preferences
169
- ═══════════════════════════════════════════════ */
170
- @media (prefers-reduced-transparency: reduce) {
171
- /* The grain drops to 0-alpha under reduced transparency — it is a
172
- transmissive enhancement, NEVER a legibility dependency. (The retired
173
- `.paper-field` PRT line that shared this block is gone; the grain
174
- register is the survivor.) */
175
- .paper-underpaint,
176
- .paper-grain-overlay::after {
177
- opacity: 0;
178
- }
179
- }
180
-
181
- @media (prefers-reduced-motion: reduce) {
182
- .paper-underpaint {
183
- /* Static noise is fine at rest; only kill animated grain shimmer if any.
184
- The underpaint is currently a still texture, but guard future motion. */
185
- animation: none !important;
186
- }
187
- }
@@ -1,294 +0,0 @@
1
- /*
2
- * scroll-choreography.css — the SOTA scroll-driven CHOREOGRAPHY register
3
- * (BB.W-SCROLL-MOTION).
4
- *
5
- * Cascade rung AFTER scroll-driven.css. glass-ui owns the native scroll-driven
6
- * SUBSTRATE (scroll-driven.css `scroll()`/`view()` + the `--demo-main-progress`
7
- * named timeline + the `supportsCssTimeline` harden) but composes none of the
8
- * CHOREOGRAPHY — the page-load BUILD, the section CASCADE, the scroll-PINNED
9
- * fixed-stage-advances-time reveals + the smooth-scroll register. The award-winners
10
- * hand-roll these on Lenis+GSAP (a 20-40KB JS dependency); glass-ui ships the
11
- * NATIVE register — the platform now ships `scroll()`/`view()`/`timeline-scope`
12
- * natively, off the compositor at 60fps (the no-net-dep fence; the 2026
13
- * universal-support convergence). NO Lenis/GSAP/Locomotive dependency, ever.
14
- *
15
- * .scroll-build — RETIRED (BG.W-ROUTE-TRANSITION). The route-enter page-build
16
- * is now the bare keyed `<component class="route-enter">` on-mount
17
- * `@keyframes gl-route-enter` (transitions.css), not a per-child
18
- * `.scroll-build` stagger.
19
- * .scroll-cascade — the orchestrated section cascade (per-child view() timeline,
20
- * the implicit stagger [NO setTimeout], the spring-clocked
21
- * coupled transform+opacity build).
22
- * .scroll-pin — the fixed-stage-advances-time scroll-pinned register
23
- * (position: sticky stage; the stage's internal phases advance
24
- * against a spring-damped `--pin-t` the keyframes.js scroll spine
25
- * `useScrollPin` writes per scroll tick — EVERY engine, no
26
- * `animation-timeline`. The dead `--gl-pin` named scroll-timeline
27
- * is EXCISED — BD.W-SCROLL-LIQUID-ENGINE).
28
- * .smooth-scroll — the native scroll-behavior: smooth opt-in (PRM-gated,
29
- * zero runtime — a smooth-scroll under reduce is a vestibular
30
- * concern, so the smooth interpolation is dropped under PRM).
31
- *
32
- * THE DISCIPLINE (mirrors scroll-driven.css EXACTLY — the exemplary outer-gate):
33
- * the whole register sits under `@media (prefers-reduced-motion: no-preference)`
34
- * so under PRM no scroll/build animation attaches at all and content renders in
35
- * its terminal state (the `from` keyframe never applies because the animation
36
- * never binds; the .scroll-pin stage shows its terminal phase, no sweep). The
37
- * `view()`-cascade recipe sits under a second `@supports (animation-timeline: …)`
38
- * gate so a non-supporting engine gets the STATIC cascade layout. The .scroll-pin
39
- * register needs NO `@supports` gate — its `--pin-t` is JS-written by `useScrollPin`
40
- * on every engine; under PRM the composable zeroes the scrub (1:1, no drift).
41
- *
42
- * COMPOSITOR-ONLY (the proof:no-layout-animation floor BB.W-CARD-COMPOSITE): every
43
- * @keyframes step + transition animates ONLY transform/translate/scale/opacity/
44
- * clip-path — NEVER a layout-triggering property (no height/padding/inline-size/
45
- * top/grid-template). The SPATIAL (transform) legs ride the per-spring `--spring-*`
46
- * + the matching `--spring-*-duration` settle clock (P2/P4); the EFFECTS (opacity)
47
- * legs ride the no-overshoot `--ease-out` bezier (P1/P3 — a fade must never
48
- * overshoot). The spring tokens are READ-ONLY (the W-GLASS-CAL clock fence — this
49
- * register THREADS them, it never re-tunes a spring value or a duration).
50
- */
51
-
52
- /* ─────────────────────────────────────────────────────────────────────────────
53
- * BD.W-SCROLL-LIQUID-ENGINE — the liquid-weight scroll tokens.
54
- *
55
- * The `--ease-scroll-spring` is the compositor spring-scrub the cascade rides
56
- * (ZERO JS). The pin-phase fractions are the calc-friendly window bounds the
57
- * `--pin-t` recipes read (a NUMBER, not the `%` the dead `animation-range` used).
58
- * All golden-proportioned (1/φ family). The liquid-weight scrub itself is a JS-side
59
- * param of `useScrollScene`/`useScrollPin` (the φ-derived defaults live in the
60
- * composables, PRM → 0 inside them). The cartoon-punch deps
61
- * (`--motion-weight`/`--ease-cartoon-punch`/`--shadow-cartoon-md`) SHIP today and are
62
- * consumed via `var(…, fallback)` so the recipes stay GREEN. */
63
- :root {
64
- /* The spring-shaped compositor cascade ease — the `--spring-gentle` twin
65
- (ζ ≈ 0.85, a `springLinearStops` `linear()` stop-set), which SHIPS
66
- unconditionally (scheme-motion.css). The Safari < 17.2 `--ease-out` degrade
67
- arm was COLLAPSED at BG.NF.2 W-LEGACY-LADDER-COLLAPSE — both targets parse
68
- `linear()`, so the spring twin is the sole source. */
69
- --ease-scroll-spring: var(--spring-gentle);
70
- /* The pin reveal/expand windows as 0..1 fractions (the `--pin-t` recipes read
71
- a NUMBER for the calc, not the `%` the dead timeline used). 1/φ² + 0.9. */
72
- --scroll-pin-phase-reveal-end-frac: 0.382;
73
- --scroll-pin-phase-expand-end-frac: 0.9;
74
- /* The volume-preserving squash depth — 1 − 1/φ⁴. */
75
- --scroll-pin-squash-floor: 0.944;
76
- }
77
-
78
- /* ─────────────────────────────────────────────────────────────────────────────
79
- * .scroll-build — RETIRED (BG.W-ROUTE-TRANSITION).
80
- *
81
- * The route-enter page-build is no longer a per-child staggered `.scroll-build`
82
- * recipe. Under the bare keyed `<component :is :key="route.path" class="route-enter">`
83
- * atomic swap, the page entrance is ONE on-mount `@keyframes gl-route-enter` on the
84
- * keyed component (transitions.css `.route-enter`) — it reaches EVERY route root
85
- * (StoryPage/SectionLanding/hero/intro/auth-shell/NotFound) without a per-beat
86
- * `--i` stagger and without the `<Transition>` leave-window the old build raced.
87
- * The `gl-page-build`/`gl-page-build-fade` keyframes + the `--scroll-build-rise`/
88
- * `--scroll-build-step` tokens are deleted with it (clean break, no alias). The
89
- * `.scroll-cascade`/`.scroll-pin`/`.smooth-scroll` registers below are UNTOUCHED —
90
- * they are scroll-driven, not the mount-driven page entrance.
91
- * ─────────────────────────────────────────────────────────────────────────── */
92
-
93
- /* ─────────────────────────────────────────────────────────────────────────────
94
- * .scroll-cascade — the orchestrated section cascade.
95
- *
96
- * Extends the bare `[data-scroll-reveal] > *` 6px fade into the SOTA coordinated
97
- * build: the per-child `view()` timeline stays the implicit-stagger mechanism (each
98
- * child owns its own timeline — NO setTimeout cascade), but the entrance is the
99
- * spring-clocked coupled build (a deeper rise + a tighter reveal window). It sits
100
- * under the PRM no-preference gate + the `@supports (animation-timeline: view())`
101
- * gate (the scroll-driven.css discipline) — under PRM/non-support the sections
102
- * render at their terminal state.
103
- * ─────────────────────────────────────────────────────────────────────────── */
104
- @media (prefers-reduced-motion: no-preference) {
105
- @supports ((animation-timeline: view()) and (animation-range: entry)) {
106
- @keyframes gl-cascade-build {
107
- from {
108
- /* EFFECTS leg — the coupled fade (no overshoot). */
109
- opacity: 0;
110
- /* SPATIAL leg — the build rise (a transform, compositor-only). */
111
- transform: translateY(var(--scroll-cascade-rise, 1.25rem));
112
- }
113
- to {
114
- opacity: 1;
115
- transform: translateY(0);
116
- }
117
- }
118
-
119
- .scroll-cascade > * {
120
- /* The view()-timeline drives the build off each child's OWN entry into
121
- the viewport (the implicit stagger). The progress-bound timeline maps
122
- the entrance across the `animation-range` window; the keyframe's
123
- coupled transform+opacity build is the orchestrated cascade (vs the
124
- bare 6px reveal). `linear` is the right easing for a SCROLL-bound
125
- progress map (the spring shaping lives in the section's own settle
126
- where the build is mount-driven; a scroll-bound timeline reads
127
- 1:1 with scroll position — a spring on a scrubbed timeline reads as
128
- a scrubbed spring, which is correct here as the linear progress map).
129
-
130
- BD.W-SCROLL-LIQUID-ENGINE: the easing is the spring-shaped
131
- `--ease-scroll-spring` (a `springLinearStops` `linear()` twin of
132
- `--spring-gentle`, ζ ≈ 0.85) — each card's scroll-scrubbed entrance
133
- reads with spring WEIGHT (a hair of overshoot at the end of its
134
- range), ZERO JS (the platform carries it on the compositor). The
135
- Safari-degrade-to-cel-slam arm lives in the entrance-reveal scope. */
136
- animation: gl-cascade-build auto var(--ease-scroll-spring, linear) both;
137
- animation-timeline: view(block);
138
- animation-range: entry 0% entry var(--scroll-cascade-range-end, 45%);
139
- }
140
-
141
- /* The horizontal-scroller variant — a `view(inline)` axis. */
142
- .scroll-cascade.scroll-cascade--inline > * {
143
- animation-timeline: view(inline);
144
- }
145
-
146
- /* The OPT-IN column-stagger variant (the Codrops nuance — even columns
147
- from top, odd from below). A GRID-surface flourish, NOT the default (the
148
- proportion fence: a uniform vertical cascade is the calm StoryPage
149
- default; the column-stagger is the front-door grid showcase). A consumer
150
- sets `--col` (the column index) per child; even/odd rise from opposite
151
- directions, offset by `--scroll-cascade-column-stagger`. */
152
- @keyframes gl-cascade-build-col-even {
153
- from {
154
- opacity: 0;
155
- transform: translateY(calc(-1 * var(--scroll-cascade-rise, 1.25rem)));
156
- }
157
- to {
158
- opacity: 1;
159
- transform: translateY(0);
160
- }
161
- }
162
- /* BG.W-SCROLL-SHRINK-UNIFY (D14) — the per-column stagger. The stagger is a
163
- range PERCENTAGE (view()-timeline units), NOT a time: the prior
164
- `--scroll-cascade-column-stagger` default was `60ms`, so
165
- `calc(45% + 60ms * 0)` mixed `%` with `ms` (an INVALID calc — the whole
166
- animation-range was dropped) AND multiplied by a literal `0` (every column
167
- read the SAME range end, zero stagger). Now the offset is a `%` scaled by the
168
- consumer-set `--col` index, so column N ends its build `N × stagger` later —
169
- the even/odd column cascade the Codrops nuance intends. */
170
- .scroll-cascade.scroll-cascade--columns > * {
171
- animation-range: entry 0%
172
- entry
173
- calc(
174
- var(--scroll-cascade-range-end, 45%) +
175
- var(--scroll-cascade-column-stagger, 6%) * var(--col, 0)
176
- );
177
- }
178
- .scroll-cascade.scroll-cascade--columns > *:nth-child(even) {
179
- animation-name: gl-cascade-build-col-even;
180
- }
181
- }
182
- }
183
-
184
- /* ─────────────────────────────────────────────────────────────────────────────
185
- * .scroll-pin — the fixed-stage-advances-time scroll-pinned register, RE-INVENTED
186
- * on a JS-written `--pin-t` (BD.W-SCROLL-LIQUID-ENGINE).
187
- *
188
- * THE DEFECT (excised, no alias): the prior register bound the phase reveals to a
189
- * named `scroll-timeline: --gl-pin` declared on `.scroll-pin` + `timeline-scope:
190
- * --gl-pin`. A named scroll-timeline measures the DECLARING element's OWN scroll
191
- * progress — but `.scroll-pin` is `overflow: visible` with zero internal scroll
192
- * extent, so it is NOT a scroll port: `--gl-pin`'s `currentTime` was permanently
193
- * `null` and the bound `gl-pin-reveal` animation parked at its `from` keyframe
194
- * forever (dead on EVERY engine, including those that fully support the native
195
- * feature — structural deadness, not a Safari degrade).
196
- *
197
- * THE FIX (every engine, no `animation-timeline`, no `@supports` gate): the stage
198
- * is plain `position: sticky` + `contain: layout paint` (bounded recalc); the
199
- * phases read a SPRING-DAMPED `--pin-t ∈ [0, 1]` that `useScrollPin` (the
200
- * keyframes.js scroll spine — `SpringProgress` over the ONE `createScrollReader`)
201
- * writes off the REAL scroll port per coalesced tick. The reveal arrives with
202
- * inertia, overshoots (ζ ≈ 0.85), then settles — the cartoon-slam felt register.
203
- * Works on Safari 15+ with no timeline primitive.
204
- *
205
- * Liquid weight is the DEFAULT here (the §L4 no-stiff-snap law): `useScrollPin`'s
206
- * `SpringProgress` keeps converging AFTER the finger lifts. PRM zeroes the scrub
207
- * (the pin scrub → 0 under reduce inside the composable) so `--pin-t` tracks
208
- * scroll 1:1 with no interpolated drift — the vestibular floor.
209
- * ─────────────────────────────────────────────────────────────────────────── */
210
-
211
- /* The typed pin progress register — `inherits: true` so the sticky stage + the
212
- phase children read the `--pin-t` written on the `.scroll-pin` container; a typed
213
- `@property` makes the calc cheaper + lets an optional native cosmetic-parallax leg
214
- composite it. Registered OUTSIDE the PRM gate (a custom property is inert — it only
215
- drives motion through the recipes below, which ARE PRM-gated). */
216
- @property --pin-t {
217
- syntax: "<number>";
218
- inherits: true;
219
- initial-value: 0;
220
- }
221
-
222
- .scroll-pin {
223
- position: relative;
224
- block-size: var(--scroll-pin-stage-height, 320vh);
225
- }
226
-
227
- .scroll-pin-stage {
228
- position: sticky;
229
- inset-block-start: 0;
230
- /* Bounded main-thread recalc — the `--pin-t` write is a style recalc on this
231
- isolated subtree, NOT a reflow (translate/scale/opacity don't reflow). */
232
- contain: layout paint;
233
- }
234
-
235
- @media (prefers-reduced-motion: no-preference) {
236
- /* Phase 1 — the reveal. Reads `--pin-t` mapped across the reveal window
237
- (0 .. --scroll-pin-phase-reveal-end-frac). The lift + squash ride the
238
- compositor longhands (`translate`/`scale` — NEVER the `transform` shorthand,
239
- which would fold a centering translate; the longhands stack independently).
240
- The squash floor is volume-preserving (a hair of squash on entry). */
241
- .scroll-pin-stage .scroll-pin-phase-reveal {
242
- --t: clamp(
243
- 0,
244
- calc(var(--pin-t, 0) / var(--scroll-pin-phase-reveal-end-frac, 0.382)),
245
- 1
246
- );
247
- opacity: var(--t);
248
- translate: 0 calc((1 - var(--t)) * var(--scroll-pin-lift, 2.5rem));
249
- scale: calc(
250
- var(--scroll-pin-squash-floor, 0.944) +
251
- (1 - var(--scroll-pin-squash-floor, 0.944)) * var(--t)
252
- );
253
- /* will-change scoped to the active phase — added while the pin is in range,
254
- never the full 320vh lifetime (the audit's transient-promotion rule). */
255
- will-change: transform, opacity;
256
- }
257
-
258
- /* Phase 2 — the settle/drift. Reads the reveal-end..expand-end window of
259
- `--pin-t`; a gentle compositor drift as the reader continues past, never a
260
- layout move. */
261
- .scroll-pin-stage .scroll-pin-phase-settle {
262
- --t: clamp(
263
- 0,
264
- calc(
265
- (var(--pin-t, 0) - var(--scroll-pin-phase-reveal-end-frac, 0.382)) /
266
- (
267
- var(--scroll-pin-phase-expand-end-frac, 0.9) -
268
- var(--scroll-pin-phase-reveal-end-frac, 0.382)
269
- )
270
- ),
271
- 1
272
- );
273
- opacity: 1;
274
- translate: 0 calc(var(--t) * -1 * var(--scroll-pin-lift, 2.5rem));
275
- scale: calc(1 + 0.02 * var(--t));
276
- }
277
- }
278
-
279
- /* ─────────────────────────────────────────────────────────────────────────────
280
- * .smooth-scroll — the native smooth-scroll opt-in.
281
- *
282
- * The native `scroll-behavior: smooth` (CSS-first, zero runtime — NOT a JS rAF
283
- * momentum loop, which IS Lenis and is the fence). An OPT-IN class the scroller
284
- * (`<main>`, a `.scroll-pin` container) applies. PRM-GATED: under
285
- * `prefers-reduced-motion: reduce` the smooth interpolation is DROPPED and the
286
- * jump-scroll is correct (a smooth-scroll over an anchor-jump is a vestibular
287
- * concern). A consumer wanting Lenis-grade momentum brings it in THEIR app (the
288
- * presets-in-consumers discipline); the library ships the native register.
289
- * ─────────────────────────────────────────────────────────────────────────── */
290
- @media (prefers-reduced-motion: no-preference) {
291
- .smooth-scroll {
292
- scroll-behavior: smooth;
293
- }
294
- }
@@ -1,123 +0,0 @@
1
- /*
2
- * scroll-chrome.css — the scroll-driven floating-CHROME collapse recipe
3
- * (BC.W-SCROLL-CHROME).
4
- *
5
- * Cascade rung AFTER scroll-choreography.css. Where scroll-choreography.css is the
6
- * ENTRANCE register (the page-build / section-cascade / scroll-pinned reveals), this is
7
- * the COLLAPSE-STATE recipe a floating chrome bar (a dock, a header) composes: scroll
8
- * down and it SHRINKS smoothly into a compact form; scroll up and it EXPANDS back; on
9
- * scroll-stop it SNAPS to the nearest state (the `useScrollChrome` JS machine owns the
10
- * snap + the ramp value — this recipe is the compositor paint of `--chrome-collapse-t`).
11
- *
12
- * .scroll-chrome — the chrome surface (a dock/header) reads `--chrome-collapse-t`
13
- * (0 expanded → 1 collapsed; the @property reg in property-regs.css)
14
- * for the COMPOSITOR shrink/quiet/shadow-lift ramp.
15
- *
16
- * COMPOSITOR-ONLY (the proof:no-layout-animation floor — motion-canon P5). The shrink is
17
- * `transform: scale()/translateY()` — NEVER an animated `height`/`padding`/`width` (the
18
- * box never reflows per scroll frame; the CDP Layout track stays flat). The quiet is
19
- * `opacity` BOUNDED above a never-invisible floor (the NN/g pale-fade-into-content trap
20
- * is the FORBIDDEN direction — the bar reads at EVERY collapse fraction). The
21
- * SEPARATION/shadow LIFTS as content scrolls under (Apple "as text scrolls underneath,
22
- * shadows become more prominent") — `box-shadow` is a paint prop, compositor-safe.
23
- *
24
- * THE BLUR STAYS CRISP (the W-DOCK-SHRINK-BLUR fence). The chrome's resting
25
- * `backdrop-filter` blur is NOT animated by `--chrome-collapse-t` — a shrunken bar is
26
- * crisp glass, not a blurry mess. The recipe touches ONLY transform/opacity/box-shadow;
27
- * the surface's own `glass-*` tier owns the (untouched) backdrop blur.
28
- *
29
- * PERSISTENT BY DEFAULT (the iOS-27 lesson). `--chrome-collapse-t` rests at 0 (the
30
- * @property initial-value), so a bare `.scroll-chrome` is byte-identical to the expanded
31
- * chrome — it does NOT collapse until the `useScrollChrome` machine (opted in with
32
- * `collapseOnScroll: true`) ramps the custom.
33
- *
34
- * PRM (the discrete-state-survives model, the useFadingScroll precedent). The transform/
35
- * opacity RAMP sits inside the `@media (prefers-reduced-motion: no-preference)` outer
36
- * gate (the scroll-choreography.css discipline) — under reduce the continuous ramp drops;
37
- * the `useScrollChrome` machine snaps `--chrome-collapse-t` to a discrete 0/1 endpoint, so
38
- * the DISCRETE collapsed/expanded state stays correct, instant, never half. The shadow
39
- * lift sits OUTSIDE the gate (a paint cue, not a vestibular motion) so the lifted
40
- * separation reads even under reduce.
41
- */
42
-
43
- /* The tunable depth knobs — a consumer retunes the shrink/fade depth per chrome. */
44
- :root {
45
- /* The shrink depth: at fully collapsed the chrome scales to (1 − this). 0.12 → a
46
- compact 88% bar (a real shrink that still reads as the same bar). */
47
- --chrome-shrink-depth: 0.12;
48
- /* The rise (px) the chrome translates toward its anchor edge as it collapses. */
49
- --chrome-rise-px: 6px;
50
- /* The fade depth — BOUNDED LOW: at fully collapsed opacity floors at (1 − this).
51
- 0.28 → a 0.72 floor (the bar quiets but is NEVER invisible — the NN/g pale-fade
52
- trap forbidden). A consumer that wants no quiet sets it 0. */
53
- --chrome-fade-depth: 0.28;
54
- /* The shadow-lift strength — the separation shadow grows from rest → this as content
55
- scrolls under (Apple shadow-on-scroll). A paint prop, compositor-safe. */
56
- --chrome-shadow-lift: 18%;
57
- }
58
-
59
- /* The shrink/quiet RAMP — the SPATIAL (transform) + the EFFECTS (opacity) channels. It
60
- rides `--chrome-collapse-t` directly (no CSS transition — the JS scalar already glides
61
- on the reader's tick; on a native-timeline engine the same custom rides
62
- `animation-timeline: scroll(self)`, the native-ramp path). Inside the PRM no-preference
63
- gate: under reduce the ramp drops and the chrome reads its discrete snapped endpoint. */
64
- @media (prefers-reduced-motion: no-preference) {
65
- .scroll-chrome {
66
- /* SPATIAL leg — scale toward the compact size + a small rise toward the anchor
67
- edge. transform-origin at the top (a header anchors its top; a consumer dock
68
- re-points the origin to its natural seat). Compositor-only — never height/pad. */
69
- transform: scale(calc(1 - var(--chrome-collapse-t) * var(--chrome-shrink-depth)))
70
- translateY(calc(var(--chrome-collapse-t) * var(--chrome-rise-px) * -1));
71
- transform-origin: top center;
72
- /* EFFECTS leg — the quiet, BOUNDED above the never-invisible floor (the bar reads
73
- at every fraction; the `* fade-depth` caps the drop, opacity never reaches 0). */
74
- opacity: calc(1 - var(--chrome-collapse-t) * var(--chrome-fade-depth));
75
- /* will-change the compositor channels (NEVER a layout property). */
76
- will-change: transform, opacity;
77
- }
78
- }
79
-
80
- /* The shadow LIFT — OUTSIDE the PRM gate (a paint cue, not a vestibular motion): the
81
- separation shadow strengthens as content scrolls under the chrome. `box-shadow` is a
82
- paint prop (compositor-safe, in the proof:no-layout-animation paint set, NOT the reflow
83
- set). The lift composes the house `--shadow-color: var(--foreground)` so it re-tints
84
- light↔dark for free; the strength grows from a whisper at rest → `--chrome-shadow-lift`
85
- at fully collapsed. */
86
- .scroll-chrome {
87
- box-shadow: 0 calc(2px + var(--chrome-collapse-t) * 6px)
88
- calc(8px + var(--chrome-collapse-t) * 12px)
89
- color-mix(
90
- in srgb,
91
- var(--shadow-color)
92
- calc(6% + var(--chrome-collapse-t) * var(--chrome-shadow-lift)),
93
- transparent
94
- );
95
- }
96
-
97
- /* The native-ramp path — on a `scroll()`-supporting engine the consumer can drive
98
- `--chrome-collapse-t` off `animation-timeline: scroll(self)` directly (the
99
- `useScrollProgress`/`--scroll-t` native precedent: the JS writer is inert, the CSS owns
100
- the compositor ramp). The keyframe is the linear 0→1 map over the collapse range; the
101
- consumer binds it on the chrome with its own `animation-range` (the collapse-px span).
102
- The SNAP-to-state stays the JS leg (a snap is a discrete commit, not a continuous ramp —
103
- it rides the `useScrollChrome` scroll-stop tick on every engine). PRM-gated + supports-
104
- gated (a non-supporting engine reads the JS `collapseT` write, never this keyframe). */
105
- @media (prefers-reduced-motion: no-preference) {
106
- @supports (animation-timeline: scroll()) {
107
- @keyframes gl-chrome-collapse {
108
- from {
109
- --chrome-collapse-t: 0;
110
- }
111
- to {
112
- --chrome-collapse-t: 1;
113
- }
114
- }
115
- /* OPT-IN: a consumer adds `.scroll-chrome--native` to ride the compositor ramp
116
- (it must set `animation-range` for its own collapse-px span; the
117
- `useScrollChrome` machine's JS write is the cross-engine floor + the snap). */
118
- .scroll-chrome--native {
119
- animation: gl-chrome-collapse auto linear both;
120
- animation-timeline: scroll(self block);
121
- }
122
- }
123
- }