@mkbabb/glass-ui 3.1.1 → 3.3.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 (337) hide show
  1. package/dist/{CardFooter-CSGcJkqa.js → CardFooter-C390imy7.js} +3 -3
  2. package/dist/{CollapsibleContent-CVMOcYlV.js → CollapsibleContent-cauTbZEM.js} +1 -1
  3. package/dist/{CommandShortcut-DWT19a2Y.js → CommandShortcut-BiVyqipe.js} +7 -6
  4. package/dist/{ContextMenuSubContent-gAFxJ-qi.js → ContextMenuSubContent-DrWkXKQP.js} +4 -4
  5. package/dist/DataTable-FfkaAg2z.js +465 -0
  6. package/dist/DialogContent-IQ8_BRrC.js +100 -0
  7. package/dist/{DialogFooter-ClrNEOVU.js → DialogFooter-Er0wA3K6.js} +2 -2
  8. package/dist/{DiscoGlyph-C3JfMnRV.js → DiscoGlyph-BaZ8OawK.js} +1 -1
  9. package/dist/{GlyphFace-BRS8vUb7.js → GlyphFace-B_7vOmYn.js} +1 -1
  10. package/dist/HoverPopover-DTSYkJtw.js +96 -0
  11. package/dist/{IconTooltip-BkaA7tZ2.js → IconTooltip-BTyYn4mr.js} +1 -1
  12. package/dist/Input-CU9CNKmo.js +52 -0
  13. package/dist/{MetricBadge-DmAihkXd.js → MetricBadge-BlrdbOGN.js} +2 -2
  14. package/dist/{Notification-OqIpADml.js → Notification-DP_ApJLo.js} +3 -3
  15. package/dist/{NumberFieldContent-DTH9gb_N.js → NumberFieldContent-iOTQ5rGO.js} +9 -5
  16. package/dist/{PopoverContent-EiklFrna.js → PopoverContent-B8WtJECb.js} +1 -1
  17. package/dist/Progress-DjM86vfb.js +254 -0
  18. package/dist/{ScrollingText-BFd0i2zJ.js → ScrollingText-P9o_DuMn.js} +2 -2
  19. package/dist/{SelectScrollDownButton-Dth8-wXQ.js → SelectScrollDownButton-BGn3rjs9.js} +12 -11
  20. package/dist/TabsIndicator-DA0x9gPr.js +97 -0
  21. package/dist/{Toaster-Bjlunvq4.js → Toaster-DdhMKfus.js} +1 -1
  22. package/dist/{ToggleGroupItem-OesUouE7.js → ToggleGroupItem-gyXj998A.js} +37 -40
  23. package/dist/UnderlineTabs-Cq_AD03t.js +39 -0
  24. package/dist/animated-digit.js +3 -3
  25. package/dist/api/index.d.ts +2 -0
  26. package/dist/api.js +1 -1
  27. package/dist/aurora.js +471 -320
  28. package/dist/badge.js +1 -1
  29. package/dist/{button-C0aHmBbt.js → button-Ckn3eDfB.js} +27 -22
  30. package/dist/button.js +1 -1
  31. package/dist/card.js +1 -1
  32. package/dist/carousel.js +6 -6
  33. package/dist/{check-dwgetki8.js → check-CdkxGxXJ.js} +1 -1
  34. package/dist/{chevron-down-DILQA1t6.js → chevron-down-pBY8sYfV.js} +1 -1
  35. package/dist/{chevron-right-fS7fal2t.js → chevron-right-BjeKC22V.js} +1 -1
  36. package/dist/{chevron-up-BtYjYQOS.js → chevron-up-DBeNHUm1.js} +1 -1
  37. package/dist/collapsible.js +1 -1
  38. package/dist/color-rkK4RMx2.js +33 -0
  39. package/dist/color.d.ts +1 -0
  40. package/dist/color.js +2 -0
  41. package/dist/command.js +1 -1
  42. package/dist/compile-DVgAxagk.js +106 -0
  43. package/dist/components/custom/animated-digit/AnimatedDigit.vue.d.ts +7 -7
  44. package/dist/components/custom/aurora/Aurora.vue.d.ts +3 -3
  45. package/dist/components/custom/aurora/composables/color.d.ts +42 -16
  46. package/dist/components/custom/aurora/composables/cursorModel.d.ts +45 -0
  47. package/dist/components/custom/aurora/composables/frameLoop.d.ts +30 -0
  48. package/dist/components/custom/aurora/composables/glSetup.d.ts +29 -0
  49. package/dist/components/custom/aurora/composables/runtime.d.ts +45 -35
  50. package/dist/components/custom/aurora/composables/uniformBridge.d.ts +67 -0
  51. package/dist/components/custom/aurora/composables/useAurora.d.ts +14 -1
  52. package/dist/components/custom/aurora/composables/useCursorInteraction.d.ts +1 -1
  53. package/dist/components/custom/aurora/constants/budget.d.ts +50 -0
  54. package/dist/components/custom/aurora/{presets.d.ts → constants/presets.d.ts} +3 -6
  55. package/dist/components/custom/aurora/constants/shaders/aurora.frag.d.ts +1 -0
  56. package/dist/components/custom/aurora/constants/shaders/brush.glsl.d.ts +1 -0
  57. package/dist/components/custom/aurora/constants/shaders/composition.glsl.d.ts +1 -0
  58. package/dist/components/custom/aurora/constants/shaders/flow.glsl.d.ts +1 -0
  59. package/dist/components/custom/aurora/constants/shaders/mediums.glsl.d.ts +2 -0
  60. package/dist/components/custom/aurora/constants/shaders/tonemap.glsl.d.ts +1 -0
  61. package/dist/components/custom/aurora/index.d.ts +4 -3
  62. package/dist/components/custom/configurator/Configurator.vue.d.ts +26 -0
  63. package/dist/components/custom/configurator/ConfiguratorLayer.vue.d.ts +14 -7
  64. package/dist/components/custom/configurator/density.d.ts +3 -8
  65. package/dist/components/custom/configurator/index.d.ts +1 -1
  66. package/dist/components/custom/dock/DockBackgroundToggle.vue.d.ts +46 -0
  67. package/dist/components/custom/dock/DockIconButton.vue.d.ts +15 -4
  68. package/dist/components/custom/dock/DockLayerGroup.vue.d.ts +2 -2
  69. package/dist/components/custom/dock/GlassDock.vue.d.ts +34 -13
  70. package/dist/components/custom/dock/composables/dockContext.d.ts +4 -4
  71. package/dist/components/custom/dock/composables/dockLayerContext.d.ts +13 -6
  72. package/dist/components/custom/dock/composables/useLayerTransition.d.ts +32 -8
  73. package/dist/components/custom/dock/index.d.ts +1 -0
  74. package/dist/components/custom/expandable-container/ExpandableContainer.vue.d.ts +10 -0
  75. package/dist/components/custom/glass-panel/GlassPanel.vue.d.ts +1 -1
  76. package/dist/components/custom/glyph-face/keys.d.ts +3 -29
  77. package/dist/components/custom/goo-blob/GooBlob.vue.d.ts +48 -0
  78. package/dist/components/custom/goo-blob/composables/easing.d.ts +6 -0
  79. package/dist/components/custom/goo-blob/composables/useBlobMood.d.ts +14 -0
  80. package/dist/components/custom/goo-blob/composables/useBlobPointer.d.ts +18 -0
  81. package/dist/components/custom/goo-blob/composables/useBlobSatellites.d.ts +13 -0
  82. package/dist/components/custom/goo-blob/composables/useMetaballRenderer.d.ts +42 -0
  83. package/dist/components/custom/goo-blob/index.d.ts +7 -0
  84. package/dist/components/custom/goo-blob/shaders/metaball.frag.d.ts +1 -0
  85. package/dist/components/custom/goo-blob/shaders/metaball.vert.d.ts +1 -0
  86. package/dist/components/custom/goo-blob/shaders/oklch-perturb.glsl.d.ts +1 -0
  87. package/dist/components/custom/goo-blob/shaders/sdf-body.glsl.d.ts +1 -0
  88. package/dist/components/custom/goo-blob/shaders/watercolor-edges.glsl.d.ts +2 -0
  89. package/dist/components/custom/goo-blob/types.d.ts +77 -0
  90. package/dist/components/custom/hover-popover/HoverPopover.vue.d.ts +48 -9
  91. package/dist/components/custom/labeled-field/LabeledField.vue.d.ts +2 -0
  92. package/dist/components/custom/labeled-field/LabeledSelect.vue.d.ts +2 -2
  93. package/dist/components/custom/metric-stack/MetricRow.vue.d.ts +2 -2
  94. package/dist/components/custom/responsive-tabs/ResponsiveTabs.vue.d.ts +13 -7
  95. package/dist/components/custom/search/FuzzySearch.vue.d.ts +1 -1
  96. package/dist/components/custom/search/SearchBar.vue.d.ts +1 -1
  97. package/dist/components/custom/sortable-list/SortableHandle.vue.d.ts +7 -1
  98. package/dist/components/custom/sortable-list/context.d.ts +2 -3
  99. package/dist/components/custom/tabs/BouncyTabs.vue.d.ts +6 -3
  100. package/dist/components/custom/tabs/BouncyToggle.vue.d.ts +7 -3
  101. package/dist/components/custom/tabs/UnderlineTabs.vue.d.ts +6 -3
  102. package/dist/components/custom/tabs/composables/useBouncySlider.d.ts +39 -0
  103. package/dist/components/custom/timeline/ContinuousMarkers.vue.d.ts +49 -0
  104. package/dist/components/custom/timeline/ContinuousRail.vue.d.ts +26 -0
  105. package/dist/components/custom/timeline/ContinuousTimeline.vue.d.ts +4 -4
  106. package/dist/components/custom/typewriter/TypewriterText.vue.d.ts +2 -2
  107. package/dist/components/custom/watercolor-dot/WatercolorDot.vue.d.ts +45 -0
  108. package/dist/components/custom/watercolor-dot/index.d.ts +3 -0
  109. package/dist/components/custom/watercolor-dot/prng.d.ts +5 -0
  110. package/dist/components/custom/watercolor-dot/useWatercolorBlob.d.ts +24 -0
  111. package/dist/components/ui/_shared/menuItemVariants.d.ts +1 -1
  112. package/dist/components/ui/avatar/Avatar.vue.d.ts +1 -1
  113. package/dist/components/ui/avatar/AvatarImage.vue.d.ts +5 -1
  114. package/dist/components/ui/avatar/index.d.ts +1 -1
  115. package/dist/components/ui/badge/index.d.ts +2 -2
  116. package/dist/components/ui/button/Button.vue.d.ts +3 -1
  117. package/dist/components/ui/button/index.d.ts +2 -2
  118. package/dist/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
  119. package/dist/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
  120. package/dist/components/ui/combobox/Combobox.vue.d.ts +2 -2
  121. package/dist/components/ui/combobox/ComboboxInput.vue.d.ts +2 -1
  122. package/dist/components/ui/command/Command.vue.d.ts +3 -3
  123. package/dist/components/ui/command/CommandInput.vue.d.ts +2 -1
  124. package/dist/components/ui/data-table/DataTable.vue.d.ts +5 -4
  125. package/dist/components/ui/dialog/DialogContent.vue.d.ts +8 -0
  126. package/dist/components/ui/drawer/Drawer.vue.d.ts +4 -4
  127. package/dist/components/ui/input/Input.vue.d.ts +19 -1
  128. package/dist/components/ui/multi-select/MultiSelect.vue.d.ts +8 -4
  129. package/dist/components/ui/progress/Progress.vue.d.ts +26 -88
  130. package/dist/components/ui/progress/ProgressDefault.vue.d.ts +14 -0
  131. package/dist/components/ui/progress/ProgressGradient.vue.d.ts +25 -0
  132. package/dist/components/ui/progress/ProgressSectioned.vue.d.ts +36 -0
  133. package/dist/components/ui/progress/index.d.ts +5 -2
  134. package/dist/components/ui/progress/useProgressGeometry.d.ts +60 -0
  135. package/dist/components/ui/select/Select.vue.d.ts +2 -2
  136. package/dist/components/ui/select/SelectContent.vue.d.ts +1 -1
  137. package/dist/components/ui/select/SelectTrigger.vue.d.ts +3 -0
  138. package/dist/components/ui/sheet/index.d.ts +1 -1
  139. package/dist/components/ui/slider/index.d.ts +12 -11
  140. package/dist/components/ui/tags-input/TagsInput.vue.d.ts +2 -2
  141. package/dist/components/ui/textarea/Textarea.vue.d.ts +5 -1
  142. package/dist/components/ui/toast/Toast.vue.d.ts +4 -4
  143. package/dist/components/ui/toggle/Toggle.vue.d.ts +1 -1
  144. package/dist/components/ui/toggle/index.d.ts +1 -1
  145. package/dist/components/ui/toggle-group/toggleGroupContext.d.ts +2 -3
  146. package/dist/composables/color/index.d.ts +49 -0
  147. package/dist/composables/context/createContext.d.ts +56 -0
  148. package/dist/composables/context/index.d.ts +1 -0
  149. package/dist/composables/dark/darkModeSyncScript.d.ts +23 -0
  150. package/dist/composables/dark/index.d.ts +3 -0
  151. package/dist/composables/dark/useGlobalDark.d.ts +19 -2
  152. package/dist/composables/dom/index.d.ts +1 -3
  153. package/dist/composables/dom/useClipboard.d.ts +35 -12
  154. package/dist/composables/dom/useDocumentVisibility.d.ts +20 -0
  155. package/dist/composables/dom/useTextHighlight.d.ts +40 -0
  156. package/dist/composables/glass/webgl/compile.d.ts +15 -0
  157. package/dist/composables/glass/webgl/shaders/procedural-color.glsl.d.ts +3 -0
  158. package/dist/composables/glass/webgl/useWebGLCanvas.d.ts +55 -0
  159. package/dist/composables/motion/core/index.d.ts +2 -1
  160. package/dist/composables/motion/index.d.ts +1 -1
  161. package/dist/composables/motion/useCountup.d.ts +29 -0
  162. package/dist/composables/motion/usePrioritizedTask.d.ts +41 -0
  163. package/dist/composables/motion/vReveal.d.ts +2 -0
  164. package/dist/composables/sidebar/useSidebarState.d.ts +2 -2
  165. package/dist/composables/sortable/dragController.d.ts +44 -0
  166. package/dist/composables/sortable/dropResolver.d.ts +34 -0
  167. package/dist/composables/sortable/ghostRenderer.d.ts +44 -0
  168. package/dist/composables/sortable/index.d.ts +1 -1
  169. package/dist/composables/sortable/touchGate.d.ts +26 -0
  170. package/dist/composables/sortable/transitionTiming.d.ts +50 -0
  171. package/dist/composables/sortable/types.d.ts +133 -0
  172. package/dist/composables/sortable/useSortable.d.ts +25 -140
  173. package/dist/configurator.js +1 -1
  174. package/dist/confirm-dialog.js +3 -3
  175. package/dist/context-menu.js +2 -2
  176. package/dist/controls.js +5 -5
  177. package/dist/createContext-DBMGRlx4.js +25 -0
  178. package/dist/dark.d.ts +2 -1
  179. package/dist/dark.js +9 -2
  180. package/dist/data-table.js +1 -1
  181. package/dist/dialog.js +2 -2
  182. package/dist/disco-glyph.js +1 -1
  183. package/dist/dock.js +410 -254
  184. package/dist/dockContext-spUj_-E5.js +9 -0
  185. package/dist/dom.js +6 -5
  186. package/dist/{dropdown-menu-BvRUamNs.js → dropdown-menu-EFjl5iKo.js} +4 -4
  187. package/dist/dropdown-menu.js +1 -1
  188. package/dist/expandable-container.js +28 -22
  189. package/dist/fonts/README.md +21 -0
  190. package/dist/fonts/fraunces/fraunces-latin.woff2 +0 -0
  191. package/dist/forms.js +70 -61
  192. package/dist/glass-carousel.js +59 -52
  193. package/dist/glass-panel.js +2 -2
  194. package/dist/glass-ui.css +1 -1
  195. package/dist/glass-ui.js +159 -254
  196. package/dist/glyph-face.js +2 -2
  197. package/dist/goo-blob.d.ts +1 -0
  198. package/dist/goo-blob.js +538 -0
  199. package/dist/header-ribbon.js +3 -3
  200. package/dist/hover-card.js +1 -1
  201. package/dist/hover-popover.js +1 -1
  202. package/dist/icon-tooltip.js +1 -1
  203. package/dist/index.d.ts +1 -0
  204. package/dist/instrument-chassis.js +1 -1
  205. package/dist/instrument-rail.js +1 -1
  206. package/dist/keyboard.js +1 -1
  207. package/dist/keys-BFoma9vm.js +9 -0
  208. package/dist/label.js +1 -1
  209. package/dist/labeled-field.js +57 -39
  210. package/dist/metric-badge.js +1 -1
  211. package/dist/metric-stack.js +1 -1
  212. package/dist/{minimize-2-LsCJ_eNt.js → minimize-2-BP27-qBY.js} +1 -1
  213. package/dist/motion-core.js +154 -135
  214. package/dist/motion.js +63 -15
  215. package/dist/notification.js +1 -1
  216. package/dist/number-field.js +1 -1
  217. package/dist/paper-backdrop.js +1 -1
  218. package/dist/popover.js +1 -1
  219. package/dist/{presets-a-D93K1S.js → presets-1OhFpaIC.js} +5 -5
  220. package/dist/prng-Bz_1Tydc.js +15 -0
  221. package/dist/progress.js +2 -2
  222. package/dist/pulse.js +1 -1
  223. package/dist/reactive.js +2 -2
  224. package/dist/responsive-tabs.js +38 -32
  225. package/dist/scrolling-text.js +1 -1
  226. package/dist/{search-DBAiUABx.js → search-DBG8qaRs.js} +1 -1
  227. package/dist/search.js +153 -149
  228. package/dist/select.js +3 -3
  229. package/dist/separator.js +1 -1
  230. package/dist/{sheet-CukNDezz.js → sheet-CQYYrkr9.js} +3 -3
  231. package/dist/sheet.js +1 -1
  232. package/dist/{slider-DJvHkTRe.js → slider-BOh8ycfZ.js} +8 -12
  233. package/dist/slider.js +1 -1
  234. package/dist/sortable-list.js +37 -39
  235. package/dist/stacked-icons.js +2 -2
  236. package/dist/styles/animations.css +1 -1
  237. package/dist/styles/cards.css +1 -1
  238. package/dist/styles/components.css +45 -0
  239. package/dist/styles/dock-controls.css +486 -0
  240. package/dist/styles/dock.css +325 -431
  241. package/dist/styles/fonts.css +25 -0
  242. package/dist/styles/glass-specular-track.css +154 -0
  243. package/dist/styles/glass.css +74 -2
  244. package/dist/styles/index.css +25 -2
  245. package/dist/styles/instrument-chassis.css +11 -4
  246. package/dist/styles/theme.css +73 -21
  247. package/dist/styles/tokens.css +282 -140
  248. package/dist/styles/typography.css +14 -8
  249. package/dist/styles/utilities.css +92 -8
  250. package/dist/styles/view-transition.css +10 -4
  251. package/dist/switch.js +1 -1
  252. package/dist/tabs.js +148 -106
  253. package/dist/timeline.js +220 -159
  254. package/dist/toast.js +1 -1
  255. package/dist/toggle-group.js +1 -1
  256. package/dist/tokens.d.ts +1 -1
  257. package/dist/tooltip.js +1 -1
  258. package/dist/typewriter.js +1 -1
  259. package/dist/{useAnimatedNumber-DKQYVB7s.js → useAnimatedNumber-BF6r64lA.js} +1 -1
  260. package/dist/useClipboard-D8vFyRCa.js +97 -0
  261. package/dist/useConfiguratorState-DUtC1jxr.js +276 -0
  262. package/dist/useGlobalDark-CWiaCoEw.js +34 -0
  263. package/dist/useIntersectionPause-DAdVPVp4.js +53 -0
  264. package/dist/useSortable-DnyGXKKY.js +246 -0
  265. package/dist/useTextHighlight-Dmtofpk2.js +72 -0
  266. package/dist/{useTouchGate-D9Zvrzyc.js → useTouchGate-CS5Csc2h.js} +1 -1
  267. package/dist/{useViewTransition-DYIK6Gzb.js → useViewTransition-D4ssvnXZ.js} +5 -3
  268. package/dist/utils/index.d.ts +2 -1
  269. package/dist/utils/platformSupport.d.ts +8 -0
  270. package/dist/utils/prng.d.ts +4 -0
  271. package/dist/vReveal-u2wSG2El.js +35 -0
  272. package/dist/watercolor-dot.d.ts +1 -0
  273. package/dist/watercolor-dot.js +129 -0
  274. package/dist/{x-q7pJa83X.js → x-C4pz9nbD.js} +1 -1
  275. package/package.json +110 -16
  276. package/src/fonts/README.md +21 -0
  277. package/src/fonts/fraunces/fraunces-latin.woff2 +0 -0
  278. package/src/styles/animations.css +1 -1
  279. package/src/styles/cards.css +1 -1
  280. package/src/styles/dock-controls.css +486 -0
  281. package/src/styles/dock.css +325 -431
  282. package/src/styles/fonts.css +25 -0
  283. package/src/styles/glass-specular-track.css +154 -0
  284. package/src/styles/glass.css +74 -2
  285. package/src/styles/index.css +21 -2
  286. package/src/styles/instrument-chassis.css +11 -4
  287. package/src/styles/theme.css +73 -21
  288. package/src/styles/tokens.css +282 -140
  289. package/src/styles/typography.css +14 -8
  290. package/src/styles/utilities.css +92 -8
  291. package/src/styles/view-transition.css +10 -4
  292. package/dist/DataTable-R8-Zidms.js +0 -460
  293. package/dist/DialogContent-2fALDSvc.js +0 -93
  294. package/dist/HoverPopover-CWFCfLx3.js +0 -96
  295. package/dist/Input-DDpFn568.js +0 -30
  296. package/dist/Progress-FApA9fm_.js +0 -126
  297. package/dist/UnderlineTabs-DAWMLmJG.js +0 -37
  298. package/dist/components/custom/aurora/shaders/aurora.frag.d.ts +0 -1
  299. package/dist/composables/dom/useBreakpoint.d.ts +0 -38
  300. package/dist/composables/dom/useIdleReady.d.ts +0 -63
  301. package/dist/composables/dom/useViewportReady.d.ts +0 -87
  302. package/dist/composables/glass/webgl/frostShader.d.ts +0 -27
  303. package/dist/composables/motion/useAnimatedNumberMap.d.ts +0 -29
  304. package/dist/composables/motion/useStagger.d.ts +0 -50
  305. package/dist/dockContext-D5NZCWJs.js +0 -16
  306. package/dist/keys-CaTQS-vx.js +0 -11
  307. package/dist/useConfiguratorState-CtRBE0m_.js +0 -268
  308. package/dist/useGlobalDark-B0WvLJE3.js +0 -24
  309. package/dist/useIdleReady-Cmkhm03v.js +0 -162
  310. package/dist/useIntersectionPause-IY2CwPQb.js +0 -39
  311. package/dist/useSortable-Cq2Y1JLO.js +0 -175
  312. /package/dist/{ContextMenuContent-otjFIu8v.js → ContextMenuContent-De01_83g.js} +0 -0
  313. /package/dist/{HoverCardContent-DaGrgJBO.js → HoverCardContent-ICfIMZX1.js} +0 -0
  314. /package/dist/{InstrumentChassis-CnHTMxds.js → InstrumentChassis-DaHIZCqy.js} +0 -0
  315. /package/dist/{InstrumentRail-C6dEbi8E.js → InstrumentRail-B0qqLFN0.js} +0 -0
  316. /package/dist/{Label-DJty89bp.js → Label-CZk-3nTc.js} +0 -0
  317. /package/dist/{ModalOverlay-iWiAgbYH.js → ModalOverlay-B_CBtqcE.js} +0 -0
  318. /package/dist/{PaperBackdrop-CeZ-w0R0.js → PaperBackdrop-D_YZW47j.js} +0 -0
  319. /package/dist/{SelectGroup-DdR4tdDY.js → SelectGroup-CMdoCjRE.js} +0 -0
  320. /package/dist/{SelectSeparator-CXm_hlqA.js → SelectSeparator-CaJnPF3_.js} +0 -0
  321. /package/dist/{Separator-D8AUMhxY.js → Separator-C2XtAXRp.js} +0 -0
  322. /package/dist/{Switch-Cr1t_F_U.js → Switch-x8n6husW.js} +0 -0
  323. /package/dist/{TooltipProvider-DE78vbEP.js → TooltipProvider-D-JrSqDu.js} +0 -0
  324. /package/dist/{_plugin-vue_export-helper-Dq1MygBL.js → _plugin-vue_export-helper-C1je1s0u.js} +0 -0
  325. /package/dist/{badge-x46my_Fo.js → badge-Cl6JZ1B7.js} +0 -0
  326. /package/dist/components/custom/aurora/{renderMode.d.ts → constants/renderMode.d.ts} +0 -0
  327. /package/dist/components/custom/aurora/{shaders → constants/shaders}/aurora.vert.d.ts +0 -0
  328. /package/dist/{constants-DwBwnG8N.js → constants-DsCdlK9I.js} +0 -0
  329. /package/dist/{createLucideIcon-Bn9a1b70.js → createLucideIcon-DuDoe_ra.js} +0 -0
  330. /package/dist/{menuItemVariants-BsbGNq9C.js → menuItemVariants-C2QlXqT3.js} +0 -0
  331. /package/dist/{useGlassRenderer-Ds-nmrGz.js → useGlassRenderer-Dn3WpfG-.js} +0 -0
  332. /package/dist/{useInterval-DVgGUf_y.js → useInterval-CHVYFpXV.js} +0 -0
  333. /package/dist/{useKeyboardShortcuts-Dpw_RUcB.js → useKeyboardShortcuts-BQfnAHHW.js} +0 -0
  334. /package/dist/{useResizeObserver-Cg9npuM3.js → useResizeObserver-DX-STszm.js} +0 -0
  335. /package/dist/{useSpringMount-Cfk1XK1R.js → useSpringMount-CnizvZGm.js} +0 -0
  336. /package/dist/{useTimer-NAaj9zNq.js → useTimer-DGgoxTXL.js} +0 -0
  337. /package/dist/{useUserInvalidAria-DVu1eTXG.js → useUserInvalidAria-DmvZ_6Dx.js} +0 -0
