@dxos/ui-theme 0.8.4-main.6fa680abb7 → 0.8.4-main.765dc60934

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 (163) hide show
  1. package/LICENSE +102 -5
  2. package/README.md +1 -1
  3. package/dist/lib/browser/index.mjs +418 -496
  4. package/dist/lib/browser/index.mjs.map +4 -4
  5. package/dist/lib/browser/meta.json +1 -1
  6. package/dist/lib/node-esm/index.mjs +418 -496
  7. package/dist/lib/node-esm/index.mjs.map +4 -4
  8. package/dist/lib/node-esm/meta.json +1 -1
  9. package/dist/plugin/node-cjs/{theme.css → main.css} +201 -125
  10. package/dist/plugin/node-cjs/main.css.map +7 -0
  11. package/dist/plugin/node-cjs/meta.json +1 -1
  12. package/dist/plugin/node-cjs/plugins/ThemePlugin.cjs +8 -15
  13. package/dist/plugin/node-cjs/plugins/ThemePlugin.cjs.map +3 -3
  14. package/dist/plugin/node-esm/{theme.css → main.css} +201 -125
  15. package/dist/plugin/node-esm/main.css.map +7 -0
  16. package/dist/plugin/node-esm/meta.json +1 -1
  17. package/dist/plugin/node-esm/plugins/ThemePlugin.mjs +8 -15
  18. package/dist/plugin/node-esm/plugins/ThemePlugin.mjs.map +3 -3
  19. package/dist/types/src/Theme.stories.d.ts.map +1 -1
  20. package/dist/types/src/defs.d.ts +1 -1
  21. package/dist/types/src/defs.d.ts.map +1 -1
  22. package/dist/types/src/fragments/density.d.ts +1 -4
  23. package/dist/types/src/fragments/density.d.ts.map +1 -1
  24. package/dist/types/src/fragments/hover.d.ts +0 -1
  25. package/dist/types/src/fragments/hover.d.ts.map +1 -1
  26. package/dist/types/src/fragments/index.d.ts +0 -5
  27. package/dist/types/src/fragments/index.d.ts.map +1 -1
  28. package/dist/types/src/fragments/text.d.ts +0 -5
  29. package/dist/types/src/fragments/text.d.ts.map +1 -1
  30. package/dist/types/src/index.d.ts +1 -1
  31. package/dist/types/src/index.d.ts.map +1 -1
  32. package/dist/types/src/plugins/ThemePlugin.d.ts +1 -1
  33. package/dist/types/src/plugins/ThemePlugin.d.ts.map +1 -1
  34. package/dist/types/src/theme/components/avatar.d.ts.map +1 -1
  35. package/dist/types/src/theme/components/button.d.ts +2 -2
  36. package/dist/types/src/theme/components/button.d.ts.map +1 -1
  37. package/dist/types/src/theme/components/card.d.ts +3 -2
  38. package/dist/types/src/theme/components/card.d.ts.map +1 -1
  39. package/dist/types/src/theme/components/dialog.d.ts.map +1 -1
  40. package/dist/types/src/theme/components/focus.d.ts +6 -0
  41. package/dist/types/src/theme/components/focus.d.ts.map +1 -0
  42. package/dist/types/src/theme/components/icon-button.d.ts +1 -0
  43. package/dist/types/src/theme/components/icon-button.d.ts.map +1 -1
  44. package/dist/types/src/theme/components/icon.d.ts +3 -0
  45. package/dist/types/src/theme/components/icon.d.ts.map +1 -1
  46. package/dist/types/src/theme/components/index.d.ts +1 -0
  47. package/dist/types/src/theme/components/index.d.ts.map +1 -1
  48. package/dist/types/src/theme/components/input.d.ts +8 -8
  49. package/dist/types/src/theme/components/input.d.ts.map +1 -1
  50. package/dist/types/src/theme/components/link.d.ts.map +1 -1
  51. package/dist/types/src/theme/components/list.d.ts.map +1 -1
  52. package/dist/types/src/theme/components/main.d.ts.map +1 -1
  53. package/dist/types/src/theme/components/message.d.ts.map +1 -1
  54. package/dist/types/src/theme/components/popover.d.ts.map +1 -1
  55. package/dist/types/src/theme/components/scroll-area.d.ts +12 -2
  56. package/dist/types/src/theme/components/scroll-area.d.ts.map +1 -1
  57. package/dist/types/src/theme/components/select.d.ts.map +1 -1
  58. package/dist/types/src/theme/components/status.d.ts +1 -1
  59. package/dist/types/src/theme/components/status.d.ts.map +1 -1
  60. package/dist/types/src/theme/components/toast.d.ts.map +1 -1
  61. package/dist/types/src/theme/components/toolbar.d.ts +0 -1
  62. package/dist/types/src/theme/components/toolbar.d.ts.map +1 -1
  63. package/dist/types/src/theme/components/tooltip.d.ts.map +1 -1
  64. package/dist/types/src/theme/components/treegrid.d.ts.map +1 -1
  65. package/dist/types/src/theme/index.d.ts +1 -0
  66. package/dist/types/src/theme/index.d.ts.map +1 -1
  67. package/dist/types/src/theme/primitives/column.d.ts +25 -3
  68. package/dist/types/src/theme/primitives/column.d.ts.map +1 -1
  69. package/dist/types/src/theme/primitives/panel.d.ts +9 -5
  70. package/dist/types/src/theme/primitives/panel.d.ts.map +1 -1
  71. package/dist/types/src/theme/theme.d.ts.map +1 -1
  72. package/dist/types/src/util/elevation.d.ts.map +1 -0
  73. package/dist/types/src/util/hash-styles.d.ts +1 -1
  74. package/dist/types/src/util/hash-styles.d.ts.map +1 -1
  75. package/dist/types/src/util/index.d.ts +3 -0
  76. package/dist/types/src/util/index.d.ts.map +1 -1
  77. package/dist/types/src/util/mx.d.ts +49 -284
  78. package/dist/types/src/util/mx.d.ts.map +1 -1
  79. package/dist/types/src/util/size.d.ts +27 -0
  80. package/dist/types/src/util/size.d.ts.map +1 -0
  81. package/dist/types/src/util/valence.d.ts +4 -0
  82. package/dist/types/src/util/valence.d.ts.map +1 -0
  83. package/dist/types/tsconfig.tsbuildinfo +1 -1
  84. package/package.json +14 -18
  85. package/src/Theme.stories.tsx +5 -5
  86. package/src/css/DESIGN_SYSTEM.md +159 -0
  87. package/src/css/base/base.css +2 -2
  88. package/src/css/components/button.css +4 -3
  89. package/src/css/components/checkbox.css +1 -1
  90. package/src/css/components/{focus-ring.css → focus.css} +27 -13
  91. package/src/css/components/icon.css +9 -0
  92. package/src/css/components/panel.css +45 -45
  93. package/src/css/components/selected.css +76 -0
  94. package/src/css/components/selected.md +101 -0
  95. package/src/css/components/surface.css +4 -4
  96. package/src/css/components/tag.css +25 -23
  97. package/src/css/integrations/codemirror.css +5 -3
  98. package/src/css/integrations/tldraw.css +1 -0
  99. package/src/css/layout/main.css +0 -7
  100. package/src/css/layout/size.css +19 -29
  101. package/src/css/theme/animation.css +31 -0
  102. package/src/css/theme/palette.css +8 -0
  103. package/src/css/theme/semantic.css +47 -36
  104. package/src/css/theme/spacing.css +37 -20
  105. package/src/css/theme/styles.css +22 -22
  106. package/src/css/utilities.css +114 -3
  107. package/src/defs.ts +1 -1
  108. package/src/fragments/AUDIT.md +55 -0
  109. package/src/fragments/density.ts +8 -5
  110. package/src/fragments/hover.ts +0 -2
  111. package/src/fragments/index.ts +1 -6
  112. package/src/fragments/text.ts +1 -6
  113. package/src/index.ts +1 -1
  114. package/src/{theme.css → main.css} +48 -10
  115. package/src/plugins/ThemePlugin.ts +12 -24
  116. package/src/plugins/main.css +45 -0
  117. package/src/theme/components/avatar.ts +3 -4
  118. package/src/theme/components/button.ts +3 -3
  119. package/src/theme/components/card.ts +19 -11
  120. package/src/theme/components/dialog.ts +4 -3
  121. package/src/theme/components/focus.ts +33 -0
  122. package/src/theme/components/icon-button.ts +6 -5
  123. package/src/theme/components/icon.ts +13 -4
  124. package/src/theme/components/index.ts +1 -0
  125. package/src/theme/components/input.ts +18 -33
  126. package/src/theme/components/link.ts +1 -2
  127. package/src/theme/components/list.ts +4 -4
  128. package/src/theme/components/menu.ts +4 -4
  129. package/src/theme/components/message.ts +6 -7
  130. package/src/theme/components/popover.ts +4 -5
  131. package/src/theme/components/scroll-area.ts +58 -46
  132. package/src/theme/components/select.ts +3 -4
  133. package/src/theme/components/status.ts +5 -5
  134. package/src/theme/components/toast.ts +2 -3
  135. package/src/theme/components/toolbar.ts +1 -7
  136. package/src/theme/components/tooltip.ts +2 -3
  137. package/src/theme/components/treegrid.ts +1 -1
  138. package/src/theme/index.ts +1 -0
  139. package/src/theme/primitives/column.ts +49 -8
  140. package/src/theme/primitives/panel.ts +18 -25
  141. package/src/theme/theme.ts +2 -0
  142. package/src/typings.d.ts +3 -0
  143. package/src/util/hash-styles.ts +19 -19
  144. package/src/util/index.ts +3 -0
  145. package/src/util/mx.ts +112 -7
  146. package/src/util/size.ts +103 -0
  147. package/dist/plugin/node-cjs/theme.css.map +0 -7
  148. package/dist/plugin/node-esm/theme.css.map +0 -7
  149. package/dist/types/src/fragments/elevation.d.ts.map +0 -1
  150. package/dist/types/src/fragments/focus.d.ts +0 -4
  151. package/dist/types/src/fragments/focus.d.ts.map +0 -1
  152. package/dist/types/src/fragments/selected.d.ts +0 -4
  153. package/dist/types/src/fragments/selected.d.ts.map +0 -1
  154. package/dist/types/src/fragments/size.d.ts +0 -7
  155. package/dist/types/src/fragments/size.d.ts.map +0 -1
  156. package/dist/types/src/fragments/valence.d.ts +0 -4
  157. package/dist/types/src/fragments/valence.d.ts.map +0 -1
  158. package/src/fragments/focus.ts +0 -11
  159. package/src/fragments/selected.ts +0 -12
  160. package/src/fragments/size.ts +0 -117
  161. /package/dist/types/src/{fragments → util}/elevation.d.ts +0 -0
  162. /package/src/{fragments → util}/elevation.ts +0 -0
  163. /package/src/{fragments → util}/valence.ts +0 -0
