rsuite 6.0.0-canary-20250624 → 6.0.0-canary-20250702

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 (247) hide show
  1. package/AutoComplete/styles/index.css +156 -161
  2. package/AvatarGroup/styles/index.css +1 -10
  3. package/Badge/styles/index.css +21 -21
  4. package/Button/styles/index.css +78 -63
  5. package/ButtonGroup/styles/index.css +15 -12
  6. package/ButtonToolbar/styles/index.css +1 -10
  7. package/CHANGELOG.md +9 -0
  8. package/Calendar/styles/index.css +92 -67
  9. package/Card/styles/index.css +7 -7
  10. package/CascadeTree/styles/index.css +8 -9
  11. package/Cascader/styles/index.css +160 -164
  12. package/CheckPicker/styles/index.css +173 -178
  13. package/CheckTree/styles/index.css +175 -180
  14. package/CheckTreePicker/styles/index.css +175 -180
  15. package/Checkbox/styles/index.css +21 -28
  16. package/CheckboxGroup/styles/index.css +1 -1
  17. package/DateInput/styles/index.css +8 -18
  18. package/DatePicker/styles/index.css +173 -168
  19. package/DateRangeInput/styles/index.css +8 -18
  20. package/DateRangePicker/styles/index.css +173 -168
  21. package/Dropdown/styles/index.css +110 -94
  22. package/IconButton/styles/index.css +95 -79
  23. package/InlineEdit/styles/index.css +12 -19
  24. package/Input/styles/index.css +8 -18
  25. package/InputGroup/styles/index.css +31 -38
  26. package/InputNumber/styles/index.css +115 -100
  27. package/InputPicker/styles/index.css +156 -161
  28. package/List/styles/index.css +10 -10
  29. package/Loader/styles/index.css +16 -16
  30. package/Menu/styles/index.css +2 -2
  31. package/Message/styles/index.css +2 -2
  32. package/MultiCascadeTree/styles/index.css +178 -191
  33. package/MultiCascader/styles/index.css +178 -200
  34. package/Nav/styles/index.css +162 -146
  35. package/Navbar/styles/index.css +140 -124
  36. package/NumberInput/styles/index.css +115 -100
  37. package/Pagination/styles/index.css +177 -200
  38. package/PasswordInput/styles/index.css +36 -43
  39. package/PinInput/styles/index.css +12 -22
  40. package/Radio/styles/index.css +22 -29
  41. package/RadioGroup/styles/index.css +11 -11
  42. package/SelectPicker/styles/index.css +156 -161
  43. package/Sidenav/styles/index.css +122 -129
  44. package/Stack/styles/index.css +1 -10
  45. package/Stat/styles/index.css +95 -79
  46. package/Steps/styles/index.css +26 -25
  47. package/Table/styles/index.css +11 -0
  48. package/Tabs/styles/index.css +162 -146
  49. package/Tag/styles/index.css +112 -96
  50. package/TagInput/styles/index.css +174 -179
  51. package/TagPicker/styles/index.css +174 -179
  52. package/TimePicker/styles/index.css +173 -168
  53. package/TimeRangePicker/styles/index.css +173 -168
  54. package/Toggle/styles/index.css +27 -30
  55. package/Tree/styles/index.css +157 -162
  56. package/TreePicker/styles/index.css +157 -162
  57. package/Uploader/styles/index.css +94 -65
  58. package/cjs/Badge/Badge.js +16 -11
  59. package/cjs/Breadcrumb/Breadcrumb.d.ts +2 -2
  60. package/cjs/Button/Button.js +9 -7
  61. package/cjs/ButtonGroup/ButtonGroup.js +7 -7
  62. package/cjs/Card/Card.js +6 -6
  63. package/cjs/Checkbox/Checkbox.js +6 -7
  64. package/cjs/CheckboxGroup/CheckboxGroup.js +3 -4
  65. package/cjs/Dropdown/Dropdown.js +3 -4
  66. package/cjs/Dropdown/DropdownItem.js +4 -4
  67. package/cjs/Dropdown/DropdownMenu.js +9 -10
  68. package/cjs/FormControl/FormControl.d.ts +1 -1
  69. package/cjs/FormControlLabel/FormControlLabel.d.ts +1 -1
  70. package/cjs/FormHelpText/FormHelpText.d.ts +1 -1
  71. package/cjs/IconButton/IconButton.d.ts +1 -1
  72. package/cjs/IconButton/IconButton.js +9 -9
  73. package/cjs/Image/Image.d.ts +1 -1
  74. package/cjs/InlineEdit/InlineEdit.js +3 -2
  75. package/cjs/InputGroup/InputGroup.js +12 -14
  76. package/cjs/InputGroup/InputGroupAddon.d.ts +2 -2
  77. package/cjs/InputPicker/InputAutosize.js +4 -6
  78. package/cjs/List/List.d.ts +1 -1
  79. package/cjs/List/List.js +7 -8
  80. package/cjs/List/ListItem.d.ts +2 -2
  81. package/cjs/List/ListItem.js +4 -4
  82. package/cjs/Loader/Loader.js +8 -7
  83. package/cjs/Menu/MenuSeparator.d.ts +2 -2
  84. package/cjs/Nav/Nav.d.ts +2 -2
  85. package/cjs/Nav/Nav.js +12 -13
  86. package/cjs/Nav/NavDropdownItem.js +4 -4
  87. package/cjs/Nav/NavDropdownMenu.js +10 -13
  88. package/cjs/Nav/NavItem.d.ts +2 -2
  89. package/cjs/Nav/NavItem.js +6 -8
  90. package/cjs/Navbar/Navbar.js +6 -6
  91. package/cjs/Navbar/NavbarDropdown.d.ts +1 -1
  92. package/cjs/Navbar/NavbarDropdown.js +3 -4
  93. package/cjs/Navbar/NavbarDropdownItem.js +4 -4
  94. package/cjs/Navbar/NavbarDropdownMenu.js +8 -11
  95. package/cjs/NumberInput/NumberInput.d.ts +1 -1
  96. package/cjs/Pagination/Pagination.js +3 -2
  97. package/cjs/Pagination/PaginationButton.d.ts +3 -3
  98. package/cjs/Pagination/PaginationButton.js +9 -17
  99. package/cjs/Pagination/PaginationGroup.js +2 -1
  100. package/cjs/Panel/PanelHeader.d.ts +1 -1
  101. package/cjs/Radio/Radio.js +6 -6
  102. package/cjs/RadioGroup/RadioGroup.js +4 -4
  103. package/cjs/Sidenav/ExpandedSidenavDropdown.d.ts +1 -1
  104. package/cjs/Sidenav/Sidenav.js +3 -2
  105. package/cjs/Sidenav/SidenavDropdown.js +3 -5
  106. package/cjs/Sidenav/SidenavDropdownItem.js +4 -4
  107. package/cjs/Sidenav/SidenavDropdownMenu.js +10 -13
  108. package/cjs/Sidenav/SidenavItem.d.ts +2 -2
  109. package/cjs/Sidenav/SidenavItem.js +4 -5
  110. package/cjs/Slider/Handle.d.ts +1 -1
  111. package/cjs/Stack/Stack.d.ts +1 -17
  112. package/cjs/Stack/Stack.js +3 -4
  113. package/cjs/Stack/StackItem.d.ts +4 -5
  114. package/cjs/Stack/StackItem.js +4 -10
  115. package/cjs/Steps/StepItem.js +7 -8
  116. package/cjs/Steps/Steps.d.ts +2 -1
  117. package/cjs/Steps/Steps.js +32 -34
  118. package/cjs/Tabs/Tabs.js +1 -1
  119. package/cjs/Tag/Tag.js +5 -2
  120. package/cjs/Toggle/Toggle.d.ts +1 -1
  121. package/cjs/Toggle/Toggle.js +7 -6
  122. package/cjs/Tree/types.d.ts +2 -2
  123. package/cjs/Uploader/Uploader.d.ts +2 -2
  124. package/cjs/internals/Box/Box.d.ts +1 -0
  125. package/cjs/internals/Box/index.d.ts +1 -1
  126. package/cjs/internals/Box/utils.js +5 -4
  127. package/cjs/internals/InputBase/InputBase.d.ts +1 -1
  128. package/cjs/internals/InputBase/InputBase.js +3 -2
  129. package/cjs/internals/Menu/MenuItem.js +1 -1
  130. package/cjs/internals/Overlay/Modal.d.ts +1 -1
  131. package/cjs/internals/Picker/PickerToggle.js +2 -4
  132. package/cjs/internals/SafeAnchor/SafeAnchor.d.ts +2 -2
  133. package/cjs/internals/Tree/TreeView.d.ts +2 -2
  134. package/cjs/internals/hooks/useCustom.js +24 -7
  135. package/cjs/internals/styled-system/css-alias.d.ts +7 -0
  136. package/cjs/internals/styled-system/css-alias.js +391 -0
  137. package/cjs/internals/styled-system/css-properties.d.ts +6 -0
  138. package/cjs/internals/styled-system/css-properties.js +30 -0
  139. package/cjs/internals/styled-system/index.d.ts +1 -1
  140. package/cjs/internals/styled-system/index.js +4 -4
  141. package/cjs/internals/styled-system/responsive.d.ts +0 -4
  142. package/cjs/internals/styled-system/responsive.js +12 -33
  143. package/cjs/internals/styled-system/types.d.ts +59 -5
  144. package/cjs/internals/styled-system/useStyled.js +3 -3
  145. package/cjs/internals/types/html.d.ts +6 -6
  146. package/cjs/internals/types/picker.d.ts +1 -1
  147. package/dist/rsuite-no-reset.css +641 -641
  148. package/dist/rsuite-no-reset.min.css +1 -1
  149. package/dist/rsuite.css +641 -641
  150. package/dist/rsuite.js +60 -60
  151. package/dist/rsuite.min.css +1 -1
  152. package/dist/rsuite.min.js +1 -1
  153. package/dist/rsuite.min.js.map +1 -1
  154. package/esm/Badge/Badge.js +16 -11
  155. package/esm/Breadcrumb/Breadcrumb.d.ts +2 -2
  156. package/esm/Button/Button.js +9 -7
  157. package/esm/ButtonGroup/ButtonGroup.js +7 -7
  158. package/esm/Card/Card.js +6 -6
  159. package/esm/Checkbox/Checkbox.js +6 -7
  160. package/esm/CheckboxGroup/CheckboxGroup.js +3 -4
  161. package/esm/Dropdown/Dropdown.js +3 -4
  162. package/esm/Dropdown/DropdownItem.js +4 -4
  163. package/esm/Dropdown/DropdownMenu.js +9 -10
  164. package/esm/FormControl/FormControl.d.ts +1 -1
  165. package/esm/FormControlLabel/FormControlLabel.d.ts +1 -1
  166. package/esm/FormHelpText/FormHelpText.d.ts +1 -1
  167. package/esm/IconButton/IconButton.d.ts +1 -1
  168. package/esm/IconButton/IconButton.js +9 -9
  169. package/esm/Image/Image.d.ts +1 -1
  170. package/esm/InlineEdit/InlineEdit.js +3 -2
  171. package/esm/InputGroup/InputGroup.js +12 -14
  172. package/esm/InputGroup/InputGroupAddon.d.ts +2 -2
  173. package/esm/InputPicker/InputAutosize.js +4 -6
  174. package/esm/List/List.d.ts +1 -1
  175. package/esm/List/List.js +7 -8
  176. package/esm/List/ListItem.d.ts +2 -2
  177. package/esm/List/ListItem.js +4 -4
  178. package/esm/Loader/Loader.js +8 -7
  179. package/esm/Menu/MenuSeparator.d.ts +2 -2
  180. package/esm/Nav/Nav.d.ts +2 -2
  181. package/esm/Nav/Nav.js +12 -13
  182. package/esm/Nav/NavDropdownItem.js +4 -4
  183. package/esm/Nav/NavDropdownMenu.js +10 -13
  184. package/esm/Nav/NavItem.d.ts +2 -2
  185. package/esm/Nav/NavItem.js +6 -8
  186. package/esm/Navbar/Navbar.js +7 -7
  187. package/esm/Navbar/NavbarDropdown.d.ts +1 -1
  188. package/esm/Navbar/NavbarDropdown.js +3 -4
  189. package/esm/Navbar/NavbarDropdownItem.js +4 -4
  190. package/esm/Navbar/NavbarDropdownMenu.js +8 -11
  191. package/esm/NumberInput/NumberInput.d.ts +1 -1
  192. package/esm/Pagination/Pagination.js +3 -2
  193. package/esm/Pagination/PaginationButton.d.ts +3 -3
  194. package/esm/Pagination/PaginationButton.js +9 -16
  195. package/esm/Pagination/PaginationGroup.js +2 -1
  196. package/esm/Panel/PanelHeader.d.ts +1 -1
  197. package/esm/Radio/Radio.js +6 -6
  198. package/esm/RadioGroup/RadioGroup.js +4 -4
  199. package/esm/Sidenav/ExpandedSidenavDropdown.d.ts +1 -1
  200. package/esm/Sidenav/Sidenav.js +3 -2
  201. package/esm/Sidenav/SidenavDropdown.js +3 -5
  202. package/esm/Sidenav/SidenavDropdownItem.js +4 -4
  203. package/esm/Sidenav/SidenavDropdownMenu.js +10 -13
  204. package/esm/Sidenav/SidenavItem.d.ts +2 -2
  205. package/esm/Sidenav/SidenavItem.js +4 -5
  206. package/esm/Slider/Handle.d.ts +1 -1
  207. package/esm/Stack/Stack.d.ts +1 -17
  208. package/esm/Stack/Stack.js +3 -4
  209. package/esm/Stack/StackItem.d.ts +4 -5
  210. package/esm/Stack/StackItem.js +5 -11
  211. package/esm/Steps/StepItem.js +7 -8
  212. package/esm/Steps/Steps.d.ts +2 -1
  213. package/esm/Steps/Steps.js +31 -34
  214. package/esm/Tabs/Tabs.js +1 -1
  215. package/esm/Tag/Tag.js +5 -2
  216. package/esm/Toggle/Toggle.d.ts +1 -1
  217. package/esm/Toggle/Toggle.js +7 -6
  218. package/esm/Tree/types.d.ts +2 -2
  219. package/esm/Uploader/Uploader.d.ts +2 -2
  220. package/esm/internals/Box/Box.d.ts +1 -0
  221. package/esm/internals/Box/index.d.ts +1 -1
  222. package/esm/internals/Box/utils.js +6 -5
  223. package/esm/internals/InputBase/InputBase.d.ts +1 -1
  224. package/esm/internals/InputBase/InputBase.js +3 -2
  225. package/esm/internals/Menu/MenuItem.js +1 -1
  226. package/esm/internals/Overlay/Modal.d.ts +1 -1
  227. package/esm/internals/Picker/PickerToggle.js +2 -4
  228. package/esm/internals/SafeAnchor/SafeAnchor.d.ts +2 -2
  229. package/esm/internals/Tree/TreeView.d.ts +2 -2
  230. package/esm/internals/hooks/useCustom.js +24 -7
  231. package/esm/internals/styled-system/css-alias.d.ts +7 -0
  232. package/esm/internals/styled-system/css-alias.js +387 -0
  233. package/esm/internals/styled-system/css-properties.d.ts +6 -0
  234. package/esm/internals/styled-system/css-properties.js +26 -0
  235. package/esm/internals/styled-system/index.d.ts +1 -1
  236. package/esm/internals/styled-system/index.js +1 -1
  237. package/esm/internals/styled-system/responsive.d.ts +0 -4
  238. package/esm/internals/styled-system/responsive.js +11 -31
  239. package/esm/internals/styled-system/types.d.ts +59 -5
  240. package/esm/internals/styled-system/useStyled.js +3 -3
  241. package/esm/internals/types/html.d.ts +6 -6
  242. package/esm/internals/types/picker.d.ts +1 -1
  243. package/package.json +1 -1
  244. package/cjs/internals/styled-system/css-property.d.ts +0 -6
  245. package/cjs/internals/styled-system/css-property.js +0 -289
  246. package/esm/internals/styled-system/css-property.d.ts +0 -6
  247. package/esm/internals/styled-system/css-property.js +0 -285
