@recursica/mui-adapter 0.18.1 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/mui-adapter.cjs +172 -23
  3. package/dist/mui-adapter.cjs.map +1 -1
  4. package/dist/mui-adapter.css +1 -1
  5. package/dist/mui-adapter.js +12963 -4695
  6. package/dist/mui-adapter.js.map +1 -1
  7. package/dist/src/components/Tree/Tree.d.ts +9 -5
  8. package/package.json +6 -1
  9. package/src/components/Accordion/Accordion.module.css +98 -62
  10. package/src/components/Autocomplete/Autocomplete.module.css +50 -47
  11. package/src/components/Autocomplete/Autocomplete.tsx +2 -2
  12. package/src/components/Avatar/Avatar.module.css +7 -7
  13. package/src/components/Badge/Badge.module.css +8 -8
  14. package/src/components/Button/Button.module.css +25 -43
  15. package/src/components/Card/Card.module.css +3 -3
  16. package/src/components/Checkbox/Checkbox.module.css +57 -16
  17. package/src/components/Chip/Chip.module.css +32 -20
  18. package/src/components/Dropdown/Dropdown.module.css +47 -44
  19. package/src/components/Dropdown/Dropdown.tsx +2 -2
  20. package/src/components/FormControlWrapper/FormControlWrapper.module.css +12 -12
  21. package/src/components/HoverCard/HoverCard.module.css +1 -1
  22. package/src/components/Label/Label.module.css +20 -3
  23. package/src/components/Link/Link.module.css +18 -71
  24. package/src/components/Loader/Loader.module.css +3 -3
  25. package/src/components/Menu/Menu.module.css +33 -41
  26. package/src/components/Modal/Modal.module.css +27 -11
  27. package/src/components/NumberInput/NumberInput.module.css +39 -37
  28. package/src/components/NumberInput/NumberInput.tsx +2 -2
  29. package/src/components/Pagination/Pagination.module.css +10 -43
  30. package/src/components/Panel/Panel.module.css +3 -3
  31. package/src/components/Radio/Radio.module.css +32 -15
  32. package/src/components/ReadOnlyField/ReadOnlyField.module.css +1 -1
  33. package/src/components/SegmentedControl/SegmentedControl.module.css +37 -29
  34. package/src/components/Slider/Slider.module.css +51 -35
  35. package/src/components/Stepper/Stepper.module.css +3 -3
  36. package/src/components/Switch/Switch.module.css +27 -11
  37. package/src/components/Tabs/Tabs.module.css +309 -166
  38. package/src/components/TextArea/TextArea.module.css +36 -21
  39. package/src/components/TextArea/TextArea.tsx +2 -2
  40. package/src/components/TextField/TextField.module.css +38 -33
  41. package/src/components/TextField/TextField.tsx +2 -2
  42. package/src/components/Timeline/IMPLEMENTATION_NOTES.md +5 -0
  43. package/src/components/Timeline/Timeline.module.css +35 -34
  44. package/src/components/Toast/Toast.module.css +24 -11
  45. package/src/components/Tooltip/Tooltip.module.css +4 -2
  46. package/src/components/Tree/IMPLEMENTATION_NOTES.md +21 -0
  47. package/src/components/Tree/Tree.module.css +204 -39
  48. package/src/components/Tree/Tree.stories.tsx +81 -4
  49. package/src/components/Tree/Tree.tsx +214 -13
  50. package/src/components/Tree/USAGE.md +40 -3
