@farming-labs/docs 0.2.87 → 0.2.88

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.
@@ -0,0 +1,1576 @@
1
+ /* @farming-labs/theme - unofficial shadcn/ui docs-inspired theme
2
+ * Visual reference: https://ui.shadcn.com/docs (MIT-licensed source).
3
+ * This preset recreates the documentation shell without copying branding or content.
4
+ */
5
+ #nd-docs-layout[data-fd-framework] {
6
+ --fd-framework-page-columns-with-toc: minmax(0, 1fr)
7
+ minmax(0, min(640px, calc(100% - var(--fd-toc-width, 256px))))
8
+ var(--fd-toc-width, 256px) minmax(0, 1fr);
9
+ --fd-framework-article-column: 2;
10
+ --fd-framework-toc-column: 3;
11
+ --fd-framework-article-width: min(640px, 100%);
12
+ --fd-framework-article-justify: center;
13
+ --fd-framework-article-padding: 32px 0 64px;
14
+ }
15
+
16
+ #nd-docs-layout:not([data-fd-framework]) article#nd-page {
17
+ width: 100%;
18
+ max-width: calc(var(--fd-content-width, 640px) + 64px);
19
+ padding: 32px 32px 64px;
20
+ justify-self: center;
21
+ }
22
+
23
+ :root {
24
+ --color-fd-primary: oklch(0 0 0);
25
+ --color-fd-primary-foreground: oklch(0.985 0 0);
26
+ --color-fd-ring: oklch(0.708 0 0);
27
+ --color-fd-background: oklch(1 0 0);
28
+ --color-fd-foreground: oklch(0 0 0);
29
+ --color-fd-card: oklch(1 0 0);
30
+ --color-fd-card-foreground: oklch(0 0 0);
31
+ --color-fd-popover: oklch(1 0 0);
32
+ --color-fd-popover-foreground: oklch(0 0 0);
33
+ --color-fd-secondary: oklch(0.97 0 0);
34
+ --color-fd-secondary-foreground: oklch(0.205 0 0);
35
+ --color-fd-muted: oklch(0.97 0 0);
36
+ --color-fd-muted-foreground: oklch(0.556 0 0);
37
+ --color-fd-accent: oklch(0.97 0 0);
38
+ --color-fd-accent-foreground: oklch(0.205 0 0);
39
+ --color-fd-border: oklch(0.922 0 0);
40
+ --radius: 0.625rem;
41
+ --fd-nav-height: 56px;
42
+ --fd-shadcn-sidebar-width: 288px;
43
+ --fd-shadcn-content-width: 640px;
44
+ --fd-shadcn-control: oklch(0.97 0 0);
45
+ --fd-shadcn-control-hover: oklch(0.94 0 0);
46
+ --fd-shadcn-nav-active: oklch(0.97 0 0);
47
+ --fd-shadcn-code: oklch(0.98 0 0);
48
+ --fd-shadcn-code-highlight: oklch(0.96 0 0);
49
+ --fd-shadcn-soft-border: color-mix(in oklab, var(--color-fd-border) 72%, transparent);
50
+ --fd-shadcn-overlay: rgb(0 0 0 / 45%);
51
+ --fd-shadcn-dialog-shadow: 0 16px 48px -12px rgb(0 0 0 / 24%);
52
+ }
53
+
54
+ :is(html.dark, body.dark, .dark) {
55
+ --color-fd-primary: oklch(0.922 0 0);
56
+ --color-fd-primary-foreground: oklch(0.205 0 0);
57
+ --color-fd-ring: oklch(0.556 0 0);
58
+ --color-fd-background: oklch(0.145 0 0);
59
+ --color-fd-foreground: oklch(0.985 0 0);
60
+ --color-fd-card: oklch(0.205 0 0);
61
+ --color-fd-card-foreground: oklch(0.985 0 0);
62
+ --color-fd-popover: oklch(0.205 0 0);
63
+ --color-fd-popover-foreground: oklch(0.985 0 0);
64
+ --color-fd-secondary: oklch(0.269 0 0);
65
+ --color-fd-secondary-foreground: oklch(0.985 0 0);
66
+ --color-fd-muted: oklch(0.269 0 0);
67
+ --color-fd-muted-foreground: oklch(0.708 0 0);
68
+ --color-fd-accent: oklch(0.269 0 0);
69
+ --color-fd-accent-foreground: oklch(0.985 0 0);
70
+ --color-fd-border: oklch(1 0 0 / 10%);
71
+ --fd-shadcn-control: oklch(0.205 0 0);
72
+ --fd-shadcn-control-hover: oklch(0.269 0 0);
73
+ --fd-shadcn-nav-active: lab(27.036% 0 0);
74
+ --fd-shadcn-code: oklch(0.2 0 0);
75
+ --fd-shadcn-code-highlight: oklch(0.27 0 0);
76
+ --fd-shadcn-overlay: rgb(0 0 0 / 65%);
77
+ --fd-shadcn-dialog-shadow: 0 20px 60px -16px rgb(0 0 0 / 60%);
78
+ }
79
+
80
+ body:has(#nd-docs-layout),
81
+ body:has(.fd-layout),
82
+ #nd-docs-layout,
83
+ .fd-layout {
84
+ background: var(--color-fd-background);
85
+ color: var(--color-fd-foreground);
86
+ font-family: var(
87
+ --fd-font-sans,
88
+ "Geist",
89
+ "Geist Fallback",
90
+ -apple-system,
91
+ BlinkMacSystemFont,
92
+ "Segoe UI",
93
+ sans-serif
94
+ );
95
+ font-size: var(--fd-body-size, 0.9375rem);
96
+ line-height: var(--fd-body-line-height, 1.75);
97
+ text-rendering: optimizeLegibility;
98
+ }
99
+
100
+ ::selection {
101
+ background: var(--color-fd-primary);
102
+ color: var(--color-fd-primary-foreground);
103
+ }
104
+
105
+ #nd-docs-layout > header,
106
+ [role="banner"],
107
+ .fd-header {
108
+ min-height: var(--fd-nav-height);
109
+ border-bottom: 0 !important;
110
+ background: color-mix(in oklab, var(--color-fd-background) 94%, transparent) !important;
111
+ box-shadow: none !important;
112
+ backdrop-filter: blur(12px);
113
+ }
114
+
115
+ #nd-docs-layout > header :is(a, button),
116
+ [role="banner"] :is(a, button),
117
+ .fd-header :is(a, button),
118
+ .fd-nav a {
119
+ border-radius: calc(var(--radius) * 0.8) !important;
120
+ color: var(--color-fd-foreground);
121
+ font-size: 0.8125rem;
122
+ font-weight: 500;
123
+ letter-spacing: -0.01em;
124
+ text-decoration: none;
125
+ }
126
+
127
+ #nd-docs-layout > header nav a:hover,
128
+ [role="banner"] nav a:hover,
129
+ .fd-nav a:hover,
130
+ .fd-nav a[data-active="true"] {
131
+ background: var(--color-fd-accent) !important;
132
+ color: var(--color-fd-accent-foreground) !important;
133
+ }
134
+
135
+ button[data-search-full],
136
+ [data-search-full],
137
+ .fd-sidebar-search-btn,
138
+ .fd-search-trigger-mobile {
139
+ min-height: 2rem;
140
+ border: 0 !important;
141
+ border-radius: calc(var(--radius) * 0.8) !important;
142
+ background: var(--fd-shadcn-control) !important;
143
+ color: var(--color-fd-muted-foreground) !important;
144
+ box-shadow: none !important;
145
+ font-size: 0.8125rem !important;
146
+ font-weight: 500 !important;
147
+ }
148
+
149
+ button[data-search-full]:hover,
150
+ [data-search-full]:hover,
151
+ .fd-sidebar-search-btn:hover,
152
+ .fd-search-trigger-mobile:hover {
153
+ background: var(--fd-shadcn-control-hover) !important;
154
+ color: var(--color-fd-foreground) !important;
155
+ }
156
+
157
+ button[data-search-full] kbd,
158
+ [data-search-full] kbd,
159
+ .fd-sidebar-search-kbd kbd {
160
+ border: 0 !important;
161
+ background: transparent !important;
162
+ color: var(--color-fd-muted-foreground) !important;
163
+ font-size: 0.6875rem !important;
164
+ font-weight: 500 !important;
165
+ }
166
+
167
+ aside#nd-sidebar,
168
+ .fd-sidebar {
169
+ border-right: 0 !important;
170
+ background: transparent !important;
171
+ background-image: none !important;
172
+ color: var(--color-fd-foreground);
173
+ box-shadow: none !important;
174
+ }
175
+
176
+ .fd-sidebar {
177
+ position: relative;
178
+ }
179
+
180
+ aside#nd-sidebar-mobile {
181
+ border-right: 0 !important;
182
+ background: var(--color-fd-background) !important;
183
+ background-image: none !important;
184
+ color: var(--color-fd-foreground);
185
+ box-shadow: none !important;
186
+ }
187
+
188
+ aside#nd-sidebar::after,
189
+ .fd-sidebar::after {
190
+ display: none !important;
191
+ }
192
+
193
+ aside#nd-sidebar [data-radix-scroll-area-viewport],
194
+ aside#nd-sidebar [data-radix-scroll-area-content],
195
+ aside#nd-sidebar .fd-sidebar,
196
+ aside#nd-sidebar-mobile .fd-sidebar {
197
+ background: transparent !important;
198
+ }
199
+
200
+ /* Match shadcn/ui's compact, unframed navigation rail. */
201
+ aside#nd-sidebar > div:first-child {
202
+ gap: 0.375rem !important;
203
+ padding: 0.5rem 1rem 0.25rem !important;
204
+ }
205
+
206
+ aside#nd-sidebar .fd-api-reference-switcher {
207
+ margin-bottom: 0 !important;
208
+ }
209
+
210
+ aside#nd-sidebar [data-radix-scroll-area-viewport] {
211
+ padding: 0 4rem 1rem 1.625rem !important;
212
+ }
213
+
214
+ aside#nd-sidebar-mobile [data-radix-scroll-area-viewport] {
215
+ padding: 0 1rem 1rem !important;
216
+ }
217
+
218
+ aside#nd-sidebar [data-radix-scroll-area-viewport] > div,
219
+ aside#nd-sidebar-mobile [data-radix-scroll-area-viewport] > div {
220
+ gap: 0.25rem !important;
221
+ }
222
+
223
+ aside#nd-sidebar [data-radix-scroll-area-viewport] [class~="gap-0.5"],
224
+ aside#nd-sidebar-mobile [data-radix-scroll-area-viewport] [class~="gap-0.5"] {
225
+ gap: 0.25rem !important;
226
+ }
227
+
228
+ aside#nd-sidebar [data-radix-scroll-area-viewport] a[data-active],
229
+ aside#nd-sidebar-mobile [data-radix-scroll-area-viewport] a[data-active] {
230
+ width: fit-content !important;
231
+ max-width: 100%;
232
+ min-height: 30px;
233
+ height: 30px;
234
+ padding: 0 0.5rem !important;
235
+ overflow: hidden;
236
+ white-space: nowrap;
237
+ text-overflow: ellipsis;
238
+ }
239
+
240
+ aside#nd-sidebar [data-radix-scroll-area-viewport] a[data-active] > svg,
241
+ aside#nd-sidebar-mobile [data-radix-scroll-area-viewport] a[data-active] > svg {
242
+ display: none !important;
243
+ }
244
+
245
+ aside#nd-sidebar
246
+ [data-radix-scroll-area-viewport]
247
+ [class~="wrap-anywhere"][class~="w-full"][class~="text-fd-muted-foreground"],
248
+ aside#nd-sidebar-mobile
249
+ [data-radix-scroll-area-viewport]
250
+ [class~="wrap-anywhere"][class~="w-full"][class~="text-fd-muted-foreground"] {
251
+ min-height: 1.75rem !important;
252
+ gap: 0 !important;
253
+ border: 0 !important;
254
+ background: transparent !important;
255
+ color: var(--color-fd-muted-foreground) !important;
256
+ font-size: 0.75rem !important;
257
+ font-weight: 500 !important;
258
+ padding: 0.25rem 0.5rem !important;
259
+ }
260
+
261
+ aside#nd-sidebar
262
+ [data-radix-scroll-area-viewport]
263
+ [class~="wrap-anywhere"][class~="w-full"][class~="text-fd-muted-foreground"]
264
+ > svg,
265
+ aside#nd-sidebar-mobile
266
+ [data-radix-scroll-area-viewport]
267
+ [class~="wrap-anywhere"][class~="w-full"][class~="text-fd-muted-foreground"]
268
+ > svg {
269
+ display: none !important;
270
+ }
271
+
272
+ aside#nd-sidebar
273
+ [data-radix-scroll-area-viewport]
274
+ [class*="before:inset-s-2.5"]::before,
275
+ aside#nd-sidebar-mobile
276
+ [data-radix-scroll-area-viewport]
277
+ [class*="before:inset-s-2.5"]::before {
278
+ display: none !important;
279
+ }
280
+
281
+ aside#nd-sidebar
282
+ [data-radix-scroll-area-viewport]
283
+ > div
284
+ > div:has(> div[id^="radix-"]),
285
+ aside#nd-sidebar-mobile
286
+ [data-radix-scroll-area-viewport]
287
+ > div
288
+ > div:has(> div[id^="radix-"]) {
289
+ margin-top: 0.75rem;
290
+ }
291
+
292
+ aside#nd-sidebar
293
+ [data-radix-scroll-area-viewport]
294
+ > div
295
+ > div:has(> div[id^="radix-"])
296
+ > a[data-active="false"],
297
+ aside#nd-sidebar-mobile
298
+ [data-radix-scroll-area-viewport]
299
+ > div
300
+ > div:has(> div[id^="radix-"])
301
+ > a[data-active="false"] {
302
+ color: var(--color-fd-muted-foreground) !important;
303
+ font-size: 0.75rem !important;
304
+ font-weight: 500 !important;
305
+ }
306
+
307
+ aside#nd-sidebar > div:last-child {
308
+ padding: 0.5rem 4rem 1rem 1.625rem !important;
309
+ }
310
+
311
+ aside#nd-sidebar > div:last-child > div {
312
+ width: fit-content !important;
313
+ margin-left: auto;
314
+ border: 0 !important;
315
+ background: transparent !important;
316
+ padding: 0 !important;
317
+ }
318
+
319
+ aside#nd-sidebar > div:last-child button {
320
+ border: 0 !important;
321
+ }
322
+
323
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-header {
324
+ gap: 0.375rem;
325
+ padding: 0.5rem 1rem 0;
326
+ }
327
+
328
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-search {
329
+ padding: 0.375rem 1rem;
330
+ }
331
+
332
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-nav {
333
+ padding: 0 4rem 1rem 1.625rem;
334
+ }
335
+
336
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-link {
337
+ width: fit-content;
338
+ max-width: 100%;
339
+ min-height: 30px;
340
+ height: 30px;
341
+ padding: 0 0.5rem;
342
+ overflow: hidden;
343
+ color: var(--color-fd-foreground);
344
+ font-size: 0.8rem;
345
+ font-weight: 500;
346
+ white-space: nowrap;
347
+ text-overflow: ellipsis;
348
+ }
349
+
350
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-link:hover {
351
+ background: var(--fd-shadcn-control-hover);
352
+ }
353
+
354
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-link-active,
355
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-link[data-active="true"] {
356
+ background: var(--fd-shadcn-nav-active) !important;
357
+ font-weight: 500;
358
+ }
359
+
360
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-icon {
361
+ display: none;
362
+ }
363
+
364
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder {
365
+ margin: 0.75rem 0 0;
366
+ }
367
+
368
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder-trigger {
369
+ width: fit-content;
370
+ max-width: 100%;
371
+ min-height: 32px;
372
+ padding: 0 0.5rem;
373
+ color: var(--color-fd-muted-foreground);
374
+ font-size: 0.75rem;
375
+ font-weight: 500;
376
+ }
377
+
378
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder-trigger:hover {
379
+ background: var(--fd-shadcn-control-hover);
380
+ }
381
+
382
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder-parent-link {
383
+ min-height: 0;
384
+ height: auto;
385
+ padding: 0;
386
+ }
387
+
388
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder-content {
389
+ display: flex;
390
+ flex-direction: column;
391
+ gap: 0.25rem;
392
+ margin: 0;
393
+ padding: 0.125rem 0 0;
394
+ }
395
+
396
+ #nd-docs-layout[data-fd-framework] .fd-sidebar-folder-content::before,
397
+ #nd-docs-layout[data-fd-framework]
398
+ .fd-sidebar-folder-content
399
+ .fd-sidebar-link-active::before {
400
+ display: none;
401
+ }
402
+
403
+ #nd-docs-layout[data-fd-framework] :is(.fd-sidebar-footer, .fd-sidebar-footer-custom) {
404
+ border-top: 0;
405
+ background: transparent;
406
+ }
407
+
408
+ aside#nd-sidebar a[data-active],
409
+ aside#nd-sidebar button[aria-expanded],
410
+ aside#nd-sidebar-mobile a[data-active],
411
+ aside#nd-sidebar-mobile button[aria-expanded],
412
+ .fd-sidebar a,
413
+ .fd-sidebar button {
414
+ min-height: 30px;
415
+ border: 1px solid transparent !important;
416
+ border-radius: calc(var(--radius) * 0.8) !important;
417
+ color: var(--color-fd-foreground) !important;
418
+ font-size: 0.8rem !important;
419
+ font-weight: 500 !important;
420
+ letter-spacing: -0.01em;
421
+ transition:
422
+ background-color 150ms ease,
423
+ border-color 150ms ease,
424
+ color 150ms ease;
425
+ }
426
+
427
+ aside#nd-sidebar a[data-active="false"]:hover,
428
+ aside#nd-sidebar button[aria-expanded]:hover,
429
+ aside#nd-sidebar-mobile a[data-active="false"]:hover,
430
+ aside#nd-sidebar-mobile button[aria-expanded]:hover,
431
+ .fd-sidebar a:hover,
432
+ .fd-sidebar button:hover {
433
+ background: var(--fd-shadcn-control-hover) !important;
434
+ color: var(--color-fd-accent-foreground) !important;
435
+ }
436
+
437
+ aside#nd-sidebar a[data-active="true"],
438
+ aside#nd-sidebar a[data-active="true"]:hover,
439
+ aside#nd-sidebar-mobile a[data-active="true"],
440
+ aside#nd-sidebar-mobile a[data-active="true"]:hover,
441
+ .fd-sidebar a[data-active="true"],
442
+ .fd-sidebar a[aria-current="page"] {
443
+ border-color: var(--fd-shadcn-nav-active) !important;
444
+ background: var(--fd-shadcn-nav-active) !important;
445
+ color: var(--color-fd-accent-foreground) !important;
446
+ box-shadow: none !important;
447
+ }
448
+
449
+ aside#nd-sidebar button.text-fd-muted-foreground,
450
+ .fd-sidebar-group-label,
451
+ .fd-sidebar [data-group-label] {
452
+ color: var(--color-fd-muted-foreground) !important;
453
+ font-size: 0.75rem !important;
454
+ font-weight: 500 !important;
455
+ letter-spacing: 0 !important;
456
+ text-transform: none !important;
457
+ }
458
+
459
+ #nd-toc,
460
+ .fd-toc {
461
+ border-left: 0 !important;
462
+ background: transparent !important;
463
+ box-shadow: none !important;
464
+ }
465
+
466
+ #nd-toc .border-s,
467
+ #nd-toc [class*="border-s"],
468
+ .fd-toc .border-s,
469
+ .fd-toc [class*="border-s"] {
470
+ border-inline-start-width: 0 !important;
471
+ border-left: 0 !important;
472
+ }
473
+
474
+ #nd-toc [style*="--track-top"] {
475
+ display: none;
476
+ }
477
+
478
+ #toc-title,
479
+ .fd-toc-title {
480
+ color: var(--color-fd-muted-foreground) !important;
481
+ font-size: 0.75rem !important;
482
+ font-weight: 500 !important;
483
+ letter-spacing: 0 !important;
484
+ }
485
+
486
+ .fd-toc-link,
487
+ .fd-toc-clerk .fd-toc-link {
488
+ border: 0 !important;
489
+ border-radius: 0 !important;
490
+ color: var(--color-fd-muted-foreground) !important;
491
+ font-size: 0.8rem !important;
492
+ line-height: 1.45;
493
+ padding: 0 !important;
494
+ text-decoration: none !important;
495
+ transition: color 150ms ease;
496
+ }
497
+
498
+ #nd-toc a {
499
+ border: 0 !important;
500
+ border-radius: 0 !important;
501
+ color: var(--color-fd-muted-foreground) !important;
502
+ font-size: 0.8rem !important;
503
+ line-height: 1.45;
504
+ padding: 0.1875rem 0 !important;
505
+ text-decoration: none !important;
506
+ transition: color 150ms ease;
507
+ }
508
+
509
+ .fd-toc-link:hover,
510
+ .fd-toc-link-active,
511
+ .fd-toc-clerk .fd-toc-link:hover,
512
+ .fd-toc-clerk .fd-toc-link[data-active="true"],
513
+ #nd-toc a:hover,
514
+ #nd-toc a[data-active="true"] {
515
+ background: transparent !important;
516
+ color: var(--color-fd-foreground) !important;
517
+ font-weight: 500;
518
+ }
519
+
520
+ .fd-page-title,
521
+ #nd-page > h1,
522
+ .fd-docs-content article h1,
523
+ #nd-page h1,
524
+ .fd-docs-content h1 {
525
+ color: var(--color-fd-foreground) !important;
526
+ font-size: 1.875rem !important;
527
+ font-weight: 600 !important;
528
+ letter-spacing: -0.025em !important;
529
+ line-height: 1.2 !important;
530
+ }
531
+
532
+ .fd-docs-content article h2,
533
+ #nd-page h2,
534
+ .fd-docs-content h2 {
535
+ color: var(--color-fd-foreground) !important;
536
+ font-size: 1.25rem !important;
537
+ font-weight: 600 !important;
538
+ letter-spacing: -0.015em !important;
539
+ line-height: 1.4 !important;
540
+ margin-top: 2.25rem;
541
+ }
542
+
543
+ .fd-docs-content article h3,
544
+ #nd-page h3,
545
+ .fd-docs-content h3 {
546
+ color: var(--color-fd-foreground) !important;
547
+ font-size: 1.125rem !important;
548
+ font-weight: 600 !important;
549
+ letter-spacing: -0.01em !important;
550
+ line-height: 1.45 !important;
551
+ }
552
+
553
+ #nd-page :is(h1, h2, h3, h4) > a.peer,
554
+ .fd-docs-content :is(h1, h2, h3, h4) > a.peer {
555
+ border: 0 !important;
556
+ background: transparent !important;
557
+ box-shadow: none !important;
558
+ color: inherit !important;
559
+ padding: 0 !important;
560
+ text-decoration: none !important;
561
+ }
562
+
563
+ .fd-page-description {
564
+ max-width: 80%;
565
+ color: var(--color-fd-muted-foreground) !important;
566
+ font-size: 1rem !important;
567
+ line-height: 1.5 !important;
568
+ }
569
+
570
+ .fd-docs-content,
571
+ #nd-page .prose {
572
+ color: var(--color-fd-foreground);
573
+ font-size: 0.9375rem;
574
+ line-height: 1.75;
575
+ }
576
+
577
+ .fd-docs-content :is(p, li, td, blockquote),
578
+ #nd-page .prose :is(p, li, td, blockquote) {
579
+ color: var(--color-fd-foreground);
580
+ line-height: 1.75;
581
+ }
582
+
583
+ .fd-docs-content a:not([data-card]),
584
+ #nd-page a:not([data-card]) {
585
+ color: inherit;
586
+ font-weight: 500;
587
+ text-decoration-color: color-mix(in oklab, currentColor 30%, transparent);
588
+ text-underline-offset: 3px;
589
+ }
590
+
591
+ .fd-docs-content a:not([data-card]):hover,
592
+ #nd-page a:not([data-card]):hover {
593
+ text-decoration-color: currentColor;
594
+ }
595
+
596
+ .fd-page-action-btn,
597
+ .fd-copy-btn,
598
+ .fd-ai-code-copy,
599
+ .fd-ai-model-dropdown-btn,
600
+ .fd-page-nav-card,
601
+ .fd-page-nav a,
602
+ #nd-page > div[class~="@container"] > a {
603
+ border: 0 !important;
604
+ border-radius: calc(var(--radius) * 0.8) !important;
605
+ background: var(--fd-shadcn-control) !important;
606
+ color: var(--color-fd-foreground) !important;
607
+ box-shadow: none !important;
608
+ font-size: 0.8rem !important;
609
+ font-weight: 500 !important;
610
+ }
611
+
612
+ .fd-page-action-btn:hover,
613
+ .fd-copy-btn:hover,
614
+ .fd-ai-code-copy:hover,
615
+ .fd-ai-model-dropdown-btn:hover,
616
+ .fd-page-nav-card:hover,
617
+ .fd-page-nav a:hover,
618
+ #nd-page > div[class~="@container"] > a:hover {
619
+ background: var(--fd-shadcn-control-hover) !important;
620
+ }
621
+
622
+ .fd-page-nav,
623
+ #nd-page > div[class~="@container"] {
624
+ display: grid !important;
625
+ grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
626
+ gap: 0.75rem !important;
627
+ margin-top: 1.5rem !important;
628
+ padding-top: 0 !important;
629
+ border-top: 0 !important;
630
+ }
631
+
632
+ .fd-page-nav > div:empty {
633
+ display: none;
634
+ }
635
+
636
+ .fd-page-nav-card,
637
+ .fd-page-nav a,
638
+ #nd-page > div[class~="@container"] > a {
639
+ display: flex !important;
640
+ min-width: 0;
641
+ min-height: 4rem !important;
642
+ flex-direction: column !important;
643
+ justify-content: center !important;
644
+ gap: 0.125rem !important;
645
+ padding: 0.75rem !important;
646
+ text-decoration: none !important;
647
+ }
648
+
649
+ .fd-page-nav-next,
650
+ #nd-page > div[class~="@container"] > a.text-end {
651
+ grid-column: 2;
652
+ }
653
+
654
+ .fd-page-nav-title,
655
+ #nd-page > div[class~="@container"] > a > div:first-child {
656
+ min-height: 0 !important;
657
+ color: var(--color-fd-foreground) !important;
658
+ font-size: 0.8125rem !important;
659
+ font-weight: 500 !important;
660
+ line-height: 1.35 !important;
661
+ }
662
+
663
+ .fd-page-nav-description,
664
+ #nd-page > div[class~="@container"] > a > p:last-child {
665
+ min-height: 0 !important;
666
+ margin: 0 !important;
667
+ color: var(--color-fd-muted-foreground) !important;
668
+ font-size: 0.75rem !important;
669
+ line-height: 1.35 !important;
670
+ }
671
+
672
+ .fd-card,
673
+ [data-card],
674
+ .fd-hover-link-card {
675
+ border: 1px solid var(--fd-shadcn-soft-border) !important;
676
+ border-radius: calc(var(--radius) * 1.2) !important;
677
+ background: var(--color-fd-card) !important;
678
+ color: var(--color-fd-card-foreground) !important;
679
+ box-shadow: none !important;
680
+ transition:
681
+ border-color 150ms ease,
682
+ background-color 150ms ease !important;
683
+ }
684
+
685
+ .fd-feedback-input,
686
+ .fd-feedback-choice {
687
+ border: 0 !important;
688
+ border-radius: calc(var(--radius) * 1.4) !important;
689
+ background: var(--fd-shadcn-code) !important;
690
+ box-shadow: none !important;
691
+ }
692
+
693
+ .fd-card:hover,
694
+ [data-card]:hover,
695
+ .fd-hover-link-card:hover {
696
+ border-color: var(--color-fd-border) !important;
697
+ background: color-mix(in oklab, var(--color-fd-accent) 55%, var(--color-fd-card)) !important;
698
+ }
699
+
700
+ .fd-card :is(h3, h4),
701
+ [data-card] :is(h3, h4),
702
+ .fd-hover-link-card :is(h3, h4) {
703
+ color: var(--color-fd-card-foreground) !important;
704
+ font-weight: 600 !important;
705
+ }
706
+
707
+ .fd-callout,
708
+ [data-callout],
709
+ [style*="--callout-color"] {
710
+ border: 1px solid var(--fd-shadcn-soft-border) !important;
711
+ border-radius: calc(var(--radius) * 1.2) !important;
712
+ background: color-mix(in oklab, var(--color-fd-card) 92%, transparent) !important;
713
+ color: var(--color-fd-foreground) !important;
714
+ box-shadow: none !important;
715
+ }
716
+
717
+ .fd-callout > [role="none"],
718
+ [data-callout] > [role="none"],
719
+ [style*="--callout-color"] > [role="none"] {
720
+ width: 2px !important;
721
+ border-radius: 999px !important;
722
+ background: var(--callout-color, var(--color-fd-border)) !important;
723
+ opacity: 0.65;
724
+ }
725
+
726
+ .fd-tabs-list,
727
+ [role="tablist"] {
728
+ border: 0 !important;
729
+ border-bottom: 1px solid var(--color-fd-border) !important;
730
+ border-radius: 0 !important;
731
+ background: transparent !important;
732
+ gap: 1rem !important;
733
+ padding: 0 0.75rem !important;
734
+ }
735
+
736
+ .fd-tabs-trigger,
737
+ .fd-tab-trigger,
738
+ [role="tab"] {
739
+ border: 0 !important;
740
+ border-bottom: 2px solid transparent !important;
741
+ border-radius: 0 !important;
742
+ background: transparent !important;
743
+ color: var(--color-fd-muted-foreground) !important;
744
+ font-size: 0.8125rem !important;
745
+ font-weight: 500 !important;
746
+ min-height: 2.5rem !important;
747
+ padding: 0.625rem 0 !important;
748
+ box-shadow: none !important;
749
+ }
750
+
751
+ .fd-tabs-trigger[data-state="active"],
752
+ .fd-tab-trigger[data-state="active"],
753
+ .fd-tab-trigger.fd-tab-active,
754
+ [role="tab"][aria-selected="true"],
755
+ [role="tab"][data-active="true"] {
756
+ border-bottom-color: var(--color-fd-foreground) !important;
757
+ color: var(--color-fd-foreground) !important;
758
+ }
759
+
760
+ .fd-tabs-trigger:focus-visible,
761
+ .fd-tab-trigger:focus-visible,
762
+ [role="tab"]:focus-visible {
763
+ outline: 2px solid var(--color-fd-ring) !important;
764
+ outline-offset: -2px !important;
765
+ }
766
+
767
+ :is(.fd-docs-content, #nd-page .prose)
768
+ [data-orientation="horizontal"]:has(> [role="tablist"]) {
769
+ overflow: hidden;
770
+ border: 1px solid var(--fd-shadcn-soft-border) !important;
771
+ border-radius: calc(var(--radius) * 1.2) !important;
772
+ background: var(--color-fd-card) !important;
773
+ box-shadow: none !important;
774
+ }
775
+
776
+ :is(.fd-docs-content, #nd-page .prose)
777
+ [data-orientation="horizontal"]:has(> [role="tablist"])
778
+ > [role="tabpanel"] {
779
+ background: var(--color-fd-card) !important;
780
+ }
781
+
782
+ .fd-docs-content pre,
783
+ .fd-docs-content .shiki,
784
+ .fd-docs-content [data-codeblock],
785
+ figure.shiki,
786
+ .fd-codeblock,
787
+ .fd-ai-code-block {
788
+ border: 0 !important;
789
+ border-radius: calc(var(--radius) * 1.4) !important;
790
+ background: var(--fd-shadcn-code) !important;
791
+ color: var(--color-fd-foreground) !important;
792
+ box-shadow: none !important;
793
+ overflow: hidden;
794
+ }
795
+
796
+ .fd-ai-code-block {
797
+ --sh-class: #6f42c1;
798
+ --sh-identifier: #24292e;
799
+ --sh-keyword: #d73a49;
800
+ --sh-string: #032f62;
801
+ --sh-property: #005cc5;
802
+ --sh-entity: #6f42c1;
803
+ --sh-sign: #24292e;
804
+ --sh-comment: #6a737d;
805
+ --sh-jsxliterals: #005cc5;
806
+ margin: 1rem 0 !important;
807
+ }
808
+
809
+ :is(html.dark, body.dark, .dark) .fd-ai-code-block {
810
+ --sh-class: #b392f0;
811
+ --sh-identifier: #e1e4e8;
812
+ --sh-keyword: #f97583;
813
+ --sh-string: #9ecbff;
814
+ --sh-property: #79b8ff;
815
+ --sh-entity: #b392f0;
816
+ --sh-sign: #e1e4e8;
817
+ --sh-comment: #6a737d;
818
+ --sh-jsxliterals: #85e89d;
819
+ }
820
+
821
+ .fd-docs-content pre,
822
+ figure.shiki pre,
823
+ .fd-codeblock pre {
824
+ background: transparent !important;
825
+ box-shadow: none !important;
826
+ }
827
+
828
+ .fd-codeblock-title,
829
+ figure.shiki:has(figcaption) > div:first-child,
830
+ .fd-ai-code-header {
831
+ display: flex !important;
832
+ min-height: 2.5rem !important;
833
+ align-items: center !important;
834
+ border-bottom: 1px solid color-mix(in oklab, var(--color-fd-border) 46%, transparent) !important;
835
+ background: var(--fd-shadcn-code) !important;
836
+ color: var(--color-fd-muted-foreground) !important;
837
+ font-family: var(--fd-font-mono, "Geist Mono", ui-monospace, monospace);
838
+ font-size: 0.8rem !important;
839
+ font-weight: 500 !important;
840
+ padding: 0 1rem !important;
841
+ }
842
+
843
+ .fd-ai-code-header {
844
+ position: relative;
845
+ gap: 0.5rem;
846
+ }
847
+
848
+ .fd-ai-code-header::after {
849
+ position: absolute;
850
+ inset: 0;
851
+ background: repeating-linear-gradient(
852
+ -45deg,
853
+ currentColor,
854
+ currentColor 1px,
855
+ transparent 1px,
856
+ transparent 6px
857
+ );
858
+ content: "";
859
+ opacity: 0.03;
860
+ pointer-events: none;
861
+ }
862
+
863
+ :is(html.dark, body.dark, .dark) .fd-ai-code-header::after {
864
+ opacity: 0.05;
865
+ }
866
+
867
+ .fd-ai-code-header > * {
868
+ position: relative;
869
+ z-index: 1;
870
+ }
871
+
872
+ .fd-ai-code-lang {
873
+ display: flex;
874
+ flex: 1;
875
+ align-items: center;
876
+ gap: 0.5rem;
877
+ color: var(--color-fd-muted-foreground) !important;
878
+ font-size: 0.8rem !important;
879
+ letter-spacing: normal !important;
880
+ text-transform: none !important;
881
+ }
882
+
883
+ .fd-ai-code-lang::before {
884
+ color: currentColor;
885
+ content: ">_";
886
+ font-family: var(--fd-font-mono, "Geist Mono", ui-monospace, monospace);
887
+ font-size: 0.72rem;
888
+ font-weight: 600;
889
+ letter-spacing: -0.12em;
890
+ }
891
+
892
+ .fd-ai-code-copy {
893
+ display: inline-flex !important;
894
+ width: 2rem;
895
+ height: 2rem;
896
+ align-items: center;
897
+ justify-content: center;
898
+ padding: 0 !important;
899
+ font-size: 0 !important;
900
+ opacity: 0;
901
+ transition:
902
+ opacity 150ms ease,
903
+ background-color 150ms ease !important;
904
+ }
905
+
906
+ .fd-ai-code-copy::before {
907
+ display: block;
908
+ width: 1rem;
909
+ height: 1rem;
910
+ background: currentColor;
911
+ content: "";
912
+ -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E") center / contain no-repeat;
913
+ mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect width='8' height='4' x='8' y='2' rx='1' ry='1'/%3E%3Cpath d='M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2'/%3E%3C/svg%3E") center / contain no-repeat;
914
+ }
915
+
916
+ .fd-ai-code-block:hover .fd-ai-code-copy,
917
+ .fd-ai-code-copy:focus-visible {
918
+ opacity: 1;
919
+ }
920
+
921
+ .fd-ai-code-block pre,
922
+ .fd-ai-fm-msg-content .fd-ai-code-block pre {
923
+ margin: 0 !important;
924
+ padding: 0.625rem 0.4375rem 0.625rem 0.375rem !important;
925
+ background: transparent !important;
926
+ box-shadow: none !important;
927
+ }
928
+
929
+ .fd-ai-code-block code,
930
+ .fd-ai-fm-msg-content .fd-ai-code-block code {
931
+ font-family: var(--fd-font-mono, "Geist Mono", ui-monospace, monospace) !important;
932
+ font-size: 0.8125rem !important;
933
+ line-height: 1.5 !important;
934
+ }
935
+
936
+ figure.shiki figcaption {
937
+ display: block !important;
938
+ min-height: 0 !important;
939
+ border: 0 !important;
940
+ background: transparent !important;
941
+ padding: 0 !important;
942
+ }
943
+
944
+ .fd-docs-content :not(pre) > code,
945
+ :is(.fd-ai-bubble-ai, .fd-ai-fm-msg-content) :not(pre) > code {
946
+ border: 0 !important;
947
+ border-radius: calc(var(--radius) * 0.6);
948
+ background: var(--color-fd-muted);
949
+ color: var(--color-fd-foreground);
950
+ font-family: var(--fd-font-mono, "Geist Mono", ui-monospace, monospace);
951
+ font-size: 0.85em;
952
+ padding: 0.125em 0.3em;
953
+ }
954
+
955
+ @media (hover: none) {
956
+ .fd-ai-code-copy {
957
+ opacity: 1;
958
+ }
959
+ }
960
+
961
+ .fd-table-wrapper {
962
+ border: 1px solid var(--fd-shadcn-soft-border) !important;
963
+ border-radius: calc(var(--radius) * 1.2) !important;
964
+ background: transparent !important;
965
+ box-shadow: none !important;
966
+ }
967
+
968
+ .fd-table-wrapper table,
969
+ :is(.fd-docs-content, .prose) table,
970
+ .prose table {
971
+ border: 0 !important;
972
+ border-radius: 0 !important;
973
+ background: transparent !important;
974
+ box-shadow: none !important;
975
+ }
976
+
977
+ .fd-table-wrapper thead,
978
+ :is(.fd-docs-content, .prose) table thead,
979
+ .prose table thead {
980
+ border-bottom: 1px solid var(--color-fd-border) !important;
981
+ background: var(--color-fd-card) !important;
982
+ }
983
+
984
+ .fd-table-wrapper th,
985
+ :is(.fd-docs-content, .prose) table th,
986
+ .prose table th {
987
+ background: var(--color-fd-card) !important;
988
+ color: var(--color-fd-foreground) !important;
989
+ font-weight: 500;
990
+ }
991
+
992
+ .fd-table-wrapper :is(th, td),
993
+ .prose :is(th, td) {
994
+ border-color: var(--color-fd-border) !important;
995
+ }
996
+
997
+ .fd-callout,
998
+ [data-callout],
999
+ [style*="--callout-color"] {
1000
+ color: var(--color-fd-foreground) !important;
1001
+ }
1002
+
1003
+ .fd-callout-title {
1004
+ color: var(--color-fd-foreground);
1005
+ font-weight: 600;
1006
+ }
1007
+
1008
+ :is(.fd-docs-content, #nd-page .prose) blockquote {
1009
+ margin: 1.25rem 0 !important;
1010
+ border-inline-start: 2px solid var(--color-fd-border) !important;
1011
+ background: transparent !important;
1012
+ color: var(--color-fd-muted-foreground) !important;
1013
+ font-style: normal !important;
1014
+ padding: 0.125rem 0 0.125rem 1rem !important;
1015
+ }
1016
+
1017
+ :is(.fd-docs-content, #nd-page .prose) blockquote :is(p, li) {
1018
+ color: inherit !important;
1019
+ }
1020
+
1021
+ :is(.fd-docs-content, #nd-page .prose) details {
1022
+ overflow: hidden;
1023
+ margin: 1rem 0;
1024
+ border: 1px solid var(--fd-shadcn-soft-border);
1025
+ border-radius: calc(var(--radius) * 1.2);
1026
+ background: var(--color-fd-card);
1027
+ }
1028
+
1029
+ :is(.fd-docs-content, #nd-page .prose) details > summary {
1030
+ min-height: 2.75rem;
1031
+ cursor: pointer;
1032
+ color: var(--color-fd-card-foreground);
1033
+ font-size: 0.875rem;
1034
+ font-weight: 500;
1035
+ padding: 0.75rem 1rem;
1036
+ transition: background-color 150ms ease;
1037
+ }
1038
+
1039
+ :is(.fd-docs-content, #nd-page .prose) details > summary:hover {
1040
+ background: color-mix(in oklab, var(--color-fd-accent) 55%, transparent);
1041
+ }
1042
+
1043
+ :is(.fd-docs-content, #nd-page .prose) details[open] > summary {
1044
+ border-bottom: 1px solid var(--fd-shadcn-soft-border);
1045
+ }
1046
+
1047
+ :is(.fd-docs-content, #nd-page .prose) details > :not(summary) {
1048
+ margin-inline: 1rem;
1049
+ }
1050
+
1051
+ :is(.fd-docs-content, #nd-page .prose)
1052
+ [data-orientation="vertical"][class~="divide-y"] {
1053
+ overflow: hidden;
1054
+ border: 1px solid var(--fd-shadcn-soft-border) !important;
1055
+ border-radius: calc(var(--radius) * 1.2) !important;
1056
+ background: var(--color-fd-card) !important;
1057
+ box-shadow: none !important;
1058
+ }
1059
+
1060
+ :is(.fd-docs-content, #nd-page .prose)
1061
+ [data-orientation="vertical"][class~="divide-y"]
1062
+ [data-radix-collection-item] {
1063
+ min-height: 2.75rem;
1064
+ color: var(--color-fd-card-foreground) !important;
1065
+ font-size: 0.875rem !important;
1066
+ font-weight: 500 !important;
1067
+ transition: background-color 150ms ease;
1068
+ }
1069
+
1070
+ :is(.fd-docs-content, #nd-page .prose)
1071
+ [data-orientation="vertical"][class~="divide-y"]
1072
+ [data-radix-collection-item]:hover {
1073
+ background: color-mix(in oklab, var(--color-fd-accent) 55%, transparent) !important;
1074
+ }
1075
+
1076
+ .fd-steps {
1077
+ border-inline-start-color: var(--fd-shadcn-soft-border) !important;
1078
+ }
1079
+
1080
+ .fd-step::before {
1081
+ width: 1.75rem !important;
1082
+ height: 1.75rem !important;
1083
+ border: 1px solid var(--color-fd-border);
1084
+ background: var(--color-fd-background) !important;
1085
+ color: var(--color-fd-foreground) !important;
1086
+ font-size: 0.75rem !important;
1087
+ font-weight: 600;
1088
+ box-shadow: 0 0 0 4px var(--color-fd-background);
1089
+ }
1090
+
1091
+ :is(.fd-docs-content, #nd-page .prose) kbd {
1092
+ display: inline-flex;
1093
+ min-width: 1.5rem;
1094
+ min-height: 1.5rem;
1095
+ align-items: center;
1096
+ justify-content: center;
1097
+ border: 1px solid var(--color-fd-border);
1098
+ border-radius: calc(var(--radius) * 0.6);
1099
+ background: var(--color-fd-muted);
1100
+ color: var(--color-fd-muted-foreground);
1101
+ font-family: var(--fd-font-mono, "Geist Mono", ui-monospace, monospace);
1102
+ font-size: 0.75rem;
1103
+ font-weight: 500;
1104
+ padding: 0.125rem 0.375rem;
1105
+ box-shadow: 0 1px 0 color-mix(in oklab, var(--color-fd-border) 80%, transparent);
1106
+ }
1107
+
1108
+ :is(.fd-docs-content, #nd-page .prose) hr {
1109
+ border-color: var(--fd-shadcn-soft-border) !important;
1110
+ }
1111
+
1112
+ .omni-overlay,
1113
+ .fd-ai-overlay {
1114
+ background: var(--fd-shadcn-overlay) !important;
1115
+ backdrop-filter: blur(4px) !important;
1116
+ }
1117
+
1118
+ .omni-content,
1119
+ .fd-ai-dialog {
1120
+ overflow: hidden !important;
1121
+ border: 1px solid var(--color-fd-border) !important;
1122
+ border-radius: calc(var(--radius) * 1.2) !important;
1123
+ background: var(--color-fd-popover) !important;
1124
+ color: var(--color-fd-popover-foreground) !important;
1125
+ box-shadow: var(--fd-shadcn-dialog-shadow) !important;
1126
+ }
1127
+
1128
+ .omni-content {
1129
+ width: min(640px, calc(100% - 1.5rem));
1130
+ }
1131
+
1132
+ .omni-header,
1133
+ .omni-footer,
1134
+ .fd-ai-header,
1135
+ .fd-ai-tab-bar,
1136
+ .fd-ai-search-wrap,
1137
+ .fd-ai-chat-footer {
1138
+ border-color: var(--fd-shadcn-soft-border) !important;
1139
+ background: var(--color-fd-popover) !important;
1140
+ }
1141
+
1142
+ .omni-search-row {
1143
+ min-height: 3rem;
1144
+ gap: 0.625rem;
1145
+ padding: 0.625rem 0.75rem;
1146
+ }
1147
+
1148
+ .omni-search-icon svg {
1149
+ width: 1rem;
1150
+ height: 1rem;
1151
+ }
1152
+
1153
+ .omni-search-input {
1154
+ font-size: 0.875rem;
1155
+ line-height: 1.5rem;
1156
+ }
1157
+
1158
+ .omni-kbd,
1159
+ .omni-close-btn,
1160
+ .omni-footer-hint svg {
1161
+ border: 1px solid var(--color-fd-border) !important;
1162
+ border-radius: calc(var(--radius) * 0.6) !important;
1163
+ background: var(--fd-shadcn-control) !important;
1164
+ color: var(--color-fd-muted-foreground) !important;
1165
+ box-shadow: none !important;
1166
+ }
1167
+
1168
+ .omni-close-btn {
1169
+ min-width: 2.25rem;
1170
+ min-height: 1.75rem;
1171
+ padding: 0.25rem 0.5rem;
1172
+ }
1173
+
1174
+ .omni-body {
1175
+ padding: 0.375rem;
1176
+ }
1177
+
1178
+ .omni-group-items {
1179
+ gap: 0.125rem;
1180
+ }
1181
+
1182
+ .omni-item,
1183
+ .omni-item-ext,
1184
+ .omni-filter-option,
1185
+ .fd-ai-result,
1186
+ .fd-ai-model-dropdown-item {
1187
+ border: 0 !important;
1188
+ border-radius: calc(var(--radius) * 0.7) !important;
1189
+ background: transparent !important;
1190
+ box-shadow: none !important;
1191
+ }
1192
+
1193
+ .omni-item {
1194
+ padding: 0.625rem 0.75rem;
1195
+ }
1196
+
1197
+ .omni-item:hover,
1198
+ .omni-item-active,
1199
+ .omni-item[data-selected="true"],
1200
+ .omni-filter-option:hover,
1201
+ .omni-filter-option-active,
1202
+ .fd-ai-result:hover,
1203
+ .fd-ai-result[data-active="true"],
1204
+ .fd-ai-model-dropdown-item:hover,
1205
+ .fd-ai-model-dropdown-item[data-active="true"] {
1206
+ background: var(--color-fd-accent) !important;
1207
+ color: var(--color-fd-accent-foreground) !important;
1208
+ }
1209
+
1210
+ .omni-item-label {
1211
+ font-size: 0.8125rem;
1212
+ font-weight: 500;
1213
+ }
1214
+
1215
+ .omni-item-description {
1216
+ margin-top: 0.375rem;
1217
+ border-left-color: var(--fd-shadcn-soft-border);
1218
+ font-size: 0.8125rem;
1219
+ line-height: 1.35rem;
1220
+ }
1221
+
1222
+ .omni-highlight {
1223
+ background: transparent !important;
1224
+ color: inherit !important;
1225
+ font-weight: 600;
1226
+ text-decoration: underline;
1227
+ text-decoration-color: color-mix(in oklab, currentColor 35%, transparent);
1228
+ text-underline-offset: 2px;
1229
+ }
1230
+
1231
+ .omni-empty {
1232
+ display: grid;
1233
+ min-height: 9rem;
1234
+ place-content: center;
1235
+ padding: 1.5rem;
1236
+ }
1237
+
1238
+ .omni-empty-icon {
1239
+ border-radius: calc(var(--radius) * 0.8);
1240
+ background: var(--fd-shadcn-control);
1241
+ }
1242
+
1243
+ .omni-footer {
1244
+ background: color-mix(in oklab, var(--color-fd-muted) 45%, transparent) !important;
1245
+ }
1246
+
1247
+ .omni-footer-inner {
1248
+ min-height: 2.5rem;
1249
+ padding: 0.5rem 0.75rem;
1250
+ }
1251
+
1252
+ .omni-filter-menu,
1253
+ .fd-ai-model-dropdown-menu {
1254
+ border: 1px solid var(--color-fd-border) !important;
1255
+ border-radius: calc(var(--radius) * 0.9) !important;
1256
+ background: var(--color-fd-popover) !important;
1257
+ color: var(--color-fd-popover-foreground) !important;
1258
+ box-shadow: var(--fd-shadcn-dialog-shadow) !important;
1259
+ }
1260
+
1261
+ .fd-ai-header {
1262
+ min-height: 3rem;
1263
+ padding: 0.625rem 0.75rem;
1264
+ }
1265
+
1266
+ .fd-ai-header-title {
1267
+ font-size: 0.875rem;
1268
+ font-weight: 600;
1269
+ }
1270
+
1271
+ .fd-ai-esc,
1272
+ .fd-ai-close-btn,
1273
+ .fd-ai-fm-close-btn {
1274
+ border: 0 !important;
1275
+ border-radius: calc(var(--radius) * 0.7) !important;
1276
+ background: var(--fd-shadcn-control) !important;
1277
+ color: var(--color-fd-muted-foreground) !important;
1278
+ box-shadow: none !important;
1279
+ }
1280
+
1281
+ .fd-ai-close-btn:hover,
1282
+ .fd-ai-fm-close-btn:hover {
1283
+ background: var(--fd-shadcn-control-hover) !important;
1284
+ color: var(--color-fd-foreground) !important;
1285
+ }
1286
+
1287
+ .fd-ai-clear-btn,
1288
+ .fd-ai-fm-clear-btn {
1289
+ border: 0 !important;
1290
+ border-radius: calc(var(--radius) * 0.6) !important;
1291
+ background: transparent !important;
1292
+ color: var(--color-fd-muted-foreground) !important;
1293
+ box-shadow: none !important;
1294
+ }
1295
+
1296
+ .fd-ai-clear-btn:hover,
1297
+ .fd-ai-fm-clear-btn:hover {
1298
+ background: transparent !important;
1299
+ color: var(--color-fd-foreground) !important;
1300
+ }
1301
+
1302
+ .fd-ai-tab-bar {
1303
+ gap: 0.25rem;
1304
+ padding: 0 0.75rem;
1305
+ }
1306
+
1307
+ .fd-ai-tab {
1308
+ border: 0 !important;
1309
+ border-bottom: 2px solid transparent !important;
1310
+ border-radius: 0 !important;
1311
+ background: transparent !important;
1312
+ padding: 0.625rem 0.5rem;
1313
+ }
1314
+
1315
+ .fd-ai-tab[data-active="true"] {
1316
+ border-bottom-color: var(--color-fd-foreground) !important;
1317
+ color: var(--color-fd-foreground) !important;
1318
+ }
1319
+
1320
+ .fd-ai-results {
1321
+ padding: 0.375rem;
1322
+ }
1323
+
1324
+ .fd-ai-result {
1325
+ padding: 0.625rem 0.75rem;
1326
+ }
1327
+
1328
+ .fd-ai-input-wrap {
1329
+ border: 1px solid var(--color-fd-border) !important;
1330
+ border-radius: calc(var(--radius) * 0.9) !important;
1331
+ background: var(--color-fd-background) !important;
1332
+ box-shadow: none !important;
1333
+ }
1334
+
1335
+ .fd-ai-suggestion,
1336
+ .fd-ai-fm-suggestion {
1337
+ border: 0 !important;
1338
+ border-radius: calc(var(--radius) * 0.8) !important;
1339
+ background: var(--fd-shadcn-control) !important;
1340
+ color: var(--color-fd-muted-foreground) !important;
1341
+ box-shadow: none !important;
1342
+ opacity: 1;
1343
+ }
1344
+
1345
+ .fd-ai-suggestion:hover,
1346
+ .fd-ai-fm-suggestion:hover {
1347
+ background: var(--fd-shadcn-control-hover) !important;
1348
+ color: var(--color-fd-foreground) !important;
1349
+ }
1350
+
1351
+ .fd-ai-bubble-user,
1352
+ .fd-ai-bubble-ai {
1353
+ border-radius: calc(var(--radius) * 0.9) !important;
1354
+ box-shadow: none !important;
1355
+ }
1356
+
1357
+ .fd-ai-bubble-ai {
1358
+ background: var(--fd-shadcn-control) !important;
1359
+ }
1360
+
1361
+ .fd-ai-feedback-btn {
1362
+ border: 0 !important;
1363
+ border-radius: calc(var(--radius) * 0.6) !important;
1364
+ }
1365
+
1366
+ .fd-ai-model-dropdown-btn {
1367
+ min-height: 1.875rem;
1368
+ border: 0 !important;
1369
+ border-radius: calc(var(--radius) * 0.7) !important;
1370
+ background: var(--fd-shadcn-control) !important;
1371
+ color: var(--color-fd-muted-foreground) !important;
1372
+ box-shadow: none !important;
1373
+ }
1374
+
1375
+ .fd-ai-model-dropdown-item {
1376
+ min-height: 2rem;
1377
+ padding: 0.375rem 0.5rem;
1378
+ }
1379
+
1380
+ .fd-ai-fm-overlay {
1381
+ background: color-mix(in oklab, var(--color-fd-background) 90%, transparent) !important;
1382
+ backdrop-filter: blur(12px) !important;
1383
+ }
1384
+
1385
+ .fd-ai-fm-topbar,
1386
+ .fd-ai-fm-messages {
1387
+ width: min(720px, 100%);
1388
+ }
1389
+
1390
+ .fd-ai-fm-topbar {
1391
+ padding: 0.75rem 0;
1392
+ }
1393
+
1394
+ .fd-ai-fm-close-btn {
1395
+ width: 2rem;
1396
+ height: 2rem;
1397
+ }
1398
+
1399
+ .fd-ai-fm-input-bar--open {
1400
+ bottom: 1rem;
1401
+ width: min(720px, calc(100vw - 2rem));
1402
+ }
1403
+
1404
+ .fd-ai-fm-input-container {
1405
+ border: 1px solid var(--color-fd-border) !important;
1406
+ border-radius: calc(var(--radius) * 1.2) !important;
1407
+ background: var(--color-fd-popover) !important;
1408
+ color: var(--color-fd-popover-foreground) !important;
1409
+ box-shadow: var(--fd-shadcn-dialog-shadow) !important;
1410
+ }
1411
+
1412
+ .fd-ai-model-select-row--fm {
1413
+ padding: 0.5rem 0.5rem 0;
1414
+ }
1415
+
1416
+ .fd-ai-fm-input-wrap {
1417
+ min-height: 3.25rem;
1418
+ align-items: center;
1419
+ padding-right: 0.5rem;
1420
+ }
1421
+
1422
+ .fd-ai-fm-input {
1423
+ padding: 0.75rem;
1424
+ font-size: 0.875rem;
1425
+ }
1426
+
1427
+ .fd-ai-fm-suggestions-area {
1428
+ border-top: 1px solid var(--fd-shadcn-soft-border);
1429
+ padding: 0.625rem 0.75rem;
1430
+ }
1431
+
1432
+ .fd-ai-fm-suggestions-label {
1433
+ margin-bottom: 0.5rem;
1434
+ font-size: 0.75rem;
1435
+ }
1436
+
1437
+ .fd-ai-fm-suggestions {
1438
+ gap: 0.375rem;
1439
+ }
1440
+
1441
+ .fd-ai-fm-suggestion {
1442
+ padding: 0.375rem 0.625rem;
1443
+ }
1444
+
1445
+ .fd-ai-fm-footer-bar,
1446
+ .fd-ai-modal-footer {
1447
+ border-top-color: var(--fd-shadcn-soft-border) !important;
1448
+ background: color-mix(in oklab, var(--color-fd-muted) 45%, transparent) !important;
1449
+ }
1450
+
1451
+ .fd-ai-floating-btn,
1452
+ .fd-ai-fm-trigger-btn {
1453
+ height: 2.5rem;
1454
+ border: 1px solid var(--color-fd-border) !important;
1455
+ border-radius: calc(var(--radius) * 0.9) !important;
1456
+ background: var(--color-fd-popover) !important;
1457
+ color: var(--color-fd-muted-foreground) !important;
1458
+ box-shadow: 0 1px 2px rgb(0 0 0 / 8%) !important;
1459
+ transform: none !important;
1460
+ }
1461
+
1462
+ .fd-ai-floating-btn:hover,
1463
+ .fd-ai-fm-trigger-btn:hover {
1464
+ background: var(--color-fd-accent) !important;
1465
+ color: var(--color-fd-accent-foreground) !important;
1466
+ }
1467
+
1468
+ .fd-ai-send-btn,
1469
+ .fd-ai-fm-send-btn {
1470
+ border: 0 !important;
1471
+ border-radius: calc(var(--radius) * 0.7) !important;
1472
+ background: var(--color-fd-secondary) !important;
1473
+ color: var(--color-fd-muted-foreground) !important;
1474
+ box-shadow: none !important;
1475
+ }
1476
+
1477
+ .fd-ai-send-btn[data-active="true"],
1478
+ .fd-ai-fm-send-btn[data-active="true"],
1479
+ .fd-feedback-submit {
1480
+ border: 0 !important;
1481
+ border-radius: calc(var(--radius) * 0.8) !important;
1482
+ background: var(--color-fd-primary) !important;
1483
+ color: var(--color-fd-primary-foreground) !important;
1484
+ box-shadow: none !important;
1485
+ }
1486
+
1487
+ :is(.omni-content, .fd-ai-dialog, .fd-ai-fm-overlay, .fd-ai-fm-input-bar)
1488
+ button:focus-visible {
1489
+ outline: 2px solid var(--color-fd-ring);
1490
+ outline-offset: 2px;
1491
+ }
1492
+
1493
+ .omni-search-input:focus-visible,
1494
+ .fd-ai-input:focus-visible,
1495
+ .fd-ai-fm-input:focus-visible {
1496
+ outline: none !important;
1497
+ }
1498
+
1499
+ #nd-docs-layout :is(a, button, input, textarea, select):focus-visible,
1500
+ .fd-layout :is(a, button, input, textarea, select):focus-visible {
1501
+ outline: 2px solid var(--color-fd-ring);
1502
+ outline-offset: 2px;
1503
+ }
1504
+
1505
+ @media (min-width: 1024px) {
1506
+ #nd-docs-layout:not([data-fd-framework]) aside#nd-sidebar {
1507
+ position: sticky;
1508
+ top: 0;
1509
+ align-self: start;
1510
+ min-height: 0;
1511
+ height: 100dvh;
1512
+ }
1513
+ }
1514
+
1515
+ @media (max-width: 767px) {
1516
+ .omni-content {
1517
+ top: 0.5rem;
1518
+ width: calc(100% - 1rem);
1519
+ max-height: calc(100dvh - 1rem);
1520
+ }
1521
+
1522
+ .fd-ai-fm-input-bar--open {
1523
+ bottom: 0.5rem;
1524
+ width: calc(100vw - 1rem);
1525
+ }
1526
+
1527
+ .fd-ai-fm-topbar,
1528
+ .fd-ai-fm-messages {
1529
+ width: 100%;
1530
+ }
1531
+
1532
+ .fd-page-nav,
1533
+ #nd-page > div[class~="@container"] {
1534
+ grid-template-columns: 1fr !important;
1535
+ }
1536
+
1537
+ .fd-page-nav-next,
1538
+ #nd-page > div[class~="@container"] > a.text-end {
1539
+ grid-column: auto;
1540
+ }
1541
+
1542
+ #nd-docs-layout[data-fd-framework] {
1543
+ --fd-framework-article-padding: 24px 16px 48px;
1544
+ }
1545
+
1546
+ #nd-docs-layout:not([data-fd-framework]) article#nd-page {
1547
+ max-width: 100%;
1548
+ padding: 24px 16px 48px;
1549
+ }
1550
+
1551
+ .fd-page-title,
1552
+ #nd-page > h1,
1553
+ .fd-docs-content article h1,
1554
+ #nd-page h1,
1555
+ .fd-docs-content h1 {
1556
+ font-size: 1.5rem !important;
1557
+ }
1558
+
1559
+ .fd-page-description {
1560
+ max-width: 100%;
1561
+ font-size: 0.875rem !important;
1562
+ }
1563
+
1564
+ .fd-docs-content,
1565
+ #nd-page .prose {
1566
+ font-size: 0.9375rem;
1567
+ }
1568
+ }
1569
+
1570
+ @media (prefers-reduced-motion: reduce) {
1571
+ #nd-docs-layout *,
1572
+ .fd-layout * {
1573
+ scroll-behavior: auto !important;
1574
+ transition-duration: 0.01ms !important;
1575
+ }
1576
+ }