dialkit 1.0.0 → 1.2.0

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 (97) hide show
  1. package/README.md +293 -2
  2. package/dist/index.cjs +905 -363
  3. package/dist/index.cjs.map +1 -1
  4. package/dist/index.d.cts +46 -9
  5. package/dist/index.d.ts +46 -9
  6. package/dist/index.js +910 -370
  7. package/dist/index.js.map +1 -1
  8. package/dist/solid/index.cjs +1042 -532
  9. package/dist/solid/index.cjs.map +1 -1
  10. package/dist/solid/index.d.cts +36 -3
  11. package/dist/solid/index.d.ts +36 -3
  12. package/dist/solid/index.js +911 -402
  13. package/dist/solid/index.js.map +1 -1
  14. package/dist/store/index.cjs +490 -0
  15. package/dist/store/index.cjs.map +1 -0
  16. package/dist/store/index.d.cts +146 -0
  17. package/dist/store/index.d.ts +146 -0
  18. package/dist/store/index.js +465 -0
  19. package/dist/store/index.js.map +1 -0
  20. package/dist/styles.css +287 -25
  21. package/dist/svelte/Portal.svelte +30 -0
  22. package/dist/svelte/Portal.svelte.d.ts +9 -0
  23. package/dist/svelte/Portal.svelte.d.ts.map +1 -0
  24. package/dist/svelte/components/ButtonGroup.svelte +16 -0
  25. package/dist/svelte/components/ButtonGroup.svelte.d.ts +11 -0
  26. package/dist/svelte/components/ButtonGroup.svelte.d.ts.map +1 -0
  27. package/dist/svelte/components/ColorControl.svelte +81 -0
  28. package/dist/svelte/components/ColorControl.svelte.d.ts +9 -0
  29. package/dist/svelte/components/ColorControl.svelte.d.ts.map +1 -0
  30. package/dist/svelte/components/ControlRenderer.svelte +96 -0
  31. package/dist/svelte/components/ControlRenderer.svelte.d.ts +11 -0
  32. package/dist/svelte/components/ControlRenderer.svelte.d.ts.map +1 -0
  33. package/dist/svelte/components/DialRoot.svelte +79 -0
  34. package/dist/svelte/components/DialRoot.svelte.d.ts +14 -0
  35. package/dist/svelte/components/DialRoot.svelte.d.ts.map +1 -0
  36. package/dist/svelte/components/EasingVisualization.svelte +50 -0
  37. package/dist/svelte/components/EasingVisualization.svelte.d.ts +10 -0
  38. package/dist/svelte/components/EasingVisualization.svelte.d.ts.map +1 -0
  39. package/dist/svelte/components/Folder.svelte +213 -0
  40. package/dist/svelte/components/Folder.svelte.d.ts +14 -0
  41. package/dist/svelte/components/Folder.svelte.d.ts.map +1 -0
  42. package/dist/svelte/components/Panel.svelte +149 -0
  43. package/dist/svelte/components/Panel.svelte.d.ts +10 -0
  44. package/dist/svelte/components/Panel.svelte.d.ts.map +1 -0
  45. package/dist/svelte/components/PresetManager.svelte +157 -0
  46. package/dist/svelte/components/PresetManager.svelte.d.ts +10 -0
  47. package/dist/svelte/components/PresetManager.svelte.d.ts.map +1 -0
  48. package/dist/svelte/components/SegmentedControl.svelte +62 -0
  49. package/dist/svelte/components/SegmentedControl.svelte.d.ts +13 -0
  50. package/dist/svelte/components/SegmentedControl.svelte.d.ts.map +1 -0
  51. package/dist/svelte/components/SelectControl.svelte +152 -0
  52. package/dist/svelte/components/SelectControl.svelte.d.ts +14 -0
  53. package/dist/svelte/components/SelectControl.svelte.d.ts.map +1 -0
  54. package/dist/svelte/components/ShortcutListener.svelte +265 -0
  55. package/dist/svelte/components/ShortcutListener.svelte.d.ts +13 -0
  56. package/dist/svelte/components/ShortcutListener.svelte.d.ts.map +1 -0
  57. package/dist/svelte/components/ShortcutsMenu.svelte +128 -0
  58. package/dist/svelte/components/ShortcutsMenu.svelte.d.ts +7 -0
  59. package/dist/svelte/components/ShortcutsMenu.svelte.d.ts.map +1 -0
  60. package/dist/svelte/components/Slider.svelte +332 -0
  61. package/dist/svelte/components/Slider.svelte.d.ts +16 -0
  62. package/dist/svelte/components/Slider.svelte.d.ts.map +1 -0
  63. package/dist/svelte/components/SpringControl.svelte +126 -0
  64. package/dist/svelte/components/SpringControl.svelte.d.ts +12 -0
  65. package/dist/svelte/components/SpringControl.svelte.d.ts.map +1 -0
  66. package/dist/svelte/components/SpringVisualization.svelte +115 -0
  67. package/dist/svelte/components/SpringVisualization.svelte.d.ts +9 -0
  68. package/dist/svelte/components/SpringVisualization.svelte.d.ts.map +1 -0
  69. package/dist/svelte/components/TextControl.svelte +19 -0
  70. package/dist/svelte/components/TextControl.svelte.d.ts +10 -0
  71. package/dist/svelte/components/TextControl.svelte.d.ts.map +1 -0
  72. package/dist/svelte/components/Toggle.svelte +32 -0
  73. package/dist/svelte/components/Toggle.svelte.d.ts +12 -0
  74. package/dist/svelte/components/Toggle.svelte.d.ts.map +1 -0
  75. package/dist/svelte/components/TransitionControl.svelte +203 -0
  76. package/dist/svelte/components/TransitionControl.svelte.d.ts +12 -0
  77. package/dist/svelte/components/TransitionControl.svelte.d.ts.map +1 -0
  78. package/dist/svelte/components/transitions.d.ts +6 -0
  79. package/dist/svelte/components/transitions.d.ts.map +1 -0
  80. package/dist/svelte/components/transitions.js +14 -0
  81. package/dist/svelte/createDialKit.svelte.d.ts +8 -0
  82. package/dist/svelte/createDialKit.svelte.d.ts.map +1 -0
  83. package/dist/svelte/createDialKit.svelte.js +82 -0
  84. package/dist/svelte/index.d.ts +23 -0
  85. package/dist/svelte/index.d.ts.map +1 -0
  86. package/dist/svelte/index.js +23 -0
  87. package/dist/svelte/shims.d.ts +9 -0
  88. package/dist/svelte/theme-css.d.ts +2 -0
  89. package/dist/svelte/theme-css.d.ts.map +1 -0
  90. package/dist/svelte/theme-css.js +1328 -0
  91. package/dist/vue/index.cjs +3056 -0
  92. package/dist/vue/index.cjs.map +1 -0
  93. package/dist/vue/index.d.cts +675 -0
  94. package/dist/vue/index.d.ts +675 -0
  95. package/dist/vue/index.js +3014 -0
  96. package/dist/vue/index.js.map +1 -0
  97. package/package.json +50 -6