@@ -102,7 +102,7 @@ body{
102
102
  --rs-text-highlight-bg:#fff6c9;
103
103
  --rs-border-primary:var(--rs-gray-200);
104
104
  --rs-bg-overlay:var(--rs-gray-0);
105
- --rs-color-focus-ring:rgb(from var(--rs-primary-500) r g b / 25%);
105
+ --rs-focus-ring-color:rgb(from var(--rs-primary-500) r g b / 25%);
106
106
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
107
107
  --rs-btn-default-bg:var(--rs-gray-50);
108
108
  --rs-btn-default-text:var(--rs-gray-800);
@@ -163,7 +163,7 @@ body{
163
163
  }
164
164
  @supports not (color: rgb(from white r g b)){
165
165
  :root{
166
- --rs-color-focus-ring:rgba(52, 152, 255, 0.25);
166
+ --rs-focus-ring-color:rgba(52, 152, 255, 0.25);
167
167
  --rs-loader-ring:rgba(247, 247, 250, 0.8);
168
168
  --rs-loader-backdrop:rgba(255, 255, 255, 0.9);
169
169
  --rs-loader-ring-inverse:rgba(247, 247, 250, 0.3);
@@ -260,7 +260,6 @@ body{
260
260
  --rs-text-disabled:var(--rs-gray-400);
261
261
  --rs-border-primary:var(--rs-gray-600);
262
262
  --rs-bg-overlay:var(--rs-gray-700);
263
- --rs-color-focus-ring:0 0 0 2px rgb(from var(--rs-gray-500) r g b / 25%);
264
263
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
265
264
  --rs-btn-default-bg:var(--rs-gray-600);
266
265
  --rs-btn-default-text:var(--rs-gray-50);
@@ -320,7 +319,6 @@ body{
320
319
  @supports not (color: rgb(from white r g b)){
321
320
  [data-theme=dark],
322
321
  .rs-theme-dark{
323
- --rs-color-focus-ring:0 0 0 2px rgba(52, 195, 255, 0.25);
324
322
  --rs-loader-ring:rgba(233, 235, 240, 0.3);
325
323
  --rs-loader-backdrop:rgba(15, 19, 26, 0.83);
326
324
  --rs-loader-ring-inverse:rgba(233, 235, 240, 0.8);
@@ -417,7 +415,7 @@ body{
417
415
  --rs-text-highlight-bg:var(--rs-primary-500);
418
416
  --rs-border-primary:var(--rs-gray-100);
419
417
  --rs-bg-overlay:var(--rs-gray-800);
420
- --rs-color-focus-ring:var(--rs-gray-0);
418
+ --rs-focus-ring-color:var(--rs-gray-0);
421
419
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
422
420
  --rs-btn-default-bg:transparent;
423
421
  --rs-btn-default-text:var(--rs-primary-500);
@@ -516,7 +514,7 @@ body{
516
514
  --rs-ripple-bg:rgb(0 0 0 / 20%);
517
515
  --rs-zindex-dropdown:5;
518
516
  --rs-zindex-picker-toggle:5;
519
- --rs-zindex-picker-popup:calc(var(--rs-zindex-picker-toggle) + 2);
517
+ --rs-zindex-picker-popup:7;
520
518
  --rs-zindex-modal:1050;
521
519
  --rs-zindex-drawer:1050;
522
520
  }
@@ -581,7 +579,7 @@ body{
581
579
  position:relative;
582
580
  align-items:center;
583
581
  }
584
- .rs-checkbox-disabled label{
582
+ .rs-checkbox[data-disabled=true] label{
585
583
  cursor:var(--rs-cursor-disabled);
586
584
  }
587
585
  .rs-checkbox label{
@@ -591,14 +589,14 @@ body{
591
589
  .rs-checkbox-inner::before{
592
590
  border-color:var(--rs-checkbox-checked-bg);
593
591
  }
594
- .rs-checkbox-disabled label{
592
+ .rs-checkbox[data-disabled=true] label{
595
593
  cursor:var(--rs-cursor-disabled);
596
594
  }
597
- .rs-checkbox-disabled > .rs-checkbox-checker > label{
595
+ .rs-checkbox[data-disabled=true] > .rs-checkbox-checker > label{
598
596
  color:var(--rs-text-disabled);
599
597
  }
600
598
  .rs-checkbox [type=checkbox]:focus-visible ~ .rs-checkbox-inner::before{
601
- outline:2px solid var(--rs-color-focus-ring);
599
+ outline:2px solid var(--rs-focus-ring-color);
602
600
  outline-offset:-1px;
603
601
  }
604
602
 
@@ -629,7 +627,7 @@ body{
629
627
  [data-theme=high-contrast] .rs-checkbox-control .rs-checkbox-inner::after, .rs-theme-high-contrast .rs-checkbox-control .rs-checkbox-inner::after{
630
628
  transition:none;
631
629
  }
632
- .rs-checkbox-checked .rs-checkbox-control .rs-checkbox-inner::after, .rs-checkbox-indeterminate .rs-checkbox-control .rs-checkbox-inner::after{
630
+ .rs-checkbox[data-checked=true] .rs-checkbox-control .rs-checkbox-inner::after, .rs-checkbox[data-checked=mixed] .rs-checkbox-control .rs-checkbox-inner::after{
633
631
  border:solid var(--rs-checkbox-icon);
634
632
  width:6px;
635
633
  height:9px;
@@ -637,11 +635,11 @@ body{
637
635
  margin-inline-start:5px;
638
636
  opacity:1;
639
637
  }
640
- .rs-checkbox-checked .rs-checkbox-control .rs-checkbox-inner::after{
638
+ .rs-checkbox[data-checked=true] .rs-checkbox-control .rs-checkbox-inner::after{
641
639
  border-width:0 2px 2px 0;
642
640
  transform:rotate(45deg) scale(1);
643
641
  }
644
- .rs-checkbox-indeterminate .rs-checkbox-control .rs-checkbox-inner::after{
642
+ .rs-checkbox[data-checked=mixed] .rs-checkbox-control .rs-checkbox-inner::after{
645
643
  border-width:0 0 2px;
646
644
  transform:rotate(0deg) scale(1);
647
645
  width:10px;
@@ -675,7 +673,7 @@ body{
675
673
  [data-theme=high-contrast] .rs-checkbox-control::before, .rs-theme-high-contrast .rs-checkbox-control::before{
676
674
  transition:none;
677
675
  }
678
- .rs-checkbox-checked .rs-checkbox-control::before{
676
+ .rs-checkbox[data-checked=true] .rs-checkbox-control::before{
679
677
  transform:scale(1.5);
680
678
  opacity:0;
681
679
  visibility:visible;
@@ -692,49 +690,49 @@ body{
692
690
  label:hover .rs-checkbox-control .rs-checkbox-inner::before{
693
691
  border-color:var(--rs-checkbox-checked-bg);
694
692
  }
695
- .rs-checkbox-disabled:not(.rs-checkbox-checked):not(.rs-checkbox-indeterminate) .rs-checkbox-control .rs-checkbox-inner::before{
693
+ .rs-checkbox[data-disabled=true][data-checked=false] .rs-checkbox-control .rs-checkbox-inner::before{
696
694
  border-color:var(--rs-checkbox-disabled-bg);
697
695
  background-color:var(--rs-checkbox-disabled-bg);
698
696
  }
699
- .rs-checkbox-checked .rs-checkbox-control .rs-checkbox-inner::before, .rs-checkbox-indeterminate .rs-checkbox-control .rs-checkbox-inner::before{
697
+ .rs-checkbox[data-checked=true] .rs-checkbox-control .rs-checkbox-inner::before, .rs-checkbox[data-checked=mixed] .rs-checkbox-control .rs-checkbox-inner::before{
700
698
  border-color:var(--rs-checkbox-checked-bg);
701
699
  background-color:var(--rs-checkbox-checked-bg);
702
700
  }
703
- .rs-checkbox-disabled.rs-checkbox-checked .rs-checkbox-control .rs-checkbox-inner::before, .rs-checkbox-disabled.rs-checkbox-indeterminate .rs-checkbox-control .rs-checkbox-inner::before{
701
+ .rs-checkbox[data-disabled=true][data-checked=true] .rs-checkbox-control .rs-checkbox-inner::before, .rs-checkbox[data-disabled=true][data-checked=mixed] .rs-checkbox-control .rs-checkbox-inner::before{
704
702
  opacity:0.5;
705
703
  }
706
704
 
707
- .rs-checkbox-red{
705
+ .rs-checkbox[data-color=red]{
708
706
  --rs-checkbox-checked-bg:var(--rs-red-500);
709
707
  --rs-checkbox-border:var(--rs-red-500);
710
708
  }
711
709
 
712
- .rs-checkbox-orange{
710
+ .rs-checkbox[data-color=orange]{
713
711
  --rs-checkbox-checked-bg:var(--rs-orange-500);
714
712
  --rs-checkbox-border:var(--rs-orange-500);
715
713
  }
716
714
 
717
- .rs-checkbox-yellow{
715
+ .rs-checkbox[data-color=yellow]{
718
716
  --rs-checkbox-checked-bg:var(--rs-yellow-500);
719
717
  --rs-checkbox-border:var(--rs-yellow-500);
720
718
  }
721
719
 
722
- .rs-checkbox-green{
720
+ .rs-checkbox[data-color=green]{
723
721
  --rs-checkbox-checked-bg:var(--rs-green-500);
724
722
  --rs-checkbox-border:var(--rs-green-500);
725
723
  }
726
724
 
727
- .rs-checkbox-cyan{
725
+ .rs-checkbox[data-color=cyan]{
728
726
  --rs-checkbox-checked-bg:var(--rs-cyan-500);
729
727
  --rs-checkbox-border:var(--rs-cyan-500);
730
728
  }
731
729
 
732
- .rs-checkbox-blue{
730
+ .rs-checkbox[data-color=blue]{
733
731
  --rs-checkbox-checked-bg:var(--rs-blue-500);
734
732
  --rs-checkbox-border:var(--rs-blue-500);
735
733
  }
736
734
 
737
- .rs-checkbox-violet{
735
+ .rs-checkbox[data-color=violet]{
738
736
  --rs-checkbox-checked-bg:var(--rs-violet-500);
739
737
  --rs-checkbox-border:var(--rs-violet-500);
740
738
  }
@@ -745,9 +743,6 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
745
743
  --rs-stack-direction:row;
746
744
  --rs-stack-align:center;
747
745
  --rs-stack-justify:flex-start;
748
- --rs-stack-item-grow:0;
749
- --rs-stack-item-shrink:1;
750
- --rs-stack-item-basis:auto;
751
746
  }
752
747
 
753
748
  .rs-stack{
@@ -774,7 +769,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
774
769
  --rs-stack-align:center;
775
770
  flex-direction:row-reverse;
776
771
  }
777
- .rs-stack-wrap{
772
+ .rs-stack[data-wrap=true]{
778
773
  flex-wrap:wrap;
779
774
  }
780
775
  .rs-stack-xs-column{
@@ -860,12 +855,6 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
860
855
  }
861
856
  }
862
857
 
863
- .rs-stack-item{
864
- align-self:var(--rs-stack-item-align-self);
865
- order:var(--rs-stack-item-order);
866
- flex:var(--rs-stack-item-flex, var(--rs-stack-item-grow) var(--rs-stack-item-shrink) var(--rs-stack-item-basis));
867
- }
868
-
869
858
  :root{
870
859
  --rs-loader-duration-fast:0.4s;
871
860
  --rs-loader-duration-normal:0.6s;
@@ -882,7 +871,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
882
871
  --rs-loader-spin-ring-width:3px;
883
872
  }
884
873
 
885
- .rs-loader{
874
+ .rs-loader-box{
886
875
  display:inline-flex;
887
876
  align-items:center;
888
877
  justify-content:center;
@@ -924,34 +913,34 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
924
913
  height:100%;
925
914
  background:var(--rs-loader-backdrop);
926
915
  }
927
- .rs-loader-vertical .rs-loader{
916
+ .rs-loader[data-direction=vertical] .rs-loader-box{
928
917
  flex-direction:column;
929
918
  }
930
- .rs-loader-inverse .rs-loader-content{
919
+ .rs-loader[data-inverse=true] .rs-loader-content{
931
920
  color:var(--rs-text-inverse);
932
921
  }
933
- .rs-loader-inverse .rs-loader-backdrop{
922
+ .rs-loader[data-inverse=true] .rs-loader-backdrop{
934
923
  background:var(--rs-loader-backdrop-inverse);
935
924
  }
936
- .rs-loader-inverse .rs-loader-spin::before{
925
+ .rs-loader[data-inverse=true] .rs-loader-spin::before{
937
926
  border-color:var(--rs-loader-ring-inverse);
938
927
  }
939
- .rs-loader-inverse .rs-loader-spin::after{
928
+ .rs-loader[data-inverse=true] .rs-loader-spin::after{
940
929
  border-top-color:var(--rs-loader-rotor-inverse);
941
930
  }
942
- .rs-loader-speed-fast .rs-loader-spin::after{
931
+ .rs-loader[data-speed=fast] .rs-loader-spin::after{
943
932
  animation-duration:var(--rs-loader-duration-fast);
944
933
  }
945
- .rs-loader-speed-normal .rs-loader-spin::after{
934
+ .rs-loader[data-speed=normal] .rs-loader-spin::after{
946
935
  animation-duration:var(--rs-loader-duration-normal);
947
936
  }
948
- .rs-loader-speed-slow .rs-loader-spin::after{
937
+ .rs-loader[data-speed=slow] .rs-loader-spin::after{
949
938
  animation-duration:var(--rs-loader-duration-slow);
950
939
  }
951
- .rs-loader-speed-paused .rs-loader-spin::after{
940
+ .rs-loader[data-speed=paused] .rs-loader-spin::after{
952
941
  animation-play-state:var(--rs-loader-duration-paused);
953
942
  }
954
- .rs-loader-center{
943
+ .rs-loader[data-center=true]{
955
944
  position:absolute;
956
945
  top:0;
957
946
  bottom:0;
@@ -964,26 +953,26 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
964
953
  align-items:center;
965
954
  justify-content:center;
966
955
  }
967
- .rs-loader-center .rs-loader-content{
956
+ .rs-loader[data-center=true] .rs-loader-content{
968
957
  z-index:1;
969
958
  }
970
959
 
971
- .rs-loader-xs{
960
+ .rs-loader[data-size=xs]{
972
961
  --rs-loader-size:var(--rs-loader-size-xs);
973
962
  --rs-loader-font-size:var(--rs-loader-font-size-xs);
974
963
  }
975
964
 
976
- .rs-loader-sm{
965
+ .rs-loader[data-size=sm]{
977
966
  --rs-loader-size:var(--rs-loader-size-sm);
978
967
  --rs-loader-font-size:var(--rs-loader-font-size-sm);
979
968
  }
980
969
 
981
- .rs-loader-md{
970
+ .rs-loader[data-size=md]{
982
971
  --rs-loader-size:var(--rs-loader-size-md);
983
972
  --rs-loader-font-size:var(--rs-loader-font-size-md);
984
973
  }
985
974
 
986
- .rs-loader-lg{
975
+ .rs-loader[data-size=lg]{
987
976
  --rs-loader-size:var(--rs-loader-size-lg);
988
977
  --rs-loader-font-size:var(--rs-loader-font-size-lg);
989
978
  }
@@ -1045,32 +1034,32 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1045
1034
  border-color:var(--rs-input-focus-border);
1046
1035
  }
1047
1036
  .rs-input:focus-visible{
1048
- outline:2px solid var(--rs-color-focus-ring);
1037
+ outline:2px solid var(--rs-focus-ring-color);
1049
1038
  outline-offset:-1px;
1050
1039
  }
1051
1040
  .rs-input:disabled{
1052
1041
  background-color:var(--rs-input-disabled-bg);
1053
1042
  color:var(--rs-text-disabled);
1054
1043
  }
1055
- .rs-input.rs-input-xs{
1044
+ .rs-input[data-size=xs]{
1056
1045
  --rs-input-font-size:var(--rs-input-font-size-xs);
1057
1046
  --rs-input-line-height:var(--rs-input-line-height-xs);
1058
1047
  --rs-input-padding-block:var(--rs-input-padding-block-xs);
1059
1048
  --rs-input-padding-inline:var(--rs-input-padding-inline-xs);
1060
1049
  }
1061
- .rs-input.rs-input-sm{
1050
+ .rs-input[data-size=sm]{
1062
1051
  --rs-input-font-size:var(--rs-input-font-size-sm);
1063
1052
  --rs-input-line-height:var(--rs-input-line-height-sm);
1064
1053
  --rs-input-padding-block:var(--rs-input-padding-block-sm);
1065
1054
  --rs-input-padding-inline:var(--rs-input-padding-inline-sm);
1066
1055
  }
1067
- .rs-input.rs-input-md{
1056
+ .rs-input[data-size=md]{
1068
1057
  --rs-input-font-size:var(--rs-input-font-size-md);
1069
1058
  --rs-input-line-height:var(--rs-input-line-height-md);
1070
1059
  --rs-input-padding-block:var(--rs-input-padding-block-md);
1071
1060
  --rs-input-padding-inline:var(--rs-input-padding-inline-md);
1072
1061
  }
1073
- .rs-input.rs-input-lg{
1062
+ .rs-input[data-size=lg]{
1074
1063
  --rs-input-font-size:var(--rs-input-font-size-lg);
1075
1064
  --rs-input-line-height:var(--rs-input-line-height-lg);
1076
1065
  --rs-input-padding-block:var(--rs-input-padding-block-lg);
@@ -1110,25 +1099,25 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1110
1099
  border:1px solid var(--rs-border-primary);
1111
1100
  overflow:hidden;
1112
1101
  }
1113
- .rs-input-group.rs-input-group-xs{
1102
+ .rs-input-group[data-size=xs]{
1114
1103
  --rs-input-group-input-height:var(--rs-input-group-input-height-xs);
1115
1104
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-xs);
1116
1105
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-xs);
1117
1106
  --rs-input-group-font-size:var(--rs-input-group-font-size-xs);
1118
1107
  }
1119
- .rs-input-group.rs-input-group-sm{
1108
+ .rs-input-group[data-size=sm]{
1120
1109
  --rs-input-group-input-height:var(--rs-input-group-input-height-sm);
1121
1110
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-sm);
1122
1111
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-sm);
1123
1112
  --rs-input-group-font-size:var(--rs-input-group-font-size-sm);
1124
1113
  }
1125
- .rs-input-group.rs-input-group-md{
1114
+ .rs-input-group[data-size=md]{
1126
1115
  --rs-input-group-input-height:var(--rs-input-group-input-height-md);
1127
1116
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-md);
1128
1117
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-md);
1129
1118
  --rs-input-group-font-size:var(--rs-input-group-font-size-md);
1130
1119
  }
1131
- .rs-input-group.rs-input-group-lg{
1120
+ .rs-input-group[data-size=lg]{
1132
1121
  --rs-input-group-input-height:var(--rs-input-group-input-height-lg);
1133
1122
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-lg);
1134
1123
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-lg);
@@ -1137,11 +1126,11 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1137
1126
  [data-theme=high-contrast] .rs-input-group, .rs-theme-high-contrast .rs-input-group{
1138
1127
  transition:none;
1139
1128
  }
1140
- .rs-input-group:not(.rs-input-group-disabled).rs-input-group-focus, .rs-input-group:focus-within{
1129
+ .rs-input-group:not([data-disabled=true]).rs-input-group-focus, .rs-input-group:focus-within{
1141
1130
  border-color:var(--rs-input-focus-border);
1142
1131
  }
1143
- .rs-input-group:not(.rs-input-group-disabled).rs-input-group-focus, .rs-input-group:focus-within{
1144
- outline:2px solid var(--rs-color-focus-ring);
1132
+ .rs-input-group:not([data-disabled=true]).rs-input-group-focus, .rs-input-group:focus-within{
1133
+ outline:2px solid var(--rs-focus-ring-color);
1145
1134
  outline-offset:-1px;
1146
1135
  }
1147
1136
  .rs-input-group .rs-input-group{
@@ -1176,23 +1165,23 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1176
1165
  .rs-input-group > .rs-input-group-addon > .rs-icon{
1177
1166
  font-size:inherit;
1178
1167
  }
1179
- .rs-input-group.rs-input-group-inside{
1168
+ .rs-input-group[data-inside=true]{
1180
1169
  width:var(--rs-input-group-width);
1181
1170
  align-items:center;
1182
1171
  background-color:var(--rs-input-bg);
1183
1172
  }
1184
- .rs-input-group.rs-input-group-inside .rs-input{
1173
+ .rs-input-group[data-inside=true] .rs-input{
1185
1174
  display:block;
1186
1175
  width:100%;
1187
1176
  border:none;
1188
1177
  outline:none;
1189
1178
  }
1190
- .rs-input-group.rs-input-group-inside .rs-input-group-btn,
1191
- .rs-input-group.rs-input-group-inside .rs-input-group-addon{
1179
+ .rs-input-group[data-inside=true] .rs-input-group-btn,
1180
+ .rs-input-group[data-inside=true] .rs-input-group-addon{
1192
1181
  flex:0 0 auto;
1193
1182
  width:auto;
1194
1183
  }
1195
- .rs-input-group.rs-input-group-inside .rs-input-group-btn{
1184
+ .rs-input-group[data-inside=true] .rs-input-group-btn{
1196
1185
  border-radius:var(--rs-input-group-border-radius);
1197
1186
  height:calc(var(--rs-input-group-input-height) - var(--rs-input-group-inside-btn-spacing) * 2);
1198
1187
  margin-inline:var(--rs-input-group-inside-btn-spacing);
@@ -1201,42 +1190,42 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1201
1190
  background-color:transparent;
1202
1191
  color:inherit;
1203
1192
  }
1204
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:hover{
1193
+ .rs-input-group[data-inside=true] .rs-input-group-btn:hover{
1205
1194
  color:var(--rs-btn-subtle-hover-text);
1206
1195
  background-color:var(--rs-btn-subtle-hover-bg);
1207
1196
  }
1208
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:active, .rs-input-group.rs-input-group-inside .rs-input-group-btn.rs-btn-active{
1197
+ .rs-input-group[data-inside=true] .rs-input-group-btn:active, .rs-input-group[data-inside=true] .rs-input-group-btn[data-active=true]{
1209
1198
  color:var(--rs-btn-subtle-active-text);
1210
1199
  background-color:var(--rs-btn-subtle-active-bg);
1211
1200
  }
1212
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:disabled, .rs-input-group.rs-input-group-inside .rs-input-group-btn.rs-btn-disabled{
1201
+ .rs-input-group[data-inside=true] .rs-input-group-btn:disabled, .rs-input-group[data-inside=true] .rs-input-group-btn[data-disabled=true]{
1213
1202
  color:var(--rs-btn-subtle-disabled-text);
1214
1203
  background:none;
1215
1204
  }
1216
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:focus{
1205
+ .rs-input-group[data-inside=true] .rs-input-group-btn:focus{
1217
1206
  outline:none;
1218
1207
  }
1219
- .rs-input-group.rs-input-group-inside .rs-input-group-addon{
1208
+ .rs-input-group[data-inside=true] .rs-input-group-addon{
1220
1209
  background:none;
1221
1210
  border:none;
1222
1211
  }
1223
- .rs-input-group.rs-input-group-inside .rs-input:not(:first-child),
1224
- .rs-input-group.rs-input-group-inside .rs-auto-complete:not(:first-child) .rs-input{
1212
+ .rs-input-group[data-inside=true] .rs-input:not(:first-child),
1213
+ .rs-input-group[data-inside=true] .rs-auto-complete:not(:first-child) .rs-input{
1225
1214
  padding-inline-start:0;
1226
1215
  }
1227
- .rs-input-group.rs-input-group-inside .rs-input:not(:last-child),
1228
- .rs-input-group.rs-input-group-inside .rs-auto-complete:not(:last-child) .rs-input{
1216
+ .rs-input-group[data-inside=true] .rs-input:not(:last-child),
1217
+ .rs-input-group[data-inside=true] .rs-auto-complete:not(:last-child) .rs-input{
1229
1218
  padding-inline-end:0;
1230
1219
  }
1231
1220
 
1232
- .rs-input-group.rs-input-group-disabled{
1221
+ .rs-input-group[data-disabled=true]{
1233
1222
  background-color:var(--rs-input-disabled-bg);
1234
1223
  color:var(--rs-text-disabled);
1235
1224
  cursor:not-allowed;
1236
1225
  }
1237
- .rs-input-group.rs-input-group-disabled .rs-input,
1238
- .rs-input-group.rs-input-group-disabled .rs-input-group-btn,
1239
- .rs-input-group.rs-input-group-disabled .rs-input-group-addon{
1226
+ .rs-input-group[data-disabled=true] .rs-input,
1227
+ .rs-input-group[data-disabled=true] .rs-input-group-btn,
1228
+ .rs-input-group[data-disabled=true] .rs-input-group-addon{
1240
1229
  color:inherit;
1241
1230
  }
1242
1231
 
@@ -1256,16 +1245,16 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1256
1245
  padding-inline:var(--rs-spacing);
1257
1246
  min-width:var(--rs-input-group-input-height);
1258
1247
  }
1259
- .rs-input-group-addon.rs-input-sm{
1248
+ .rs-input-group-addon[data-size=sm]{
1260
1249
  padding-block:var(--rs-spacing-block-sm);
1261
1250
  padding-inline:var(--rs-spacing-inline-sm);
1262
1251
  font-size:var(--rs-font-size-sm);
1263
1252
  }
1264
- .rs-input-group-addon.rs-input-xs{
1253
+ .rs-input-group-addon[data-size=xs]{
1265
1254
  padding:var(--rs-spacing-inline-xs);
1266
1255
  font-size:var(--rs-font-size-xs);
1267
1256
  }
1268
- .rs-input-group-addon.rs-input-lg{
1257
+ .rs-input-group-addon[data-size=lg]{
1269
1258
  padding-block:var(--rs-spacing-block-lg);
1270
1259
  padding-inline:var(--rs-spacing-inline-lg);
1271
1260
  font-size:var(--rs-font-size-md);
@@ -1386,7 +1375,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1386
1375
  border-color:var(--rs-btn-default-border-color);
1387
1376
  }
1388
1377
  .rs-btn:focus-visible{
1389
- outline:2px solid var(--rs-color-focus-ring);
1378
+ outline:2px solid var(--rs-focus-ring-color);
1390
1379
  outline-offset:-1px;
1391
1380
  }
1392
1381
  .rs-btn:hover{
@@ -1394,16 +1383,16 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1394
1383
  background-color:var(--rs-btn-default-hover-bg);
1395
1384
  text-decoration:none;
1396
1385
  }
1397
- .rs-btn:active, .rs-btn.rs-btn-active{
1386
+ .rs-btn:active, .rs-btn.rs-btn[data-active=true]{
1398
1387
  color:var(--rs-btn-default-active-text);
1399
1388
  background-color:var(--rs-btn-default-active-bg);
1400
1389
  }
1401
- .rs-btn:disabled, .rs-btn.rs-btn-disabled{
1390
+ .rs-btn:disabled, .rs-btn.rs-btn[data-disabled=true]{
1402
1391
  cursor:var(--rs-cursor-disabled);
1403
1392
  color:var(--rs-btn-default-disabled-text);
1404
1393
  background-color:var(--rs-btn-default-disabled-bg);
1405
1394
  }
1406
- [data-theme=high-contrast] .rs-btn:disabled, .rs-theme-high-contrast .rs-btn:disabled, [data-theme=high-contrast] .rs-btn.rs-btn-disabled, .rs-theme-high-contrast .rs-btn.rs-btn-disabled{
1395
+ [data-theme=high-contrast] .rs-btn:disabled, .rs-theme-high-contrast .rs-btn:disabled, [data-theme=high-contrast] .rs-btn.rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn.rs-btn[data-disabled=true]{
1407
1396
  border-color:var(--rs-btn-default-disabled-border-color);
1408
1397
  }
1409
1398
  .rs-btn{
@@ -1416,7 +1405,15 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1416
1405
  mask-image:radial-gradient(white, black);
1417
1406
  }
1418
1407
  }
1419
- .rs-btn.rs-btn-lg{
1408
+ .rs-btn{
1409
+ --rs-btn-size:var(--rs-btn-size-md);
1410
+ --rs-btn-font-size:var(--rs-btn-font-size-md);
1411
+ --rs-btn-line-height:var(--rs-btn-line-height-md);
1412
+ --rs-btn-padding-inline:var(--rs-btn-padding-inline-md);
1413
+ --rs-btn-padding-block:var(--rs-btn-padding-block-md);
1414
+ --rs-btn-icon-size:var(--rs-btn-icon-size-md);
1415
+ }
1416
+ .rs-btn[data-size=lg]{
1420
1417
  --rs-btn-size:var(--rs-btn-size-lg);
1421
1418
  --rs-btn-font-size:var(--rs-btn-font-size-lg);
1422
1419
  --rs-btn-line-height:var(--rs-btn-line-height-lg);
@@ -1424,7 +1421,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1424
1421
  --rs-btn-padding-block:var(--rs-btn-padding-block-lg);
1425
1422
  --rs-btn-icon-size:var(--rs-btn-icon-size-lg);
1426
1423
  }
1427
- .rs-btn.rs-btn-md{
1424
+ .rs-btn[data-size=md]{
1428
1425
  --rs-btn-size:var(--rs-btn-size-md);
1429
1426
  --rs-btn-font-size:var(--rs-btn-font-size-md);
1430
1427
  --rs-btn-line-height:var(--rs-btn-line-height-md);
@@ -1432,7 +1429,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1432
1429
  --rs-btn-padding-block:var(--rs-btn-padding-block-md);
1433
1430
  --rs-btn-icon-size:var(--rs-btn-icon-size-md);
1434
1431
  }
1435
- .rs-btn.rs-btn-sm{
1432
+ .rs-btn[data-size=sm]{
1436
1433
  --rs-btn-size:var(--rs-btn-size-sm);
1437
1434
  --rs-btn-font-size:var(--rs-btn-font-size-sm);
1438
1435
  --rs-btn-line-height:var(--rs-btn-line-height-sm);
@@ -1440,7 +1437,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1440
1437
  --rs-btn-padding-block:var(--rs-btn-padding-block-sm);
1441
1438
  --rs-btn-icon-size:var(--rs-btn-icon-size-sm);
1442
1439
  }
1443
- .rs-btn.rs-btn-xs{
1440
+ .rs-btn[data-size=xs]{
1444
1441
  --rs-btn-size:var(--rs-btn-size-xs);
1445
1442
  --rs-btn-font-size:var(--rs-btn-font-size-xs);
1446
1443
  --rs-btn-line-height:var(--rs-btn-line-height-xs);
@@ -1459,101 +1456,111 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1459
1456
  margin-inline-start:var(--rs-btn-icon-gap);
1460
1457
  }
1461
1458
 
1462
- .rs-btn-primary{
1459
+ .rs-btn[data-appearance=primary]{
1463
1460
  color:var(--rs-btn-primary-text);
1464
1461
  background-color:var(--rs-btn-primary-bg);
1465
1462
  border-color:var(--rs-btn-primary-border-color);
1466
1463
  }
1467
- .rs-btn-primary:hover{
1464
+ .rs-btn[data-appearance=primary]:hover{
1468
1465
  color:var(--rs-btn-primary-text);
1469
1466
  background-color:var(--rs-btn-primary-hover-bg);
1470
1467
  }
1471
- .rs-btn-primary:active, .rs-btn-primary.rs-btn-active{
1468
+ .rs-btn[data-appearance=primary]:active, .rs-btn[data-appearance=primary].rs-btn[data-active=true]{
1472
1469
  color:var(--rs-btn-primary-text);
1473
1470
  background-color:var(--rs-btn-primary-active-bg);
1474
1471
  }
1475
- .rs-btn-primary:disabled, .rs-btn-primary.rs-btn-disabled{
1472
+ .rs-btn[data-appearance=primary]:disabled, .rs-btn[data-appearance=primary].rs-btn[data-disabled=true]{
1476
1473
  color:var(--rs-btn-primary-text);
1477
1474
  background-color:var(--rs-btn-primary-bg);
1478
1475
  opacity:0.3;
1479
1476
  }
1480
- [data-theme=high-contrast] .rs-btn-primary:disabled, .rs-theme-high-contrast .rs-btn-primary:disabled, [data-theme=high-contrast] .rs-btn-primary.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-primary.rs-btn-disabled{
1477
+ [data-theme=high-contrast] .rs-btn[data-appearance=primary]:disabled, .rs-theme-high-contrast .rs-btn[data-appearance=primary]:disabled, [data-theme=high-contrast] .rs-btn[data-appearance=primary].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn[data-appearance=primary].rs-btn[data-disabled=true]{
1481
1478
  border-color:var(--rs-btn-default-disabled-border-color);
1482
1479
  }
1483
1480
 
1481
+ .rs-btn[data-appearance=subtle],
1484
1482
  .rs-btn-subtle{
1485
1483
  color:var(--rs-btn-subtle-text);
1486
1484
  background-color:transparent;
1487
1485
  }
1486
+ .rs-btn[data-appearance=subtle]:hover,
1488
1487
  .rs-btn-subtle:hover{
1489
1488
  color:var(--rs-btn-subtle-hover-text);
1490
1489
  background-color:var(--rs-btn-subtle-hover-bg);
1491
1490
  }
1492
- .rs-btn-subtle:active, .rs-btn-subtle.rs-btn-active{
1491
+ .rs-btn[data-appearance=subtle]:active, .rs-btn[data-appearance=subtle].rs-btn[data-active=true],
1492
+ .rs-btn-subtle:active,
1493
+ .rs-btn-subtle.rs-btn[data-active=true]{
1493
1494
  color:var(--rs-btn-subtle-active-text);
1494
1495
  background-color:var(--rs-btn-subtle-active-bg);
1495
1496
  }
1496
- .rs-btn-subtle:disabled, .rs-btn-subtle.rs-btn-disabled{
1497
+ .rs-btn[data-appearance=subtle]:disabled, .rs-btn[data-appearance=subtle].rs-btn[data-disabled=true],
1498
+ .rs-btn-subtle:disabled,
1499
+ .rs-btn-subtle.rs-btn[data-disabled=true]{
1497
1500
  color:var(--rs-btn-subtle-disabled-text);
1498
1501
  background:none;
1499
1502
  }
1500
- [data-theme=high-contrast] .rs-btn-subtle:disabled, .rs-theme-high-contrast .rs-btn-subtle:disabled, [data-theme=high-contrast] .rs-btn-subtle.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-subtle.rs-btn-disabled{
1503
+ [data-theme=high-contrast] .rs-btn[data-appearance=subtle]:disabled, .rs-theme-high-contrast .rs-btn[data-appearance=subtle]:disabled, [data-theme=high-contrast] .rs-btn[data-appearance=subtle].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn[data-appearance=subtle].rs-btn[data-disabled=true],
1504
+ [data-theme=high-contrast] .rs-btn-subtle:disabled,
1505
+ .rs-theme-high-contrast .rs-btn-subtle:disabled,
1506
+ [data-theme=high-contrast] .rs-btn-subtle.rs-btn[data-disabled=true],
1507
+ .rs-theme-high-contrast .rs-btn-subtle.rs-btn[data-disabled=true]{
1501
1508
  border-color:var(--rs-btn-default-disabled-border-color);
1502
1509
  }
1503
1510
 
1504
- .rs-btn-link{
1511
+ .rs-btn[data-appearance=link]{
1505
1512
  color:var(--rs-btn-link-text);
1506
1513
  background-color:transparent;
1507
1514
  }
1508
- .rs-btn-link:hover{
1515
+ .rs-btn[data-appearance=link]:hover{
1509
1516
  color:var(--rs-btn-link-hover-text);
1510
1517
  background-color:transparent;
1511
1518
  -webkit-text-decoration:var(--rs-link-hover-decoration);
1512
1519
  text-decoration:var(--rs-link-hover-decoration);
1513
1520
  }
1514
- .rs-btn-link:active, .rs-btn-link.rs-btn-active{
1521
+ .rs-btn[data-appearance=link]:active, .rs-btn[data-appearance=link].rs-btn[data-active=true]{
1515
1522
  color:var(--rs-btn-link-active-text);
1516
1523
  background-color:transparent;
1517
1524
  }
1518
- .rs-btn-link:disabled, .rs-btn-link.rs-btn-disabled{
1525
+ .rs-btn[data-appearance=link]:disabled, .rs-btn[data-appearance=link].rs-btn[data-disabled=true]{
1519
1526
  color:var(--rs-btn-link-hover-text);
1520
1527
  background-color:transparent;
1521
1528
  text-decoration:none;
1522
1529
  opacity:0.3;
1523
1530
  }
1524
- [data-theme=high-contrast] .rs-btn-link:disabled, .rs-theme-high-contrast .rs-btn-link:disabled, [data-theme=high-contrast] .rs-btn-link.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-link.rs-btn-disabled{
1531
+ [data-theme=high-contrast] .rs-btn[data-appearance=link]:disabled, .rs-theme-high-contrast .rs-btn[data-appearance=link]:disabled, [data-theme=high-contrast] .rs-btn[data-appearance=link].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn[data-appearance=link].rs-btn[data-disabled=true]{
1525
1532
  border-color:var(--rs-btn-default-disabled-border-color);
1526
1533
  }
1527
1534
 
1528
- .rs-btn-ghost{
1535
+ .rs-btn[data-appearance=ghost]{
1529
1536
  color:var(--rs-btn-ghost-text);
1530
1537
  background-color:transparent;
1531
1538
  border:var(--rs-btn-ghost-border-width) solid var(--rs-btn-ghost-border);
1532
1539
  padding-inline:calc(var(--rs-btn-padding-inline) - var(--rs-btn-ghost-border-width));
1533
1540
  }
1534
- .rs-btn-ghost:hover{
1541
+ .rs-btn[data-appearance=ghost]:hover{
1535
1542
  color:var(--rs-btn-ghost-hover-text);
1536
1543
  background-color:transparent;
1537
1544
  border-color:var(--rs-btn-ghost-hover-border);
1538
1545
  box-shadow:0 0 0 1px var(--rs-btn-ghost-hover-border);
1539
1546
  }
1540
- .rs-btn-ghost:active, .rs-btn-ghost.rs-btn-active{
1547
+ .rs-btn[data-appearance=ghost]:active, .rs-btn[data-appearance=ghost].rs-btn[data-active=true]{
1541
1548
  color:var(--rs-btn-ghost-active-text);
1542
1549
  background-color:transparent;
1543
1550
  border-color:var(--rs-btn-ghost-active-border);
1544
1551
  }
1545
- .rs-btn-ghost:disabled, .rs-btn-ghost.rs-btn-disabled{
1552
+ .rs-btn[data-appearance=ghost]:disabled, .rs-btn[data-appearance=ghost].rs-btn[data-disabled=true]{
1546
1553
  color:var(--rs-btn-ghost-text);
1547
1554
  background-color:transparent;
1548
1555
  opacity:0.3;
1549
1556
  border-color:var(--rs-btn-ghost-border);
1550
1557
  box-shadow:var(--rs-shadow-none);
1551
1558
  }
1552
- [data-theme=high-contrast] .rs-btn-ghost:disabled, .rs-theme-high-contrast .rs-btn-ghost:disabled, [data-theme=high-contrast] .rs-btn-ghost.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-ghost.rs-btn-disabled{
1559
+ [data-theme=high-contrast] .rs-btn[data-appearance=ghost]:disabled, .rs-theme-high-contrast .rs-btn[data-appearance=ghost]:disabled, [data-theme=high-contrast] .rs-btn[data-appearance=ghost].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn[data-appearance=ghost].rs-btn[data-disabled=true]{
1553
1560
  border-color:var(--rs-btn-default-disabled-border-color);
1554
1561
  }
1555
1562
 
1556
- .rs-btn-red{
1563
+ .rs-btn[data-color=red]{
1557
1564
  --rs-btn-primary-bg:var(--rs-red-500);
1558
1565
  --rs-btn-primary-hover-bg:var(--rs-red-700);
1559
1566
  --rs-btn-primary-active-bg:var(--rs-red-800);
@@ -1575,7 +1582,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1575
1582
  --rs-iconbtn-primary-activated-addon:var(--rs-red-800);
1576
1583
  --rs-iconbtn-primary-pressed-addon:var(--rs-red-900);
1577
1584
  }
1578
- [data-theme=dark] .rs-btn-red, .rs-theme-dark .rs-btn-red{
1585
+ [data-theme=dark] .rs-btn[data-color=red], .rs-theme-dark .rs-btn[data-color=red]{
1579
1586
  --rs-btn-primary-bg:var(--rs-red-700);
1580
1587
  --rs-btn-primary-hover-bg:var(--rs-red-500);
1581
1588
  --rs-btn-primary-active-bg:var(--rs-red-400);
@@ -1597,7 +1604,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1597
1604
  --rs-iconbtn-primary-activated-addon:var(--rs-red-400);
1598
1605
  --rs-iconbtn-primary-pressed-addon:var(--rs-red-300);
1599
1606
  }
1600
- [data-theme=high-contrast] .rs-btn-red, .rs-theme-high-contrast .rs-btn-red{
1607
+ [data-theme=high-contrast] .rs-btn[data-color=red], .rs-theme-high-contrast .rs-btn[data-color=red]{
1601
1608
  --rs-btn-primary-bg:var(--rs-red-700);
1602
1609
  --rs-btn-primary-hover-bg:var(--rs-red-600);
1603
1610
  --rs-btn-primary-active-bg:var(--rs-red-400);
@@ -1616,7 +1623,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1616
1623
  --rs-btn-link-active-text:var(--rs-red-200);
1617
1624
  }
1618
1625
 
1619
- .rs-btn-orange{
1626
+ .rs-btn[data-color=orange]{
1620
1627
  --rs-btn-primary-bg:var(--rs-orange-500);
1621
1628
  --rs-btn-primary-hover-bg:var(--rs-orange-700);
1622
1629
  --rs-btn-primary-active-bg:var(--rs-orange-800);
@@ -1638,7 +1645,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1638
1645
  --rs-iconbtn-primary-activated-addon:var(--rs-orange-800);
1639
1646
  --rs-iconbtn-primary-pressed-addon:var(--rs-orange-900);
1640
1647
  }
1641
- [data-theme=dark] .rs-btn-orange, .rs-theme-dark .rs-btn-orange{
1648
+ [data-theme=dark] .rs-btn[data-color=orange], .rs-theme-dark .rs-btn[data-color=orange]{
1642
1649
  --rs-btn-primary-bg:var(--rs-orange-700);
1643
1650
  --rs-btn-primary-hover-bg:var(--rs-orange-500);
1644
1651
  --rs-btn-primary-active-bg:var(--rs-orange-400);
@@ -1660,7 +1667,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1660
1667
  --rs-iconbtn-primary-activated-addon:var(--rs-orange-400);
1661
1668
  --rs-iconbtn-primary-pressed-addon:var(--rs-orange-300);
1662
1669
  }
1663
- [data-theme=high-contrast] .rs-btn-orange, .rs-theme-high-contrast .rs-btn-orange{
1670
+ [data-theme=high-contrast] .rs-btn[data-color=orange], .rs-theme-high-contrast .rs-btn[data-color=orange]{
1664
1671
  --rs-btn-primary-bg:var(--rs-orange-700);
1665
1672
  --rs-btn-primary-hover-bg:var(--rs-orange-600);
1666
1673
  --rs-btn-primary-active-bg:var(--rs-orange-400);
@@ -1679,7 +1686,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1679
1686
  --rs-btn-link-active-text:var(--rs-orange-200);
1680
1687
  }
1681
1688
 
1682
- .rs-btn-yellow{
1689
+ .rs-btn[data-color=yellow]{
1683
1690
  --rs-btn-primary-bg:var(--rs-yellow-500);
1684
1691
  --rs-btn-primary-hover-bg:var(--rs-yellow-700);
1685
1692
  --rs-btn-primary-active-bg:var(--rs-yellow-800);
@@ -1701,7 +1708,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1701
1708
  --rs-iconbtn-primary-activated-addon:var(--rs-yellow-800);
1702
1709
  --rs-iconbtn-primary-pressed-addon:var(--rs-yellow-900);
1703
1710
  }
1704
- [data-theme=dark] .rs-btn-yellow, .rs-theme-dark .rs-btn-yellow{
1711
+ [data-theme=dark] .rs-btn[data-color=yellow], .rs-theme-dark .rs-btn[data-color=yellow]{
1705
1712
  --rs-btn-primary-bg:var(--rs-yellow-700);
1706
1713
  --rs-btn-primary-hover-bg:var(--rs-yellow-500);
1707
1714
  --rs-btn-primary-active-bg:var(--rs-yellow-400);
@@ -1723,7 +1730,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1723
1730
  --rs-iconbtn-primary-activated-addon:var(--rs-yellow-400);
1724
1731
  --rs-iconbtn-primary-pressed-addon:var(--rs-yellow-300);
1725
1732
  }
1726
- [data-theme=high-contrast] .rs-btn-yellow, .rs-theme-high-contrast .rs-btn-yellow{
1733
+ [data-theme=high-contrast] .rs-btn[data-color=yellow], .rs-theme-high-contrast .rs-btn[data-color=yellow]{
1727
1734
  --rs-btn-primary-bg:var(--rs-yellow-700);
1728
1735
  --rs-btn-primary-hover-bg:var(--rs-yellow-600);
1729
1736
  --rs-btn-primary-active-bg:var(--rs-yellow-400);
@@ -1742,7 +1749,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1742
1749
  --rs-btn-link-active-text:var(--rs-yellow-200);
1743
1750
  }
1744
1751
 
1745
- .rs-btn-green{
1752
+ .rs-btn[data-color=green]{
1746
1753
  --rs-btn-primary-bg:var(--rs-green-500);
1747
1754
  --rs-btn-primary-hover-bg:var(--rs-green-700);
1748
1755
  --rs-btn-primary-active-bg:var(--rs-green-800);
@@ -1764,7 +1771,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1764
1771
  --rs-iconbtn-primary-activated-addon:var(--rs-green-800);
1765
1772
  --rs-iconbtn-primary-pressed-addon:var(--rs-green-900);
1766
1773
  }
1767
- [data-theme=dark] .rs-btn-green, .rs-theme-dark .rs-btn-green{
1774
+ [data-theme=dark] .rs-btn[data-color=green], .rs-theme-dark .rs-btn[data-color=green]{
1768
1775
  --rs-btn-primary-bg:var(--rs-green-700);
1769
1776
  --rs-btn-primary-hover-bg:var(--rs-green-500);
1770
1777
  --rs-btn-primary-active-bg:var(--rs-green-400);
@@ -1786,7 +1793,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1786
1793
  --rs-iconbtn-primary-activated-addon:var(--rs-green-400);
1787
1794
  --rs-iconbtn-primary-pressed-addon:var(--rs-green-300);
1788
1795
  }
1789
- [data-theme=high-contrast] .rs-btn-green, .rs-theme-high-contrast .rs-btn-green{
1796
+ [data-theme=high-contrast] .rs-btn[data-color=green], .rs-theme-high-contrast .rs-btn[data-color=green]{
1790
1797
  --rs-btn-primary-bg:var(--rs-green-700);
1791
1798
  --rs-btn-primary-hover-bg:var(--rs-green-600);
1792
1799
  --rs-btn-primary-active-bg:var(--rs-green-400);
@@ -1805,7 +1812,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1805
1812
  --rs-btn-link-active-text:var(--rs-green-200);
1806
1813
  }
1807
1814
 
1808
- .rs-btn-cyan{
1815
+ .rs-btn[data-color=cyan]{
1809
1816
  --rs-btn-primary-bg:var(--rs-cyan-500);
1810
1817
  --rs-btn-primary-hover-bg:var(--rs-cyan-700);
1811
1818
  --rs-btn-primary-active-bg:var(--rs-cyan-800);
@@ -1827,7 +1834,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1827
1834
  --rs-iconbtn-primary-activated-addon:var(--rs-cyan-800);
1828
1835
  --rs-iconbtn-primary-pressed-addon:var(--rs-cyan-900);
1829
1836
  }
1830
- [data-theme=dark] .rs-btn-cyan, .rs-theme-dark .rs-btn-cyan{
1837
+ [data-theme=dark] .rs-btn[data-color=cyan], .rs-theme-dark .rs-btn[data-color=cyan]{
1831
1838
  --rs-btn-primary-bg:var(--rs-cyan-700);
1832
1839
  --rs-btn-primary-hover-bg:var(--rs-cyan-500);
1833
1840
  --rs-btn-primary-active-bg:var(--rs-cyan-400);
@@ -1849,7 +1856,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1849
1856
  --rs-iconbtn-primary-activated-addon:var(--rs-cyan-400);
1850
1857
  --rs-iconbtn-primary-pressed-addon:var(--rs-cyan-300);
1851
1858
  }
1852
- [data-theme=high-contrast] .rs-btn-cyan, .rs-theme-high-contrast .rs-btn-cyan{
1859
+ [data-theme=high-contrast] .rs-btn[data-color=cyan], .rs-theme-high-contrast .rs-btn[data-color=cyan]{
1853
1860
  --rs-btn-primary-bg:var(--rs-cyan-700);
1854
1861
  --rs-btn-primary-hover-bg:var(--rs-cyan-600);
1855
1862
  --rs-btn-primary-active-bg:var(--rs-cyan-400);
@@ -1868,7 +1875,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1868
1875
  --rs-btn-link-active-text:var(--rs-cyan-200);
1869
1876
  }
1870
1877
 
1871
- .rs-btn-blue{
1878
+ .rs-btn[data-color=blue]{
1872
1879
  --rs-btn-primary-bg:var(--rs-blue-500);
1873
1880
  --rs-btn-primary-hover-bg:var(--rs-blue-700);
1874
1881
  --rs-btn-primary-active-bg:var(--rs-blue-800);
@@ -1890,7 +1897,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1890
1897
  --rs-iconbtn-primary-activated-addon:var(--rs-blue-800);
1891
1898
  --rs-iconbtn-primary-pressed-addon:var(--rs-blue-900);
1892
1899
  }
1893
- [data-theme=dark] .rs-btn-blue, .rs-theme-dark .rs-btn-blue{
1900
+ [data-theme=dark] .rs-btn[data-color=blue], .rs-theme-dark .rs-btn[data-color=blue]{
1894
1901
  --rs-btn-primary-bg:var(--rs-blue-700);
1895
1902
  --rs-btn-primary-hover-bg:var(--rs-blue-500);
1896
1903
  --rs-btn-primary-active-bg:var(--rs-blue-400);
@@ -1912,7 +1919,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1912
1919
  --rs-iconbtn-primary-activated-addon:var(--rs-blue-400);
1913
1920
  --rs-iconbtn-primary-pressed-addon:var(--rs-blue-300);
1914
1921
  }
1915
- [data-theme=high-contrast] .rs-btn-blue, .rs-theme-high-contrast .rs-btn-blue{
1922
+ [data-theme=high-contrast] .rs-btn[data-color=blue], .rs-theme-high-contrast .rs-btn[data-color=blue]{
1916
1923
  --rs-btn-primary-bg:var(--rs-blue-700);
1917
1924
  --rs-btn-primary-hover-bg:var(--rs-blue-600);
1918
1925
  --rs-btn-primary-active-bg:var(--rs-blue-400);
@@ -1931,7 +1938,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1931
1938
  --rs-btn-link-active-text:var(--rs-blue-200);
1932
1939
  }
1933
1940
 
1934
- .rs-btn-violet{
1941
+ .rs-btn[data-color=violet]{
1935
1942
  --rs-btn-primary-bg:var(--rs-violet-500);
1936
1943
  --rs-btn-primary-hover-bg:var(--rs-violet-700);
1937
1944
  --rs-btn-primary-active-bg:var(--rs-violet-800);
@@ -1953,7 +1960,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1953
1960
  --rs-iconbtn-primary-activated-addon:var(--rs-violet-800);
1954
1961
  --rs-iconbtn-primary-pressed-addon:var(--rs-violet-900);
1955
1962
  }
1956
- [data-theme=dark] .rs-btn-violet, .rs-theme-dark .rs-btn-violet{
1963
+ [data-theme=dark] .rs-btn[data-color=violet], .rs-theme-dark .rs-btn[data-color=violet]{
1957
1964
  --rs-btn-primary-bg:var(--rs-violet-700);
1958
1965
  --rs-btn-primary-hover-bg:var(--rs-violet-500);
1959
1966
  --rs-btn-primary-active-bg:var(--rs-violet-400);
@@ -1975,7 +1982,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1975
1982
  --rs-iconbtn-primary-activated-addon:var(--rs-violet-400);
1976
1983
  --rs-iconbtn-primary-pressed-addon:var(--rs-violet-300);
1977
1984
  }
1978
- [data-theme=high-contrast] .rs-btn-violet, .rs-theme-high-contrast .rs-btn-violet{
1985
+ [data-theme=high-contrast] .rs-btn[data-color=violet], .rs-theme-high-contrast .rs-btn[data-color=violet]{
1979
1986
  --rs-btn-primary-bg:var(--rs-violet-700);
1980
1987
  --rs-btn-primary-hover-bg:var(--rs-violet-600);
1981
1988
  --rs-btn-primary-active-bg:var(--rs-violet-400);
@@ -1994,20 +2001,20 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
1994
2001
  --rs-btn-link-active-text:var(--rs-violet-200);
1995
2002
  }
1996
2003
 
1997
- .rs-btn-block{
2004
+ .rs-btn[data-block=true]{
1998
2005
  width:100%;
1999
2006
  }
2000
- .rs-btn-block + .rs-btn-block{
2007
+ .rs-btn[data-block=true] + .rs-btn[data-block=true]{
2001
2008
  margin-top:5px;
2002
2009
  }
2003
2010
 
2004
- .rs-btn-loading{
2011
+ .rs-btn[data-loading=true]{
2005
2012
  color:transparent !important;
2006
2013
  position:relative;
2007
2014
  cursor:default;
2008
2015
  pointer-events:none;
2009
2016
  }
2010
- .rs-btn-loading > .rs-btn-spin::before, .rs-btn-loading > .rs-btn-spin::after{
2017
+ .rs-btn[data-loading=true] > .rs-btn-spin::before, .rs-btn[data-loading=true] > .rs-btn-spin::after{
2011
2018
  content:"";
2012
2019
  position:absolute;
2013
2020
  width:var(--rs-btn-loading-spin-default-diameter);
@@ -2020,29 +2027,29 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2020
2027
  border-radius:var(--rs-radius-full);
2021
2028
  z-index:1;
2022
2029
  }
2023
- .rs-btn-xs .rs-btn-loading > .rs-btn-spin::before, .rs-btn-xs .rs-btn-loading > .rs-btn-spin::after{
2030
+ .rs-btn[data-size=xs] .rs-btn[data-loading=true] > .rs-btn-spin::before, .rs-btn[data-size=xs] .rs-btn[data-loading=true] > .rs-btn-spin::after{
2024
2031
  width:var(--rs-btn-loading-spin-xs-diameter);
2025
2032
  height:var(--rs-btn-loading-spin-xs-diameter);
2026
2033
  }
2027
- .rs-btn-loading > .rs-btn-spin::before{
2034
+ .rs-btn[data-loading=true] > .rs-btn-spin::before{
2028
2035
  border:var(--rs-btn-loading-spin-ring-wide) solid var(--rs-loader-ring);
2029
2036
  }
2030
- .rs-btn-primary .rs-btn-loading > .rs-btn-spin::before{
2037
+ .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::before{
2031
2038
  border-color:rgba(248, 247, 250, 0.3);
2032
2039
  }
2033
- [data-theme=high-contrast] .rs-btn-primary .rs-btn-loading > .rs-btn-spin::before, .rs-theme-high-contrast .rs-btn-primary .rs-btn-loading > .rs-btn-spin::before{
2040
+ [data-theme=high-contrast] .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::before, .rs-theme-high-contrast .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::before{
2034
2041
  border-color:var(--rs-loader-ring-inverse);
2035
2042
  }
2036
- .rs-btn-loading > .rs-btn-spin::after{
2043
+ .rs-btn[data-loading=true] > .rs-btn-spin::after{
2037
2044
  border-width:var(--rs-btn-loading-spin-ring-wide);
2038
2045
  border-color:var(--rs-loader-rotor) transparent transparent;
2039
2046
  border-style:solid;
2040
2047
  animation:buttonSpin 0.6s infinite linear;
2041
2048
  }
2042
- .rs-btn-primary .rs-btn-loading > .rs-btn-spin::after{
2049
+ .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::after{
2043
2050
  border-top-color:#fff;
2044
2051
  }
2045
- [data-theme=high-contrast] .rs-btn-primary .rs-btn-loading > .rs-btn-spin::after, .rs-theme-high-contrast .rs-btn-primary .rs-btn-loading > .rs-btn-spin::after{
2052
+ [data-theme=high-contrast] .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::after, .rs-theme-high-contrast .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::after{
2046
2053
  border-top-color:var(--rs-loader-rotor-inverse);
2047
2054
  }
2048
2055
  @keyframes buttonSpin{
@@ -2062,14 +2069,14 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2062
2069
  font-size:var(--rs-btn-icon-size);
2063
2070
  vertical-align:bottom;
2064
2071
  }
2065
- .rs-btn-icon:not(.rs-btn-icon-with-text){
2072
+ .rs-btn-icon:not([data-with-text]){
2066
2073
  width:var(--rs-btn-size);
2067
2074
  }
2068
- .rs-btn-icon.rs-btn-icon-circle{
2075
+ .rs-btn-icon[data-shape=circle]{
2069
2076
  border-radius:var(--rs-radius-full);
2070
2077
  }
2071
2078
 
2072
- .rs-btn-icon-with-text > .rs-icon{
2079
+ .rs-btn-icon[data-with-text] > .rs-icon{
2073
2080
  position:absolute;
2074
2081
  top:0;
2075
2082
  display:block;
@@ -2079,45 +2086,45 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2079
2086
  height:var(--rs-btn-size);
2080
2087
  padding:calc((var(--rs-btn-size) - var(--rs-btn-icon-size)) / 2);
2081
2088
  }
2082
- .rs-btn-icon-with-text.rs-btn-icon-placement-left{
2089
+ .rs-btn-icon[data-with-text]:where([data-placement=start], [data-placement=left]){
2083
2090
  padding-inline-start:calc(var(--rs-btn-padding-inline) + var(--rs-btn-size));
2084
2091
  }
2085
- .rs-btn-icon-with-text.rs-btn-icon-placement-left > .rs-icon{
2092
+ .rs-btn-icon[data-with-text]:where([data-placement=start], [data-placement=left]) > .rs-icon{
2086
2093
  inset-inline-start:0;
2087
2094
  border-right-width:1px;
2088
2095
  }
2089
- .rs-btn-icon-with-text.rs-btn-icon-placement-right{
2096
+ .rs-btn-icon[data-with-text]:where([data-placement=end], [data-placement=right]){
2090
2097
  padding-inline-end:calc(var(--rs-btn-padding-inline) + var(--rs-btn-size));
2091
2098
  }
2092
- .rs-btn-icon-with-text.rs-btn-icon-placement-right > .rs-icon{
2099
+ .rs-btn-icon[data-with-text]:where([data-placement=end], [data-placement=right]) > .rs-icon{
2093
2100
  inset-inline-end:0;
2094
2101
  }
2095
- .rs-btn-icon-with-text:hover > .rs-icon{
2102
+ .rs-btn-icon[data-with-text]:hover > .rs-icon{
2096
2103
  background-color:var(--rs-iconbtn-activated-addon);
2097
2104
  }
2098
- .rs-btn-icon-with-text:active > .rs-icon, .rs-btn-icon-with-text.rs-btn-active > .rs-icon{
2105
+ .rs-btn-icon[data-with-text]:active > .rs-icon, .rs-btn-icon[data-with-text].rs-btn[data-active=true] > .rs-icon{
2099
2106
  background-color:var(--rs-iconbtn-pressed-addon);
2100
2107
  }
2101
- .rs-btn-icon-with-text:disabled > .rs-icon, .rs-btn-icon-with-text.rs-btn-disabled > .rs-icon{
2108
+ .rs-btn-icon[data-with-text]:disabled > .rs-icon, .rs-btn-icon[data-with-text].rs-btn[data-disabled=true] > .rs-icon{
2102
2109
  background-color:var(--rs-iconbtn-addon);
2103
2110
  }
2104
- [data-theme=high-contrast] .rs-btn-icon-with-text:disabled, .rs-theme-high-contrast .rs-btn-icon-with-text:disabled, [data-theme=high-contrast] .rs-btn-icon-with-text.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-icon-with-text.rs-btn-disabled{
2111
+ [data-theme=high-contrast] .rs-btn-icon[data-with-text]:disabled, .rs-theme-high-contrast .rs-btn-icon[data-with-text]:disabled, [data-theme=high-contrast] .rs-btn-icon[data-with-text].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn-icon[data-with-text].rs-btn[data-disabled=true]{
2105
2112
  border-color:var(--rs-btn-default-disabled-border-color);
2106
2113
  }
2107
2114
 
2108
- .rs-btn-icon-with-text.rs-btn-primary > .rs-icon{
2115
+ .rs-btn-icon[data-with-text][data-appearance=primary] > .rs-icon{
2109
2116
  background-color:var(--rs-iconbtn-primary-addon);
2110
2117
  }
2111
- .rs-btn-icon-with-text.rs-btn-primary:hover > .rs-icon{
2118
+ .rs-btn-icon[data-with-text][data-appearance=primary]:hover > .rs-icon{
2112
2119
  background-color:var(--rs-iconbtn-primary-activated-addon);
2113
2120
  }
2114
- .rs-btn-icon-with-text.rs-btn-primary:active > .rs-icon, .rs-btn-icon-with-text.rs-btn-primary.rs-btn-active > .rs-icon{
2121
+ .rs-btn-icon[data-with-text][data-appearance=primary]:active > .rs-icon, .rs-btn-icon[data-with-text][data-appearance=primary].rs-btn[data-active=true] > .rs-icon{
2115
2122
  background-color:var(--rs-iconbtn-primary-pressed-addon);
2116
2123
  }
2117
- .rs-btn-icon-with-text.rs-btn-primary:disabled > .rs-icon, .rs-btn-icon-with-text.rs-btn-primary.rs-btn-disabled > .rs-icon{
2124
+ .rs-btn-icon[data-with-text][data-appearance=primary]:disabled > .rs-icon, .rs-btn-icon[data-with-text][data-appearance=primary].rs-btn[data-disabled=true] > .rs-icon{
2118
2125
  background-color:var(--rs-iconbtn-primary-addon);
2119
2126
  }
2120
- [data-theme=high-contrast] .rs-btn-icon-with-text.rs-btn-primary:disabled, .rs-theme-high-contrast .rs-btn-icon-with-text.rs-btn-primary:disabled, [data-theme=high-contrast] .rs-btn-icon-with-text.rs-btn-primary.rs-btn-disabled, .rs-theme-high-contrast .rs-btn-icon-with-text.rs-btn-primary.rs-btn-disabled{
2127
+ [data-theme=high-contrast] .rs-btn-icon[data-with-text][data-appearance=primary]:disabled, .rs-theme-high-contrast .rs-btn-icon[data-with-text][data-appearance=primary]:disabled, [data-theme=high-contrast] .rs-btn-icon[data-with-text][data-appearance=primary].rs-btn[data-disabled=true], .rs-theme-high-contrast .rs-btn-icon[data-with-text][data-appearance=primary].rs-btn[data-disabled=true]{
2121
2128
  border-color:var(--rs-btn-default-disabled-border-color);
2122
2129
  }
2123
2130
 
@@ -2195,7 +2202,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2195
2202
  }
2196
2203
  .rs-picker-toggle-active, .rs-picker.rs-picker-focused{
2197
2204
  --rs-picker-toggle-border-color:var(--rs-input-focus-border);
2198
- outline:2px solid var(--rs-color-focus-ring);
2205
+ outline:2px solid var(--rs-focus-ring-color);
2199
2206
  outline-offset:-1px;
2200
2207
  }
2201
2208
  .rs-picker-label.rs-input-group-addon{
@@ -2356,18 +2363,18 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2356
2363
  background-color:var(--rs-input-bg);
2357
2364
  outline:none;
2358
2365
  }
2359
- .rs-picker-toggle.rs-btn-lg .rs-picker-toggle-textbox{
2366
+ .rs-picker-toggle-textbox:where([readonly]){
2367
+ opacity:0;
2368
+ }
2369
+ .rs-picker-toggle:where([data-size=lg]) .rs-picker-toggle-textbox{
2360
2370
  padding-inline-start:14px;
2361
2371
  }
2362
- .rs-picker-toggle.rs-btn-sm .rs-picker-toggle-textbox{
2372
+ .rs-picker-toggle:where([data-size=sm]) .rs-picker-toggle-textbox{
2363
2373
  padding-inline-start:8px;
2364
2374
  }
2365
- .rs-picker-toggle.rs-btn-xs .rs-picker-toggle-textbox{
2375
+ .rs-picker-toggle:where([data-size=xs]) .rs-picker-toggle-textbox{
2366
2376
  padding-inline-start:6px;
2367
2377
  }
2368
- .rs-picker-toggle-read-only{
2369
- opacity:0;
2370
- }
2371
2378
  .rs-picker-toggle .rs-picker[data-variant=default], .rs-picker-toggle{
2372
2379
  transition:var(--rs-picker-transition);
2373
2380
  }
@@ -2382,22 +2389,10 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2382
2389
  background-color:transparent;
2383
2390
  transition:none;
2384
2391
  }
2385
- .rs-picker[data-variant=subtle] .rs-picker-toggle:hover{
2392
+ .rs-picker[data-variant=subtle] .rs-picker-toggle:hover,.rs-picker[data-variant=subtle] .rs-picker-toggle-active{
2386
2393
  color:var(--rs-btn-subtle-hover-text);
2387
2394
  background-color:var(--rs-btn-subtle-hover-bg);
2388
2395
  }
2389
- .rs-picker[data-variant=subtle] .rs-picker-toggle:active, .rs-picker[data-variant=subtle] .rs-picker-toggle.rs-btn-active{
2390
- color:var(--rs-btn-subtle-active-text);
2391
- background-color:var(--rs-btn-subtle-active-bg);
2392
- }
2393
- .rs-picker[data-variant=subtle] .rs-picker-toggle:disabled, .rs-picker[data-variant=subtle] .rs-picker-toggle.rs-btn-disabled{
2394
- color:var(--rs-btn-subtle-disabled-text);
2395
- background:none;
2396
- }
2397
- .rs-picker[data-variant=subtle] .rs-picker-toggle-active{
2398
- background-color:var(--rs-btn-subtle-hover-bg);
2399
- color:var(--rs-btn-subtle-hover-text);
2400
- }
2401
2396
  .rs-picker-toggle[data-size=lg] .rs-picker-clean .rs-icon{
2402
2397
  width:16px;
2403
2398
  height:16px;
@@ -2475,7 +2470,7 @@ label:hover .rs-checkbox-control .rs-checkbox-inner::before{
2475
2470
  color:var(--rs-listbox-option-hover-text);
2476
2471
  }
2477
2472
  [data-theme=high-contrast] .rs-check-item:not(.rs-checkbox-disabled):hover, .rs-theme-high-contrast .rs-check-item:not(.rs-checkbox-disabled):hover, [data-theme=high-contrast] .rs-check-item:focus, .rs-theme-high-contrast .rs-check-item:focus, [data-theme=high-contrast] .rs-check-item.rs-check-item-focus, .rs-theme-high-contrast .rs-check-item.rs-check-item-focus{
2478
- outline:2px solid var(--rs-color-focus-ring);
2473
+ outline:2px solid var(--rs-focus-ring-color);
2479
2474
  outline-offset:-1px;
2480
2475
  outline-offset:-3px;
2481
2476
  outline-width:2px;