@@ -1,29 +1,43 @@
1
1
  @layer properties, theme, dx-tokens, user-tokens, base, tw-base, dx-base, components, tw-components, dx-components, utilities;
2
- @import "tailwindcss";
2
+ @import "tailwindcss" source(none);
3
3
  @import "@fontsource-variable/jetbrains-mono/wght-italic.css";
4
4
  @import "@fontsource-variable/jetbrains-mono/wght.css";
5
5
  @import "@fontsource/poiret-one";
6
6
 
7
7
  /* src/css/theme/animation.css */
8
8
  @theme { --ease-in-out-symmetric: cubic-bezier(0.5, 0, 0.5, 1); @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes fade-out { from { opacity: 1; } to { opacity: 0; } } --animate-fade-in: fade-in 200ms ease-out; --animate-fade-out: fade-out 400ms ease-out; @keyframes slide-down-and-fade { from { opacity: 1; transform: translateY(0); } to { opacity: 0; transform: translateY(16px); } } @keyframes slide-left-and-fade { from { opacity: 0; transform: translateX(-16px); } to { opacity: 1; transform: translateX(0); } } @keyframes slide-up-and-fade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } } @keyframes slide-right-and-fade { from { opacity: 0; transform: translateX(16px); } to { opacity: 1; transform: translateX(0); } } --animate-slide-down-and-fade: slide-down-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-left-and-fade: slide-left-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-up-and-fade: slide-up-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); --animate-slide-right-and-fade: slide-right-and-fade 400ms cubic-bezier(0.16, 1, 0.3, 1); @keyframes toast-hide { 0% { opacity: 1; } 100% { opacity: 0; } } @keyframes toast-slide-in-right { 0% { transform: translateX(calc(100% + 1rem)); } 100% { transform: translateX(0); } } @keyframes toast-slide-in-bottom { 0% { transform: translateY(calc(100% + 1rem)); } 100% { transform: translateY(0); } } @keyframes toast-swipe-out { 0% { transform: translateX(var(--radix-toast-swipe-end-x)); } 100% { transform: translateX(calc(100% + 1rem)); } } --animate-toast-hide: toast-hide 100ms ease-in forwards; --animate-toast-slide-in-right: toast-slide-in-right 150ms cubic-bezier(0.16, 1, 0.3, 1); --animate-toast-slide-in-bottom: toast-slide-in-bottom 150ms cubic-bezier(0.16, 1, 0.3, 1); --animate-toast-swipe-out: toast-swipe-out 100ms ease-out forwards; @keyframes slide-down { from { height: 0px; } to { height: var(--radix-accordion-content-height); } } @keyframes slide-up { from { height: var(--radix-accordion-content-height); } to { height: 0px; } } --animate-slide-down: slide-down 300ms cubic-bezier(0.87, 0, 0.13, 1); --animate-slide-up: slide-up 300ms cubic-bezier(0.87, 0, 0.13, 1); @keyframes shimmer-loop { 100% { transform: translateX(100%); } } --animate-shimmer: shimmer-loop 2s infinite; @keyframes halo-pulse { 0% { opacity: 0.3; } 5% { opacity: 1; } 100% { opacity: 0.3; } } --animate-halo-pulse: halo-pulse 2s ease-out infinite; @keyframes progress-indeterminate { 0% { left: 0; width: 0%; } 25% { left: 25%; width: 50%; } 75% { left: 50%; width: 100%; } 100% { left: 100%; width: 0%; } } --animate-progress-indeterminate: progress-indeterminate 2s ease-out infinite; @keyframes trail { to { offset-distance: 100%; } } @keyframes trail-offset { 0% { offset-distance: 50%; } 100% { offset-distance: 150%; } } --animate-trail: trail 6s linear infinite; --animate-trail-offset: trail-offset 6s linear infinite; --animate-spin-slow: spin 3s linear infinite; @keyframes blink { 0%, 50%, 100% { opacity: 1; } 25%, 75% { opacity: 0; } } --animate-blink: blink 1s step-start infinite; }
9
+ @keyframes shimmer-text {
10
+ from {
11
+ mask-position-x: 100%;
12
+ -webkit-mask-position-x: 100%;
13
+ }
14
+ to {
15
+ mask-position-x: -100%;
16
+ -webkit-mask-position-x: -100%;
17
+ }
18
+ }
19
+ @media (prefers-reduced-motion: reduce) {
20
+ .animate-halo-pulse,
21
+ .animate-spin-slow,
22
+ .animate-trail,
23
+ .animate-trail-offset,
24
+ .animate-shimmer {
25
+ animation: none;
26
+ }
27
+ }
9
28
 
10
29
  /* src/css/theme/border.css */
11
30
  @theme { --ring-offset-width-focus-offset: var(--dx-focus-offset); --ring-width-focus-line: var(--dx-focus-line); --ring-width-hair-line: var(--dx-hair-line); --ring-width-thick-line: var(--dx-thick-line); --ring-width-no-line: var(--dx-no-line); --border-width-landmark-line: var(--dx-landmark-line); --radius-none: 0; --radius-sm: 0.25rem; --radius: 0.5rem; --radius-md: 0.75rem; --radius-lg: 1rem; --shadow-slider: 0 0 0 5px rgba(0, 0, 0, 0.3); }
12
31
 
13
32
  /* src/css/theme/palette.css */
14
- @theme { --color-neutral-75: color-mix(in oklch, var(--color-neutral-50) 50%, var(--color-neutral-100) 50%); --color-neutral-250: color-mix(in oklch, var(--color-neutral-200) 50%, var(--color-neutral-300) 50%); --color-neutral-750: color-mix(in oklch, var(--color-neutral-700) 50%, var(--color-neutral-800) 50%); --color-neutral-925: color-mix(in oklch, var(--color-neutral-900) 50%, var(--color-neutral-950) 50%); --color-primary-50: var(--color-blue-50); --color-primary-100: var(--color-blue-100); --color-primary-200: var(--color-blue-200); --color-primary-300: var(--color-blue-300); --color-primary-400: var(--color-blue-400); --color-primary-500: var(--color-blue-500); --color-primary-600: var(--color-blue-600); --color-primary-700: var(--color-blue-700); --color-primary-800: var(--color-blue-800); --color-primary-900: var(--color-blue-900); --color-primary-950: var(--color-blue-950); }
33
+ @theme { --color-neutral-75: color-mix(in oklch, var(--color-neutral-50) 50%, var(--color-neutral-100) 50%); --color-neutral-150: color-mix(in oklch, var(--color-neutral-100) 50%, var(--color-neutral-200) 50%); --color-neutral-250: color-mix(in oklch, var(--color-neutral-200) 50%, var(--color-neutral-300) 50%); --color-neutral-750: color-mix(in oklch, var(--color-neutral-700) 50%, var(--color-neutral-800) 50%); --color-neutral-850: color-mix(in oklch, var(--color-neutral-800) 50%, var(--color-neutral-900) 50%); --color-neutral-925: color-mix(in oklch, var(--color-neutral-900) 50%, var(--color-neutral-950) 50%); --color-primary-50: var(--color-blue-50); --color-primary-100: var(--color-blue-100); --color-primary-200: var(--color-blue-200); --color-primary-300: var(--color-blue-300); --color-primary-400: var(--color-blue-400); --color-primary-500: var(--color-blue-500); --color-primary-600: var(--color-blue-600); --color-primary-700: var(--color-blue-700); --color-primary-800: var(--color-blue-800); --color-primary-900: var(--color-blue-900); --color-primary-950: var(--color-blue-950); --color-composer-100: rgb(5 40 61); --color-composer-200: rgb(10 75 105); --color-composer-300: rgb(1 122 183); --color-composer-400: rgb(6 197 253); }
15
34
 
16
35
  /* src/css/theme/semantic.css */
