@mkbabb/glass-ui 4.0.0 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (609) hide show
  1. package/README.md +3 -1
  2. package/dist/CardAction-8whJrLWt.js +268 -0
  3. package/dist/{CommandShortcut-DdtWXxOK.js → CommandShortcut-D3yxgHNn.js} +25 -14
  4. package/dist/ConfiguratorRow-CaP7U3ZA.js +143 -0
  5. package/dist/ContextMenuContent-B3ZsheLV.js +90 -0
  6. package/dist/{ContextMenuSubContent-B0Vs6atR.js → ContextMenuSubContent-DDRID3qC.js} +28 -33
  7. package/dist/{DataTable-C464Zbqd.js → DataTable-Bc9kUtu_.js} +4 -4
  8. package/dist/{DialogContent-DDE6pQBU.js → DialogContent-6JtTB5x2.js} +11 -8
  9. package/dist/DialogFooter-9phqcRIS.js +80 -0
  10. package/dist/DialogScrollContent-TTuovQst.js +93 -0
  11. package/dist/{FadingScroll-DwNnvKMs.js → FadingScroll-DLRbH5Xr.js} +1 -1
  12. package/dist/HoverCardContent-Bel1gdLZ.js +88 -0
  13. package/dist/{HoverPopover-Dpzwvc4t.js → HoverPopover-BcIxvyqZ.js} +2 -2
  14. package/dist/{IconChip-BDw1j5mu.js → IconChip-DhbdGdFQ.js} +2 -1
  15. package/dist/{IconTooltip-DSjasZIt.js → IconTooltip-B0zimd2H.js} +1 -1
  16. package/dist/Input-Cg9DF62r.js +57 -0
  17. package/dist/{MetricBadge-BpC0R_Ec.js → MetricBadge-RHdBP72w.js} +1 -1
  18. package/dist/Notification-CphK7AAm.js +43 -0
  19. package/dist/NumberFieldContent-D8cXeyO4.js +140 -0
  20. package/dist/PagerDots-Cjx96la-.js +98 -0
  21. package/dist/{PopoverContent-BTorlp--.js → PopoverContent-DL7E6vJP.js} +4 -4
  22. package/dist/{Progress-hAT4gqGH.js → Progress-CnqB7gLm.js} +4 -4
  23. package/dist/{ScrollingText-CUVFTWk2.js → ScrollingText-CTZbA_cG.js} +2 -2
  24. package/dist/{SelectScrollDownButton-C1jb3b3K.js → SelectScrollDownButton-DAKCBEdW.js} +65 -61
  25. package/dist/{SelectSeparator-DK2y1Bun.js → SelectSeparator-C2UGOkXF.js} +1 -1
  26. package/dist/Separator-DQcwC2TR.js +44 -0
  27. package/dist/Switch-B8RscmRu.js +49 -0
  28. package/dist/Toaster-D9qIHjBI.js +274 -0
  29. package/dist/ToggleGroupItem-BLtr3TJq.js +170 -0
  30. package/dist/TooltipProvider-BJ_Y5EGX.js +109 -0
  31. package/dist/animated-digit.js +2 -2
  32. package/dist/api/index.d.ts +21 -33
  33. package/dist/api/types-extra.d.ts +37 -0
  34. package/dist/api.js +1 -1
  35. package/dist/aurora.js +1231 -260
  36. package/dist/badge.js +1 -1
  37. package/dist/border-progress.d.ts +1 -0
  38. package/dist/border-progress.js +98 -0
  39. package/dist/button-5dY1Dvhd.js +125 -0
  40. package/dist/button.js +1 -1
  41. package/dist/canvas.js +2 -3
  42. package/dist/card.js +2 -2
  43. package/dist/carousel.js +93 -110
  44. package/dist/collapsible.js +1 -1
  45. package/dist/color-Cs0-oxYL.js +116 -0
  46. package/dist/color.js +2 -2
  47. package/dist/command.js +1 -1
  48. package/dist/compile-nZ1xVYTp.js +19 -0
  49. package/dist/completion-seal.d.ts +1 -0
  50. package/dist/completion-seal.js +89 -0
  51. package/dist/components/custom/aurora/Aurora.vue.d.ts +10 -5
  52. package/dist/components/custom/aurora/composables/atoms-fields.d.ts +39 -0
  53. package/dist/components/custom/aurora/composables/auroraFallbackGround.d.ts +108 -0
  54. package/dist/components/custom/aurora/composables/color.d.ts +13 -0
  55. package/dist/components/custom/aurora/composables/frameLoop.d.ts +9 -0
  56. package/dist/components/custom/aurora/composables/runtime.d.ts +31 -0
  57. package/dist/components/custom/aurora/composables/uniformBridge.d.ts +5 -1
  58. package/dist/components/custom/aurora/composables/uniformBridgeWGPU.d.ts +60 -0
  59. package/dist/components/custom/aurora/composables/wgpuSetup.d.ts +37 -0
  60. package/dist/components/custom/aurora/constants/budget.d.ts +21 -0
  61. package/dist/components/custom/aurora/constants/presets.d.ts +20 -2
  62. package/dist/components/custom/aurora/constants/renderMode.d.ts +77 -18
  63. package/dist/components/custom/aurora/constants/shaders/aurora-mediums.wgsl.d.ts +1 -0
  64. package/dist/components/custom/aurora/constants/shaders/aurora.wgsl.d.ts +1 -0
  65. package/dist/components/custom/aurora/constants/shaders/oil-modes.glsl.d.ts +1 -0
  66. package/dist/components/custom/aurora/constants/shaders/procedural-color.wgsl.d.ts +4 -0
  67. package/dist/components/custom/aurora/index.d.ts +2 -1
  68. package/dist/components/custom/border-progress/BorderProgress.vue.d.ts +46 -0
  69. package/dist/components/custom/border-progress/composables/spectrum-walk.d.ts +25 -0
  70. package/dist/components/custom/border-progress/composables/useBorderSpectrum.d.ts +18 -0
  71. package/dist/components/custom/border-progress/constants.d.ts +59 -0
  72. package/dist/components/custom/border-progress/index.d.ts +4 -0
  73. package/dist/components/custom/completion-seal/CompletionSeal.vue.d.ts +21 -0
  74. package/dist/components/custom/completion-seal/composables/useCompletionSeal.d.ts +37 -0
  75. package/dist/components/custom/completion-seal/constants.d.ts +46 -0
  76. package/dist/components/custom/completion-seal/index.d.ts +4 -0
  77. package/dist/components/custom/concentric/Concentric.vue.d.ts +39 -0
  78. package/dist/components/custom/concentric/composables/concentricGLSetup.d.ts +18 -0
  79. package/dist/components/custom/concentric/composables/concentricWGPUSetup.d.ts +22 -0
  80. package/dist/components/custom/concentric/composables/ringField.d.ts +85 -0
  81. package/dist/components/custom/concentric/composables/uniformBridgeWGPU.d.ts +14 -0
  82. package/dist/components/custom/concentric/composables/useConcentric.d.ts +35 -0
  83. package/dist/components/custom/concentric/constants.d.ts +67 -0
  84. package/dist/components/custom/concentric/index.d.ts +5 -0
  85. package/dist/components/custom/concentric/shaders/concentric.glsl.d.ts +4 -0
  86. package/dist/components/custom/concentric/shaders/concentric.wgsl.d.ts +1 -0
  87. package/dist/components/custom/confirm-dialog/ConfirmDialog.vue.d.ts +3 -3
  88. package/dist/components/custom/constellation/Constellation.vue.d.ts +5 -4
  89. package/dist/components/custom/constellation/composables/constellationGLSetup.d.ts +10 -0
  90. package/dist/components/custom/constellation/composables/constellationWGPUSetup.d.ts +19 -0
  91. package/dist/components/custom/constellation/composables/uniformBridgeWGPU.d.ts +66 -0
  92. package/dist/components/custom/constellation/composables/useConstellation.d.ts +3 -10
  93. package/dist/components/custom/constellation/constants.d.ts +33 -0
  94. package/dist/components/custom/constellation/constellationField.d.ts +31 -1
  95. package/dist/components/custom/constellation/constellationInteraction.d.ts +23 -14
  96. package/dist/components/custom/constellation/constellationRender.d.ts +25 -0
  97. package/dist/components/custom/constellation/constellationTypes.d.ts +38 -0
  98. package/dist/components/custom/constellation/constellationWell.d.ts +15 -0
  99. package/dist/components/custom/constellation/index.d.ts +5 -5
  100. package/dist/components/custom/constellation/shaders/constellation-lines.glsl.d.ts +2 -0
  101. package/dist/components/custom/constellation/shaders/constellation-lines.wgsl.d.ts +1 -0
  102. package/dist/components/custom/constellation/shaders/constellation-points.glsl.d.ts +2 -0
  103. package/dist/components/custom/constellation/shaders/constellation-points.wgsl.d.ts +1 -0
  104. package/dist/components/custom/deck/DeckPager.vue.d.ts +29 -0
  105. package/dist/components/custom/deck/composables/useDeck.d.ts +27 -0
  106. package/dist/components/custom/deck/composables/useDeckKeyboard.d.ts +25 -0
  107. package/dist/components/custom/deck/composables/useDeckSpring.d.ts +22 -0
  108. package/dist/components/custom/deck/constants.d.ts +14 -0
  109. package/dist/components/custom/deck/index.d.ts +8 -0
  110. package/dist/components/custom/dock/DockIconButton.vue.d.ts +25 -4
  111. package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +10 -2
  112. package/dist/components/custom/dock/DockStack.vue.d.ts +65 -0
  113. package/dist/components/custom/dock/GlassDock.vue.d.ts +4 -2
  114. package/dist/components/custom/dock/composables/dockMorphMeasure.d.ts +155 -0
  115. package/dist/components/custom/dock/composables/index.d.ts +2 -0
  116. package/dist/components/custom/dock/composables/useDockSearch.d.ts +85 -0
  117. package/dist/components/custom/dock/composables/useDockShellProps.d.ts +11 -0
  118. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +13 -0
  119. package/dist/components/custom/dock/constants.d.ts +18 -14
  120. package/dist/components/custom/dock/index.d.ts +5 -2
  121. package/dist/components/custom/dot-flow-field/DotFlowField.vue.d.ts +42 -0
  122. package/dist/components/custom/dot-flow-field/composables/flowField.d.ts +83 -0
  123. package/dist/components/custom/dot-flow-field/composables/uniformBridgeWGPU.d.ts +39 -0
  124. package/dist/components/custom/dot-flow-field/composables/useDotFlowField.d.ts +35 -0
  125. package/dist/components/custom/dot-flow-field/composables/useFlowParticles.d.ts +31 -0
  126. package/dist/components/custom/dot-flow-field/constants.d.ts +69 -0
  127. package/dist/components/custom/dot-flow-field/index.d.ts +5 -0
  128. package/dist/components/custom/dot-flow-field/shaders/flow-field.compute.wgsl.d.ts +1 -0
  129. package/dist/components/custom/dot-flow-field/shaders/flow-field.glsl.d.ts +4 -0
  130. package/dist/components/custom/dot-flow-field/shaders/flow-field.render.wgsl.d.ts +1 -0
  131. package/dist/components/custom/dot-matrix/DotMatrix.vue.d.ts +43 -0
  132. package/dist/components/custom/dot-matrix/composables/dotMatrixField.d.ts +89 -0
  133. package/dist/components/custom/dot-matrix/composables/uniformBridgeWGPU.d.ts +52 -0
  134. package/dist/components/custom/dot-matrix/composables/useDotMatrix.d.ts +34 -0
  135. package/dist/components/custom/dot-matrix/composables/useDotSphere.d.ts +27 -0
  136. package/dist/components/custom/dot-matrix/constants.d.ts +58 -0
  137. package/dist/components/custom/dot-matrix/index.d.ts +5 -0
  138. package/dist/components/custom/dot-matrix/shaders/dot-matrix.glsl.d.ts +4 -0
  139. package/dist/components/custom/dot-matrix/shaders/dot-matrix.wgsl.d.ts +1 -0
  140. package/dist/components/custom/easing/EasingConfigurator.vue.d.ts +33 -0
  141. package/dist/components/custom/easing/EasingPicker.vue.d.ts +49 -0
  142. package/dist/components/custom/easing/composables/useEasingPicker.d.ts +80 -0
  143. package/dist/components/custom/easing/constants.d.ts +28 -0
  144. package/dist/components/custom/easing/index.d.ts +3 -0
  145. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +11 -0
  146. package/dist/components/custom/fourier-field/FourierField.vue.d.ts +43 -40
  147. package/dist/components/custom/fourier-field/composables/fourierFieldGLSetup.d.ts +15 -0
  148. package/dist/components/custom/fourier-field/composables/fourierFieldWGPUSetup.d.ts +20 -0
  149. package/dist/components/custom/fourier-field/composables/uniformBridgeWGPU.d.ts +41 -0
  150. package/dist/components/custom/fourier-field/composables/useFourierField.d.ts +42 -0
  151. package/dist/components/custom/fourier-field/constants.d.ts +64 -0
  152. package/dist/components/custom/fourier-field/index.d.ts +23 -18
  153. package/dist/components/custom/fourier-field/shaders/fourier-field.compute.wgsl.d.ts +1 -0
  154. package/dist/components/custom/fourier-field/shaders/fourier-field.glsl.d.ts +4 -0
  155. package/dist/components/custom/fourier-field/shaders/fourier-field.render.wgsl.d.ts +1 -0
  156. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +1 -1
  157. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +13 -3
  158. package/dist/components/custom/goo-blob/composables/uniformBridgeWGPU.d.ts +24 -0
  159. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +18 -11
  160. package/dist/components/custom/goo-blob/composables/wgpuSetup.d.ts +23 -0
  161. package/dist/components/custom/goo-blob/constants.d.ts +1 -1
  162. package/dist/components/custom/goo-blob/index.d.ts +1 -1
  163. package/dist/components/custom/goo-blob/shaders/metaball-noise.wgsl.d.ts +1 -0
  164. package/dist/components/custom/goo-blob/shaders/metaball-palette.wgsl.d.ts +1 -0
  165. package/dist/components/custom/goo-blob/shaders/metaball-uniforms.glsl.d.ts +1 -1
  166. package/dist/components/custom/goo-blob/shaders/metaball.wgsl.d.ts +1 -0
  167. package/dist/components/custom/goo-blob/types.d.ts +36 -0
  168. package/dist/components/custom/goo-dot-matrix/GooDotMatrix.vue.d.ts +49 -0
  169. package/dist/components/custom/goo-dot-matrix/composables/gooDotLattice.d.ts +24 -0
  170. package/dist/components/custom/goo-dot-matrix/composables/gooDotSetup.d.ts +50 -0
  171. package/dist/components/custom/goo-dot-matrix/composables/uniformBridgeWGPU.d.ts +35 -0
  172. package/dist/components/custom/goo-dot-matrix/composables/useGooDotMatrix.d.ts +31 -0
  173. package/dist/components/custom/goo-dot-matrix/constants.d.ts +76 -0
  174. package/dist/components/custom/goo-dot-matrix/index.d.ts +5 -0
  175. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.frag.d.ts +11 -0
  176. package/dist/components/custom/goo-dot-matrix/shaders/goo-dot.wgsl.d.ts +3 -0
  177. package/dist/components/custom/handmark/HandMark.vue.d.ts +1 -1
  178. package/dist/components/custom/icon-chip/types.d.ts +11 -1
  179. package/dist/components/custom/instrument-chassis/InstrumentChassis.vue.d.ts +3 -1
  180. package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +21 -2
  181. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +15 -0
  182. package/dist/components/custom/metric-stack/MetricStack.vue.d.ts +1 -1
  183. package/dist/components/custom/pager-dots/PagerDots.vue.d.ts +9 -0
  184. package/dist/components/custom/pager-dots/index.d.ts +2 -0
  185. package/dist/components/custom/pager-dots/pagerWindow.d.ts +9 -0
  186. package/dist/components/custom/paper-grid/PaperGrid.vue.d.ts +42 -0
  187. package/dist/components/custom/paper-grid/composables/paperGrid.d.ts +90 -0
  188. package/dist/components/custom/paper-grid/composables/paperGridGLSetup.d.ts +16 -0
  189. package/dist/components/custom/paper-grid/composables/paperGridWGPUSetup.d.ts +19 -0
  190. package/dist/components/custom/paper-grid/composables/uniformBridgeWGPU.d.ts +16 -0
  191. package/dist/components/custom/paper-grid/composables/usePaperGrid.d.ts +31 -0
  192. package/dist/components/custom/paper-grid/constants.d.ts +57 -0
  193. package/dist/components/custom/paper-grid/index.d.ts +5 -0
  194. package/dist/components/custom/paper-grid/shaders/paper-grid.glsl.d.ts +4 -0
  195. package/dist/components/custom/paper-grid/shaders/paper-grid.wgsl.d.ts +1 -0
  196. package/dist/components/custom/search/FuzzySearch.vue.d.ts +8 -2
  197. package/dist/components/custom/search/SearchBar.vue.d.ts +8 -0
  198. package/dist/components/custom/search/index.d.ts +2 -0
  199. package/dist/components/custom/search/searchVariants.d.ts +19 -0
  200. package/dist/components/custom/selectable-chip/SelectableChip.vue.d.ts +50 -0
  201. package/dist/components/custom/selectable-chip/index.d.ts +2 -0
  202. package/dist/components/custom/selectable-chip/selectableChipVariants.d.ts +23 -0
  203. package/dist/components/custom/spa-view/SpaView.vue.d.ts +50 -0
  204. package/dist/components/custom/spa-view/index.d.ts +2 -0
  205. package/dist/components/custom/split-chars/SplitChars.vue.d.ts +39 -0
  206. package/dist/components/custom/split-chars/index.d.ts +1 -0
  207. package/dist/components/custom/tabs/SegmentedTabs.vue.d.ts +12 -0
  208. package/dist/components/custom/tabs/composables/useTabDragMorph.d.ts +42 -0
  209. package/dist/components/custom/tabs/constants.d.ts +20 -2
  210. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +30 -17
  211. package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +10 -5
  212. package/dist/components/ui/_shared/index.d.ts +2 -0
  213. package/dist/components/ui/_shared/menuItemVariants.d.ts +1 -1
  214. package/dist/components/ui/_shared/useControlSize.d.ts +46 -0
  215. package/dist/components/ui/badge/index.d.ts +1 -1
  216. package/dist/components/ui/button/Button.vue.d.ts +5 -2
  217. package/dist/components/ui/button/index.d.ts +2 -2
  218. package/dist/components/ui/card/Card.vue.d.ts +79 -4
  219. package/dist/components/ui/card/CardHeader.vue.d.ts +42 -16
  220. package/dist/components/ui/card/ScrollCard.vue.d.ts +33 -0
  221. package/dist/components/ui/card/ScrollCardHeader.vue.d.ts +17 -0
  222. package/dist/components/ui/card/index.d.ts +3 -1
  223. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
  224. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
  225. package/dist/components/ui/carousel/GlassCarouselPager.vue.d.ts +2 -2
  226. package/dist/components/ui/command/Command.vue.d.ts +1 -1
  227. package/dist/components/ui/command/CommandDialog.vue.d.ts +9 -3
  228. package/dist/components/ui/command/CommandList.vue.d.ts +3 -0
  229. package/dist/components/ui/context-menu/ContextMenuContent.vue.d.ts +5 -1
  230. package/dist/components/ui/drawer/Drawer.vue.d.ts +46 -33
  231. package/dist/components/ui/drawer/DrawerContent.vue.d.ts +7 -8
  232. package/dist/components/ui/drawer/DrawerDescription.vue.d.ts +2 -2
  233. package/dist/components/ui/drawer/DrawerOverlay.vue.d.ts +1 -1
  234. package/dist/components/ui/drawer/DrawerTitle.vue.d.ts +2 -2
  235. package/dist/components/ui/drawer/composables/drawerSnapContext.d.ts +26 -0
  236. package/dist/components/ui/drawer/composables/useDrawerSnap.d.ts +17 -0
  237. package/dist/components/ui/drawer/constants.d.ts +45 -0
  238. package/dist/components/ui/drawer/index.d.ts +23 -15
  239. package/dist/components/ui/dropdown-menu/DropdownMenuContent.vue.d.ts +4 -0
  240. package/dist/components/ui/focus-scope/FocusScope.vue.d.ts +20 -0
  241. package/dist/components/ui/focus-scope/index.d.ts +2 -0
  242. package/dist/components/ui/hover-card/HoverCardContent.vue.d.ts +3 -0
  243. package/dist/components/ui/index.d.ts +1 -0
  244. package/dist/components/ui/input/Input.vue.d.ts +3 -0
  245. package/dist/components/ui/number-field/NumberFieldInput.vue.d.ts +6 -1
  246. package/dist/components/ui/progress/ProgressDefault.vue.d.ts +3 -2
  247. package/dist/components/ui/select/SelectContent.vue.d.ts +4 -1
  248. package/dist/components/ui/sheet/index.d.ts +1 -1
  249. package/dist/components/ui/switch/Switch.vue.d.ts +2 -0
  250. package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
  251. package/dist/components/ui/textarea/Textarea.vue.d.ts +3 -0
  252. package/dist/components/ui/toast/Toast.vue.d.ts +5 -2
  253. package/dist/components/ui/toast/use-toast.d.ts +14 -0
  254. package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
  255. package/dist/components/ui/tooltip/TooltipContent.vue.d.ts +3 -0
  256. package/dist/composables/color/index.d.ts +2 -0
  257. package/dist/composables/color/useAccentTone.d.ts +34 -0
  258. package/dist/composables/glass/canvas2d/useCanvas2D.d.ts +13 -6
  259. package/dist/composables/glass/index.d.ts +5 -2
  260. package/dist/composables/glass/useSpecularPointer.d.ts +33 -0
  261. package/dist/composables/glass/useSpecularTracking.d.ts +20 -0
  262. package/dist/composables/glass/useVizChoreography.d.ts +123 -0
  263. package/dist/composables/glass/vSpecular.d.ts +2 -0
  264. package/dist/composables/glass/webgl/createCanvasLifecycle.d.ts +10 -0
  265. package/dist/composables/glass/webgl/shaders/flow.glsl.d.ts +1 -0
  266. package/dist/composables/glass/webgl/shaders/flow.wgsl.d.ts +1 -0
  267. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +16 -0
  268. package/dist/composables/glass/webgpu/index.d.ts +2 -0
  269. package/dist/composables/glass/webgpu/useGpuSubstrate.d.ts +75 -0
  270. package/dist/composables/glass/webgpu/useWebGPUCanvas.d.ts +85 -0
  271. package/dist/composables/glass/webgpu/webgpuDevice.d.ts +42 -0
  272. package/dist/composables/motion/core/index.d.ts +4 -0
  273. package/dist/composables/motion/index.d.ts +4 -0
  274. package/dist/composables/motion/scrollReader.d.ts +25 -0
  275. package/dist/composables/motion/springPresets.d.ts +20 -1
  276. package/dist/composables/motion/useCharStagger.d.ts +44 -0
  277. package/dist/composables/motion/useDockCtaReceive.d.ts +84 -0
  278. package/dist/composables/motion/useDragMorph.d.ts +77 -0
  279. package/dist/composables/motion/useLiquidFlex.d.ts +11 -0
  280. package/dist/composables/motion/useLiquidPress.d.ts +71 -0
  281. package/dist/composables/motion/useLiquidReveal.d.ts +51 -0
  282. package/dist/composables/motion/useNumericTransition.d.ts +3 -3
  283. package/dist/composables/motion/usePointerVelocityField.d.ts +98 -0
  284. package/dist/composables/motion/useScrollChrome.d.ts +58 -0
  285. package/dist/composables/motion/useScrollTrigger.d.ts +67 -0
  286. package/dist/composables/motion/useSpringPress.d.ts +5 -5
  287. package/dist/composables/motion/useStaggerReveal.d.ts +24 -0
  288. package/dist/composables/sidebar/index.d.ts +4 -1
  289. package/dist/composables/sidebar/types.d.ts +68 -3
  290. package/dist/composables/sidebar/useClickDelegate.d.ts +4 -0
  291. package/dist/composables/sidebar/useLazyLoader.d.ts +5 -0
  292. package/dist/composables/sidebar/useScrollTo.d.ts +5 -0
  293. package/dist/composables/virtual/index.d.ts +4 -0
  294. package/dist/composables/virtual/useVirtualSectionWindow.d.ts +72 -0
  295. package/dist/composables/virtual/useWindowedStore.d.ts +43 -0
  296. package/dist/composables/virtual/virtualSectionLayout.d.ts +103 -0
  297. package/dist/concentric.d.ts +1 -0
  298. package/dist/concentric.js +836 -0
  299. package/dist/configurator.js +3 -2
  300. package/dist/confirm-dialog.js +62 -49
  301. package/dist/constellation.js +635 -235
  302. package/dist/context-menu.js +3 -3
  303. package/dist/controls.js +2 -2
  304. package/dist/createCanvasLifecycle-Gh45Ce-p.js +93 -0
  305. package/dist/dark.js +1 -1
  306. package/dist/data-table.js +1 -1
  307. package/dist/deck.d.ts +1 -0
  308. package/dist/deck.js +105 -0
  309. package/dist/dialog.js +4 -3
  310. package/dist/dock.js +819 -568
  311. package/dist/{dockContext-Bu1Avy-a.js → dockContext-BNfyPLe9.js} +1 -1
  312. package/dist/dom.js +5 -5
  313. package/dist/dot-flow-field.d.ts +1 -0
  314. package/dist/dot-flow-field.js +894 -0
  315. package/dist/dot-matrix.d.ts +1 -0
  316. package/dist/dot-matrix.js +630 -0
  317. package/dist/dotMatrixField-D_x9_1qq.js +48 -0
  318. package/dist/drawer.d.ts +1 -0
  319. package/dist/drawer.js +380 -0
  320. package/dist/{dropdown-menu-BJ7E9js_.js → dropdown-menu-aJmV5SqE.js} +82 -79
  321. package/dist/dropdown-menu.js +1 -1
  322. package/dist/easing.d.ts +1 -0
  323. package/dist/easing.js +475 -0
  324. package/dist/expandable-container.js +46 -21
  325. package/dist/fading-scroll.js +1 -1
  326. package/dist/flow.glsl-B2P7e0MT.js +4 -0
  327. package/dist/focus-scope.d.ts +1 -0
  328. package/dist/focus-scope.js +23 -0
  329. package/dist/forms.js +65 -63
  330. package/dist/fourier-field.js +831 -172
  331. package/dist/fourier-math.js +1 -1
  332. package/dist/glass-panel.js +2 -2
  333. package/dist/glass-ui.css +1 -1
  334. package/dist/glass-ui.js +187 -338
  335. package/dist/goo-blob.js +241 -692
  336. package/dist/goo-dot-matrix.d.ts +1 -0
  337. package/dist/goo-dot-matrix.js +591 -0
  338. package/dist/handmark.js +2 -2
  339. package/dist/header-ribbon.js +1 -1
  340. package/dist/hover-card.js +1 -1
  341. package/dist/hover-popover.js +1 -1
  342. package/dist/icon-chip.js +1 -1
  343. package/dist/icon-tooltip.js +1 -1
  344. package/dist/index.d.ts +3 -1
  345. package/dist/instrument-chassis.js +1 -1
  346. package/dist/keyboard.js +1 -1
  347. package/dist/label.js +1 -1
  348. package/dist/labeled-field.js +70 -60
  349. package/dist/metric-badge.js +1 -1
  350. package/dist/metric-cell.js +1 -1
  351. package/dist/metric-stack.js +14 -9
  352. package/dist/motion-core.js +58 -36
  353. package/dist/motion-curves.js +11 -1
  354. package/dist/motion.js +90 -53
  355. package/dist/notification.js +1 -1
  356. package/dist/number-field.js +1 -1
  357. package/dist/pager-dots.js +2 -91
  358. package/dist/paper-backdrop.js +1 -1
  359. package/dist/paper-grid.d.ts +1 -0
  360. package/dist/paper-grid.js +788 -0
  361. package/dist/popover.js +1 -1
  362. package/dist/{presets-BW2b-fr1.js → presets-CvOUqtdY.js} +3 -3
  363. package/dist/{compile-EXXzEr1q.js → procedural-color.wgsl-m7Zgv35j.js} +2 -156
  364. package/dist/progress.js +1 -1
  365. package/dist/pulse.js +2 -2
  366. package/dist/reactive.js +1 -1
  367. package/dist/resolveCanvasColor-yPyIpJt9.js +93 -0
  368. package/dist/scrollReader-DI1NWxUw.js +42 -0
  369. package/dist/scrolling-text.js +1 -1
  370. package/dist/search.js +162 -308
  371. package/dist/select.js +3 -3
  372. package/dist/selectable-chip.d.ts +1 -0
  373. package/dist/selectable-chip.js +65 -0
  374. package/dist/separator.js +1 -1
  375. package/dist/{sheet-CquRYOAw.js → sheet-B2flBfLH.js} +5 -5
  376. package/dist/sheet.js +1 -1
  377. package/dist/sidebar.js +216 -114
  378. package/dist/{slider-DQ95MET2.js → slider-2A0rPn79.js} +3 -3
  379. package/dist/slider.js +1 -1
  380. package/dist/sortable-list.js +2 -2
  381. package/dist/spa-view.d.ts +1 -0
  382. package/dist/spa-view.js +46 -0
  383. package/dist/spectrum-walk-BVzA7Biz.js +33 -0
  384. package/dist/{springPresets-WXaLbu8u.js → springPresets-Ce7OYCm9.js} +12 -6
  385. package/dist/styles/animations.css +46 -12
  386. package/dist/styles/border-progress.css +109 -0
  387. package/dist/styles/cards.css +145 -0
  388. package/dist/styles/completion-seal.css +131 -0
  389. package/dist/styles/components.css +2 -3
  390. package/dist/styles/configurator.css +55 -0
  391. package/dist/styles/critical-partition.mjs +162 -0
  392. package/dist/styles/critical.css +12 -0
  393. package/dist/styles/deferred.css +33 -0
  394. package/dist/styles/dock/cta-seat.css +87 -0
  395. package/dist/styles/dock/density.css +198 -0
  396. package/dist/styles/dock/layers.css +101 -29
  397. package/dist/styles/dock/morph-bridge.css +54 -18
  398. package/dist/styles/dock/morph.css +132 -7
  399. package/dist/styles/dock/overflow.css +28 -2
  400. package/dist/styles/dock/search.css +68 -0
  401. package/dist/styles/dock/shape.css +124 -0
  402. package/dist/styles/dock/shell.css +77 -21
  403. package/dist/styles/dock/stack-rail.css +264 -0
  404. package/dist/styles/dock-controls/dark-mode-toggle.css +17 -4
  405. package/dist/styles/dock-controls/icon-button.css +14 -0
  406. package/dist/styles/dock.css +43 -1
  407. package/dist/styles/drawer.css +81 -35
  408. package/dist/styles/glass/accent-tone.css +66 -0
  409. package/dist/styles/glass/control-surfaces.css +167 -0
  410. package/dist/styles/glass/deep.css +44 -0
  411. package/dist/styles/glass/ladder.css +147 -41
  412. package/dist/styles/glass/material.css +78 -15
  413. package/dist/styles/glass/reveal.css +136 -0
  414. package/dist/styles/glass/rim.css +110 -0
  415. package/dist/styles/glass/surfaces.css +148 -129
  416. package/dist/styles/glass-refract.css +96 -44
  417. package/dist/styles/glass-specular-track.css +7 -0
  418. package/dist/styles/glass.css +13 -0
  419. package/dist/styles/hover-popover.css +7 -6
  420. package/dist/styles/icon-chip.css +77 -15
  421. package/dist/styles/index.css +36 -9
  422. package/dist/styles/instrument-chassis.css +66 -3
  423. package/dist/styles/scroll-choreography.css +300 -0
  424. package/dist/styles/scroll-chrome.css +123 -0
  425. package/dist/styles/scroll-driven.css +38 -0
  426. package/dist/styles/segmented-tabs.css +81 -14
  427. package/dist/styles/theme/bridges.css +33 -0
  428. package/dist/styles/theme/literals.css +11 -2
  429. package/dist/styles/theme/radius.css +24 -2
  430. package/dist/styles/tokens/color-radius.css +13 -3
  431. package/dist/styles/tokens/dark-arm.css +137 -32
  432. package/dist/styles/tokens/glass-deep.css +100 -0
  433. package/dist/styles/tokens/glass-fx.css +376 -0
  434. package/dist/styles/tokens/glass.css +131 -351
  435. package/dist/styles/tokens/light-dark.css +16 -3
  436. package/dist/styles/tokens/offsets.css +143 -0
  437. package/dist/styles/tokens/on-glass-fg.css +39 -0
  438. package/dist/styles/tokens/property-regs.css +260 -0
  439. package/dist/styles/tokens/scale-paper.css +168 -96
  440. package/dist/styles/tokens/scheme-motion.css +114 -38
  441. package/dist/styles/tokens/scroll-tokens.css +123 -0
  442. package/dist/styles/tokens/sizing-config.css +110 -0
  443. package/{src/styles/tokens/offsets-sizing.css → dist/styles/tokens/sizing.css} +92 -204
  444. package/dist/styles/tokens.css +14 -3
  445. package/dist/styles/typography/semantic.css +26 -13
  446. package/dist/styles/typography/utilities.css +22 -7
  447. package/dist/styles/utilities/a11y-overrides.css +20 -5
  448. package/dist/styles/utilities/animate.css +27 -24
  449. package/dist/styles/utilities/base-misc.css +307 -0
  450. package/dist/styles/utilities/base.css +47 -261
  451. package/dist/styles/utilities/btn.css +17 -4
  452. package/dist/styles/utilities/components.css +31 -6
  453. package/dist/styles/utilities/metal.css +215 -0
  454. package/dist/styles/utilities.css +14 -7
  455. package/dist/switch.js +1 -1
  456. package/dist/tabs.js +220 -107
  457. package/dist/timeline.js +2 -2
  458. package/dist/toast.js +1 -1
  459. package/dist/toggle-chip.js +10 -10
  460. package/dist/toggle-group.js +1 -1
  461. package/dist/tooltip.js +1 -1
  462. package/dist/typewriter.js +2 -2
  463. package/dist/uniformBridgeWGPU-CtAKl45L.js +1204 -0
  464. package/dist/{useAnimatedNumber-C_3wZLx4.js → useAnimatedNumber-CLrxicG9.js} +1 -1
  465. package/dist/useConfiguratorState-4xblKfwd.js +162 -0
  466. package/dist/useControlSize-SH1UmJCi.js +9 -0
  467. package/dist/useDockCtaReceive-DfFkmgL1.js +82 -0
  468. package/dist/useDragMorph-BUgAC-zK.js +102 -0
  469. package/dist/useFuzzySearch-DIhcYtcw.js +177 -0
  470. package/dist/useGpuSubstrate-4pTcp6mX.js +294 -0
  471. package/dist/useLiquidPress-BooG97RY.js +39 -0
  472. package/dist/usePointerVelocityField-QLsy3_kv.js +91 -0
  473. package/dist/useScrollChrome-D66AVP7C.js +258 -0
  474. package/dist/useSpring-C0jyvEJB.js +40 -0
  475. package/dist/useSpringMount-BWDnKIwh.js +71 -0
  476. package/dist/useSpringPress-B1-Czp-V.js +36 -0
  477. package/dist/{useTouchGate-28Tk2-t2.js → useTouchGate-CBZTD4SD.js} +1 -1
  478. package/dist/useViewTransition-CUI1nAgn.js +95 -0
  479. package/dist/vSpecular-EX7loENl.js +68 -0
  480. package/dist/vendor-B2qOlYY3.js +239 -0
  481. package/dist/virtual.d.ts +1 -0
  482. package/dist/virtual.js +225 -0
  483. package/dist/watercolor-dot.js +117 -74
  484. package/package.json +252 -28
  485. package/src/styles/animations.css +46 -12
  486. package/src/styles/border-progress.css +109 -0
  487. package/src/styles/cards.css +145 -0
  488. package/src/styles/completion-seal.css +131 -0
  489. package/src/styles/configurator.css +55 -0
  490. package/src/styles/critical-partition.mjs +162 -0
  491. package/src/styles/dock/cta-seat.css +87 -0
  492. package/src/styles/dock/density.css +198 -0
  493. package/src/styles/dock/layers.css +101 -29
  494. package/src/styles/dock/morph-bridge.css +54 -18
  495. package/src/styles/dock/morph.css +132 -7
  496. package/src/styles/dock/overflow.css +28 -2
  497. package/src/styles/dock/search.css +68 -0
  498. package/src/styles/dock/shape.css +124 -0
  499. package/src/styles/dock/shell.css +77 -21
  500. package/src/styles/dock/stack-rail.css +264 -0
  501. package/src/styles/dock-controls/dark-mode-toggle.css +17 -4
  502. package/src/styles/dock-controls/icon-button.css +14 -0
  503. package/src/styles/dock.css +43 -1
  504. package/src/styles/drawer.css +81 -35
  505. package/src/styles/glass/accent-tone.css +66 -0
  506. package/src/styles/glass/control-surfaces.css +167 -0
  507. package/src/styles/glass/deep.css +44 -0
  508. package/src/styles/glass/ladder.css +147 -41
  509. package/src/styles/glass/material.css +78 -15
  510. package/src/styles/glass/reveal.css +136 -0
  511. package/src/styles/glass/rim.css +110 -0
  512. package/src/styles/glass/surfaces.css +148 -129
  513. package/src/styles/glass-refract.css +96 -44
  514. package/src/styles/glass-specular-track.css +7 -0
  515. package/src/styles/glass.css +13 -0
  516. package/src/styles/hover-popover.css +7 -6
  517. package/src/styles/icon-chip.css +77 -15
  518. package/src/styles/index.css +27 -0
  519. package/src/styles/instrument-chassis.css +66 -3
  520. package/src/styles/scroll-choreography.css +300 -0
  521. package/src/styles/scroll-chrome.css +123 -0
  522. package/src/styles/scroll-driven.css +38 -0
  523. package/src/styles/segmented-tabs.css +81 -14
  524. package/src/styles/theme/bridges.css +33 -0
  525. package/src/styles/theme/literals.css +11 -2
  526. package/src/styles/theme/radius.css +24 -2
  527. package/src/styles/tokens/color-radius.css +13 -3
  528. package/src/styles/tokens/dark-arm.css +137 -32
  529. package/src/styles/tokens/glass-deep.css +100 -0
  530. package/src/styles/tokens/glass-fx.css +376 -0
  531. package/src/styles/tokens/glass.css +131 -351
  532. package/src/styles/tokens/light-dark.css +16 -3
  533. package/src/styles/tokens/offsets.css +143 -0
  534. package/src/styles/tokens/on-glass-fg.css +39 -0
  535. package/src/styles/tokens/property-regs.css +260 -0
  536. package/src/styles/tokens/scale-paper.css +168 -96
  537. package/src/styles/tokens/scheme-motion.css +114 -38
  538. package/src/styles/tokens/scroll-tokens.css +123 -0
  539. package/src/styles/tokens/sizing-config.css +110 -0
  540. package/{dist/styles/tokens/offsets-sizing.css → src/styles/tokens/sizing.css} +92 -204
  541. package/src/styles/tokens.css +14 -3
  542. package/src/styles/typography/semantic.css +26 -13
  543. package/src/styles/typography/utilities.css +22 -7
  544. package/src/styles/utilities/a11y-overrides.css +20 -5
  545. package/src/styles/utilities/animate.css +27 -24
  546. package/src/styles/utilities/base-misc.css +307 -0
  547. package/src/styles/utilities/base.css +47 -261
  548. package/src/styles/utilities/btn.css +17 -4
  549. package/src/styles/utilities/components.css +31 -6
  550. package/src/styles/utilities/metal.css +215 -0
  551. package/src/styles/utilities.css +14 -7
  552. package/dist/CardAction-XH4YBVEK.js +0 -158
  553. package/dist/ContextMenuContent-ON3x7cuk.js +0 -85
  554. package/dist/DialogFooter-8eZbdmPc.js +0 -165
  555. package/dist/HoverCardContent-DkMaQzH5.js +0 -83
  556. package/dist/Input-DVG_J0ne.js +0 -55
  557. package/dist/Notification-DKjKsQq8.js +0 -100
  558. package/dist/NumberFieldContent-1VtwDSgf.js +0 -145
  559. package/dist/Separator-BArl4OaB.js +0 -37
  560. package/dist/Switch-Dr--uLGH.js +0 -47
  561. package/dist/Toaster-Bm_HQSpc.js +0 -263
  562. package/dist/ToggleGroupItem-Dzk9hWsF.js +0 -157
  563. package/dist/TooltipProvider-B3MkB_8P.js +0 -104
  564. package/dist/button-BNDWhAZb.js +0 -81
  565. package/dist/check-njhk-vfu.js +0 -7
  566. package/dist/chevron-down-DKkxb4VV.js +0 -7
  567. package/dist/chevron-right-CPXbqQQz.js +0 -7
  568. package/dist/chevron-up-n_24SqI-.js +0 -7
  569. package/dist/color-DweYl7pE.js +0 -86
  570. package/dist/components/custom/constellation/composables/useConstellationPointer.d.ts +0 -35
  571. package/dist/components/custom/constellation/constellationDraw.d.ts +0 -30
  572. package/dist/components/custom/dock/DockRail.vue.d.ts +0 -89
  573. package/dist/createLucideIcon-DydS2qgk.js +0 -43
  574. package/dist/minimize-2-BV31Ob_h.js +0 -38
  575. package/dist/resolveCanvasColor-BBiYfp8g.js +0 -11
  576. package/dist/search-BSGrf2Sk.js +0 -12
  577. package/dist/styles/dock/rail-extend.css +0 -397
  578. package/dist/useCanvas2D-ClrQuZtp.js +0 -96
  579. package/dist/useConfiguratorState-kiIlun8I.js +0 -303
  580. package/dist/useRAFLoop-CdwJ7284.js +0 -109
  581. package/dist/useSpecularTracking-Bo5su68i.js +0 -32
  582. package/dist/useSpringMount-CvopqiFr.js +0 -108
  583. package/dist/useViewTransition-COsPjQVZ.js +0 -47
  584. package/dist/x-BUwTKe50.js +0 -10
  585. package/src/styles/dock/rail-extend.css +0 -397
  586. /package/dist/{CollapsibleContent-C_s6fG7r.js → CollapsibleContent-68dEXIAl.js} +0 -0
  587. /package/dist/{InstrumentChassis-UUJX0-mW.js → InstrumentChassis-CxsHSyMj.js} +0 -0
  588. /package/dist/{Label-Ck9SWEKM.js → Label-C2ejNWeC.js} +0 -0
  589. /package/dist/{ModalOverlay-CkPRRgl_.js → ModalOverlay-D1VrWyoi.js} +0 -0
  590. /package/dist/{PaperBackdrop-nBKe0vkB.js → PaperBackdrop-CqwjnfLv.js} +0 -0
  591. /package/dist/{SelectGroup-Dcczq44n.js → SelectGroup-BFiod7X2.js} +0 -0
  592. /package/dist/{_plugin-vue_export-helper-CBt_VvXa.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
  593. /package/dist/{badge-UILT_3pZ.js → badge-D9XWW4GT.js} +0 -0
  594. /package/dist/{constants-BPOqYJAm.js → constants--C2DkLW8.js} +0 -0
  595. /package/dist/{createContext-B2RaZ-b8.js → createContext-CpBNTRMI.js} +0 -0
  596. /package/dist/{math-DeuJwLFx.js → math-Eb0w3LqU.js} +0 -0
  597. /package/dist/{menuItemVariants-DWRQXBxJ.js → menuItemVariants-D8VNHq22.js} +0 -0
  598. /package/dist/{prng-Cg22zv8g.js → prng-B-d9eYX8.js} +0 -0
  599. /package/dist/{useGlobalDark-C28t0VWJ.js → useGlobalDark-CmjB9E32.js} +0 -0
  600. /package/dist/{useIntersectionPause-Bj4sPkMh.js → useIntersectionPause-Dbozzjgm.js} +0 -0
  601. /package/dist/{useKeyboardShortcuts-BXWXOZ-9.js → useKeyboardShortcuts-BPRp33Im.js} +0 -0
  602. /package/dist/{useLiquidFlex-C12hXwOZ.js → useLiquidFlex-UmA6LMZu.js} +0 -0
  603. /package/dist/{useResizeObserver-V6nq5gJb.js → useResizeObserver-Bpoi7tRE.js} +0 -0
  604. /package/dist/{useResolveTokenColor-NUG2zYAW.js → useResolveTokenColor-vAylyR0x.js} +0 -0
  605. /package/dist/{useScrollProgress-D7bYU2RK.js → useScrollProgress-c3yxmH6a.js} +0 -0
  606. /package/dist/{useSurfaceAxis-CMnF2zHb.js → useSurfaceAxis-g0NloYEF.js} +0 -0
  607. /package/dist/{useTimer-B_PAasDL.js → useTimer-BHJOKr35.js} +0 -0
  608. /package/dist/{useUserInvalidAria-CDfJuakL.js → useUserInvalidAria-y5namzeE.js} +0 -0
  609. /package/dist/{useViewportReady-CvBcCYDf.js → useViewportReady-anbac3m6.js} +0 -0
@@ -0,0 +1,123 @@
1
+ /* tokens/scroll-tokens.css
2
+ §20 PLATFORM MOTION (AQ.W5) — the native-platform motion substrate knobs.
3
+ Carved WHOLE from tokens/scale-paper.css at BB.W-CARVE4 to hold the no-god-module
4
+ bound (the paper/control/display/metal/timeline/metric/table families §11–§19 stay
5
+ in scale-paper.css; §20 is the file's last section, so this is a contiguous tail
6
+ carve at the §19/§20 seam). @import-ed by tokens.css in cascade order IMMEDIATELY
7
+ AFTER scale-paper.css — an adjacent same-selector :root{} block carrying the SAME
8
+ declarations in the SAME relative order, so the dist is byte-isomorphic.
9
+
10
+ The motion families, each read by a `@supports`-gated CSS recipe:
11
+ scroll-driven.css / scroll-choreography.css, animations.css (§TOP-LAYER),
12
+ view-transition.css — every visual knob a token so a consumer retunes without
13
+ editing library source. */
14
+ :root {
15
+ /* SCROLL-DRIVEN (scroll-driven.css). Values mirror the JS-fallback composable
16
+ defaults (`useScrollProgress` / `useStaggerReveal`) so the native CSS path and
17
+ the fallback path read identically — no visual seam at the `@supports` boundary. */
18
+ --scroll-progress-scroller: root;
19
+ --scroll-reveal-rise: 6px;
20
+ --scroll-reveal-range-end: 60%;
21
+
22
+ /* BB.W-SCROLL-MOTION — the scroll-CHOREOGRAPHY register knobs (the page-build /
23
+ section-cascade / scroll-pinned recipes in scroll-choreography.css). These
24
+ EXTEND the --scroll-reveal-* substrate above; the existing three are READ-ONLY
25
+ (the cascade COMPOSES them, it never re-tunes them). All distances are
26
+ compositor (transform) channels; the clocks are the per-spring settle clocks
27
+ (scheme-motion.css), threaded, never re-tuned. */
28
+ /* .scroll-build — the route-enter page-build (the chrome -> hero -> body
29
+ coordinated entrance). The rise is a touch deeper than the section cascade
30
+ (the page ASSEMBLES — a more pronounced settle), the step is the per-beat
31
+ coordinated stagger between the chrome, hero, and first-section beats. */
32
+ --scroll-build-rise: 1.5rem;
33
+ --scroll-build-step: 90ms;
34
+ /* .scroll-cascade — the orchestrated section cascade (the per-child view()
35
+ timeline, the spring-clocked coupled build). The rise lifts the bare
36
+ --scroll-reveal-rise 6px to a perceptible SOTA build; the range-end is the
37
+ reveal window (a touch tighter than the bare reveal so each section lands
38
+ crisply rather than dragging a long fade tail). The column-stagger delay is
39
+ the opt-in .scroll-cascade--columns grid-variant knob. */
40
+ --scroll-cascade-rise: 1.25rem;
41
+ --scroll-cascade-range-end: 45%;
42
+ --scroll-cascade-column-stagger: 60ms;
43
+ /* .scroll-pin — the fixed-stage-advances-time scroll-pinned register. The stage
44
+ height is the Nvh temporal space the sticky stage advances its phases across;
45
+ the phase windows are the scroll-progress fractions the stage's internal
46
+ phases key off (grid-reveal 0..45%, expand 45..90%, settle 90..100% — the
47
+ Codrops phased-sequence shape). */
48
+ --scroll-pin-stage-height: 320vh;
49
+ --scroll-pin-phase-reveal-end: 45%;
50
+ --scroll-pin-phase-expand-end: 90%;
51
+ --scroll-pin-lift: 2.5rem;
52
+
53
+ /* TOP-LAYER (animations.css §TOP-LAYER). The `@starting-style` entry/exit
54
+ grammar for native `<dialog>` / `[popover]` glass surfaces. The backdrop dim
55
+ uses the house alpha-derivative `color-mix(in srgb, var(--background) Npct,
56
+ transparent)` (AZ.W-ADAPTIVE-AUTO A5-1). It is NOT the `hsl(var(--background)
57
+ / α)` channel form: `--background` is a COMPLETE `hsl()` color
58
+ (`= hsl(48 12% 98%)`), so `hsl(var(--background) / α)` double-wraps to
59
+ `hsl(hsl(…) / α)` — invalid, never paints (the modal dim was silently dead).
60
+ The genuine channel form would require `--background` declared as a bare
61
+ `H S% L%` triple, which it never is — hence the alpha-derivative mix. */
62
+ --top-layer-enter-scale: 0.96;
63
+ --top-layer-backdrop-blur: 8px;
64
+ --top-layer-backdrop-dim: 0.5;
65
+
66
+ /* VIEW-TRANSITION (view-transition.css). The shared `.gl-list-item` group recipe
67
+ + the `--vt-*` axes the `useViewTransition` substrate consumers (dock layer
68
+ swap, muster J's verdict re-rank) tune their swap against. */
69
+ --vt-duration: var(--duration-normal);
70
+ /* AX.W05 — ONE iOS-spring vocabulary: every spring-flavored transition reads
71
+ a governed `--spring-*` register. The legacy apple-spring cubic-bezier
72
+ (+27.5% overshoot) was a SECOND authority beside the regen `--spring-*`
73
+ cohort; it is EXCISED. Its emphatic-overshoot register maps to the playful
74
+ `--spring-bouncy` (the closest `linear()` overshoot stop-set), so the VT
75
+ default + the cards/top-layer transitions share one spring primitive
76
+ (CPU + GPU sample the same curve). No cubic-bezier fallback seed survives —
77
+ the `linear()` spring degrades to `ease` where `linear()` is unsupported. */
78
+ --vt-ease: var(--spring-bouncy);
79
+ --vt-rise: 8px;
80
+
81
+ /* AT.W6-dock-c / AU.W8 — the dock layer-swap morph timing, minted ONCE so
82
+ both engine paths are timing-IDENTICAL: the FLIP fallback (via
83
+ `--dock-motion-resize`), the native View-Transition group (its
84
+ `animation-timing-function`), AND the runtime SpringProgress driver
85
+ (AU.W8.3) consume this same `(0.32, 0.7)` source curve. Retires the AQ.W6
86
+ fork where the VT path ran `--vt-ease` (apple-spring, +27.5% overshoot)
87
+ while the FLIP ran the snappy spring. `--vt-ease` still defaults the
88
+ other VT recipes (`.gl-list-item`).
89
+
90
+ AU.W8 — RETARGET snappy → dock. `--spring-snappy` (ζ=0.65, +6.8%) read as
91
+ mechanical: a stiff plateau at ~48% with too little overshoot to feel
92
+ alive ("not iOS-smooth"). AW.W2 then retuned the dock spring to the
93
+ iOS-control register: `--spring-dock` ((0.32, 0.7), ~+4.6%) settles snappy
94
+ with a restrained overshoot — the felt iOS dock morph, off the prior
95
+ playful +18.5% register. The runtime driver's DOCK_SPRING const MIRRORS the
96
+ (0.32, 0.7) PRESETS row, so the CSS token and the JS-driven morph are
97
+ bit-identical. */
98
+ --dock-resize-spring: var(--spring-dock);
99
+
100
+ /* AT.W7-dock-b — dock-control press micro-feedback spring. A TRANSFORM-ONLY
101
+ spring (`scale`/`rotate`) the dock controls apply to their hover/press
102
+ activation so the squish reads with a touch of spring-back rather than a
103
+ flat ease. STRICTLY transform-scoped: it must never touch the surface-tier
104
+ `[data-held]` fades (background/border/box-shadow), which stay on
105
+ `--duration-fast var(--ease-standard)`. The duration pairs with
106
+ `--duration-fast`; consumers retune the whole feel via this one token.
107
+
108
+ AY.W-DOCK2 (D6) — the register is `--spring-smooth`, the §6 easing-doctrine
109
+ transform-press register (tokens.css §2: transform hover/press/active →
110
+ `--spring-smooth`/`--spring-snappy`, NEVER `--spring-bouncy`; a press must
111
+ settle, never overshoot into a visible bounce). The prior `--spring-bouncy`
112
+ ROOT default was off-doctrine, shadowed for the four named controls by a
113
+ per-surface re-point in dock-controls.css — the exact per-surface fork the
114
+ doctrine kills. The re-point is now a DEAD byte-identical redeclaration and is
115
+ DELETED; the ROOT token IS the doctrine register, so any other consumer of
116
+ `--dock-press-spring` inherits the correct smooth register.
117
+
118
+ BA.W-GLASS-CAL Unit 3 — the duration leg re-times off the generic
119
+ `--duration-fast` (0.2s) onto `--spring-smooth-duration` (0.36s, the
120
+ smooth spring's OWN 2%-band envelope settle), so the press transform plays
121
+ at its physical settle rather than a generic clock. */
122
+ --dock-press-spring: var(--spring-smooth-duration) var(--spring-smooth);
123
+ }
@@ -0,0 +1,110 @@
1
+ /* tokens/sizing-config.css
2
+ §10 sizing tail — the MetricBadge stacked geometry + the Configurator family
3
+ (the density ladder, the AZ.W-HIERARCHY section/label/preset vocabulary, the
4
+ single-column stage floor, the dark-adaptive divider register, the section
5
+ tonal step) + the component-font override.
6
+ Carved (BC.W-CARVE6) from the tail of tokens/sizing.css to hold the 500-line
7
+ no-god-module bound; @import-ed by tokens.css IMMEDIATELY AFTER sizing.css at
8
+ sizing's own cascade slot — adjacent same-selector :root blocks resolve
9
+ identically, so the dist is byte-isomorphic.
10
+ See docs/precepts/design-idioms.md §cohesion-aware partials. */
11
+ :root {
12
+ /* MetricBadge — stacked variant geometry. The 2-row stacked layout
13
+ (label / value+unit) wants a taller floor than the inline pill so the
14
+ label has breathing room above the baseline pair. T.W2.T2 +
15
+ audit B-spec §3.2 vertical-rhythm table land 42px (2.625rem) as the
16
+ min-height with 6px (0.375rem) block padding. The inline ladder
17
+ keeps its tight defaults via `--metric-badge-min-height` /
18
+ `--metric-badge-padding-block` (declared inline at the
19
+ `.metric-badge` selector). */
20
+ --metric-badge-min-height-stacked: 2.625rem;
21
+ --metric-badge-padding-block-stacked: 0.375rem;
22
+
23
+ /* Configurator — N.W2 Lane A density axis (4 rungs).
24
+ The `comfortable` rung restates the pre-N.W2 baked recipe exactly
25
+ (`gap-1.5 py-2` = 0.375rem / 0.5rem) so unparameterised consumers
26
+ see no visual change. `mobile` halves the vertical breathing room
27
+ for narrow-viewport studios; `spacious` doubles it for settings-
28
+ page hosts. See `<ConfiguratorRow>` scoped CSS for the attribute-
29
+ selector binding. */
30
+ --configurator-row-gap-mobile: 0.25rem; /* 4px — tight */
31
+ --configurator-row-gap-compact: 0.3125rem; /* 5px — slightly tighter */
32
+ --configurator-row-gap-comfortable: 0.375rem; /* 6px — pre-N.W2 default */
33
+ --configurator-row-gap-spacious: 0.75rem; /* 12px — generous */
34
+
35
+ --configurator-row-py-mobile: 0.25rem; /* 4px — tight */
36
+ --configurator-row-py-compact: 0.375rem; /* 6px — slightly tighter */
37
+ --configurator-row-py-comfortable: 0.5rem; /* 8px — pre-N.W2 default */
38
+ --configurator-row-py-spacious: 0.875rem; /* 14px — generous */
39
+
40
+ /* Configurator HIERARCHY VOCABULARY (AZ.W-HIERARCHY — D6-3). The three
41
+ NAMED registers the studios (blob, aurora) inherit instead of a flat
42
+ undifferentiated stack. DISTINCT from the density ladder above (which is
43
+ the per-row CADENCE, not the section/label/preset register).
44
+
45
+ 1. Section register — the <ConfiguratorLayer> label reads as a SECTION,
46
+ not a row: the √φ subheading rung at weight 600, lifting off the prior
47
+ flat `text-small font-semibold`. */
48
+ --configurator-section-size: var(--type-subheading); /* 20.4px — √φ section rung */
49
+ --configurator-section-weight: 600; /* the heading weight */
50
+
51
+ /* AZ.W-BLOB-REDRESS — the SINGLE-COLUMN stage-row FLOOR. Below `lg` the
52
+ Configurator stacks stage-over-aside; a percentage stage height against
53
+ an INDEFINITE auto-row resolves to 0 (the GooBlob hero painted 0×0 on a
54
+ phone). The single-column band's `grid-template-rows` floors the stage
55
+ row at this DEFINITE `minmax(…)` minimum so the percentage resolves;
56
+ the aside row takes the remainder and scrolls internally. */
57
+ --configurator-stage-min: 18rem; /* 288px — the mobile live-specimen stage floor */
58
+
59
+ /* 2. Preset-row PRIMARY-AFFORDANCE lift. The preset picker is the primary
60
+ interaction (C6-10); D6-3's defect is the preset row being spatially
61
+ CRAMPED. This token's binding SEMANTIC is the preset row's SPATIAL
62
+ rhythm — its block-padding / gap, NOT a font-weight — so the preset
63
+ row breathes ABOVE a body ConfiguratorRow. (The `-weight` name follows
64
+ the vocabulary's "register weight" framing; it lands on the padding/gap
65
+ slot of `.configurator-presets`, the heavier spatial cadence.) */
66
+ --configurator-preset-row-weight: 0.625rem; /* 10px — > a body row's 8px py-comfortable */
67
+ --configurator-preset-row-gap: 0.5rem; /* 8px — generous chip gap */
68
+
69
+ /* 3. The DIVIDER register — dark-adaptive (BA.W-CONFIG-CHASSIS.1 / CFG-4).
70
+ The section + inter-row dividers used to be inline `border-border/40` and
71
+ `border-border/30` Tailwind alphas; over the W-DARK-MATERIAL dark
72
+ `glass-floating` plate (a luminous transmissive material, --card L16) those
73
+ near-equal-luminance hairlines effectively VANISHED — "the sections run
74
+ together". This ONE token is consumed by every divider rule (the
75
+ <ConfiguratorLayer> section border, the dividers-prop inter-row border,
76
+ Configurator.vue's aside/preset/footer borders, configurator.css) so the
77
+ divider weight is retuned from a single override.
78
+
79
+ The dark-LIFTING arm is the load-bearing half: the divider must read on
80
+ BOTH plates. On LIGHT it is the resting `--border` warm-neutral at the
81
+ prior ~40% weight; on DARK it LIFTS off `--border` (L34 over the L16 plate
82
+ — too close) toward the `--foreground` warm-ink (L90) at a higher α, so a
83
+ visible luminance step survives the dark glass. `light-dark()` carries the
84
+ arm in ONE declaration (the same :root cascade context as the surface-tint
85
+ family; an engine without `light-dark()` falls back to the dark-arm.css
86
+ `.dark` floor minted in lockstep). The SECTION divider runs a touch
87
+ heavier than the inter-row hairline (a section reads as a section without
88
+ a second heading rung). */
89
+ --configurator-divider: light-dark(
90
+ color-mix(in srgb, var(--border) 55%, transparent),
91
+ color-mix(in srgb, var(--foreground) 22%, transparent)
92
+ );
93
+ --configurator-divider-section: light-dark(
94
+ color-mix(in srgb, var(--border) 70%, transparent),
95
+ color-mix(in srgb, var(--foreground) 30%, transparent)
96
+ );
97
+ /* The optional faint section-header tonal step — a whisper-light warm wash
98
+ behind a <ConfiguratorLayer> section so it reads as a grouped section
99
+ WITHOUT a new heading rung (within the W-HIERARCHY register). Default off
100
+ (transparent) on light where the hairline carries it; a faint
101
+ foreground-over-transparent lift on dark where the divider alone is
102
+ subtle. */
103
+ --configurator-section-tint: light-dark(
104
+ transparent,
105
+ color-mix(in srgb, var(--foreground) 3%, transparent)
106
+ );
107
+
108
+ /* Component font override (consumers override locally) */
109
+ --select-font: inherit;
110
+ }
@@ -1,101 +1,16 @@
1
- /* tokens/offsets-sizing.css
2
- §9 animation offsets · §10 sizing (control heights, dropdown, carousel, stack-overlap, touch-target floor).
3
- Carved from the tokens.css cascade root; @import-ed by tokens.css in
4
- cascade order. Same :root cascade context as its siblings. */
1
+ /* tokens/sizing.css
2
+ §10 sizing — the --ui-scale doctrine, control-height/font/glyph cohorts,
3
+ dropdown/carousel/stack-overlap, the dock geometry cascade (--dock-scale +
4
+ collapsed-pill + rail hairline + active-state ladder + iOS register + touch
5
+ floor), MetricBadge stacked geometry, the Configurator density + HIERARCHY
6
+ vocabulary, the single-column stage floor, the section tonal step, the
7
+ component-font override.
8
+ Carved (BB.W-CARVE3) from the former tokens/offsets-sizing.css §9/§10 split;
9
+ @import-ed by tokens.css immediately AFTER offsets.css at offsets-sizing's old
10
+ cascade slot — adjacent same-selector :root blocks resolve identically, so the
11
+ dist is byte-isomorphic. See docs/precepts/design-idioms.md
12
+ §cohesion-aware partials. */
5
13
  :root {
6
- /* ═══════════════════════════════════════════════
7
- §9 ANIMATION OFFSETS
8
- ═══════════════════════════════════════════════ */
9
- /* Hover lift offsets */
10
- --lift-sm: -1px;
11
- --lift-md: -2px;
12
- --lift-lg: -4px;
13
-
14
- /* Layout tokens */
15
- /* BA.W-FADING-SCROLL — `--fade-scroll-width` is the public edge-fade ramp
16
- width knob for `<FadingScroll>` (inheriting, retunable on any ancestor;
17
- SegmentedTabs' `overflow="scroll"` strip overrides it to 0.5rem). It
18
- SUPERSEDES `--mask-fade-width` (the scroll-BLIND `.scroll-fade-*` static
19
- masks' knob). `--mask-fade-width` is RETIRE-COORDINATED: it survives this
20
- wave because the static `.scroll-fade-*` utility blocks survive (so
21
- W-CONFIG-CHASSIS's C2/C3 configurator columns still render mid-batch); it
22
- retires in a CLEAN BREAK (no alias) at the orchestrator's Batch-2-close
23
- commit alongside the static utilities, once C2/C3 have migrated onto the
24
- primitive. */
25
- --fade-scroll-width: 1rem;
26
- --mask-fade-width: 1rem;
27
- /* J.W3.C — dock content overflow caps. When dock content exceeds
28
- these dimensions, the inner `.dock-layers` (horizontal) /
29
- `.glass-dock.vertical` (rail) container scrolls with a
30
- `.scroll-fade-{x,y}` mask-fade so the boundary feathers rather
31
- than cliffs. Defaults clamp to 80vw / 80vh capped at sensible
32
- desktop widths; consumers override per-dock by setting either
33
- token directly on a `.glass-dock` instance. User findings 1 + 5a. */
34
- /* AX.W04 — `--dock-max-inline-size` is the canonical inline cap EVERY overflow
35
- strategy reads: `overflow="scroll"` scrolls past it, and `overflow="wrap"`
36
- wraps to N rows on the over-cap crossing (the dock shrink-wraps to content,
37
- `max-inline-size` caps that intrinsic width at this token). The prior
38
- `--dock-overflow-bp: 640px` viewport-breakpoint token (the magic-640
39
- snap-back) is DELETED — the wrap is content-driven, not viewport-coupled, so
40
- there is no breakpoint threshold to name. */
41
- --dock-max-inline-size: min(80vw, 64rem);
42
- --dock-max-block-size: min(80vh, 48rem);
43
-
44
- /* AB.W1.T1 — chassis max-block-size guardrail.
45
- Maximum block size a centred consumer-app card may consume while
46
- preserving the inline dock footprint. The recipe subtracts the
47
- consumer-owned `--dock-footer-space` (dock height + dock inset +
48
- card-edge inset) and `--page-padding-top` from the dynamic viewport,
49
- then takes one further rem of breathing room so the card never
50
- butts the dock — the user mandate is `≥ 1rem visible gap above
51
- dock`. Both consumer tokens carry safe fallbacks for callers that
52
- have not declared them.
53
-
54
- Consumers should shrink internal regions (meter, readout, timeline)
55
- before falling back to scroll. This token is a guardrail against
56
- chassis overflow, NOT a license to make the card scroll as the
57
- default solution; clamp-first / no-scroll-first is the canon.
58
- See DESIGN.md `## Chassis sizing — dock-adjusted viewport`. */
59
- --chassis-max-block-size: calc(
60
- 100dvh
61
- - var(--dock-footer-space, 5.75rem)
62
- - var(--page-padding-top, 0rem)
63
- - 1rem
64
- );
65
- /* R0G-2 (AO.W3/W4) — chassis mobile dial-reserve canon. instrument-
66
- chassis.css's mobile breakpoint reserves the dial's final box from
67
- frame 0 via these vars (with the same values as inline fallbacks, the
68
- safety net). Token-first home so the vars resolve canonically. */
69
- --instrument-dial-min-height-mobile: 24rem;
70
- --instrument-dial-meter-reserve-mobile: minmax(0, 1fr);
71
-
72
- --max-width-input: 24rem;
73
- --input-min-width-sm: 5rem;
74
- --min-width-input-sm: var(--input-min-width-sm);
75
- /* AU.W8b.4 — canonical popover width (Combobox list + anchor). Lifts the
76
- `w-[200px]` arbitrary-value wrap to the `w-popover` @theme utility. */
77
- --popover-width: 200px;
78
- /* AZ.R5-4 — the ONE panel inner-padding rung (the consumer-verified "the
79
- popover/dropdown content reads TIGHT" finding). The floating-panel +
80
- DropdownMenuContent recipes read THIS token for their inner pad instead of
81
- the prior hand-set `p-1`/literal, so a consumer retunes every teleported
82
- menu/panel surface from one override. The comfortable default is `0.375rem`
83
- (a half-rung over the prior 0.25rem tight floor — comfortable both modes
84
- without over-padding a dense menu list). PopoverContent keeps its own
85
- `--panel-padding-roomy` (1rem) for the prose-popover register. */
86
- --panel-padding: 0.375rem;
87
- --panel-padding-roomy: 1rem;
88
- --chart-height-compact: 15rem;
89
- --chart-height-default: 22.5rem;
90
- --chart-height-large: 25rem;
91
- --chart-margin: 1.25rem;
92
- --paper-texture-size: 200px 200px;
93
-
94
- /* Border opacity scale */
95
- --border-opacity-light: 0.15;
96
- --border-opacity-medium: 0.25;
97
- --border-opacity-strong: 0.6;
98
-
99
14
  /* ═══════════════════════════════════════════════
100
15
  §10 SIZING
101
16
  ═══════════════════════════════════════════════ */
@@ -207,6 +122,24 @@
207
122
  --dropdown-text-secondary: var(--control-text-sm);
208
123
  --dropdown-input-height: var(--control-h-md);
209
124
 
125
+ /* ── The search-family magnitude rungs (BC.W-SEARCH-CUSTOM) ───────────────
126
+ The SearchBar/FuzzySearch compound surfaces read these indirection rungs
127
+ for the glyph / icon-button / result-label magnitudes — so a consumer
128
+ retunes the WHOLE search family from ONE `:root` override, not a fork of
129
+ per-element px literals (`w-3.5 h-3.5`, `!h-6 !w-6`, `text-[0.6rem]`). Each
130
+ DEFAULTS to the existing cohort it replaces, so the bare search surface is
131
+ byte-identical to HEAD (the substitution-vs-redeclaration discipline — the
132
+ NAME is search-local, the magnitude stays the `--ui-glyph`/`--control-*`
133
+ source). NO parallel magnitude ladder: these are aliases onto the cohort.
134
+ • PRIMARY result label / field font → `--control-text` (the `text-sm` register).
135
+ • SECONDARY type-Badge / footnote → `--control-text-sm` (the `text-xs` register).
136
+ • the search/clear/expand glyph → `--ui-glyph-sm` (the chrome 1.4 glyph).
137
+ • the icon-button hit-box → `--control-h-xs` (the HEAD `h-6`/`h-7`). */
138
+ --search-icon-size: var(--ui-glyph-sm);
139
+ --search-button-size: var(--control-h-xs);
140
+ --search-result-text: var(--control-text);
141
+ --search-result-text-secondary: var(--control-text-sm);
142
+
210
143
  --size-icon-btn: 2.5rem;
211
144
  --icon-xs: 0.75rem;
212
145
  --icon-sm: 0.875rem;
@@ -283,8 +216,44 @@
283
216
  /* Library glyph ownership — `.dock-icon-button > svg` reads this so the dock
284
217
  icon glyph scales WITH the box (mirroring `.dark-mode-toggle-button > svg`).
285
218
  A consumer-passed explicit lucide size class still WINS (utility layer >
286
- component layer); this is a DEFAULT, not a ceiling. */
287
- --dock-icon-glyph: calc(1.25rem * var(--dock-scale));
219
+ component layer); this is a DEFAULT, not a ceiling.
220
+
221
+ BB.W-PERF-PRODUCER A′-6 — the glyph rides the per-DENSITY box, not a flat rem.
222
+ The value.js D5-1 companion trace: `density="spacious"` grew the shelf + pad +
223
+ gap but the glyph stayed 1.25rem (it rode `--dock-scale` only, NOT the
224
+ per-density `--dock-layer-height` axis density.css scales). Now the glyph is a
225
+ RATIO of `--dock-layer-height` (`--dock-icon-glyph-ratio`, default 0.5 → a
226
+ 2rem control → a 1rem glyph at compact, a 2.5rem control → 1.25rem at
227
+ comfortable, lockstep up the rungs). The `--dock-scale` coarse thread is
228
+ PRESERVED transitively — `--dock-layer-height` already rides it (density.css).
229
+ The WCAG glyph-floor holds via `max(…, --dock-icon-glyph-floor)` (a 16px floor
230
+ so a sub-1 density/coarse register can never drop the glyph below the legible
231
+ minimum). NOTE: `--dock-layer-height` is painted ONLY on `.glass-dock[data-density]`
232
+ (density.css) — at `:root` it is the inline fallback below, so this `:root`
233
+ declaration resolves the fallback ladder; density.css RE-RESOLVES `--dock-icon-glyph`
234
+ inside each `[data-density]` scope so the density-painted height flows in (the
235
+ substitution-vs-inheritance trap the overflow.css R5-1 sweep documents). The
236
+ toggle mirror `.dark-mode-toggle-button > svg` reads the SAME `--dock-icon-glyph`
237
+ so both glyphs move onto the density axis together. */
238
+ --dock-icon-glyph-ratio: 0.5;
239
+ --dock-icon-glyph-floor: 1rem;
240
+ --dock-icon-glyph: max(
241
+ calc(var(--dock-layer-height, calc(2.5rem * var(--dock-scale))) * var(--dock-icon-glyph-ratio)),
242
+ var(--dock-icon-glyph-floor)
243
+ );
244
+
245
+ /* BC.W-DOCK-ENGINE move 3 (the Atlas A-9 fold) — `--dock-control-glyph-size` is
246
+ the ONE in-dock control-glyph retint knob (the dark-toggle SVG `width`/`height`
247
+ + the `--dark-mode-toggle-padding` inset BOTH read it), defaulting to the
248
+ `--dock-scale`-keyed `--dock-icon-glyph` the nav icons paint so the docked
249
+ toggle is optically uniform out of the box. Like `--dock-icon-glyph` this
250
+ `:root` declaration resolves the fallback ladder; density.css RE-RESOLVES it
251
+ inside each `[data-density]` scope and overflow.css RE-DECLARES it in the
252
+ coarse block, so the density-painted + coarse-scaled `--dock-icon-glyph` flows
253
+ in (the substitution-vs-inheritance trap closed on all three registers — a
254
+ `:root`-only knob would freeze at the `:root` `--dock-scale` while the glyph
255
+ lifts). ONE knob; no per-size literal, no `!important`. */
256
+ --dock-control-glyph-size: var(--dock-icon-glyph);
288
257
 
289
258
  /* AX.W45-TUNE Q1 — the COLLAPSED-pill floor tokens. The collapsed summary
290
259
  used to fall to `--dock-layer-height` (the FULL control height, ~2.5rem) for
@@ -377,12 +346,9 @@
377
346
  `--dock-rail-extend-length` (declared in rail-extend.css) was RE-SEMANTICIZED:
378
347
  it is no longer a one-way connector length but the SYMMETRIC per-side overrun of
379
348
  the seam line (the line's cross-extent = dock extent + 2× the knob, centered on
380
- the seam). `--dock-rail-retract-stub` is the residual protrusion FRACTION the
381
- chips leave past the dock edge on collapse (the macOS fan-out "retract INTO the
382
- rail leaving a slight protrusion"; 0 = fully retracted, 1 = no retract). The
383
- `--dock-section-zone-gap` is the inter-control rhythm inside a <DockSection> zone
384
- (defaults to the dock's own `--dock-gap`, so the section grouping adds no box). */
385
- --dock-rail-retract-stub: 0.35;
349
+ the seam). The `--dock-section-zone-gap` is the inter-control rhythm inside a
350
+ <DockSection> zone (defaults to the dock's own `--dock-gap`, so the section
351
+ grouping adds no box). */
386
352
  --dock-section-zone-gap: var(--dock-gap, 0.25rem);
