@efiche/design 0.1.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.
package/dist/index.css ADDED
@@ -0,0 +1,1120 @@
1
+ /* src/styles/globals.css */
2
+ .ds-theme {
3
+ --ds-primary: #3b82f6;
4
+ --ds-secondary: #64748b;
5
+ --ds-danger: #ef4444;
6
+ --ds-warning: #f59e0b;
7
+ --ds-info: #3b82f6;
8
+ --ds-success: #22c55e;
9
+ --ds-primary-50: #eff6ff;
10
+ --ds-primary-100: #dbeafe;
11
+ --ds-primary-500: #3b82f6;
12
+ --ds-success-50: #f0fdf4;
13
+ --ds-success-100: #dcfce7;
14
+ --ds-success-500: #22c55e;
15
+ --ds-warning-50: #fffbeb;
16
+ --ds-warning-100: #fef3c7;
17
+ --ds-warning-500: #f59e0b;
18
+ --ds-danger-50: #fef2f2;
19
+ --ds-danger-100: #fee2e2;
20
+ --ds-danger-500: #ef4444;
21
+ --ds-secondary-50: #f9fafb;
22
+ --ds-secondary-100: #f3f4f6;
23
+ --ds-secondary-500: #64748b;
24
+ --ds-text-primary: #0f172a;
25
+ --ds-text-secondary: #64748b;
26
+ --ds-card: #ffffff;
27
+ --ds-border: #e2e8f0;
28
+ --ds-muted: #f1f5f9;
29
+ --ds-accent: #f1f5f9;
30
+ --ds-page-bg: #ffffff;
31
+ --ds-tooltip-bg: #0f172a;
32
+ --ds-tooltip-text: #ffffff;
33
+ --ds-info-bg: #eff6ff;
34
+ --ds-info-title: #1e3a8a;
35
+ --ds-info-desc: #1e40af;
36
+ --ds-success-bg: #f0fdf4;
37
+ --ds-success-title: #14532d;
38
+ --ds-success-desc: #166534;
39
+ --ds-warning-bg: #fffbeb;
40
+ --ds-warning-title: #78350f;
41
+ --ds-warning-desc: #92400e;
42
+ --ds-danger-bg: #fef2f2;
43
+ --ds-danger-title: #7f1d1d;
44
+ --ds-danger-desc: #991b1b;
45
+ }
46
+ .ds-theme-dark {
47
+ --ds-primary: #60a5fa;
48
+ --ds-secondary: #94a3b8;
49
+ --ds-danger: #f87171;
50
+ --ds-warning: #fbbf24;
51
+ --ds-info: #60a5fa;
52
+ --ds-success: #4ade80;
53
+ --ds-primary-50: #1e3a5f;
54
+ --ds-primary-100: #1e40af;
55
+ --ds-primary-500: #3b82f6;
56
+ --ds-success-50: #14532d;
57
+ --ds-success-100: #166534;
58
+ --ds-success-500: #22c55e;
59
+ --ds-warning-50: #451a03;
60
+ --ds-warning-100: #78350f;
61
+ --ds-warning-500: #f59e0b;
62
+ --ds-danger-50: #450a0a;
63
+ --ds-danger-100: #7f1d1d;
64
+ --ds-danger-500: #ef4444;
65
+ --ds-secondary-50: #1e293b;
66
+ --ds-secondary-100: #334155;
67
+ --ds-secondary-500: #94a3b8;
68
+ --ds-text-primary: #f1f5f9;
69
+ --ds-text-secondary: #94a3b8;
70
+ --ds-card: #1e293b;
71
+ --ds-border: #334155;
72
+ --ds-muted: #1e293b;
73
+ --ds-accent: #334155;
74
+ --ds-page-bg: #0f172a;
75
+ --ds-tooltip-bg: #f1f5f9;
76
+ --ds-tooltip-text: #0f172a;
77
+ --ds-info-bg: #172554;
78
+ --ds-info-title: #bfdbfe;
79
+ --ds-info-desc: #93c5fd;
80
+ --ds-success-bg: #052e16;
81
+ --ds-success-title: #bbf7d0;
82
+ --ds-success-desc: #86efac;
83
+ --ds-warning-bg: #1c0c00;
84
+ --ds-warning-title: #fde68a;
85
+ --ds-warning-desc: #fcd34d;
86
+ --ds-danger-bg: #2d0a0a;
87
+ --ds-danger-title: #fecaca;
88
+ --ds-danger-desc: #fca5a5;
89
+ }
90
+
91
+ /* src/components/Accordion/Accordion.module.css */
92
+ .root {
93
+ border: 1px solid var(--ds-border, #e2e8f0);
94
+ border-radius: 0.5rem;
95
+ overflow: hidden;
96
+ }
97
+ .item {
98
+ border-bottom: 1px solid var(--ds-border, #e2e8f0);
99
+ }
100
+ .item:last-child {
101
+ border-bottom: none;
102
+ }
103
+ .trigger {
104
+ display: flex;
105
+ align-items: center;
106
+ justify-content: space-between;
107
+ width: 100%;
108
+ padding: 1rem;
109
+ font-size: 0.875rem;
110
+ font-weight: 500;
111
+ background: transparent;
112
+ border: none;
113
+ cursor: pointer;
114
+ text-align: left;
115
+ color: var(--ds-text-primary, #0f172a);
116
+ transition: background-color 0.15s;
117
+ }
118
+ .trigger:hover {
119
+ background-color: var(--ds-muted, #f1f5f9);
120
+ }
121
+ .chevron {
122
+ flex-shrink: 0;
123
+ color: var(--ds-text-secondary, #64748b);
124
+ transition: transform 0.2s ease;
125
+ }
126
+ .chevron-open {
127
+ transform: rotate(180deg);
128
+ }
129
+ .panel {
130
+ max-height: 0;
131
+ overflow: hidden;
132
+ transition: max-height 0.25s ease;
133
+ }
134
+ .panel-open {
135
+ max-height: 300px;
136
+ }
137
+ .content {
138
+ padding: 0 1rem 1rem;
139
+ font-size: 0.875rem;
140
+ color: var(--ds-text-secondary, #64748b);
141
+ }
142
+
143
+ /* src/components/Alert/Alert.module.css */
144
+ .alert {
145
+ display: flex;
146
+ gap: 0.75rem;
147
+ padding: 1rem;
148
+ border-radius: 0.5rem;
149
+ border-left: 4px solid;
150
+ }
151
+ .icon {
152
+ flex-shrink: 0;
153
+ margin-top: 0.125rem;
154
+ }
155
+ .content {
156
+ flex: 1;
157
+ }
158
+ .title {
159
+ font-weight: 600;
160
+ font-size: 0.875rem;
161
+ margin-bottom: 0.25rem;
162
+ margin-top: 0;
163
+ }
164
+ .description {
165
+ font-size: 0.875rem;
166
+ margin: 0;
167
+ }
168
+ .info {
169
+ background-color: var(--ds-info-bg, #eff6ff);
170
+ border-left-color: var(--ds-info, #3b82f6);
171
+ }
172
+ .info .icon {
173
+ color: var(--ds-info, #3b82f6);
174
+ }
175
+ .info .title {
176
+ color: var(--ds-info-title, #1e3a8a);
177
+ }
178
+ .info .description {
179
+ color: var(--ds-info-desc, #1e40af);
180
+ }
181
+ .success {
182
+ background-color: var(--ds-success-bg, #f0fdf4);
183
+ border-left-color: var(--ds-success, #22c55e);
184
+ }
185
+ .success .icon {
186
+ color: var(--ds-success, #22c55e);
187
+ }
188
+ .success .title {
189
+ color: var(--ds-success-title, #14532d);
190
+ }
191
+ .success .description {
192
+ color: var(--ds-success-desc, #166534);
193
+ }
194
+ .warning {
195
+ background-color: var(--ds-warning-bg, #fffbeb);
196
+ border-left-color: var(--ds-warning, #f59e0b);
197
+ }
198
+ .warning .icon {
199
+ color: var(--ds-warning, #f59e0b);
200
+ }
201
+ .warning .title {
202
+ color: var(--ds-warning-title, #78350f);
203
+ }
204
+ .warning .description {
205
+ color: var(--ds-warning-desc, #92400e);
206
+ }
207
+ .danger {
208
+ background-color: var(--ds-danger-bg, #fef2f2);
209
+ border-left-color: var(--ds-danger, #ef4444);
210
+ }
211
+ .danger .icon {
212
+ color: var(--ds-danger, #ef4444);
213
+ }
214
+ .danger .title {
215
+ color: var(--ds-danger-title, #7f1d1d);
216
+ }
217
+ .danger .description {
218
+ color: var(--ds-danger-desc, #991b1b);
219
+ }
220
+
221
+ /* src/components/Avatar/Avatar.module.css */
222
+ .avatar {
223
+ display: inline-flex;
224
+ align-items: center;
225
+ justify-content: center;
226
+ border-radius: 9999px;
227
+ background-color: var(--ds-accent, #f1f5f9);
228
+ color: var(--ds-text-primary, #0f172a);
229
+ font-weight: 600;
230
+ flex-shrink: 0;
231
+ user-select: none;
232
+ }
233
+ .sm {
234
+ width: 2rem;
235
+ height: 2rem;
236
+ font-size: 0.625rem;
237
+ }
238
+ .md {
239
+ width: 2.5rem;
240
+ height: 2.5rem;
241
+ font-size: 0.875rem;
242
+ }
243
+ .lg {
244
+ width: 4rem;
245
+ height: 4rem;
246
+ font-size: 1.25rem;
247
+ }
248
+
249
+ /* src/components/Badge/Badge.module.css */
250
+ .badge {
251
+ display: inline-flex;
252
+ align-items: center;
253
+ gap: 0.25rem;
254
+ border-radius: 9999px;
255
+ font-weight: 500;
256
+ white-space: nowrap;
257
+ }
258
+ .sm {
259
+ padding: 0.125rem 0.5rem;
260
+ font-size: 0.625rem;
261
+ }
262
+ .md {
263
+ padding: 0.25rem 0.625rem;
264
+ font-size: 0.75rem;
265
+ }
266
+ .lg {
267
+ padding: 0.375rem 0.875rem;
268
+ font-size: 0.875rem;
269
+ }
270
+ .default {
271
+ background-color: var(--ds-primary, #3b82f6);
272
+ color: #fff;
273
+ }
274
+ .secondary {
275
+ background-color: var(--ds-muted, #f1f5f9);
276
+ color: var(--ds-text-secondary, #64748b);
277
+ }
278
+ .outline {
279
+ background-color: transparent;
280
+ border: 1px solid var(--ds-border, #e2e8f0);
281
+ color: var(--ds-text-primary, #0f172a);
282
+ }
283
+ .danger {
284
+ background-color: var(--ds-danger, #ef4444);
285
+ color: #fff;
286
+ }
287
+ .success {
288
+ background-color: var(--ds-success, #22c55e);
289
+ color: #fff;
290
+ }
291
+ .warning {
292
+ background-color: var(--ds-warning, #f59e0b);
293
+ color: #fff;
294
+ }
295
+ .info {
296
+ background-color: var(--ds-info, #3b82f6);
297
+ color: #fff;
298
+ }
299
+
300
+ /* src/components/Breadcrumb/Breadcrumb.module.css */
301
+ .list {
302
+ display: flex;
303
+ flex-wrap: wrap;
304
+ align-items: center;
305
+ list-style: none;
306
+ padding: 0;
307
+ margin: 0;
308
+ font-size: 0.875rem;
309
+ }
310
+ .item {
311
+ display: flex;
312
+ align-items: center;
313
+ }
314
+ .separator {
315
+ color: var(--ds-text-secondary, #64748b);
316
+ margin: 0 0.25rem;
317
+ flex-shrink: 0;
318
+ }
319
+ .link {
320
+ color: var(--ds-text-secondary, #64748b);
321
+ text-decoration: none;
322
+ transition: color 0.15s;
323
+ }
324
+ .link:hover {
325
+ color: var(--ds-text-primary, #0f172a);
326
+ text-decoration: underline;
327
+ }
328
+ .current {
329
+ color: var(--ds-text-primary, #0f172a);
330
+ font-weight: 500;
331
+ cursor: default;
332
+ }
333
+ .current:hover {
334
+ color: var(--ds-text-primary, #0f172a);
335
+ text-decoration: none;
336
+ }
337
+
338
+ /* src/components/Button/Button.module.css */
339
+ .button {
340
+ display: inline-flex;
341
+ align-items: center;
342
+ gap: 0.5rem;
343
+ padding: 0.5rem 1rem;
344
+ border: 1px solid transparent;
345
+ border-radius: 0.375rem;
346
+ font-weight: 500;
347
+ cursor: pointer;
348
+ transition: opacity 0.15s, background-color 0.15s;
349
+ }
350
+ .button:disabled {
351
+ opacity: 0.5;
352
+ cursor: not-allowed;
353
+ }
354
+ .solid {
355
+ background-color: var(--ds-primary, #3b82f6);
356
+ color: #fff;
357
+ }
358
+ .outline {
359
+ background-color: transparent;
360
+ border-color: var(--ds-primary, #3b82f6);
361
+ color: var(--ds-primary, #3b82f6);
362
+ }
363
+ .ghost {
364
+ background-color: var(--ds-muted, #f1f5f9);
365
+ color: var(--ds-text-primary, #0f172a);
366
+ }
367
+ .danger {
368
+ background-color: var(--ds-danger, #ef4444);
369
+ color: #fff;
370
+ }
371
+ .warning {
372
+ background-color: var(--ds-warning, #f59e0b);
373
+ color: #fff;
374
+ }
375
+ .info {
376
+ background-color: var(--ds-info, #3b82f6);
377
+ color: #fff;
378
+ }
379
+ .success {
380
+ background-color: var(--ds-success, #22c55e);
381
+ color: #fff;
382
+ }
383
+ .sm {
384
+ padding: 0.25rem 0.625rem;
385
+ font-size: 0.8rem;
386
+ }
387
+ .md {
388
+ padding: 0.5rem 1rem;
389
+ font-size: 0.875rem;
390
+ }
391
+ .lg {
392
+ padding: 0.75rem 1.5rem;
393
+ font-size: 1rem;
394
+ }
395
+ .loading {
396
+ pointer-events: none;
397
+ }
398
+ .spinner {
399
+ width: 1em;
400
+ height: 1em;
401
+ animation: spin 0.75s linear infinite;
402
+ }
403
+ .solid:hover:not(:disabled) {
404
+ opacity: 0.88;
405
+ }
406
+ .outline:hover:not(:disabled) {
407
+ background-color: var(--ds-muted, #f1f5f9);
408
+ }
409
+ .ghost:hover:not(:disabled) {
410
+ background-color: var(--ds-card, #ffffff);
411
+ }
412
+ .danger:hover:not(:disabled) {
413
+ opacity: 0.88;
414
+ }
415
+ .warning:hover:not(:disabled) {
416
+ opacity: 0.88;
417
+ }
418
+ .info:hover:not(:disabled) {
419
+ opacity: 0.88;
420
+ }
421
+ .success:hover:not(:disabled) {
422
+ opacity: 0.88;
423
+ }
424
+ @keyframes spin {
425
+ to {
426
+ transform: rotate(360deg);
427
+ }
428
+ }
429
+
430
+ /* src/components/Card/Card.module.css */
431
+ .card {
432
+ border: 1px solid var(--ds-border, #e2e8f0);
433
+ border-radius: 0.5rem;
434
+ background-color: var(--ds-card, #ffffff);
435
+ }
436
+ .header {
437
+ display: flex;
438
+ flex-direction: column;
439
+ gap: 0.375rem;
440
+ padding: 1.5rem 1.5rem 0;
441
+ }
442
+ .title {
443
+ font-size: 1rem;
444
+ font-weight: 600;
445
+ color: var(--ds-text-primary, #0f172a);
446
+ margin: 0;
447
+ line-height: 1.4;
448
+ }
449
+ .description {
450
+ font-size: 0.875rem;
451
+ color: var(--ds-text-secondary, #64748b);
452
+ margin: 0;
453
+ }
454
+ .content {
455
+ padding: 1.5rem;
456
+ }
457
+ .footer {
458
+ display: flex;
459
+ align-items: center;
460
+ padding: 0 1.5rem 1.5rem;
461
+ }
462
+
463
+ /* src/components/Checkbox/Checkbox.module.css */
464
+ .container {
465
+ display: inline-flex;
466
+ align-items: center;
467
+ gap: 0.5rem;
468
+ cursor: pointer;
469
+ user-select: none;
470
+ }
471
+ .disabled {
472
+ cursor: not-allowed;
473
+ opacity: 0.5;
474
+ }
475
+ .input {
476
+ position: absolute;
477
+ opacity: 0;
478
+ width: 0;
479
+ height: 0;
480
+ }
481
+ .box {
482
+ width: 1.125rem;
483
+ height: 1.125rem;
484
+ border: 2px solid var(--ds-border, #e2e8f0);
485
+ border-radius: 0.25rem;
486
+ display: flex;
487
+ align-items: center;
488
+ justify-content: center;
489
+ flex-shrink: 0;
490
+ transition: background-color 0.15s, border-color 0.15s;
491
+ background-color: var(--ds-card, #fff);
492
+ }
493
+ .checked {
494
+ background-color: var(--ds-primary, #3b82f6);
495
+ border-color: var(--ds-primary, #3b82f6);
496
+ }
497
+ .checkmark {
498
+ width: 0.625rem;
499
+ height: 0.625rem;
500
+ }
501
+ .label {
502
+ font-size: 0.875rem;
503
+ color: var(--ds-text-primary, #0f172a);
504
+ }
505
+
506
+ /* src/components/CopyButton/CopyButton.module.css */
507
+ .copyButton {
508
+ display: inline-flex;
509
+ align-items: center;
510
+ justify-content: center;
511
+ padding: 0.25rem;
512
+ border: none;
513
+ border-radius: 0.25rem;
514
+ background-color: transparent;
515
+ color: var(--muted-foreground);
516
+ cursor: pointer;
517
+ transition: background-color 0.15s, color 0.15s;
518
+ }
519
+ .copyButton:hover {
520
+ background-color: var(--ds-accent, #f1f5f9);
521
+ color: var(--ds-text-primary, #0f172a);
522
+ }
523
+ .icon {
524
+ width: 1rem;
525
+ height: 1rem;
526
+ }
527
+
528
+ /* src/components/FileUpload/FileUpload.module.css */
529
+ .zone {
530
+ border: 2px dashed var(--ds-border, #e2e8f0);
531
+ border-radius: 0.5rem;
532
+ padding: 2rem;
533
+ display: flex;
534
+ flex-direction: column;
535
+ align-items: center;
536
+ gap: 0.5rem;
537
+ cursor: pointer;
538
+ background-color: var(--ds-muted, #f1f5f9);
539
+ transition: border-color 0.15s, background-color 0.15s;
540
+ text-align: center;
541
+ }
542
+ .zone:hover,
543
+ .dragging {
544
+ border-color: var(--ds-primary, #3b82f6);
545
+ background-color: var(--ds-primary-50, #eff6ff);
546
+ }
547
+ .disabled {
548
+ opacity: 0.5;
549
+ cursor: not-allowed;
550
+ }
551
+ .input {
552
+ display: none;
553
+ }
554
+ .icon {
555
+ color: var(--ds-text-secondary, #64748b);
556
+ }
557
+ .hint {
558
+ font-size: 0.875rem;
559
+ color: var(--ds-text-secondary, #64748b);
560
+ }
561
+ .fileName {
562
+ font-size: 0.875rem;
563
+ color: var(--ds-primary, #3b82f6);
564
+ font-weight: 500;
565
+ }
566
+
567
+ /* src/components/Input/Input.module.css */
568
+ .wrapper {
569
+ position: relative;
570
+ display: flex;
571
+ align-items: center;
572
+ width: 100%;
573
+ }
574
+ .input {
575
+ width: 100%;
576
+ height: 2.25rem;
577
+ padding: 0 0.75rem;
578
+ border: 1px solid var(--ds-border, #e2e8f0);
579
+ border-radius: 0.375rem;
580
+ font-size: 0.875rem;
581
+ background-color: var(--ds-card, #fff);
582
+ color: var(--ds-text-primary, #0f172a);
583
+ outline: none;
584
+ transition: border-color 0.15s, box-shadow 0.15s;
585
+ font-family: inherit;
586
+ }
587
+ .input::placeholder {
588
+ color: var(--ds-text-secondary, #64748b);
589
+ }
590
+ .input:focus {
591
+ border-color: var(--ds-primary, #3b82f6);
592
+ box-shadow: 0 0 0 3px rgb(59 130 246 / 0.15);
593
+ }
594
+ .input:disabled {
595
+ opacity: 0.5;
596
+ cursor: not-allowed;
597
+ background-color: var(--ds-muted, #f1f5f9);
598
+ }
599
+ .error .input {
600
+ border-color: var(--ds-danger, #ef4444);
601
+ }
602
+ .error .input:focus {
603
+ border-color: var(--ds-danger, #ef4444);
604
+ box-shadow: 0 0 0 3px rgb(239 68 68 / 0.15);
605
+ }
606
+ .success .input {
607
+ border-color: var(--ds-success, #22c55e);
608
+ }
609
+ .success .input:focus {
610
+ border-color: var(--ds-success, #22c55e);
611
+ box-shadow: 0 0 0 3px rgb(34 197 94 / 0.15);
612
+ }
613
+ .hasLeft .input {
614
+ padding-left: 2.25rem;
615
+ }
616
+ .hasRight .input {
617
+ padding-right: 2.25rem;
618
+ }
619
+ .leftIcon,
620
+ .rightIcon {
621
+ position: absolute;
622
+ display: flex;
623
+ align-items: center;
624
+ color: var(--ds-text-secondary, #64748b);
625
+ pointer-events: none;
626
+ }
627
+ .leftIcon {
628
+ left: 0.625rem;
629
+ }
630
+ .rightIcon {
631
+ right: 0.625rem;
632
+ }
633
+
634
+ /* src/components/Label/Label.module.css */
635
+ .label {
636
+ display: block;
637
+ font-size: 0.875rem;
638
+ font-weight: 500;
639
+ color: var(--ds-text-primary, #0f172a);
640
+ margin-bottom: 0.375rem;
641
+ }
642
+ .required {
643
+ color: var(--ds-danger, #ef4444);
644
+ margin-left: 0.25rem;
645
+ }
646
+
647
+ /* src/components/Progress/Progress.module.css */
648
+ .track {
649
+ width: 100%;
650
+ height: 0.5rem;
651
+ background-color: var(--ds-border, #e2e8f0);
652
+ border-radius: 9999px;
653
+ overflow: hidden;
654
+ }
655
+ .fill {
656
+ height: 100%;
657
+ background-color: var(--ds-primary, #3b82f6);
658
+ border-radius: 9999px;
659
+ transition: width 0.3s ease;
660
+ }
661
+
662
+ /* src/components/RadioGroup/RadioGroup.module.css */
663
+ .group {
664
+ display: flex;
665
+ flex-direction: column;
666
+ gap: 0.5rem;
667
+ }
668
+ .item {
669
+ display: inline-flex;
670
+ align-items: center;
671
+ gap: 0.5rem;
672
+ cursor: pointer;
673
+ user-select: none;
674
+ }
675
+ .disabled {
676
+ cursor: not-allowed;
677
+ opacity: 0.5;
678
+ }
679
+ .input {
680
+ position: absolute;
681
+ opacity: 0;
682
+ width: 0;
683
+ height: 0;
684
+ }
685
+ .dot {
686
+ width: 1.125rem;
687
+ height: 1.125rem;
688
+ border-radius: 9999px;
689
+ border: 2px solid var(--ds-border, #e2e8f0);
690
+ display: flex;
691
+ align-items: center;
692
+ justify-content: center;
693
+ flex-shrink: 0;
694
+ background-color: var(--ds-card, #fff);
695
+ transition: border-color 0.15s;
696
+ }
697
+ .checked {
698
+ border-color: var(--ds-primary, #3b82f6);
699
+ }
700
+ .inner {
701
+ width: 0.5rem;
702
+ height: 0.5rem;
703
+ border-radius: 9999px;
704
+ background-color: var(--ds-primary, #3b82f6);
705
+ }
706
+ .label {
707
+ font-size: 0.875rem;
708
+ color: var(--ds-text-primary, #0f172a);
709
+ }
710
+
711
+ /* src/components/Select/Select.module.css */
712
+ .wrapper {
713
+ position: relative;
714
+ width: 100%;
715
+ }
716
+ .disabled {
717
+ opacity: 0.5;
718
+ pointer-events: none;
719
+ }
720
+ .trigger {
721
+ width: 100%;
722
+ height: 2.25rem;
723
+ padding: 0 0.75rem;
724
+ border: 1px solid var(--ds-border, #e2e8f0);
725
+ border-radius: 0.375rem;
726
+ font-size: 0.875rem;
727
+ background-color: var(--ds-card, #fff);
728
+ cursor: pointer;
729
+ display: flex;
730
+ align-items: center;
731
+ justify-content: space-between;
732
+ gap: 0.5rem;
733
+ transition: border-color 0.15s, box-shadow 0.15s;
734
+ text-align: left;
735
+ font-family: inherit;
736
+ }
737
+ .trigger:focus {
738
+ outline: none;
739
+ border-color: var(--ds-primary, #3b82f6);
740
+ box-shadow: 0 0 0 3px rgb(59 130 246 / 0.15);
741
+ }
742
+ .open {
743
+ border-color: var(--ds-primary, #3b82f6);
744
+ box-shadow: 0 0 0 3px rgb(59 130 246 / 0.15);
745
+ }
746
+ .placeholder {
747
+ color: var(--ds-text-secondary, #64748b);
748
+ }
749
+ .value {
750
+ color: var(--ds-text-primary, #0f172a);
751
+ }
752
+ .chevron {
753
+ flex-shrink: 0;
754
+ color: var(--ds-text-secondary, #64748b);
755
+ transition: transform 0.15s;
756
+ }
757
+ .chevronOpen {
758
+ transform: rotate(180deg);
759
+ }
760
+ .dropdown {
761
+ position: absolute;
762
+ top: calc(100% + 0.25rem);
763
+ left: 0;
764
+ right: 0;
765
+ z-index: 50;
766
+ background-color: var(--ds-card, #fff);
767
+ border: 1px solid var(--ds-border, #e2e8f0);
768
+ border-radius: 0.375rem;
769
+ box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1);
770
+ overflow: hidden;
771
+ }
772
+ .option {
773
+ padding: 0.5rem 0.75rem;
774
+ font-size: 0.875rem;
775
+ cursor: pointer;
776
+ display: flex;
777
+ align-items: center;
778
+ gap: 0.5rem;
779
+ color: var(--ds-text-primary, #0f172a);
780
+ transition: background-color 0.1s;
781
+ }
782
+ .option:hover {
783
+ background-color: var(--ds-muted, #f1f5f9);
784
+ }
785
+ .selected {
786
+ background-color: var(--ds-muted, #f1f5f9);
787
+ font-weight: 500;
788
+ }
789
+ .checkIcon {
790
+ color: var(--ds-primary, #3b82f6);
791
+ flex-shrink: 0;
792
+ }
793
+ .checkSpacer {
794
+ width: 14px;
795
+ flex-shrink: 0;
796
+ }
797
+
798
+ /* src/components/Skeleton/Skeleton.module.css */
799
+ .skeleton {
800
+ background-color: var(--ds-muted, #f1f5f9);
801
+ border-radius: 0.375rem;
802
+ animation: pulse 1.5s ease-in-out infinite;
803
+ }
804
+ .circle {
805
+ border-radius: 9999px;
806
+ }
807
+ @keyframes pulse {
808
+ 0%, 100% {
809
+ opacity: 1;
810
+ }
811
+ 50% {
812
+ opacity: 0.4;
813
+ }
814
+ }
815
+
816
+ /* src/components/Slider/Slider.module.css */
817
+ .wrapper {
818
+ width: 100%;
819
+ padding: 0.25rem 0;
820
+ }
821
+ .disabled {
822
+ opacity: 0.5;
823
+ cursor: not-allowed;
824
+ }
825
+ .range {
826
+ width: 100%;
827
+ height: 0.375rem;
828
+ -webkit-appearance: none;
829
+ appearance: none;
830
+ border-radius: 9999px;
831
+ outline: none;
832
+ cursor: pointer;
833
+ background:
834
+ linear-gradient(
835
+ to right,
836
+ var(--ds-primary, #3b82f6) 0%,
837
+ var(--ds-primary, #3b82f6) var(--fill, 50%),
838
+ var(--ds-border, #e2e8f0) var(--fill, 50%),
839
+ var(--ds-border, #e2e8f0) 100%);
840
+ }
841
+ .range::-webkit-slider-thumb {
842
+ -webkit-appearance: none;
843
+ appearance: none;
844
+ width: 1.125rem;
845
+ height: 1.125rem;
846
+ border-radius: 9999px;
847
+ background-color: var(--ds-primary, #3b82f6);
848
+ cursor: pointer;
849
+ border: 2px solid #fff;
850
+ box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.2);
851
+ transition: transform 0.1s;
852
+ }
853
+ .range::-webkit-slider-thumb:hover {
854
+ transform: scale(1.2);
855
+ }
856
+ .range::-moz-range-thumb {
857
+ width: 1.125rem;
858
+ height: 1.125rem;
859
+ border-radius: 9999px;
860
+ background-color: var(--ds-primary, #3b82f6);
861
+ cursor: pointer;
862
+ border: 2px solid #fff;
863
+ box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.2);
864
+ }
865
+ .disabled .range {
866
+ cursor: not-allowed;
867
+ }
868
+
869
+ /* src/components/Spinner/Spinner.module.css */
870
+ .spinner {
871
+ color: var(--ds-primary, #3b82f6);
872
+ animation: spin 0.75s linear infinite;
873
+ }
874
+ @keyframes spin {
875
+ to {
876
+ transform: rotate(360deg);
877
+ }
878
+ }
879
+
880
+ /* src/components/Switch/Switch.module.css */
881
+ .container {
882
+ display: inline-flex;
883
+ align-items: center;
884
+ gap: 0.625rem;
885
+ cursor: pointer;
886
+ user-select: none;
887
+ }
888
+ .disabled {
889
+ cursor: not-allowed;
890
+ opacity: 0.5;
891
+ }
892
+ .input {
893
+ position: absolute;
894
+ opacity: 0;
895
+ width: 0;
896
+ height: 0;
897
+ }
898
+ .track {
899
+ width: 2.75rem;
900
+ height: 1.5rem;
901
+ border-radius: 9999px;
902
+ background-color: var(--ds-border, #e2e8f0);
903
+ position: relative;
904
+ transition: background-color 0.2s;
905
+ flex-shrink: 0;
906
+ }
907
+ .on {
908
+ background-color: var(--ds-primary, #3b82f6);
909
+ }
910
+ .thumb {
911
+ position: absolute;
912
+ top: 0.175rem;
913
+ left: 0.175rem;
914
+ width: 1.15rem;
915
+ height: 1.15rem;
916
+ border-radius: 9999px;
917
+ background-color: #fff;
918
+ box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.15);
919
+ transition: transform 0.2s;
920
+ }
921
+ .thumbOn {
922
+ transform: translateX(1.25rem);
923
+ }
924
+ .label {
925
+ font-size: 0.875rem;
926
+ color: var(--ds-text-primary, #0f172a);
927
+ }
928
+
929
+ /* src/components/Table/Table.module.css */
930
+ .wrapper {
931
+ width: 100%;
932
+ overflow-x: auto;
933
+ border: 1px solid var(--ds-border, #e2e8f0);
934
+ border-radius: 0.5rem;
935
+ }
936
+ .table {
937
+ width: 100%;
938
+ border-collapse: collapse;
939
+ font-size: 0.875rem;
940
+ }
941
+ .th {
942
+ padding: 0.75rem 1rem;
943
+ text-align: left;
944
+ font-weight: 500;
945
+ color: var(--ds-text-secondary, #64748b);
946
+ background-color: var(--ds-muted, #f1f5f9);
947
+ border-bottom: 1px solid var(--ds-border, #e2e8f0);
948
+ white-space: nowrap;
949
+ }
950
+ .td {
951
+ padding: 0.75rem 1rem;
952
+ border-bottom: 1px solid var(--ds-border, #e2e8f0);
953
+ color: var(--ds-text-primary, #0f172a);
954
+ }
955
+ .row:last-child .td {
956
+ border-bottom: none;
957
+ }
958
+ .row:hover .td {
959
+ background-color: var(--ds-muted, #f1f5f9);
960
+ }
961
+ thead .row:hover .th {
962
+ background-color: var(--ds-muted, #f1f5f9);
963
+ }
964
+
965
+ /* src/components/Tabs/Tabs.module.css */
966
+ .root {
967
+ display: flex;
968
+ flex-direction: column;
969
+ }
970
+ .list {
971
+ display: inline-flex;
972
+ background-color: var(--ds-muted, #f1f5f9);
973
+ border-radius: 0.5rem;
974
+ padding: 0.25rem;
975
+ gap: 0.125rem;
976
+ }
977
+ .trigger {
978
+ display: inline-flex;
979
+ align-items: center;
980
+ gap: 0.375rem;
981
+ padding: 0.375rem 0.75rem;
982
+ font-size: 0.875rem;
983
+ font-weight: 500;
984
+ border-radius: 0.375rem;
985
+ background: transparent;
986
+ border: none;
987
+ cursor: pointer;
988
+ color: var(--ds-text-secondary, #64748b);
989
+ transition:
990
+ color 0.15s,
991
+ background-color 0.15s,
992
+ box-shadow 0.15s;
993
+ white-space: nowrap;
994
+ }
995
+ .trigger:hover {
996
+ color: var(--ds-text-primary, #0f172a);
997
+ }
998
+ .active {
999
+ background-color: var(--ds-card, #ffffff);
1000
+ color: var(--ds-text-primary, #0f172a);
1001
+ box-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
1002
+ }
1003
+ .trigger-icon {
1004
+ display: flex;
1005
+ align-items: center;
1006
+ }
1007
+ .content {
1008
+ padding-top: 1rem;
1009
+ font-size: 0.875rem;
1010
+ color: var(--ds-text-secondary, #64748b);
1011
+ }
1012
+
1013
+ /* src/components/Textarea/Textarea.module.css */
1014
+ .textarea {
1015
+ width: 100%;
1016
+ padding: 0.5rem 0.75rem;
1017
+ border: 1px solid var(--ds-border, #e2e8f0);
1018
+ border-radius: 0.375rem;
1019
+ font-size: 0.875rem;
1020
+ background-color: var(--ds-card, #fff);
1021
+ color: var(--ds-text-primary, #0f172a);
1022
+ outline: none;
1023
+ resize: vertical;
1024
+ transition: border-color 0.15s, box-shadow 0.15s;
1025
+ font-family: inherit;
1026
+ min-height: 6rem;
1027
+ }
1028
+ .textarea::placeholder {
1029
+ color: var(--ds-text-secondary, #64748b);
1030
+ }
1031
+ .textarea:focus {
1032
+ border-color: var(--ds-primary, #3b82f6);
1033
+ box-shadow: 0 0 0 3px rgb(59 130 246 / 0.15);
1034
+ }
1035
+ .textarea:disabled {
1036
+ opacity: 0.5;
1037
+ cursor: not-allowed;
1038
+ background-color: var(--ds-muted, #f1f5f9);
1039
+ }
1040
+ .error {
1041
+ border-color: var(--ds-danger, #ef4444);
1042
+ }
1043
+ .error:focus {
1044
+ border-color: var(--ds-danger, #ef4444);
1045
+ box-shadow: 0 0 0 3px rgb(239 68 68 / 0.15);
1046
+ }
1047
+
1048
+ /* src/components/Tooltip/Tooltip.module.css */
1049
+ .wrapper {
1050
+ position: relative;
1051
+ display: inline-flex;
1052
+ }
1053
+ .tooltip {
1054
+ position: absolute;
1055
+ z-index: 50;
1056
+ padding: 0.375rem 0.625rem;
1057
+ background-color: var(--ds-tooltip-bg, #0f172a);
1058
+ color: var(--ds-tooltip-text, #ffffff);
1059
+ font-size: 0.75rem;
1060
+ line-height: 1.4;
1061
+ border-radius: 0.375rem;
1062
+ white-space: nowrap;
1063
+ pointer-events: none;
1064
+ opacity: 0;
1065
+ transition: opacity 0.15s;
1066
+ }
1067
+ .wrapper:hover .tooltip,
1068
+ .wrapper:focus-within .tooltip {
1069
+ opacity: 1;
1070
+ }
1071
+ .tooltip::before {
1072
+ content: "";
1073
+ position: absolute;
1074
+ border: 5px solid transparent;
1075
+ }
1076
+ .top {
1077
+ bottom: calc(100% + 8px);
1078
+ left: 50%;
1079
+ transform: translateX(-50%);
1080
+ }
1081
+ .top::before {
1082
+ top: 100%;
1083
+ left: 50%;
1084
+ transform: translateX(-50%);
1085
+ border-top-color: var(--ds-tooltip-bg, #0f172a);
1086
+ }
1087
+ .bottom {
1088
+ top: calc(100% + 8px);
1089
+ left: 50%;
1090
+ transform: translateX(-50%);
1091
+ }
1092
+ .bottom::before {
1093
+ bottom: 100%;
1094
+ left: 50%;
1095
+ transform: translateX(-50%);
1096
+ border-bottom-color: var(--ds-tooltip-bg, #0f172a);
1097
+ }
1098
+ .left {
1099
+ right: calc(100% + 8px);
1100
+ top: 50%;
1101
+ transform: translateY(-50%);
1102
+ }
1103
+ .left::before {
1104
+ left: 100%;
1105
+ top: 50%;
1106
+ transform: translateY(-50%);
1107
+ border-left-color: var(--ds-tooltip-bg, #0f172a);
1108
+ }
1109
+ .right {
1110
+ left: calc(100% + 8px);
1111
+ top: 50%;
1112
+ transform: translateY(-50%);
1113
+ }
1114
+ .right::before {
1115
+ right: 100%;
1116
+ top: 50%;
1117
+ transform: translateY(-50%);
1118
+ border-right-color: var(--ds-tooltip-bg, #0f172a);
1119
+ }
1120
+ /*# sourceMappingURL=index.css.map */