17
- @theme { --color-base-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-base-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-inverse-surface: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-inverse-surface-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-input-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-input-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-deck-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrim-surface: light-dark( oklch(from var(--color-neutral-50) l c h / 0.5), oklch(from var(--color-neutral-950) l c h / 0.25) ); --color-toolbar-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-group-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-modal-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-card-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-sidebar-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-header-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-current-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-active-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-hover-overlay: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-surface-text: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-attention-surface: var(--color-focus-surface); --color-attention-contains: oklch(from var(--color-accent-surface) l c h / 0.3); --color-focus-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-neutral-focus-indicator: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-accent-surface: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-accent-surface-hover: light-dark(var(--color-blue-800), var(--color-blue-800)); --color-accent-surface-text: var(--color-blue-100); --color-accent-text: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-accent-text-hover: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-accent-focus-indicator: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-un-accent: var(--color-neutral-400); --color-un-accent-hover: var(--color-neutral-500); --color-separator: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-primary-separator: light-dark(var(--color-neutral-400), var(--color-neutral-800)); --color-subdued-separator: light-dark(var(--color-neutral-300), var(--color-neutral-900)); --color-scrollbar-track: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrollbar-thumb: light-dark(var(--color-neutral-200), var(--color-neutral-700)); --color-scrollbar-thumb-active: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-scrollbar-thumb-hover: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-axis-selected-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-selected-text: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-surface: light-dark(var(--color-neutral-50), var(--color-neutral-800)); --color-axis-text: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-grid-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-grid-highlight: oklch(from var(--color-emerald-500) l c h / 0.5); --color-grid-comment: light-dark(var(--color-green-400), var(--color-green-600)); --color-grid-comment-active: light-dark( oklch(from var(--color-green-400) l c h / 0.5), oklch(from var(--color-green-600) l c h / 0.5) ); --color-grid-hover-overlay: oklch(from var(--color-neutral-500) l c h / 0.1); --color-grid-selection-overlay: var(--color-blue-500); --color-grid-line: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-grid-focus-indicator: light-dark(var(--color-primary-600), var(--color-primary-600)); --color-placeholder: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-subdued: light-dark(var(--color-neutral-500), var(--color-neutral-500)); --color-description: light-dark(var(--color-neutral-600), var(--color-neutral-400)); }
36
+ @theme { --color-base-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-base-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-inverse-surface: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-inverse-foreground: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-focus-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-deck-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrim-surface: light-dark( oklch(from var(--color-neutral-50) l c h / 0.5), oklch(from var(--color-neutral-950) l c h / 0.25) ); --color-toolbar-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-card-surface: light-dark(var(--color-neutral-75), var(--color-neutral-925)); --color-group-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-modal-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-sidebar-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-header-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-input-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-input-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-current-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-current-surface-hover: light-dark(var(--color-neutral-300), var(--color-neutral-700)); --color-current-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-selected-surface: light-dark(var(--color-neutral-150), var(--color-neutral-850)); --color-selected-surface-hover: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-selected-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-hover-surface: light-dark(var(--color-neutral-250), var(--color-neutral-750)); --color-hover-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-attention-surface: var(--color-focus-surface); --color-attention-contains: oklch(from var(--color-accent-surface) l c h / 0.3); --color-accent-surface: light-dark(var(--color-blue-500), var(--color-blue-700)); --color-accent-surface-hover: light-dark(var(--color-blue-800), var(--color-blue-800)); --color-accent-foreground: var(--color-blue-100); --color-accent-text: light-dark(var(--color-blue-600), var(--color-blue-400)); --color-accent-text-hover: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-un-accent: var(--color-neutral-400); --color-un-accent-hover: var(--color-neutral-500); --color-focus-ring: light-dark(var(--color-blue-600), var(--color-blue-600)); --color-focus-ring-subtle: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-separator: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-subdued-separator: light-dark(var(--color-neutral-150), var(--color-neutral-850)); --color-primary-separator: light-dark(var(--color-neutral-500), var(--color-neutral-700)); --color-active-separator: light-dark(var(--color-blue-500), var(--color-blue-500)); --color-scrollbar-track: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-scrollbar-thumb: light-dark(var(--color-neutral-200), var(--color-neutral-700)); --color-scrollbar-thumb-active: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-scrollbar-thumb-hover: light-dark(var(--color-neutral-200), var(--color-neutral-600)); --color-axis-selected-surface: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-selected-text: light-dark(var(--color-neutral-100), var(--color-neutral-900)); --color-axis-surface: light-dark(var(--color-neutral-50), var(--color-neutral-800)); --color-axis-text: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-grid-surface: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-grid-foreground: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-grid-line: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-grid-highlight: oklch(from var(--color-emerald-500) l c h / 0.5); --color-grid-selection-surface: light-dark(var(--color-blue-500), var(--color-blue-400)); --color-grid-selection-foreground: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-grid-comment: light-dark(var(--color-green-400), var(--color-green-600)); --color-grid-comment-active: light-dark( oklch(from var(--color-green-400) l c h / 0.5), oklch(from var(--color-green-600) l c h / 0.5) ); --color-placeholder: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-subdued: light-dark(var(--color-neutral-500), var(--color-neutral-500)); --color-description: light-dark(var(--color-neutral-600), var(--color-neutral-400)); }
18
37
 
19
38
  /* src/css/theme/spacing.css */
20
- @theme { --spacing-screen-border: 1rem; --spacing-article-max-width: 50rem; --spacing-prose-max-width: 50rem; --spacing-popover-min-width: 12rem; --spacing-card-default-width: 20rem; --spacing-card-min-width: 18rem; --spacing-card-max-width: 22rem; --spacing-card-min-height: 18rem; --spacing-card-max-height: 30rem; --spacing-trim-xs: 0.375rem; --spacing-trim-sm: 0.5rem; --spacing-trim-md: 0.75rem; --spacing-trim-lg: 1.5rem; --spacing-tag-padding-block: 0.125rem; --spacing-text-content: calc(50rem - env(safe-area-inset-left) - env(safe-area-inset-right)); --spacing-form-chrome: var(--spacing-trim-xs); --spacing-form-padding: var(--spacing-trim-sm); --spacing-icon-button-padding: var(--spacing-trim-xs); --spacing-scroll-padding: 4px; }
39
+ @theme { --spacing-screen-border: 2rem; --spacing-popover-default-width: 20rem; --spacing-popover-min-width: 16rem; --spacing-document-max-width: 50rem; --spacing-document-width: calc(50rem - env(safe-area-inset-left) - env(safe-area-inset-right)); --spacing-card-default-width: 20rem; --spacing-card-min-width: 18rem; --spacing-card-max-width: 22rem; --spacing-card-min-height: 18rem; --spacing-card-max-height: 30rem; --spacing-tag-padding-block: 0.125rem; --spacing-trim-xs: 0.25rem; --spacing-trim-sm: 0.5rem; --spacing-trim-md: 0.75rem; --spacing-trim-lg: 1.5rem; --spacing-form-chrome: var(--spacing-trim-xs); --spacing-form-gap: var(--spacing-trim-sm); --spacing-form-section-gap: var(--spacing-trim-lg); --spacing-form-padding: var(--spacing-trim-sm); --spacing-icon-button-padding: var(--spacing-trim-xs); --spacing-scroll-padding: 4px; }
21
40
  @layer dx-tokens {
22
- .dx-density-coarse {
23
- --spacing-form-padding: var(--spacing-trim-md);
24
- --spacing-icon-button-padding: var(--spacing-trim-sm);
25
- --spacing-scroll-padding: 8px;
26
- }
27
41
  }
