@treeseed/core 0.8.8 → 0.8.10

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 (90) hide show
  1. package/dist/components/SiteTitle.astro +2 -2
  2. package/dist/components/content/ContentStatusLegend.astro +4 -4
  3. package/dist/components/docs/BookFontControls.astro +9 -9
  4. package/dist/components/docs/DesktopSidebarToggle.astro +8 -8
  5. package/dist/components/docs/Footer.astro +7 -91
  6. package/dist/components/docs/Header.astro +9 -2
  7. package/dist/components/docs/PageTitle.astro +1 -1
  8. package/dist/components/docs/ThemeSelect.astro +3 -1
  9. package/dist/components/forms/ContactForm.astro +21 -21
  10. package/dist/components/forms/FooterSubscribeForm.astro +9 -9
  11. package/dist/components/site/BookList.astro +7 -7
  12. package/dist/components/site/CTASection.astro +4 -4
  13. package/dist/components/site/ChronicleList.astro +6 -6
  14. package/dist/components/site/Hero.astro +3 -3
  15. package/dist/components/site/PathCard.astro +5 -5
  16. package/dist/components/site/ProfileList.astro +5 -5
  17. package/dist/components/site/RouteNotFound.astro +6 -6
  18. package/dist/components/site/SectionIntro.astro +3 -3
  19. package/dist/components/site/StageBanner.astro +2 -2
  20. package/dist/components/site/TrustCallout.astro +3 -3
  21. package/dist/components/ui/data/ActionList.astro +51 -0
  22. package/dist/components/ui/data/Badge.astro +19 -0
  23. package/dist/components/ui/data/DataTable.astro +51 -0
  24. package/dist/components/ui/data/KeyValueList.astro +28 -0
  25. package/dist/components/ui/data/MetricCard.astro +25 -0
  26. package/dist/components/ui/data/MetricGrid.astro +27 -0
  27. package/dist/components/ui/data/StatusPill.astro +20 -0
  28. package/dist/components/ui/forms/Button.astro +52 -0
  29. package/dist/components/ui/forms/Field.astro +39 -0
  30. package/dist/components/ui/forms/FormActions.astro +12 -0
  31. package/dist/components/ui/forms/PasswordMeter.astro +80 -0
  32. package/dist/components/ui/forms/RadioGroup.astro +55 -0
  33. package/dist/components/ui/forms/Select.astro +44 -0
  34. package/dist/components/ui/forms/TextInput.astro +58 -0
  35. package/dist/components/ui/forms/Textarea.astro +45 -0
  36. package/dist/components/ui/layout/PageHeader.astro +45 -0
  37. package/dist/components/ui/shell/AppShell.astro +112 -0
  38. package/dist/components/ui/shell/BottomNav.astro +35 -0
  39. package/dist/components/ui/shell/ProjectHeader.astro +66 -0
  40. package/dist/components/ui/shell/PublicFooter.astro +39 -0
  41. package/dist/components/ui/shell/PublicShell.astro +179 -0
  42. package/dist/components/ui/shell/RailNav.astro +35 -0
  43. package/dist/components/ui/shell/TopBar.astro +52 -0
  44. package/dist/components/ui/surface/Card.astro +46 -0
  45. package/dist/components/ui/surface/EmptyState.astro +45 -0
  46. package/dist/components/ui/surface/Panel.astro +54 -0
  47. package/dist/components/ui/theme/ThemeMenu.astro +32 -0
  48. package/dist/components/ui/theme/ThemePreviewSwatch.astro +18 -0
  49. package/dist/components/ui/theme/ThemeScript.astro +111 -0
  50. package/dist/components/ui/theme/ThemeSelector.astro +202 -0
  51. package/dist/components/ui/types.js +0 -0
  52. package/dist/dev-watch.d.ts +6 -2
  53. package/dist/dev-watch.js +12 -3
  54. package/dist/dev.d.ts +10 -2
  55. package/dist/dev.js +352 -68
  56. package/dist/layouts/AuthoredEntryLayout.astro +27 -27
  57. package/dist/layouts/BookLayout.astro +10 -10
  58. package/dist/layouts/ContentLayout.astro +4 -4
  59. package/dist/layouts/MainLayout.astro +66 -193
  60. package/dist/layouts/NoteLayout.astro +6 -6
  61. package/dist/layouts/ProfileLayout.astro +17 -17
  62. package/dist/middleware/starlightRouteData.js +20 -14
  63. package/dist/pages/404.astro +8 -8
  64. package/dist/pages/[slug].astro +1 -1
  65. package/dist/pages/books/[slug].astro +5 -5
  66. package/dist/pages/contact.astro +4 -4
  67. package/dist/pages/docs-runtime/[...slug].astro +12 -12
  68. package/dist/pages/docs-runtime/index.astro +13 -13
  69. package/dist/pages/index.astro +28 -28
  70. package/dist/pages/ui/index.astro +216 -0
  71. package/dist/scripts/dev-platform.js +7 -1
  72. package/dist/site.js +53 -5
  73. package/dist/styles/app-shell.css +597 -0
  74. package/dist/styles/forms.css +258 -0
  75. package/dist/styles/global.css +125 -120
  76. package/dist/styles/prose.css +11 -11
  77. package/dist/styles/theme.css +177 -0
  78. package/dist/styles/tokens.css +62 -22
  79. package/dist/styles/ui.css +551 -0
  80. package/dist/utils/color-schemes/cedar.js +53 -0
  81. package/dist/utils/color-schemes/fern.js +53 -0
  82. package/dist/utils/color-schemes/index.js +13 -0
  83. package/dist/utils/color-schemes/lichen.js +53 -0
  84. package/dist/utils/color-schemes/shared.js +33 -0
  85. package/dist/utils/color-schemes/tidepool.js +53 -0
  86. package/dist/utils/content-status.js +5 -5
  87. package/dist/utils/site-config.js +2 -2
  88. package/dist/utils/starlight-nav.js +13 -7
  89. package/dist/utils/theme.js +133 -41
  90. package/package.json +36 -2
