tldraw 3.16.0-canary.a03de714c746 → 3.16.0-canary.a2491e00987a

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 (226) hide show
  1. package/dist-cjs/index.d.ts +99 -4
  2. package/dist-cjs/index.js +8 -1
  3. package/dist-cjs/index.js.map +2 -2
  4. package/dist-cjs/lib/canvas/TldrawScribble.js +1 -1
  5. package/dist-cjs/lib/canvas/TldrawScribble.js.map +2 -2
  6. package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js +3 -3
  7. package/dist-cjs/lib/shapes/arrow/ArrowShapeUtil.js.map +2 -2
  8. package/dist-cjs/lib/shapes/arrow/elbow/ElbowArrowDebug.js +3 -3
  9. package/dist-cjs/lib/shapes/arrow/elbow/ElbowArrowDebug.js.map +1 -1
  10. package/dist-cjs/lib/shapes/draw/DrawShapeUtil.js +3 -3
  11. package/dist-cjs/lib/shapes/draw/DrawShapeUtil.js.map +2 -2
  12. package/dist-cjs/lib/shapes/embed/EmbedShapeUtil.js +1 -1
  13. package/dist-cjs/lib/shapes/embed/EmbedShapeUtil.js.map +1 -1
  14. package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js +12 -12
  15. package/dist-cjs/lib/shapes/frame/FrameShapeUtil.js.map +2 -2
  16. package/dist-cjs/lib/shapes/frame/components/FrameHeading.js +1 -1
  17. package/dist-cjs/lib/shapes/frame/components/FrameHeading.js.map +2 -2
  18. package/dist-cjs/lib/shapes/geo/GeoShapeUtil.js +2 -2
  19. package/dist-cjs/lib/shapes/geo/GeoShapeUtil.js.map +2 -2
  20. package/dist-cjs/lib/shapes/geo/components/GeoShapeBody.js +2 -1
  21. package/dist-cjs/lib/shapes/geo/components/GeoShapeBody.js.map +2 -2
  22. package/dist-cjs/lib/shapes/highlight/HighlightShapeUtil.js +5 -1
  23. package/dist-cjs/lib/shapes/highlight/HighlightShapeUtil.js.map +2 -2
  24. package/dist-cjs/lib/shapes/image/ImageShapeUtil.js +3 -3
  25. package/dist-cjs/lib/shapes/image/ImageShapeUtil.js.map +1 -1
  26. package/dist-cjs/lib/shapes/line/LineShapeUtil.js +5 -1
  27. package/dist-cjs/lib/shapes/line/LineShapeUtil.js.map +2 -2
  28. package/dist-cjs/lib/shapes/note/NoteShapeUtil.js +4 -4
  29. package/dist-cjs/lib/shapes/note/NoteShapeUtil.js.map +2 -2
  30. package/dist-cjs/lib/shapes/shared/ShapeFill.js +5 -5
  31. package/dist-cjs/lib/shapes/shared/ShapeFill.js.map +2 -2
  32. package/dist-cjs/lib/shapes/text/TextShapeUtil.js +2 -2
  33. package/dist-cjs/lib/shapes/text/TextShapeUtil.js.map +2 -2
  34. package/dist-cjs/lib/shapes/video/VideoShapeUtil.js +3 -3
  35. package/dist-cjs/lib/shapes/video/VideoShapeUtil.js.map +1 -1
  36. package/dist-cjs/lib/tools/SelectTool/childStates/Translating.js.map +2 -2
  37. package/dist-cjs/lib/ui/TldrawUi.js +14 -0
  38. package/dist-cjs/lib/ui/TldrawUi.js.map +3 -3
  39. package/dist-cjs/lib/ui/components/ActionsMenu/DefaultActionsMenu.js +12 -3
  40. package/dist-cjs/lib/ui/components/ActionsMenu/DefaultActionsMenu.js.map +2 -2
  41. package/dist-cjs/lib/ui/components/DefaultMenuPanel.js +3 -2
  42. package/dist-cjs/lib/ui/components/DefaultMenuPanel.js.map +2 -2
  43. package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js +4 -4
  44. package/dist-cjs/lib/ui/components/Minimap/MinimapManager.js.map +2 -2
  45. package/dist-cjs/lib/ui/components/MobileStylePanel.js +5 -3
  46. package/dist-cjs/lib/ui/components/MobileStylePanel.js.map +2 -2
  47. package/dist-cjs/lib/ui/components/NavigationPanel/DefaultNavigationPanel.js +1 -1
  48. package/dist-cjs/lib/ui/components/NavigationPanel/DefaultNavigationPanel.js.map +2 -2
  49. package/dist-cjs/lib/ui/components/PageMenu/DefaultPageMenu.js +2 -1
  50. package/dist-cjs/lib/ui/components/PageMenu/DefaultPageMenu.js.map +2 -2
  51. package/dist-cjs/lib/ui/components/SharePanel/PeopleMenuItem.js +3 -2
  52. package/dist-cjs/lib/ui/components/SharePanel/PeopleMenuItem.js.map +2 -2
  53. package/dist-cjs/lib/ui/components/SharePanel/UserPresenceColorPicker.js +2 -2
  54. package/dist-cjs/lib/ui/components/SharePanel/UserPresenceColorPicker.js.map +2 -2
  55. package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js +14 -14
  56. package/dist-cjs/lib/ui/components/StylePanel/DefaultStylePanelContent.js.map +2 -2
  57. package/dist-cjs/lib/ui/components/StylePanel/DoubleDropdownPicker.js +3 -3
  58. package/dist-cjs/lib/ui/components/StylePanel/DoubleDropdownPicker.js.map +2 -2
  59. package/dist-cjs/lib/ui/components/StylePanel/DropdownPicker.js +26 -25
  60. package/dist-cjs/lib/ui/components/StylePanel/DropdownPicker.js.map +3 -3
  61. package/dist-cjs/lib/ui/components/Toolbar/DefaultImageToolbarContent.js +1 -1
  62. package/dist-cjs/lib/ui/components/Toolbar/DefaultImageToolbarContent.js.map +2 -2
  63. package/dist-cjs/lib/ui/components/Toolbar/DefaultToolbar.js +66 -21
  64. package/dist-cjs/lib/ui/components/Toolbar/DefaultToolbar.js.map +3 -3
  65. package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js +189 -80
  66. package/dist-cjs/lib/ui/components/Toolbar/OverflowingToolbar.js.map +3 -3
  67. package/dist-cjs/lib/ui/components/Toolbar/ToggleToolLockedButton.js +2 -2
  68. package/dist-cjs/lib/ui/components/Toolbar/ToggleToolLockedButton.js.map +2 -2
  69. package/dist-cjs/lib/ui/components/primitives/TldrawUiButtonPicker.js +5 -16
  70. package/dist-cjs/lib/ui/components/primitives/TldrawUiButtonPicker.js.map +3 -3
  71. package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js +1 -1
  72. package/dist-cjs/lib/ui/components/primitives/TldrawUiContextualToolbar.js.map +2 -2
  73. package/dist-cjs/lib/ui/components/primitives/TldrawUiPopover.js +3 -2
  74. package/dist-cjs/lib/ui/components/primitives/TldrawUiPopover.js.map +3 -3
  75. package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js +19 -4
  76. package/dist-cjs/lib/ui/components/primitives/TldrawUiToolbar.js.map +2 -2
  77. package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js +106 -82
  78. package/dist-cjs/lib/ui/components/primitives/TldrawUiTooltip.js.map +2 -2
  79. package/dist-cjs/lib/ui/components/primitives/layout.js +76 -0
  80. package/dist-cjs/lib/ui/components/primitives/layout.js.map +7 -0
  81. package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuGroup.js +30 -7
  82. package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuGroup.js.map +2 -2
  83. package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuItem.js +152 -2
  84. package/dist-cjs/lib/ui/components/primitives/menus/TldrawUiMenuItem.js.map +2 -2
  85. package/dist-cjs/lib/ui/context/events.js.map +2 -2
  86. package/dist-cjs/lib/ui/hooks/useTools.js +76 -9
  87. package/dist-cjs/lib/ui/hooks/useTools.js.map +2 -2
  88. package/dist-cjs/lib/ui/version.js +3 -3
  89. package/dist-cjs/lib/ui/version.js.map +1 -1
  90. package/dist-esm/index.d.mts +99 -4
  91. package/dist-esm/index.mjs +15 -1
  92. package/dist-esm/index.mjs.map +2 -2
  93. package/dist-esm/lib/canvas/TldrawScribble.mjs +1 -1
  94. package/dist-esm/lib/canvas/TldrawScribble.mjs.map +2 -2
  95. package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs +4 -3
  96. package/dist-esm/lib/shapes/arrow/ArrowShapeUtil.mjs.map +2 -2
  97. package/dist-esm/lib/shapes/arrow/elbow/ElbowArrowDebug.mjs +3 -3
  98. package/dist-esm/lib/shapes/arrow/elbow/ElbowArrowDebug.mjs.map +1 -1
  99. package/dist-esm/lib/shapes/draw/DrawShapeUtil.mjs +4 -3
  100. package/dist-esm/lib/shapes/draw/DrawShapeUtil.mjs.map +2 -2
  101. package/dist-esm/lib/shapes/embed/EmbedShapeUtil.mjs +1 -1
  102. package/dist-esm/lib/shapes/embed/EmbedShapeUtil.mjs.map +1 -1
  103. package/dist-esm/lib/shapes/frame/FrameShapeUtil.mjs +13 -12
  104. package/dist-esm/lib/shapes/frame/FrameShapeUtil.mjs.map +2 -2
  105. package/dist-esm/lib/shapes/frame/components/FrameHeading.mjs +1 -1
  106. package/dist-esm/lib/shapes/frame/components/FrameHeading.mjs.map +2 -2
  107. package/dist-esm/lib/shapes/geo/GeoShapeUtil.mjs +3 -2
  108. package/dist-esm/lib/shapes/geo/GeoShapeUtil.mjs.map +2 -2
  109. package/dist-esm/lib/shapes/geo/components/GeoShapeBody.mjs +2 -1
  110. package/dist-esm/lib/shapes/geo/components/GeoShapeBody.mjs.map +2 -2
  111. package/dist-esm/lib/shapes/highlight/HighlightShapeUtil.mjs +6 -1
  112. package/dist-esm/lib/shapes/highlight/HighlightShapeUtil.mjs.map +2 -2
  113. package/dist-esm/lib/shapes/image/ImageShapeUtil.mjs +3 -3
  114. package/dist-esm/lib/shapes/image/ImageShapeUtil.mjs.map +1 -1
  115. package/dist-esm/lib/shapes/line/LineShapeUtil.mjs +6 -1
  116. package/dist-esm/lib/shapes/line/LineShapeUtil.mjs.map +2 -2
  117. package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs +5 -4
  118. package/dist-esm/lib/shapes/note/NoteShapeUtil.mjs.map +2 -2
  119. package/dist-esm/lib/shapes/shared/ShapeFill.mjs +6 -5
  120. package/dist-esm/lib/shapes/shared/ShapeFill.mjs.map +2 -2
  121. package/dist-esm/lib/shapes/text/TextShapeUtil.mjs +3 -2
  122. package/dist-esm/lib/shapes/text/TextShapeUtil.mjs.map +2 -2
  123. package/dist-esm/lib/shapes/video/VideoShapeUtil.mjs +3 -3
  124. package/dist-esm/lib/shapes/video/VideoShapeUtil.mjs.map +1 -1
  125. package/dist-esm/lib/tools/SelectTool/childStates/Translating.mjs.map +2 -2
  126. package/dist-esm/lib/ui/TldrawUi.mjs +16 -2
  127. package/dist-esm/lib/ui/TldrawUi.mjs.map +3 -3
  128. package/dist-esm/lib/ui/components/ActionsMenu/DefaultActionsMenu.mjs +12 -3
  129. package/dist-esm/lib/ui/components/ActionsMenu/DefaultActionsMenu.mjs.map +2 -2
  130. package/dist-esm/lib/ui/components/DefaultMenuPanel.mjs +3 -2
  131. package/dist-esm/lib/ui/components/DefaultMenuPanel.mjs.map +2 -2
  132. package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs +4 -4
  133. package/dist-esm/lib/ui/components/Minimap/MinimapManager.mjs.map +2 -2
  134. package/dist-esm/lib/ui/components/MobileStylePanel.mjs +6 -3
  135. package/dist-esm/lib/ui/components/MobileStylePanel.mjs.map +2 -2
  136. package/dist-esm/lib/ui/components/NavigationPanel/DefaultNavigationPanel.mjs +1 -1
  137. package/dist-esm/lib/ui/components/NavigationPanel/DefaultNavigationPanel.mjs.map +2 -2
  138. package/dist-esm/lib/ui/components/PageMenu/DefaultPageMenu.mjs +2 -1
  139. package/dist-esm/lib/ui/components/PageMenu/DefaultPageMenu.mjs.map +2 -2
  140. package/dist-esm/lib/ui/components/SharePanel/PeopleMenuItem.mjs +3 -2
  141. package/dist-esm/lib/ui/components/SharePanel/PeopleMenuItem.mjs.map +2 -2
  142. package/dist-esm/lib/ui/components/SharePanel/UserPresenceColorPicker.mjs +2 -2
  143. package/dist-esm/lib/ui/components/SharePanel/UserPresenceColorPicker.mjs.map +2 -2
  144. package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanelContent.mjs +14 -14
  145. package/dist-esm/lib/ui/components/StylePanel/DefaultStylePanelContent.mjs.map +2 -2
  146. package/dist-esm/lib/ui/components/StylePanel/DoubleDropdownPicker.mjs +3 -3
  147. package/dist-esm/lib/ui/components/StylePanel/DoubleDropdownPicker.mjs.map +2 -2
  148. package/dist-esm/lib/ui/components/StylePanel/DropdownPicker.mjs +26 -25
  149. package/dist-esm/lib/ui/components/StylePanel/DropdownPicker.mjs.map +2 -2
  150. package/dist-esm/lib/ui/components/Toolbar/DefaultImageToolbarContent.mjs +1 -1
  151. package/dist-esm/lib/ui/components/Toolbar/DefaultImageToolbarContent.mjs.map +2 -2
  152. package/dist-esm/lib/ui/components/Toolbar/DefaultToolbar.mjs +56 -21
  153. package/dist-esm/lib/ui/components/Toolbar/DefaultToolbar.mjs.map +2 -2
  154. package/dist-esm/lib/ui/components/Toolbar/OverflowingToolbar.mjs +192 -81
  155. package/dist-esm/lib/ui/components/Toolbar/OverflowingToolbar.mjs.map +3 -3
  156. package/dist-esm/lib/ui/components/Toolbar/ToggleToolLockedButton.mjs +2 -2
  157. package/dist-esm/lib/ui/components/Toolbar/ToggleToolLockedButton.mjs.map +2 -2
  158. package/dist-esm/lib/ui/components/primitives/TldrawUiButtonPicker.mjs +6 -6
  159. package/dist-esm/lib/ui/components/primitives/TldrawUiButtonPicker.mjs.map +2 -2
  160. package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs +1 -1
  161. package/dist-esm/lib/ui/components/primitives/TldrawUiContextualToolbar.mjs.map +2 -2
  162. package/dist-esm/lib/ui/components/primitives/TldrawUiPopover.mjs +3 -2
  163. package/dist-esm/lib/ui/components/primitives/TldrawUiPopover.mjs.map +2 -2
  164. package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs +19 -4
  165. package/dist-esm/lib/ui/components/primitives/TldrawUiToolbar.mjs.map +2 -2
  166. package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs +108 -84
  167. package/dist-esm/lib/ui/components/primitives/TldrawUiTooltip.mjs.map +2 -2
  168. package/dist-esm/lib/ui/components/primitives/layout.mjs +46 -0
  169. package/dist-esm/lib/ui/components/primitives/layout.mjs.map +7 -0
  170. package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuGroup.mjs +30 -7
  171. package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuGroup.mjs.map +2 -2
  172. package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuItem.mjs +160 -4
  173. package/dist-esm/lib/ui/components/primitives/menus/TldrawUiMenuItem.mjs.map +2 -2
  174. package/dist-esm/lib/ui/context/events.mjs.map +2 -2
  175. package/dist-esm/lib/ui/hooks/useTools.mjs +83 -10
  176. package/dist-esm/lib/ui/hooks/useTools.mjs.map +2 -2
  177. package/dist-esm/lib/ui/version.mjs +3 -3
  178. package/dist-esm/lib/ui/version.mjs.map +1 -1
  179. package/package.json +3 -3
  180. package/src/index.ts +12 -0
  181. package/src/lib/canvas/TldrawScribble.tsx +1 -1
  182. package/src/lib/shapes/arrow/ArrowShapeUtil.tsx +4 -3
  183. package/src/lib/shapes/arrow/elbow/ElbowArrowDebug.tsx +3 -3
  184. package/src/lib/shapes/draw/DrawShapeUtil.tsx +4 -3
  185. package/src/lib/shapes/embed/EmbedShapeUtil.tsx +1 -1
  186. package/src/lib/shapes/frame/FrameShapeUtil.tsx +13 -14
  187. package/src/lib/shapes/frame/components/FrameHeading.tsx +1 -1
  188. package/src/lib/shapes/geo/GeoShapeUtil.tsx +3 -2
  189. package/src/lib/shapes/geo/components/GeoShapeBody.tsx +2 -2
  190. package/src/lib/shapes/highlight/HighlightShapeUtil.tsx +7 -1
  191. package/src/lib/shapes/image/ImageShapeUtil.tsx +3 -3
  192. package/src/lib/shapes/line/LineShapeUtil.tsx +6 -1
  193. package/src/lib/shapes/note/NoteShapeUtil.tsx +9 -4
  194. package/src/lib/shapes/shared/ShapeFill.tsx +6 -5
  195. package/src/lib/shapes/text/TextShapeUtil.tsx +3 -2
  196. package/src/lib/shapes/video/VideoShapeUtil.tsx +3 -3
  197. package/src/lib/tools/SelectTool/childStates/Translating.ts +0 -1
  198. package/src/lib/ui/TldrawUi.tsx +17 -2
  199. package/src/lib/ui/components/ActionsMenu/DefaultActionsMenu.tsx +15 -3
  200. package/src/lib/ui/components/DefaultMenuPanel.tsx +4 -3
  201. package/src/lib/ui/components/Minimap/MinimapManager.ts +4 -4
  202. package/src/lib/ui/components/MobileStylePanel.tsx +9 -6
  203. package/src/lib/ui/components/NavigationPanel/DefaultNavigationPanel.tsx +1 -1
  204. package/src/lib/ui/components/PageMenu/DefaultPageMenu.tsx +3 -2
  205. package/src/lib/ui/components/SharePanel/PeopleMenuItem.tsx +4 -3
  206. package/src/lib/ui/components/SharePanel/UserPresenceColorPicker.tsx +3 -3
  207. package/src/lib/ui/components/StylePanel/DefaultStylePanelContent.tsx +39 -43
  208. package/src/lib/ui/components/StylePanel/DoubleDropdownPicker.tsx +3 -3
  209. package/src/lib/ui/components/StylePanel/DropdownPicker.tsx +7 -6
  210. package/src/lib/ui/components/Toolbar/DefaultImageToolbarContent.tsx +1 -1
  211. package/src/lib/ui/components/Toolbar/DefaultToolbar.tsx +55 -23
  212. package/src/lib/ui/components/Toolbar/OverflowingToolbar.tsx +212 -61
  213. package/src/lib/ui/components/Toolbar/ToggleToolLockedButton.tsx +2 -2
  214. package/src/lib/ui/components/primitives/TldrawUiButtonPicker.tsx +40 -37
  215. package/src/lib/ui/components/primitives/TldrawUiContextualToolbar.tsx +1 -1
  216. package/src/lib/ui/components/primitives/TldrawUiPopover.tsx +4 -2
  217. package/src/lib/ui/components/primitives/TldrawUiToolbar.tsx +32 -9
  218. package/src/lib/ui/components/primitives/TldrawUiTooltip.tsx +112 -82
  219. package/src/lib/ui/components/primitives/layout.tsx +107 -0
  220. package/src/lib/ui/components/primitives/menus/TldrawUiMenuGroup.tsx +30 -7
  221. package/src/lib/ui/components/primitives/menus/TldrawUiMenuItem.tsx +218 -3
  222. package/src/lib/ui/context/events.tsx +1 -0
  223. package/src/lib/ui/hooks/useTools.tsx +118 -10
  224. package/src/lib/ui/version.ts +3 -3
  225. package/src/lib/ui.css +359 -300
  226. package/tldraw.css +652 -590