28
42
  @layer dx-tokens {
29
43
  :root {
@@ -34,10 +48,10 @@
34
48
  --dx-lacuna-3: 0.375rem;
35
49
  --dx-lacuna-4: 0.5rem;
36
50
  --dx-lacuna-6: 0.75rem;
37
- --dx-gutter-xs: 0.125rem;
38
- --dx-gutter-sm: 0.5rem;
39
- --dx-gutter-md: 1rem;
40
- --dx-gutter-lg: 2rem;
51
+ --dx-gutter-xs: 0.25rem;
52
+ --dx-gutter-sm: 1rem;
53
+ --dx-gutter-md: 2rem;
54
+ --dx-gutter-lg: 2.5rem;
41
55
  }
42
56
  :root {
43
57
  --dx-hair-line: 1px;
@@ -55,6 +69,7 @@
55
69
  --dx-grid-focus-indicator-width: var(--dx-hair-line);
56
70
  --dx-input-fine: var(--dx-lacuna-3);
57
71
  --dx-input-coarse: var(--dx-lacuna-4);
72
+ --dx-default-icons-size: 1rem;
58
73
  }
59
74
  [data-grid-focus-indicator-variant=stack] {
60
75
  --dx-grid-focus-indicator-width: var(--dx-thick-line);
@@ -63,18 +78,18 @@
63
78
  --dx-rail-content: 3rem;
64
79
  --dx-rail-size: calc(var(--dx-rail-content) + 1px);
65
80
  --dx-rail-item: calc(var(--dx-rail-content) - 1rem);
66
- --dx-rail-action: calc(var(--dx-rail-content) - 0.5rem + 1px);
81
+ --dx-rail-action: calc(var(--dx-rail-content) - 0.5rem);
67
82
  --dx-topbar-size: var(--dx-rail-size);
68
- --dx-toolbar-size: var(--dx-rail-content);
69
- --dx-statusbar-size: var(--dx-rail-content);
70
- --dx-nav-sidebar-size: 23rem;
83
+ --dx-toolbar-size: var(--dx-rail-action);
84
+ --dx-statusbar-size: var(--dx-rail-item);
85
+ --dx-nav-sidebar-size: 350px;
71
86
  --dx-complementary-sidebar-size: 25rem;
72
87
  --dx-drawer-size: 50dvh;
73
- --dx-l0-size: 74px;
88
+ --dx-l0-size: 72px;
74
89
  --dx-l0-avatar-size: 3rem;
75
90
  --dx-l1-size: calc(var(--dx-nav-sidebar-size) - var(--dx-l0-size));
76
91
  --dx-r0-size: var(--dx-rail-size);
77
- --dx-r1-size: calc(var(--dx-complementary-sidebar-size) - var(--dx-r0-size));
92
+ --dx-r1-size: calc(var(--dx-complementary-sidebar-size) - var(--dx-r0-size) - 1px);
78
93
  }
79
94
  :root {
80
95
  --dx-calc-auto: auto;
@@ -95,7 +110,7 @@
95
110
  }
96
111
 
97
112
  /* src/css/theme/styles.css */
98
- @theme { --color-info-fill: var(--color-cyan-fill); --color-info-surface: var(--color-cyan-surface); --color-info-surface-text: var(--color-cyan-surface-text); --color-info-text: var(--color-cyan-text); --color-info-border: var(--color-cyan-border); --color-success-fill: var(--color-emerald-fill); --color-success-surface: var(--color-emerald-surface); --color-success-surface-text: var(--color-emerald-surface-text); --color-success-text: var(--color-emerald-text); --color-success-border: var(--color-emerald-border); --color-warning-fill: var(--color-amber-fill); --color-warning-surface: var(--color-amber-surface); --color-warning-surface-text: var(--color-amber-surface-text); --color-warning-text: var(--color-amber-text); --color-warning-border: var(--color-amber-border); --color-error-fill: var(--color-rose-fill); --color-error-surface: var(--color-rose-surface); --color-error-surface-text: var(--color-rose-surface-text); --color-error-text: var(--color-rose-text); --color-error-border: var(--color-rose-border); --color-neutral-fill: light-dark(var(--color-neutral-300), var(--color-neutral-700)); --color-neutral-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-neutral-surface-text: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-neutral-text: light-dark(var(--color-neutral-700), var(--color-neutral-300)); --color-neutral-border: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-red-fill: light-dark(var(--color-red-300), var(--color-red-700)); --color-red-surface: light-dark(var(--color-red-200), var(--color-red-800)); --color-red-surface-text: light-dark(var(--color-red-800), var(--color-red-200)); --color-red-text: light-dark(var(--color-red-700), var(--color-red-300)); --color-red-border: light-dark(var(--color-red-400), var(--color-red-600)); --color-orange-fill: light-dark(var(--color-orange-300), var(--color-orange-700)); --color-orange-surface: light-dark(var(--color-orange-200), var(--color-orange-800)); --color-orange-surface-text: light-dark(var(--color-orange-800), var(--color-orange-200)); --color-orange-text: light-dark(var(--color-orange-700), var(--color-orange-300)); --color-orange-border: light-dark(var(--color-orange-400), var(--color-orange-600)); --color-amber-fill: light-dark(var(--color-amber-300), var(--color-amber-700)); --color-amber-surface: light-dark(var(--color-amber-200), var(--color-amber-800)); --color-amber-surface-text: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-amber-text: light-dark(var(--color-amber-700), var(--color-amber-300)); --color-amber-border: light-dark(var(--color-amber-400), var(--color-amber-600)); --color-yellow-fill: light-dark(var(--color-yellow-300), var(--color-yellow-700)); --color-yellow-surface: light-dark(var(--color-yellow-200), var(--color-yellow-800)); --color-yellow-surface-text: light-dark(var(--color-yellow-800), var(--color-yellow-200)); --color-yellow-text: light-dark(var(--color-yellow-700), var(--color-yellow-300)); --color-yellow-border: light-dark(var(--color-yellow-400), var(--color-yellow-600)); --color-lime-fill: light-dark(var(--color-lime-300), var(--color-lime-700)); --color-lime-surface: light-dark(var(--color-lime-200), var(--color-lime-800)); --color-lime-surface-text: light-dark(var(--color-lime-800), var(--color-lime-200)); --color-lime-text: light-dark(var(--color-lime-700), var(--color-lime-300)); --color-lime-border: light-dark(var(--color-lime-400), var(--color-lime-600)); --color-green-fill: light-dark(var(--color-green-300), var(--color-green-700)); --color-green-surface: light-dark(var(--color-green-200), var(--color-green-800)); --color-green-surface-text: light-dark(var(--color-green-800), var(--color-green-200)); --color-green-text: light-dark(var(--color-green-700), var(--color-green-300)); --color-green-border: light-dark(var(--color-green-400), var(--color-green-600)); --color-emerald-fill: light-dark(var(--color-emerald-300), var(--color-emerald-700)); --color-emerald-surface: light-dark(var(--color-emerald-200), var(--color-emerald-800)); --color-emerald-surface-text: light-dark(var(--color-emerald-800), var(--color-emerald-200)); --color-emerald-text: light-dark(var(--color-emerald-700), var(--color-emerald-300)); --color-emerald-border: light-dark(var(--color-emerald-400), var(--color-emerald-600)); --color-teal-fill: light-dark(var(--color-teal-300), var(--color-teal-700)); --color-teal-surface: light-dark(var(--color-teal-200), var(--color-teal-800)); --color-teal-surface-text: light-dark(var(--color-teal-800), var(--color-teal-200)); --color-teal-text: light-dark(var(--color-teal-700), var(--color-teal-300)); --color-teal-border: light-dark(var(--color-teal-400), var(--color-teal-600)); --color-cyan-fill: light-dark(var(--color-cyan-300), var(--color-cyan-700)); --color-cyan-surface: light-dark(var(--color-cyan-200), var(--color-cyan-800)); --color-cyan-surface-text: light-dark(var(--color-cyan-800), var(--color-cyan-200)); --color-cyan-text: light-dark(var(--color-cyan-700), var(--color-cyan-300)); --color-cyan-border: light-dark(var(--color-cyan-400), var(--color-cyan-600)); --color-sky-fill: light-dark(var(--color-sky-300), var(--color-sky-700)); --color-sky-surface: light-dark(var(--color-sky-200), var(--color-sky-800)); --color-sky-surface-text: light-dark(var(--color-sky-800), var(--color-sky-200)); --color-sky-text: light-dark(var(--color-sky-700), var(--color-sky-300)); --color-sky-border: light-dark(var(--color-sky-400), var(--color-sky-600)); --color-blue-fill: light-dark(var(--color-blue-300), var(--color-blue-700)); --color-blue-surface: light-dark(var(--color-blue-200), var(--color-blue-800)); --color-blue-surface-text: light-dark(var(--color-blue-800), var(--color-blue-200)); --color-blue-text: light-dark(var(--color-blue-700), var(--color-blue-300)); --color-blue-border: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-indigo-fill: light-dark(var(--color-indigo-300), var(--color-indigo-700)); --color-indigo-surface: light-dark(var(--color-indigo-200), var(--color-indigo-800)); --color-indigo-surface-text: light-dark(var(--color-indigo-800), var(--color-indigo-200)); --color-indigo-text: light-dark(var(--color-indigo-700), var(--color-indigo-300)); --color-indigo-border: light-dark(var(--color-indigo-400), var(--color-indigo-600)); --color-violet-fill: light-dark(var(--color-violet-300), var(--color-violet-700)); --color-violet-surface: light-dark(var(--color-violet-200), var(--color-violet-800)); --color-violet-surface-text: light-dark(var(--color-violet-800), var(--color-violet-200)); --color-violet-text: light-dark(var(--color-violet-700), var(--color-violet-300)); --color-violet-border: light-dark(var(--color-violet-400), var(--color-violet-600)); --color-purple-fill: light-dark(var(--color-purple-300), var(--color-purple-700)); --color-purple-surface: light-dark(var(--color-purple-200), var(--color-purple-800)); --color-purple-surface-text: light-dark(var(--color-purple-800), var(--color-purple-200)); --color-purple-text: light-dark(var(--color-purple-700), var(--color-purple-300)); --color-purple-border: light-dark(var(--color-purple-400), var(--color-purple-600)); --color-fuchsia-fill: light-dark(var(--color-fuchsia-300), var(--color-fuchsia-700)); --color-fuchsia-surface: light-dark(var(--color-fuchsia-200), var(--color-fuchsia-800)); --color-fuchsia-surface-text: light-dark(var(--color-fuchsia-800), var(--color-fuchsia-200)); --color-fuchsia-text: light-dark(var(--color-fuchsia-700), var(--color-fuchsia-300)); --color-fuchsia-border: light-dark(var(--color-fuchsia-400), var(--color-fuchsia-600)); --color-pink-fill: light-dark(var(--color-pink-300), var(--color-pink-700)); --color-pink-surface: light-dark(var(--color-pink-200), var(--color-pink-800)); --color-pink-surface-text: light-dark(var(--color-pink-800), var(--color-pink-200)); --color-pink-text: light-dark(var(--color-pink-700), var(--color-pink-300)); --color-pink-border: light-dark(var(--color-pink-400), var(--color-pink-600)); --color-rose-fill: light-dark(var(--color-rose-300), var(--color-rose-700)); --color-rose-surface: light-dark(var(--color-rose-200), var(--color-rose-800)); --color-rose-surface-text: light-dark(var(--color-rose-800), var(--color-rose-200)); --color-rose-text: light-dark(var(--color-rose-700), var(--color-rose-300)); --color-rose-border: light-dark(var(--color-rose-400), var(--color-rose-600)); }
113
+ @theme { --color-info-fill: var(--color-cyan-fill); --color-info-surface: var(--color-cyan-surface); --color-info-foreground: var(--color-cyan-foreground); --color-info-text: var(--color-cyan-text); --color-info-border: var(--color-cyan-border); --color-success-fill: var(--color-emerald-fill); --color-success-surface: var(--color-emerald-surface); --color-success-foreground: var(--color-emerald-foreground); --color-success-text: var(--color-emerald-text); --color-success-border: var(--color-emerald-border); --color-warning-fill: var(--color-amber-fill); --color-warning-surface: var(--color-amber-surface); --color-warning-foreground: var(--color-amber-foreground); --color-warning-text: var(--color-amber-text); --color-warning-border: var(--color-amber-border); --color-error-fill: var(--color-rose-fill); --color-error-surface: var(--color-rose-surface); --color-error-foreground: var(--color-rose-foreground); --color-error-text: var(--color-rose-text); --color-error-border: var(--color-rose-border); --color-neutral-fill: light-dark(var(--color-neutral-300), var(--color-neutral-700)); --color-neutral-surface: light-dark(var(--color-neutral-200), var(--color-neutral-800)); --color-neutral-foreground: light-dark(var(--color-neutral-800), var(--color-neutral-200)); --color-neutral-text: light-dark(var(--color-neutral-700), var(--color-neutral-300)); --color-neutral-border: light-dark(var(--color-neutral-400), var(--color-neutral-600)); --color-red-fill: light-dark(var(--color-red-300), var(--color-red-700)); --color-red-surface: light-dark(var(--color-red-200), var(--color-red-800)); --color-red-foreground: light-dark(var(--color-red-800), var(--color-red-200)); --color-red-text: light-dark(var(--color-red-700), var(--color-red-300)); --color-red-border: light-dark(var(--color-red-400), var(--color-red-600)); --color-orange-fill: light-dark(var(--color-orange-300), var(--color-orange-700)); --color-orange-surface: light-dark(var(--color-orange-200), var(--color-orange-800)); --color-orange-foreground: light-dark(var(--color-orange-800), var(--color-orange-200)); --color-orange-text: light-dark(var(--color-orange-700), var(--color-orange-300)); --color-orange-border: light-dark(var(--color-orange-400), var(--color-orange-600)); --color-amber-fill: light-dark(var(--color-amber-300), var(--color-amber-700)); --color-amber-surface: light-dark(var(--color-amber-200), var(--color-amber-800)); --color-amber-foreground: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-amber-text: light-dark(var(--color-amber-700), var(--color-amber-300)); --color-amber-border: light-dark(var(--color-amber-400), var(--color-amber-600)); --color-yellow-fill: light-dark(var(--color-yellow-300), var(--color-yellow-700)); --color-yellow-surface: light-dark(var(--color-yellow-200), var(--color-yellow-800)); --color-yellow-foreground: light-dark(var(--color-yellow-800), var(--color-yellow-200)); --color-yellow-text: light-dark(var(--color-yellow-700), var(--color-yellow-300)); --color-yellow-border: light-dark(var(--color-yellow-400), var(--color-yellow-600)); --color-lime-fill: light-dark(var(--color-lime-300), var(--color-lime-700)); --color-lime-surface: light-dark(var(--color-lime-200), var(--color-lime-800)); --color-lime-foreground: light-dark(var(--color-lime-800), var(--color-lime-200)); --color-lime-text: light-dark(var(--color-lime-700), var(--color-lime-300)); --color-lime-border: light-dark(var(--color-lime-400), var(--color-lime-600)); --color-green-fill: light-dark(var(--color-green-300), var(--color-green-700)); --color-green-surface: light-dark(var(--color-green-200), var(--color-green-800)); --color-green-foreground: light-dark(var(--color-green-800), var(--color-green-200)); --color-green-text: light-dark(var(--color-green-700), var(--color-green-300)); --color-green-border: light-dark(var(--color-green-400), var(--color-green-600)); --color-emerald-fill: light-dark(var(--color-emerald-300), var(--color-emerald-700)); --color-emerald-surface: light-dark(var(--color-emerald-200), var(--color-emerald-800)); --color-emerald-foreground: light-dark(var(--color-emerald-800), var(--color-emerald-200)); --color-emerald-text: light-dark(var(--color-emerald-700), var(--color-emerald-300)); --color-emerald-border: light-dark(var(--color-emerald-400), var(--color-emerald-600)); --color-teal-fill: light-dark(var(--color-teal-300), var(--color-teal-700)); --color-teal-surface: light-dark(var(--color-teal-200), var(--color-teal-800)); --color-teal-foreground: light-dark(var(--color-teal-800), var(--color-teal-200)); --color-teal-text: light-dark(var(--color-teal-700), var(--color-teal-300)); --color-teal-border: light-dark(var(--color-teal-400), var(--color-teal-600)); --color-cyan-fill: light-dark(var(--color-cyan-300), var(--color-cyan-700)); --color-cyan-surface: light-dark(var(--color-cyan-200), var(--color-cyan-800)); --color-cyan-foreground: light-dark(var(--color-cyan-800), var(--color-cyan-200)); --color-cyan-text: light-dark(var(--color-cyan-700), var(--color-cyan-300)); --color-cyan-border: light-dark(var(--color-cyan-400), var(--color-cyan-600)); --color-sky-fill: light-dark(var(--color-sky-300), var(--color-sky-700)); --color-sky-surface: light-dark(var(--color-sky-200), var(--color-sky-800)); --color-sky-foreground: light-dark(var(--color-sky-800), var(--color-sky-200)); --color-sky-text: light-dark(var(--color-sky-700), var(--color-sky-300)); --color-sky-border: light-dark(var(--color-sky-400), var(--color-sky-600)); --color-blue-fill: light-dark(var(--color-blue-300), var(--color-blue-700)); --color-blue-surface: light-dark(var(--color-blue-200), var(--color-blue-800)); --color-blue-foreground: light-dark(var(--color-blue-800), var(--color-blue-200)); --color-blue-text: light-dark(var(--color-blue-700), var(--color-blue-300)); --color-blue-border: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-indigo-fill: light-dark(var(--color-indigo-300), var(--color-indigo-700)); --color-indigo-surface: light-dark(var(--color-indigo-200), var(--color-indigo-800)); --color-indigo-foreground: light-dark(var(--color-indigo-800), var(--color-indigo-200)); --color-indigo-text: light-dark(var(--color-indigo-700), var(--color-indigo-300)); --color-indigo-border: light-dark(var(--color-indigo-400), var(--color-indigo-600)); --color-violet-fill: light-dark(var(--color-violet-300), var(--color-violet-700)); --color-violet-surface: light-dark(var(--color-violet-200), var(--color-violet-800)); --color-violet-foreground: light-dark(var(--color-violet-800), var(--color-violet-200)); --color-violet-text: light-dark(var(--color-violet-700), var(--color-violet-300)); --color-violet-border: light-dark(var(--color-violet-400), var(--color-violet-600)); --color-purple-fill: light-dark(var(--color-purple-300), var(--color-purple-700)); --color-purple-surface: light-dark(var(--color-purple-200), var(--color-purple-800)); --color-purple-foreground: light-dark(var(--color-purple-800), var(--color-purple-200)); --color-purple-text: light-dark(var(--color-purple-700), var(--color-purple-300)); --color-purple-border: light-dark(var(--color-purple-400), var(--color-purple-600)); --color-fuchsia-fill: light-dark(var(--color-fuchsia-300), var(--color-fuchsia-700)); --color-fuchsia-surface: light-dark(var(--color-fuchsia-200), var(--color-fuchsia-800)); --color-fuchsia-foreground: light-dark(var(--color-fuchsia-800), var(--color-fuchsia-200)); --color-fuchsia-text: light-dark(var(--color-fuchsia-700), var(--color-fuchsia-300)); --color-fuchsia-border: light-dark(var(--color-fuchsia-400), var(--color-fuchsia-600)); --color-pink-fill: light-dark(var(--color-pink-300), var(--color-pink-700)); --color-pink-surface: light-dark(var(--color-pink-200), var(--color-pink-800)); --color-pink-foreground: light-dark(var(--color-pink-800), var(--color-pink-200)); --color-pink-text: light-dark(var(--color-pink-700), var(--color-pink-300)); --color-pink-border: light-dark(var(--color-pink-400), var(--color-pink-600)); --color-rose-fill: light-dark(var(--color-rose-300), var(--color-rose-700)); --color-rose-surface: light-dark(var(--color-rose-200), var(--color-rose-800)); --color-rose-foreground: light-dark(var(--color-rose-800), var(--color-rose-200)); --color-rose-text: light-dark(var(--color-rose-700), var(--color-rose-300)); --color-rose-border: light-dark(var(--color-rose-400), var(--color-rose-600)); }
99
114
 
100
115
  /* src/css/theme/text.css */
101
116
  @theme { --font-body: "Inter Variable", ui-sans-serif, system-ui, sans-serif; --font-mono: "JetBrains Mono Variable", ui-monospace, "Cascadia Code", "Source Code Pro", monospace; --text-xs: 0.75rem; --text-xs--line-height: 1rem; --text-sm: 0.875rem; --text-sm--line-height: 1.25rem; --text-base: 1rem; --text-base--line-height: 1.5rem; --text-lg: 1.125rem; --text-lg--line-height: 1.75rem; --text-xl: 1.25rem; --text-xl--line-height: 1.75rem; --text-2xl: 1.5rem; --text-2xl--line-height: 2rem; --text-3xl: 1.875rem; --text-3xl--line-height: 2.25rem; --text-4xl: 2.25rem; --text-4xl--line-height: 2.5rem; --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; }
@@ -128,9 +143,9 @@
128
143
  html .dark,
129
144
  .sb-show-main {
130
145
  background-color: var(--color-base-surface);
131
- color: var(--color-base-surface-text);
146
+ color: var(--color-base-foreground);
132
147
  --surface-bg: var(--color-base-surface);
133
- --surface-text: var(--color-base-surface-text);
148
+ --foreground: var(--color-base-foreground);
134
149
  --description-text: var(--color-description);
135
150
  }
136
151
  }