@@ -120,8 +120,8 @@ export const Dropdown = forwardRef<HTMLInputElement, DropdownProps>(
120
120
  <WithReadOnlyWrapper
121
121
  className={wrapperClass}
122
122
  style={injectedStyles}
123
- controlMaxWidth="var(--recursica_ui-kit_components_dropdown_properties_max-width)"
124
- controlMinWidth="var(--recursica_ui-kit_components_dropdown_properties_min-width)"
123
+ controlMaxWidth="var(--dropdown-control-max-width)"
124
+ controlMinWidth="var(--dropdown-control-min-width)"
125
125
  overStyled={overStyled as true}
126
126
  formLayout={formLayout}
127
127
  labelSize={labelSize}
@@ -10,28 +10,29 @@
10
10
 
11
11
  /* Global Form Field Colors */
12
12
  --form-field-background: var(
13
- --recursica_ui-kit_globals_form_field_colors_background
13
+ --recursica_ui-kit_globals_form_field_colors_background-color
14
14
  );
15
15
  --form-field-background-read-only: var(
16
- --recursica_ui-kit_globals_form_field_colors_background-read-only
16
+ --recursica_ui-kit_globals_form_field_colors_background-color-read-only
17
17
  );
18
- --form-field-border: var(--recursica_ui-kit_globals_form_field_colors_border);
19
- --form-field-border-error: var(
20
- --recursica_ui-kit_globals_form_field_colors_border-error
18
+ --form-field-border: var(
19
+ --recursica_ui-kit_globals_form_field_colors_border-color
21
20
  );
22
- --form-field-border-focus: var(
23
- --recursica_ui-kit_globals_form_field_colors_border-focus
21
+ --form-field-border-error: var(
22
+ --recursica_ui-kit_globals_form_field_colors_error-border-color
24
23
  );
25
24
  --form-field-border-selected: var(
26
25
  --recursica_ui-kit_globals_form_field_colors_border-selected
27
26
  );
28
27
  --form-field-disabled-background: var(
29
- --recursica_ui-kit_globals_form_field_colors_disabled-background
28
+ --recursica_ui-kit_globals_form_field_colors_disabled-background-color
30
29
  );
31
30
  --form-field-disabled-text: var(
32
31
  --recursica_ui-kit_globals_form_field_colors_disabled-text
33
32
  );
34
- --form-field-icon: var(--recursica_ui-kit_globals_form_field_colors_icon);
33
+ --form-field-icon: var(
34
+ --recursica_ui-kit_globals_form_field_colors_icon-color
35
+ );
35
36
  --form-field-placeholder-text-opacity: var(
36
37
  --recursica_ui-kit_globals_form_field_colors_placeholder-text-opacity
37
38
  );
@@ -40,15 +41,14 @@
40
41
  );
41
42
 
42
43
  /* Global Form Field Geometric Sizes */
44
+ /* No focus-specific border-color/border-size tokens exist anymore; components use the generic
45
+ --recursica_brand_states_focus_* ring tokens directly instead (see e.g. TextField.module.css). */
43
46
  --form-field-border-radius: var(
44
47
  --recursica_ui-kit_globals_form_field_size_border-radius
45
48
  );
46
49
  --form-field-border-size-default: var(
47
50
  --recursica_ui-kit_globals_form_field_size_border-size-default
48
51
  );
49
- --form-field-border-size-focus: var(
50
- --recursica_ui-kit_globals_form_field_size_border-size-focus
51
- );
52
52
  --form-field-horizontal-padding: var(
53
53
  --recursica_ui-kit_globals_form_field_size_horizontal-padding
54
54
  );
@@ -19,7 +19,7 @@
19
19
 
20
20
  .dropdown {
21
21
  background-color: var(
22
- --recursica_ui-kit_components_hover-card-popover_properties_colors_background
22
+ --recursica_ui-kit_components_hover-card-popover_properties_colors_background-color
23
23
  );
24
24
  border-style: solid; /* HARDCODE: Mantine Paper does not set border-style natively */
25
25
  border-width: var(
@@ -1,3 +1,9 @@
1
+ /* EXEMPTIONS:
2
+ - layouts_stacked sizes width variables are ignored because stacked labels naturally occupy 100% width block-level
3
+ real estate in HTML rendering, making explicit width properties redundant. Mirrors the mantine-adapter reference. */
4
+ /* recursica-ignore: --recursica_ui-kit_components_label_variants_layouts_stacked_variants_sizes_default_properties_width */
5
+ /* recursica-ignore: --recursica_ui-kit_components_label_variants_layouts_stacked_variants_sizes_small_properties_width */
6
+
1
7
  .root {
2
8
  /* Prevent default MUI absolute positioning logic */
3
9
  position: relative;
@@ -37,7 +43,7 @@
37
43
  --recursica_ui-kit_components_label_properties_label-text_text-transform
38
44
  );
39
45
 
40
- color: var(--recursica_ui-kit_components_label_properties_colors_text);
46
+ color: var(--recursica_ui-kit_components_label_properties_colors_text-color);
41
47
  }
42
48
 
43
49
  .innerLayout {
@@ -56,7 +62,9 @@
56
62
 
57
63
  .required {
58
64
  /* Override the `.MuiInputLabel-asterisk` natively */
59
- color: var(--recursica_ui-kit_components_label_properties_colors_asterisk);
65
+ color: var(
66
+ --recursica_ui-kit_components_label_properties_colors_asterisk-color
67
+ );
60
68
  margin-left: var(
61
69
  --recursica_ui-kit_components_label_properties_required-indicator-gap
62
70
  );
@@ -70,7 +78,7 @@
70
78
  We explicitly override this bleed to prevent the main label text from turning red,
71
79
  while allowing the asterisk to take the error color! */
72
80
  .root:global(.Mui-error) {
73
- color: var(--recursica_ui-kit_components_label_properties_colors_text);
81
+ color: var(--recursica_ui-kit_components_label_properties_colors_text-color);
74
82
  }
75
83
  .root:global(.Mui-error) .required {
76
84
  color: var(
@@ -112,11 +120,17 @@
112
120
  text-transform: var(
113
121
  --recursica_ui-kit_components_label_properties_optional-text_text-transform
114
122
  );
123
+ opacity: var(
124
+ --recursica_ui-kit_components_label_properties_optional-text-opacity
125
+ );
115
126
  }
116
127
 
117
128
  .actionArea {
118
129
  display: flex;
119
130
  align-items: center;
131
+ margin-left: var(
132
+ --recursica_ui-kit_components_label_properties_edit-icon-gap
133
+ );
120
134
  }
121
135
 
122
136
  .editIcon {
@@ -127,6 +141,9 @@
127
141
  background: none;
128
142
  border: none;
129
143
  padding: 0;
144
+ margin-left: var(
145
+ --recursica_ui-kit_components_label_properties_edit-icon-gap
146
+ );
130
147
 
131
148
  width: 16px;
132
149
  height: 16px;
@@ -1,4 +1,9 @@
1
- /*
1
+ /* EXEMPTIONS:
2
+ - text_text-transform is ignored because links naturally inherit casing directly from text
3
+ children rather than requiring custom CSS transforms. Mirrors the mantine-adapter reference. */
4
+ /* recursica-ignore: --recursica_ui-kit_components_link_properties_text_text-transform */
5
+
6
+ /*
2
7
  HARDCODED VALUES:
3
8
  - display: inline-flex; (Base layout to align icon and text correctly)
4
9
  - align-items: center;
@@ -16,31 +21,27 @@ HARDCODED VALUES:
16
21
  text-decoration: none;
17
22
  color: inherit;
18
23
 
19
- /* Typography Default Tokens */
24
+ /* Typography Tokens */
20
25
  font-family: var(
21
26
  --recursica_ui-kit_components_link_properties_text_font-family
22
27
  );
23
28
  font-size: var(--recursica_ui-kit_components_link_properties_text_font-size);
29
+ font-style: var(
30
+ --recursica_ui-kit_components_link_properties_text_font-style
31
+ );
32
+ font-weight: var(
33
+ --recursica_ui-kit_components_link_properties_text_font-weight
34
+ );
24
35
  letter-spacing: var(
25
36
  --recursica_ui-kit_components_link_properties_text_letter-spacing
26
37
  );
27
38
  line-height: var(
28
39
  --recursica_ui-kit_components_link_properties_text_line-height
29
40
  );
30
-
31
- /* Default State Tokens */
32
- font-style: var(
33
- --recursica_ui-kit_components_link_variants_states_default_properties_text_font-style
34
- );
35
- font-weight: var(
36
- --recursica_ui-kit_components_link_variants_states_default_properties_text_font-weight
37
- );
38
41
  text-decoration: var(
39
- --recursica_ui-kit_components_link_variants_states_default_properties_text_text-decoration
40
- );
41
- color: var(
42
- --recursica_ui-kit_components_link_variants_states_default_properties_colors_text
42
+ --recursica_ui-kit_components_link_properties_text_text-decoration
43
43
  );
44
+ color: var(--recursica_ui-kit_components_link_properties_colors_text-color);
44
45
  }
45
46
 
46
47
  .root[data-has-icon] {
@@ -49,49 +50,9 @@ HARDCODED VALUES:
49
50
  gap: var(--recursica_ui-kit_components_link_properties_icon-text-gap);
50
51
  }
51
52
 
52
- .root:hover {
53
- /* Reset Mantine's potential hover override */
54
- text-decoration: var(
55
- --recursica_ui-kit_components_link_variants_states_hover_properties_text_text-decoration
56
- );
57
- font-style: var(
58
- --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-style
59
- );
60
- font-weight: var(
61
- --recursica_ui-kit_components_link_variants_states_hover_properties_text_font-weight
62
- );
63
- color: var(
64
- --recursica_ui-kit_components_link_variants_states_hover_properties_colors_text
65
- );
66
- }
67
-
68
53
  .root:visited {
69
- text-decoration: var(
70
- --recursica_ui-kit_components_link_variants_states_visited_properties_text_text-decoration
71
- );
72
- font-style: var(
73
- --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-style
74
- );
75
- font-weight: var(
76
- --recursica_ui-kit_components_link_variants_states_visited_properties_text_font-weight
77
- );
78
- color: var(
79
- --recursica_ui-kit_components_link_variants_states_visited_properties_colors_text
80
- );
81
- }
82
-
83
- .root:visited:hover {
84
- text-decoration: var(
85
- --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_text-decoration
86
- );
87
- font-style: var(
88
- --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-style
89
- );
90
- font-weight: var(
91
- --recursica_ui-kit_components_link_variants_states_visited-hover_properties_text_font-weight
92
- );
93
54
  color: var(
94
- --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_text
55
+ --recursica_ui-kit_components_link_variants_states_visited_properties_colors_text-color
95
56
  );
96
57
  }
97
58
 
@@ -104,26 +65,12 @@ HARDCODED VALUES:
104
65
 
105
66
  width: var(--recursica_ui-kit_components_link_properties_icon-size);
106
67
  height: var(--recursica_ui-kit_components_link_properties_icon-size);
107
- color: var(
108
- --recursica_ui-kit_components_link_variants_states_default_properties_colors_icon
109
- );
110
- }
111
-
112
- .root:hover .iconWrapper {
113
- color: var(
114
- --recursica_ui-kit_components_link_variants_states_hover_properties_colors_icon
115
- );
68
+ color: var(--recursica_ui-kit_components_link_properties_colors_icon-color);
116
69
  }
117
70
 
118
71
  .root:visited .iconWrapper {
119
72
  color: var(
120
- --recursica_ui-kit_components_link_variants_states_visited_properties_colors_icon
121
- );
122
- }
123
-
124
- .root:visited:hover .iconWrapper {
125
- color: var(
126
- --recursica_ui-kit_components_link_variants_states_visited-hover_properties_colors_icon
73
+ --recursica_ui-kit_components_link_variants_states_visited_properties_colors_icon-color
127
74
  );
128
75
  }
129
76
 
@@ -19,7 +19,7 @@
19
19
  }
20
20
  .root[data-size="small"][data-variant="oval"] {
21
21
  --loader-thickness: var(
22
- --recursica_ui-kit_components_loader_variants_sizes_small_properties_thickness
22
+ --recursica_ui-kit_components_loader_variants_sizes_small_properties_thickness-size
23
23
  );
24
24
  }
25
25
  .root[data-size="small"]:not([data-variant="oval"]) span {
@@ -36,7 +36,7 @@
36
36
  }
37
37
  .root[data-size="default"][data-variant="oval"] {
38
38
  --loader-thickness: var(
39
- --recursica_ui-kit_components_loader_variants_sizes_default_properties_thickness
39
+ --recursica_ui-kit_components_loader_variants_sizes_default_properties_thickness-size
40
40
  );
41
41
  }
42
42
  .root[data-size="default"]:not([data-variant="oval"]) span {
@@ -53,7 +53,7 @@
53
53
  }
54
54
  .root[data-size="large"][data-variant="oval"] {
55
55
  --loader-thickness: var(
56
- --recursica_ui-kit_components_loader_variants_sizes_large_properties_thickness
56
+ --recursica_ui-kit_components_loader_variants_sizes_large_properties_thickness-size
57
57
  );
58
58
  }
59
59
  .root[data-size="large"]:not([data-variant="oval"]) span {
@@ -1,16 +1,17 @@
1
1
  /* EXEMPTIONS:
2
- - colors_selected-item_supporting-text-color is ignored because selected menu items do not render
3
- supporting secondary text, making selected state overrides for supporting text colors obsolete. */
4
- /* recursica-ignore: --recursica_ui-kit_components_menu-item_properties_colors_selected-item_supporting-text-color */
2
+ - colors_supporting-text-color (selected variant) is ignored because selected menu items do not render
3
+ supporting secondary text, making the selected-state override for supporting text colors obsolete. */
4
+ /* recursica-ignore: --recursica_ui-kit_components_menu-item_variants_selection-states_selected_properties_colors_supporting-text-color */
5
5
 
6
6
  /* HARDCODED VALUES:
7
7
  - border-style: solid. Structural rendering rule for the dropdown border (Mantine uses Paper which may not set border natively).
8
- - opacity: 0.5 on disabled items. Recursica has no dedicated disabled-opacity token for menu items.
9
8
  - NOTE: overflow is intentionally NOT set on .dropdown. Mantine renders sub-menu dropdowns
10
9
  inside the parent dropdown DOM tree using Floating UI absolute positioning. Setting
11
10
  overflow: hidden clips sub-menus; overflow-y: auto causes unwanted scrollbars.
12
11
  - All structural layout (flex, cursor, pointer-events on disabled) is deferred to Mantine's
13
12
  native behavior. We only override visual design tokens (colors, typography, spacing, borders).
13
+ - Hover overlay: the schema no longer provides per-item hover-color/hover-opacity tokens; the
14
+ overlay now uses the generic --recursica_brand_states_hover_* tokens shared across components.
14
15
  */
15
16
 
16
17
  /* ======================================
@@ -19,7 +20,7 @@
19
20
 
20
21
  .dropdown {
21
22
  background-color: var(
22
- --recursica_ui-kit_components_menu_properties_colors_background
23
+ --recursica_ui-kit_components_menu_properties_colors_background-color
23
24
  );
24
25
  border-style: solid; /* HARDCODE: Mantine Paper does not set border-style natively */
25
26
  border-width: var(--recursica_ui-kit_components_menu_properties_border-size);
@@ -34,10 +35,7 @@
34
35
  min-width: var(--recursica_ui-kit_components_menu_properties_min-width);
35
36
  max-height: var(--recursica_ui-kit_components_menu_properties_max-height);
36
37
  max-width: var(--recursica_ui-kit_components_menu_properties_max-width);
37
-
38
- /* HARDCODE: Figma UI Kit does not export padding tokens for the Menu container itself.
39
- If added in the future, it would be mapped here. */
40
- padding: 8px;
38
+ padding: var(--recursica_ui-kit_components_menu_properties_padding);
41
39
  }
42
40
 
43
41
  /* ======================================
@@ -55,6 +53,7 @@
55
53
  border-radius: var(
56
54
  --recursica_ui-kit_components_menu-item_properties_border-radius
57
55
  );
56
+ margin-bottom: var(--recursica_ui-kit_components_menu_properties_item-gap);
58
57
 
59
58
  /* Typography */
60
59
  font-family: var(
@@ -84,22 +83,27 @@
84
83
 
85
84
  /* Default State: Unselected */
86
85
  background-color: var(
87
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_background
86
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_background-color
88
87
  );
89
88
  color: var(
90
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_text
89
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_text-color
91
90
  );
92
91
  opacity: 1;
93
92
  }
93
+ .item:last-of-type {
94
+ margin-bottom: 0;
95
+ }
94
96
 
95
97
  /* Override Mantine's native hover background to use our overlay technique */
96
98
  .item:hover {
97
99
  background-color: var(
98
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_background
100
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_background-color
99
101
  );
100
102
  }
101
103
 
102
- /* Hover overlay using ::after pseudo-element (same technique as Accordion) */
104
+ /* Hover overlay using ::after pseudo-element (same technique as Accordion); no per-item
105
+ hover-color/hover-opacity tokens exist anymore, so this uses the generic overlay tokens
106
+ uniformly regardless of selection state. */
103
107
  .item::after {
104
108
  content: "";
105
109
  position: absolute;
@@ -107,58 +111,46 @@
107
111
  border-radius: inherit;
108
112
  z-index: 0;
109
113
  pointer-events: none;
110
- background-color: var(
111
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_hover-color
112
- );
114
+ background-color: var(--recursica_brand_states_hover_color);
113
115
  opacity: 0;
114
116
  transition: opacity 150ms ease;
115
117
  }
116
118
 
117
119
  .item:hover:not([data-disabled])::after {
118
- opacity: var(
119
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_hover-opacity
120
- );
120
+ opacity: var(--recursica_brand_states_hover_opacity);
121
121
  }
122
122
 
123
123
  /* Selected item state */
124
124
  .item[data-selected] {
125
125
  background-color: var(
126
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_background
126
+ --recursica_ui-kit_components_menu-item_variants_selection-states_selected_properties_colors_background-color
127
127
  );
128
128
  color: var(
129
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_text
129
+ --recursica_ui-kit_components_menu-item_variants_selection-states_selected_properties_colors_text-color
130
130
  );
131
131
  opacity: 1;
132
132
  }
133
133
 
134
- .item[data-selected]::after {
135
- background-color: var(
136
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_hover-color
137
- );
138
- }
139
-
140
134
  /* Hovered item state (keyboard navigation) */
141
135
  .item[data-hovered] {
142
136
  background-color: var(
143
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_background
137
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_background-color
144
138
  );
145
139
  }
146
140
  .item[data-hovered]::after {
147
- opacity: var(
148
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_hover-opacity
149
- );
141
+ opacity: var(--recursica_brand_states_hover_opacity);
150
142
  }
151
143
 
152
- .item[data-hovered][data-selected]::after {
144
+ /* Disabled item (opacity differs depending on selection state) */
145
+ .item[data-disabled]:not([data-selected]) {
153
146
  opacity: var(
154
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_hover-opacity
147
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_variants_states_disabled_properties_opacity
155
148
  );
156
149
  }
157
150
 
158
- /* Disabled item */
159
- .item[data-disabled] {
151
+ .item[data-disabled][data-selected] {
160
152
  opacity: var(
161
- --recursica_ui-kit_components_menu-item_properties_disabled-opacity
153
+ --recursica_ui-kit_components_menu-item_variants_selection-states_selected_variants_states_disabled_properties_opacity
162
154
  );
163
155
  }
164
156
 
@@ -192,7 +184,7 @@
192
184
  --recursica_ui-kit_components_menu-item_properties_icon-text-gap
193
185
  );
194
186
  color: var(
195
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_leading-icon-color
187
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_leading-icon-color
196
188
  );
197
189
  }
198
190
 
@@ -205,19 +197,19 @@
205
197
  );
206
198
  margin-left: var(--recursica_ui-kit_components_menu-item_properties_text-gap);
207
199
  color: var(
208
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_trailing-icon-color
200
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_trailing-icon-color
209
201
  );
210
202
  }
211
203
 
212
204
  .item[data-selected] .itemSection[data-position="left"] {
213
205
  color: var(
214
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_leading-icon-color
206
+ --recursica_ui-kit_components_menu-item_variants_selection-states_selected_properties_colors_leading-icon-color
215
207
  );
216
208
  }
217
209
 
218
210
  .item[data-selected] .itemSection[data-position="right"] {
219
211
  color: var(
220
- --recursica_ui-kit_components_menu-item_properties_colors_selected-item_trailing-icon-color
212
+ --recursica_ui-kit_components_menu-item_variants_selection-states_selected_properties_colors_trailing-icon-color
221
213
  );
222
214
  }
223
215
 
@@ -271,7 +263,7 @@
271
263
  );
272
264
 
273
265
  color: var(
274
- --recursica_ui-kit_components_menu-item_properties_colors_unselected-item_supporting-text-color
266
+ --recursica_ui-kit_components_menu-item_variants_selection-states_unselected_properties_colors_supporting-text-color
275
267
  );
276
268
  opacity: 0.7;
277
269
  }