387
353
 
388
354
  /* Dock active-state ladder (O.W6 Lane B)
@@ -451,6 +417,21 @@
451
417
  WCAG 2.5.5 floor on touch devices. */
452
418
  --dock-touch-target: 2.75rem; /* 44px */
453
419
 
420
+ /* BC.W-AX-DOCK-COCKPIT — the dock LABEL-tracks-CONTROL ratio (the
421
+ dock-oversize chronic close, speedtest A-9). The `dock-label`
422
+ (typography/semantic.css) sizes its font as a PROPORTION of the
423
+ control height — `calc(var(--dock-control-size) * var(--dock-label-ratio))`
424
+ — so a tighter control (the `[data-preset="cockpit"]` 2.75rem floor with
425
+ compact chrome) carries a proportionally tighter label, never the fixed
426
+ `--type-subheading` rung that read OVERSIZE on a tight pill. The default
427
+ reproduces `--type-subheading` (1.272rem) at the comfortable `2.5rem`
428
+ control (1.272 / 2.5 = 0.5088) so the bare default is byte-near-identical
429
+ — opt into the cockpit preset (or override this knob from `:root`/the
430
+ `[data-preset]` scope) to retune the whole dock label family in ONE write.
431
+ The explicit `--dock-label-size` knob STILL wins when set (the dock.css
432
+ audacious-mobile carve precedent, KEPT — the ratio is the FALLBACK). */
433
+ --dock-label-ratio: 0.5088;
434
+
454
435
  /* AQ.W3 §7 — canonical WCAG 2.5.5 (44px) touch-target floor for the
455
436
  NON-dock coarse-pointer surfaces (`Button size="icon"`,
456
437
  ExpandableContainer triggers, SegmentedTabs responsive mobile trigger). One
@@ -460,103 +441,10 @@
460
441
  dock floor and the general floor can be retuned independently. */