@@ -247,7 +262,8 @@
247
262
  /* src/css/components/button.css */
248
263
  @layer dx-components {
249
264
  .dx-button {
250
- @apply font-medium shrink-0 inline-flex select-none items-center justify-center overflow-hidden transition-colors duration-100 ease-linear bg-input-surface min-h-[2.5rem] px-3;
265
+ @apply shrink-0 inline-flex select-none items-center justify-center overflow-hidden min-h-[2.5rem] px-3;
266
+ @apply font-medium transition-colors duration-100 ease-linear bg-input-surface;
251
267
  &[aria-pressed=true],
252
268
  &[aria-checked=true] {
253
269
  @apply text-accent-text bg-attention-surface;
@@ -280,7 +296,7 @@
280
296
  @apply bg-hover-surface;
281
297
  }
282
298
  &[data-variant=primary] {
283
- @apply text-accent-surface-text bg-accent-surface;
299
+ @apply text-accent-foreground bg-accent-surface;
284
300
  &:hover,
285
301
  &[aria-pressed=true],
286
302
  &[aria-checked=true] &[data-state=open] {
@@ -288,7 +304,7 @@
288
304
  }
289
305
  }
290
306
  &[data-variant=destructive] {
291
- @apply text-accent-surface-text bg-rose-fill;
307
+ @apply text-accent-foreground bg-rose-fill;
292
308
  &:hover,
293
309
  &[aria-pressed=true],
294
310
  &[aria-checked=true] &[data-state=open] {
@@ -333,7 +349,7 @@
333
349
  }
334
350
  }
335
351
  .dx-checkbox {
336
- @apply w-4 h-4 overflow-hidden shadow-inner transition-colors bg-un-accent accent-un-accent text-accent-surface-text shrink-0 inline-grid place-items-center rounded-xs;
352
+ @apply w-4 h-4 overflow-hidden shadow-inner transition-colors bg-un-accent accent-un-accent text-accent-foreground shrink-0 inline-grid place-items-center rounded-xs;
337
353
  }
338
354
  .dx-checkbox--switch {
339
355
  @apply inline-block appearance-none relative shrink-0 h-5 w-8;
@@ -416,7 +432,7 @@
416
432
  }
417
433
  }
418
434
 
419
- /* src/css/components/focus-ring.css */
435
+ /* src/css/components/focus.css */
420
436
  @layer dx-components {
421
437
  .dx-focus-ring,
422
438
  .dx-focus-ring-inset {
@@ -426,9 +442,9 @@
426
442
  @apply outline-hidden;
427
443
  }
428
444
  &:focus-visible {
429
- @apply ring-focus-line ring-offset-focus-offset z-[1] ring-[var(--color-neutral-focus-indicator)];
445
+ @apply ring-focus-line ring-offset-focus-offset z-[1] ring-[var(--color-focus-ring-subtle)];
430
446
  &[data-variant=primary] {
431
- @apply ring-[var(--color-accent-focus-indicator)];
447
+ @apply ring-[var(--color-focus-ring)];
432
448
  }
433
449
  &:hover {
434
450
  @apply outline-hidden;
@@ -439,6 +455,12 @@
439
455
  }
440
456
  }
441
457
  }
458
+ .dx-focus-ring-none {
459
+ &:focus,
460
+ &:focus-visible {
461
+ @apply outline-hidden! ring-0!;
462
+ }
463
+ }
442
464
  .dx-focus-ring-always,
443
465
  .dx-focus-ring-inset-always {
444
466
  &:not([disabled]),
@@ -447,9 +469,9 @@
447
469
  @apply outline-hidden;
448
470
  }
449
471
  &:focus {
450
- @apply ring-focus-line ring-offset-focus-offset z-[1] ring-[var(--color-neutral-focus-indicator)];
472
+ @apply ring-focus-line ring-offset-focus-offset z-[1] ring-[var(--color-focus-ring-subtle)];
451
473
  &[data-variant=primary] {
452
- @apply ring-[var(--color-accent-focus-indicator)];
474
+ @apply ring-[var(--color-focus-ring)];
453
475
  }
454
476
  &:hover {
455
477
  @apply outline-hidden;
@@ -476,9 +498,9 @@
476
498
  .dx-focus-ring-group:focus-visible .dx-focus-ring-group-indicator,
477
499
  .dx-focus-ring-group-x:focus-visible .dx-focus-ring-group-x-indicator,
478
500
  .dx-focus-ring-group-y:focus-visible .dx-focus-ring-group-y-indicator {
479
- @apply ring-focus-line ring-offset-focus-offset ring-[var(--color-neutral-focus-indicator)];
501
+ @apply ring-focus-line ring-offset-focus-offset ring-[var(--color-focus-ring-subtle)];
480
502
  &[data-variant=primary] {
481
- @apply ring-[var(--color-accent-focus-indicator)];
503
+ @apply ring-[var(--color-focus-ring)];
482
504
  }
483
505
  &:hover {
484
506
  @apply outline-hidden;
@@ -490,9 +512,9 @@
490
512
  .dx-focus-ring-group-always:focus .dx-focus-ring-group-indicator,
491
513
  .dx-focus-ring-group-x-always:focus .dx-focus-ring-group-x-indicator,
492
514
  .dx-focus-ring-group-y-always:focus .dx-focus-ring-group-y-indicator {
493
- @apply ring-focus-line ring-offset-focus-offset ring-[var(--color-neutral-focus-indicator)];
515
+ @apply ring-focus-line ring-offset-focus-offset ring-[var(--color-focus-ring-subtle)];
494
516
  &[data-variant=primary] {
495
- @apply ring-[var(--color-accent-focus-indicator)];
517
+ @apply ring-[var(--color-focus-ring)];
496
518
  }
497
519
  &:hover {
498
520
  @apply outline-hidden;
@@ -530,10 +552,10 @@
530
552
  }
531
553
  &:focus-visible {
532
554
  &::after {
533
- @apply ring-focus-line ring-offset-focus-offset ring-inset z-[1] ring-[var(--color-neutral-focus-indicator)];
555
+ @apply ring-focus-line ring-offset-focus-offset ring-inset z-[1] ring-[var(--color-focus-ring-subtle)];
534
556
  }
535
557
  &[data-variant=primary]::after {
536
- @apply ring-[var(--color-accent-focus-indicator)];
558
+ @apply ring-[var(--color-focus-ring)];
537
559
  }
538
560
  &:hover {
539
561
  @apply outline-hidden;
@@ -557,10 +579,10 @@
557
579
  }
558
580
  &:focus {
559
581
  &::after {
560
- @apply ring-focus-line ring-offset-focus-offset ring-inset z-[1] ring-[var(--color-neutral-focus-indicator)];
582
+ @apply ring-focus-line ring-offset-focus-offset ring-inset z-[1] ring-[var(--color-focus-ring-subtle)];
561
583
  }
562
584
  &[data-variant=primary]::after {
563
- @apply ring-[var(--color-accent-focus-indicator)];
585
+ @apply ring-[var(--color-focus-ring)];
564
586
  }
565
587
  &:hover {
566
588
  @apply outline-hidden;
@@ -603,97 +625,110 @@
603
625
  }
604
626
  }
605
627
  }
628
+ .dx-focus-subdued {
629
+ @apply focus:outline-hidden focus-visible:outline-hidden focus:ring-0 ring-0 focus:border-0 border-0;
630
+ }
631
+ .dx-focus-static {
632
+ @apply ring-2 ring-offset-0 ring-primary-300 ring-offset-white dark:ring-primary-400 dark:ring-offset-black;
633
+ }
634
+ }
635
+
636
+ /* src/css/components/icon.css */
637
+ @layer dx-components {
638
+ .dx-icon-inline {
639
+ @apply inline-block align-[-0.125em];
640
+ }
606
641
  }
607
642
 
608
643
  /* src/css/components/panel.css */
609
644
  @layer dx-components {
610
- .dx-panel[data-hue=neutral],
645
+ [data-hue=neutral] .dx-panel,
611
646
  .dx-panel--neutral {
612
- @apply bg-neutral-surface text-neutral-surface-text border-neutral-border;
647
+ @apply bg-neutral-surface text-neutral-foreground border-neutral-border;
613
648
  }
614
- .dx-panel[data-hue=red],
649
+ [data-hue=red] .dx-panel,
615
650
  .dx-panel--red {
616
- @apply bg-red-surface text-red-surface-text border-red-border;
651
+ @apply bg-red-surface text-red-foreground border-red-border;
617
652
  }
618
- .dx-panel[data-hue=orange],
653
+ [data-hue=orange] .dx-panel,
619
654
  .dx-panel--orange {
620
- @apply bg-orange-surface text-orange-surface-text border-orange-border;
655
+ @apply bg-orange-surface text-orange-foreground border-orange-border;
621
656
  }
622
- .dx-panel[data-hue=amber],
657
+ [data-hue=amber] .dx-panel,
623
658
  .dx-panel--amber {
624
- @apply bg-amber-surface text-amber-surface-text border-amber-border;
659
+ @apply bg-amber-surface text-amber-foreground border-amber-border;
625
660
  }
626
- .dx-panel[data-hue=yellow],
661
+ [data-hue=yellow] .dx-panel,
627
662
  .dx-panel--yellow {
628
- @apply bg-yellow-surface text-yellow-surface-text border-yellow-border;
663
+ @apply bg-yellow-surface text-yellow-foreground border-yellow-border;
629
664
  }
630
- .dx-panel[data-hue=lime],
665
+ [data-hue=lime] .dx-panel,
631
666
  .dx-panel--lime {
632
- @apply bg-lime-surface text-lime-surface-text border-lime-border;
667
+ @apply bg-lime-surface text-lime-foreground border-lime-border;
633
668
  }
634
- .dx-panel[data-hue=green],
669
+ [data-hue=green] .dx-panel,
635
670
  .dx-panel--green {
636
- @apply bg-green-surface text-green-surface-text border-green-border;
671
+ @apply bg-green-surface text-green-foreground border-green-border;
637
672
  }
638
- .dx-panel[data-hue=emerald],
673
+ [data-hue=emerald] .dx-panel,
639
674
  .dx-panel--emerald {
640
- @apply bg-emerald-surface text-emerald-surface-text border-emerald-border;
675
+ @apply bg-emerald-surface text-emerald-foreground border-emerald-border;
641
676
  }
642
- .dx-panel[data-hue=teal],
677
+ [data-hue=teal] .dx-panel,
643
678
  .dx-panel--teal {
644
- @apply bg-teal-surface text-teal-surface-text border-teal-border;
679
+ @apply bg-teal-surface text-teal-foreground border-teal-border;
645
680
  }
646
- .dx-panel[data-hue=cyan],
681
+ [data-hue=cyan] .dx-panel,
647
682
  .dx-panel--cyan {
648
- @apply bg-cyan-surface text-cyan-surface-text border-cyan-border;
683
+ @apply bg-cyan-surface text-cyan-foreground border-cyan-border;
649
684
  }
650
- .dx-panel[data-hue=sky],
685
+ [data-hue=sky] .dx-panel,
651
686
  .dx-panel--sky {
652
- @apply bg-sky-surface text-sky-surface-text border-sky-border;
687
+ @apply bg-sky-surface text-sky-foreground border-sky-border;
653
688
  }
654
- .dx-panel[data-hue=blue],
689
+ [data-hue=blue] .dx-panel,
655
690
  .dx-panel--blue {
656
- @apply bg-blue-surface text-blue-surface-text border-blue-border;
691
+ @apply bg-blue-surface text-blue-foreground border-blue-border;
657
692
  }
658
- .dx-panel[data-hue=indigo],
693
+ [data-hue=indigo] .dx-panel,
659
694
  .dx-panel--indigo {
660
- @apply bg-indigo-surface text-indigo-surface-text border-indigo-border;
695
+ @apply bg-indigo-surface text-indigo-foreground border-indigo-border;
661
696
  }
662
- .dx-panel[data-hue=violet],
697
+ [data-hue=violet] .dx-panel,
663
698
  .dx-panel--violet {
664
- @apply bg-violet-surface text-violet-surface-text border-violet-border;
699
+ @apply bg-violet-surface text-violet-foreground border-violet-border;
665
700
  }
666
- .dx-panel[data-hue=purple],
701
+ [data-hue=purple] .dx-panel,
667
702
  .dx-panel--purple {
668
- @apply bg-purple-surface text-purple-surface-text border-purple-border;
703
+ @apply bg-purple-surface text-purple-foreground border-purple-border;
669
704
  }
670
- .dx-panel[data-hue=fuchsia],
705
+ [data-hue=fuchsia] .dx-panel,
671
706
  .dx-panel--fuchsia {
672
- @apply bg-fuchsia-surface text-fuchsia-surface-text border-fuchsia-border;
707
+ @apply bg-fuchsia-surface text-fuchsia-foreground border-fuchsia-border;
673
708
  }
674
- .dx-panel[data-hue=pink],
709
+ [data-hue=pink] .dx-panel,
675
710
  .dx-panel--pink {
676
- @apply bg-pink-surface text-pink-surface-text border-pink-border;
711
+ @apply bg-pink-surface text-pink-foreground border-pink-border;
677
712
  }
678
- .dx-panel[data-hue=rose],
713
+ [data-hue=rose] .dx-panel,
679
714
  .dx-panel--rose {
680
- @apply bg-rose-surface text-rose-surface-text border-rose-border;
715
+ @apply bg-rose-surface text-rose-foreground border-rose-border;
681
716
  }
682
- .dx-panel[data-hue=info],
717
+ [data-hue=info] .dx-panel,
683
718
  .dx-panel--info {
684
- @apply bg-info-surface text-info-surface-text border-info-border;
719
+ @apply bg-info-surface text-info-foreground border-info-border;
685
720
  }
686
- .dx-panel[data-hue=success],
721
+ [data-hue=success] .dx-panel,
687
722
  .dx-panel--success {
688
- @apply bg-success-surface text-success-surface-text border-success-border;
723
+ @apply bg-success-surface text-success-foreground border-success-border;
689
724
  }
690
- .dx-panel[data-hue=warning],
725
+ [data-hue=warning] .dx-panel,
691
726
  .dx-panel--warning {
692
- @apply bg-warning-surface text-warning-surface-text border-warning-border;
727
+ @apply bg-warning-surface text-warning-foreground border-warning-border;
693
728
  }
694
- .dx-panel[data-hue=error],
729
+ [data-hue=error] .dx-panel,
695
730
  .dx-panel--error {
696
- @apply bg-error-surface text-error-surface-text border-error-border;
731
+ @apply bg-error-surface text-error-foreground border-error-border;
697
732
  }
698
733
  }
699
734
 
@@ -724,22 +759,44 @@
724
759
  }
725
760
  }
726
761
 
762
+ /* src/css/components/selected.css */
763
+ @layer dx-components {
764
+ .dx-hover {
765
+ @apply cursor-pointer hover:bg-hover-surface! hover:text-hover-foreground! hover:aria-selected:bg-selected-surface-hover! hover:aria-selected:text-selected-foreground! hover:aria-[current=true]:bg-current-surface-hover! hover:aria-[current=true]:text-current-foreground!;
766
+ }
767
+ .dx-hover-row {
768
+ @apply group-hover/row:bg-hover-surface! group-hover/row:text-hover-foreground! group-hover/row:group-aria-selected/row:bg-selected-surface-hover! group-hover/row:group-aria-selected/row:text-selected-foreground! group-hover/row:group-aria-[current=true]/row:bg-current-surface-hover! group-hover/row:group-aria-[current=true]/row:text-current-foreground!;
769
+ }
770
+ .dx-selected {
771
+ @apply aria-selected:bg-selected-surface! aria-selected:text-selected-foreground! aria-selected:font-semibold aria-selected:tracking-normal transition-[color, font-variation-settings, letter-spacing];
772
+ }
773
+ .dx-current {
774
+ @apply dx-ring-pseudo aria-[current=true]:bg-current-surface! aria-[current=true]:text-current-foreground! aria-[current=true]:after:ring-focus-ring-subtle!;
775
+ }
776
+ .dx-current-row {
777
+ @apply group-aria-[current=true]/row:bg-current-surface! group-aria-[current=true]/row:text-current-foreground!;
778
+ }
779
+ .dx-highlighted {
780
+ @apply data-[highlighted]:bg-current-surface data-[highlighted]:text-current-foreground hover:data-[highlighted]:bg-current-surface-hover;
781
+ }
782
+ }
783
+
727
784
  /* src/css/components/surface.css */
728
785
  @layer dx-components {
729
786
  .dx-base-surface {
730
- @apply bg-base-surface text-base-surface-text;
787
+ @apply bg-base-surface text-base-foreground;
731
788
  --surface-bg: var(--color-base-surface);
732
789
  }
733
790
  .dx-sidebar-surface {
734
- @apply bg-sidebar-surface text-base-surface-text;
791
+ @apply bg-sidebar-surface text-base-foreground;
735
792
  --surface-bg: var(--color-sidebar-surface);
736
793
  }
737
794
  .dx-modal-surface {
738
- @apply bg-modal-surface text-base-surface-text backdrop-blur-md;
795
+ @apply bg-modal-surface text-base-foreground backdrop-blur-md;
739
796
  --surface-bg: var(--color-modal-surface);
740
797
  }
741
798
  .dx-attention-surface {
742
- @apply bg-attention-surface text-base-surface-text;
799
+ @apply bg-attention-surface text-base-foreground;
743
800
  --surface-bg: var(--color-attention-surface);
744
801
  }
745
802
  }
@@ -752,98 +809,99 @@
752
809
  user-select: none;
753
810
  }
754
811
  .dx-tag--anchor {
755
- @apply inline cursor-pointer -mx-[4px] px-[3px] py-0.5 border border-separator rounded-xs bg-group-surface transition-colors;
812
+ @apply inline cursor-pointer -mx-[3px] px-[2px] py-0.5 border rounded-xs transition-colors;
813
+ @apply bg-group-surface text-sky-foreground border-sky-border;
756
814
  &:hover {
757
815
  @apply bg-hover-surface;
758
816
  }
759
817
  }
760
818
  .dx-tag[data-hue=neutral],
761
819
  .dx-tag--neutral {
762
- @apply bg-neutral-surface text-neutral-surface-text;
820
+ @apply bg-neutral-surface text-neutral-foreground;
763
821
  }
764
822
  .dx-tag[data-hue=red],
765
823
  .dx-tag--red {
766
- @apply bg-red-surface text-red-surface-text;
824
+ @apply bg-red-surface text-red-foreground;
767
825
  }
768
826
  .dx-tag[data-hue=orange],
769
827
  .dx-tag--orange {
770
- @apply bg-orange-surface text-orange-surface-text;
828
+ @apply bg-orange-surface text-orange-foreground;
771
829
  }
772
830
  .dx-tag[data-hue=amber],
773
831
  .dx-tag--amber {
774
- @apply bg-amber-surface text-amber-surface-text;
832
+ @apply bg-amber-surface text-amber-foreground;
775
833
  }
776
834
  .dx-tag[data-hue=yellow],
777
835
  .dx-tag--yellow {
778
- @apply bg-yellow-surface text-yellow-surface-text;
836
+ @apply bg-yellow-surface text-yellow-foreground;
779
837
  }
780
838
  .dx-tag[data-hue=lime],
781
839
  .dx-tag--lime {
782
- @apply bg-lime-surface text-lime-surface-text;
840
+ @apply bg-lime-surface text-lime-foreground;
783
841
  }
784
842
  .dx-tag[data-hue=green],
785
843
  .dx-tag--green {
786
- @apply bg-green-surface text-green-surface-text;
844
+ @apply bg-green-surface text-green-foreground;
787
845
  }
788
846
  .dx-tag[data-hue=emerald],
789
847
  .dx-tag--emerald {
790
- @apply bg-emerald-surface text-emerald-surface-text;
848
+ @apply bg-emerald-surface text-emerald-foreground;
791
849
  }
792
850
  .dx-tag[data-hue=teal],
793
851
  .dx-tag--teal {
794
- @apply bg-teal-surface text-teal-surface-text;
852
+ @apply bg-teal-surface text-teal-foreground;
795
853
  }
796
854
  .dx-tag[data-hue=cyan],
797
855
  .dx-tag--cyan {
798
- @apply bg-cyan-surface text-cyan-surface-text;
856
+ @apply bg-cyan-surface text-cyan-foreground;
799
857
  }
800
858
  .dx-tag[data-hue=sky],
801
859
  .dx-tag--sky {
802
- @apply bg-sky-surface text-sky-surface-text;
860
+ @apply bg-sky-surface text-sky-foreground;
803
861
  }
804
862
  .dx-tag[data-hue=blue],
805
863
  .dx-tag--blue {
806
- @apply bg-blue-surface text-blue-surface-text;
864
+ @apply bg-blue-surface text-blue-foreground;
807
865
  }
808
866
  .dx-tag[data-hue=indigo],
809
867
  .dx-tag--indigo {
810
- @apply bg-indigo-surface text-indigo-surface-text;
868
+ @apply bg-indigo-surface text-indigo-foreground;
811
869
  }
812
870
  .dx-tag[data-hue=violet],
813
871
  .dx-tag--violet {
814
- @apply bg-violet-surface text-violet-surface-text;
872
+ @apply bg-violet-surface text-violet-foreground;
815
873
  }
816
874
  .dx-tag[data-hue=purple],
817
875
  .dx-tag--purple {
818
- @apply bg-purple-surface text-purple-surface-text;
876
+ @apply bg-purple-surface text-purple-foreground;
819
877
  }
820
878
  .dx-tag[data-hue=fuchsia],
821
879
  .dx-tag--fuchsia {
822
- @apply bg-fuchsia-surface text-fuchsia-surface-text;
880
+ @apply bg-fuchsia-surface text-fuchsia-foreground;
823
881
  }
824
882
  .dx-tag[data-hue=pink],
825
883
  .dx-tag--pink {
826
- @apply bg-pink-surface text-pink-surface-text;
884
+ @apply bg-pink-surface text-pink-foreground;
827
885
  }
828
886
  .dx-tag[data-hue=rose],
829
887
  .dx-tag--rose {
830
- @apply bg-rose-surface text-rose-surface-text;
888
+ @apply bg-rose-surface text-rose-foreground;
831
889
  }
832
890
  .dx-tag[data-hue=info],
833
891
  .dx-tag--info {
834
- @apply bg-cyan-surface text-cyan-surface-text;
892
+ @apply bg-cyan-surface text-cyan-foreground;
835
893
  }
836
894
  .dx-tag[data-hue=success],
837
895
  .dx-tag--success {
838
- @apply bg-emerald-surface text-emerald-surface-text;
896
+ @apply bg-emerald-surface text-emerald-foreground;
839
897
  }
840
898
  .dx-tag[data-hue=warning],
841
899
  .dx-tag--warning {
842
- @apply bg-amber-surface text-amber-surface-text;
900
+ @apply bg-amber-surface text-amber-foreground;
843
901
  }
844
902
  .dx-tag[data-hue=error],
845
903
  .dx-tag--error {
846
- @apply bg-rose-surface text-rose-surface-text;
904
+ @apply bg-rose-surface text-rose-foreground;
847
905
  }
848
906
  }
849
907
 
@@ -956,9 +1014,6 @@
956
1014
  inset-block-end: 0;
957
1015
  z-index: 0;
958
1016
  }
