@terrafirmagreg-team/ui 1.2.1 → 1.2.3

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.
package/styles.css CHANGED
@@ -1,430 +1,430 @@
1
- @import 'flag-icons/css/flag-icons.min.css';
2
- @import '@xyflow/react/dist/style.css';
3
-
4
- @custom-variant dark (&:where(.dark, .dark *));
5
-
6
- @theme {
7
- --ease-expo: cubic-bezier(0.22, 1, 0.36, 1);
8
- --text-3xs: 0.5625rem;
9
- --text-2xs: 0.625rem;
10
- --text-nav-title: 0.9375rem;
11
-
12
- --color-background: hsl(0, 0%, 96%);
13
- --color-foreground: hsl(0, 0%, 3.9%);
14
- --color-card: hsl(0, 0%, 94.7%);
15
- --color-card-foreground: hsl(0, 0%, 3.9%);
16
- --color-popover: hsl(0, 0%, 98%);
17
- --color-popover-foreground: hsl(0, 0%, 15.1%);
18
- --color-primary: hsl(0, 0%, 9%);
19
- --color-primary-foreground: hsl(0, 0%, 98%);
20
- --color-secondary: hsl(0, 0%, 93.1%);
21
- --color-secondary-foreground: hsl(0, 0%, 9%);
22
- --color-muted: hsl(0, 0%, 96.1%);
23
- --color-muted-foreground: hsl(0, 0%, 45.1%);
24
- --color-accent: hsla(0, 0%, 82%, 50%);
25
- --color-accent-foreground: hsl(0, 0%, 9%);
26
- --color-destructive: oklch(63.7% 0.237 25.331);
27
- --color-destructive-foreground: hsl(0, 0%, 98%);
28
- --color-border: hsla(0, 0%, 80%, 50%);
29
- --color-input: hsla(0, 0%, 80%, 50%);
30
- --color-ring: hsl(0, 0%, 63.9%);
31
- --color-overlay: hsla(0, 0%, 0%, 0.2);
32
-
33
- --color-sidebar: hsl(0, 0%, 94.7%);
34
- --color-sidebar-foreground: hsl(0, 0%, 3.9%);
35
- --color-sidebar-primary: hsl(0, 0%, 9%);
36
- --color-sidebar-primary-foreground: hsl(0, 0%, 98%);
37
- --color-sidebar-accent: hsla(0, 0%, 82%, 50%);
38
- --color-sidebar-accent-foreground: hsl(0, 0%, 9%);
39
- --color-sidebar-border: hsla(0, 0%, 80%, 50%);
40
- --color-sidebar-ring: hsl(0, 0%, 63.9%);
41
-
42
- --color-info: oklch(62.3% 0.214 259.815);
43
- --color-warning: oklch(76.9% 0.188 70.08);
44
- --color-error: oklch(63.7% 0.237 25.331);
45
- --color-success: oklch(72.3% 0.219 149.579);
46
- --color-idea: oklch(70.5% 0.209 60.849);
47
- --color-diff-remove: rgba(200, 10, 100, 0.12);
48
- --color-diff-remove-symbol: rgb(230, 10, 100);
49
- --color-diff-add: rgba(14, 180, 100, 0.1);
50
- --color-diff-add-symbol: rgb(10, 200, 100);
51
-
52
- --color-chart-1: oklch(0.646 0.222 41.116);
53
- --color-chart-2: oklch(0.6 0.118 184.704);
54
- --color-chart-3: oklch(0.398 0.07 227.392);
55
- --color-chart-4: oklch(0.828 0.189 84.429);
56
- --color-chart-5: oklch(0.769 0.188 70.08);
57
-
58
- --color-float: hsl(0, 0%, 98%);
59
- }
60
-
61
- .dark {
62
- --color-background: hsl(0, 0%, 7.04%);
63
- --color-foreground: hsl(0, 0%, 92%);
64
- --color-card: hsl(0, 0%, 9.8%);
65
- --color-card-foreground: hsl(0, 0%, 98%);
66
- --color-popover: hsl(0, 0%, 11.6%);
67
- --color-popover-foreground: hsl(0, 0%, 86.9%);
68
- --color-primary: hsl(0, 0%, 98%);
69
- --color-primary-foreground: hsl(0, 0%, 9%);
70
- --color-secondary: hsl(0, 0%, 12.9%);
71
- --color-secondary-foreground: hsl(0, 0%, 92%);
72
- --color-muted: hsl(0, 0%, 12.9%);
73
- --color-muted-foreground: hsla(0, 0%, 70%, 0.8);
74
- --color-accent: hsla(0, 0%, 40.9%, 30%);
75
- --color-accent-foreground: hsl(0, 0%, 90%);
76
- --color-destructive: oklch(63.7% 0.237 25.331);
77
- --color-destructive-foreground: hsl(0, 0%, 9%);
78
- --color-border: hsla(0, 0%, 40%, 20%);
79
- --color-input: hsla(0, 0%, 40%, 20%);
80
- --color-ring: hsl(0, 0%, 54.9%);
81
-
82
- --color-sidebar: hsl(0, 0%, 9.8%);
83
- --color-sidebar-foreground: hsl(0, 0%, 98%);
84
- --color-sidebar-primary: hsl(0, 0%, 98%);
85
- --color-sidebar-primary-foreground: hsl(0, 0%, 9%);
86
- --color-sidebar-accent: hsla(0, 0%, 40.9%, 30%);
87
- --color-sidebar-accent-foreground: hsl(0, 0%, 90%);
88
- --color-sidebar-border: hsla(0, 0%, 40%, 20%);
89
- --color-sidebar-ring: hsl(0, 0%, 54.9%);
90
-
91
- --color-chart-1: oklch(0.488 0.243 264.376);
92
- --color-chart-2: oklch(0.696 0.17 162.48);
93
- --color-chart-3: oklch(0.769 0.188 70.08);
94
- --color-chart-4: oklch(0.627 0.265 303.9);
95
- --color-chart-5: oklch(0.645 0.246 16.439);
96
-
97
- --color-float: hsl(0, 0%, 11.6%);
98
- }
99
-
100
- :root {
101
- --spotlight-under-bg-color: color-mix(
102
- in srgb,
103
- var(--color-primary) 10%,
104
- transparent
105
- );
106
- }
107
-
108
- html {
109
- scrollbar-gutter: stable;
110
- }
111
-
112
- html:has(.viewport-shell) {
113
- scrollbar-gutter: auto;
114
- }
115
-
116
- [data-slot='command-list'] {
117
- scrollbar-width: thin;
118
- scrollbar-color: var(--color-border) transparent;
119
- }
120
- [data-slot='command-list']::-webkit-scrollbar {
121
- width: 10px;
122
- }
123
- [data-slot='command-list']::-webkit-scrollbar-thumb {
124
- border: 3px solid transparent;
125
- border-radius: 9999px;
126
- background: var(--color-border) padding-box;
127
- }
128
-
129
- html > body[data-scroll-locked] {
130
- margin-right: 0px !important;
131
- --removed-body-scroll-bar-size: 0px !important;
132
- }
133
-
134
- [data-slot='float-bar'] > :not(:first-child) {
135
- position: relative;
136
- }
137
- [data-slot='float-bar'] > :not(:first-child)::before {
138
- content: '';
139
- position: absolute;
140
- inset-inline-start: 0;
141
- top: 50%;
142
- translate: 0 -50%;
143
- height: 45%;
144
- width: 1px;
145
- background: color-mix(in srgb, var(--color-foreground) 8%, transparent);
146
- }
147
-
148
- .marquee {
149
- -webkit-mask-image: linear-gradient(
150
- to right,
151
- black calc(100% - 12px),
152
- transparent
153
- );
154
- mask-image: linear-gradient(
155
- to right,
156
- black calc(100% - 12px),
157
- transparent
158
- );
159
- }
160
-
161
- .marquee-run > .marquee-inner {
162
- animation: marquee var(--marquee-duration, 2s) ease-in-out 0.5s
163
- infinite alternate;
164
- }
165
-
166
- @keyframes marquee {
167
- to {
168
- transform: translateX(var(--marquee-x, 0px));
169
- }
170
- }
171
-
172
- @media (prefers-reduced-motion: reduce) {
173
- .marquee-run > .marquee-inner {
174
- animation: none;
175
- }
176
- }
177
-
178
- [data-slot='tooltip-content'] {
179
- max-width: max(16rem, 50vw);
180
- background-color: var(--color-popover);
181
- color: var(--color-popover-foreground);
182
- border-radius: 0.5rem;
183
- box-shadow:
184
- 0 0 0 1px color-mix(in oklab, var(--color-foreground) 10%, transparent),
185
- 0 4px 6px -1px rgb(0 0 0 / 0.1),
186
- 0 2px 4px -2px rgb(0 0 0 / 0.1);
187
- }
188
-
189
- [data-slot='tooltip-content'] > .rotate-45 {
190
- background-color: var(--color-popover);
191
- fill: var(--color-popover);
192
- }
193
-
194
- *:has(> [data-slot='tooltip-content']) {
195
- pointer-events: none;
196
- }
197
-
198
- .viewer-surface {
199
- background: var(--color-background);
200
- }
201
-
202
- .viewer-surface:fullscreen {
203
- width: 100% !important;
204
- }
205
-
206
- .viewer-surface:fullscreen > .viewer-scene {
207
- height: 100% !important;
208
- }
209
-
210
- .viewer-scene {
211
- background-color: var(--color-background);
212
- }
213
-
214
- .viewer-scene.viewer-dots {
215
- background-image: radial-gradient(
216
- circle,
217
- color-mix(in oklab, var(--color-muted-foreground) 30%, transparent) 1px,
218
- transparent 1px
219
- );
220
- background-size: 16px 16px;
221
- }
222
-
223
- .viewer-surface canvas {
224
- display: block;
225
- width: 100%;
226
- height: 100%;
227
- background: transparent;
228
- touch-action: none;
229
- }
230
-
231
- :fullscreen {
232
- width: 100%;
233
- height: 100%;
234
- max-width: none;
235
- margin: 0;
236
- border: none;
237
- border-radius: 0;
238
- background: var(--color-background);
239
- }
240
-
241
- :fullscreen .viewer-scene {
242
- height: 100%;
243
- }
244
-
245
- .viewer-fallback-fullscreen {
246
- position: fixed;
247
- inset: 0;
248
- z-index: 50;
249
- width: 100%;
250
- height: 100%;
251
- max-width: none;
252
- margin: 0;
253
- border: none;
254
- border-radius: 0;
255
- background: var(--color-background);
256
- }
257
-
258
- .viewer-fallback-fullscreen .viewer-scene {
259
- height: 100%;
260
- }
261
-
262
- .chevron-edge__stroke {
263
- fill: none;
264
- vector-effect: non-scaling-stroke;
265
- stroke-width: 2.25;
266
- stroke-linecap: round;
267
- stroke-linejoin: round;
268
- pointer-events: none;
269
- }
270
-
271
- .chevron-edge__base {
272
- stroke-width: 1.75;
273
- stroke: color-mix(
274
- in oklab,
275
- var(--color-foreground) 44%,
276
- var(--color-muted-foreground)
277
- );
278
- }
279
-
280
- .chevron-edge--outgoing .chevron-edge__base {
281
- stroke: color-mix(in oklab, #00c8c8 40%, transparent);
282
- }
283
-
284
- .chevron-edge--incoming .chevron-edge__base {
285
- stroke: color-mix(in oklab, #c8c800 40%, transparent);
286
- }
287
-
288
- .chevron-edge__stroke--main {
289
- stroke: color-mix(
290
- in oklab,
291
- var(--color-foreground) 38%,
292
- var(--color-muted-foreground)
293
- );
294
- }
295
-
296
- .chevron-edge__tick {
297
- offset-rotate: auto;
298
- offset-distance: var(--chevron-o);
299
- }
300
-
301
- .chevron-edge--incoming .chevron-edge__tick:not(:last-child),
302
- .chevron-edge--outgoing .chevron-edge__tick:not(:last-child) {
303
- animation: chevron-flow 0.5s linear infinite;
304
- }
305
-
306
- @keyframes chevron-flow {
307
- to {
308
- offset-distance: calc(var(--chevron-o) + 10px);
309
- }
310
- }
311
-
312
- @media (prefers-reduced-motion: reduce) {
313
- .chevron-edge__tick {
314
- animation: none;
315
- }
316
-
317
- .chevron-edge__stroke--main {
318
- opacity: 0.55;
319
- }
320
- }
321
-
322
- .chevron-edge--outgoing .chevron-edge__stroke--main {
323
- stroke: #00c8c8;
324
- }
325
-
326
- .chevron-edge--incoming .chevron-edge__stroke--main {
327
- stroke: #c8c800;
328
- }
329
-
330
- .chevron-edge--dim {
331
- opacity: 0.3;
332
- }
333
-
334
- .chevron-edge__label {
335
- position: absolute;
336
- pointer-events: all;
337
- z-index: 10;
338
- }
339
-
340
- [data-slot='left-sidebar'] ul,
341
- [data-slot='left-sidebar'] li {
342
- list-style: none;
343
- margin: 0;
344
- padding: 0;
345
- }
346
-
347
- :root {
348
- --z-overlay: 1100;
349
- }
350
-
351
- @utility z-overlay {
352
- z-index: var(--z-overlay);
353
- }
354
-
355
- @utility scrollbar-thin {
356
- scrollbar-width: thin;
357
- scrollbar-color: var(--color-border) transparent;
358
-
359
- &::-webkit-scrollbar {
360
- width: 5px;
361
- height: 5px;
362
- }
363
-
364
- &::-webkit-scrollbar-thumb {
365
- border-radius: 5px;
366
- background: var(--color-border);
367
- }
368
-
369
- &::-webkit-scrollbar-track {
370
- background: transparent;
371
- }
372
-
373
- &::-webkit-scrollbar-corner {
374
- display: none;
375
- }
376
- }
377
-
378
- @utility no-scrollbar {
379
- scrollbar-width: none;
380
-
381
- &::-webkit-scrollbar {
382
- display: none;
383
- }
384
- }
385
-
386
- @utility scrollbar-none {
387
- scrollbar-width: none;
388
-
389
- &::-webkit-scrollbar {
390
- display: none;
391
- }
392
- }
393
-
394
- @utility scroll-fade-x {
395
- mask-image: linear-gradient(to right, transparent, black 16px, black calc(100% - 16px), transparent);
396
- }
397
-
398
- @utility scroll-fade-b {
399
- mask-image: linear-gradient(to bottom, black calc(100% - 24px), transparent);
400
- }
401
-
402
- @layer base {
403
- a[href],
404
- button,
405
- summary,
406
- select,
407
- label[for],
408
- label:has(> input[type='checkbox'], > input[type='radio']),
409
- [role='button'],
410
- [role='link'],
411
- [role='tab'],
412
- [role='menuitem'],
413
- [role='option'],
414
- [role='switch'],
415
- input[type='checkbox'],
416
- input[type='radio'],
417
- input[type='file'],
418
- input[type='submit'],
419
- input[type='button'],
420
- input[type='reset'],
421
- input[type='range'],
422
- input[type='color'] {
423
- cursor: pointer;
424
- }
425
-
426
- :disabled,
427
- [aria-disabled='true'] {
428
- cursor: not-allowed;
429
- }
430
- }
1
+ @import 'flag-icons/css/flag-icons.min.css';
2
+ @import '@xyflow/react/dist/style.css';
3
+
4
+ @custom-variant dark (&:where(.dark, .dark *));
5
+
6
+ @theme {
7
+ --ease-expo: cubic-bezier(0.22, 1, 0.36, 1);
8
+ --text-3xs: 0.5625rem;
9
+ --text-2xs: 0.625rem;
10
+ --text-nav-title: 0.9375rem;
11
+
12
+ --color-background: hsl(0, 0%, 96%);
13
+ --color-foreground: hsl(0, 0%, 3.9%);
14
+ --color-card: hsl(0, 0%, 94.7%);
15
+ --color-card-foreground: hsl(0, 0%, 3.9%);
16
+ --color-popover: hsl(0, 0%, 98%);
17
+ --color-popover-foreground: hsl(0, 0%, 15.1%);
18
+ --color-primary: hsl(0, 0%, 9%);
19
+ --color-primary-foreground: hsl(0, 0%, 98%);
20
+ --color-secondary: hsl(0, 0%, 93.1%);
21
+ --color-secondary-foreground: hsl(0, 0%, 9%);
22
+ --color-muted: hsl(0, 0%, 96.1%);
23
+ --color-muted-foreground: hsl(0, 0%, 45.1%);
24
+ --color-accent: hsla(0, 0%, 82%, 50%);
25
+ --color-accent-foreground: hsl(0, 0%, 9%);
26
+ --color-destructive: oklch(63.7% 0.237 25.331);
27
+ --color-destructive-foreground: hsl(0, 0%, 98%);
28
+ --color-border: hsla(0, 0%, 80%, 50%);
29
+ --color-input: hsla(0, 0%, 80%, 50%);
30
+ --color-ring: hsl(0, 0%, 63.9%);
31
+ --color-overlay: hsla(0, 0%, 0%, 0.2);
32
+
33
+ --color-sidebar: hsl(0, 0%, 94.7%);
34
+ --color-sidebar-foreground: hsl(0, 0%, 3.9%);
35
+ --color-sidebar-primary: hsl(0, 0%, 9%);
36
+ --color-sidebar-primary-foreground: hsl(0, 0%, 98%);
37
+ --color-sidebar-accent: hsla(0, 0%, 82%, 50%);
38
+ --color-sidebar-accent-foreground: hsl(0, 0%, 9%);
39
+ --color-sidebar-border: hsla(0, 0%, 80%, 50%);
40
+ --color-sidebar-ring: hsl(0, 0%, 63.9%);
41
+
42
+ --color-info: oklch(62.3% 0.214 259.815);
43
+ --color-warning: oklch(76.9% 0.188 70.08);
44
+ --color-error: oklch(63.7% 0.237 25.331);
45
+ --color-success: oklch(72.3% 0.219 149.579);
46
+ --color-idea: oklch(70.5% 0.209 60.849);
47
+ --color-diff-remove: rgba(200, 10, 100, 0.12);
48
+ --color-diff-remove-symbol: rgb(230, 10, 100);
49
+ --color-diff-add: rgba(14, 180, 100, 0.1);
50
+ --color-diff-add-symbol: rgb(10, 200, 100);
51
+
52
+ --color-chart-1: oklch(0.646 0.222 41.116);
53
+ --color-chart-2: oklch(0.6 0.118 184.704);
54
+ --color-chart-3: oklch(0.398 0.07 227.392);
55
+ --color-chart-4: oklch(0.828 0.189 84.429);
56
+ --color-chart-5: oklch(0.769 0.188 70.08);
57
+
58
+ --color-float: hsl(0, 0%, 98%);
59
+ }
60
+
61
+ .dark {
62
+ --color-background: hsl(0, 0%, 7.04%);
63
+ --color-foreground: hsl(0, 0%, 92%);
64
+ --color-card: hsl(0, 0%, 9.8%);
65
+ --color-card-foreground: hsl(0, 0%, 98%);
66
+ --color-popover: hsl(0, 0%, 11.6%);
67
+ --color-popover-foreground: hsl(0, 0%, 86.9%);
68
+ --color-primary: hsl(0, 0%, 98%);
69
+ --color-primary-foreground: hsl(0, 0%, 9%);
70
+ --color-secondary: hsl(0, 0%, 12.9%);
71
+ --color-secondary-foreground: hsl(0, 0%, 92%);
72
+ --color-muted: hsl(0, 0%, 12.9%);
73
+ --color-muted-foreground: hsla(0, 0%, 70%, 0.8);
74
+ --color-accent: hsla(0, 0%, 40.9%, 30%);
75
+ --color-accent-foreground: hsl(0, 0%, 90%);
76
+ --color-destructive: oklch(63.7% 0.237 25.331);
77
+ --color-destructive-foreground: hsl(0, 0%, 9%);
78
+ --color-border: hsla(0, 0%, 40%, 20%);
79
+ --color-input: hsla(0, 0%, 40%, 20%);
80
+ --color-ring: hsl(0, 0%, 54.9%);
81
+
82
+ --color-sidebar: hsl(0, 0%, 9.8%);
83
+ --color-sidebar-foreground: hsl(0, 0%, 98%);
84
+ --color-sidebar-primary: hsl(0, 0%, 98%);
85
+ --color-sidebar-primary-foreground: hsl(0, 0%, 9%);
86
+ --color-sidebar-accent: hsla(0, 0%, 40.9%, 30%);
87
+ --color-sidebar-accent-foreground: hsl(0, 0%, 90%);
88
+ --color-sidebar-border: hsla(0, 0%, 40%, 20%);
89
+ --color-sidebar-ring: hsl(0, 0%, 54.9%);
90
+
91
+ --color-chart-1: oklch(0.488 0.243 264.376);
92
+ --color-chart-2: oklch(0.696 0.17 162.48);
93
+ --color-chart-3: oklch(0.769 0.188 70.08);
94
+ --color-chart-4: oklch(0.627 0.265 303.9);
95
+ --color-chart-5: oklch(0.645 0.246 16.439);
96
+
97
+ --color-float: hsl(0, 0%, 11.6%);
98
+ }
99
+
100
+ :root {
101
+ --spotlight-under-bg-color: color-mix(
102
+ in srgb,
103
+ var(--color-primary) 10%,
104
+ transparent
105
+ );
106
+ }
107
+
108
+ html {
109
+ scrollbar-gutter: stable;
110
+ }
111
+
112
+ html:has(.viewport-shell) {
113
+ scrollbar-gutter: auto;
114
+ }
115
+
116
+ [data-slot='command-list'] {
117
+ scrollbar-width: thin;
118
+ scrollbar-color: var(--color-border) transparent;
119
+ }
120
+ [data-slot='command-list']::-webkit-scrollbar {
121
+ width: 10px;
122
+ }
123
+ [data-slot='command-list']::-webkit-scrollbar-thumb {
124
+ border: 3px solid transparent;
125
+ border-radius: 9999px;
126
+ background: var(--color-border) padding-box;
127
+ }
128
+
129
+ html > body[data-scroll-locked] {
130
+ margin-right: 0px !important;
131
+ --removed-body-scroll-bar-size: 0px !important;
132
+ }
133
+
134
+ [data-slot='float-bar'] > :not(:first-child) {
135
+ position: relative;
136
+ }
137
+ [data-slot='float-bar'] > :not(:first-child)::before {
138
+ content: '';
139
+ position: absolute;
140
+ inset-inline-start: 0;
141
+ top: 50%;
142
+ translate: 0 -50%;
143
+ height: 45%;
144
+ width: 1px;
145
+ background: color-mix(in srgb, var(--color-foreground) 8%, transparent);
146
+ }
147
+
148
+ .marquee {
149
+ -webkit-mask-image: linear-gradient(
150
+ to right,
151
+ black calc(100% - 12px),
152
+ transparent
153
+ );
154
+ mask-image: linear-gradient(
155
+ to right,
156
+ black calc(100% - 12px),
157
+ transparent
158
+ );
159
+ }
160
+
161
+ .marquee-run > .marquee-inner {
162
+ animation: marquee var(--marquee-duration, 2s) ease-in-out 0.5s
163
+ infinite alternate;
164
+ }
165
+
166
+ @keyframes marquee {
167
+ to {
168
+ transform: translateX(var(--marquee-x, 0px));
169
+ }
170
+ }
171
+
172
+ @media (prefers-reduced-motion: reduce) {
173
+ .marquee-run > .marquee-inner {
174
+ animation: none;
175
+ }
176
+ }
177
+
178
+ [data-slot='tooltip-content'] {
179
+ max-width: max(16rem, 50vw);
180
+ background-color: var(--color-popover);
181
+ color: var(--color-popover-foreground);
182
+ border-radius: 0.5rem;
183
+ box-shadow:
184
+ 0 0 0 1px color-mix(in oklab, var(--color-foreground) 10%, transparent),
185
+ 0 4px 6px -1px rgb(0 0 0 / 0.1),
186
+ 0 2px 4px -2px rgb(0 0 0 / 0.1);
187
+ }
188
+
189
+ [data-slot='tooltip-content'] > .rotate-45 {
190
+ background-color: var(--color-popover);
191
+ fill: var(--color-popover);
192
+ }
193
+
194
+ *:has(> [data-slot='tooltip-content']) {
195
+ pointer-events: none;
196
+ }
197
+
198
+ .viewer-surface {
199
+ background: var(--color-background);
200
+ }
201
+
202
+ .viewer-surface:fullscreen {
203
+ width: 100% !important;
204
+ }
205
+
206
+ .viewer-surface:fullscreen > .viewer-scene {
207
+ height: 100% !important;
208
+ }
209
+
210
+ .viewer-scene {
211
+ background-color: var(--color-background);
212
+ }
213
+
214
+ .viewer-scene.viewer-dots {
215
+ background-image: radial-gradient(
216
+ circle,
217
+ color-mix(in oklab, var(--color-muted-foreground) 30%, transparent) 1px,
218
+ transparent 1px
219
+ );
220
+ background-size: 16px 16px;
221
+ }
222
+
223
+ .viewer-surface canvas {
224
+ display: block;
225
+ width: 100%;
226
+ height: 100%;
227
+ background: transparent;
228
+ touch-action: none;
229
+ }
230
+
231
+ :fullscreen {
232
+ width: 100%;
233
+ height: 100%;
234
+ max-width: none;
235
+ margin: 0;
236
+ border: none;
237
+ border-radius: 0;
238
+ background: var(--color-background);
239
+ }
240
+
241
+ :fullscreen .viewer-scene {
242
+ height: 100%;
243
+ }
244
+
245
+ .viewer-fallback-fullscreen {
246
+ position: fixed;
247
+ inset: 0;
248
+ z-index: 50;
249
+ width: 100%;
250
+ height: 100%;
251
+ max-width: none;
252
+ margin: 0;
253
+ border: none;
254
+ border-radius: 0;
255
+ background: var(--color-background);
256
+ }
257
+
258
+ .viewer-fallback-fullscreen .viewer-scene {
259
+ height: 100%;
260
+ }
261
+
262
+ .chevron-edge__stroke {
263
+ fill: none;
264
+ vector-effect: non-scaling-stroke;
265
+ stroke-width: 2.25;
266
+ stroke-linecap: round;
267
+ stroke-linejoin: round;
268
+ pointer-events: none;
269
+ }
270
+
271
+ .chevron-edge__base {
272
+ stroke-width: 1.75;
273
+ stroke: color-mix(
274
+ in oklab,
275
+ var(--color-foreground) 44%,
276
+ var(--color-muted-foreground)
277
+ );
278
+ }
279
+
280
+ .chevron-edge--outgoing .chevron-edge__base {
281
+ stroke: color-mix(in oklab, #00c8c8 40%, transparent);
282
+ }
283
+
284
+ .chevron-edge--incoming .chevron-edge__base {
285
+ stroke: color-mix(in oklab, #c8c800 40%, transparent);
286
+ }
287
+
288
+ .chevron-edge__stroke--main {
289
+ stroke: color-mix(
290
+ in oklab,
291
+ var(--color-foreground) 38%,
292
+ var(--color-muted-foreground)
293
+ );
294
+ }
295
+
296
+ .chevron-edge__tick {
297
+ offset-rotate: auto;
298
+ offset-distance: var(--chevron-o);
299
+ }
300
+
301
+ .chevron-edge--incoming .chevron-edge__tick:not(:last-child),
302
+ .chevron-edge--outgoing .chevron-edge__tick:not(:last-child) {
303
+ animation: chevron-flow 0.5s linear infinite;
304
+ }
305
+
306
+ @keyframes chevron-flow {
307
+ to {
308
+ offset-distance: calc(var(--chevron-o) + 10px);
309
+ }
310
+ }
311
+
312
+ @media (prefers-reduced-motion: reduce) {
313
+ .chevron-edge__tick {
314
+ animation: none;
315
+ }
316
+
317
+ .chevron-edge__stroke--main {
318
+ opacity: 0.55;
319
+ }
320
+ }
321
+
322
+ .chevron-edge--outgoing .chevron-edge__stroke--main {
323
+ stroke: #00c8c8;
324
+ }
325
+
326
+ .chevron-edge--incoming .chevron-edge__stroke--main {
327
+ stroke: #c8c800;
328
+ }
329
+
330
+ .chevron-edge--dim {
331
+ opacity: 0.3;
332
+ }
333
+
334
+ .chevron-edge__label {
335
+ position: absolute;
336
+ pointer-events: all;
337
+ z-index: 10;
338
+ }
339
+
340
+ [data-slot='left-sidebar'] ul,
341
+ [data-slot='left-sidebar'] li {
342
+ list-style: none;
343
+ margin: 0;
344
+ padding: 0;
345
+ }
346
+
347
+ :root {
348
+ --z-overlay: 1100;
349
+ }
350
+
351
+ @utility z-overlay {
352
+ z-index: var(--z-overlay);
353
+ }
354
+
355
+ @utility scrollbar-thin {
356
+ scrollbar-width: thin;
357
+ scrollbar-color: var(--color-border) transparent;
358
+
359
+ &::-webkit-scrollbar {
360
+ width: 5px;
361
+ height: 5px;
362
+ }
363
+
364
+ &::-webkit-scrollbar-thumb {
365
+ border-radius: 5px;
366
+ background: var(--color-border);
367
+ }
368
+
369
+ &::-webkit-scrollbar-track {
370
+ background: transparent;
371
+ }
372
+
373
+ &::-webkit-scrollbar-corner {
374
+ display: none;
375
+ }
376
+ }
377
+
378
+ @utility no-scrollbar {
379
+ scrollbar-width: none;
380
+
381
+ &::-webkit-scrollbar {
382
+ display: none;
383
+ }
384
+ }
385
+
386
+ @utility scrollbar-none {
387
+ scrollbar-width: none;
388
+
389
+ &::-webkit-scrollbar {
390
+ display: none;
391
+ }
392
+ }
393
+
394
+ @utility scroll-fade-x {
395
+ mask-image: linear-gradient(to right, transparent, black 16px, black calc(100% - 16px), transparent);
396
+ }
397
+
398
+ @utility scroll-fade-b {
399
+ mask-image: linear-gradient(to bottom, black calc(100% - 24px), transparent);
400
+ }
401
+
402
+ @layer base {
403
+ a[href],
404
+ button,
405
+ summary,
406
+ select,
407
+ label[for],
408
+ label:has(> input[type='checkbox'], > input[type='radio']),
409
+ [role='button'],
410
+ [role='link'],
411
+ [role='tab'],
412
+ [role='menuitem'],
413
+ [role='option'],
414
+ [role='switch'],
415
+ input[type='checkbox'],
416
+ input[type='radio'],
417
+ input[type='file'],
418
+ input[type='submit'],
419
+ input[type='button'],
420
+ input[type='reset'],
421
+ input[type='range'],
422
+ input[type='color'] {
423
+ cursor: pointer;
424
+ }
425
+
426
+ :disabled,
427
+ [aria-disabled='true'] {
428
+ cursor: not-allowed;
429
+ }
430
+ }