461
442
  --touch-target: 2.75rem; /* 44px */
462
443
 
463
- /* MetricBadge — stacked variant geometry. The 2-row stacked layout
464
- (label / value+unit) wants a taller floor than the inline pill so the
465
- label has breathing room above the baseline pair. T.W2.T2 +
466
- audit B-spec §3.2 vertical-rhythm table land 42px (2.625rem) as the
467
- min-height with 6px (0.375rem) block padding. The inline ladder
468
- keeps its tight defaults via `--metric-badge-min-height` /
469
- `--metric-badge-padding-block` (declared inline at the
470
- `.metric-badge` selector). */
471
- --metric-badge-min-height-stacked: 2.625rem;
472
- --metric-badge-padding-block-stacked: 0.375rem;
473
-
474
- /* Configurator — N.W2 Lane A density axis (4 rungs).
475
- The `comfortable` rung restates the pre-N.W2 baked recipe exactly
476
- (`gap-1.5 py-2` = 0.375rem / 0.5rem) so unparameterised consumers
477
- see no visual change. `mobile` halves the vertical breathing room
478
- for narrow-viewport studios; `spacious` doubles it for settings-
479
- page hosts. See `<ConfiguratorRow>` scoped CSS for the attribute-
480
- selector binding. */
481
- --configurator-row-gap-mobile: 0.25rem; /* 4px — tight */
482
- --configurator-row-gap-compact: 0.3125rem; /* 5px — slightly tighter */
483
- --configurator-row-gap-comfortable: 0.375rem; /* 6px — pre-N.W2 default */
484
- --configurator-row-gap-spacious: 0.75rem; /* 12px — generous */
485
-
486
- --configurator-row-py-mobile: 0.25rem; /* 4px — tight */
487
- --configurator-row-py-compact: 0.375rem; /* 6px — slightly tighter */
488
- --configurator-row-py-comfortable: 0.5rem; /* 8px — pre-N.W2 default */
489
- --configurator-row-py-spacious: 0.875rem; /* 14px — generous */
490
-
491
- /* Configurator HIERARCHY VOCABULARY (AZ.W-HIERARCHY — D6-3). The three
492
- NAMED registers the studios (blob, aurora) inherit instead of a flat
493
- undifferentiated stack. DISTINCT from the density ladder above (which is
494
- the per-row CADENCE, not the section/label/preset register).
495
-
496
- 1. Section register — the <ConfiguratorLayer> label reads as a SECTION,
497
- not a row: the √φ subheading rung at weight 600, lifting off the prior
498
- flat `text-small font-semibold`. */
499
- --configurator-section-size: var(--type-subheading); /* 20.4px — √φ section rung */
500
- --configurator-section-weight: 600; /* the heading weight */
501
-
502
- /* AZ.W-BLOB-REDRESS — the SINGLE-COLUMN stage-row FLOOR. Below `lg` the
503
- Configurator stacks stage-over-aside; a percentage stage height against
504
- an INDEFINITE auto-row resolves to 0 (the GooBlob hero painted 0×0 on a
505
- phone). The single-column band's `grid-template-rows` floors the stage
506
- row at this DEFINITE `minmax(…)` minimum so the percentage resolves;
507
- the aside row takes the remainder and scrolls internally. */
508
- --configurator-stage-min: 18rem; /* 288px — the mobile live-specimen stage floor */
509
-
510
- /* 2. Preset-row PRIMARY-AFFORDANCE lift. The preset picker is the primary
511
- interaction (C6-10); D6-3's defect is the preset row being spatially
512
- CRAMPED. This token's binding SEMANTIC is the preset row's SPATIAL
513
- rhythm — its block-padding / gap, NOT a font-weight — so the preset
514
- row breathes ABOVE a body ConfiguratorRow. (The `-weight` name follows
515
- the vocabulary's "register weight" framing; it lands on the padding/gap
516
- slot of `.configurator-presets`, the heavier spatial cadence.) */
517
- --configurator-preset-row-weight: 0.625rem; /* 10px — > a body row's 8px py-comfortable */
518
- --configurator-preset-row-gap: 0.5rem; /* 8px — generous chip gap */
519
-
520
- /* 3. The DIVIDER register — dark-adaptive (BA.W-CONFIG-CHASSIS.1 / CFG-4).
521
- The section + inter-row dividers used to be inline `border-border/40` and
522
- `border-border/30` Tailwind alphas; over the W-DARK-MATERIAL dark
523
- `glass-floating` plate (a luminous transmissive material, --card L16) those
524
- near-equal-luminance hairlines effectively VANISHED — "the sections run
525
- together". This ONE token is consumed by every divider rule (the
526
- <ConfiguratorLayer> section border, the dividers-prop inter-row border,
527
- Configurator.vue's aside/preset/footer borders, configurator.css) so the
528
- divider weight is retuned from a single override.
529
-
530
- The dark-LIFTING arm is the load-bearing half: the divider must read on
531
- BOTH plates. On LIGHT it is the resting `--border` warm-neutral at the
532
- prior ~40% weight; on DARK it LIFTS off `--border` (L34 over the L16 plate
533
- — too close) toward the `--foreground` warm-ink (L90) at a higher α, so a
534
- visible luminance step survives the dark glass. `light-dark()` carries the
535
- arm in ONE declaration (the same :root cascade context as the surface-tint
536
- family; an engine without `light-dark()` falls back to the dark-arm.css
537
- `.dark` floor minted in lockstep). The SECTION divider runs a touch
538
- heavier than the inter-row hairline (a section reads as a section without
539
- a second heading rung). */
540
- --configurator-divider: light-dark(
541
- color-mix(in srgb, var(--border) 55%, transparent),
542
- color-mix(in srgb, var(--foreground) 22%, transparent)
543
- );
544
- --configurator-divider-section: light-dark(
545
- color-mix(in srgb, var(--border) 70%, transparent),
546
- color-mix(in srgb, var(--foreground) 30%, transparent)
547
- );
548
- /* The optional faint section-header tonal step — a whisper-light warm wash
549
- behind a <ConfiguratorLayer> section so it reads as a grouped section
550
- WITHOUT a new heading rung (within the W-HIERARCHY register). Default off
551
- (transparent) on light where the hairline carries it; a faint
552
- foreground-over-transparent lift on dark where the divider alone is
553
- subtle. */
554
- --configurator-section-tint: light-dark(
555
- transparent,
556
- color-mix(in srgb, var(--foreground) 3%, transparent)
557
- );
558
-
559
- /* Component font override (consumers override locally) */
560
- --select-font: inherit;
561
-
444
+ /* The MetricBadge stacked geometry + the Configurator family (density ladder,
445
+ AZ.W-HIERARCHY section/label/preset vocabulary, stage-floor, dark-adaptive
446
+ divider register, section tonal step) + the --select-font override are carved
447
+ into tokens/sizing-config.css (a cohesive §10 tail, the no-god-module re-drain)
448
+ — @import-ed by tokens.css IMMEDIATELY AFTER sizing.css (adjacent same-selector
449
+ :root blocks, byte-isomorphic). */
562
450
  }