959
- .dx-main-mobile-layout {
960
- @apply absolute inset-0 overflow-hidden flex flex-col;
961
- }
962
1017
  .dx-main-content-padding-transitions {
963
1018
  transition-duration: 200ms;
964
1019
  transition-timing-function: cubic-bezier(0.4, 0, 0.6, 1);
@@ -1153,11 +1208,14 @@
1153
1208
  .dx-size-container {
1154
1209
  container-type: size;
1155
1210
  }
1156
- .dx-container {
1157
- @apply flex-1 min-h-0 min-w-0 h-full w-full;
1211
+ .dx-inline-size-container {
1212
+ container-type: inline-size;
1158
1213
  }
1159
- .dx-article {
1160
- @apply mx-auto w-full max-w-article-max-width;
1214
+ .dx-document {
1215
+ @apply mx-auto w-full max-w-document-max-width;
1216
+ }
1217
+ .dx-card {
1218
+ @apply flex flex-col w-full;
1161
1219
  }
1162
1220
  .dx-card-square {
1163
1221
  inline-size: min(min(var(--radix-popper-available-width), var(--spacing-card-max-width)), min(var(--radix-popper-available-height), 100dvh));
@@ -1462,10 +1520,24 @@
1462
1520
  }
1463
1521
 
1464
1522
  /* src/css/utilities.css */
1465
- @utility dx-icon-inline { @apply inline-block align-[-0.125em]; }
1523
+ @utility dx-expander { @apply flex-1 min-h-0 min-w-0 h-full w-full; }
1524
+ @utility dx-container { @apply dx-expander overflow-hidden; }
1525
+ @utility dx-column { @apply flex-1 min-w-0 w-full; }
1526
+ @utility dx-fullscreen { @apply absolute inset-0; }
1527
+ @utility dx-slot-warning { @apply border border-rose-500 border-dashed; }
1528
+ @utility dx-ring-pseudo { @apply relative after:content-[""] after:absolute after:inset-0 after:rounded-[inherit] after:pointer-events-none after:ring after:ring-inset after:ring-transparent; }
1529
+ @utility shimmer-text { mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.4) 100%); -webkit-mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 1) 50%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.4) 100%); mask-size: 200% 100%; -webkit-mask-size: 200% 100%; mask-repeat: repeat-x; -webkit-mask-repeat: repeat-x; animation: shimmer-text 2s linear infinite; }
1530
+ @media (prefers-reduced-motion: reduce) {
1531
+ .shimmer-text {
1532
+ animation: none;
1533
+ mask-image: none;
1534
+ -webkit-mask-image: none;
1535
+ opacity: 0.6;
1536
+ }
1537
+ }
1466
1538
 