@@ -1,9 +1,13 @@
1
1
  /* EXEMPTIONS:
2
- - content-style and header-style parent variables represent raw JSON styling objects rather than
2
+ - content-style and header-style parent variables represent raw JSON styling objects rather than
3
3
  direct CSS variables and cannot be applied directly in standard CSS files.
4
- Sub-properties are fully and individually mapped to elements natively. */
4
+ Sub-properties are fully and individually mapped to elements natively.
5
+ - header/footer background-color are ignored because .header/.footer are intentionally
6
+ transparent (inheriting .content's background), matching Panel's header/footer treatment. */
5
7
  /* recursica-ignore: --recursica_ui-kit_components_modal_properties_content-style */
6
8
  /* recursica-ignore: --recursica_ui-kit_components_modal_properties_header-style */
9
+ /* recursica-ignore: --recursica_ui-kit_components_modal_properties_colors_footer-background-color */
10
+ /* recursica-ignore: --recursica_ui-kit_components_modal_properties_colors_header-background-color */
7
11
 
8
12
  .root {
9
13
  }
@@ -37,7 +41,7 @@
37
41
 
38
42
  /* Appearance */
39
43
  background-color: var(
40
- --recursica_ui-kit_components_modal_properties_colors_background
44
+ --recursica_ui-kit_components_modal_properties_colors_content-background-color
41
45
  );
42
46
  box-shadow: var(--recursica_ui-kit_components_modal_properties_elevation);
43
47
 
@@ -47,8 +51,12 @@
47
51
  }