@@ -21,14 +21,25 @@
21
21
  * (registrations + the specular magnitude cohort that reads them).
22
22
  */
23
23
 
24
- /* CSS @import rules must precede every other rule. The nine partials @import in
25
- cascade order: */
24
+ /* CSS @import rules must precede every other rule. The ten partials @import in
25
+ cascade order (offsets-sizing.css was carved into offsets.css + sizing.css at
26
+ BB.W-CARVE3 — adjacent same-selector :root blocks at the same cascade slot): */
26
27
  @import "./tokens/scheme-motion.css";
27
28
  @import "./tokens/color-radius.css";
28
29
  @import "./tokens/shadow.css";
29
30
  @import "./tokens/glass.css";
30
- @import "./tokens/offsets-sizing.css";
31
+ @import "./tokens/glass-fx.css";
32
+ @import "./tokens/glass-deep.css";
33
+ @import "./tokens/on-glass-fg.css";
34
+ @import "./tokens/offsets.css";
35
+ @import "./tokens/sizing.css";
36
+ /* BC.W-CARVE6 — sizing.css's §10 tail (MetricBadge stacked geometry + the
37
+ Configurator density/HIERARCHY/divider family + the --select-font override)
38
+ carved into sizing-config.css to hold the 500-line bound, @import-ed IMMEDIATELY
39
+ AFTER sizing.css (adjacent same-selector :root blocks — byte-isomorphic). */
40
+ @import "./tokens/sizing-config.css";
31
41
  @import "./tokens/scale-paper.css";
42
+ @import "./tokens/scroll-tokens.css";
32
43
  @import "./tokens/light-dark.css";
33
44
  @import "./tokens/dark-arm.css";
34
45
  @import "./tokens/property-regs.css";