@@ -0,0 +1,486 @@
1
+ /* Dock CONTROL-family styles — carved out of dock.css at AU.W8b.3.
2
+ *
3
+ * dock.css keeps the shell / density / grain / layer-crossfade contract + the
4
+ * shared cross-control four-state contract (the `:focus-visible` / `:disabled`
5
+ * comma-groups + the motion-token `:where()` group, which reference these
6
+ * control selectors but are shared, not per-control). This file owns the FIVE
7
+ * control families themselves:
8
+ * 1. `.dock-icon-button` (base / --compact / hover / active / focus / active-paint)
9
+ * 2. `.dark-mode-toggle-button` (sizes / hover / focus)
10
+ * 3. `.dock-tab-button` (base / states / tier-primary audacious / tier-secondary)
11
+ * 4. `.dock-select-trigger` / `.dock-dropdown-trigger` (base / states / __chevron / open-flip)
12
+ * 5. the `@media (pointer: coarse)` per-button touch-target floor on `.dock-icon-button`
13
+ *
14
+ * AU.W8b.2 — the per-family parent+state clusters use native `&`-nesting
15
+ * (Baseline Widely available 2023; Lightning CSS down-compiles so the shipped
16
+ * `dist` CSS is flat with IDENTICAL specificity). The cross-family comma-groups
17
+ * stay in dock.css UN-nested (nesting under one control would change coverage).
18
+ *
19
+ * Imported by index.css directly after dock.css in the same `@layer components`
20
+ * (cascade rung 6b) — no new subpath; it ships inside `/styles`. */
21
+
22
+ @layer components {
23
+ /* AV.W9.3 — momentum-gated dock-control press spring. The `:active` squish
24
+ toward `--scale-press-dock` settles on a NO-OVERSHOOT spring (Apple,
25
+ "Designing Fluid Interfaces": default 100% damping — no bounce — for a tap;
26
+ reserve bounce for surfaces driven by gesture MOMENTUM). The dock controls
27
+ are tap surfaces (no momentum), so the press re-binds `--dock-press-spring`
28
+ from the bouncy preset (`--spring-bouncy`, ~+20% overshoot, defined in
29
+ tokens.css §-2) to `--spring-smooth` — the critically-damped (ζ≈1, ~0.4%
30
+ peak) iOS tap curve. Token-routed (an existing spring preset, never a raw
31
+ cubic-bezier); the `--duration-fast` prefix is kept so the squish-back stays
32
+ quick. Every dock-control `scale var(--dock-press-spring)` press transition
33
+ (and the select chevron's `rotate`) inherits this one binding. A future
34
+ momentum-gated surface (none today) would override this back to a bouncy
35
+ preset on its own scope. The `:where()` group keeps zero specificity so a
36
+ consumer override of `--dock-press-spring` still wins. */
37
+ :where(
38
+ .dock-icon-button,
39
+ .dock-tab-button,
40
+ .dock-select-trigger,
41
+ .dock-dropdown-trigger
42
+ ) {
43
+ --dock-press-spring: var(--duration-fast) var(--spring-smooth);
44
+ }
45
+
46
+ .dock-icon-button {
47
+ display: inline-flex;
48
+ align-items: center;
49
+ justify-content: center;
50
+ flex-shrink: 0;
51
+ /* AQ.W3 §W3.2 identity base */
52
+ scale: 1;
53
+ width: var(--dock-control-size, var(--size-icon-btn));
54
+ height: var(--dock-control-size, var(--size-icon-btn));
55
+ padding: var(--dock-icon-padding, 0);
56
+ cursor: pointer;
57
+ border: none;
58
+ background: transparent;
59
+ border-radius: var(--dock-control-radius, var(--radius-pill));
60
+ /* Foreground base routes through `--dock-fg-on-aurora` (defaults to
61
+ `--foreground`, byte-identical to before) so a consumer floating the
62
+ dock over an aurora can lift contrast per-backdrop. The muted icon
63
+ weight mixes that base down with `--opacity-icon-muted`. */
64
+ color: color-mix(
65
+ in srgb,
66
+ var(--dock-fg-on-aurora, var(--foreground))
67
+ calc(var(--opacity-icon-muted) * 100%),
68
+ transparent
69
+ );
70
+ outline: none;
71
+ transition:
72
+ background-color var(--dock-motion-fast),
73
+ color var(--dock-motion-fast),
74
+ /* AT.W7-dock-b — `scale` carries the press micro-feedback spring
75
+ (transform-scoped only; the surface fades stay on the flat ease). */
76
+ scale var(--dock-press-spring),
77
+ opacity var(--dock-motion-fast),
78
+ /* AT.W7-dock-b — the glass specular highlight fades in on hover. */
79
+ box-shadow var(--dock-motion-fast);
80
+
81
+ /* AT.W7-dock-b — glass icon-hover. The icon-button hover now reads as a
82
+ glass surface, not a flat `--muted` plate: a translucent card-tinted fill
83
+ composes with the specular `--glass-highlight` token (the inset top-edge
84
+ glass highlight every glass tier carries — `--dock-icon-hover-shadow`
85
+ defaults to it). Coherent with the dock's glass tier and the
86
+ `[data-tier="secondary"]` recipe below. A consumer retunes the fill via
87
+ `--dock-icon-hover-bg` and the specular via `--dock-icon-hover-shadow`. */
88
+ &:hover:not(:disabled) {
89
+ background: var(
90
+ --dock-icon-hover-bg,
91
+ color-mix(in srgb, var(--card) 55%, transparent)
92
+ );
93
+ color: var(--btn-hover-color, var(--foreground));
94
+ scale: var(--scale-hover-dock);
95
+ }
96
+
97
+ /* The specular highlight is scoped to `:not(:focus-visible)` so it never
98
+ clobbers the focus ring box-shadow (the shared `:focus-visible` group in
99
+ dock.css) when a control is both hovered and keyboard-focused —
100
+ the ring wins, the specular yields. */
101
+ &:hover:not(:disabled):not(:focus-visible) {
102
+ box-shadow: var(--dock-icon-hover-shadow, var(--glass-highlight));
103
+ }
104
+
105
+ &:active:not(:disabled) {
106
+ scale: var(--scale-press-dock);
107
+ }
108
+
109
+ &:focus:not(:focus-visible) {
110
+ box-shadow: none;
111
+ outline: none;
112
+ }
113
+
114
+ /* O.W6 Lane B — token-ladder active paint. Defaults match the prior
115
+ hardcoded recipe (--muted bg + --foreground color, no transform / border
116
+ / shadow). Consumers override the active variant via the
117
+ `--dock-active-{bg,color,scale,border,shadow}` cohort scoped to a parent
118
+ (e.g. bbnf-buddy `ToolsLayer.vue` audacious active treatment) — no
119
+ `:deep()` escapes required. See tokens.css §10 (dock geometry block). */
120
+ &:is(.is-active, .active, [aria-expanded="true"], [aria-pressed="true"]) {
121
+ background: var(--dock-active-bg);
122
+ color: var(--dock-active-color);
123
+ scale: var(--dock-active-scale);
124
+ border: var(--dock-active-border);
125
+ box-shadow: var(--dock-active-shadow);
126
+ }
127
+ }
128
+
129
+ /* focus-visible ring + disabled paint hoisted to the shared `:where()`
130
+ group in dock.css. The box-shadow fade transition lives on the base
131
+ `.dock-icon-button` rule (AT.W7-dock-b added `box-shadow` there for the
132
+ glass specular hover), so no per-state transition override is needed. */
133
+
134
+ .dock-icon-button--compact {
135
+ width: var(--dock-compact-control-size, auto);
136
+ height: var(--dock-compact-control-size, auto);
137
+ min-width: var(--dock-compact-control-min-width, 0);
138
+ padding: var(--dock-compact-control-padding, 0.25rem);
139
+ }
140
+
141
+ .dark-mode-toggle-button {
142
+ width: var(--dark-mode-toggle-size, 2.25rem);
143
+ height: var(--dark-mode-toggle-size, 2.25rem);
144
+ min-width: var(--dark-mode-toggle-size, 2.25rem);
145
+ min-height: var(--dark-mode-toggle-size, 2.25rem);
146
+ max-width: var(--dark-mode-toggle-size, 2.25rem);
147
+ max-height: var(--dark-mode-toggle-size, 2.25rem);
148
+ aspect-ratio: 1;
149
+ padding: var(--dark-mode-toggle-padding, 0.375rem);
150
+ transition:
151
+ opacity var(--dock-motion-standard),
152
+ background-color var(--dock-motion-standard),
153
+ box-shadow var(--dock-motion-fast);
154
+
155
+ & > svg {
156
+ width: 100%;
157
+ height: 100%;
158
+ max-width: 100%;
159
+ max-height: 100%;
160
+ }
161
+
162
+ &:hover,
163
+ &:focus {
164
+ background: var(--surface-tint-10);
165
+ opacity: 1;
166
+ outline: none;
167
+ }
168
+
169
+ &:focus-visible {
170
+ box-shadow: var(--focus-ring-shadow);
171
+ }
172
+
173
+ &[data-size="sm"] {
174
+ --dark-mode-toggle-size: 1.75rem;
175
+ --dark-mode-toggle-padding: 0.25rem;
176
+ }
177
+
178
+ &[data-size="md"] {
179
+ --dark-mode-toggle-size: 2.25rem;
180
+ --dark-mode-toggle-padding: 0.375rem;
181
+ }
182
+
183
+ &[data-size="lg"] {
184
+ --dark-mode-toggle-size: 2.75rem;
185
+ --dark-mode-toggle-padding: 0.5rem;
186
+ }
187
+
188
+ &[data-size="control"] {
189
+ --dark-mode-toggle-size: var(--control-size, 2.25rem);
190
+ --dark-mode-toggle-padding: var(--control-icon-padding, 0.375rem);
191
+ }
192
+ }
193
+
194
+ .dark-mode-toggle-button[data-size="dock"],
195
+ .glass-dock
196
+ .dark-mode-toggle-button:not([data-size="sm"]):not([data-size="lg"]):not(
197
+ [data-size="control"]
198
+ ) {
199
+ --dark-mode-toggle-size: var(--dock-control-size, var(--size-icon-btn));
200
+ --dark-mode-toggle-padding: var(--dock-icon-padding, 0);
201
+ }
202
+
203
+ .dock-tab-button {
204
+ display: inline-flex;
205
+ align-items: center;
206
+ flex-shrink: 0;
207
+ /* P.W4 Lane B inline-absorb: the `--dock-tab-h` density-keyed height
208
+ knob (parallel to DockIconButton's --dock-control-size) merged
209
+ here from the prior DockTabButton.vue scoped style block. The
210
+ density rungs that set `--dock-tab-h` per tier live in dock.css
211
+ (the `.glass-dock[data-density="…"]` blocks) — Q.W3
212
+ Lane A consolidated them out of utilities.css, closing the
213
+ cascade-order split-brain. When a parent <GlassDock density="…">
214
+ sets `--dock-tab-h`, the tab-button reserves that row even when
215
+ the glyph + padding sum would ride lower. Falls through to
216
+ `--dock-tab-min-height` (kept for audacious-tier callers) and
217
+ finally to `auto`. R3-spec / audit-E P0-3. */
218
+ min-height: var(--dock-tab-h, var(--dock-tab-min-height, auto));
219
+ padding-inline: var(--dock-tab-padding-inline, 0.75rem);
220
+ padding-block: var(--dock-tab-padding-block, 0.375rem);
221
+ border: none;
222
+ background: transparent;
223
+ border-radius: var(--dock-control-radius, var(--radius-pill));
224
+ /* Default font-size carries through to text-only tab content; consumers
225
+ wrapping content in an explicit type utility (e.g. `text-hero`,
226
+ `text-display`) on an inner <span> win because Tailwind v4 ships
227
+ @utility blocks in @layer utilities, which ranks above @layer
228
+ components — so this declaration is a fallback, not a ceiling. */
229
+ font-size: var(--type-small);
230
+ line-height: 1;
231
+ color: var(--muted-foreground);
232
+ text-decoration: none;
233
+ cursor: pointer;
234
+ white-space: nowrap;
235
+ outline: none;
236
+ /* AQ.W3 §W3.2 identity base */
237
+ scale: 1;
238
+ transition:
239
+ background-color var(--dock-motion-fast),
240
+ color var(--dock-motion-fast),
241
+ /* AT.W7-dock-b — press micro-feedback spring (transform-scoped). */ scale
242
+ var(--dock-press-spring);
243
+
244
+ &:hover:not(:disabled) {
245
+ background: var(--surface-tint-8);
246
+ color: var(--foreground);
247
+ }
248
+
249
+ &:active:not(:disabled) {
250
+ scale: var(--scale-press-dock);
251
+ }
252
+
253
+ &:focus:not(:focus-visible) {
254
+ box-shadow: none;
255
+ }
256
+
257
+ /* focus-visible ring + disabled paint hoisted to the shared `:where()`
258
+ group in dock.css. */
259
+
260
+ &:is(.is-active, .active, [aria-current="page"], [aria-pressed="true"]) {
261
+ background: var(--surface-tint-10);
262
+ color: var(--foreground);
263
+ }
264
+ }
265
+
266
+ /* Tier — primary ────────────────────────────────────────────
267
+ *
268
+ * Per W2.7 §9, §12, §13, §17. The primary tier composes three at-rest
269
+ * marks (top-highlight, bottom under-shadow, baseline glass) with three
270
+ * disco accents on hover (specular swap, sparkle sweep, disco-grain).
271
+ *
272
+ * Reservation: disco fires on hover only. At rest the button reads as
273
+ * a Vignelli-restrained composed glass surface. The `--phase-color`
274
+ * cascade (provided by `<InstrumentChassis>` via `data-phase`) tints
275
+ * the disco-grain radial only on hover; idle is neutral.
276
+ *
277
+ * K.W6 Lane B — the canonical disco-grain + sparkle-sweep + specular
278
+ * recipe lifted to `@utility btn-audacious` (utilities.css). The Vue
279
+ * <DockTabButton> attaches `btn-audacious` automatically when the
280
+ * consumer passes `data-tier="primary"`. The dock-local rules below
281
+ * are STRICTLY the dock extension: structural shell (padding, base
282
+ * surface tint, min-height) + phase-tint extensions (hover radial
283
+ * uses `--phase-color`, plus the `[data-phase]` `::before` halo).
284
+ */
285
+ .dock-tab-button[data-tier="primary"] {
286
+ --dock-tab-min-height: 4rem;
287
+ padding-inline: 1.5rem;
288
+ background: color-mix(in srgb, var(--card) 60%, transparent);
289
+ color: var(--foreground);
290
+
291
+ /* Phase-tint hover override — same disco-grain composition as
292
+ * `btn-audacious`, but the radial uses `--phase-color` (instrument-
293
+ * cluster axis) instead of the canonical `--primary`. The `--paper-
294
+ * clean-texture` overlay and `--glass-specular` shadow stack are
295
+ * inherited from the underlying `btn-audacious` utility. */
296
+ &:hover:not(:disabled) {
297
+ --glass-grain-opacity: var(--glass-grain-opacity-disco, 0.08);
298
+ background-image:
299
+ var(--paper-clean-texture),
300
+ radial-gradient(
301
+ ellipse at 30% 30%,
302
+ color-mix(
303
+ in srgb,
304
+ var(--phase-color, var(--foreground)) 18%,
305
+ transparent
306
+ ),
307
+ transparent 70%
308
+ );
309
+ background-blend-mode: overlay, normal;
310
+ background-size: var(--paper-texture-size), auto;
311
+ }
312
+
313
+ /* Q.W3.A.4 — phase-tint backplate halo at the pill wrapper.
314
+ *
315
+ * The inner `<GlyphFace>` halo (`.glyph-face-backplate { inset: -25% }`)
316
+ * gets clipped by the pill's `overflow: hidden`; the halo never escapes
317
+ * the inner glyph wrapper. This `::before` lifts the phase-tint to the
318
+ * pill itself so the glow composes with the whole CTA. Scoped to
319
+ * active phases — at idle / ready the pill stays neutral and inherits
320
+ * the W2.7 reservation ("disco fires on hover only"). */
321
+ &[data-phase]:not([data-phase="ready"]):not([data-phase="idle"])::before {
322
+ content: "";
323
+ position: absolute;
324
+ inset: 0;
325
+ border-radius: inherit;
326
+ background: radial-gradient(
327
+ ellipse at 30% 30%,
328
+ color-mix(
329
+ in srgb,
330
+ var(--phase-color, var(--foreground)) 18%,
331
+ transparent
332
+ )
333
+ 0%,
334
+ transparent 70%
335
+ );
336
+ pointer-events: none;
337
+ z-index: -1;
338
+ opacity: 1;
339
+ transition: opacity var(--duration-fast) var(--ease-standard);
340
+ }
341
+ }
342
+
343
+ /* Tier — secondary ──────────────────────────────────────────
344
+ *
345
+ * Companion to `data-tier="primary"`. Carries the same edge-light +
346
+ * edge-shadow skeu vocabulary at quieter weight: no disco accent, no
347
+ * sparkle, no curvature radial. Composes for icon-button consumers
348
+ * (chassis ActionCluster, SettingsCog) where the surface needs a
349
+ * glass-tier read but not the audacious primary punch. Per P.W1.B
350
+ * audit-C §3 — closes the four bare `<DockIconButton>` consumer sites
351
+ * (cog + back + retake + stop) without redefining the family. The
352
+ * secondary tier is a cross-control comma-group (tab + icon button), so it
353
+ * stays flat — nesting under one control would change coverage.
354
+ */
355
+ .dock-tab-button[data-tier="secondary"],
356
+ .dock-icon-button[data-tier="secondary"] {
357
+ background: color-mix(in srgb, var(--card) 50%, transparent);
358
+ border: 1px solid var(--glass-border-quiet);
359
+ box-shadow: var(--border-hairline), var(--glass-highlight);
360
+ }
361
+
362
+ .dock-tab-button[data-tier="secondary"]:hover:not(:disabled),
363
+ .dock-icon-button[data-tier="secondary"]:hover:not(:disabled) {
364
+ background: color-mix(in srgb, var(--card) 65%, transparent);
365
+ box-shadow:
366
+ var(--glass-specular),
367
+ 0 0.5px 0 0 rgb(0 0 0 / 0.06);
368
+ }
369
+
370
+ .dock-select-trigger,
371
+ .dock-dropdown-trigger {
372
+ display: inline-flex;
373
+ align-items: center;
374
+ justify-content: center;
375
+ flex-shrink: 0;
376
+ /* AQ.W3 §W3.2 identity base */
377
+ scale: 1;
378
+ gap: var(--dock-trigger-gap, 0.25rem);
379
+ min-height: var(--dock-trigger-min-height, auto);
380
+ padding: var(--dock-trigger-padding-block, 0.25rem)
381
+ var(--dock-trigger-padding-inline, 0.5rem);
382
+ white-space: nowrap;
383
+ cursor: pointer;
384
+ border: none;
385
+ background: transparent;
386
+ border-radius: var(--dock-control-radius, var(--radius-pill));
387
+ /* Shares the dock-icon-button legibility base (`--dock-fg-on-aurora`). */
388
+ color: color-mix(
389
+ in srgb,
390
+ var(--dock-fg-on-aurora, var(--foreground))
391
+ calc(var(--opacity-icon-muted) * 100%),
392
+ transparent
393
+ );
394
+ outline: none;
395
+ transition:
396
+ background-color var(--dock-motion-fast),
397
+ color var(--dock-motion-fast),
398
+ /* AT.W7-dock-b — press micro-feedback spring (transform-scoped). */ scale
399
+ var(--dock-press-spring),
400
+ opacity var(--dock-motion-fast);
401
+ }
402
+
403
+ .dock-select-trigger:hover:not(:disabled),
404
+ .dock-dropdown-trigger:hover:not(:disabled) {
405
+ background: var(--muted);
406
+ color: var(--btn-hover-color, var(--foreground));
407
+ }
408
+
409
+ .dock-dropdown-trigger:hover:not(:disabled) {
410
+ scale: var(--scale-hover-dock);
411
+ }
412
+
413
+ .dock-select-trigger:active:not(:disabled),
414
+ .dock-dropdown-trigger:active:not(:disabled) {
415
+ scale: var(--scale-press-dock);
416
+ }
417
+
418
+ .dock-select-trigger:focus:not(:focus-visible),
419
+ .dock-dropdown-trigger:focus:not(:focus-visible) {
420
+ box-shadow: none;
421
+ outline: none;
422
+ }
423
+
424
+ /* focus-visible ring + disabled paint hoisted to the shared `:where()`
425
+ group in dock.css; this rule adds only the box-shadow fade transition.
426
+ `scale` keeps the AT.W7-dock-b press micro-feedback spring. */
427
+ .dock-select-trigger:focus-visible,
428
+ .dock-dropdown-trigger:focus-visible {
429
+ transition:
430
+ background-color var(--dock-motion-fast),
431
+ color var(--dock-motion-fast),
432
+ scale var(--dock-press-spring),
433
+ opacity var(--dock-motion-fast),
434
+ box-shadow var(--dock-motion-fast);
435
+ }
436
+
437
+ .dock-select-trigger:is(
438
+ .is-active,
439
+ .active,
440
+ [aria-expanded="true"],
441
+ [aria-pressed="true"]
442
+ ),
443
+ .dock-dropdown-trigger:is(
444
+ .is-active,
445
+ .active,
446
+ [aria-expanded="true"],
447
+ [aria-pressed="true"]
448
+ ) {
449
+ background: var(--muted);
450
+ color: var(--foreground);
451
+ }
452
+
453
+ .dock-select-trigger__chevron {
454
+ width: var(--dock-trigger-icon-size, 0.75rem);
455
+ height: var(--dock-trigger-icon-size, 0.75rem);
456
+ flex-shrink: 0;
457
+ opacity: 0.5;
458
+ /* Individual-transform identity base (AQ.W3 §W3.2) — `rotate:` longhand
459
+ for family consistency (not a stacking-context hazard: child glyph).
460
+ AT.W7-dock-b — the open/close flip carries the press micro-feedback
461
+ spring (transform-scoped). */
462
+ rotate: 0deg;
463
+ transition: rotate var(--dock-press-spring);
464
+ }
465
+
466
+ .dock-select-trigger[data-state="open"] .dock-select-trigger__chevron {
467
+ rotate: 180deg;
468
+ }
469
+
470
+ /* O.W6 Lane D — Touch-target floor (speedtest AC.W6 F2.AA-03 / WCAG
471
+ 2.5.5), button-level half. The dock-width-math half (the
472
+ `.glass-dock[data-density]` `--dock-control-size` lift) STAYS in dock.css
473
+ (shell / width-math). This per-button floor reaches a STANDALONE
474
+ DockIconButton (a routed settings gear, no dock wrapper) that reads the
475
+ bare `--size-icon-btn` and would otherwise fall below the 44px WCAG
476
+ target. It holds the touch box regardless of ancestry; the in-dock
477
+ `.glass-dock[data-density]` rule is more specific and also reserves the
478
+ slot in the dock's width-math. Compact buttons opt out — they are
479
+ auto-sized affordances, not primary targets. */
480
+ @media (pointer: coarse) {
481
+ .dock-icon-button:not(.dock-icon-button--compact) {
482
+ min-block-size: var(--dock-touch-target, 2.75rem);
483
+ min-inline-size: var(--dock-touch-target, 2.75rem);
484
+ }
485
+ }
486
+ }