1467
1539
  /* src/css/integrations/codemirror.css */
1468
- @theme { --color-cm-codeblock: oklch(from var(--color-neutral-500) l c h / 0.1); --color-cm-active-line: light-dark( oklch(from var(--color-neutral-200) l c h / 0.5), oklch(from var(--color-neutral-800) l c h / 0.5) ); --color-cm-separator: var(--color-blue-500); --color-cm-cursor: light-dark(var(--color-neutral-900), var(--color-neutral-100)); --color-cm-selection: light-dark( oklch(from var(--color-blue-400) l c h / 0.5), oklch(from var(--color-blue-600) l c h / 0.5) ); --color-cm-focused-selection: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-cm-highlight: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-cm-highlight-surface: light-dark(var(--color-sky-200), var(--color-cyan-800)); --color-cm-comment-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-cm-comment-surface: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-cm-code: light-dark(var(--color-neutral-700), var(--color-neutral-300)); --color-cm-code-mark: var(--color-blue-500); --color-cm-mark-opacity: 0.5; --color-cm-heading: light-dark(var(--color-neutral-900), var(--color-neutral-400)); }
1540
+ @theme { --color-cm-codeblock: oklch(from var(--color-neutral-500) l c h / 0.1); --color-cm-active-line: light-dark( oklch(from var(--color-neutral-200) l c h / 0.5), oklch(from var(--color-neutral-800) l c h / 0.5) ); --color-cm-separator: var(--color-blue-500); --color-cm-cursor: light-dark(var(--color-neutral-900), var(--color-neutral-100)); --color-cm-selection: light-dark( oklch(from var(--color-blue-400) l c h / 0.5), oklch(from var(--color-blue-600) l c h / 0.5) ); --color-cm-focused-selection: light-dark(var(--color-blue-400), var(--color-blue-600)); --color-cm-highlight: light-dark(var(--color-neutral-950), var(--color-neutral-50)); --color-cm-highlight-surface: light-dark(var(--color-sky-200), var(--color-cyan-800)); --color-cm-comment-text: light-dark(var(--color-neutral-50), var(--color-neutral-950)); --color-cm-comment-surface: light-dark(var(--color-amber-800), var(--color-amber-200)); --color-cm-code: light-dark(var(--color-stone-600), var(--color-stone-400)); --color-cm-code-inline: light-dark(var(--color-green-500), var(--color-green-500)); --color-cm-code-mark: var(--color-blue-500); --color-cm-heading: light-dark(var(--color-blue-700), var(--color-blue-300)); --color-cm-heading-number: light-dark(var(--color-blue-600), var(--color-blue-400)); }
1469
1541
 