@@ -1,24 +1,28 @@
1
1
  @import "tailwindcss";
2
2
  @import "katex/dist/katex.min.css";
3
3
  @import "./tokens.css";
4
+ @import "./theme.css";
5
+ @import "./ui.css";
6
+ @import "./forms.css";
7
+ @import "./app-shell.css";
4
8
  @import "./prose.css";
5
9
 
6
10
  @theme {
7
- --font-sans: "IBM Plex Sans", "Avenir Next", "Segoe UI", ui-sans-serif, system-ui, sans-serif;
8
- --font-serif: "Source Serif 4", "Palatino Linotype", "Iowan Old Style", serif;
9
- --font-mono: "IBM Plex Mono", ui-monospace, monospace;
11
+ --font-sans: "Aptos", "SF Pro Text", "Segoe UI Variable", "Segoe UI", "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;
12
+ --font-serif: "Source Serif 4", "Iowan Old Style", "Palatino Linotype", ui-serif, Georgia, serif;
13
+ --font-mono: "JetBrains Mono", "SF Mono", "Cascadia Mono", "IBM Plex Mono", ui-monospace, monospace;
10
14
  }
11
15
 
12
16
  html {
13
- background: var(--site-bg);
14
- color: var(--site-text);
17
+ background: var(--ts-color-canvas);
18
+ color: var(--ts-color-text);
15
19
  scroll-behavior: smooth;
16
20
  }
17
21
 