package/src/lib/ui.css CHANGED
@@ -1,15 +1,15 @@
1
1
  /* @tldraw/ui */
2
2
 
3
3
  .tl-container {
4
- --layer-above: 1;
5
- --layer-focused-input: 10;
6
- --layer-menu-click-capture: 250;
7
- --layer-panels: 300;
8
- --layer-menus: 400;
9
- --layer-toasts: 650;
10
- --layer-cursor: 700;
11
- --layer-header-footer: 999;
12
- --layer-following-indicator: 1000;
4
+ --tl-layer-above: 1;
5
+ --tl-layer-focused-input: 10;
6
+ --tl-layer-menu-click-capture: 250;
7
+ --tl-layer-panels: 300;
8
+ --tl-layer-menus: 400;
9
+ --tl-layer-toasts: 650;
10
+ --tl-layer-cursor: 700;
11
+ --tl-layer-header-footer: 999;
12
+ --tl-layer-following-indicator: 1000;
13
13
  }
14
14
 
15
15
  /* Button */
@@ -33,23 +33,23 @@
33
33
  text-rendering: optimizeLegibility;
34
34
  font-size: 12px;
35
35
  gap: 0px;
36
- color: var(--color-text-1);
36
+ color: var(--tl-color-text-1);
37
37
  z-index: 0;
