@yarcl/react 0.1.0 → 0.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 (223) hide show
  1. package/README.md +14 -2
  2. package/{src/apply.ts → dist/apply.d.ts} +4 -23
  3. package/dist/apply.js +37 -0
  4. package/dist/classes.d.ts +13 -0
  5. package/dist/classes.js +22 -0
  6. package/dist/cli.d.ts +2 -0
  7. package/dist/cli.js +58 -0
  8. package/dist/color.js +49 -32
  9. package/dist/components/Accordion.d.ts +96 -0
  10. package/dist/components/Accordion.js +148 -0
  11. package/dist/components/Alert.d.ts +60 -0
  12. package/dist/components/Alert.js +61 -0
  13. package/dist/components/Avatar.d.ts +100 -0
  14. package/dist/components/Avatar.js +89 -0
  15. package/dist/components/Badge.d.ts +44 -0
  16. package/dist/components/Badge.js +43 -0
  17. package/dist/components/Breadcrumb.d.ts +77 -0
  18. package/dist/components/Breadcrumb.js +126 -0
  19. package/dist/components/Button.d.ts +18 -0
  20. package/dist/components/Button.js +33 -0
  21. package/dist/components/ButtonGroup.d.ts +29 -0
  22. package/dist/components/ButtonGroup.js +37 -0
  23. package/dist/components/Card.d.ts +36 -0
  24. package/dist/components/Card.js +26 -0
  25. package/dist/components/Checkbox.d.ts +28 -0
  26. package/dist/components/Checkbox.js +38 -0
  27. package/dist/components/Combobox.d.ts +75 -0
  28. package/dist/components/Combobox.js +362 -0
  29. package/dist/components/CommandPalette.d.ts +92 -0
  30. package/dist/components/CommandPalette.js +293 -0
  31. package/dist/components/DatePicker.d.ts +157 -0
  32. package/dist/components/DatePicker.js +230 -0
  33. package/dist/components/Dialog.d.ts +25 -0
  34. package/dist/components/Dialog.js +29 -0
  35. package/dist/components/Divider.d.ts +23 -0
  36. package/dist/components/Divider.js +25 -0
  37. package/dist/components/Drawer.d.ts +21 -0
  38. package/dist/components/Drawer.js +25 -0
  39. package/dist/components/EmptyState.d.ts +51 -0
  40. package/dist/components/EmptyState.js +47 -0
  41. package/dist/components/Field.d.ts +27 -0
  42. package/dist/components/Field.js +59 -0
  43. package/dist/components/Heading.d.ts +26 -0
  44. package/dist/components/Heading.js +25 -0
  45. package/dist/components/HoverCard.d.ts +47 -0
  46. package/dist/components/HoverCard.js +53 -0
  47. package/dist/components/IconButton.d.ts +19 -0
  48. package/dist/components/IconButton.js +32 -0
  49. package/dist/components/Inline.d.ts +21 -0
  50. package/dist/components/Inline.js +24 -0
  51. package/dist/components/Input.d.ts +19 -0
  52. package/dist/components/Input.js +25 -0
  53. package/dist/components/Label.d.ts +46 -0
  54. package/dist/components/Label.js +33 -0
  55. package/dist/components/Link.d.ts +27 -0
  56. package/dist/components/Link.js +26 -0
  57. package/dist/components/Menu.d.ts +73 -0
  58. package/dist/components/Menu.js +143 -0
  59. package/dist/components/Modal.d.ts +45 -0
  60. package/dist/components/Modal.js +110 -0
  61. package/dist/components/NumberInput.d.ts +49 -0
  62. package/dist/components/NumberInput.js +130 -0
  63. package/dist/components/Pagination.d.ts +86 -0
  64. package/dist/components/Pagination.js +119 -0
  65. package/dist/components/Popover.d.ts +72 -0
  66. package/dist/components/Popover.js +87 -0
  67. package/dist/components/Progress.d.ts +60 -0
  68. package/dist/components/Progress.js +59 -0
  69. package/dist/components/Radio.d.ts +32 -0
  70. package/dist/components/Radio.js +47 -0
  71. package/dist/components/RadioGroup.d.ts +57 -0
  72. package/dist/components/RadioGroup.js +68 -0
  73. package/dist/components/Select.d.ts +47 -0
  74. package/dist/components/Select.js +138 -0
  75. package/dist/components/Skeleton.d.ts +46 -0
  76. package/dist/components/Skeleton.js +40 -0
  77. package/dist/components/Slider.d.ts +126 -0
  78. package/dist/components/Slider.js +166 -0
  79. package/dist/components/Spinner.d.ts +23 -0
  80. package/dist/components/Spinner.js +23 -0
  81. package/dist/components/Stack.d.ts +35 -0
  82. package/dist/components/Stack.js +24 -0
  83. package/dist/components/Switch.d.ts +27 -0
  84. package/dist/components/Switch.js +33 -0
  85. package/dist/components/Table.d.ts +71 -0
  86. package/dist/components/Table.js +61 -0
  87. package/dist/components/Tabs.d.ts +66 -0
  88. package/dist/components/Tabs.js +109 -0
  89. package/dist/components/Text.d.ts +32 -0
  90. package/dist/components/Text.js +28 -0
  91. package/dist/components/Textarea.d.ts +15 -0
  92. package/dist/components/Textarea.js +24 -0
  93. package/dist/components/Toast.d.ts +90 -0
  94. package/dist/components/Toast.js +156 -0
  95. package/dist/components/ToggleGroup.d.ts +79 -0
  96. package/dist/components/ToggleGroup.js +101 -0
  97. package/dist/components/Tooltip.d.ts +46 -0
  98. package/dist/components/Tooltip.js +62 -0
  99. package/dist/components/VisuallyHidden.d.ts +18 -0
  100. package/dist/components/VisuallyHidden.js +22 -0
  101. package/dist/contrast.d.ts +32 -0
  102. package/dist/css.d.ts +2 -2
  103. package/dist/css.js +193 -157
  104. package/dist/define.d.ts +40 -15
  105. package/dist/define.js +30 -27
  106. package/dist/demo.d.ts +2 -0
  107. package/dist/demo.js +2 -0
  108. package/dist/esbuild.cjs +5 -0
  109. package/dist/esbuild.d.ts +4 -0
  110. package/dist/esbuild.js +6 -0
  111. package/dist/field-context.d.ts +16 -0
  112. package/dist/field-context.js +17 -0
  113. package/dist/floating.d.ts +12 -0
  114. package/dist/floating.js +52 -0
  115. package/dist/hooks.d.ts +1 -0
  116. package/dist/hooks.js +12 -0
  117. package/{src/index.ts → dist/index.d.ts} +11 -33
  118. package/dist/index.js +50 -0
  119. package/dist/init.d.ts +18 -0
  120. package/dist/init.js +224 -0
  121. package/dist/plugin.d.ts +10 -26
  122. package/dist/plugin.js +152 -78
  123. package/dist/reference/DemoYarcl.d.ts +12 -0
  124. package/dist/reference/DemoYarcl.js +312 -0
  125. package/dist/reference/DesignReference.d.ts +24 -0
  126. package/dist/reference/DesignReference.js +403 -0
  127. package/dist/reference/index.js +2 -0
  128. package/dist/rollup.cjs +5 -0
  129. package/dist/rollup.d.ts +4 -0
  130. package/dist/rollup.js +6 -0
  131. package/dist/rspack.cjs +5 -0
  132. package/dist/rspack.d.ts +4 -0
  133. package/dist/rspack.js +6 -0
  134. package/dist/runtime.d.ts +13 -0
  135. package/dist/runtime.js +30 -0
  136. package/dist/setup.d.ts +6 -0
  137. package/dist/setup.js +33 -0
  138. package/{src → dist}/styles.css +224 -106
  139. package/dist/themes/bloom.d.ts +295 -0
  140. package/dist/themes/bloom.js +202 -0
  141. package/dist/themes/brutalist.d.ts +277 -0
  142. package/dist/themes/brutalist.js +199 -0
  143. package/dist/themes/compact.d.ts +274 -0
  144. package/dist/themes/compact.js +200 -0
  145. package/dist/themes/contract.d.ts +23 -0
  146. package/dist/themes/editorial.d.ts +277 -0
  147. package/dist/themes/editorial.js +183 -0
  148. package/dist/themes/index.d.ts +1425 -0
  149. package/dist/themes/index.js +45 -0
  150. package/{src/types.ts → dist/types.d.ts} +40 -37
  151. package/dist/vite.cjs +5 -0
  152. package/dist/vite.d.ts +4 -0
  153. package/dist/vite.js +6 -0
  154. package/dist/webpack.cjs +5 -0
  155. package/dist/webpack.d.ts +4 -0
  156. package/dist/webpack.js +6 -0
  157. package/dist/yarcl.config.d.ts +276 -0
  158. package/dist/yarcl.config.js +273 -0
  159. package/package.json +69 -17
  160. package/src/classes.ts +0 -23
  161. package/src/color.ts +0 -48
  162. package/src/components/Accordion.tsx +0 -274
  163. package/src/components/Alert.tsx +0 -85
  164. package/src/components/Badge.tsx +0 -79
  165. package/src/components/Breadcrumb.tsx +0 -239
  166. package/src/components/Button.tsx +0 -58
  167. package/src/components/ButtonGroup.tsx +0 -61
  168. package/src/components/Card.tsx +0 -50
  169. package/src/components/Checkbox.tsx +0 -49
  170. package/src/components/Combobox.tsx +0 -522
  171. package/src/components/CommandPalette.tsx +0 -452
  172. package/src/components/DatePicker.tsx +0 -432
  173. package/src/components/Dialog.tsx +0 -39
  174. package/src/components/Divider.tsx +0 -34
  175. package/src/components/Drawer.tsx +0 -31
  176. package/src/components/Field.tsx +0 -61
  177. package/src/components/Heading.tsx +0 -40
  178. package/src/components/HoverCard.tsx +0 -108
  179. package/src/components/IconButton.tsx +0 -59
  180. package/src/components/Inline.tsx +0 -42
  181. package/src/components/Input.tsx +0 -28
  182. package/src/components/Label.tsx +0 -58
  183. package/src/components/Link.tsx +0 -41
  184. package/src/components/Menu.tsx +0 -207
  185. package/src/components/Modal.tsx +0 -164
  186. package/src/components/NumberInput.tsx +0 -208
  187. package/src/components/Pagination.tsx +0 -227
  188. package/src/components/Popover.tsx +0 -140
  189. package/src/components/Progress.tsx +0 -122
  190. package/src/components/Radio.tsx +0 -59
  191. package/src/components/RadioGroup.tsx +0 -114
  192. package/src/components/Select.tsx +0 -197
  193. package/src/components/Skeleton.tsx +0 -95
  194. package/src/components/Slider.tsx +0 -315
  195. package/src/components/Spinner.tsx +0 -38
  196. package/src/components/Stack.tsx +0 -57
  197. package/src/components/Switch.tsx +0 -42
  198. package/src/components/Table.tsx +0 -99
  199. package/src/components/Tabs.tsx +0 -159
  200. package/src/components/Text.tsx +0 -67
  201. package/src/components/Textarea.tsx +0 -26
  202. package/src/components/Toast.tsx +0 -190
  203. package/src/components/ToggleGroup.tsx +0 -227
  204. package/src/components/Tooltip.tsx +0 -78
  205. package/src/contrast.ts +0 -82
  206. package/src/css.ts +0 -228
  207. package/src/define.check.ts +0 -259
  208. package/src/define.ts +0 -379
  209. package/src/field-context.ts +0 -31
  210. package/src/floating.tsx +0 -61
  211. package/src/hooks.ts +0 -19
  212. package/src/plugin.ts +0 -94
  213. package/src/reference/DesignReference.tsx +0 -374
  214. package/src/runtime.ts +0 -38
  215. package/src/themes/bloom.ts +0 -72
  216. package/src/themes/brutalist.ts +0 -63
  217. package/src/themes/compact.ts +0 -63
  218. package/src/themes/contract.ts +0 -24
  219. package/src/themes/editorial.ts +0 -55
  220. package/src/themes/index.ts +0 -47
  221. package/src/yarcl.config.ts +0 -104
  222. /package/{src/reference/index.ts → dist/reference/index.d.ts} +0 -0
  223. /package/{src → dist}/reference/reference.css +0 -0