18
22
  body {
19
23
  min-height: 100vh;
20
- background: var(--site-bg);
21
- color: var(--site-text);
24
+ background: var(--ts-color-canvas);
25
+ color: var(--ts-color-text);
22
26
  font-family: var(--font-sans);
23
27
  font-size: 18px;
24
28
  line-height: 1.75;
@@ -32,19 +36,19 @@ a {
32
36
 
33
37
  button,
34
38
  a {
35
- outline-color: var(--site-blue);
39
+ outline-color: var(--ts-color-info);
36
40
  }
37
41
 
38
42
  a:focus-visible,
39
43
  button:focus-visible {
40
- outline: 3px solid color-mix(in srgb, var(--site-blue) 74%, white 26%);
44
+ outline: 3px solid var(--ts-color-focus);
41
45
  outline-offset: 3px;
42
46
  border-radius: 0.2rem;
43
47
  }
44
48
 
45
49
  ::selection {
46
- background: rgba(95, 141, 164, 0.22);
47
- color: var(--site-text);
50
+ background: var(--ts-color-info-soft);
51
+ color: var(--ts-color-text);
48
52
  }
49
53
 
50
54
  :root,
@@ -57,52 +61,52 @@ button:focus-visible {
57
61
  --sl-font-system: var(--font-sans);
58
62
  --sl-font-system-mono: var(--font-mono);
59
63
 
60
- --sl-color-white: var(--site-text);
61
- --sl-color-gray-1: var(--site-text);
62
- --sl-color-gray-2: var(--site-text-muted);
63
- --sl-color-gray-3: var(--site-text-soft);
64
- --sl-color-gray-4: #8c816d;
65
- --sl-color-gray-5: #cabda8;
66
- --sl-color-gray-6: var(--site-bg-elevated);
67
- --sl-color-gray-7: var(--site-bg-soft);
68
- --sl-color-black: var(--site-bg-soft);
69
-
70
- --sl-color-orange-high: #7c4d24;
71
- --sl-color-orange: var(--site-warm);
72
- --sl-color-orange-low: rgba(194, 139, 91, 0.14);
73
- --sl-color-green-high: var(--site-blue-strong);
74
- --sl-color-green: var(--site-blue);
75
- --sl-color-green-low: var(--site-blue-soft);
76
- --sl-color-blue-high: var(--site-blue-strong);
77
- --sl-color-blue: var(--site-blue);
78
- --sl-color-blue-low: var(--site-blue-soft);
79
- --sl-color-purple-high: #5f5743;
80
- --sl-color-purple: #7d7358;
81
- --sl-color-purple-low: rgba(125, 115, 88, 0.12);
82
- --sl-color-red-high: #7b3d36;
83
- --sl-color-red: #b96555;
84
- --sl-color-red-low: rgba(185, 101, 85, 0.12);
85
-
86
- --sl-color-accent-high: var(--site-blue-strong);
87
- --sl-color-accent: var(--site-blue);
88
- --sl-color-accent-low: var(--site-blue-soft);
89
-
90
- --sl-color-text: var(--site-text-muted);
91
- --sl-color-text-accent: var(--site-blue-strong);
92
- --sl-color-text-invert: var(--site-text);
93
- --sl-color-bg: var(--site-bg-soft);
94
- --sl-color-bg-nav: color-mix(in srgb, var(--site-bg-soft) 92%, white 8%);
95
- --sl-color-bg-sidebar: color-mix(in srgb, var(--site-bg-elevated) 70%, white 30%);
96
- --sl-color-bg-inline-code: color-mix(in srgb, var(--site-blue-soft) 60%, white 40%);
97
- --sl-color-bg-accent: var(--site-blue-soft);
98
- --sl-color-hairline-light: color-mix(in srgb, var(--site-border) 80%, white 20%);
99
- --sl-color-hairline: var(--site-border);
100
- --sl-color-hairline-shade: var(--site-border-strong);
101
- --sl-color-backdrop-overlay: rgba(78, 67, 49, 0.28);
102
-
103
- --sl-shadow-sm: var(--site-shadow);
104
- --sl-shadow-md: var(--site-shadow);
105
- --sl-shadow-lg: var(--site-shadow);
64
+ --sl-color-white: var(--ts-color-text);
65
+ --sl-color-gray-1: var(--ts-color-text);
66
+ --sl-color-gray-2: var(--ts-color-text-muted);
67
+ --sl-color-gray-3: var(--ts-color-text-subtle);
68
+ --sl-color-gray-4: var(--ts-color-border-strong);
69
+ --sl-color-gray-5: var(--ts-color-border);
70
+ --sl-color-gray-6: var(--ts-color-canvas-subtle);
71
+ --sl-color-gray-7: var(--ts-color-canvas-subtle);
72
+ --sl-color-black: var(--ts-color-canvas-subtle);
73
+
74
+ --sl-color-orange-high: var(--ts-color-warning-text);
75
+ --sl-color-orange: var(--ts-color-warning);
76
+ --sl-color-orange-low: var(--ts-color-warning-soft);
77
+ --sl-color-green-high: var(--ts-color-info-text);
78
+ --sl-color-green: var(--ts-color-info);
79
+ --sl-color-green-low: var(--ts-color-info-soft);
80
+ --sl-color-blue-high: var(--ts-color-info-text);
81
+ --sl-color-blue: var(--ts-color-info);
82
+ --sl-color-blue-low: var(--ts-color-info-soft);
83
+ --sl-color-purple-high: var(--ts-color-accent-strong);
84
+ --sl-color-purple: var(--ts-color-accent);
85
+ --sl-color-purple-low: var(--ts-color-accent-soft);
86
+ --sl-color-red-high: var(--ts-color-danger-text);
87
+ --sl-color-red: var(--ts-color-danger);
88
+ --sl-color-red-low: var(--ts-color-danger-soft);
89
+
90
+ --sl-color-accent-high: var(--ts-color-info-text);
91
+ --sl-color-accent: var(--ts-color-info);
92
+ --sl-color-accent-low: var(--ts-color-info-soft);
93
+
94
+ --sl-color-text: var(--ts-color-text-muted);
95
+ --sl-color-text-accent: var(--ts-color-info-text);
96
+ --sl-color-text-invert: var(--ts-color-text);
97
+ --sl-color-bg: var(--ts-color-canvas-subtle);
98
+ --sl-color-bg-nav: color-mix(in srgb, var(--ts-color-canvas-subtle) 92%, var(--ts-color-surface) 8%);
99
+ --sl-color-bg-sidebar: color-mix(in srgb, var(--ts-color-canvas-subtle) 70%, var(--ts-color-surface) 30%);
100
+ --sl-color-bg-inline-code: color-mix(in srgb, var(--ts-color-info-soft) 60%, var(--ts-color-surface) 40%);
101
+ --sl-color-bg-accent: var(--ts-color-info-soft);
102
+ --sl-color-hairline-light: color-mix(in srgb, var(--ts-color-border) 80%, var(--ts-color-surface) 20%);
103
+ --sl-color-hairline: var(--ts-color-border);
104
+ --sl-color-hairline-shade: var(--ts-color-border-strong);
105
+ --sl-color-backdrop-overlay: var(--ts-color-surface-overlay);
106
+
107
+ --sl-shadow-sm: var(--ts-color-shadow);
108
+ --sl-shadow-md: var(--ts-color-shadow);
109
+ --sl-shadow-lg: var(--ts-color-shadow);
106
110
 
107
111
  --sl-text-body: 1.05rem;
108
112
  --sl-text-body-sm: 0.95rem;
@@ -117,7 +121,7 @@ button:focus-visible {
117
121
  }
118
122
 
119
123
  .content-panel + .content-panel {
120
- border-top: 1px solid var(--site-border);
124
+ border-top: 1px solid var(--ts-color-border);
121
125
  }
122
126
 
123
127
  :root[data-docs-book-page='true'] .content-panel:has(.docs-page-title--book) {
@@ -126,8 +130,8 @@ button:focus-visible {
126
130
  z-index: calc(var(--sl-z-index-navbar) - 1);
127
131
  padding-top: 0.95rem;
128
132
  padding-bottom: 0.9rem;
129
- background: color-mix(in srgb, var(--site-bg-soft) 94%, white 6%);
130
- border-bottom: 1px solid var(--site-border);
133
+ background: color-mix(in srgb, var(--ts-color-canvas-subtle) 94%, var(--ts-color-surface) 6%);
134
+ border-bottom: 1px solid var(--ts-color-border);
131
135
  }
132
136
 
133
137
  :root[data-docs-book-page='true'] .content-panel:has(.docs-page-title--book) .sl-container {
@@ -166,7 +170,7 @@ button:focus-visible {
166
170
  }
167
171
 
168
172
  .sidebar-pane {
169
- background-color: color-mix(in srgb, var(--site-bg-elevated) 78%, white 22%) !important;
173
+ background-color: color-mix(in srgb, var(--ts-color-canvas-subtle) 78%, var(--ts-color-surface) 22%) !important;
170
174
  }
171
175
 
172
176
  .sidebar-content {
@@ -177,54 +181,54 @@ button:focus-visible {
177
181
  .right-sidebar-panel :where(a),
178
182
  .pagination-links a,
179
183
  .pagination-links span {
180
- color: var(--site-text-muted);
184
+ color: var(--ts-color-text-muted);
181
185
  }
182
186
 
183
187
  .sidebar-content a[aria-current='page'],
184
188
  .sidebar-content a:hover,
185
189
  .right-sidebar-panel :where(a:hover),
186
190
  .pagination-links a:hover {
187
- color: var(--site-text);
191
+ color: var(--ts-color-text);
188
192
  }
189
193
 
190
194
  .sidebar-content :is(summary, h2, h3, [aria-current='page']) {
191
- color: var(--site-blue-strong) !important;
195
+ color: var(--ts-color-info-text) !important;
192
196
  }
193
197
 
194
198
  .sidebar-content :is(summary:hover, h2:hover, h3:hover, [aria-current='page']:hover) {
195
- color: var(--site-text) !important;
199
+ color: var(--ts-color-text) !important;
196
200
  }
197
201
 
198
202
  .sidebar-content a[aria-current='page'] {
199
- background: color-mix(in srgb, var(--site-blue-soft) 64%, white 36%) !important;
203
+ background: color-mix(in srgb, var(--ts-color-info-soft) 64%, var(--ts-color-surface) 36%) !important;
200
204
  border-radius: 0.35rem;
201
205
  }
202
206
 
203
207
  .sl-link-button.primary {
204
- background: var(--site-accent) !important;
205
- border-color: var(--site-accent) !important;
206
- color: var(--site-text) !important;
208
+ background: var(--ts-color-accent) !important;
209
+ border-color: var(--ts-color-accent) !important;
210
+ color: var(--ts-color-text) !important;
207
211
  }
208
212
 
209
213
  .sl-link-button.primary:hover,
210
214
  .sl-link-button.primary:focus-visible {
211
- background: color-mix(in srgb, var(--site-accent) 74%, var(--site-blue-soft) 26%) !important;
212
- border-color: var(--site-blue) !important;
213
- color: var(--site-text) !important;
215
+ background: color-mix(in srgb, var(--ts-color-accent) 74%, var(--ts-color-info-soft) 26%) !important;
216
+ border-color: var(--ts-color-info) !important;
217
+ color: var(--ts-color-text) !important;
214
218
  }
215
219
 
216
220
  .sl-link-button.secondary,
217
221
  .sl-link-button.minimal {
218
- color: var(--site-text) !important;
219
- border-color: var(--site-border-strong) !important;
222
+ color: var(--ts-color-text) !important;
223
+ border-color: var(--ts-color-border-strong) !important;
220
224
  background: transparent !important;
221
225
  }
222
226
 
223
227
  .sl-link-card,
224
228
  .card,
225
229
  .content-panel .card {
226
- background: color-mix(in srgb, var(--site-bg-soft) 86%, white 14%) !important;
227
- border-color: var(--site-border) !important;
230
+ background: color-mix(in srgb, var(--ts-color-canvas-subtle) 86%, var(--ts-color-surface) 14%) !important;
231
+ border-color: var(--ts-color-border) !important;
228
232
  border-radius: 0.55rem !important;
229
233
  box-shadow: none !important;
230
234
  }
@@ -241,13 +245,13 @@ button:focus-visible {
241
245
  }
242
246
 
243
247
  .sl-markdown-content {
244
- color: var(--site-text-muted);
248
+ color: var(--ts-color-text-muted);
245
249
  font-size: 1.08rem;
246
250
  line-height: 1.9;
247
251
  }
248
252
 
249
253
  .sl-markdown-content :is(h1, h2, h3, h4, h5, h6):not(:where(.not-content *)) {
250
- color: var(--site-text) !important;
254
+ color: var(--ts-color-text) !important;
251
255
  font-weight: 700 !important;
252
256
  letter-spacing: -0.02em;
253
257
  }
@@ -278,7 +282,7 @@ button:focus-visible {
278
282
  }
279
283
 
280
284
  .sl-markdown-content :is(p, li, dd):not(:where(.not-content *)) {
281
- color: var(--site-text-muted);
285
+ color: var(--ts-color-text-muted);
282
286
  line-height: 1.9;
283
287
  }
284
288
 
@@ -417,41 +421,41 @@ button:focus-visible {
417
421
  }
418
422
 
419
423
  .sl-markdown-content :is(ul, ol) > li:not(:where(.not-content *))::marker {
420
- color: var(--site-text);
424
+ color: var(--ts-color-text);
421
425
  font-weight: 600;
422
426
  }
423
427
 
424
428
  .sl-markdown-content a:not(:where(.not-content *)) {
425
- color: var(--site-accent-strong) !important;
429
+ color: var(--ts-color-accent-strong) !important;
426
430
  text-decoration: underline;
427
431
  text-underline-offset: 0.16em;
428
432
  font-weight: 600;
429
433
  }
430
434
 
431
435
  .sl-markdown-content a:hover:not(:where(.not-content *)) {
432
- color: var(--site-blue) !important;
436
+ color: var(--ts-color-info) !important;
433
437
  }
434
438
 
435
439
  .sl-markdown-content code:not(:where(.not-content *)) {
436
- background-color: rgba(95, 141, 164, 0.12) !important;
437
- border: 1px solid rgba(95, 141, 164, 0.22);
440
+ background-color: var(--ts-color-info-soft) !important;
441
+ border: 1px solid var(--ts-color-info-border);
438
442
  border-radius: 0.4rem;
439
- color: var(--site-text);
443
+ color: var(--ts-color-text);
440
444
  padding: 0.12rem 0.38rem;
441
445
  font-size: 0.92em;
442
446
  }
443
447
 
444
448
  .sl-markdown-content pre:not(:where(.not-content *)),
445
449
  .expressive-code {
446
- border-color: var(--site-border) !important;
450
+ border-color: var(--ts-color-border) !important;
447
451
  box-shadow: none !important;
448
452
  }
449
453
 
450
454
  .sl-markdown-content pre:not(:where(.not-content *)) {
451
455
  margin: 1.4rem 0 1.7rem !important;
452
- border: 1px solid color-mix(in srgb, var(--site-border) 82%, var(--site-blue) 18%) !important;
456
+ border: 1px solid color-mix(in srgb, var(--ts-color-border) 82%, var(--ts-color-info) 18%) !important;
453
457
  border-radius: 0.9rem !important;
454
- background: color-mix(in srgb, var(--site-bg-elevated) 82%, white 18%) !important;
458
+ background: color-mix(in srgb, var(--ts-color-canvas-subtle) 82%, var(--ts-color-surface) 18%) !important;
455
459
  overflow-x: auto;
456
460
  }
457
461
 
@@ -468,9 +472,9 @@ button:focus-visible {
468
472
  --ec-uiPadInl: 1rem;
469
473
  --ec-codePadBlk: 0.95rem;
470
474
  --ec-codePadInl: 1rem;
471
- --ec-codeBg: color-mix(in srgb, var(--site-bg-elevated) 84%, white 16%);
475
+ --ec-codeBg: color-mix(in srgb, var(--ts-color-canvas-subtle) 84%, var(--ts-color-surface) 16%);
472
476
  --ec-frameBoxShdCssVal: none;
473
- --ec-brdCol: color-mix(in srgb, var(--site-border) 78%, var(--site-blue) 22%);
477
+ --ec-brdCol: color-mix(in srgb, var(--ts-color-border) 78%, var(--ts-color-info) 22%);
474
478
  }
475
479
 
476
480
  .expressive-code :is(pre, code) {
@@ -490,12 +494,12 @@ button:focus-visible {
490
494
  font-size: 0.84rem;
491
495
  font-weight: 600;
492
496
  letter-spacing: 0.01em;
493
- color: var(--site-text-soft);
497
+ color: var(--ts-color-text-subtle);
494
498
  }
495
499
 
496
500
  .expressive-code [data-language],
497
501
  .expressive-code .ec-section summary {
498
- color: var(--site-text-soft);
502
+ color: var(--ts-color-text-subtle);
499
503
  }
500
504
 
501
505
  .expressive-code button {
@@ -514,13 +518,13 @@ button:focus-visible {
514
518
 
515
519
  .sl-markdown-content pre:not(:where(.not-content *))::-webkit-scrollbar-thumb,
516
520
  .katex-display::-webkit-scrollbar-thumb {
517
- background: color-mix(in srgb, var(--site-border-strong) 72%, var(--site-blue) 28%);
521
+ background: color-mix(in srgb, var(--ts-color-border-strong) 72%, var(--ts-color-info) 28%);
518
522
  border-radius: 999px;
519
523
  }
520
524
 
521
525
  .sl-markdown-content .katex {
522
526
  font-size: 1.04em;
523
- color: var(--site-text);
527
+ color: var(--ts-color-text);
524
528
  }
525
529
 
526
530
  .sl-markdown-content .katex-display {
@@ -541,21 +545,21 @@ button:focus-visible {
541
545
 
542
546
  .sl-markdown-content blockquote:not(:where(.not-content *)),
543
547
  .sl-markdown-content details:not(:where(.not-content *)) {
544
- border-inline-start-color: var(--site-accent) !important;
548
+ border-inline-start-color: var(--ts-color-accent) !important;
545
549
  }
546
550
 
547
551
  .sl-markdown-content summary:not(:where(.not-content *)),
548
552
  .right-sidebar-panel :global(h2) {
549
- color: var(--site-text) !important;
553
+ color: var(--ts-color-text) !important;
550
554
  }
551
555
 
552
556
  .sl-markdown-content :is(th, td):not(:where(.not-content *)),
553
557
  .sl-markdown-content hr:not(:where(.not-content *)) {
554
- border-color: var(--site-border) !important;
558
+ border-color: var(--ts-color-border) !important;
555
559
  }
556
560
 
557
561
  .sl-markdown-content th:not(:where(.not-content *)) {
558
- color: var(--site-text) !important;
562
+ color: var(--ts-color-text) !important;
559
563
  }
560
564
 
561
565
  .site-header-custom {
@@ -565,7 +569,7 @@ button:focus-visible {
565
569
  }
566
570
 
567
571
  .site-header-custom a {
568
- color: var(--site-accent-strong);
572
+ color: var(--ts-color-accent-strong);
569
573
  }
570
574
 
571
575
  .site-footer-cta {
@@ -573,9 +577,10 @@ button:focus-visible {
573
577
  width: 100vw;
574
578
  margin-left: calc(50% - 50vw);
575
579
  margin-right: calc(50% - 50vw);
576
- margin-bottom: -8rem;
577
- background: var(--site-bg-soft);
578
- border-top: 1px solid color-mix(in srgb, var(--site-blue) 36%, white 12%);
580
+ margin-bottom: 0;
581
+ background: var(--ts-color-canvas-subtle);
582
+ border-top: 1px solid color-mix(in srgb, var(--ts-color-info) 36%, var(--ts-color-surface) 12%);
583
+ border-bottom: 1px solid var(--ts-color-border);
579
584
  }
580
585
 
581
586
  .site-footer-cta::before {
@@ -589,7 +594,7 @@ button:focus-visible {
589
594
  .site-footer-cta__inner {
590
595
  position: relative;
591
596
  z-index: 1;
592
- width: min(100%, var(--site-max));
597
+ width: min(100%, var(--ts-content-width));
593
598
  margin: 0 auto;
594
599
  padding: 3rem 1.5rem 3.5rem;
595
600
  text-align: center;
@@ -617,10 +622,10 @@ button:focus-visible {
617
622
  min-width: 12.75rem;
618
623
  min-height: 3rem;
619
624
  padding: 0.65rem 1.2rem;
620
- background-color: var(--site-accent-soft);
621
- color: var(--site-accent-strong);
625
+ background-color: var(--ts-color-accent-soft);
626
+ color: var(--ts-color-accent-strong);
622
627
  text-decoration: none;
623
- border: 1px solid var(--site-border-strong);
628
+ border: 1px solid var(--ts-color-border-strong);
624
629
  border-radius: 0.4rem;
625
630
  font-weight: 600;
626
631
  font-size: 1rem;
@@ -630,14 +635,14 @@ button:focus-visible {
630
635
  }
631
636
 
632
637
  .download-button:hover {
633
- background-color: var(--site-blue-soft);
634
- border-color: var(--site-blue);
635
- color: var(--site-accent-strong);
638
+ background-color: var(--ts-color-info-soft);
639
+ border-color: var(--ts-color-info);
640
+ color: var(--ts-color-accent-strong);
636
641
  }
637
642
 
638
643
  .download-button:focus-visible,
639
644
  .download-button:active {
640
- color: var(--site-accent-strong);
645
+ color: var(--ts-color-accent-strong);
641
646
  }
642
647
 
643
648
  .docs-header-search {
@@ -651,9 +656,9 @@ button:focus-visible {
651
656
  min-width: 17rem !important;
652
657
  min-height: 3rem !important;
653
658
  padding: 0.65rem 1.2rem !important;
654
- background: var(--site-accent-soft) !important;
655
- border-color: var(--site-border-strong) !important;
656
- color: var(--site-text) !important;
659
+ background: var(--ts-color-accent-soft) !important;
660
+ border-color: var(--ts-color-border-strong) !important;
661
+ color: var(--ts-color-text) !important;
657
662
  font-size: 1rem !important;
658
663
  line-height: 1 !important;
659
664
  white-space: nowrap;
@@ -661,23 +666,23 @@ button:focus-visible {
661
666
 
662
667
  .docs-header-search button[data-open-modal]:hover,
663
668
  .docs-header-search button[data-open-modal]:focus-visible {
664
- background: var(--site-blue-soft) !important;
665
- border-color: var(--site-blue) !important;
666
- color: var(--site-text) !important;
669
+ background: var(--ts-color-info-soft) !important;
670
+ border-color: var(--ts-color-info) !important;
671
+ color: var(--ts-color-text) !important;
667
672
  }
668
673
 
669
674
  .docs-header-search button[data-open-modal] > span {
670
675
  font-size: 1rem;
671
- color: var(--site-text) !important;
676
+ color: var(--ts-color-text) !important;
672
677
  }
673
678
 
674
679
  .docs-header-search button[data-open-modal] > kbd {
675
680
  font-size: 0.82rem;
676
- color: var(--site-text-soft) !important;
677
- border-color: color-mix(in srgb, var(--site-border-strong) 70%, white 30%) !important;
681
+ color: var(--ts-color-text-subtle) !important;
682
+ border-color: color-mix(in srgb, var(--ts-color-border-strong) 70%, var(--ts-color-surface) 30%) !important;
678
683
  }
679
684
 
680
685
  .docs-header-search button[data-open-modal] :where(svg, path) {
681
- color: var(--site-text) !important;
686
+ color: var(--ts-color-text) !important;
682
687
  stroke: currentColor;
683
688
  }
@@ -1,12 +1,12 @@
1
1
  .prose-karyon {
2
- color: var(--site-text);
2
+ color: var(--ts-color-text);
3
3
  font-size: 1.08rem;
4
4
  }
5
5
 
6
6
  .prose-karyon h1,
7
7
  .prose-karyon h2,
8
8
  .prose-karyon h3 {
9
- color: var(--site-text);
9
+ color: var(--ts-color-text);
10
10
  line-height: 1.12;
11
11
  font-weight: 700;
12
12
  }
@@ -31,7 +31,7 @@
31
31
 
32
32
  .prose-karyon p,
33
33
  .prose-karyon li {
34
- color: var(--site-text-muted);
34
+ color: var(--ts-color-text-muted);
35
35
  line-height: 1.85;
36
36
  }
37
37
 
@@ -44,14 +44,14 @@
44
44
  }
45
45
 
46
46
  .prose-karyon a {
47
- color: var(--site-accent-strong);
47
+ color: var(--ts-color-accent-strong);
48
48
  text-decoration: underline;
49
49
  text-underline-offset: 0.16em;
50
50
  font-weight: 600;
51
51
  }
52
52
 
53
53
  .prose-karyon strong {
54
- color: var(--site-text);
54
+ color: var(--ts-color-text);
55
55
  }
56
56
 
57
57
  .prose-karyon ul,
@@ -60,20 +60,20 @@
60
60
  }
61
61
 
62
62
  .prose-karyon blockquote {
63
- border-left: 4px solid var(--site-accent);
63
+ border-left: 4px solid var(--ts-color-accent);
64
64
  padding-left: 1rem;
65
- color: var(--site-text-muted);
65
+ color: var(--ts-color-text-muted);
66
66
  }
67
67
 
68
68
  .prose-karyon code {
69
- background: rgba(95, 141, 164, 0.12);
70
- border: 1px solid rgba(95, 141, 164, 0.22);
69
+ background: var(--ts-color-info-soft);
70
+ border: 1px solid var(--ts-color-info-border);
71
71
  border-radius: 0.5rem;
72
72
  padding: 0.1rem 0.35rem;
73
73
  }
74
74
 
75
75
  .prose-karyon hr {
76
- border-color: var(--site-border);
76
+ border-color: var(--ts-color-border);
77
77
  margin: 2.4rem 0;
78
78
  }
79
79
 
@@ -83,7 +83,7 @@
83
83
  }
84
84
 
85
85
  .prose-karyon :where(th, td) {
86
- border-bottom: 1px solid var(--site-border);
86
+ border-bottom: 1px solid var(--ts-color-border);
87
87
  padding: 0.85rem 0.75rem;
88
88
  text-align: left;
89
89
  }