38
38
  }
39
39
 
40
40
  .tlui-button:disabled {
41
- color: var(--color-text-3);
41
+ color: var(--tl-color-text-3);
42
42
  text-shadow: none;
43
43
  cursor: default;
44
44
  }
45
45
 
46
46
  .tlui-button:disabled .tlui-kbd {
47
- color: var(--color-text-3);
47
+ color: var(--tl-color-text-3);
48
48
  }
49
49
 
50
50
  .tlui-button > * {
51
51
  position: relative;
52
- z-index: var(--layer-above);
52
+ z-index: var(--tl-layer-above);
53
53
  }
54
54
 
55
55
  .tlui-button__label {
@@ -65,7 +65,7 @@
65
65
  */
66
66
  .tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button:focus-visible {
67
67
  border-radius: 10px;
68
- outline: 2px solid var(--color-focus);
68
+ outline: 2px solid var(--tl-color-focus);
69
69
  outline-offset: -5px;
70
70
  }
71
71
  .tl-container__focused:not(.tl-container__no-focus-ring) .tlui-button__tool:focus-visible {
@@ -73,7 +73,7 @@
73
73
  }
74
74
  .tlui-slider__container:has(.tlui-slider__thumb:focus-visible) {
75
75
  border-radius: 10px;
76
- outline: 2px solid var(--color-focus);
76
+ outline: 2px solid var(--tl-color-focus);
77
77
  outline-offset: -5px;
78
78
  }
79
79
 
@@ -82,8 +82,8 @@
82
82
  content: '';
83
83
  position: absolute;
84
84
  inset: 4px;
85
- border-radius: var(--radius-2);
86
- background: var(--color-muted-2);
85
+ border-radius: var(--tl-radius-2);
86
+ background: var(--tl-color-muted-2);
87
87
  opacity: 0;
88
88
  }
89
89
 
@@ -93,18 +93,18 @@
93
93
 
94
94
  .tlui-button[data-isactive='true']::after,
95
95
  .tlui-button[data-isactive='true']:not(:disabled, :focus-visible):active:after {
96
- background: var(--color-hint);
96
+ background: var(--tl-color-hint);
97
97
  opacity: 1;
98
98
  }
99
99
 
100
100
  .tlui-button[aria-expanded='true'][data-direction='left'] {
101
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
101
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
102
102
  opacity: 1;
103
103
  }
104
104
 
105
105
  @media (hover: hover) {
106
106
  .tlui-button[aria-expanded='true'][data-direction='left']:not(:hover)::after {
107
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
107
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
108
108
  opacity: 1;
109
109
  }
110
110
 
@@ -118,18 +118,18 @@
118
118
  }
119
119
 
120
120
  .tlui-button__icon + .tlui-button__label {
121
- margin-left: var(--space-2);
121
+ margin-left: var(--tl-space-2);
122
122
  }
123
123
 
124
124
  /* Low button */
125
125
 
126
126
  .tlui-button__low {
127
- border-radius: var(--radius-3);
128
- background-color: var(--color-low);
127
+ border-radius: var(--tl-radius-3);
128
+ background-color: var(--tl-color-low);
129
129
  }
130
130
 
131
131
  .tlui-button__low::after {
132
- background-color: var(--color-muted-2);
132
+ background-color: var(--tl-color-muted-2);
133
133
  opacity: 0;
134
134
  }
135
135
 
@@ -142,31 +142,25 @@
142
142
  /* Primary / danger buttons */
143
143
 
144
144
  .tlui-button__primary {
145
- color: var(--color-primary);
145
+ color: var(--tl-color-primary);
146
146
  }
147
147
 
148
148
  .tlui-button__danger {
149
- color: var(--color-danger);
149
+ color: var(--tl-color-danger);
150
150
  text-shadow: none;
151
151
  }
152
152
 
153
153
  @media (hover: hover) {
154
154
  .tlui-button__primary:not(:disabled, :focus-visible):hover {
155
- color: var(--color-primary);
155
+ color: var(--tl-color-primary);
156
156
  }
157
157
 
158
158
  .tlui-button__danger:not(:disabled, :focus-visible):hover {
159
- color: var(--color-danger);
159
+ color: var(--tl-color-danger);
160
160
  text-shadow: none;
161
161
  }
162
162
  }
163
163
 
164
- /* Panel button */
165
-
166
- .tlui-button__panel {
167
- position: relative;
168
- }
169
-
170
164
  /* Menu button */
171
165
 