@@ -0,0 +1,1328 @@
1
+ // Auto-generated from src/styles/theme.css — do not edit
2
+ export const themeCSS = `@import url('https://fonts.googleapis.com/css2?family=Geist+Mono:wght@100..900&display=swap');
3
+
4
+ /* Dialkit Theme - Dark glassmorphic design */
5
+ .dialkit-root {
6
+ /* Surfaces */
7
+ --dial-surface: rgba(255, 255, 255, 0.05);
8
+ --dial-surface-hover: rgba(255, 255, 255, 0.1);
9
+ --dial-surface-active: rgba(255, 255, 255, 0.11);
10
+ --dial-surface-subtle: rgba(255, 255, 255, 0.06);
11
+
12
+ /* Text hierarchy - 3 levels */
13
+ --dial-text-root: #FFFFFF; /* Root title */
14
+ --dial-text-section: rgba(255, 255, 255, 0.7); /* Section titles + carets */
15
+ --dial-text-label: rgba(255, 255, 255, 0.7); /* Input labels */
16
+ --dial-text-focus: #ffffff;
17
+
18
+ /* Legacy aliases */
19
+ --dial-text-primary: rgba(255, 255, 255, 0.95);
20
+ --dial-text-secondary: rgba(255, 255, 255, 0.6);
21
+ --dial-text-tertiary: rgba(255, 255, 255, 0.4);
22
+
23
+ /* Borders */
24
+ --dial-border: rgba(255, 255, 255, 0.1);
25
+ --dial-border-hover: rgba(255, 255, 255, 0.15);
26
+
27
+ /* Glassmorphic panel */
28
+ --dial-glass-bg: #212121;
29
+ --dial-dropdown-bg: #2a2a2a;
30
+ --dial-backdrop-blur: 20px;
31
+ --dial-radius: 8px;
32
+ --dial-row-height: 36px;
33
+ --dial-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
34
+ --dial-shadow-collapsed: 0 4px 16px rgba(0, 0, 0, 0.25);
35
+ --dial-shadow-dropdown: 0 8px 24px rgba(0, 0, 0, 0.4);
36
+
37
+ /* Fonts */
38
+ font-family: system-ui, -apple-system, 'SF Pro Display', sans-serif;
39
+ -webkit-font-smoothing: antialiased;
40
+ -moz-osx-font-smoothing: grayscale;
41
+ }
42
+
43
+ .dialkit-panel {
44
+ position: fixed;
45
+ z-index: 9999;
46
+ max-height: calc(100vh - 32px);
47
+ overflow: visible;
48
+ }
49
+
50
+ /* Inline mode */
51
+ .dialkit-root[data-mode="inline"] {
52
+ height: 100%;
53
+ }
54
+
55
+ .dialkit-panel[data-mode="inline"] {
56
+ position: static;
57
+ z-index: auto;
58
+ max-height: 100%;
59
+ height: 100%;
60
+ overflow: hidden;
61
+ }
62
+
63
+ .dialkit-panel-inner {
64
+ background: var(--dial-glass-bg);
65
+ border: 1px solid var(--dial-border);
66
+ border-radius: 14px;
67
+ backdrop-filter: blur(var(--dial-backdrop-blur));
68
+ -webkit-backdrop-filter: blur(var(--dial-backdrop-blur));
69
+ padding: 10px 12px 0 12px;
70
+ transform: translateZ(0);
71
+ transform-origin: top right;
72
+ }
73
+
74
+ .dialkit-panel[data-position="top-left"] .dialkit-panel-inner {
75
+ transform-origin: top left;
76
+ max-height: calc(100vh - 80px);
77
+ overflow-y: auto;
78
+ }
79
+
80
+
81
+ .dialkit-panel-inner[data-collapsed="true"] {
82
+ border-radius: 50%;
83
+ padding: 12px;
84
+ box-sizing: border-box;
85
+ }
86
+
87
+ .dialkit-panel-inner[data-collapsed="true"] .dialkit-panel-header {
88
+ padding-bottom: 0;
89
+ margin-bottom: 0;
90
+ border-bottom: none;
91
+ }
92
+
93
+ .dialkit-panel-inner[data-collapsed="true"] .dialkit-folder-title-row {
94
+ display: none;
95
+ }
96
+
97
+ .dialkit-panel-inner[data-collapsed="true"] .dialkit-folder-header-top {
98
+ justify-content: center;
99
+ padding: 0;
100
+ }
101
+
102
+ .dialkit-panel-inner::-webkit-scrollbar {
103
+ display: none;
104
+ }
105
+
106
+ .dialkit-panel-inner {
107
+ -ms-overflow-style: none;
108
+ scrollbar-width: none;
109
+ }
110
+
111
+ .dialkit-panel-inline {
112
+ width: 100%;
113
+ height: 100%;
114
+ max-height: none;
115
+ overflow-y: auto;
116
+ box-shadow: none;
117
+ border-radius: 0;
118
+ border: none;
119
+ box-sizing: border-box;
120
+ }
121
+
122
+ .dialkit-panel[data-mode="inline"] .dialkit-panel-wrapper {
123
+ display: flex;
124
+ flex-direction: column;
125
+ width: 100%;
126
+ height: 100%;
127
+ }
128
+
129
+ /* Position variants */
130
+ .dialkit-panel[data-position="top-right"] {
131
+ top: 16px;
132
+ right: 16px;
133
+ }
134
+
135
+ .dialkit-panel[data-position="top-left"] {
136
+ top: 16px;
137
+ left: 16px;
138
+ }
139
+
140
+ .dialkit-panel[data-position="bottom-right"] {
141
+ bottom: 16px;
142
+ right: 16px;
143
+ }
144
+
145
+ .dialkit-panel[data-position="bottom-left"] {
146
+ bottom: 16px;
147
+ left: 16px;
148
+ }
149
+
150
+ /* Folder */
151
+ .dialkit-folder {
152
+ padding-bottom: 8px;
153
+ margin-bottom: 8px;
154
+ border-bottom: 1px solid var(--dial-surface-subtle);
155
+ }
156
+
157
+ .dialkit-folder:last-child:not(.dialkit-folder-root) {
158
+ padding-bottom: 0;
159
+ margin-bottom: 0;
160
+ }
161
+
162
+ .dialkit-folder-root {
163
+ padding-bottom: 0;
164
+ margin-bottom: 0;
165
+ border-bottom: none;
166
+ }
167
+
168
+ .dialkit-panel-header {
169
+ padding-bottom: 6px;
170
+ margin-bottom: 12px;
171
+ border-bottom: 1px solid var(--dial-surface-subtle);
172
+ }
173
+
174
+ .dialkit-folder-header {
175
+ cursor: pointer;
176
+ user-select: none;
177
+ }
178
+
179
+ .dialkit-folder-header-top {
180
+ display: flex;
181
+ align-items: center;
182
+ justify-content: space-between;
183
+ padding: 0 0 8px 0;
184
+ }
185
+
186
+
187
+ .dialkit-folder-title {
188
+ font-size: 13px;
189
+ font-weight: 600;
190
+ color: var(--dial-text-section);
191
+ letter-spacing: -0.01em;
192
+ transform: translateY(-0.5px);
193
+ transition: color 0.15s;
194
+ }
195
+
196
+ .dialkit-folder-title-root {
197
+ font-size: 15px;
198
+ font-weight: 600;
199
+ color: var(--dial-text-root);
200
+ transform: translateZ(0);
201
+ }
202
+
203
+ .dialkit-folder-title-row {
204
+ display: flex;
205
+ align-items: center;
206
+ gap: 6px;
207
+ flex: 1;
208
+ white-space: nowrap;
209
+ overflow: hidden;
210
+ }
211
+
212
+ .dialkit-folder-copy {
213
+ display: flex;
214
+ align-items: center;
215
+ justify-content: center;
216
+ width: 20px;
217
+ height: 20px;
218
+ padding: 0;
219
+ background: transparent;
220
+ border: none;
221
+ cursor: pointer;
222
+ }
223
+
224
+ .dialkit-folder-copy svg {
225
+ width: 14px;
226
+ height: 14px;
227
+ color: var(--dial-text-section);
228
+ }
229
+
230
+ .dialkit-folder-icon {
231
+ width: 20px;
232
+ height: 20px;
233
+ padding: 2px;
234
+ box-sizing: border-box;
235
+ flex-shrink: 0;
236
+ color: var(--dial-text-label);
237
+ opacity: 0.6;
238
+ }
239
+
240
+ .dialkit-panel-icon {
241
+ position: absolute;
242
+ top: 12px;
243
+ right: 12px;
244
+ width: 16px;
245
+ height: 16px;
246
+ color: var(--dial-text-focus);
247
+ z-index: 1;
248
+ }
249
+
250
+ .dialkit-folder-content {
251
+ will-change: transform;
252
+ }
253
+
254
+ .dialkit-folder-inner {
255
+ display: flex;
256
+ flex-direction: column;
257
+ gap: 6px;
258
+ padding-bottom: 10px;
259
+ }
260
+
261
+ /* Non-root folders - top & bottom HR dividers */
262
+ .dialkit-folder:not(.dialkit-folder-root) {
263
+ border-top: 1px solid var(--dial-surface-subtle);
264
+ border-bottom: 1px solid var(--dial-surface-subtle);
265
+ margin-top: 4px;
266
+ margin-bottom: 4px;
267
+ padding-bottom: 0;
268
+ }
269
+
270
+ /* Adjacent non-root folders collapse gap and share a single divider */
271
+ .dialkit-folder:not(.dialkit-folder-root) + .dialkit-folder:not(.dialkit-folder-root) {
272
+ margin-top: -10px;
273
+ border-top: none;
274
+ }
275
+
276
+ /* Non-root folder header - match row height */
277
+ .dialkit-folder:not(.dialkit-folder-root) > .dialkit-folder-header {
278
+ height: var(--dial-row-height);
279
+ padding: 0;
280
+ }
281
+
282
+ .dialkit-folder:not(.dialkit-folder-root) > .dialkit-folder-header > .dialkit-folder-header-top {
283
+ padding: 0;
284
+ height: 100%;
285
+ }
286
+
287
+ /* Root folder inner needs no extra bottom padding */
288
+ .dialkit-folder-root > .dialkit-folder-content > .dialkit-folder-inner {
289
+ padding-bottom: 0;
290
+ }
291
+
292
+ /* Content spacing handled by folder-inner gap */
293
+
294
+
295
+ /* Slider */
296
+ .dialkit-slider-wrapper {
297
+ position: relative;
298
+ height: var(--dial-row-height);
299
+ }
300
+
301
+ .dialkit-slider {
302
+ position: absolute;
303
+ top: 0;
304
+ left: 0;
305
+ width: 100%;
306
+ height: 100%;
307
+ cursor: pointer;
308
+ user-select: none;
309
+ overflow: hidden;
310
+ background: var(--dial-surface);
311
+ border-radius: var(--dial-radius);
312
+ touch-action: none;
313
+ }
314
+
315
+ .dialkit-slider-hashmarks {
316
+ position: absolute;
317
+ inset: 0;
318
+ pointer-events: none;
319
+ }
320
+
321
+ .dialkit-slider-hashmark {
322
+ position: absolute;
323
+ top: 50%;
324
+ width: 1px;
325
+ height: 8px;
326
+ border-radius: 999px;
327
+ transform: translateX(-50%) translateY(-50%);
328
+ background: rgba(255, 255, 255, 0);
329
+ transition: background 200ms;
330
+ }
331
+
332
+ .dialkit-slider-active .dialkit-slider-hashmark {
333
+ background: var(--dial-border-hover);
334
+ }
335
+
336
+ .dialkit-slider-active .dialkit-slider-value {
337
+ color: var(--dial-text-focus);
338
+ }
339
+
340
+ .dialkit-slider-fill {
341
+ position: absolute;
342
+ top: 0;
343
+ bottom: 0;
344
+ left: 0;
345
+ background: var(--dial-surface-active);
346
+ transition: background 0.15s;
347
+ pointer-events: none;
348
+ }
349
+
350
+ .dialkit-slider-active .dialkit-slider-fill {
351
+ background: var(--dial-border-hover);
352
+ }
353
+
354
+ .dialkit-slider-handle {
355
+ position: absolute;
356
+ top: 50%;
357
+ width: 3px;
358
+ height: 20px;
359
+ border-radius: 999px;
360
+ background: var(--dial-text-primary);
361
+ pointer-events: none;
362
+ }
363
+
364
+ .dialkit-slider-label {
365
+ position: absolute;
366
+ left: 10px;
367
+ top: 50%;
368
+ transform: translateY(calc(-50% - 0.5px));
369
+ font-size: 13px;
370
+ font-weight: 500;
371
+ color: var(--dial-text-label);
372
+ pointer-events: none;
373
+ transition: color 0.15s;
374
+ display: inline-flex;
375
+ align-items: center;
376
+ }
377
+
378
+ .dialkit-slider-value {
379
+ position: absolute;
380
+ right: 10px;
381
+ top: 50%;
382
+ transform: translateY(calc(-50% + 0.5px));
383
+ font-size: 13px;
384
+ font-weight: 500;
385
+ font-family: 'Geist Mono', monospace;
386
+ color: var(--dial-text-label);
387
+ pointer-events: auto;
388
+ transition: color 0.15s, border-color 0.15s;
389
+ border-bottom: 1px solid transparent;
390
+ padding-bottom: 1px;
391
+ }
392
+
393
+ .dialkit-slider-value-editable {
394
+ border-bottom-color: var(--dial-text-label);
395
+ }
396
+
397
+ .dialkit-slider-input {
398
+ position: absolute;
399
+ right: 10px;
400
+ top: 50%;
401
+ transform: translateY(-50%);
402
+ width: 4ch;
403
+ min-width: 3ch;
404
+ max-width: 6ch;
405
+ font-size: 13px;
406
+ font-weight: 500;
407
+ font-family: 'Geist Mono', monospace;
408
+ color: var(--dial-text-label);
409
+ background: transparent;
410
+ border: none;
411
+ border-bottom: 1px solid var(--dial-text-label);
412
+ padding: 0 0 1px 0;
413
+ outline: none;
414
+ text-align: right;
415
+ }
416
+
417
+ .dialkit-slider-input:focus {
418
+ color: var(--dial-text-focus);
419
+ }
420
+
421
+ /* Segmented Control */
422
+ .dialkit-segmented {
423
+ position: relative;
424
+ display: flex;
425
+ padding: 2px;
426
+ background: transparent;
427
+ border-radius: var(--dial-radius);
428
+ }
429
+
430
+ .dialkit-segmented-pill {
431
+ position: absolute;
432
+ top: 2px;
433
+ bottom: 2px;
434
+ background: var(--dial-surface-active);
435
+ border-radius: 6px;
436
+ z-index: 0;
437
+ pointer-events: none;
438
+ }
439
+
440
+ .dialkit-segmented-button {
441
+ position: relative;
442
+ z-index: 1;
443
+ flex: 0 0 auto;
444
+ padding: 6px 8px;
445
+ font-family: inherit;
446
+ font-size: 13px;
447
+ font-weight: 500;
448
+ background: transparent;
449
+ border: none;
450
+ cursor: pointer;
451
+ transition: color 0.15s;
452
+ }
453
+
454
+ .dialkit-segmented-button[data-active="true"] {
455
+ color: var(--dial-text-primary);
456
+ }
457
+
458
+ .dialkit-segmented-button[data-active="false"] {
459
+ color: var(--dial-text-label);
460
+ }
461
+
462
+ /* Toggle */
463
+ .dialkit-toggle {
464
+ display: flex;
465
+ align-items: center;
466
+ justify-content: space-between;
467
+ padding: 10px 16px;
468
+ background: var(--dial-surface);
469
+ border-radius: var(--dial-radius);
470
+ cursor: pointer;
471
+ user-select: none;
472
+ transition: background 0.15s;
473
+ }
474
+
475
+ .dialkit-toggle:hover {
476
+ background: var(--dial-surface-hover);
477
+ }
478
+
479
+ .dialkit-toggle-label {
480
+ font-size: 13px;
481
+ font-weight: 500;
482
+ color: var(--dial-text-label);
483
+ transition: color 0.15s;
484
+ }
485
+
486
+ .dialkit-toggle[data-checked="true"] .dialkit-toggle-label {
487
+ color: var(--dial-text-primary);
488
+ }
489
+
490
+ .dialkit-toggle-track {
491
+ width: 36px;
492
+ height: 20px;
493
+ border-radius: 10px;
494
+ background: var(--dial-surface-active);
495
+ transition: background 0.2s;
496
+ position: relative;
497
+ }
498
+
499
+ .dialkit-toggle[data-checked="true"] .dialkit-toggle-track {
500
+ background: var(--dial-border-hover);
501
+ }
502
+
503
+ .dialkit-toggle-thumb {
504
+ position: absolute;
505
+ top: 2px;
506
+ width: 16px;
507
+ height: 16px;
508
+ border-radius: 8px;
509
+ background: var(--dial-text-primary);
510
+ }
511
+
512
+ /* Button Group */
513
+ .dialkit-button-group {
514
+ display: flex;
515
+ flex-direction: column;
516
+ gap: 6px;
517
+ }
518
+
519
+ .dialkit-button {
520
+ flex: 1;
521
+ padding: 10px 16px;
522
+ font-family: inherit;
523
+ font-size: 13px;
524
+ font-weight: 500;
525
+ color: var(--dial-text-secondary);
526
+ background: var(--dial-surface);
527
+ border: none;
528
+ border-radius: var(--dial-radius);
529
+ cursor: pointer;
530
+ transition: background 0.15s, color 0.15s;
531
+ }
532
+
533
+ .dialkit-button:hover {
534
+ background: var(--dial-surface-hover);
535
+ color: var(--dial-text-primary);
536
+ }
537
+
538
+ .dialkit-button:active {
539
+ background: var(--dial-surface-active);
540
+ }
541
+
542
+ /* Labeled Control Row (label + control side by side) */
543
+ .dialkit-labeled-control {
544
+ display: flex;
545
+ align-items: center;
546
+ justify-content: space-between;
547
+ gap: 12px;
548
+ height: var(--dial-row-height);
549
+ padding: 2px 10px 2px 12px;
550
+ background: var(--dial-surface);
551
+ border-radius: var(--dial-radius);
552
+ }
553
+
554
+ .dialkit-labeled-control-label {
555
+ display: flex;
556
+ align-items: center;
557
+ font-size: 13px;
558
+ font-weight: 500;
559
+ color: var(--dial-text-label);
560
+ flex-shrink: 0;
561
+ line-height: 17px;
562
+ }
563
+
564
+ .dialkit-labeled-control .dialkit-segmented {
565
+ flex-shrink: 0;
566
+ margin-right: -6px;
567
+ }
568
+
569
+ .dialkit-action-button {
570
+ width: 160px;
571
+ flex-shrink: 0;
572
+ padding: 10px 16px;
573
+ font-family: inherit;
574
+ font-size: 13px;
575
+ font-weight: 500;
576
+ color: var(--dial-text-secondary);
577
+ background: var(--dial-surface);
578
+ border: none;
579
+ border-radius: var(--dial-radius);
580
+ cursor: pointer;
581
+ transition: background 0.15s, color 0.15s;
582
+ }
583
+
584
+ .dialkit-action-button:hover {
585
+ background: var(--dial-surface-hover);
586
+ color: var(--dial-text-primary);
587
+ }
588
+
589
+ .dialkit-action-button:active {
590
+ background: var(--dial-surface-active);
591
+ }
592
+
593
+ .dialkit-actions-group {
594
+ align-items: flex-start;
595
+ }
596
+
597
+ .dialkit-actions-stack {
598
+ display: flex;
599
+ flex-direction: column;
600
+ gap: 6px;
601
+ width: 160px;
602
+ }
603
+
604
+ /* Spring Visualization */
605
+ .dialkit-spring-viz {
606
+ width: 100%;
607
+ border-radius: var(--dial-radius);
608
+ background: var(--dial-surface);
609
+ overflow: visible;
610
+ }
611
+
612
+ .dialkit-easing-viz {
613
+ width: 100%;
614
+ aspect-ratio: 256 / 140;
615
+ }
616
+
617
+ /* Panel Wrapper (contains panel + toolbar) */
618
+ .dialkit-panel-wrapper {
619
+ display: inline-flex;
620
+ flex-direction: column;
621
+ }
622
+
623
+ /* Panel Toolbar */
624
+ .dialkit-panel-toolbar {
625
+ display: flex;
626
+ align-items: center;
627
+ gap: 6px;
628
+ height: var(--dial-row-height);
629
+ margin-bottom: 6px;
630
+ min-width: 0;
631
+ overflow: hidden;
632
+ }
633
+
634
+ .dialkit-toolbar-add {
635
+ display: flex;
636
+ align-items: center;
637
+ justify-content: center;
638
+ width: var(--dial-row-height);
639
+ height: var(--dial-row-height);
640
+ padding: 0;
641
+ flex-shrink: 0;
642
+ background: var(--dial-surface);
643
+ border: none;
644
+ border-radius: var(--dial-radius);
645
+ cursor: pointer;
646
+ transition: background 0.15s;
647
+ }
648
+
649
+ .dialkit-toolbar-add:hover {
650
+ background: var(--dial-surface-hover);
651
+ }
652
+
653
+ .dialkit-toolbar-add svg {
654
+ width: 16px;
655
+ height: 16px;
656
+ color: var(--dial-text-label);
657
+ }
658
+
659
+ .dialkit-toolbar-copy {
660
+ position: relative;
661
+ display: flex;
662
+ align-items: center;
663
+ gap: 6px;
664
+ height: var(--dial-row-height);
665
+ padding: 0 12px;
666
+ flex-shrink: 0;
667
+ font-family: inherit;
668
+ font-size: 13px;
669
+ font-weight: 500;
670
+ color: var(--dial-text-label);
671
+ background: var(--dial-surface);
672
+ border: none;
673
+ border-radius: var(--dial-radius);
674
+ cursor: pointer;
675
+ transition: background 0.15s;
676
+ }
677
+
678
+ .dialkit-toolbar-copy:hover {
679
+ background: var(--dial-surface-hover);
680
+ }
681
+
682
+ .dialkit-toolbar-copy-icon-wrap {
683
+ position: relative;
684
+ width: 16px;
685
+ height: 16px;
686
+ flex-shrink: 0;
687
+ }
688
+
689
+ .dialkit-toolbar-copy-icon {
690
+ position: absolute;
691
+ inset: 0;
692
+ width: 16px;
693
+ height: 16px;
694
+ }
695
+
696
+ /* Text Control */
697
+ .dialkit-text-control {
698
+ display: flex;
699
+ align-items: center;
700
+ justify-content: space-between;
701
+ gap: 12px;
702
+ height: var(--dial-row-height);
703
+ padding: 0 12px;
704
+ background: var(--dial-surface);
705
+ border-radius: var(--dial-radius);
706
+ }
707
+
708
+ .dialkit-text-label {
709
+ font-size: 13px;
710
+ font-weight: 500;
711
+ color: var(--dial-text-label);
712
+ flex-shrink: 0;
713
+ }
714
+
715
+ .dialkit-text-input {
716
+ flex: 1;
717
+ min-width: 0;
718
+ font-family: inherit;
719
+ font-size: 13px;
720
+ font-weight: 500;
721
+ color: var(--dial-text-label);
722
+ background: transparent;
723
+ border: none;
724
+ padding: 0;
725
+ outline: none;
726
+ text-align: right;
727
+ cursor: text;
728
+ }
729
+
730
+ .dialkit-text-input:focus {
731
+ color: var(--dial-text-focus);
732
+ }
733
+
734
+ .dialkit-text-input::placeholder {
735
+ color: var(--dial-text-tertiary);
736
+ }
737
+
738
+ /* Select Control - Full-width row */
739
+ .dialkit-select-row {
740
+ }
741
+
742
+ .dialkit-select-trigger {
743
+ display: flex;
744
+ align-items: center;
745
+ justify-content: space-between;
746
+ width: 100%;
747
+ height: var(--dial-row-height);
748
+ padding: 0 12px;
749
+ font-family: inherit;
750
+ font-size: 13px;
751
+ font-weight: 500;
752
+ color: var(--dial-text-label);
753
+ background: var(--dial-surface);
754
+ border: none;
755
+ border-radius: var(--dial-radius);
756
+ cursor: pointer;
757
+ transition: background 0.15s;
758
+ }
759
+
760
+ .dialkit-select-trigger:hover {
761
+ background: var(--dial-surface-hover);
762
+ }
763
+
764
+ .dialkit-select-trigger[data-open="true"] {
765
+ background: var(--dial-surface-active);
766
+ }
767
+
768
+ .dialkit-select-label {
769
+ font-size: 13px;
770
+ font-weight: 500;
771
+ color: var(--dial-text-label);
772
+ flex-shrink: 0;
773
+ transform: translateY(-0.5px);
774
+ }
775
+
776
+ .dialkit-select-right {
777
+ display: flex;
778
+ align-items: center;
779
+ gap: 8px;
780
+ }
781
+
782
+ .dialkit-select-value {
783
+ font-size: 13px;
784
+ font-weight: 500;
785
+ color: var(--dial-text-label);
786
+ transform: translateY(-0.5px);
787
+ overflow: hidden;
788
+ text-overflow: ellipsis;
789
+ white-space: nowrap;
790
+ }
791
+
792
+ .dialkit-select-chevron {
793
+ width: 20px;
794
+ height: 20px;
795
+ padding: 2px;
796
+ box-sizing: border-box;
797
+ flex-shrink: 0;
798
+ opacity: 0.6;
799
+ }
800
+
801
+ /* Select Dropdown (portaled to body) */
802
+ .dialkit-select-dropdown {
803
+ background: var(--dial-glass-bg);
804
+ border: 1px solid var(--dial-border);
805
+ border-radius: var(--dial-radius);
806
+ padding: 4px;
807
+ z-index: 10000;
808
+ box-shadow: var(--dial-shadow-dropdown);
809
+ }
810
+
811
+ .dialkit-select-option {
812
+ display: block;
813
+ width: 100%;
814
+ padding: 8px 10px;
815
+ font-family: inherit;
816
+ font-size: 13px;
817
+ font-weight: 500;
818
+ color: var(--dial-text-label);
819
+ background: transparent;
820
+ border: none;
821
+ border-radius: 6px;
822
+ cursor: pointer;
823
+ text-align: left;
824
+ transition: background 0.15s, color 0.15s;
825
+ }
826
+
827
+ .dialkit-select-option:hover {
828
+ background: var(--dial-surface-hover);
829
+ }
830
+
831
+ .dialkit-select-option[data-selected="true"] {
832
+ color: var(--dial-text-primary);
833
+ background: var(--dial-surface-active);
834
+ }
835
+
836
+ /* Color Control */
837
+ .dialkit-color-control {
838
+ display: flex;
839
+ align-items: center;
840
+ justify-content: space-between;
841
+ gap: 12px;
842
+ height: var(--dial-row-height);
843
+ padding: 0 12px;
844
+ background: var(--dial-surface);
845
+ border-radius: var(--dial-radius);
846
+ }
847
+
848
+ .dialkit-color-label {
849
+ font-size: 13px;
850
+ font-weight: 500;
851
+ color: var(--dial-text-label);
852
+ flex-shrink: 0;
853
+ transform: translateY(-0.5px);
854
+ }
855
+
856
+ .dialkit-color-inputs {
857
+ display: flex;
858
+ align-items: center;
859
+ gap: 8px;
860
+ }
861
+
862
+ .dialkit-color-hex {
863
+ font-size: 13px;
864
+ font-weight: 500;
865
+ font-family: 'Geist Mono', monospace;
866
+ color: var(--dial-text-label);
867
+ cursor: text;
868
+ transform: translateY(-0.5px);
869
+ }
870
+
871
+ .dialkit-color-hex-input {
872
+ width: 7ch;
873
+ font-size: 13px;
874
+ font-weight: 500;
875
+ font-family: 'Geist Mono', monospace;
876
+ color: var(--dial-text-label);
877
+ background: transparent;
878
+ border: none;
879
+ padding: 0;
880
+ outline: none;
881
+ text-transform: uppercase;
882
+ transform: translateY(-0.5px);
883
+ }
884
+
885
+ .dialkit-color-hex-input:focus {
886
+ color: var(--dial-text-focus);
887
+ }
888
+
889
+ .dialkit-color-swatch {
890
+ width: 20px;
891
+ height: 20px;
892
+ border-radius: 4px;
893
+ border: 1px solid var(--dial-border-hover);
894
+ cursor: pointer;
895
+ transition: transform 0.15s;
896
+ }
897
+
898
+ .dialkit-color-swatch:hover {
899
+ transform: scale(1.1);
900
+ }
901
+
902
+ .dialkit-color-picker-native {
903
+ position: absolute;
904
+ width: 0;
905
+ height: 0;
906
+ opacity: 0;
907
+ pointer-events: none;
908
+ }
909
+
910
+ /* Preset Manager */
911
+ .dialkit-preset-manager {
912
+ position: relative;
913
+ flex: 1;
914
+ }
915
+
916
+ .dialkit-preset-trigger {
917
+ display: flex;
918
+ align-items: center;
919
+ justify-content: space-between;
920
+ width: 100%;
921
+ height: var(--dial-row-height);
922
+ padding: 0 12px;
923
+ font-family: inherit;
924
+ font-size: 13px;
925
+ font-weight: 500;
926
+ color: var(--dial-text-label);
927
+ background: var(--dial-surface);
928
+ border: none;
929
+ border-radius: var(--dial-radius);
930
+ cursor: pointer;
931
+ transition: background 0.15s;
932
+ }
933
+
934
+ .dialkit-preset-trigger:hover {
935
+ background: var(--dial-surface-hover);
936
+ }
937
+
938
+ .dialkit-preset-trigger[data-disabled="true"] {
939
+ cursor: default;
940
+ }
941
+
942
+ .dialkit-preset-trigger[data-disabled="true"]:hover {
943
+ background: var(--dial-surface);
944
+ }
945
+
946
+ .dialkit-preset-trigger[data-open="true"] {
947
+ background: var(--dial-surface-active);
948
+ }
949
+
950
+ .dialkit-preset-label {
951
+ overflow: hidden;
952
+ text-overflow: ellipsis;
953
+ white-space: nowrap;
954
+ }
955
+
956
+
957
+ .dialkit-preset-dropdown {
958
+ width: max-content;
959
+ background: var(--dial-dropdown-bg);
960
+ border: 1px solid var(--dial-border);
961
+ border-radius: 12px;
962
+ padding: 4px;
963
+ z-index: 10000;
964
+ box-shadow: var(--dial-shadow-dropdown);
965
+ }
966
+
967
+ .dialkit-preset-list {
968
+ display: flex;
969
+ flex-direction: column;
970
+ gap: 2px;
971
+ margin-bottom: 4px;
972
+ padding-bottom: 4px;
973
+ border-bottom: 1px solid var(--dial-border);
974
+ }
975
+
976
+ .dialkit-preset-item {
977
+ display: flex;
978
+ align-items: center;
979
+ justify-content: space-between;
980
+ padding: 8px 10px 8px 10px;
981
+ gap: 8px;
982
+ border-radius: 8px;
983
+ cursor: pointer;
984
+ transition: background 0.15s;
985
+ }
986
+
987
+ .dialkit-preset-item:hover {
988
+ background: var(--dial-surface-hover);
989
+ }
990
+
991
+ .dialkit-preset-item[data-active="true"] {
992
+ background: var(--dial-surface-active);
993
+ }
994
+
995
+ .dialkit-preset-name {
996
+ font-size: 13px;
997
+ font-weight: 500;
998
+ color: var(--dial-text-label);
999
+ overflow: hidden;
1000
+ text-overflow: ellipsis;
1001
+ white-space: nowrap;
1002
+ }
1003
+
1004
+ .dialkit-preset-item[data-active="true"] .dialkit-preset-name {
1005
+ color: var(--dial-text-primary);
1006
+ }
1007
+
1008
+ .dialkit-preset-delete {
1009
+ display: flex;
1010
+ align-items: center;
1011
+ justify-content: center;
1012
+ width: 24px;
1013
+ height: 24px;
1014
+ padding: 0;
1015
+ background: transparent;
1016
+ border: none;
1017
+ cursor: pointer;
1018
+ opacity: 0;
1019
+ transition: opacity 0.15s;
1020
+ flex-shrink: 0;
1021
+ }
1022
+
1023
+ .dialkit-preset-item:hover .dialkit-preset-delete {
1024
+ opacity: 0.6;
1025
+ }
1026
+
1027
+ .dialkit-preset-delete:hover {
1028
+ opacity: 1 !important;
1029
+ }
1030
+
1031
+ .dialkit-preset-delete svg {
1032
+ width: 14px;
1033
+ height: 14px;
1034
+ color: var(--dial-text-focus);
1035
+ pointer-events: none;
1036
+ }
1037
+
1038
+ .dialkit-preset-save-btn {
1039
+ display: flex;
1040
+ align-items: center;
1041
+ justify-content: center;
1042
+ gap: 6px;
1043
+ width: 100%;
1044
+ padding: 8px 10px;
1045
+ font-family: inherit;
1046
+ font-size: 13px;
1047
+ font-weight: 500;
1048
+ color: var(--dial-text-label);
1049
+ background: transparent;
1050
+ border: none;
1051
+ border-radius: 6px;
1052
+ cursor: pointer;
1053
+ transition: background 0.15s, color 0.15s;
1054
+ }
1055
+
1056
+ .dialkit-preset-save-btn:hover {
1057
+ background: var(--dial-surface-hover);
1058
+ color: var(--dial-text-primary);
1059
+ }
1060
+
1061
+ .dialkit-preset-save-btn svg {
1062
+ width: 12px;
1063
+ height: 12px;
1064
+ }
1065
+
1066
+ .dialkit-preset-save-row {
1067
+ display: flex;
1068
+ align-items: center;
1069
+ gap: 6px;
1070
+ padding: 4px;
1071
+ }
1072
+
1073
+ .dialkit-preset-input {
1074
+ flex: 1;
1075
+ min-width: 0;
1076
+ padding: 6px 8px;
1077
+ font-family: inherit;
1078
+ font-size: 13px;
1079
+ color: var(--dial-text-primary);
1080
+ background: var(--dial-surface);
1081
+ border: 1px solid var(--dial-border);
1082
+ border-radius: 6px;
1083
+ outline: none;
1084
+ }
1085
+
1086
+ .dialkit-preset-input:focus {
1087
+ border-color: var(--dial-text-label);
1088
+ }
1089
+
1090
+ .dialkit-preset-input::placeholder {
1091
+ color: var(--dial-text-tertiary);
1092
+ }
1093
+
1094
+ .dialkit-preset-confirm {
1095
+ display: flex;
1096
+ align-items: center;
1097
+ justify-content: center;
1098
+ width: 28px;
1099
+ height: 28px;
1100
+ padding: 0;
1101
+ background: var(--dial-surface);
1102
+ border: none;
1103
+ border-radius: 6px;
1104
+ cursor: pointer;
1105
+ transition: background 0.15s;
1106
+ }
1107
+
1108
+ .dialkit-preset-confirm:hover:not(:disabled) {
1109
+ background: var(--dial-surface-hover);
1110
+ }
1111
+
1112
+ .dialkit-preset-confirm:disabled {
1113
+ opacity: 0.4;
1114
+ cursor: not-allowed;
1115
+ }
1116
+
1117
+ .dialkit-preset-confirm svg {
1118
+ width: 14px;
1119
+ height: 14px;
1120
+ color: var(--dial-text-label);
1121
+ }
1122
+
1123
+ /* Shortcut Pill */
1124
+ .dialkit-shortcut-pill {
1125
+ display: inline-block;
1126
+ font-size: 10px;
1127
+ font-weight: 600;
1128
+ font-family: system-ui, -apple-system, sans-serif;
1129
+ color: var(--dial-text-tertiary);
1130
+ background: var(--dial-surface-subtle);
1131
+ padding: 1px 5px;
1132
+ border-radius: 4px;
1133
+ margin-left: 6px;
1134
+ letter-spacing: 0.02em;
1135
+ line-height: 16px;
1136
+ white-space: nowrap;
1137
+ vertical-align: middle;
1138
+ transition: color 0.15s, background 0.15s;
1139
+ }
1140
+
1141
+ .dialkit-shortcut-pill-active {
1142
+ color: var(--dial-text-primary);
1143
+ background: var(--dial-border-hover);
1144
+ }
1145
+
1146
+ /* Shortcuts Menu Trigger */
1147
+ .dialkit-shortcuts-trigger {
1148
+ display: flex;
1149
+ align-items: center;
1150
+ justify-content: center;
1151
+ width: var(--dial-row-height);
1152
+ height: var(--dial-row-height);
1153
+ padding: 0;
1154
+ flex-shrink: 0;
1155
+ background: var(--dial-surface);
1156
+ border: none;
1157
+ border-radius: var(--dial-radius);
1158
+ cursor: pointer;
1159
+ transition: background 0.15s;
1160
+ }
1161
+
1162
+ .dialkit-shortcuts-trigger:hover {
1163
+ background: var(--dial-surface-hover);
1164
+ }
1165
+
1166
+ .dialkit-shortcuts-trigger svg {
1167
+ width: 16px;
1168
+ height: 16px;
1169
+ color: var(--dial-text-label);
1170
+ }
1171
+
1172
+ /* Shortcuts Dropdown */
1173
+ .dialkit-shortcuts-dropdown {
1174
+ background: var(--dial-dropdown-bg);
1175
+ border: 1px solid var(--dial-border);
1176
+ border-radius: 12px;
1177
+ padding: 8px;
1178
+ z-index: 10000;
1179
+ box-shadow: var(--dial-shadow-dropdown);
1180
+ min-width: 200px;
1181
+ }
1182
+
1183
+ .dialkit-shortcuts-title {
1184
+ font-size: 11px;
1185
+ font-weight: 600;
1186
+ color: var(--dial-text-tertiary);
1187
+ text-transform: uppercase;
1188
+ letter-spacing: 0.05em;
1189
+ padding: 4px 8px 8px;
1190
+ }
1191
+
1192
+ .dialkit-shortcuts-list {
1193
+ display: flex;
1194
+ flex-direction: column;
1195
+ gap: 2px;
1196
+ }
1197
+
1198
+ .dialkit-shortcuts-row {
1199
+ display: flex;
1200
+ align-items: center;
1201
+ gap: 10px;
1202
+ padding: 6px 8px;
1203
+ border-radius: 6px;
1204
+ }
1205
+
1206
+ .dialkit-shortcuts-row-key {
1207
+ font-size: 11px;
1208
+ font-weight: 600;
1209
+ font-family: ui-monospace, 'SF Mono', 'Courier New', monospace;
1210
+ color: var(--dial-text-secondary);
1211
+ background: var(--dial-surface-subtle);
1212
+ padding: 2px 6px;
1213
+ border-radius: 4px;
1214
+ min-width: 28px;
1215
+ text-align: center;
1216
+ }
1217
+
1218
+ .dialkit-shortcuts-row-label {
1219
+ flex: 1;
1220
+ font-size: 13px;
1221
+ font-weight: 500;
1222
+ color: var(--dial-text-label);
1223
+ }
1224
+
1225
+ .dialkit-shortcuts-row-mode {
1226
+ font-size: 11px;
1227
+ font-weight: 500;
1228
+ color: var(--dial-text-tertiary);
1229
+ font-style: italic;
1230
+ }
1231
+
1232
+ .dialkit-shortcuts-hint {
1233
+ font-size: 11px;
1234
+ color: var(--dial-text-tertiary);
1235
+ padding: 6px 8px 2px;
1236
+ border-top: 1px solid var(--dial-border);
1237
+ margin-top: 4px;
1238
+ }
1239
+
1240
+ /* ── Light Theme ── */
1241
+ .dialkit-root[data-theme="light"] {
1242
+ --dial-surface: rgba(0, 0, 0, 0.04);
1243
+ --dial-surface-hover: rgba(0, 0, 0, 0.08);
1244
+ --dial-surface-active: rgba(0, 0, 0, 0.1);
1245
+ --dial-surface-subtle: rgba(0, 0, 0, 0.06);
1246
+
1247
+ --dial-text-root: #000000;
1248
+ --dial-text-section: rgba(0, 0, 0, 0.65);
1249
+ --dial-text-label: rgba(0, 0, 0, 0.6);
1250
+ --dial-text-focus: #000000;
1251
+
1252
+ --dial-text-primary: rgba(0, 0, 0, 0.9);
1253
+ --dial-text-secondary: rgba(0, 0, 0, 0.55);
1254
+ --dial-text-tertiary: rgba(0, 0, 0, 0.35);
1255
+
1256
+ --dial-border: rgba(0, 0, 0, 0.1);
1257
+ --dial-border-hover: rgba(0, 0, 0, 0.15);
1258
+
1259
+ --dial-glass-bg: #fafafa;
1260
+ --dial-dropdown-bg: #ffffff;
1261
+ --dial-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
1262
+ --dial-shadow-collapsed: 0 2px 10px rgba(0, 0, 0, 0.06);
1263
+ --dial-shadow-dropdown: 0 4px 16px rgba(0, 0, 0, 0.08);
1264
+ }
1265
+
1266
+ /* Light mode: SVG visualization overrides */
1267
+ .dialkit-root[data-theme="light"] .dialkit-spring-viz line {
1268
+ stroke: rgba(0, 0, 0, 0.08);
1269
+ }
1270
+
1271
+ .dialkit-root[data-theme="light"] .dialkit-spring-viz line[stroke-dasharray] {
1272
+ stroke: rgba(0, 0, 0, 0.15);
1273
+ }
1274
+
1275
+ .dialkit-root[data-theme="light"] .dialkit-spring-viz path {
1276
+ stroke: rgba(0, 0, 0, 0.5);
1277
+ }
1278
+
1279
+ /* Light mode: toggle thumb needs shadow for definition */
1280
+ .dialkit-root[data-theme="light"] .dialkit-toggle-thumb {
1281
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.08);
1282
+ }
1283
+
1284
+ /* ── System preference: light ── */
1285
+ @media (prefers-color-scheme: light) {
1286
+ .dialkit-root[data-theme="system"] {
1287
+ --dial-surface: rgba(0, 0, 0, 0.04);
1288
+ --dial-surface-hover: rgba(0, 0, 0, 0.08);
1289
+ --dial-surface-active: rgba(0, 0, 0, 0.1);
1290
+ --dial-surface-subtle: rgba(0, 0, 0, 0.06);
1291
+
1292
+ --dial-text-root: #000000;
1293
+ --dial-text-section: rgba(0, 0, 0, 0.65);
1294
+ --dial-text-label: rgba(0, 0, 0, 0.6);
1295
+ --dial-text-focus: #000000;
1296
+
1297
+ --dial-text-primary: rgba(0, 0, 0, 0.9);
1298
+ --dial-text-secondary: rgba(0, 0, 0, 0.55);
1299
+ --dial-text-tertiary: rgba(0, 0, 0, 0.35);
1300
+
1301
+ --dial-border: rgba(0, 0, 0, 0.1);
1302
+ --dial-border-hover: rgba(0, 0, 0, 0.15);
1303
+
1304
+ --dial-glass-bg: #fafafa;
1305
+ --dial-dropdown-bg: #ffffff;
1306
+ --dial-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
1307
+ --dial-shadow-collapsed: 0 2px 10px rgba(0, 0, 0, 0.06);
1308
+ --dial-shadow-dropdown: 0 4px 16px rgba(0, 0, 0, 0.08);
1309
+ }
1310
+
1311
+ .dialkit-root[data-theme="system"] .dialkit-spring-viz line {
1312
+ stroke: rgba(0, 0, 0, 0.08);
1313
+ }
1314
+
1315
+ .dialkit-root[data-theme="system"] .dialkit-spring-viz line[stroke-dasharray] {
1316
+ stroke: rgba(0, 0, 0, 0.15);
1317
+ }
1318
+
1319
+ .dialkit-root[data-theme="system"] .dialkit-spring-viz path {
1320
+ stroke: rgba(0, 0, 0, 0.5);
1321
+ }
1322
+
1323
+ .dialkit-root[data-theme="system"] .dialkit-toggle-thumb {
1324
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.08);
1325
+ }
1326
+
1327
+ }
1328
+ `;