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
@@ -103,7 +103,7 @@ body{
103
103
  --rs-text-highlight-bg:#fff6c9;
104
104
  --rs-border-primary:var(--rs-gray-200);
105
105
  --rs-bg-overlay:var(--rs-gray-0);
106
- --rs-color-focus-ring:rgb(from var(--rs-primary-500) r g b / 25%);
106
+ --rs-focus-ring-color:rgb(from var(--rs-primary-500) r g b / 25%);
107
107
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
108
108
  --rs-btn-default-bg:var(--rs-gray-50);
109
109
  --rs-btn-default-text:var(--rs-gray-800);
@@ -162,7 +162,7 @@ body{
162
162
  }
163
163
  @supports not (color: rgb(from white r g b)){
164
164
  :root{
165
- --rs-color-focus-ring:rgba(52, 152, 255, 0.25);
165
+ --rs-focus-ring-color:rgba(52, 152, 255, 0.25);
166
166
  --rs-loader-ring:rgba(247, 247, 250, 0.8);
167
167
  --rs-loader-backdrop:rgba(255, 255, 255, 0.9);
168
168
  --rs-loader-ring-inverse:rgba(247, 247, 250, 0.3);
@@ -259,7 +259,6 @@ body{
259
259
  --rs-text-disabled:var(--rs-gray-400);
260
260
  --rs-border-primary:var(--rs-gray-600);
261
261
  --rs-bg-overlay:var(--rs-gray-700);
262
- --rs-color-focus-ring:0 0 0 2px rgb(from var(--rs-gray-500) r g b / 25%);
263
262
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
264
263
  --rs-btn-default-bg:var(--rs-gray-600);
265
264
  --rs-btn-default-text:var(--rs-gray-50);
@@ -317,7 +316,6 @@ body{
317
316
  @supports not (color: rgb(from white r g b)){
318
317
  [data-theme=dark],
319
318
  .rs-theme-dark{
320
- --rs-color-focus-ring:0 0 0 2px rgba(52, 195, 255, 0.25);
321
319
  --rs-loader-ring:rgba(233, 235, 240, 0.3);
322
320
  --rs-loader-backdrop:rgba(15, 19, 26, 0.83);
323
321
  --rs-loader-ring-inverse:rgba(233, 235, 240, 0.8);
@@ -415,7 +413,7 @@ body{
415
413
  --rs-text-highlight-bg:var(--rs-primary-500);
416
414
  --rs-border-primary:var(--rs-gray-100);
417
415
  --rs-bg-overlay:var(--rs-gray-800);
418
- --rs-color-focus-ring:var(--rs-gray-0);
416
+ --rs-focus-ring-color:var(--rs-gray-0);
419
417
  --rs-state-error-outline:2px solid rgb(from var(--rs-color-red) r g b / 25%);
420
418
  --rs-btn-default-bg:transparent;
421
419
  --rs-btn-default-text:var(--rs-primary-500);
@@ -512,7 +510,7 @@ body{
512
510
  --rs-ripple-bg:rgb(0 0 0 / 20%);
513
511
  --rs-zindex-dropdown:5;
514
512
  --rs-zindex-picker-toggle:5;
515
- --rs-zindex-picker-popup:calc(var(--rs-zindex-picker-toggle) + 2);
513
+ --rs-zindex-picker-popup:7;
516
514
  --rs-zindex-modal:1050;
517
515
  --rs-zindex-drawer:1050;
518
516
  }
@@ -576,7 +574,7 @@ body{
576
574
 
577
575
  .rs-cascade-search-view-row{
578
576
  display:flex;
579
- justify-content:space-between;
577
+ justify-content:flex-start;
580
578
  padding-inline:var(--rs-picker-item-content-padding-horizontal);
581
579
  padding-block:var(--rs-picker-item-content-padding-vertical);
582
580
  clear:both;
@@ -592,7 +590,7 @@ body{
592
590
  color:var(--rs-listbox-option-hover-text);
593
591
  }
594
592
  [data-theme=high-contrast] .rs-cascade-search-view-row:hover, .rs-theme-high-contrast .rs-cascade-search-view-row:hover{
595
- outline:2px solid var(--rs-color-focus-ring);
593
+ outline:2px solid var(--rs-focus-ring-color);
596
594
  outline-offset:-1px;
597
595
  outline-offset:-3px;
598
596
  outline-width:2px;
@@ -604,7 +602,7 @@ body{
604
602
  color:var(--rs-listbox-option-hover-text);
605
603
  }
606
604
  [data-theme=high-contrast] .rs-cascade-search-view-row.rs-cascade-search-view-row-focus, .rs-theme-high-contrast .rs-cascade-search-view-row.rs-cascade-search-view-row-focus{
607
- outline:2px solid var(--rs-color-focus-ring);
605
+ outline:2px solid var(--rs-focus-ring-color);
608
606
  outline-offset:-1px;
609
607
  outline-offset:-3px;
610
608
  outline-width:2px;
@@ -645,6 +643,7 @@ body{
645
643
 
646
644
  .rs-cascade-tree-column{
647
645
  overflow-y:auto;
646
+ overflow-x:hidden;
648
647
  }
649
648
  .rs-cascade-tree-column-loading{
650
649
  padding:4px;
@@ -676,7 +675,7 @@ body{
676
675
  color:var(--rs-listbox-option-hover-text);
677
676
  }
678
677
  [data-theme=high-contrast] .rs-cascade-tree-item:hover, .rs-theme-high-contrast .rs-cascade-tree-item:hover, [data-theme=high-contrast] .rs-cascade-tree-item:focus, .rs-theme-high-contrast .rs-cascade-tree-item:focus, [data-theme=high-contrast] .rs-cascade-tree-item.rs-cascade-tree-item-focus, .rs-theme-high-contrast .rs-cascade-tree-item.rs-cascade-tree-item-focus{
679
- outline:2px solid var(--rs-color-focus-ring);
678
+ outline:2px solid var(--rs-focus-ring-color);
680
679
  outline-offset:-1px;
681
680
  outline-offset:-3px;
682
681
  outline-width:2px;
@@ -719,9 +718,6 @@ body{
719
718
  --rs-stack-direction:row;
720
719
  --rs-stack-align:center;
721
720
  --rs-stack-justify:flex-start;
722
- --rs-stack-item-grow:0;
723
- --rs-stack-item-shrink:1;
724
- --rs-stack-item-basis:auto;
725
721
  }
726
722
 
727
723
  .rs-stack{
@@ -748,7 +744,7 @@ body{
748
744
  --rs-stack-align:center;
749
745
  flex-direction:row-reverse;
750
746
  }
751
- .rs-stack-wrap{
747
+ .rs-stack[data-wrap=true]{
752
748
  flex-wrap:wrap;
753
749
  }
754
750
  .rs-stack-xs-column{
@@ -834,12 +830,6 @@ body{
834
830
  }
835
831
  }
836
832
 
837
- .rs-stack-item{
838
- align-self:var(--rs-stack-item-align-self);
839
- order:var(--rs-stack-item-order);
840
- flex:var(--rs-stack-item-flex, var(--rs-stack-item-grow) var(--rs-stack-item-shrink) var(--rs-stack-item-basis));
841
- }
842
-
843
833
  :root{
844
834
  --rs-loader-duration-fast:0.4s;
845
835
  --rs-loader-duration-normal:0.6s;
@@ -856,7 +846,7 @@ body{
856
846
  --rs-loader-spin-ring-width:3px;
857
847
  }
858
848
 
859
- .rs-loader{
849
+ .rs-loader-box{
860
850
  display:inline-flex;
861
851
  align-items:center;
862
852
  justify-content:center;
@@ -898,34 +888,34 @@ body{
898
888
  height:100%;
899
889
  background:var(--rs-loader-backdrop);
900
890
  }
901
- .rs-loader-vertical .rs-loader{
891
+ .rs-loader[data-direction=vertical] .rs-loader-box{
902
892
  flex-direction:column;
903
893
  }
904
- .rs-loader-inverse .rs-loader-content{
894
+ .rs-loader[data-inverse=true] .rs-loader-content{
905
895
  color:var(--rs-text-inverse);
906
896
  }
907
- .rs-loader-inverse .rs-loader-backdrop{
897
+ .rs-loader[data-inverse=true] .rs-loader-backdrop{
908
898
  background:var(--rs-loader-backdrop-inverse);
909
899
  }
910
- .rs-loader-inverse .rs-loader-spin::before{
900
+ .rs-loader[data-inverse=true] .rs-loader-spin::before{
911
901
  border-color:var(--rs-loader-ring-inverse);
912
902
  }
913
- .rs-loader-inverse .rs-loader-spin::after{
903
+ .rs-loader[data-inverse=true] .rs-loader-spin::after{
914
904
  border-top-color:var(--rs-loader-rotor-inverse);
915
905
  }
916
- .rs-loader-speed-fast .rs-loader-spin::after{
906
+ .rs-loader[data-speed=fast] .rs-loader-spin::after{
917
907
  animation-duration:var(--rs-loader-duration-fast);
918
908
  }
919
- .rs-loader-speed-normal .rs-loader-spin::after{
909
+ .rs-loader[data-speed=normal] .rs-loader-spin::after{
920
910
  animation-duration:var(--rs-loader-duration-normal);
921
911
  }
922
- .rs-loader-speed-slow .rs-loader-spin::after{
912
+ .rs-loader[data-speed=slow] .rs-loader-spin::after{
923
913
  animation-duration:var(--rs-loader-duration-slow);
924
914
  }
925
- .rs-loader-speed-paused .rs-loader-spin::after{
915
+ .rs-loader[data-speed=paused] .rs-loader-spin::after{
926
916
  animation-play-state:var(--rs-loader-duration-paused);
927
917
  }
928
- .rs-loader-center{
918
+ .rs-loader[data-center=true]{
929
919
  position:absolute;
930
920
  top:0;
931
921
  bottom:0;
@@ -938,26 +928,26 @@ body{
938
928
  align-items:center;
939
929
  justify-content:center;
940
930
  }
941
- .rs-loader-center .rs-loader-content{
931
+ .rs-loader[data-center=true] .rs-loader-content{
942
932
  z-index:1;
943
933
  }
944
934
 
945
- .rs-loader-xs{
935
+ .rs-loader[data-size=xs]{
946
936
  --rs-loader-size:var(--rs-loader-size-xs);
947
937
  --rs-loader-font-size:var(--rs-loader-font-size-xs);
948
938
  }
949
939
 
950
- .rs-loader-sm{
940
+ .rs-loader[data-size=sm]{
951
941
  --rs-loader-size:var(--rs-loader-size-sm);
952
942
  --rs-loader-font-size:var(--rs-loader-font-size-sm);
953
943
  }
954
944
 
955
- .rs-loader-md{
945
+ .rs-loader[data-size=md]{
956
946
  --rs-loader-size:var(--rs-loader-size-md);
957
947
  --rs-loader-font-size:var(--rs-loader-font-size-md);
958
948
  }
959
949
 
960
- .rs-loader-lg{
950
+ .rs-loader[data-size=lg]{
961
951
  --rs-loader-size:var(--rs-loader-size-lg);
962
952
  --rs-loader-font-size:var(--rs-loader-font-size-lg);
963
953
  }
@@ -1019,32 +1009,32 @@ body{
1019
1009
  border-color:var(--rs-input-focus-border);
1020
1010
  }
1021
1011
  .rs-input:focus-visible{
1022
- outline:2px solid var(--rs-color-focus-ring);
1012
+ outline:2px solid var(--rs-focus-ring-color);
1023
1013
  outline-offset:-1px;
1024
1014
  }
1025
1015
  .rs-input:disabled{
1026
1016
  background-color:var(--rs-input-disabled-bg);
1027
1017
  color:var(--rs-text-disabled);
1028
1018
  }
1029
- .rs-input.rs-input-xs{
1019
+ .rs-input[data-size=xs]{
1030
1020
  --rs-input-font-size:var(--rs-input-font-size-xs);
1031
1021
  --rs-input-line-height:var(--rs-input-line-height-xs);
1032
1022
  --rs-input-padding-block:var(--rs-input-padding-block-xs);
1033
1023
  --rs-input-padding-inline:var(--rs-input-padding-inline-xs);
1034
1024
  }
1035
- .rs-input.rs-input-sm{
1025
+ .rs-input[data-size=sm]{
1036
1026
  --rs-input-font-size:var(--rs-input-font-size-sm);
1037
1027
  --rs-input-line-height:var(--rs-input-line-height-sm);
1038
1028
  --rs-input-padding-block:var(--rs-input-padding-block-sm);
1039
1029
  --rs-input-padding-inline:var(--rs-input-padding-inline-sm);
1040
1030
  }
1041
- .rs-input.rs-input-md{
1031
+ .rs-input[data-size=md]{
1042
1032
  --rs-input-font-size:var(--rs-input-font-size-md);
1043
1033
  --rs-input-line-height:var(--rs-input-line-height-md);
1044
1034
  --rs-input-padding-block:var(--rs-input-padding-block-md);
1045
1035
  --rs-input-padding-inline:var(--rs-input-padding-inline-md);
1046
1036
  }
1047
- .rs-input.rs-input-lg{
1037
+ .rs-input[data-size=lg]{
1048
1038
  --rs-input-font-size:var(--rs-input-font-size-lg);
1049
1039
  --rs-input-line-height:var(--rs-input-line-height-lg);
1050
1040
  --rs-input-padding-block:var(--rs-input-padding-block-lg);
@@ -1084,25 +1074,25 @@ body{
1084
1074
  border:1px solid var(--rs-border-primary);
1085
1075
  overflow:hidden;
1086
1076
  }
1087
- .rs-input-group.rs-input-group-xs{
1077
+ .rs-input-group[data-size=xs]{
1088
1078
  --rs-input-group-input-height:var(--rs-input-group-input-height-xs);
1089
1079
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-xs);
1090
1080
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-xs);
1091
1081
  --rs-input-group-font-size:var(--rs-input-group-font-size-xs);
1092
1082
  }
1093
- .rs-input-group.rs-input-group-sm{
1083
+ .rs-input-group[data-size=sm]{
1094
1084
  --rs-input-group-input-height:var(--rs-input-group-input-height-sm);
1095
1085
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-sm);
1096
1086
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-sm);
1097
1087
  --rs-input-group-font-size:var(--rs-input-group-font-size-sm);
1098
1088
  }
1099
- .rs-input-group.rs-input-group-md{
1089
+ .rs-input-group[data-size=md]{
1100
1090
  --rs-input-group-input-height:var(--rs-input-group-input-height-md);
1101
1091
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-md);
1102
1092
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-md);
1103
1093
  --rs-input-group-font-size:var(--rs-input-group-font-size-md);
1104
1094
  }
1105
- .rs-input-group.rs-input-group-lg{
1095
+ .rs-input-group[data-size=lg]{
1106
1096
  --rs-input-group-input-height:var(--rs-input-group-input-height-lg);
1107
1097
  --rs-input-group-inside-btn-spacing:var(--rs-input-group-inside-btn-m-x-lg);
1108
1098
  --rs-input-group-inside-btn-padding:var(--rs-input-group-inside-btn-p-x-lg);
@@ -1111,11 +1101,11 @@ body{
1111
1101
  [data-theme=high-contrast] .rs-input-group, .rs-theme-high-contrast .rs-input-group{
1112
1102
  transition:none;
1113
1103
  }
1114
- .rs-input-group:not(.rs-input-group-disabled).rs-input-group-focus, .rs-input-group:focus-within{
1104
+ .rs-input-group:not([data-disabled=true]).rs-input-group-focus, .rs-input-group:focus-within{
1115
1105
  border-color:var(--rs-input-focus-border);
1116
1106
  }
1117
- .rs-input-group:not(.rs-input-group-disabled).rs-input-group-focus, .rs-input-group:focus-within{
1118
- outline:2px solid var(--rs-color-focus-ring);
1107
+ .rs-input-group:not([data-disabled=true]).rs-input-group-focus, .rs-input-group:focus-within{
1108
+ outline:2px solid var(--rs-focus-ring-color);
1119
1109
  outline-offset:-1px;
1120
1110
  }
1121
1111
  .rs-input-group .rs-input-group{
@@ -1150,23 +1140,23 @@ body{
1150
1140
  .rs-input-group > .rs-input-group-addon > .rs-icon{
1151
1141
  font-size:inherit;
1152
1142
  }
1153
- .rs-input-group.rs-input-group-inside{
1143
+ .rs-input-group[data-inside=true]{
1154
1144
  width:var(--rs-input-group-width);
1155
1145
  align-items:center;
1156
1146
  background-color:var(--rs-input-bg);
1157
1147
  }
1158
- .rs-input-group.rs-input-group-inside .rs-input{
1148
+ .rs-input-group[data-inside=true] .rs-input{
1159
1149
  display:block;
1160
1150
  width:100%;
1161
1151
  border:none;
1162
1152
  outline:none;
1163
1153
  }
1164
- .rs-input-group.rs-input-group-inside .rs-input-group-btn,
1165
- .rs-input-group.rs-input-group-inside .rs-input-group-addon{
1154
+ .rs-input-group[data-inside=true] .rs-input-group-btn,
1155
+ .rs-input-group[data-inside=true] .rs-input-group-addon{
1166
1156
  flex:0 0 auto;
1167
1157
  width:auto;
1168
1158
  }
1169
- .rs-input-group.rs-input-group-inside .rs-input-group-btn{
1159
+ .rs-input-group[data-inside=true] .rs-input-group-btn{
1170
1160
  border-radius:var(--rs-input-group-border-radius);
1171
1161
  height:calc(var(--rs-input-group-input-height) - var(--rs-input-group-inside-btn-spacing) * 2);
1172
1162
  margin-inline:var(--rs-input-group-inside-btn-spacing);
@@ -1175,42 +1165,42 @@ body{
1175
1165
  background-color:transparent;
1176
1166
  color:inherit;
1177
1167
  }
1178
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:hover{
1168
+ .rs-input-group[data-inside=true] .rs-input-group-btn:hover{
1179
1169
  color:var(--rs-btn-subtle-hover-text);
1180
1170
  background-color:var(--rs-btn-subtle-hover-bg);
1181
1171
  }
1182
- .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{
1172
+ .rs-input-group[data-inside=true] .rs-input-group-btn:active, .rs-input-group[data-inside=true] .rs-input-group-btn[data-active=true]{
1183
1173
  color:var(--rs-btn-subtle-active-text);
1184
1174
  background-color:var(--rs-btn-subtle-active-bg);
1185
1175
  }
1186
- .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{
1176
+ .rs-input-group[data-inside=true] .rs-input-group-btn:disabled, .rs-input-group[data-inside=true] .rs-input-group-btn[data-disabled=true]{
1187
1177
  color:var(--rs-btn-subtle-disabled-text);
1188
1178
  background:none;
1189
1179
  }
1190
- .rs-input-group.rs-input-group-inside .rs-input-group-btn:focus{
1180
+ .rs-input-group[data-inside=true] .rs-input-group-btn:focus{
1191
1181
  outline:none;
1192
1182
  }
1193
- .rs-input-group.rs-input-group-inside .rs-input-group-addon{
1183
+ .rs-input-group[data-inside=true] .rs-input-group-addon{
1194
1184
  background:none;
1195
1185
  border:none;
1196
1186
  }
1197
- .rs-input-group.rs-input-group-inside .rs-input:not(:first-child),
1198
- .rs-input-group.rs-input-group-inside .rs-auto-complete:not(:first-child) .rs-input{
1187
+ .rs-input-group[data-inside=true] .rs-input:not(:first-child),
1188
+ .rs-input-group[data-inside=true] .rs-auto-complete:not(:first-child) .rs-input{
1199
1189
  padding-inline-start:0;
1200
1190
  }
1201
- .rs-input-group.rs-input-group-inside .rs-input:not(:last-child),
1202
- .rs-input-group.rs-input-group-inside .rs-auto-complete:not(:last-child) .rs-input{
1191
+ .rs-input-group[data-inside=true] .rs-input:not(:last-child),
1192
+ .rs-input-group[data-inside=true] .rs-auto-complete:not(:last-child) .rs-input{
1203
1193
  padding-inline-end:0;
1204
1194
  }
1205
1195
 
1206
- .rs-input-group.rs-input-group-disabled{
1196
+ .rs-input-group[data-disabled=true]{
1207
1197
  background-color:var(--rs-input-disabled-bg);
1208
1198
  color:var(--rs-text-disabled);
1209
1199
  cursor:not-allowed;
1210
1200
  }
1211
- .rs-input-group.rs-input-group-disabled .rs-input,
1212
- .rs-input-group.rs-input-group-disabled .rs-input-group-btn,
1213
- .rs-input-group.rs-input-group-disabled .rs-input-group-addon{
1201
+ .rs-input-group[data-disabled=true] .rs-input,
1202
+ .rs-input-group[data-disabled=true] .rs-input-group-btn,
1203
+ .rs-input-group[data-disabled=true] .rs-input-group-addon{
1214
1204
  color:inherit;
1215
1205
  }
1216
1206
 
@@ -1230,16 +1220,16 @@ body{
1230
1220
  padding-inline:var(--rs-spacing);
1231
1221
  min-width:var(--rs-input-group-input-height);
1232
1222
  }
1233
- .rs-input-group-addon.rs-input-sm{
1223
+ .rs-input-group-addon[data-size=sm]{
1234
1224
  padding-block:var(--rs-spacing-block-sm);
1235
1225
  padding-inline:var(--rs-spacing-inline-sm);
1236
1226
  font-size:var(--rs-font-size-sm);
1237
1227
  }
1238
- .rs-input-group-addon.rs-input-xs{
1228
+ .rs-input-group-addon[data-size=xs]{
1239
1229
  padding:var(--rs-spacing-inline-xs);
1240
1230
  font-size:var(--rs-font-size-xs);
1241
1231
  }
1242
- .rs-input-group-addon.rs-input-lg{
1232
+ .rs-input-group-addon[data-size=lg]{
1243
1233
  padding-block:var(--rs-spacing-block-lg);
1244
1234
  padding-inline:var(--rs-spacing-inline-lg);
1245
1235
  font-size:var(--rs-font-size-md);
@@ -1360,7 +1350,7 @@ body{
1360
1350
  border-color:var(--rs-btn-default-border-color);
1361
1351
  }
1362
1352
  .rs-btn:focus-visible{
1363
- outline:2px solid var(--rs-color-focus-ring);
1353
+ outline:2px solid var(--rs-focus-ring-color);
1364
1354
  outline-offset:-1px;
1365
1355
  }
1366
1356
  .rs-btn:hover{
@@ -1368,16 +1358,16 @@ body{
1368
1358
  background-color:var(--rs-btn-default-hover-bg);
1369
1359
  text-decoration:none;
1370
1360
  }
1371
- .rs-btn:active, .rs-btn.rs-btn-active{
1361
+ .rs-btn:active, .rs-btn.rs-btn[data-active=true]{
1372
1362
  color:var(--rs-btn-default-active-text);
1373
1363
  background-color:var(--rs-btn-default-active-bg);
1374
1364
  }
1375
- .rs-btn:disabled, .rs-btn.rs-btn-disabled{
1365
+ .rs-btn:disabled, .rs-btn.rs-btn[data-disabled=true]{
1376
1366
  cursor:var(--rs-cursor-disabled);
1377
1367
  color:var(--rs-btn-default-disabled-text);
1378
1368
  background-color:var(--rs-btn-default-disabled-bg);
1379
1369
  }
1380
- [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{
1370
+ [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]{
1381
1371
  border-color:var(--rs-btn-default-disabled-border-color);
1382
1372
  }
1383
1373
  .rs-btn{
@@ -1390,7 +1380,15 @@ body{
1390
1380
  mask-image:radial-gradient(white, black);
1391
1381
  }
1392
1382
  }
1393
- .rs-btn.rs-btn-lg{
1383
+ .rs-btn{
1384
+ --rs-btn-size:var(--rs-btn-size-md);
1385
+ --rs-btn-font-size:var(--rs-btn-font-size-md);
1386
+ --rs-btn-line-height:var(--rs-btn-line-height-md);
1387
+ --rs-btn-padding-inline:var(--rs-btn-padding-inline-md);
1388
+ --rs-btn-padding-block:var(--rs-btn-padding-block-md);
1389
+ --rs-btn-icon-size:var(--rs-btn-icon-size-md);
1390
+ }
1391
+ .rs-btn[data-size=lg]{
1394
1392
  --rs-btn-size:var(--rs-btn-size-lg);
1395
1393
  --rs-btn-font-size:var(--rs-btn-font-size-lg);
1396
1394
  --rs-btn-line-height:var(--rs-btn-line-height-lg);
@@ -1398,7 +1396,7 @@ body{
1398
1396
  --rs-btn-padding-block:var(--rs-btn-padding-block-lg);
1399
1397
  --rs-btn-icon-size:var(--rs-btn-icon-size-lg);
1400
1398
  }
1401
- .rs-btn.rs-btn-md{
1399
+ .rs-btn[data-size=md]{
1402
1400
  --rs-btn-size:var(--rs-btn-size-md);
1403
1401
  --rs-btn-font-size:var(--rs-btn-font-size-md);
1404
1402
  --rs-btn-line-height:var(--rs-btn-line-height-md);
@@ -1406,7 +1404,7 @@ body{
1406
1404
  --rs-btn-padding-block:var(--rs-btn-padding-block-md);
1407
1405
  --rs-btn-icon-size:var(--rs-btn-icon-size-md);
1408
1406
  }
1409
- .rs-btn.rs-btn-sm{
1407
+ .rs-btn[data-size=sm]{
1410
1408
  --rs-btn-size:var(--rs-btn-size-sm);
1411
1409
  --rs-btn-font-size:var(--rs-btn-font-size-sm);
1412
1410
  --rs-btn-line-height:var(--rs-btn-line-height-sm);
@@ -1414,7 +1412,7 @@ body{
1414
1412
  --rs-btn-padding-block:var(--rs-btn-padding-block-sm);
1415
1413
  --rs-btn-icon-size:var(--rs-btn-icon-size-sm);
1416
1414
  }
1417
- .rs-btn.rs-btn-xs{
1415
+ .rs-btn[data-size=xs]{
1418
1416
  --rs-btn-size:var(--rs-btn-size-xs);
1419
1417
  --rs-btn-font-size:var(--rs-btn-font-size-xs);
1420
1418
  --rs-btn-line-height:var(--rs-btn-line-height-xs);
@@ -1433,101 +1431,111 @@ body{
1433
1431
  margin-inline-start:var(--rs-btn-icon-gap);
1434
1432
  }
1435
1433
 
1436
- .rs-btn-primary{
1434
+ .rs-btn[data-appearance=primary]{
1437
1435
  color:var(--rs-btn-primary-text);
1438
1436
  background-color:var(--rs-btn-primary-bg);
1439
1437
  border-color:var(--rs-btn-primary-border-color);
1440
1438
  }
1441
- .rs-btn-primary:hover{
1439
+ .rs-btn[data-appearance=primary]:hover{
1442
1440
  color:var(--rs-btn-primary-text);
1443
1441
  background-color:var(--rs-btn-primary-hover-bg);
1444
1442
  }
1445
- .rs-btn-primary:active, .rs-btn-primary.rs-btn-active{
1443
+ .rs-btn[data-appearance=primary]:active, .rs-btn[data-appearance=primary].rs-btn[data-active=true]{
1446
1444
  color:var(--rs-btn-primary-text);
1447
1445
  background-color:var(--rs-btn-primary-active-bg);
1448
1446
  }
1449
- .rs-btn-primary:disabled, .rs-btn-primary.rs-btn-disabled{
1447
+ .rs-btn[data-appearance=primary]:disabled, .rs-btn[data-appearance=primary].rs-btn[data-disabled=true]{
1450
1448
  color:var(--rs-btn-primary-text);
1451
1449
  background-color:var(--rs-btn-primary-bg);
1452
1450
  opacity:0.3;
1453
1451
  }
1454
- [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{
1452
+ [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]{
1455
1453
  border-color:var(--rs-btn-default-disabled-border-color);
1456
1454
  }
1457
1455
 
1456
+ .rs-btn[data-appearance=subtle],
1458
1457
  .rs-btn-subtle{
1459
1458
  color:var(--rs-btn-subtle-text);
1460
1459
  background-color:transparent;
1461
1460
  }
1461
+ .rs-btn[data-appearance=subtle]:hover,
1462
1462
  .rs-btn-subtle:hover{
1463
1463
  color:var(--rs-btn-subtle-hover-text);
1464
1464
  background-color:var(--rs-btn-subtle-hover-bg);
1465
1465
  }
1466
- .rs-btn-subtle:active, .rs-btn-subtle.rs-btn-active{
1466
+ .rs-btn[data-appearance=subtle]:active, .rs-btn[data-appearance=subtle].rs-btn[data-active=true],
1467
+ .rs-btn-subtle:active,
1468
+ .rs-btn-subtle.rs-btn[data-active=true]{
1467
1469
  color:var(--rs-btn-subtle-active-text);
1468
1470
  background-color:var(--rs-btn-subtle-active-bg);
1469
1471
  }
1470
- .rs-btn-subtle:disabled, .rs-btn-subtle.rs-btn-disabled{
1472
+ .rs-btn[data-appearance=subtle]:disabled, .rs-btn[data-appearance=subtle].rs-btn[data-disabled=true],
1473
+ .rs-btn-subtle:disabled,
1474
+ .rs-btn-subtle.rs-btn[data-disabled=true]{
1471
1475
  color:var(--rs-btn-subtle-disabled-text);
1472
1476
  background:none;
1473
1477
  }
1474
- [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{
1478
+ [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],
1479
+ [data-theme=high-contrast] .rs-btn-subtle:disabled,
1480
+ .rs-theme-high-contrast .rs-btn-subtle:disabled,
1481
+ [data-theme=high-contrast] .rs-btn-subtle.rs-btn[data-disabled=true],
1482
+ .rs-theme-high-contrast .rs-btn-subtle.rs-btn[data-disabled=true]{
1475
1483
  border-color:var(--rs-btn-default-disabled-border-color);
1476
1484
  }
1477
1485
 
1478
- .rs-btn-link{
1486
+ .rs-btn[data-appearance=link]{
1479
1487
  color:var(--rs-btn-link-text);
1480
1488
  background-color:transparent;
1481
1489
  }
1482
- .rs-btn-link:hover{
1490
+ .rs-btn[data-appearance=link]:hover{
1483
1491
  color:var(--rs-btn-link-hover-text);
1484
1492
  background-color:transparent;
1485
1493
  -webkit-text-decoration:var(--rs-link-hover-decoration);
1486
1494
  text-decoration:var(--rs-link-hover-decoration);
1487
1495
  }
1488
- .rs-btn-link:active, .rs-btn-link.rs-btn-active{
1496
+ .rs-btn[data-appearance=link]:active, .rs-btn[data-appearance=link].rs-btn[data-active=true]{
1489
1497
  color:var(--rs-btn-link-active-text);
1490
1498
  background-color:transparent;
1491
1499
  }
1492
- .rs-btn-link:disabled, .rs-btn-link.rs-btn-disabled{
1500
+ .rs-btn[data-appearance=link]:disabled, .rs-btn[data-appearance=link].rs-btn[data-disabled=true]{
1493
1501
  color:var(--rs-btn-link-hover-text);
1494
1502
  background-color:transparent;
1495
1503
  text-decoration:none;
1496
1504
  opacity:0.3;
1497
1505
  }
1498
- [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{
1506
+ [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]{
1499
1507
  border-color:var(--rs-btn-default-disabled-border-color);
1500
1508
  }
1501
1509
 
1502
- .rs-btn-ghost{
1510
+ .rs-btn[data-appearance=ghost]{
1503
1511
  color:var(--rs-btn-ghost-text);
1504
1512
  background-color:transparent;
1505
1513
  border:var(--rs-btn-ghost-border-width) solid var(--rs-btn-ghost-border);
1506
1514
  padding-inline:calc(var(--rs-btn-padding-inline) - var(--rs-btn-ghost-border-width));
1507
1515
  }
1508
- .rs-btn-ghost:hover{
1516
+ .rs-btn[data-appearance=ghost]:hover{
1509
1517
  color:var(--rs-btn-ghost-hover-text);
1510
1518
  background-color:transparent;
1511
1519
  border-color:var(--rs-btn-ghost-hover-border);
1512
1520
  box-shadow:0 0 0 1px var(--rs-btn-ghost-hover-border);
1513
1521
  }
1514
- .rs-btn-ghost:active, .rs-btn-ghost.rs-btn-active{
1522
+ .rs-btn[data-appearance=ghost]:active, .rs-btn[data-appearance=ghost].rs-btn[data-active=true]{
1515
1523
  color:var(--rs-btn-ghost-active-text);
1516
1524
  background-color:transparent;
1517
1525
  border-color:var(--rs-btn-ghost-active-border);
1518
1526
  }
1519
- .rs-btn-ghost:disabled, .rs-btn-ghost.rs-btn-disabled{
1527
+ .rs-btn[data-appearance=ghost]:disabled, .rs-btn[data-appearance=ghost].rs-btn[data-disabled=true]{
1520
1528
  color:var(--rs-btn-ghost-text);
1521
1529
  background-color:transparent;
1522
1530
  opacity:0.3;
1523
1531
  border-color:var(--rs-btn-ghost-border);
1524
1532
  box-shadow:var(--rs-shadow-none);
1525
1533
  }
1526
- [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{
1534
+ [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]{
1527
1535
  border-color:var(--rs-btn-default-disabled-border-color);
1528
1536
  }
1529
1537
 
1530
- .rs-btn-red{
1538
+ .rs-btn[data-color=red]{
1531
1539
  --rs-btn-primary-bg:var(--rs-red-500);
1532
1540
  --rs-btn-primary-hover-bg:var(--rs-red-700);
1533
1541
  --rs-btn-primary-active-bg:var(--rs-red-800);
@@ -1549,7 +1557,7 @@ body{
1549
1557
  --rs-iconbtn-primary-activated-addon:var(--rs-red-800);
1550
1558
  --rs-iconbtn-primary-pressed-addon:var(--rs-red-900);
1551
1559
  }
1552
- [data-theme=dark] .rs-btn-red, .rs-theme-dark .rs-btn-red{
1560
+ [data-theme=dark] .rs-btn[data-color=red], .rs-theme-dark .rs-btn[data-color=red]{
1553
1561
  --rs-btn-primary-bg:var(--rs-red-700);
1554
1562
  --rs-btn-primary-hover-bg:var(--rs-red-500);
1555
1563
  --rs-btn-primary-active-bg:var(--rs-red-400);
@@ -1571,7 +1579,7 @@ body{
1571
1579
  --rs-iconbtn-primary-activated-addon:var(--rs-red-400);
1572
1580
  --rs-iconbtn-primary-pressed-addon:var(--rs-red-300);
1573
1581
  }
1574
- [data-theme=high-contrast] .rs-btn-red, .rs-theme-high-contrast .rs-btn-red{
1582
+ [data-theme=high-contrast] .rs-btn[data-color=red], .rs-theme-high-contrast .rs-btn[data-color=red]{
1575
1583
  --rs-btn-primary-bg:var(--rs-red-700);
1576
1584
  --rs-btn-primary-hover-bg:var(--rs-red-600);
1577
1585
  --rs-btn-primary-active-bg:var(--rs-red-400);
@@ -1590,7 +1598,7 @@ body{
1590
1598
  --rs-btn-link-active-text:var(--rs-red-200);
1591
1599
  }
1592
1600
 
1593
- .rs-btn-orange{
1601
+ .rs-btn[data-color=orange]{
1594
1602
  --rs-btn-primary-bg:var(--rs-orange-500);
1595
1603
  --rs-btn-primary-hover-bg:var(--rs-orange-700);
1596
1604
  --rs-btn-primary-active-bg:var(--rs-orange-800);
@@ -1612,7 +1620,7 @@ body{
1612
1620
  --rs-iconbtn-primary-activated-addon:var(--rs-orange-800);
1613
1621
  --rs-iconbtn-primary-pressed-addon:var(--rs-orange-900);
1614
1622
  }
1615
- [data-theme=dark] .rs-btn-orange, .rs-theme-dark .rs-btn-orange{
1623
+ [data-theme=dark] .rs-btn[data-color=orange], .rs-theme-dark .rs-btn[data-color=orange]{
1616
1624
  --rs-btn-primary-bg:var(--rs-orange-700);
1617
1625
  --rs-btn-primary-hover-bg:var(--rs-orange-500);
1618
1626
  --rs-btn-primary-active-bg:var(--rs-orange-400);
@@ -1634,7 +1642,7 @@ body{
1634
1642
  --rs-iconbtn-primary-activated-addon:var(--rs-orange-400);
1635
1643
  --rs-iconbtn-primary-pressed-addon:var(--rs-orange-300);
1636
1644
  }
1637
- [data-theme=high-contrast] .rs-btn-orange, .rs-theme-high-contrast .rs-btn-orange{
1645
+ [data-theme=high-contrast] .rs-btn[data-color=orange], .rs-theme-high-contrast .rs-btn[data-color=orange]{
1638
1646
  --rs-btn-primary-bg:var(--rs-orange-700);
1639
1647
  --rs-btn-primary-hover-bg:var(--rs-orange-600);
1640
1648
  --rs-btn-primary-active-bg:var(--rs-orange-400);
@@ -1653,7 +1661,7 @@ body{
1653
1661
  --rs-btn-link-active-text:var(--rs-orange-200);
1654
1662
  }
1655
1663
 
1656
- .rs-btn-yellow{
1664
+ .rs-btn[data-color=yellow]{
1657
1665
  --rs-btn-primary-bg:var(--rs-yellow-500);
1658
1666
  --rs-btn-primary-hover-bg:var(--rs-yellow-700);
1659
1667
  --rs-btn-primary-active-bg:var(--rs-yellow-800);
@@ -1675,7 +1683,7 @@ body{
1675
1683
  --rs-iconbtn-primary-activated-addon:var(--rs-yellow-800);
1676
1684
  --rs-iconbtn-primary-pressed-addon:var(--rs-yellow-900);
1677
1685
  }
1678
- [data-theme=dark] .rs-btn-yellow, .rs-theme-dark .rs-btn-yellow{
1686
+ [data-theme=dark] .rs-btn[data-color=yellow], .rs-theme-dark .rs-btn[data-color=yellow]{
1679
1687
  --rs-btn-primary-bg:var(--rs-yellow-700);
1680
1688
  --rs-btn-primary-hover-bg:var(--rs-yellow-500);
1681
1689
  --rs-btn-primary-active-bg:var(--rs-yellow-400);
@@ -1697,7 +1705,7 @@ body{
1697
1705
  --rs-iconbtn-primary-activated-addon:var(--rs-yellow-400);
1698
1706
  --rs-iconbtn-primary-pressed-addon:var(--rs-yellow-300);
1699
1707
  }
1700
- [data-theme=high-contrast] .rs-btn-yellow, .rs-theme-high-contrast .rs-btn-yellow{
1708
+ [data-theme=high-contrast] .rs-btn[data-color=yellow], .rs-theme-high-contrast .rs-btn[data-color=yellow]{
1701
1709
  --rs-btn-primary-bg:var(--rs-yellow-700);
1702
1710
  --rs-btn-primary-hover-bg:var(--rs-yellow-600);
1703
1711
  --rs-btn-primary-active-bg:var(--rs-yellow-400);
@@ -1716,7 +1724,7 @@ body{
1716
1724
  --rs-btn-link-active-text:var(--rs-yellow-200);
1717
1725
  }
1718
1726
 
1719
- .rs-btn-green{
1727
+ .rs-btn[data-color=green]{
1720
1728
  --rs-btn-primary-bg:var(--rs-green-500);
1721
1729
  --rs-btn-primary-hover-bg:var(--rs-green-700);
1722
1730
  --rs-btn-primary-active-bg:var(--rs-green-800);
@@ -1738,7 +1746,7 @@ body{
1738
1746
  --rs-iconbtn-primary-activated-addon:var(--rs-green-800);
1739
1747
  --rs-iconbtn-primary-pressed-addon:var(--rs-green-900);
1740
1748
  }
1741
- [data-theme=dark] .rs-btn-green, .rs-theme-dark .rs-btn-green{
1749
+ [data-theme=dark] .rs-btn[data-color=green], .rs-theme-dark .rs-btn[data-color=green]{
1742
1750
  --rs-btn-primary-bg:var(--rs-green-700);
1743
1751
  --rs-btn-primary-hover-bg:var(--rs-green-500);
1744
1752
  --rs-btn-primary-active-bg:var(--rs-green-400);
@@ -1760,7 +1768,7 @@ body{
1760
1768
  --rs-iconbtn-primary-activated-addon:var(--rs-green-400);
1761
1769
  --rs-iconbtn-primary-pressed-addon:var(--rs-green-300);
1762
1770
  }
1763
- [data-theme=high-contrast] .rs-btn-green, .rs-theme-high-contrast .rs-btn-green{
1771
+ [data-theme=high-contrast] .rs-btn[data-color=green], .rs-theme-high-contrast .rs-btn[data-color=green]{
1764
1772
  --rs-btn-primary-bg:var(--rs-green-700);
1765
1773
  --rs-btn-primary-hover-bg:var(--rs-green-600);
1766
1774
  --rs-btn-primary-active-bg:var(--rs-green-400);
@@ -1779,7 +1787,7 @@ body{
1779
1787
  --rs-btn-link-active-text:var(--rs-green-200);
1780
1788
  }
1781
1789
 
1782
- .rs-btn-cyan{
1790
+ .rs-btn[data-color=cyan]{
1783
1791
  --rs-btn-primary-bg:var(--rs-cyan-500);
1784
1792
  --rs-btn-primary-hover-bg:var(--rs-cyan-700);
1785
1793
  --rs-btn-primary-active-bg:var(--rs-cyan-800);
@@ -1801,7 +1809,7 @@ body{
1801
1809
  --rs-iconbtn-primary-activated-addon:var(--rs-cyan-800);
1802
1810
  --rs-iconbtn-primary-pressed-addon:var(--rs-cyan-900);
1803
1811
  }
1804
- [data-theme=dark] .rs-btn-cyan, .rs-theme-dark .rs-btn-cyan{
1812
+ [data-theme=dark] .rs-btn[data-color=cyan], .rs-theme-dark .rs-btn[data-color=cyan]{
1805
1813
  --rs-btn-primary-bg:var(--rs-cyan-700);
1806
1814
  --rs-btn-primary-hover-bg:var(--rs-cyan-500);
1807
1815
  --rs-btn-primary-active-bg:var(--rs-cyan-400);
@@ -1823,7 +1831,7 @@ body{
1823
1831
  --rs-iconbtn-primary-activated-addon:var(--rs-cyan-400);
1824
1832
  --rs-iconbtn-primary-pressed-addon:var(--rs-cyan-300);
1825
1833
  }
1826
- [data-theme=high-contrast] .rs-btn-cyan, .rs-theme-high-contrast .rs-btn-cyan{
1834
+ [data-theme=high-contrast] .rs-btn[data-color=cyan], .rs-theme-high-contrast .rs-btn[data-color=cyan]{
1827
1835
  --rs-btn-primary-bg:var(--rs-cyan-700);
1828
1836
  --rs-btn-primary-hover-bg:var(--rs-cyan-600);
1829
1837
  --rs-btn-primary-active-bg:var(--rs-cyan-400);
@@ -1842,7 +1850,7 @@ body{
1842
1850
  --rs-btn-link-active-text:var(--rs-cyan-200);
1843
1851
  }
1844
1852
 
1845
- .rs-btn-blue{
1853
+ .rs-btn[data-color=blue]{
1846
1854
  --rs-btn-primary-bg:var(--rs-blue-500);
1847
1855
  --rs-btn-primary-hover-bg:var(--rs-blue-700);
1848
1856
  --rs-btn-primary-active-bg:var(--rs-blue-800);
@@ -1864,7 +1872,7 @@ body{
1864
1872
  --rs-iconbtn-primary-activated-addon:var(--rs-blue-800);
1865
1873
  --rs-iconbtn-primary-pressed-addon:var(--rs-blue-900);
1866
1874
  }
1867
- [data-theme=dark] .rs-btn-blue, .rs-theme-dark .rs-btn-blue{
1875
+ [data-theme=dark] .rs-btn[data-color=blue], .rs-theme-dark .rs-btn[data-color=blue]{
1868
1876
  --rs-btn-primary-bg:var(--rs-blue-700);
1869
1877
  --rs-btn-primary-hover-bg:var(--rs-blue-500);
1870
1878
  --rs-btn-primary-active-bg:var(--rs-blue-400);
@@ -1886,7 +1894,7 @@ body{
1886
1894
  --rs-iconbtn-primary-activated-addon:var(--rs-blue-400);
1887
1895
  --rs-iconbtn-primary-pressed-addon:var(--rs-blue-300);
1888
1896
  }
1889
- [data-theme=high-contrast] .rs-btn-blue, .rs-theme-high-contrast .rs-btn-blue{
1897
+ [data-theme=high-contrast] .rs-btn[data-color=blue], .rs-theme-high-contrast .rs-btn[data-color=blue]{
1890
1898
  --rs-btn-primary-bg:var(--rs-blue-700);
1891
1899
  --rs-btn-primary-hover-bg:var(--rs-blue-600);
1892
1900
  --rs-btn-primary-active-bg:var(--rs-blue-400);
@@ -1905,7 +1913,7 @@ body{
1905
1913
  --rs-btn-link-active-text:var(--rs-blue-200);
1906
1914
  }
1907
1915
 
1908
- .rs-btn-violet{
1916
+ .rs-btn[data-color=violet]{
1909
1917
  --rs-btn-primary-bg:var(--rs-violet-500);
1910
1918
  --rs-btn-primary-hover-bg:var(--rs-violet-700);
1911
1919
  --rs-btn-primary-active-bg:var(--rs-violet-800);
@@ -1927,7 +1935,7 @@ body{
1927
1935
  --rs-iconbtn-primary-activated-addon:var(--rs-violet-800);
1928
1936
  --rs-iconbtn-primary-pressed-addon:var(--rs-violet-900);
1929
1937
  }
1930
- [data-theme=dark] .rs-btn-violet, .rs-theme-dark .rs-btn-violet{
1938
+ [data-theme=dark] .rs-btn[data-color=violet], .rs-theme-dark .rs-btn[data-color=violet]{
1931
1939
  --rs-btn-primary-bg:var(--rs-violet-700);
1932
1940
  --rs-btn-primary-hover-bg:var(--rs-violet-500);
1933
1941
  --rs-btn-primary-active-bg:var(--rs-violet-400);
@@ -1949,7 +1957,7 @@ body{
1949
1957
  --rs-iconbtn-primary-activated-addon:var(--rs-violet-400);
1950
1958
  --rs-iconbtn-primary-pressed-addon:var(--rs-violet-300);
1951
1959
  }
1952
- [data-theme=high-contrast] .rs-btn-violet, .rs-theme-high-contrast .rs-btn-violet{
1960
+ [data-theme=high-contrast] .rs-btn[data-color=violet], .rs-theme-high-contrast .rs-btn[data-color=violet]{
1953
1961
  --rs-btn-primary-bg:var(--rs-violet-700);
1954
1962
  --rs-btn-primary-hover-bg:var(--rs-violet-600);
1955
1963
  --rs-btn-primary-active-bg:var(--rs-violet-400);
@@ -1968,20 +1976,20 @@ body{
1968
1976
  --rs-btn-link-active-text:var(--rs-violet-200);
1969
1977
  }
1970
1978
 
1971
- .rs-btn-block{
1979
+ .rs-btn[data-block=true]{
1972
1980
  width:100%;
1973
1981
  }
1974
- .rs-btn-block + .rs-btn-block{
1982
+ .rs-btn[data-block=true] + .rs-btn[data-block=true]{
1975
1983
  margin-top:5px;
1976
1984
  }
1977
1985
 
1978
- .rs-btn-loading{
1986
+ .rs-btn[data-loading=true]{
1979
1987
  color:transparent !important;
1980
1988
  position:relative;
1981
1989
  cursor:default;
1982
1990
  pointer-events:none;
1983
1991
  }
1984
- .rs-btn-loading > .rs-btn-spin::before, .rs-btn-loading > .rs-btn-spin::after{
1992
+ .rs-btn[data-loading=true] > .rs-btn-spin::before, .rs-btn[data-loading=true] > .rs-btn-spin::after{
1985
1993
  content:"";
1986
1994
  position:absolute;
1987
1995
  width:var(--rs-btn-loading-spin-default-diameter);
@@ -1994,29 +2002,29 @@ body{
1994
2002
  border-radius:var(--rs-radius-full);
1995
2003
  z-index:1;
1996
2004
  }
1997
- .rs-btn-xs .rs-btn-loading > .rs-btn-spin::before, .rs-btn-xs .rs-btn-loading > .rs-btn-spin::after{
2005
+ .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{
1998
2006
  width:var(--rs-btn-loading-spin-xs-diameter);
1999
2007
  height:var(--rs-btn-loading-spin-xs-diameter);
2000
2008
  }
2001
- .rs-btn-loading > .rs-btn-spin::before{
2009
+ .rs-btn[data-loading=true] > .rs-btn-spin::before{
2002
2010
  border:var(--rs-btn-loading-spin-ring-wide) solid var(--rs-loader-ring);
2003
2011
  }
2004
- .rs-btn-primary .rs-btn-loading > .rs-btn-spin::before{
2012
+ .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::before{
2005
2013
  border-color:rgba(248, 247, 250, 0.3);
2006
2014
  }
2007
- [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{
2015
+ [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{
2008
2016
  border-color:var(--rs-loader-ring-inverse);
2009
2017
  }
2010
- .rs-btn-loading > .rs-btn-spin::after{
2018
+ .rs-btn[data-loading=true] > .rs-btn-spin::after{
2011
2019
  border-width:var(--rs-btn-loading-spin-ring-wide);
2012
2020
  border-color:var(--rs-loader-rotor) transparent transparent;
2013
2021
  border-style:solid;
2014
2022
  animation:buttonSpin 0.6s infinite linear;
2015
2023
  }
2016
- .rs-btn-primary .rs-btn-loading > .rs-btn-spin::after{
2024
+ .rs-btn[data-appearance=primary] .rs-btn[data-loading=true] > .rs-btn-spin::after{
2017
2025
  border-top-color:#fff;
2018
2026
  }
2019
- [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{
2027
+ [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{
2020
2028
  border-top-color:var(--rs-loader-rotor-inverse);
2021
2029
  }
2022
2030
  @keyframes buttonSpin{
@@ -2036,14 +2044,14 @@ body{
2036
2044
  font-size:var(--rs-btn-icon-size);
2037
2045
  vertical-align:bottom;
2038
2046
  }
2039
- .rs-btn-icon:not(.rs-btn-icon-with-text){
2047
+ .rs-btn-icon:not([data-with-text]){
2040
2048
  width:var(--rs-btn-size);
2041
2049
  }
2042
- .rs-btn-icon.rs-btn-icon-circle{
2050
+ .rs-btn-icon[data-shape=circle]{
2043
2051
  border-radius:var(--rs-radius-full);
2044
2052
  }
2045
2053
 
2046
- .rs-btn-icon-with-text > .rs-icon{
2054
+ .rs-btn-icon[data-with-text] > .rs-icon{
2047
2055
  position:absolute;
2048
2056
  top:0;
2049
2057
  display:block;
@@ -2053,45 +2061,45 @@ body{
2053
2061
  height:var(--rs-btn-size);
2054
2062
  padding:calc((var(--rs-btn-size) - var(--rs-btn-icon-size)) / 2);
2055
2063
  }
2056
- .rs-btn-icon-with-text.rs-btn-icon-placement-left{
2064
+ .rs-btn-icon[data-with-text]:where([data-placement=start], [data-placement=left]){
2057
2065
  padding-inline-start:calc(var(--rs-btn-padding-inline) + var(--rs-btn-size));
2058
2066
  }
2059
- .rs-btn-icon-with-text.rs-btn-icon-placement-left > .rs-icon{
2067
+ .rs-btn-icon[data-with-text]:where([data-placement=start], [data-placement=left]) > .rs-icon{
2060
2068
  inset-inline-start:0;
2061
2069
  border-right-width:1px;
2062
2070
  }
2063
- .rs-btn-icon-with-text.rs-btn-icon-placement-right{
2071
+ .rs-btn-icon[data-with-text]:where([data-placement=end], [data-placement=right]){
2064
2072
  padding-inline-end:calc(var(--rs-btn-padding-inline) + var(--rs-btn-size));
2065
2073
  }
2066
- .rs-btn-icon-with-text.rs-btn-icon-placement-right > .rs-icon{
2074
+ .rs-btn-icon[data-with-text]:where([data-placement=end], [data-placement=right]) > .rs-icon{
2067
2075
  inset-inline-end:0;
2068
2076
  }
2069
- .rs-btn-icon-with-text:hover > .rs-icon{
2077
+ .rs-btn-icon[data-with-text]:hover > .rs-icon{
2070
2078
  background-color:var(--rs-iconbtn-activated-addon);
2071
2079
  }
2072
- .rs-btn-icon-with-text:active > .rs-icon, .rs-btn-icon-with-text.rs-btn-active > .rs-icon{
2080
+ .rs-btn-icon[data-with-text]:active > .rs-icon, .rs-btn-icon[data-with-text].rs-btn[data-active=true] > .rs-icon{
2073
2081
  background-color:var(--rs-iconbtn-pressed-addon);
2074
2082
  }
2075
- .rs-btn-icon-with-text:disabled > .rs-icon, .rs-btn-icon-with-text.rs-btn-disabled > .rs-icon{
2083
+ .rs-btn-icon[data-with-text]:disabled > .rs-icon, .rs-btn-icon[data-with-text].rs-btn[data-disabled=true] > .rs-icon{
2076
2084
  background-color:var(--rs-iconbtn-addon);
2077
2085
  }
2078
- [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{
2086
+ [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]{
2079
2087
  border-color:var(--rs-btn-default-disabled-border-color);
2080
2088
  }
2081
2089
 
2082
- .rs-btn-icon-with-text.rs-btn-primary > .rs-icon{
2090
+ .rs-btn-icon[data-with-text][data-appearance=primary] > .rs-icon{
2083
2091
  background-color:var(--rs-iconbtn-primary-addon);
2084
2092
  }
2085
- .rs-btn-icon-with-text.rs-btn-primary:hover > .rs-icon{
2093
+ .rs-btn-icon[data-with-text][data-appearance=primary]:hover > .rs-icon{
2086
2094
  background-color:var(--rs-iconbtn-primary-activated-addon);
2087
2095
  }
2088
- .rs-btn-icon-with-text.rs-btn-primary:active > .rs-icon, .rs-btn-icon-with-text.rs-btn-primary.rs-btn-active > .rs-icon{
2096
+ .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{
2089
2097
  background-color:var(--rs-iconbtn-primary-pressed-addon);
2090
2098
  }
2091
- .rs-btn-icon-with-text.rs-btn-primary:disabled > .rs-icon, .rs-btn-icon-with-text.rs-btn-primary.rs-btn-disabled > .rs-icon{
2099
+ .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{
2092
2100
  background-color:var(--rs-iconbtn-primary-addon);
2093
2101
  }
2094
- [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{
2102
+ [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]{
2095
2103
  border-color:var(--rs-btn-default-disabled-border-color);
2096
2104
  }
2097
2105
 
@@ -2167,7 +2175,7 @@ body{
2167
2175
  }
2168
2176
  .rs-picker-toggle-active, .rs-picker.rs-picker-focused{
2169
2177
  --rs-picker-toggle-border-color:var(--rs-input-focus-border);
2170
- outline:2px solid var(--rs-color-focus-ring);
2178
+ outline:2px solid var(--rs-focus-ring-color);
2171
2179
  outline-offset:-1px;
2172
2180
  }
2173
2181
  .rs-picker-label.rs-input-group-addon{
@@ -2328,18 +2336,18 @@ body{
2328
2336
  background-color:var(--rs-input-bg);
2329
2337
  outline:none;
2330
2338
  }
2331
- .rs-picker-toggle.rs-btn-lg .rs-picker-toggle-textbox{
2339
+ .rs-picker-toggle-textbox:where([readonly]){
2340
+ opacity:0;
2341
+ }
2342
+ .rs-picker-toggle:where([data-size=lg]) .rs-picker-toggle-textbox{
2332
2343
  padding-inline-start:14px;
2333
2344
  }
2334
- .rs-picker-toggle.rs-btn-sm .rs-picker-toggle-textbox{
2345
+ .rs-picker-toggle:where([data-size=sm]) .rs-picker-toggle-textbox{
2335
2346
  padding-inline-start:8px;
2336
2347
  }
2337
- .rs-picker-toggle.rs-btn-xs .rs-picker-toggle-textbox{
2348
+ .rs-picker-toggle:where([data-size=xs]) .rs-picker-toggle-textbox{
2338
2349
  padding-inline-start:6px;
2339
2350
  }
2340
- .rs-picker-toggle-read-only{
2341
- opacity:0;
2342
- }
2343
2351
  .rs-picker-toggle .rs-picker[data-variant=default], .rs-picker-toggle{
2344
2352
  transition:var(--rs-picker-transition);
2345
2353
  }
@@ -2354,22 +2362,10 @@ body{
2354
2362
  background-color:transparent;
2355
2363
  transition:none;
2356
2364
  }
2357
- .rs-picker[data-variant=subtle] .rs-picker-toggle:hover{
2365
+ .rs-picker[data-variant=subtle] .rs-picker-toggle:hover,.rs-picker[data-variant=subtle] .rs-picker-toggle-active{
2358
2366
  color:var(--rs-btn-subtle-hover-text);
2359
2367
  background-color:var(--rs-btn-subtle-hover-bg);
2360
2368
  }
2361
- .rs-picker[data-variant=subtle] .rs-picker-toggle:active, .rs-picker[data-variant=subtle] .rs-picker-toggle.rs-btn-active{
2362
- color:var(--rs-btn-subtle-active-text);
2363
- background-color:var(--rs-btn-subtle-active-bg);
2364
- }
2365
- .rs-picker[data-variant=subtle] .rs-picker-toggle:disabled, .rs-picker[data-variant=subtle] .rs-picker-toggle.rs-btn-disabled{
2366
- color:var(--rs-btn-subtle-disabled-text);
2367
- background:none;
2368
- }
2369
- .rs-picker[data-variant=subtle] .rs-picker-toggle-active{
2370
- background-color:var(--rs-btn-subtle-hover-bg);
2371
- color:var(--rs-btn-subtle-hover-text);
2372
- }
2373
2369
  .rs-picker-toggle[data-size=lg] .rs-picker-clean .rs-icon{
2374
2370
  width:16px;
2375
2371
  height:16px;
@@ -2443,7 +2439,7 @@ body{
2443
2439
  color:var(--rs-listbox-option-hover-text);
2444
2440
  }
2445
2441
  [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{
2446
- outline:2px solid var(--rs-color-focus-ring);
2442
+ outline:2px solid var(--rs-focus-ring-color);
2447
2443
  outline-offset:-1px;
2448
2444
  outline-offset:-3px;
2449
2445
  outline-width:2px;