@@ -61,7 +61,7 @@
61
61
  display: inline-flex;
62
62
  align-items: center;
63
63
  justify-content: center;
64
- gap: 0.5em;
64
+ gap: calc(var(--yarcl-px) / 2);
65
65
  white-space: nowrap;
66
66
  color: var(--yarcl-v-fg);
67
67
  background: var(--yarcl-v-bg);
@@ -207,7 +207,7 @@
207
207
  .yarcl-switch {
208
208
  display: inline-flex;
209
209
  align-items: center;
210
- gap: 0.5em;
210
+ gap: calc(var(--yarcl-px) / 2);
211
211
  font-size: var(--yarcl-fs);
212
212
  line-height: 1.25;
213
213
  color: var(--yarcl-neutral-text);
@@ -244,7 +244,7 @@
244
244
  }
245
245
 
246
246
  .yarcl-checkbox-input {
247
- border-radius: 0.25em;
247
+ border-radius: min(var(--yarcl-r), calc(var(--yarcl-icon) / 4));
248
248
  }
249
249
 
250
250
  .yarcl-radio-input {
@@ -293,7 +293,7 @@
293
293
 
294
294
  .yarcl-switch-input {
295
295
  --yarcl-track-h: calc(var(--yarcl-icon) * 1.25);
296
- --yarcl-thumb: calc(var(--yarcl-track-h) - 4px);
296
+ --yarcl-thumb: calc(var(--yarcl-track-h) - var(--yarcl-border-width) * 4);
297
297
  width: calc(var(--yarcl-track-h) * 1.8);
298
298
  height: var(--yarcl-track-h);
299
299
  border-radius: 9999px;
@@ -303,8 +303,8 @@
303
303
  .yarcl-switch-input::before {
304
304
  content: '';
305
305
  position: absolute;
306
- top: 2px;
307
- left: 2px;
306
+ top: calc(var(--yarcl-border-width) * 2);
307
+ left: calc(var(--yarcl-border-width) * 2);
308
308
  width: var(--yarcl-thumb);
309
309
  height: var(--yarcl-thumb);
310
310
  border-radius: 50%;
@@ -321,7 +321,7 @@
321
321
 
322
322
  .yarcl-switch-input:checked::before {
323
323
  background: var(--yarcl-c-on);
324
- transform: translateX(calc(var(--yarcl-track-h) * 1.8 - var(--yarcl-thumb) - 4px));
324
+ transform: translateX(calc(var(--yarcl-track-h) * 1.8 - var(--yarcl-thumb) - var(--yarcl-border-width) * 4));
325
325
  }
326
326
 
327
327
  /* Slider */
@@ -412,6 +412,23 @@
412
412
  color: var(--yarcl-c-text);
413
413
  }
414
414
 
415
+ .yarcl-label-variant {
416
+ display: inline-flex;
417
+ align-items: center;
418
+ gap: calc(var(--yarcl-px) / 4);
419
+ box-sizing: border-box;
420
+ max-width: 100%;
421
+ padding: calc(var(--yarcl-fs) / 8) calc(var(--yarcl-px) / 2);
422
+ color: var(--yarcl-v-fg);
423
+ background: var(--yarcl-v-bg);
424
+ border: var(--yarcl-border-width) solid var(--yarcl-v-border);
425
+ border-radius: var(--yarcl-r);
426
+ }
427
+
428
+ .yarcl-label-sized {
429
+ font-size: var(--yarcl-fs);
430
+ }
431
+
415
432
  .yarcl-label-disabled {
416
433
  color: var(--yarcl-neutral-muted);
417
434
  }
@@ -424,7 +441,7 @@
424
441
 
425
442
  .yarcl-field {
426
443
  display: grid;
427
- gap: 0.375rem;
444
+ gap: calc(var(--yarcl-gap) * 0.375);
428
445
  color: var(--yarcl-neutral-text);
429
446
  }
430
447
 
@@ -500,7 +517,7 @@ p.yarcl-text {
500
517
  color: var(--yarcl-c-text);
501
518
  text-decoration-thickness: from-font;
502
519
  text-underline-offset: 0.2em;
503
- border-radius: 0.125em;
520
+ border-radius: calc(var(--yarcl-border-width) * 2);
504
521
  }
505
522
 
506
523
  .yarcl-link:hover {
@@ -526,7 +543,7 @@ p.yarcl-text {
526
543
  display: flex;
527
544
  flex-wrap: wrap;
528
545
  align-items: center;
529
- gap: 0.375em;
546
+ gap: calc(var(--yarcl-gap) * 0.375);
530
547
  margin: 0;
531
548
  padding: 0;
532
549
  list-style: none;
@@ -535,7 +552,7 @@ p.yarcl-text {
535
552
  .yarcl-breadcrumb-item {
536
553
  display: inline-flex;
537
554
  align-items: center;
538
- gap: 0.375em;
555
+ gap: calc(var(--yarcl-gap) * 0.375);
539
556
  min-width: 0;
540
557
  }
541
558
 
@@ -557,13 +574,13 @@ p.yarcl-text {
557
574
  .yarcl-breadcrumb-ellipsis {
558
575
  display: inline-flex;
559
576
  align-items: center;
560
- padding: 0 0.125em;
577
+ padding: 0 calc(var(--yarcl-border-width) * 2);
561
578
  font: inherit;
562
579
  line-height: inherit;
563
580
  color: var(--yarcl-c-text);
564
581
  background: none;
565
582
  border: 0;
566
- border-radius: 0.125em;
583
+ border-radius: calc(var(--yarcl-border-width) * 2);
567
584
  cursor: pointer;
568
585
  }
569
586
 
@@ -576,6 +593,7 @@ p.yarcl-text {
576
593
  .yarcl-stack,
577
594
  .yarcl-inline {
578
595
  display: flex;
596
+ gap: var(--yarcl-component-gap);
579
597
  margin: 0;
580
598
  padding: 0;
581
599
  list-style: none;
@@ -605,6 +623,21 @@ p.yarcl-text {
605
623
  .yarcl-justify-end { justify-content: flex-end; }
606
624
  .yarcl-justify-between { justify-content: space-between; }
607
625
 
626
+ /* VisuallyHidden */
627
+
628
+ .yarcl-visually-hidden {
629
+ position: absolute;
630
+ width: var(--yarcl-border-width);
631
+ height: var(--yarcl-border-width);
632
+ padding: 0;
633
+ margin: calc(var(--yarcl-border-width) * -1);
634
+ overflow: hidden;
635
+ clip: rect(0, 0, 0, 0);
636
+ clip-path: inset(50%);
637
+ white-space: nowrap;
638
+ border: 0;
639
+ }
640
+
608
641
  /* Card */
609
642
 
610
643
  .yarcl-card {
@@ -613,6 +646,7 @@ p.yarcl-text {
613
646
  background: var(--yarcl-neutral-surface);
614
647
  border: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
615
648
  border-radius: var(--yarcl-r);
649
+ padding: var(--yarcl-component-padding);
616
650
  }
617
651
 
618
652
  /* Divider */
@@ -655,14 +689,15 @@ p.yarcl-text {
655
689
  color: var(--yarcl-neutral-text);
656
690
  background: var(--yarcl-neutral-surface);
657
691
  border: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
658
- border-radius: min(var(--yarcl-r, 0.5rem), 0.75rem);
692
+ border-radius: var(--yarcl-r);
659
693
  box-shadow: var(--yarcl-floating-shadow);
660
694
  outline: none;
661
695
  }
662
696
 
663
697
  .yarcl-popover,
664
698
  .yarcl-hover-card {
665
- max-width: min(24rem, calc(100vw - 1rem));
699
+ max-width: min(24rem, calc(100vw - var(--yarcl-padding)));
700
+ padding: var(--yarcl-component-padding);
666
701
  overflow: auto;
667
702
  }
668
703
 
@@ -671,12 +706,11 @@ p.yarcl-text {
671
706
  .yarcl-tooltip {
672
707
  z-index: var(--yarcl-z-tooltip);
673
708
  max-width: 18rem;
674
- padding: 0.375rem 0.5rem;
675
- font-size: 0.8125rem;
676
- line-height: 1.3;
709
+ padding-block: calc(var(--yarcl-component-padding) * 0.75);
710
+ padding-inline: var(--yarcl-component-padding);
677
711
  color: var(--yarcl-neutral-bg);
678
712
  background: var(--yarcl-neutral-text);
679
- border-radius: 0.375rem;
713
+ border-radius: var(--yarcl-r);
680
714
  pointer-events: none;
681
715
  }
682
716
 
@@ -689,8 +723,8 @@ p.yarcl-text {
689
723
  .yarcl-listbox {
690
724
  display: flex;
691
725
  flex-direction: column;
692
- min-width: 10rem;
693
- padding: 0.25rem;
726
+ min-width: calc(var(--yarcl-h) * 4);
727
+ padding: calc(var(--yarcl-px) / 4);
694
728
  overflow-y: auto;
695
729
  font-size: var(--yarcl-fs);
696
730
  }
@@ -699,17 +733,17 @@ p.yarcl-text {
699
733
  display: flex;
700
734
  align-items: center;
701
735
  justify-content: space-between;
702
- gap: 0.5em;
736
+ gap: calc(var(--yarcl-px) / 2);
703
737
  box-sizing: border-box;
704
738
  width: 100%;
705
- min-height: calc(var(--yarcl-h) - 0.5rem);
706
- padding: 0 calc(var(--yarcl-px) - 0.25rem);
739
+ min-height: calc(var(--yarcl-h) - var(--yarcl-px) / 2);
740
+ padding: 0 calc(var(--yarcl-px) * 0.75);
707
741
  font: inherit;
708
742
  text-align: left;
709
743
  color: inherit;
710
744
  background: none;
711
745
  border: 0;
712
- border-radius: min(var(--yarcl-r, 0.375rem), 0.375rem);
746
+ border-radius: var(--yarcl-r);
713
747
  cursor: pointer;
714
748
  outline: none;
715
749
  user-select: none;
@@ -749,12 +783,12 @@ p.yarcl-text {
749
783
 
750
784
  .yarcl-listbox-separator {
751
785
  height: var(--yarcl-border-width);
752
- margin: 0.25rem -0.25rem;
786
+ margin: calc(var(--yarcl-px) / 4) calc(var(--yarcl-px) / -4);
753
787
  background: var(--yarcl-neutral-border);
754
788
  }
755
789
 
756
790
  .yarcl-listbox-message {
757
- padding: 0.5rem calc(var(--yarcl-px) - 0.25rem);
791
+ padding: calc(var(--yarcl-px) / 2) calc(var(--yarcl-px) * 0.75);
758
792
  color: var(--yarcl-neutral-muted);
759
793
  }
760
794
 
@@ -762,8 +796,8 @@ p.yarcl-text {
762
796
  display: inline-flex;
763
797
  align-items: center;
764
798
  justify-content: space-between;
765
- gap: 0.5em;
766
- min-width: 10rem;
799
+ gap: calc(var(--yarcl-px) / 2);
800
+ min-width: calc(var(--yarcl-h) * 4);
767
801
  text-align: left;
768
802
  cursor: pointer;
769
803
  }
@@ -796,7 +830,7 @@ p.yarcl-text {
796
830
  flex-wrap: wrap;
797
831
  align-items: center;
798
832
  gap: calc(var(--yarcl-combobox-pad) / 2);
799
- min-width: 10rem;
833
+ min-width: calc(var(--yarcl-h) * 4);
800
834
  height: auto;
801
835
  min-height: var(--yarcl-h);
802
836
  padding: var(--yarcl-combobox-pad) var(--yarcl-px);
@@ -912,9 +946,9 @@ html:has(.yarcl-modal[open]) {
912
946
 
913
947
  .yarcl-dialog {
914
948
  margin: auto;
915
- width: min(var(--yarcl-modal-width, 32rem), calc(100vw - 2rem));
916
- max-height: calc(100dvh - 2rem);
917
- border-radius: min(var(--yarcl-r), 1rem);
949
+ width: min(var(--yarcl-modal-width), calc(100vw - var(--yarcl-padding) * 2));
950
+ max-height: calc(100dvh - var(--yarcl-padding) * 2);
951
+ border-radius: var(--yarcl-r);
918
952
  }
919
953
 
920
954
  .yarcl-dialog[open] {
@@ -922,7 +956,7 @@ html:has(.yarcl-modal[open]) {
922
956
  }
923
957
 
924
958
  .yarcl-drawer {
925
- width: min(var(--yarcl-modal-width, 24rem), calc(100vw - 3rem));
959
+ width: min(var(--yarcl-modal-width), calc(100vw - var(--yarcl-padding) * 2));
926
960
  max-width: none;
927
961
  height: 100dvh;
928
962
  max-height: none;
@@ -972,7 +1006,7 @@ html:has(.yarcl-modal[open]) {
972
1006
 
973
1007
  .yarcl-modal-heading {
974
1008
  display: grid;
975
- gap: 0.25rem;
1009
+ gap: calc(var(--yarcl-gap) / 4);
976
1010
  }
977
1011
 
978
1012
  .yarcl-modal-title {
@@ -999,7 +1033,7 @@ html:has(.yarcl-modal[open]) {
999
1033
  display: flex;
1000
1034
  flex-wrap: wrap;
1001
1035
  justify-content: flex-end;
1002
- gap: 0.5rem;
1036
+ gap: calc(var(--yarcl-gap) / 2);
1003
1037
  margin-top: var(--yarcl-gap);
1004
1038
  }
1005
1039
 
@@ -1009,13 +1043,13 @@ html:has(.yarcl-modal[open]) {
1009
1043
  flex-shrink: 0;
1010
1044
  align-items: center;
1011
1045
  justify-content: center;
1012
- width: 2rem;
1013
- height: 2rem;
1046
+ width: calc(var(--yarcl-icon) * 2);
1047
+ height: calc(var(--yarcl-icon) * 2);
1014
1048
  padding: 0;
1015
1049
  color: var(--yarcl-neutral-muted);
1016
1050
  background: none;
1017
1051
  border: 0;
1018
- border-radius: 0.375rem;
1052
+ border-radius: var(--yarcl-r);
1019
1053
  cursor: pointer;
1020
1054
  }
1021
1055
 
@@ -1027,15 +1061,15 @@ html:has(.yarcl-modal[open]) {
1027
1061
 
1028
1062
  .yarcl-modal-close svg,
1029
1063
  .yarcl-toast-close svg {
1030
- width: 1.125rem;
1031
- height: 1.125rem;
1064
+ width: var(--yarcl-icon);
1065
+ height: var(--yarcl-icon);
1032
1066
  }
1033
1067
 
1034
1068
  /* CommandPalette */
1035
1069
 
1036
1070
  .yarcl-command-palette {
1037
- margin-top: min(15dvh, 8rem);
1038
- max-height: calc(100dvh - min(15dvh, 8rem) - 1rem);
1071
+ margin-top: min(15dvh, calc(var(--yarcl-padding) * 8));
1072
+ max-height: calc(100dvh - min(15dvh, var(--yarcl-padding) * 8) - var(--yarcl-padding));
1039
1073
  font-size: var(--yarcl-fs);
1040
1074
  }
1041
1075
 
@@ -1049,7 +1083,7 @@ html:has(.yarcl-modal[open]) {
1049
1083
  display: flex;
1050
1084
  flex-shrink: 0;
1051
1085
  align-items: center;
1052
- gap: 0.5em;
1086
+ gap: calc(var(--yarcl-px) / 2);
1053
1087
  padding: 0 var(--yarcl-px);
1054
1088
  color: var(--yarcl-neutral-muted);
1055
1089
  border-bottom: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
@@ -1069,7 +1103,7 @@ html:has(.yarcl-modal[open]) {
1069
1103
  .yarcl-command-palette-input {
1070
1104
  flex: 1;
1071
1105
  min-width: 0;
1072
- height: calc(var(--yarcl-h) + 0.5rem);
1106
+ height: calc(var(--yarcl-h) + var(--yarcl-px) / 2);
1073
1107
  padding: 0;
1074
1108
  font: inherit;
1075
1109
  color: var(--yarcl-neutral-text);
@@ -1083,7 +1117,7 @@ html:has(.yarcl-modal[open]) {
1083
1117
  }
1084
1118
 
1085
1119
  .yarcl-command-palette-list {
1086
- gap: 0.25rem;
1120
+ gap: calc(var(--yarcl-px) / 4);
1087
1121
  max-height: min(24rem, 60dvh);
1088
1122
  overscroll-behavior: contain;
1089
1123
  }
@@ -1094,8 +1128,8 @@ html:has(.yarcl-modal[open]) {
1094
1128
  }
1095
1129
 
1096
1130
  .yarcl-command-palette-heading {
1097
- padding: 0.375rem calc(var(--yarcl-px) - 0.25rem) 0.25rem;
1098
- font-size: 0.8125em;
1131
+ padding: calc(var(--yarcl-px) * 0.375) calc(var(--yarcl-px) * 0.75) calc(var(--yarcl-px) / 4);
1132
+ font-size: calc(var(--yarcl-fs) * 0.8125);
1099
1133
  font-weight: 600;
1100
1134
  color: var(--yarcl-neutral-muted);
1101
1135
  user-select: none;
@@ -1104,27 +1138,27 @@ html:has(.yarcl-modal[open]) {
1104
1138
  .yarcl-command-palette-item {
1105
1139
  display: flex;
1106
1140
  align-items: center;
1107
- gap: 0.625em;
1141
+ gap: calc(var(--yarcl-px) * 0.625);
1108
1142
  min-width: 0;
1109
1143
  }
1110
1144
 
1111
1145
  .yarcl-command-palette-shortcut {
1112
1146
  display: inline-flex;
1113
1147
  flex-shrink: 0;
1114
- gap: 0.25em;
1115
- font-size: 0.8125em;
1148
+ gap: calc(var(--yarcl-px) / 4);
1149
+ font-size: calc(var(--yarcl-fs) * 0.8125);
1116
1150
  color: var(--yarcl-neutral-muted);
1117
1151
  }
1118
1152
 
1119
1153
  .yarcl-command-palette-shortcut kbd {
1120
1154
  box-sizing: border-box;
1121
- min-width: 1.75em;
1122
- padding: 0.125em 0.375em;
1155
+ min-width: calc(var(--yarcl-fs) * 1.75);
1156
+ padding: calc(var(--yarcl-fs) / 8) calc(var(--yarcl-fs) * 0.375);
1123
1157
  font: inherit;
1124
1158
  line-height: 1.2;
1125
1159
  text-align: center;
1126
1160
  border: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
1127
- border-radius: min(var(--yarcl-r), 0.25rem);
1161
+ border-radius: var(--yarcl-r);
1128
1162
  }
1129
1163
 
1130
1164
  .yarcl-option[data-active] .yarcl-command-palette-shortcut {
@@ -1136,7 +1170,7 @@ html:has(.yarcl-modal[open]) {
1136
1170
  }
1137
1171
 
1138
1172
  .yarcl-command-palette-empty {
1139
- padding-block: 1.25rem;
1173
+ padding-block: var(--yarcl-padding);
1140
1174
  text-align: center;
1141
1175
  }
1142
1176
 
@@ -1149,7 +1183,7 @@ html:has(.yarcl-modal[open]) {
1149
1183
  @keyframes yarcl-toast-in {
1150
1184
  from {
1151
1185
  opacity: 0;
1152
- transform: translateY(0.5rem);
1186
+ transform: translateY(calc(var(--yarcl-gap) / 2));
1153
1187
  }
1154
1188
  }
1155
1189
 
@@ -1158,8 +1192,8 @@ html:has(.yarcl-modal[open]) {
1158
1192
  inset: auto;
1159
1193
  display: flex;
1160
1194
  flex-direction: column;
1161
- gap: 0.5rem;
1162
- width: min(22rem, calc(100vw - 2rem));
1195
+ gap: calc(var(--yarcl-gap) / 2);
1196
+ width: min(22rem, calc(100vw - var(--yarcl-padding) * 2));
1163
1197
  margin: 0;
1164
1198
  padding: 0;
1165
1199
  overflow: visible;
@@ -1174,23 +1208,23 @@ html:has(.yarcl-modal[open]) {
1174
1208
  .yarcl-toaster-top-left,
1175
1209
  .yarcl-toaster-top-center,
1176
1210
  .yarcl-toaster-top-right {
1177
- top: 1rem;
1211
+ top: var(--yarcl-padding);
1178
1212
  }
1179
1213
 
1180
1214
  .yarcl-toaster-bottom-left,
1181
1215
  .yarcl-toaster-bottom-center,
1182
1216
  .yarcl-toaster-bottom-right {
1183
- bottom: 1rem;
1217
+ bottom: var(--yarcl-padding);
1184
1218
  }
1185
1219
 
1186
1220
  .yarcl-toaster-top-left,
1187
1221
  .yarcl-toaster-bottom-left {
1188
- left: 1rem;
1222
+ left: var(--yarcl-padding);
1189
1223
  }
1190
1224
 
1191
1225
  .yarcl-toaster-top-right,
1192
1226
  .yarcl-toaster-bottom-right {
1193
- right: 1rem;
1227
+ right: var(--yarcl-padding);
1194
1228
  }
1195
1229
 
1196
1230
  .yarcl-toaster-top-center,
@@ -1202,16 +1236,15 @@ html:has(.yarcl-modal[open]) {
1202
1236
  .yarcl-toast {
1203
1237
  display: flex;
1204
1238
  align-items: flex-start;
1205
- gap: 0.75rem;
1239
+ gap: calc(var(--yarcl-component-gap) * 1.5);
1206
1240
  box-sizing: border-box;
1207
- padding: 0.75rem 0.5rem 0.75rem 1rem;
1208
- font-size: 0.875rem;
1209
- line-height: 1.4;
1241
+ padding: calc(var(--yarcl-component-padding) * 0.75) calc(var(--yarcl-component-padding) / 2)
1242
+ calc(var(--yarcl-component-padding) * 0.75) var(--yarcl-component-padding);
1210
1243
  color: var(--yarcl-neutral-text);
1211
1244
  background: var(--yarcl-neutral-surface);
1212
1245
  border: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
1213
- border-left: 0.25rem solid var(--yarcl-c);
1214
- border-radius: 0.5rem;
1246
+ border-left: calc(var(--yarcl-border-width) * 4) solid var(--yarcl-c);
1247
+ border-radius: var(--yarcl-r);
1215
1248
  box-shadow: var(--yarcl-floating-shadow);
1216
1249
  animation: yarcl-toast-in var(--yarcl-motion-base) var(--yarcl-motion-easing);
1217
1250
  }
@@ -1219,7 +1252,7 @@ html:has(.yarcl-modal[open]) {
1219
1252
  .yarcl-toast-text {
1220
1253
  flex: 1;
1221
1254
  min-width: 0;
1222
- padding-top: 0.25rem;
1255
+ padding-top: calc(var(--yarcl-component-padding) / 4);
1223
1256
  }
1224
1257
 
1225
1258
  .yarcl-toast-title {
@@ -1233,13 +1266,13 @@ html:has(.yarcl-modal[open]) {
1233
1266
  .yarcl-toast-action {
1234
1267
  flex-shrink: 0;
1235
1268
  align-self: center;
1236
- padding: 0.375rem 0.625rem;
1269
+ padding: calc(var(--yarcl-component-padding) * 0.375) calc(var(--yarcl-component-padding) * 0.625);
1237
1270
  font: inherit;
1238
1271
  font-weight: 600;
1239
1272
  color: var(--yarcl-c-text);
1240
1273
  background: color-mix(in oklab, var(--yarcl-c) 12%, transparent);
1241
1274
  border: 0;
1242
- border-radius: 0.375rem;
1275
+ border-radius: var(--yarcl-r);
1243
1276
  cursor: pointer;
1244
1277
  }
1245
1278
 
@@ -1251,7 +1284,7 @@ html:has(.yarcl-modal[open]) {
1251
1284
 
1252
1285
  .yarcl-tabs-list {
1253
1286
  display: flex;
1254
- gap: 0.25rem;
1287
+ gap: calc(var(--yarcl-gap) / 4);
1255
1288
  overflow-x: auto;
1256
1289
  border-bottom: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
1257
1290
  }
@@ -1268,7 +1301,7 @@ html:has(.yarcl-modal[open]) {
1268
1301
  white-space: nowrap;
1269
1302
  background: none;
1270
1303
  border: 0;
1271
- border-bottom: 2px solid transparent;
1304
+ border-bottom: calc(var(--yarcl-border-width) * 2) solid transparent;
1272
1305
  cursor: pointer;
1273
1306
  transition: color var(--yarcl-motion-fast) var(--yarcl-motion-easing),
1274
1307
  border-color var(--yarcl-motion-fast) var(--yarcl-motion-easing);
@@ -1314,7 +1347,7 @@ html:has(.yarcl-modal[open]) {
1314
1347
  .yarcl-accordion-trigger {
1315
1348
  display: flex;
1316
1349
  align-items: center;
1317
- gap: 0.5em;
1350
+ gap: calc(var(--yarcl-px) / 2);
1318
1351
  box-sizing: border-box;
1319
1352
  width: 100%;
1320
1353
  min-height: var(--yarcl-h);
@@ -1393,7 +1426,7 @@ html:has(.yarcl-modal[open]) {
1393
1426
  .yarcl-table-wrap {
1394
1427
  overflow-x: auto;
1395
1428
  border: var(--yarcl-border-width) solid var(--yarcl-neutral-border);
1396
- border-radius: 0.5rem;
1429
+ border-radius: var(--yarcl-r);
1397
1430
  }
1398
1431
 
1399
1432
  .yarcl-table {
@@ -1476,9 +1509,9 @@ html:has(.yarcl-modal[open]) {
1476
1509
  display: inline-block;
1477
1510
  flex-shrink: 0;
1478
1511
  box-sizing: border-box;
1479
- width: var(--yarcl-icon, 1em);
1480
- height: var(--yarcl-icon, 1em);
1481
- border: max(2px, calc(var(--yarcl-icon, 1em) / 8)) solid currentColor;
1512
+ width: var(--yarcl-icon);
1513
+ height: var(--yarcl-icon);
1514
+ border: max(calc(var(--yarcl-border-width) * 2), calc(var(--yarcl-icon) / 8)) solid currentColor;
1482
1515
  border-right-color: transparent;
1483
1516
  border-radius: 50%;
1484
1517
  vertical-align: middle;
@@ -1489,15 +1522,101 @@ html:has(.yarcl-modal[open]) {
1489
1522
  color: var(--yarcl-c);
1490
1523
  }
1491
1524
 
1525
+ /* Avatar */
1526
+
1527
+ .yarcl-avatar {
1528
+ display: inline-flex;
1529
+ flex: 0 0 auto;
1530
+ align-items: center;
1531
+ justify-content: center;
1532
+ box-sizing: border-box;
1533
+ width: var(--yarcl-h);
1534
+ height: var(--yarcl-h);
1535
+ overflow: hidden;
1536
+ color: var(--yarcl-v-fg);
1537
+ font-size: var(--yarcl-fs);
1538
+ font-weight: 600;
1539
+ line-height: 1;
1540
+ background: var(--yarcl-v-bg);
1541
+ border: var(--yarcl-border-width) solid var(--yarcl-v-border);
1542
+ border-radius: var(--yarcl-r);
1543
+ }
1544
+
1545
+ .yarcl-avatar-image {
1546
+ width: 100%;
1547
+ height: 100%;
1548
+ object-fit: cover;
1549
+ }
1550
+
1551
+ .yarcl-avatar-fallback {
1552
+ overflow: hidden;
1553
+ text-overflow: ellipsis;
1554
+ }
1555
+
1556
+ .yarcl-avatar-group {
1557
+ display: inline-flex;
1558
+ align-items: center;
1559
+ }
1560
+
1561
+ .yarcl-avatar-group > .yarcl-avatar + .yarcl-avatar {
1562
+ margin-inline-start: calc(var(--yarcl-h) / -4);
1563
+ box-shadow: 0 0 0 var(--yarcl-border-width) var(--yarcl-neutral-surface);
1564
+ }
1565
+
1566
+ .yarcl-avatar-overflow {
1567
+ position: relative;
1568
+ z-index: 1;
1569
+ font-size: calc(var(--yarcl-fs) * 0.85);
1570
+ }
1571
+
1572
+ /* EmptyState */
1573
+
1574
+ .yarcl-empty-state {
1575
+ display: flex;
1576
+ flex-direction: column;
1577
+ align-items: center;
1578
+ justify-content: center;
1579
+ gap: var(--yarcl-component-gap);
1580
+ box-sizing: border-box;
1581
+ padding: var(--yarcl-component-padding);
1582
+ text-align: center;
1583
+ }
1584
+
1585
+ .yarcl-empty-state-icon {
1586
+ display: flex;
1587
+ color: var(--yarcl-c);
1588
+ }
1589
+
1590
+ .yarcl-empty-state-icon > svg {
1591
+ width: calc(var(--yarcl-icon) * 2);
1592
+ height: calc(var(--yarcl-icon) * 2);
1593
+ }
1594
+
1595
+ .yarcl-empty-state-title,
1596
+ .yarcl-empty-state-description {
1597
+ margin: 0;
1598
+ }
1599
+
1600
+ .yarcl-empty-state-description {
1601
+ color: var(--yarcl-neutral-muted);
1602
+ }
1603
+
1604
+ .yarcl-empty-state-actions {
1605
+ display: flex;
1606
+ flex-wrap: wrap;
1607
+ justify-content: center;
1608
+ gap: var(--yarcl-component-gap);
1609
+ }
1610
+
1492
1611
  /* Badge */
1493
1612
 
1494
1613
  .yarcl-badge {
1495
1614
  display: inline-flex;
1496
1615
  align-items: center;
1497
- gap: 0.25em;
1616
+ gap: calc(var(--yarcl-px) / 4);
1498
1617
  box-sizing: border-box;
1499
1618
  max-width: 100%;
1500
- padding: 0.125em 0.5em;
1619
+ padding: calc(var(--yarcl-fs) / 8) calc(var(--yarcl-px) / 2);
1501
1620
  font-size: calc(var(--yarcl-fs) * 0.85);
1502
1621
  font-weight: 500;
1503
1622
  line-height: 1.4;
@@ -1515,7 +1634,7 @@ html:has(.yarcl-modal[open]) {
1515
1634
  justify-content: center;
1516
1635
  width: 1.1em;
1517
1636
  height: 1.1em;
1518
- margin-right: -0.25em;
1637
+ margin-right: calc(var(--yarcl-px) / -4);
1519
1638
  padding: 0;
1520
1639
  color: inherit;
1521
1640
  background: none;
@@ -1544,26 +1663,24 @@ html:has(.yarcl-modal[open]) {
1544
1663
  .yarcl-alert {
1545
1664
  display: flex;
1546
1665
  align-items: flex-start;
1547
- gap: 0.75rem;
1666
+ gap: calc(var(--yarcl-component-gap) * 1.5);
1548
1667
  box-sizing: border-box;
1549
- padding: 0.875rem 1rem;
1550
- font-size: 0.875rem;
1551
- line-height: 1.5;
1668
+ padding: calc(var(--yarcl-component-padding) * 0.875) var(--yarcl-component-padding);
1552
1669
  color: var(--yarcl-v-fg);
1553
1670
  background: var(--yarcl-v-bg);
1554
1671
  border: var(--yarcl-border-width) solid var(--yarcl-v-border);
1555
- border-radius: min(var(--yarcl-r), 0.75rem);
1672
+ border-radius: var(--yarcl-r);
1556
1673
  }
1557
1674
 
1558
1675
  .yarcl-alert-icon {
1559
1676
  display: inline-flex;
1560
1677
  flex-shrink: 0;
1561
- margin-top: 0.125rem;
1678
+ margin-top: calc(var(--yarcl-component-padding) / 8);
1562
1679
  }
1563
1680
 
1564
1681
  .yarcl-alert-icon svg {
1565
- width: 1.125rem;
1566
- height: 1.125rem;
1682
+ width: var(--yarcl-icon);
1683
+ height: var(--yarcl-icon);
1567
1684
  }
1568
1685
 
1569
1686
  .yarcl-alert-text {
@@ -1585,14 +1702,15 @@ html:has(.yarcl-modal[open]) {
1585
1702
  flex-shrink: 0;
1586
1703
  align-items: center;
1587
1704
  justify-content: center;
1588
- width: 1.75rem;
1589
- height: 1.75rem;
1590
- margin: -0.25rem -0.5rem -0.25rem 0;
1705
+ width: calc(var(--yarcl-icon) * 1.75);
1706
+ height: calc(var(--yarcl-icon) * 1.75);
1707
+ margin: calc(var(--yarcl-component-padding) / -4) calc(var(--yarcl-component-padding) / -2)
1708
+ calc(var(--yarcl-component-padding) / -4) 0;
1591
1709
  padding: 0;
1592
1710
  color: inherit;
1593
1711
  background: none;
1594
1712
  border: 0;
1595
- border-radius: 0.375rem;
1713
+ border-radius: var(--yarcl-r);
1596
1714
  cursor: pointer;
1597
1715
  opacity: 0.7;
1598
1716
  }
@@ -1607,8 +1725,8 @@ html:has(.yarcl-modal[open]) {
1607
1725
  }
1608
1726
 
1609
1727
  .yarcl-alert-dismiss svg {
1610
- width: 1rem;
1611
- height: 1rem;
1728
+ width: var(--yarcl-icon);
1729
+ height: var(--yarcl-icon);
1612
1730
  }
1613
1731
 
1614
1732
  /* Skeleton */
@@ -1632,7 +1750,7 @@ html:has(.yarcl-modal[open]) {
1632
1750
  .yarcl-skeleton-line {
1633
1751
  height: 0.8em;
1634
1752
  margin: calc((1lh - 0.8em) / 2) 0;
1635
- border-radius: 0.25em;
1753
+ border-radius: var(--yarcl-r);
1636
1754
  }
1637
1755
 
1638
1756
  .yarcl-skeleton-line:last-child:not(:first-child) {
@@ -1677,7 +1795,7 @@ html:has(.yarcl-modal[open]) {
1677
1795
 
1678
1796
  .yarcl-progress {
1679
1797
  display: grid;
1680
- gap: 0.375em;
1798
+ gap: calc(var(--yarcl-px) * 0.375);
1681
1799
  min-width: 0;
1682
1800
  font-size: var(--yarcl-fs);
1683
1801
  line-height: 1.25;
@@ -1688,7 +1806,7 @@ html:has(.yarcl-modal[open]) {
1688
1806
  display: flex;
1689
1807
  align-items: baseline;
1690
1808
  justify-content: space-between;
1691
- gap: 0.5em;
1809
+ gap: calc(var(--yarcl-px) / 2);
1692
1810
  }
1693
1811
 
1694
1812
  .yarcl-progress-value {
@@ -1743,12 +1861,12 @@ html:has(.yarcl-modal[open]) {
1743
1861
 
1744
1862
  .yarcl-radio-group > legend {
1745
1863
  padding: 0;
1746
- margin-bottom: 0.375rem;
1864
+ margin-bottom: calc(var(--yarcl-gap) * 0.375);
1747
1865
  }
1748
1866
 
1749
1867
  .yarcl-radio-group-options {
1750
1868
  display: flex;
1751
- gap: 0.5rem 1rem;
1869
+ gap: calc(var(--yarcl-gap) / 2) var(--yarcl-gap);
1752
1870
  }
1753
1871
 
1754
1872
  .yarcl-radio-group-vertical {
@@ -1768,7 +1886,7 @@ html:has(.yarcl-modal[open]) {
1768
1886
 
1769
1887
  .yarcl-button-group {
1770
1888
  display: inline-flex;
1771
- gap: 0.5rem;
1889
+ gap: calc(var(--yarcl-gap) / 2);
1772
1890
  }
1773
1891
 
1774
1892
  .yarcl-button-group-vertical {
@@ -1864,7 +1982,7 @@ html:has(.yarcl-modal[open]) {
1864
1982
  /* DatePicker */
1865
1983
 
1866
1984
  .yarcl-popover.yarcl-date-picker-panel {
1867
- max-width: calc(100vw - 1rem);
1985
+ max-width: calc(100vw - var(--yarcl-padding));
1868
1986
  padding: calc(var(--yarcl-px) * 0.75);
1869
1987
  font-size: var(--yarcl-fs);
1870
1988
  }
@@ -1873,8 +1991,8 @@ html:has(.yarcl-modal[open]) {
1873
1991
  display: flex;
1874
1992
  align-items: center;
1875
1993
  justify-content: space-between;
1876
- gap: 0.5em;
1877
- margin-bottom: 0.5em;
1994
+ gap: calc(var(--yarcl-px) / 2);
1995
+ margin-bottom: calc(var(--yarcl-px) / 2);
1878
1996
  }
1879
1997
 
1880
1998
  .yarcl-date-picker-title {
@@ -1892,7 +2010,7 @@ html:has(.yarcl-modal[open]) {
1892
2010
  color: var(--yarcl-neutral-text);
1893
2011
  background: none;
1894
2012
  border: 0;
1895
- border-radius: min(var(--yarcl-r, 0.375rem), 0.375rem);
2013
+ border-radius: var(--yarcl-r);
1896
2014
  cursor: pointer;
1897
2015
  }
1898
2016
 
@@ -1913,7 +2031,7 @@ html:has(.yarcl-modal[open]) {
1913
2031
 
1914
2032
  .yarcl-date-picker-grid {
1915
2033
  border-collapse: separate;
1916
- border-spacing: 0 0.125rem;
2034
+ border-spacing: 0 calc(var(--yarcl-border-width) * 2);
1917
2035
  }
1918
2036
 
1919
2037
  .yarcl-date-picker-grid th {