172
166
  .tlui-button__menu {
@@ -179,7 +173,7 @@
179
173
 
180
174
  .tlui-button__menu::after {
181
175
  inset: 4px;
182
- border-radius: var(--radius-2);
176
+ border-radius: var(--tl-radius-2);
183
177
  }
184
178
 
185
179
  .tlui-button__menu > .tlui-icon + .tlui-button__label {
@@ -207,18 +201,26 @@
207
201
 
208
202
  /* Tool lock button */
209
203
 
210
- .tlui-toolbar__lock-button {
204
+ .tlui-main-toolbar__lock-button {
211
205
  position: absolute;
212
- top: 4px;
213
- right: 0px;
214
206
  pointer-events: all;
215
207
  height: 40px;
216
208
  width: 40px;
209
+ border-radius: var(--tl-radius-2);
210
+ }
211
+
212
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__lock-button {
213
+ top: 4px;
214
+ right: 0px;
217
215
  min-width: 0px;
218
- border-radius: var(--radius-2);
219
216
  }
220
217
 
221
- .tlui-toolbar__lock-button::after {
218
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__lock-button {
219
+ bottom: 0px;
220
+ min-height: 0px;
221
+ }
222
+
223
+ .tlui-main-toolbar__lock-button::after {
222
224
  top: 4px;
223
225
  left: 8px;
224
226
  inset: 4px;
@@ -230,16 +232,6 @@
230
232
  position: relative;
231
233
  height: 48px;
232
234
  width: 48px;
233
- margin-left: -2px;
234
- margin-right: -2px;
235
- }
236
-
237
- .tlui-button__tool:nth-of-type(1) {
238
- margin-left: 0px;
239
- }
240
-
241
- .tlui-button__tool:nth-last-of-type(1) {
242
- margin-right: 0px;
243
235
  }
244
236
 
245
237
  .tlui-button__tool::after {
@@ -248,69 +240,64 @@
248
240
  }
249
241
 
250
242
  .tlui-button__tool[aria-pressed='true'] {
251
- color: var(--color-selected-contrast);
243
+ color: var(--tl-color-selected-contrast);
252
244
  }
253
245
 
254
246
  .tlui-button__tool[aria-pressed='true']:not(:disabled, :focus-visible):active {
255
- color: var(--color-selected-contrast);
247
+ color: var(--tl-color-selected-contrast);
256
248
  }
257
249
 
258
250
  .tlui-button__tool[aria-pressed='true']:not(:disabled)::after {
259
- background: var(--color-selected);
251
+ background: var(--tl-color-selected);
260
252
  opacity: 1;
261
253
  }
262
254
 
263
- .tlui-layout__mobile .tlui-button__tool {
255
+ .tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool {
264
256
  height: 48px;
265
257
  width: 43px;
266
258
  }
267
259
 
268
- .tlui-layout__mobile .tlui-button__tool > .tlui-icon {
260
+ .tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-button__tool > .tlui-icon {
269
261
  height: 16px;
270
262
  width: 16px;
271
263
  }
272
264
 
273
- /* Button Row */
265
+ /* Row layout */
274
266
 
275
- .tlui-buttons__horizontal {
267
+ .tlui-row {
276
268
  display: flex;
277
269
  flex-direction: row;
270
+ padding: 0 2px;
278
271
  }
279
- .tlui-buttons__horizontal > * {
272
+ .tlui-row > * {
280
273
  margin-left: -2px;
281
274
  margin-right: -2px;
282
275
  }
283
- .tlui-buttons__horizontal > *:nth-child(1) {
284
- margin-left: 0px;
276
+
277
+ /* Column layout */
278
+
279
+ .tlui-column {
280
+ display: flex;
281
+ flex-direction: column;
282
+ padding: 2px 0;
285
283
  }
286
- .tlui-buttons__horizontal > *:nth-last-child(1) {
287
- margin-right: 0px;
284
+ .tlui-column > * {
285
+ margin-top: -2px;
286
+ margin-bottom: -2px;
288
287
  }
289
288
 
290
- /* Button Grid */
289
+ /* Grid layout */
291
290
 
292
- .tlui-buttons__grid {
291
+ .tlui-grid {
293
292
  display: grid;
294
- grid-template-columns: repeat(4, auto);
293
+ grid-template-columns: repeat(4, 1fr);
295
294
  grid-auto-flow: row;
296
295
  overflow: hidden;
296
+ padding: 2px;
297
297
  }
298
- .tlui-buttons__grid > .tlui-button {
298
+ .tlui-grid > * {
299
299
  margin: -2px;
300
300
  }
301
- .tlui-buttons__grid > .tlui-button:nth-of-type(4n),
302
- .tlui-buttons__vertical-align > .tlui-button:nth-of-type(3n) {
303
- margin-right: 0px;
304
- }
305
- .tlui-buttons__grid > .tlui-button:nth-of-type(4n - 3) {
306
- margin-left: 0px;
307
- }
308
- .tlui-buttons__grid > .tlui-button:nth-of-type(-n + 4) {
309
- margin-top: 0px;
310
- }
311
- .tlui-buttons__grid > .tlui-button:nth-last-of-type(-n + 4) {
312
- margin-bottom: 0px;
313
- }
314
301
 
315
302
  /* Zoom button */
316
303
 
@@ -334,9 +321,9 @@
334
321
  pointer-events: none;
335
322
  user-select: none;
336
323
  contain: strict;
337
- z-index: var(--layer-panels);
324
+ z-index: var(--tl-layer-panels);
338
325
  transform: translate3d(0, 0, 0);
339
- --sab: env(safe-area-inset-bottom);
326
+ --tl-sab: env(safe-area-inset-bottom);
340
327
  font-weight: 500;
341
328
  line-height: 1.6;
342
329
  -webkit-font-smoothing: antialiased;
@@ -389,11 +376,11 @@
389
376
  justify-content: flex-start;
390
377
  align-items: flex-start;
391
378
  width: min-content;
392
- gap: var(--space-3);
393
- margin: var(--space-2) var(--space-3);
379
+ gap: var(--tl-space-3);
380
+ margin: var(--tl-space-2) var(--tl-space-3);
394
381
  white-space: nowrap;
395
382
  pointer-events: none;
396
- z-index: var(--layer-panels);
383
+ z-index: var(--tl-layer-panels);
397
384
  }
398
385
 
399
386
  /* ---------------------- Icon ---------------------- */
@@ -421,7 +408,7 @@
421
408
 
422
409
  .tlui-slider__container {
423
410
  width: 100%;
424
- padding: 0px var(--space-4);
411
+ padding: 0px var(--tl-space-4);
425
412
  }
426
413
 
427
414
  .tlui-slider {
@@ -447,7 +434,7 @@
447
434
  content: '';
448
435
  height: 3px;
449
436
  width: 100%;
450
- background-color: var(--color-muted-1);
437
+ background-color: var(--tl-color-muted-1);
451
438
  border-radius: 14px;
452
439
  }
453
440
 
@@ -456,7 +443,7 @@
456
443
  top: calc(50% - 2px);
457
444
  left: 0px;
458
445
  height: 3px;
459
- background-color: var(--color-selected);
446
+ background-color: var(--tl-color-selected);
460
447
  border-radius: 14px;
461
448
  }
462
449
 
@@ -468,16 +455,16 @@
468
455
  height: 18px;
469
456
  position: relative;
470
457
  top: -1px;
471
- background-color: var(--color-panel);
458
+ background-color: var(--tl-color-panel);
472
459
  border-radius: 999px;
473
- box-shadow: inset 0px 0px 0px 2px var(--color-text-1);
460
+ box-shadow: inset 0px 0px 0px 2px var(--tl-color-text-1);
474
461
  }
475
462
 
476
463
  .tlui-slider__thumb:active {
477
464
  cursor: grabbing;
478
465
  box-shadow:
479
- inset 0px 0px 0px 2px var(--color-text-1),
480
- var(--shadow-1);
466
+ inset 0px 0px 0px 2px var(--tl-color-text-1),
467
+ var(--tl-shadow-1);
481
468
  }
482
469
 
483
470
  /* ---------------------- Input --------------------- */
@@ -486,7 +473,7 @@
486
473
  background: none;
487
474
  margin: 0px;
488
475
  position: relative;
489
- z-index: var(--layer-above);
476
+ z-index: var(--tl-layer-above);
490
477
  height: 40px;
491
478
  max-height: 40px;
492
479
  display: flex;
@@ -495,8 +482,8 @@
495
482
  font-family: inherit;
496
483
  font-size: 12px;
497
484
  font-weight: inherit;
498
- color: var(--color-text-1);
499
- padding: var(--space-4);
485
+ color: var(--tl-color-text-1);
486
+ padding: var(--tl-space-4);
500
487
  padding-left: 0px;
501
488
  border: none;
502
489
  outline: none;
@@ -512,8 +499,8 @@
512
499
  height: 44px;
513
500
  display: flex;
514
501
  align-items: center;
515
- gap: var(--space-4);
516
- color: var(--color-text);
502
+ gap: var(--tl-space-4);
503
+ color: var(--tl-color-text);
517
504
  }
518
505
 
519
506
  .tlui-input__wrapper > .tlui-icon {
@@ -545,7 +532,7 @@
545
532
  grid-auto-columns: minmax(1em, auto);
546
533
  align-self: bottom;
547
534
  color: currentColor;
548
- margin-left: var(--space-4);
535
+ margin-left: var(--tl-space-4);
549
536
  }
550
537
 
551
538
  .tlui-kbd > span {
@@ -562,13 +549,13 @@
562
549
  }
563
550
 
564
551
  .tlui-kbd:not(:last-child) {
565
- margin-right: var(--space-2);
552
+ margin-right: var(--tl-space-2);
566
553
  }
567
554
 
568
555
  /* Focus Mode Button */
569
556
 
570
557
  .tlui-focus-button {
571
- z-index: var(--layer-panels);
558
+ z-index: var(--tl-layer-panels);
572
559
  pointer-events: all;
573
560
  }
574
561
 
@@ -579,16 +566,16 @@
579
566
  }
580
567
 
581
568
  .tlui-menu {
582
- z-index: var(--layer-menus);
569
+ z-index: var(--tl-layer-menus);
583
570
  height: fit-content;
584
571
  width: fit-content;
585
- border-radius: var(--radius-3);
572
+ border-radius: var(--tl-radius-3);
586
573
  pointer-events: all;
587
574
  touch-action: auto;
588
575
  overflow-y: auto;
589
576
  overscroll-behavior: none;
590
- background-color: var(--color-panel);
591
- box-shadow: var(--shadow-3);
577
+ background-color: var(--tl-color-panel);
578
+ box-shadow: var(--tl-shadow-3);
592
579
  }
593
580
 
594
581
  .tlui-menu::-webkit-scrollbar {
@@ -606,7 +593,7 @@
606
593
  }
607
594
 
608
595
  .tlui-menu__group {
609
- border-bottom: 1px solid var(--color-divider);
596
+ border-bottom: 1px solid var(--tl-color-divider);
610
597
  }
611
598
  .tlui-menu__group:nth-last-of-type(1) {
612
599
  border-bottom: none;
@@ -616,23 +603,23 @@
616
603
 
617
604
  .tlui-menu__submenu__trigger[data-state='open']::after {
618
605
  opacity: 1;
619
- background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
606
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
620
607
  }
621
608
 
622
609
  .tlui-menu__submenu__trigger[data-direction='left'][data-state='open']::after {
623
610
  opacity: 1;
624
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
611
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
625
612
  }
626
613
 
627
614
  @media (hover: hover) {
628
615
  .tlui-menu__submenu__trigger[data-state='open']:not(:hover)::after {
629
616
  opacity: 1;
630
- background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
617
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
631
618
  }
632
619
 
633
620
  .tlui-menu__submenu__trigger[data-direction='left'][data-state='open']:not(:hover)::after {
634
621
  opacity: 1;
635
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
622
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
636
623
  }
637
624
  }
638
625
 
@@ -657,7 +644,7 @@
657
644
  .tlui-menu-click-capture {
658
645
  position: fixed;
659
646
  inset: 0;
660
- z-index: var(--layer-menu-click-capture);
647
+ z-index: var(--tl-layer-menu-click-capture);
661
648
  }
662
649
 
663
650
  /* --------------------- Popover -------------------- */
@@ -673,10 +660,10 @@
673
660
  max-height: calc(var(--radix-popover-content-available-height) - 8px);
674
661
  margin: 0px;
675
662
  border: none;
676
- border-radius: var(--radius-3);
677
- background-color: var(--color-panel);
678
- box-shadow: var(--shadow-3);
679
- z-index: var(--layer-menus);
663
+ border-radius: var(--tl-radius-3);
664
+ background-color: var(--tl-color-panel);
665
+ box-shadow: var(--tl-shadow-3);
666
+ z-index: var(--tl-layer-menus);
680
667
  overflow: hidden;
681
668
  overflow-y: auto;
682
669
  touch-action: auto;
@@ -689,22 +676,22 @@
689
676
 
690
677
  .tlui-menu-zone {
691
678
  position: relative;
692
- z-index: var(--layer-panels);
679
+ z-index: var(--tl-layer-panels);
693
680
  width: fit-content;
694
- border-right: 2px solid var(--color-background);
695
- border-bottom: 2px solid var(--color-background);
696
- border-bottom-right-radius: var(--radius-4);
697
- background-color: var(--color-low);
681
+ border-right: 2px solid var(--tl-color-background);
682
+ border-bottom: 2px solid var(--tl-color-background);
683
+ border-bottom-right-radius: var(--tl-radius-4);
684
+ background-color: var(--tl-color-low);
698
685
  }
699
686
 
700
687
  .tlui-menu-zone *[data-state='open']::after {
701
- background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
688
+ background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
702
689
  opacity: 1;
703
690
  }
704
691
 
705
692
  @media (hover: hover) {
706
693
  .tlui-menu-zone *[data-state='open']:not(:hover)::after {
707
- background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
694
+ background: linear-gradient(180deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
708
695
  opacity: 1;
709
696
  }
710
697
  }
@@ -730,8 +717,8 @@
730
717
  align-items: center;
731
718
  width: 100%;
732
719
  height: 40px;
733
- padding-left: var(--space-4);
734
- border-bottom: 1px solid var(--color-divider);
720
+ padding-left: var(--tl-space-4);
721
+ border-bottom: 1px solid var(--tl-color-divider);
735
722
  }
736
723
 
737
724
  .tlui-page-menu__header > .tlui-button:nth-of-type(1) {
@@ -739,7 +726,7 @@
739
726
  }
740
727
 
741
728
  .tlui-page-menu__header__title {
742
- color: var(--color-text);
729
+ color: var(--tl-color-text);
743
730
  font-size: 12px;
744
731
  flex-grow: 2;
745
732
  }
@@ -824,7 +811,7 @@
824
811
  display: inline-flex;
825
812
  align-items: center;
826
813
  justify-content: center;
827
- color: var(--color-text);
814
+ color: var(--tl-color-text);
828
815
  }
829
816
 
830
817
  .tlui-page_menu__item__sortable {
@@ -837,7 +824,7 @@
837
824
  flex-direction: row;
838
825
  align-items: center;
839
826
  overflow: hidden;
840
- z-index: var(--layer-above);
827
+ z-index: var(--tl-layer-above);
841
828
  }
842
829
 
843
830
  .tlui-page_menu__item__sortable__title {
@@ -849,7 +836,7 @@
849
836
  }
850
837
 
851
838
  .tlui-page_menu__item__sortable:focus-visible {
852
- z-index: var(--layer-focused-input);
839
+ z-index: var(--tl-layer-focused-input);
853
840
  }
854
841
 
855
842
  .tlui-page_menu__item__sortable__handle {
@@ -858,7 +845,7 @@
858
845
  min-width: 0px;
859
846
  height: 40px;
860
847
  cursor: grab;
861
- color: var(--color-text-3);
848
+ color: var(--tl-color-text-3);
862
849
  flex-shrink: 0;
863
850
  margin-right: -9px;
864
851
  }
@@ -900,13 +887,13 @@
900
887
  }
901
888
 
902
889
  .tlui-page_menu__item__submenu > .tlui-button[data-state='open']::after {
903
- background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
890
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
904
891
  opacity: 1;
905
892
  }
906
893
 
907
894
  @media (hover: hover) {
908
895
  .tlui-page_menu__item__submenu > .tlui-button[data-state='open']:not(:hover)::after {
909
- background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
896
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
910
897
  opacity: 1;
911
898
  }
912
899
  }
@@ -942,7 +929,7 @@
942
929
  top: 48px;
943
930
  left: -9999px;
944
931
  padding: 8px 16px;
945
- z-index: var(--layer-toasts);
932
+ z-index: var(--tl-layer-toasts);
946
933
  }
947
934
 
948
935
  .tl-skip-to-main-content:focus {
@@ -954,11 +941,11 @@
954
941
  .tlui-offline-indicator {
955
942
  display: flex;
956
943
  flex-direction: row;
957
- gap: var(--space-3);
958
- color: var(--color-text);
959
- background-color: var(--color-low);
960
- border: 3px solid var(--color-background);
961
- padding: 0px var(--space-5);
944
+ gap: var(--tl-space-3);
945
+ color: var(--tl-color-text);
946
+ background-color: var(--tl-color-low);
947
+ border: 3px solid var(--tl-color-background);
948
+ padding: 0px var(--tl-space-5);
962
949
  height: 42px;
963
950
  align-items: center;
964
951
  justify-content: center;
@@ -973,10 +960,10 @@
973
960
  /* ------------------- Style panel ------------------ */
974
961
 
975
962
  .tlui-style-panel__wrapper {
976
- box-shadow: var(--shadow-2);
977
- border-radius: var(--radius-3);
963
+ box-shadow: var(--tl-shadow-2);
964
+ border-radius: var(--tl-radius-3);
978
965
  pointer-events: all;
979
- background-color: var(--color-panel);
966
+ background-color: var(--tl-color-panel);
980
967
  height: fit-content;
981
968
  max-height: 100%;
982
969
  margin: 8px;
@@ -985,7 +972,7 @@
985
972
  overscroll-behavior: none;
986
973
  overflow-y: auto;
987
974
  overflow-x: hidden;
988
- color: var(--color-text);
975
+ color: var(--tl-color-text);
989
976
  }
990
977
  /* if the style panel is the only child (ie no share menu), increase the margin */
991
978
  .tlui-style-panel__wrapper:only-child {
@@ -994,7 +981,7 @@
994
981
 
995
982
  .tlui-style-panel {
996
983
  position: relative;
997
- z-index: var(--layer-panels);
984
+ z-index: var(--tl-layer-panels);
998
985
  pointer-events: all;
999
986
  width: 148px;
1000
987
  max-width: 148px;
@@ -1002,7 +989,7 @@
1002
989
 
1003
990
  .tlui-style-panel[data-show-ui-labels='true'] .tlui-button[data-isactive='true'] {
1004
991
  border-radius: 10px;
1005
- outline: 2px solid var(--color-text);
992
+ outline: 2px solid var(--tl-color-text);
1006
993
  outline-offset: -5px;
1007
994
  }
1008
995
 
@@ -1021,7 +1008,7 @@
1021
1008
  }
1022
1009
 
1023
1010
  .tlui-style-panel__section:nth-of-type(n + 2):not(:last-child) {
1024
- border-bottom: 1px solid var(--color-divider);
1011
+ border-bottom: 1px solid var(--tl-color-divider);
1025
1012
  }
1026
1013
 
1027
1014
  .tlui-style-panel__section:empty {
@@ -1030,23 +1017,19 @@
1030
1017
 
1031
1018
  .tlui-style-panel__section__common:not(:only-child) {
1032
1019
  margin-bottom: 7px;
1033
- border-bottom: 1px solid var(--color-divider);
1020
+ border-bottom: 1px solid var(--tl-color-divider);
1034
1021
  }
1035
1022
 
1036
- .tlui-style-panel__row {
1037
- display: flex;
1038
- }
1039
- /* Only really used for the alignment picker */
1040
- .tlui-style-panel__row__extra-button {
1041
- margin-left: -2px;
1023
+ .tlui-style-panel__dropdown-picker:only-child {
1024
+ width: 100%;
1042
1025
  }
1043
1026
 
1044
1027
  .tlui-style-panel__double-select-picker {
1045
1028
  display: flex;
1046
1029
  grid-template-columns: 1fr auto;
1047
1030
  align-items: center;
1048
- padding-left: var(--space-4);
1049
- color: var(--color-text-1);
1031
+ padding-left: var(--tl-space-4);
1032
+ color: var(--tl-color-text-1);
1050
1033
  font-size: 12px;
1051
1034
  }
1052
1035
 
@@ -1060,13 +1043,13 @@
1060
1043
 
1061
1044
  .tlui-style-panel .tlui-button[data-state='open']::after {
1062
1045
  opacity: 1;
1063
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
1046
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1064
1047
  }
1065
1048
 
1066
1049
  @media (hover: hover) {
1067
1050
  .tlui-style-panel .tlui-button[data-state='open']:not(:hover)::after {
1068
1051
  opacity: 1;
1069
- background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
1052
+ background: linear-gradient(270deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1070
1053
  }
1071
1054
  }
1072
1055
 
@@ -1076,14 +1059,14 @@
1076
1059
  .tlui-style-panel__section__common .tlui-style-panel__subheading,
1077
1060
  .tlui-style-panel__subheading + .tlui-slider__container {
1078
1061
  margin: 0;
1079
- padding: var(--space-2) var(--space-3) 0px var(--space-4);
1062
+ padding: var(--tl-space-2) var(--tl-space-3) 0px var(--tl-space-4);
1080
1063
  font-size: 12px;
1081
1064
  font-weight: inherit;
1082
1065
  line-height: inherit;
1083
1066
  }
1084
1067
 
1085
1068
  .tlui-style-panel .tlui-style-panel__subheading:nth-of-type(1) {
1086
- padding-top: var(--space-3);
1069
+ padding-top: var(--tl-space-3);
1087
1070
  }
1088
1071
 
1089
1072
  .tlui-style-panel__subheading + .tlui-slider__container {
@@ -1094,11 +1077,12 @@
1094
1077
 
1095
1078
  .tlui-layout__bottom {
1096
1079
  grid-row: 2;
1080
+ width: 100%;
1081
+ overflow: hidden;
1097
1082
  }
1098
1083
 
1099
1084
  .tlui-layout__bottom__main {
1100
1085
  width: 100%;
1101
- position: relative;
1102
1086
  display: flex;
1103
1087
  align-items: flex-end;
1104
1088
  justify-content: center;
@@ -1110,11 +1094,10 @@
1110
1094
  display: flex;
1111
1095
  width: min-content;
1112
1096
  flex-direction: column;
1113
- z-index: var(--layer-panels);
1097
+ z-index: var(--tl-layer-panels);
1114
1098
  pointer-events: all;
1115
1099
  position: absolute;
1116
1100
  left: 0px;
1117
- bottom: 0px;
1118
1101
  }
1119
1102
 
1120
1103
  .tlui-navigation-panel::before {
@@ -1124,10 +1107,10 @@
1124
1107
  z-index: -1;
1125
1108
  inset: -2px -2px 0px 0px;
1126
1109
  border-radius: 0;
1127
- border-top: 2px solid var(--color-background);
1128
- border-right: 2px solid var(--color-background);
1129
- border-top-right-radius: var(--radius-4);
1130
- background-color: var(--color-low);
1110
+ border-top: 2px solid var(--tl-color-background);
1111
+ border-right: 2px solid var(--tl-color-background);
1112
+ border-top-right-radius: var(--tl-radius-4);
1113
+ background-color: var(--tl-color-low);
1131
1114
  }
1132
1115
 
1133
1116
  .tlui-navigation-panel[data-a11y='true']::before {
@@ -1141,7 +1124,7 @@
1141
1124
  height: 96px;
1142
1125
  min-height: 96px;
1143
1126
  overflow: hidden;
1144
- padding: var(--space-3);
1127
+ padding: var(--tl-space-3);
1145
1128
  padding-top: 0px;
1146
1129
  }
1147
1130
 
@@ -1154,98 +1137,174 @@
1154
1137
  /* --------------------- Toolbar -------------------- */
1155
1138
 
1156
1139
  /* Wide container */
1157
- .tlui-toolbar {
1140
+ .tlui-main-toolbar {
1158
1141
  grid-column: 1 / span 3;
1159
1142
  grid-row: 1;
1160
1143
  display: flex;
1161
1144
  align-items: center;
1162
1145
  justify-content: center;
1163
1146
  flex-grow: 2;
1164
- padding-bottom: calc(var(--space-3) + var(--sab));
1147
+ }
1148
+
1149
+ .tlui-main-toolbar--horizontal {
1150
+ padding-bottom: calc(var(--tl-space-3) + var(--tl-sab));
1151
+ max-width: 100%;
1152
+ }
1153
+
1154
+ .tlui-main-toolbar--vertical {
1155
+ position: absolute;
1156
+ left: 0;
1157
+ top: 90px; /* height of page menu + 'back to content' button */
1158
+ bottom: 140px; /* height of expanded mini-map */
1159
+ padding-left: calc(var(--tl-space-3) + var(--tl-sab));
1160
+ }
1161
+
1162
+ [data-breakpoints-below*='6'] .tlui-main-toolbar--vertical {
1163
+ bottom: 90px; /* collapsed mini-map, but same as top to keep things looking even */
1165
1164
  }
1166
1165
 
1167
1166
  /* Centered Content */
1168
- .tlui-toolbar__inner {
1167
+ .tlui-main-toolbar__inner {
1169
1168
  position: relative;
1170
1169
  width: fit-content;
1171
1170
  display: flex;
1172
- gap: var(--space-3);
1173
- align-items: flex-end;
1171
+ gap: var(--tl-space-3);
1172
+ align-items: flex-start;
1174
1173
  }
1175
1174
 
1176
- .tlui-toolbar__left {
1175
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__inner {
1176
+ flex-direction: column;
1177
+ }
1178
+
1179
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__left {
1177
1180
  width: fit-content;
1178
1181
  }
1182
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__left {
1183
+ display: flex;
1184
+ height: fit-content;
1185
+ }
1179
1186
 
1180
1187
  /* Row of controls + lock button */
1181
- .tlui-toolbar__extras {
1188
+ .tlui-main-toolbar__extras {
1182
1189
  position: relative;
1183
- z-index: var(--layer-above);
1184
- width: 100%;
1190
+ z-index: var(--tl-layer-above);
1185
1191
  pointer-events: none;
1186
- top: 6px;
1187
- height: 48px;
1192
+ align-self: stretch;
1188
1193
  }
1189
1194
 
1190
- .tlui-toolbar__extras:empty {
1195
+ .tlui-main-toolbar__extras:empty {
1191
1196
  display: none;
1192
1197
  }
1193
1198
 
1194
- .tlui-toolbar__extras__controls {
1195
- display: flex;
1199
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__extras {
1200
+ height: 48px;
1201
+ top: 6px;
1202
+ }
1203
+
1204
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__extras {
1205
+ width: 48px;
1206
+ order: 1;
1207
+ }
1208
+
1209
+ .tlui-main-toolbar__extras__controls {
1196
1210
  position: relative;
1197
- flex-direction: row;
1198
- z-index: var(--layer-above);
1199
- background-color: var(--color-low);
1200
- border-top-left-radius: var(--radius-4);
1201
- border-top-right-radius: var(--radius-4);
1202
- border: 2px solid var(--color-background);
1211
+ z-index: var(--tl-layer-above);
1212
+ background-color: var(--tl-color-low);
1213
+ border: 2px solid var(--tl-color-background);
1214
+ pointer-events: all;
1215
+ }
1216
+
1217
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__extras__controls {
1218
+ border-top-left-radius: var(--tl-radius-4);
1219
+ border-top-right-radius: var(--tl-radius-4);
1203
1220
  margin-left: 8px;
1204
1221
  margin-right: 0px;
1205
- pointer-events: all;
1206
1222
  width: fit-content;
1207
1223
  }
1208
1224
 
1209
- .tlui-toolbar__tools {
1210
- display: flex;
1211
- flex-direction: row;
1212
- align-items: center;
1213
- border-radius: var(--radius-4);
1214
- z-index: var(--layer-panels);
1225
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__extras__controls {
1226
+ border-top-right-radius: var(--tl-radius-4);
1227
+ border-bottom-right-radius: var(--tl-radius-4);
1228
+ margin-top: 8px;
1229
+ margin-left: -2px;
1230
+ margin-bottom: 0px;
1231
+ width: fit-content;
1232
+ }
1233
+
1234
+ .tlui-main-toolbar__tools {
1235
+ border-radius: var(--tl-radius-4);
1236
+ z-index: var(--tl-layer-panels);
1215
1237
  pointer-events: all;
1216
1238
  position: relative;
1217
- background: var(--color-panel);
1218
- box-shadow: var(--shadow-2);
1239
+ background: var(--tl-color-panel);
1240
+ box-shadow: var(--tl-shadow-2);
1219
1241
  }
1220
- .tlui-toolbar__tools__list {
1221
- display: flex;
1222
- flex-direction: row;
1223
- align-items: center;
1242
+
1243
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__mobile-style-panel {
1244
+ align-self: flex-end;
1245
+ }
1246
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__mobile-style-panel {
1247
+ align-self: flex-start;
1224
1248
  }
1225
1249
 
1226
- .tlui-toolbar__overflow {
1250
+ .tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow {
1227
1251
  width: 40px;
1252
+ margin-left: 2px;
1253
+ }
1254
+ .tlui-main-toolbar--vertical .tlui-main-toolbar__overflow {
1255
+ height: 40px;
1256
+ margin-top: 2px;
1228
1257
  }
1229
1258
 
1230
- .tlui-layout__mobile .tlui-toolbar__overflow {
1259
+ .tlui-layout__mobile .tlui-main-toolbar--horizontal .tlui-main-toolbar__overflow {
1231
1260
  width: 32px;
1232
1261
  padding: 0px;
1233
1262
  }
1234
1263
 
1235
- .tlui-toolbar *[data-state='open']::after {
1236
- background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
1264
+ .tlui-main-toolbar--horizontal *[data-state='open']::after {
1265
+ background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1266
+ opacity: 1;
1267
+ }
1268
+ .tlui-main-toolbar--vertical *[data-state='open']::after {
1269
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1237
1270
  opacity: 1;
1238
1271
  }
1239
1272
 
1273
+ .tlui-main-toolbar__tools [data-toolbar-visible='false'],
1274
+ .tlui-main-toolbar__overflow-content [data-toolbar-visible='false'] {
1275
+ display: none;
1276
+ }
1277
+
1278
+ .tlui-main-toolbar__group:empty {
1279
+ display: none;
1280
+ }
1281
+ .tlui-row.tlui-main-toolbar__group:not(:nth-last-child(-n + 1 of [data-toolbar-visible='true'])) {
1282
+ border-right: 1px solid var(--color-divider);
1283
+ margin-right: 2px;
1284
+ }
1285
+ .tlui-column.tlui-main-toolbar__group:not(
1286
+ :nth-last-child(-n + 1 of [data-toolbar-visible='true'])
1287
+ ) {
1288
+ border-bottom: 1px solid var(--color-divider);
1289
+ margin-bottom: 2px;
1290
+ }
1291
+ .tlui-grid.tlui-main-toolbar__group {
1292
+ grid-column: 1 / span 4;
1293
+ }
1294
+ .tlui-grid.tlui-main-toolbar__group:not(:nth-last-child(-n + 1 of [data-toolbar-visible='true'])) {
1295
+ border-bottom: 1px solid var(--color-divider);
1296
+ margin-bottom: 2px;
1297
+ }
1298
+
1240
1299
  @media (hover: hover) {
1241
- .tlui-toolbar *[data-state='open']:not(:hover)::after {
1242
- background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--color-muted-2) 100%);
1300
+ .tlui-main-toolbar--horizontal *[data-state='open']:not(:hover)::after {
1301
+ background: linear-gradient(0deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1302
+ opacity: 1;
1303
+ }
1304
+ .tlui-main-toolbar--vertical *[data-state='open']:not(:hover)::after {
1305
+ background: linear-gradient(90deg, rgba(144, 144, 144, 0) 0%, var(--tl-color-muted-2) 100%);
1243
1306
  opacity: 1;
1244
1307
  }
1245
- }
1246
-
1247
- .tlui-layout__mobile .tlui-toolbar {
1248
- transition: transform 0.15s ease-out 0.05s;
1249
1308
  }
1250
1309
 
1251
1310
  /* ------------------- Tooltip -------------------- */
@@ -1254,9 +1313,9 @@
1254
1313
  font-size: 12px;
1255
1314
  padding: 2px 8px;
1256
1315
  border-radius: 4px;
1257
- background-color: var(--color-tooltip);
1316
+ background-color: var(--tl-color-tooltip);
1258
1317
  box-shadow: none;
1259
- color: var(--color-text-shadow);
1318
+ color: var(--tl-color-text-shadow);
1260
1319
  max-width: 400px;
1261
1320
  width: fit-content;
1262
1321
  text-align: center;
@@ -1266,12 +1325,12 @@
1266
1325
  }
1267
1326
 
1268
1327
  .tlui-tooltip__arrow {
1269
- fill: var(--color-tooltip);
1328
+ fill: var(--tl-color-tooltip);
1270
1329
  will-change: opacity;
1271
1330
  }
1272
1331
 
1273
1332
  [data-radix-popper-content-wrapper]:has(.tlui-tooltip) {
1274
- z-index: var(--layer-toasts) !important;
1333
+ z-index: var(--tl-layer-toasts) !important;
1275
1334
  }
1276
1335
 
1277
1336
  [data-radix-popper-content-wrapper]:has(.tlui-tooltip[data-should-animate='true']) {
@@ -1281,17 +1340,17 @@
1281
1340
  /* ------------------- Debug panel ------------------ */
1282
1341
 
1283
1342
  .tlui-debug-panel {
1284
- background-color: var(--color-low);
1343
+ background-color: var(--tl-color-low);
1285
1344
  width: 100%;
1286
1345
  display: grid;
1287
1346
  align-items: center;
1288
1347
  grid-template-columns: 1fr auto auto auto;
1289
1348
  justify-content: space-between;
1290
- padding-left: var(--space-4);
1291
- border-top: 1px solid var(--color-background);
1349
+ padding-left: var(--tl-space-4);
1350
+ border-top: 1px solid var(--tl-color-background);
1292
1351
  font-size: 12px;
1293
- color: var(--color-text-1);
1294
- z-index: var(--layer-panels);
1352
+ color: var(--tl-color-text-1);
1353
+ z-index: var(--tl-layer-panels);
1295
1354
  pointer-events: all;
1296
1355
  }
1297
1356
 
@@ -1307,7 +1366,7 @@
1307
1366
 
1308
1367
  .tlui-debug-panel__fps__slow {
1309
1368
  font-weight: bold;
1310
- color: var(--color-danger);
1369
+ color: var(--tl-color-danger);
1311
1370
  }
1312
1371
 
1313
1372
  .tlui-a11y-audit {
@@ -1317,7 +1376,7 @@
1317
1376
  .tlui-a11y-audit th,
1318
1377
  .tlui-a11y-audit td {
1319
1378
  padding: 8px;
1320
- border: 1px solid var(--color-low-border);
1379
+ border: 1px solid var(--tl-color-low-border);
1321
1380
  }
1322
1381
 
1323
1382
  /* --------------------- Toasts --------------------- */
@@ -1330,10 +1389,10 @@
1330
1389
  align-items: flex-end;
1331
1390
  justify-content: flex-end;
1332
1391
  flex-direction: column;
1333
- gap: var(--space-3);
1392
+ gap: var(--tl-space-3);
1334
1393
  pointer-events: none;
1335
- padding: 0px var(--space-3) 64px 0px;
1336
- z-index: var(--layer-toasts);
1394
+ padding: 0px var(--tl-space-3) 64px 0px;
1395
+ z-index: var(--tl-layer-toasts);
1337
1396
  }
1338
1397
 
1339
1398
  .tlui-toast__viewport > * {
@@ -1342,34 +1401,34 @@
1342
1401
 
1343
1402
  .tlui-toast__icon {
1344
1403
  padding-top: 11px;
1345
- padding-left: var(--space-4);
1346
- color: var(--color-text-1);
1404
+ padding-left: var(--tl-space-4);
1405
+ color: var(--tl-color-text-1);
1347
1406
  }
1348
1407
 
1349
1408
  .tlui-toast__container {
1350
1409
  min-width: 200px;
1351
1410
  display: flex;
1352
1411
  flex-direction: row;
1353
- background-color: var(--color-panel);
1354
- box-shadow: var(--shadow-2);
1355
- border-radius: var(--radius-3);
1412
+ background-color: var(--tl-color-panel);
1413
+ box-shadow: var(--tl-shadow-2);
1414
+ border-radius: var(--tl-radius-3);
1356
1415
  font-size: 12px;
1357
1416
  }
1358
1417
 
1359
1418
  .tlui-toast__container[data-severity='success'] .tlui-icon {
1360
- color: var(--color-success);
1419
+ color: var(--tl-color-success);
1361
1420
  }
1362
1421
 
1363
1422
  .tlui-toast__container[data-severity='info'] .tlui-icon {
1364
- color: var(--color-info);
1423
+ color: var(--tl-color-info);
1365
1424
  }
1366
1425
 
1367
1426
  .tlui-toast__container[data-severity='warning'] .tlui-icon {
1368
- color: var(--color-warning);
1427
+ color: var(--tl-color-warning);
1369
1428
  }
1370
1429
 
1371
1430
  .tlui-toast__container[data-severity='error'] .tlui-icon {
1372
- color: var(--color-danger);
1431
+ color: var(--tl-color-danger);
1373
1432
  }
1374
1433
 
1375
1434
  .tlui-toast__main {
@@ -1378,27 +1437,27 @@
1378
1437
  }
1379
1438
 
1380
1439
  .tlui-toast__content {
1381
- padding: var(--space-4);
1440
+ padding: var(--tl-space-4);
1382
1441
  display: flex;
1383
1442
  line-height: 1.4;
1384
1443
  flex-direction: column;
1385
- gap: var(--space-3);
1444
+ gap: var(--tl-space-3);
1386
1445
  }
1387
1446
 
1388
1447
  .tlui-toast__main[data-actions='true'] .tlui-toast__content {
1389
- padding-bottom: var(--space-2);
1448
+ padding-bottom: var(--tl-space-2);
1390
1449
  }
1391
1450
 
1392
1451
  .tlui-toast__title {
1393
1452
  font-weight: bold;
1394
- color: var(--color-text-1);
1453
+ color: var(--tl-color-text-1);
1395
1454
  /* this makes the default toast look better */
1396
1455
  line-height: 16px;
1397
1456
  }
1398
1457
 
1399
1458
  .tlui-toast__description {
1400
- color: var(--color-text-1);
1401
- padding: var(--space-3);
1459
+ color: var(--tl-color-text-1);
1460
+ padding: var(--tl-space-3);
1402
1461
  margin: 0px;
1403
1462
  padding: 0px;
1404
1463
  }
@@ -1450,14 +1509,14 @@
1450
1509
  left: 0px;
1451
1510
  width: 100%;
1452
1511
  height: 100%;
1453
- z-index: var(--layer-canvas-overlays);
1454
- background-color: var(--color-overlay);
1512
+ z-index: var(--tl-layer-canvas-overlays);
1513
+ background-color: var(--tl-color-overlay);
1455
1514
  pointer-events: all;
1456
1515
  animation: tl-fade-in 0.12s ease-out;
1457
1516
  display: grid;
1458
1517
  place-items: center;
1459
1518
  overflow-y: auto;
1460
- padding: 0px var(--space-3);
1519
+ padding: 0px var(--tl-space-3);
1461
1520
  }
1462
1521
 
1463
1522
  .tlui-dialog__content {
@@ -1465,9 +1524,9 @@
1465
1524
  flex-direction: column;
1466
1525
  position: relative;
1467
1526
  cursor: default;
1468
- background-color: var(--color-panel);
1469
- box-shadow: var(--shadow-3);
1470
- border-radius: var(--radius-3);
1527
+ background-color: var(--tl-color-panel);
1528
+ box-shadow: var(--tl-shadow-3);
1529
+ border-radius: var(--tl-radius-3);
1471
1530
  font-size: 12px;
1472
1531
  overflow: hidden;
1473
1532
  min-width: 300px;
@@ -1480,9 +1539,9 @@
1480
1539
  display: flex;
1481
1540
  align-items: center;
1482
1541
  flex: 0;
1483
- z-index: var(--layer-header-footer);
1484
- padding-left: var(--space-4);
1485
- color: var(--color-text);
1542
+ z-index: var(--tl-layer-header-footer);
1543
+ padding-left: var(--tl-space-4);
1544
+ color: var(--tl-color-text);
1486
1545
  height: 40px;
1487
1546
  }
1488
1547
 
@@ -1491,7 +1550,7 @@
1491
1550
  font-weight: inherit;
1492
1551
  font-size: 12px;
1493
1552
  margin: 0px;
1494
- color: var(--color-text-1);
1553
+ color: var(--tl-color-text-1);
1495
1554
  }
1496
1555
 
1497
1556
  .tlui-dialog__header__close {
@@ -1499,16 +1558,16 @@
1499
1558
  }
1500
1559
 
1501
1560
  .tlui-dialog__body {
1502
- padding: var(--space-4) var(--space-4);
1561
+ padding: var(--tl-space-4) var(--tl-space-4);
1503
1562
  flex: 0 1;
1504
1563
  overflow-y: auto;
1505
1564
  overflow-x: hidden;
1506
- color: var(--color-text-1);
1565
+ color: var(--tl-color-text-1);
1507
1566
  user-select: all;
1508
1567
  -webkit-user-select: text;
1509
1568
  }
1510
1569
  .tlui-dialog__body a {
1511
- color: var(--color-selected);
1570
+ color: var(--tl-color-selected);
1512
1571
  }
1513
1572
 
1514
1573
  .tlui-dialog__body ul,
@@ -1516,13 +1575,13 @@
1516
1575
  padding-left: 16px;
1517
1576
  display: flex;
1518
1577
  flex-direction: column;
1519
- gap: var(--space-2);
1578
+ gap: var(--tl-space-2);
1520
1579
  }
1521
1580
 
1522
1581
  .tlui-dialog__footer {
1523
1582
  position: relative;
1524
1583
  min-height: 12px;
1525
- z-index: var(--layer-header-footer);
1584
+ z-index: var(--tl-layer-header-footer);
1526
1585
  }
1527
1586
 
1528
1587
  .tlui-dialog__footer__actions {
@@ -1542,15 +1601,15 @@
1542
1601
  .tlui-edit-link-dialog {
1543
1602
  display: flex;
1544
1603
  flex-direction: column;
1545
- gap: var(--space-4);
1546
- color: var(--color-text);
1604
+ gap: var(--tl-space-4);
1605
+ color: var(--tl-color-text);
1547
1606
  }
1548
1607
 
1549
1608
  .tlui-edit-link-dialog__input {
1550
- background-color: var(--color-muted-2);
1609
+ background-color: var(--tl-color-muted-2);
1551
1610
  flex-grow: 2;
1552
- border-radius: var(--radius-2);
1553
- padding: 0px var(--space-4);
1611
+ border-radius: var(--tl-radius-2);
1612
+ padding: 0px var(--tl-space-4);
1554
1613
  }
1555
1614
 
1556
1615
  /* Embed Dialog */
@@ -1558,15 +1617,15 @@
1558
1617
  .tlui-embed__spacer {
1559
1618
  flex-grow: 2;
1560
1619
  min-height: 0px;
1561
- margin-left: calc(-1 * var(--space-4));
1562
- margin-top: calc(-1 * var(--space-4));
1620
+ margin-left: calc(-1 * var(--tl-space-4));
1621
+ margin-top: calc(-1 * var(--tl-space-4));
1563
1622
  pointer-events: none;
1564
1623
  }
1565
1624
 
1566
1625
  .tlui-embed-dialog__list {
1567
1626
  display: flex;
1568
1627
  flex-direction: column;
1569
- padding: 0px var(--space-3) var(--space-4) var(--space-3);
1628
+ padding: 0px var(--tl-space-3) var(--tl-space-4) var(--tl-space-3);
1570
1629
  }
1571
1630
 
1572
1631
  .tlui-embed-dialog__item__image {
@@ -1578,49 +1637,49 @@
1578
1637
  background-size: contain;
1579
1638
  background-repeat: no-repeat;
1580
1639
  background-position: center center;
1581
- background-color: var(--color-selected-contrast);
1582
- border-radius: var(--radius-1);
1640
+ background-color: var(--tl-color-selected-contrast);
1641
+ border-radius: var(--tl-radius-1);
1583
1642
  }
1584
1643
 
1585
1644
  .tlui-embed-dialog__enter {
1586
1645
  display: flex;
1587
1646
  flex-direction: column;
1588
- gap: var(--space-4);
1589
- color: var(--color-text-1);
1647
+ gap: var(--tl-space-4);
1648
+ color: var(--tl-color-text-1);
1590
1649
  }
1591
1650
 
1592
1651
  .tlui-embed-dialog__input {
1593
- background-color: var(--color-muted-2);
1652
+ background-color: var(--tl-color-muted-2);
1594
1653
  flex-grow: 2;
1595
- border-radius: var(--radius-2);
1596
- padding: 0px var(--space-4);
1654
+ border-radius: var(--tl-radius-2);
1655
+ padding: 0px var(--tl-space-4);
1597
1656
  }
1598
1657
 
1599
1658
  .tlui-embed-dialog__warning {
1600
- color: var(--color-danger);
1659
+ color: var(--tl-color-danger);
1601
1660
  text-shadow: none;
1602
1661
  }
1603
1662
 
1604
1663
  .tlui-embed-dialog__instruction__link {
1605
1664
  display: flex;
1606
- gap: var(--space-1);
1607
- margin-top: var(--space-4);
1665
+ gap: var(--tl-space-1);
1666
+ margin-top: var(--tl-space-4);
1608
1667
  }
1609
1668
 
1610
1669
  .tlui-embed-dialog__enter a {
1611
- color: var(--color-text-1);
1670
+ color: var(--tl-color-text-1);
1612
1671
  }
1613
1672
 
1614
1673
  /* --------------- Keyboard shortcuts --------------- */
1615
1674
 
1616
1675
  .tlui-shortcuts-dialog__header {
1617
- border-bottom: 1px solid var(--color-divider);
1676
+ border-bottom: 1px solid var(--tl-color-divider);
1618
1677
  }
1619
1678
 
1620
1679
  .tlui-shortcuts-dialog__body {
1621
1680
  position: relative;
1622
1681
  columns: 3;
1623
- column-gap: var(--space-9);
1682
+ column-gap: var(--tl-space-9);
1624
1683
  pointer-events: all;
1625
1684
  touch-action: auto;
1626
1685
 
@@ -1638,14 +1697,14 @@
1638
1697
 
1639
1698
  .tlui-shortcuts-dialog__group {
1640
1699
  break-inside: avoid-column;
1641
- padding-bottom: var(--space-6);
1700
+ padding-bottom: var(--tl-space-6);
1642
1701
  }
1643
1702
 
1644
1703
  .tlui-shortcuts-dialog__group__title {
1645
1704
  font-size: inherit;
1646
1705
  font-weight: inherit;
1647
1706
  margin: 0px;
1648
- color: var(--color-text-3);
1707
+ color: var(--tl-color-text-3);
1649
1708
  height: 32px;
1650
1709
  display: flex;
1651
1710
  align-items: center;
@@ -1654,12 +1713,12 @@
1654
1713
  .tlui-shortcuts-dialog__group__content {
1655
1714
  display: flex;
1656
1715
  flex-direction: column;
1657
- color: var(--color-text-1);
1716
+ color: var(--tl-color-text-1);
1658
1717
  }
1659
1718
 
1660
1719
  .tlui-shortcuts-dialog__key-pair {
1661
1720
  display: flex;
1662
- gap: var(--space-4);
1721
+ gap: var(--tl-space-4);
1663
1722
  align-items: center;
1664
1723
  justify-content: space-between;
1665
1724
  height: 32px;
@@ -1686,12 +1745,12 @@
1686
1745
  height: 24px;
1687
1746
  background: linear-gradient(
1688
1747
  to bottom,
1689
- var(--color-panel-transparent) 0%,
1690
- var(--color-panel) 90%,
1691
- var(--color-panel) 100%
1748
+ var(--tl-color-panel-transparent) 0%,
1749
+ var(--tl-color-panel) 90%,
1750
+ var(--tl-color-panel) 100%
1692
1751
  );
1693
- border-bottom-left-radius: var(--radius-3);
1694
- border-bottom-right-radius: var(--radius-3);
1752
+ border-bottom-left-radius: var(--tl-radius-3);
1753
+ border-bottom-right-radius: var(--tl-radius-3);
1695
1754
  pointer-events: none;
1696
1755
  }
1697
1756
 
@@ -1706,10 +1765,10 @@
1706
1765
  .tlui-help-menu {
1707
1766
  pointer-events: all;
1708
1767
  position: absolute;
1709
- bottom: var(--space-2);
1710
- right: var(--space-2);
1711
- z-index: var(--layer-panels);
1712
- border: 2px solid var(--color-background);
1768
+ bottom: var(--tl-space-2);
1769
+ right: var(--tl-space-2);
1770
+ z-index: var(--tl-layer-panels);
1771
+ border: 2px solid var(--tl-color-background);
1713
1772
  border-radius: 100%;
1714
1773
  }
1715
1774
 
@@ -1720,7 +1779,7 @@
1720
1779
  display: flex;
1721
1780
  flex-direction: row;
1722
1781
  justify-content: flex-end;
1723
- z-index: var(--layer-panels);
1782
+ z-index: var(--tl-layer-panels);
1724
1783
  align-items: center;
1725
1784
  padding-top: 2px;
1726
1785
  padding-right: 4px;
@@ -1736,7 +1795,7 @@
1736
1795
  border: none;
1737
1796
  cursor: pointer;
1738
1797
  pointer-events: all;
1739
- border-radius: var(--radius-1);
1798
+ border-radius: var(--tl-radius-1);
1740
1799
  padding-right: 1px;
1741
1800
  height: 100%;
1742
1801
  }
@@ -1749,8 +1808,8 @@
1749
1808
  .tlui-people-menu__avatar {
1750
1809
  height: 24px;
1751
1810
  width: 24px;
1752
- border: 2px solid var(--color-background);
1753
- background-color: var(--color-low);
1811
+ border: 2px solid var(--tl-color-background);
1812
+ background-color: var(--tl-color-low);
1754
1813
  border-radius: 100%;
1755
1814
  display: flex;
1756
1815
  align-items: center;
@@ -1759,7 +1818,7 @@
1759
1818
  font-size: 10px;
1760
1819
  font-weight: bold;
1761
1820
  text-align: center;
1762
- color: var(--color-selected-contrast);
1821
+ color: var(--tl-color-selected-contrast);
1763
1822
  z-index: 2;
1764
1823
  }
1765
1824
 
@@ -1773,7 +1832,7 @@
1773
1832
 
1774
1833
  @media (hover: hover) {
1775
1834
  .tlui-people-menu__avatars-button:hover .tlui-people-menu__avatar {
1776
- border-color: var(--color-low);
1835
+ border-color: var(--tl-color-low);
1777
1836
  }
1778
1837
  }
1779
1838
 
@@ -1781,12 +1840,12 @@
1781
1840
  min-width: 0px;
1782
1841
  font-size: 11px;
1783
1842
  font-weight: 600;
1784
- color: var(--color-text-1);
1843
+ color: var(--tl-color-text-1);
1785
1844
  font-family: inherit;
1786
1845
  padding: 0px 4px;
1787
1846
  }
1788
1847
  .tlui-people-menu__more::after {
1789
- border-radius: var(--radius-2);
1848
+ border-radius: var(--tl-radius-2);
1790
1849
  inset: 0px;
1791
1850
  }
1792
1851
 
@@ -1815,7 +1874,7 @@
1815
1874
  }
1816
1875
 
1817
1876
  .tlui-people-menu__section:not(:last-child) {
1818
- border-bottom: 1px solid var(--color-divider);
1877
+ border-bottom: 1px solid var(--tl-color-divider);
1819
1878
  }
1820
1879
 
1821
1880
  .tlui-people-menu__user {
@@ -1834,7 +1893,7 @@
1834
1893
  text-overflow: ellipsis;
1835
1894
  white-space: nowrap;
1836
1895
  font-size: 12px;
1837
- color: var(--color-text-1);
1896
+ color: var(--tl-color-text-1);
1838
1897
  max-width: 100%;
1839
1898
  flex-grow: 1;
1840
1899
  flex-shrink: 100;
@@ -1846,7 +1905,7 @@
1846
1905
  text-overflow: ellipsis;
1847
1906
  white-space: nowrap;
1848
1907
  font-size: 12px;
1849
- color: var(--color-text-3);
1908
+ color: var(--tl-color-text-3);
1850
1909
  flex-grow: 100;
1851
1910
  flex-shrink: 0;
1852
1911
  margin-left: 4px;
@@ -1937,7 +1996,7 @@
1937
1996
  inset: 0px;
1938
1997
  border-width: 2px;
1939
1998
  border-style: solid;
1940
- z-index: var(--layer-following-indicator);
1999
+ z-index: var(--tl-layer-following-indicator);
1941
2000
  pointer-events: none;
1942
2001
  }
1943
2002
 
@@ -1956,7 +2015,7 @@
1956
2015
  }
1957
2016
 
1958
2017
  .tlui-contextual-toolbar [data-isactive='true']::after {
1959
- background-color: var(--color-muted-2);
2018
+ background-color: var(--tl-color-muted-2);
1960
2019
  opacity: 1;
1961
2020
  }
1962
2021
 
@@ -1972,7 +2031,7 @@
1972
2031
 
1973
2032
  .tlui-contextual-toolbar[data-visible='true'] {
1974
2033
  opacity: 1;
1975
- z-index: var(--layer-menus);
2034
+ z-index: var(--tl-layer-menus);
1976
2035
  }
1977
2036
 
1978
2037
  .tlui-contextual-toolbar[data-interactive='true'],
@@ -2031,7 +2090,7 @@
2031
2090
 
2032
2091
  @keyframes tlui-slide-in {
2033
2092
  from {
2034
- transform: translateX(calc(100% + var(--space-3)));
2093
+ transform: translateX(calc(100% + var(--tl-space-3)));
2035
2094
  }
2036
2095
  to {
2037
2096
  transform: translateX(0px);
@@ -2043,6 +2102,6 @@
2043
2102
  transform: translateX(var(--radix-toast-swipe-end-x));
2044
2103
  }
2045
2104
  to {
2046
- transform: translateX(calc(100% + var(--space-3)));
2105
+ transform: translateX(calc(100% + var(--tl-space-3)));
2047
2106
  }
2048
2107
  }