48
52
 
49
53
  .header {
50
- padding: var(--recursica_ui-kit_components_modal_properties_vertical-padding)
51
- var(--recursica_ui-kit_components_modal_properties_horizontal-padding);
54
+ padding: var(
55
+ --recursica_ui-kit_components_modal_properties_header-footer-vertical-padding
56
+ )
57
+ var(
58
+ --recursica_ui-kit_components_modal_properties_header-footer-horizontal-padding
59
+ );
52
60
  background-color: transparent; /* Inherit from content */
53
61
  }
54
62
 
@@ -93,8 +101,12 @@
93
101
  }
94
102
 
95
103
  .scrollArea {
96
- padding: var(--recursica_ui-kit_components_modal_properties_vertical-padding)
97
- var(--recursica_ui-kit_components_modal_properties_horizontal-padding);
104
+ padding: var(
105
+ --recursica_ui-kit_components_modal_properties_content-vertical-padding
106
+ )
107
+ var(
108
+ --recursica_ui-kit_components_modal_properties_content-horizontal-padding
109
+ );
98
110
 
99
111
  /* Internal scrolling */
100
112
  flex: 1 1 auto;
@@ -137,11 +149,11 @@
137
149
  /* Smooth divider transitions */
138
150
  transition: border-color 0.15s ease;
139
151
  border-top: var(
140
- --recursica_ui-kit_components_modal_properties_scroll-divider-thickness
152
+ --recursica_ui-kit_components_modal_properties_scroll-divider-size
141
153
  )
142
154
  solid transparent;
143
155
  border-bottom: var(
144
- --recursica_ui-kit_components_modal_properties_scroll-divider-thickness
156
+ --recursica_ui-kit_components_modal_properties_scroll-divider-size
145
157
  )
146
158
  solid transparent;
147
159
  }
@@ -159,8 +171,12 @@
159
171
  }
160
172
 
161
173
  .footer {
162
- padding: var(--recursica_ui-kit_components_modal_properties_vertical-padding)
163
- var(--recursica_ui-kit_components_modal_properties_horizontal-padding);
174
+ padding: var(
175
+ --recursica_ui-kit_components_modal_properties_header-footer-vertical-padding
176
+ )
177
+ var(
178
+ --recursica_ui-kit_components_modal_properties_header-footer-horizontal-padding
179
+ );
164
180
  background-color: transparent;
165
181
  display: flex;
166
182
  justify-content: flex-end;