1470
1542
  /* src/css/integrations/tldraw.css */
1471
1543
  .tl-background {
@@ -1478,17 +1550,21 @@
1478
1550
  --color-panel-contrast: var(--color-separator);
1479
1551
  }
1480
1552
 
1481
- /* src/theme.css */
1553
+ /* src/main.css */
1554
+ @source "../../../**/*.{ts,tsx,html}";
1555
+ @source "../../../../tools/**/*.{ts,tsx,html}";
1482
1556
  @source inline("bg-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-{50,100,200,300,400,500,600,700,800,900,950}");
1483
- @source inline("bg-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-{fill,surface,surface-text,text,border}");
1557
+ @source inline("bg-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-{fill,surface,foreground,text,border}");
1484
1558
  @source inline("border-{neutral,red,orange,amber,yellow,lime,green,emerald,teal,cyan,sky,blue,indigo,violet,purple,fuchsia,pink,rose}-border");
1485
- @source inline("bg-{info,success,warning,error}-{fill,surface,surface-text,text,border}");
1559
+ @source inline("bg-{info,success,warning,error}-{fill,surface,foreground,text,border}");
1486
1560
  @source inline("border-{info,success,warning,error}-border");
1561
+ @source inline("bg-grid-{surface,foreground,line,highlight,comment,comment-active,selection-surface,selection-foreground}");
1487
1562
  @plugin "@tailwindcss/forms";
1488
1563
  @plugin "tailwind-scrollbar";
1489
1564
  @plugin "tailwindcss-radix";
1490
1565
  @variant dark (&:where(.dark, .dark *));
1491
- @custom-variant is-current (&[aria-current]:not([aria-current="false"]));
1492
- @custom-variant hover-hover (@media (hover: hover));
1566
+ @custom-variant pointer-coarse (@media (pointer: coarse));
1493
1567
  @custom-variant pointer-fine (@media (pointer: fine));
1494
- /*# sourceMappingURL=theme.css.map */
1568
+ @custom-variant hover-hover (@media (hover: hover));
1569
+ @custom-variant is-current (&[aria-current]:not([aria-current="false"]));
1570
+ /*# sourceMappingURL=main.css.map */