@innovaccer/design-system 4.22.0 → 4.24.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 (128) hide show
  1. package/CHANGELOG.md +157 -0
  2. package/README.md +35 -27
  3. package/css/dist/index.css +1570 -434
  4. package/css/dist/index.css.map +1 -1
  5. package/css/src/ai-components/button.module.css +4 -24
  6. package/css/src/ai-components/chip.module.css +12 -30
  7. package/css/src/ai-components/iconButton.module.css +2 -12
  8. package/css/src/components/avatarGroup.module.css +7 -0
  9. package/css/src/components/avatarSelection.module.css +22 -0
  10. package/css/src/components/badge.module.css +3 -3
  11. package/css/src/components/button.module.css +196 -27
  12. package/css/src/components/calendar.module.css +61 -20
  13. package/css/src/components/card.module.css +14 -0
  14. package/css/src/components/chatBubble.module.css +6 -1
  15. package/css/src/components/chatInput.module.css +14 -3
  16. package/css/src/components/chip.module.css +39 -4
  17. package/css/src/components/chipInput.module.css +19 -17
  18. package/css/src/components/dropdown.module.css +50 -14
  19. package/css/src/components/dropdownButton.module.css +5 -3
  20. package/css/src/components/dropzone.module.css +36 -0
  21. package/css/src/components/editableChipInput.module.css +48 -1
  22. package/css/src/components/editableDropdown.module.css +53 -0
  23. package/css/src/components/editableInput.module.css +31 -0
  24. package/css/src/components/grid.module.css +33 -13
  25. package/css/src/components/horizontalNav.module.css +16 -1
  26. package/css/src/components/input.module.css +0 -1
  27. package/css/src/components/label.module.css +12 -0
  28. package/css/src/components/link.module.css +69 -6
  29. package/css/src/components/linkButton.module.css +82 -10
  30. package/css/src/components/listbox.module.css +110 -6
  31. package/css/src/components/metricInput.module.css +89 -35
  32. package/css/src/components/modal.module.css +16 -0
  33. package/css/src/components/navigation.module.css +16 -0
  34. package/css/src/components/segmentedControl.module.css +1 -1
  35. package/css/src/components/select.module.css +11 -3
  36. package/css/src/components/selectionCard.module.css +38 -0
  37. package/css/src/components/sidesheet.module.css +16 -0
  38. package/css/src/components/slider.module.css +21 -0
  39. package/css/src/components/switch.module.css +39 -0
  40. package/css/src/components/table.module.css +32 -1
  41. package/css/src/components/tabs.module.css +20 -0
  42. package/css/src/components/timePicker.module.css +4 -0
  43. package/css/src/components/toast.module.css +19 -0
  44. package/css/src/components/tooltip.module.css +1 -0
  45. package/css/src/components/verticalNav.module.css +13 -5
  46. package/css/src/core/utilities.css +0 -23
  47. package/css/src/tokens/index.css +156 -156
  48. package/css/src/utils/utility.css +4 -0
  49. package/css/src/variables/index.css +116 -1
  50. package/dist/brotli/index.js +1 -1
  51. package/dist/brotli/index.js.br +0 -0
  52. package/dist/cjs/index.js +1 -1
  53. package/dist/core/accessibility/utils/useAccessibilityProps.d.ts +99 -16
  54. package/dist/core/components/atoms/_chip/index.d.ts +2 -0
  55. package/dist/core/components/atoms/_text/index.d.ts +2 -1
  56. package/dist/core/components/atoms/caption/Caption.d.ts +2 -2
  57. package/dist/core/components/atoms/chip/Chip.d.ts +2 -0
  58. package/dist/core/components/atoms/divider/Divider.d.ts +1 -0
  59. package/dist/core/components/atoms/dropdown/DropdownList.d.ts +2 -1
  60. package/dist/core/components/atoms/dropdown/option/index.d.ts +13 -4
  61. package/dist/core/components/atoms/helpText/HelpText.d.ts +1 -0
  62. package/dist/core/components/atoms/icon/Icon.d.ts +2 -3
  63. package/dist/core/components/atoms/link/Link.d.ts +4 -2
  64. package/dist/core/components/atoms/linkButton/LinkButton.d.ts +2 -1
  65. package/dist/core/components/atoms/message/Message.d.ts +1 -0
  66. package/dist/core/components/atoms/multiSlider/Handle.d.ts +1 -0
  67. package/dist/core/components/atoms/multiSlider/index.d.ts +2 -0
  68. package/dist/core/components/atoms/outsideClick/OutsideClick.d.ts +1 -0
  69. package/dist/core/components/atoms/popperWrapper/PopperWrapper.d.ts +51 -50
  70. package/dist/core/components/atoms/progressBar/ProgressBar.d.ts +3 -0
  71. package/dist/core/components/atoms/progressRing/ProgressRing.d.ts +3 -0
  72. package/dist/core/components/atoms/segmentedControl/SegmentedControl.d.ts +2 -0
  73. package/dist/core/components/atoms/spinner/Spinner.d.ts +1 -0
  74. package/dist/core/components/atoms/statusHint/StatusHint.d.ts +2 -2
  75. package/dist/core/components/atoms/toast/Toast.d.ts +3 -0
  76. package/dist/core/components/molecules/chat/Chat.d.ts +3 -0
  77. package/dist/core/components/molecules/chat/chatBubble/IncomingBubble.d.ts +1 -0
  78. package/dist/core/components/molecules/chat/chatBubble/OutgoingBubble.d.ts +1 -0
  79. package/dist/core/components/molecules/chat/chatInput/ChatInput.d.ts +1 -0
  80. package/dist/core/components/molecules/chat/unreadMessage/UnreadMessage.d.ts +3 -0
  81. package/dist/core/components/molecules/chipInput/ChipInput.d.ts +1 -1
  82. package/dist/core/components/molecules/chipInput/utils.d.ts +2 -0
  83. package/dist/core/components/molecules/dropzone/Dropzone.d.ts +1 -0
  84. package/dist/core/components/molecules/editableInput/EditableInput.d.ts +4 -0
  85. package/dist/core/components/molecules/fileUploader/FileUploaderButton.d.ts +2 -0
  86. package/dist/core/components/molecules/inputMask/InputMask.d.ts +1 -0
  87. package/dist/core/components/molecules/modal/Modal.d.ts +1 -0
  88. package/dist/core/components/molecules/popover/Popover.d.ts +1 -0
  89. package/dist/core/components/molecules/sidesheet/Sidesheet.d.ts +2 -1
  90. package/dist/core/components/molecules/stepper/Step.d.ts +1 -0
  91. package/dist/core/components/organisms/calendar/Calendar.d.ts +4 -3
  92. package/dist/core/components/organisms/calendar/utils.d.ts +6 -5
  93. package/dist/core/components/organisms/combobox/Combobox.d.ts +2 -0
  94. package/dist/core/components/organisms/combobox/ComboboxList.d.ts +1 -0
  95. package/dist/core/components/organisms/combobox/trigger/ComboboxTrigger.d.ts +2 -0
  96. package/dist/core/components/organisms/combobox/trigger/MultiselectTrigger.d.ts +1 -0
  97. package/dist/core/components/organisms/grid/Grid.d.ts +1 -0
  98. package/dist/core/components/organisms/grid/GridContext.d.ts +1 -0
  99. package/dist/core/components/organisms/grid/VirtualList.d.ts +1 -0
  100. package/dist/core/components/organisms/inlineMessage/InlineMessage.d.ts +3 -2
  101. package/dist/core/components/organisms/listbox/Listbox.d.ts +9 -1
  102. package/dist/core/components/organisms/listbox/listboxItem/ListBody.d.ts +1 -1
  103. package/dist/core/components/organisms/listbox/listboxItem/ListboxItem.d.ts +2 -0
  104. package/dist/core/components/organisms/listbox/nestedList/NestedList.d.ts +2 -0
  105. package/dist/core/components/organisms/listbox/reorderList/Draggable.d.ts +12 -0
  106. package/dist/core/components/organisms/listbox/reorderList/DraggableList.d.ts +2 -2
  107. package/dist/core/components/organisms/listbox/reorderList/types.d.ts +2 -0
  108. package/dist/core/components/organisms/listbox/utils.d.ts +3 -0
  109. package/dist/core/components/organisms/menu/MenuContext.d.ts +1 -0
  110. package/dist/core/components/organisms/menu/SubMenuContext.d.ts +1 -0
  111. package/dist/core/components/organisms/select/Select.d.ts +4 -1
  112. package/dist/core/components/organisms/select/SelectContext.d.ts +3 -1
  113. package/dist/core/components/organisms/select/SelectOption.d.ts +1 -0
  114. package/dist/core/components/organisms/select/SelectTrigger.d.ts +4 -0
  115. package/dist/core/components/organisms/select/utils.d.ts +7 -2
  116. package/dist/core/components/organisms/textField/TextFieldCommon.d.ts +1 -0
  117. package/dist/core/components/organisms/verticalNav/VerticalNav.d.ts +2 -0
  118. package/dist/core/utils/overlayHelper.d.ts +3 -2
  119. package/dist/esm/index.js +4343 -1784
  120. package/dist/gzip/index.js +1 -1
  121. package/dist/gzip/index.js.gz +0 -0
  122. package/dist/index.js +4139 -1734
  123. package/dist/index.js.map +1 -1
  124. package/dist/index.umd.css +1558 -422
  125. package/dist/index.umd.js +1 -1
  126. package/dist/scripts/setupTest.d.ts +1 -0
  127. package/dist/types/tsconfig.type.tsbuildinfo +399 -243
  128. package/package.json +8 -13
@@ -10,41 +10,21 @@
10
10
  display: flex;
11
11
  align-items: center;
12
12
  color: var(--inverse);
13
- background: linear-gradient(
14
- 277deg,
15
- rgba(227, 28, 121, 0.15) 0%,
16
- rgba(231, 56, 79, 0.24) 28%,
17
- rgba(240, 125, 0, 0.15) 100%
18
- );
13
+ background: linear-gradient(109deg, #fdead8 10.28%, #fbdfd5 32.82%, #f9d1d5 63.38%, #fad9e7 96.05%);
19
14
  }
20
15
 
21
16
  .AIButton:hover {
22
- background: linear-gradient(
23
- 277deg,
24
- rgba(227, 28, 121, 0.2) 0%,
25
- rgba(231, 56, 79, 0.32) 28%,
26
- rgba(240, 125, 0, 0.2) 100%
27
- );
17
+ background: linear-gradient(116deg, #fbe1c9 14.17%, #f8c5c6 50.06%, #f9cbdc 85.01%);
28
18
  }
29
19
 
30
20
  .AIButton:active {
31
- background: linear-gradient(
32
- 277deg,
33
- rgba(227, 28, 121, 0.31) 0%,
34
- rgba(231, 56, 79, 0.48) 28%,
35
- rgba(240, 125, 0, 0.31) 100%
36
- );
21
+ background: linear-gradient(106deg, #fad1ae 20.06%, #f5aea9 44.48%, #f4a0ad 67.83%, #f6b3ce 86.55%);
37
22
  }
38
23
 
39
24
  .AIButton:disabled {
40
25
  cursor: not-allowed;
41
26
  opacity: var(--opacity-10);
42
- background: linear-gradient(
43
- 277deg,
44
- rgba(227, 28, 121, 0.15) 0%,
45
- rgba(231, 56, 79, 0.24) 28%,
46
- rgba(240, 125, 0, 0.15) 100%
47
- );
27
+ background: linear-gradient(109deg, #fdead8 10.28%, #fbdfd5 32.82%, #f9d1d5 63.38%, #fad9e7 96.05%);
48
28
  }
49
29
 
50
30
  .AIButton:focus {
@@ -7,30 +7,16 @@
7
7
  cursor: pointer;
8
8
  width: fit-content;
9
9
  border: 0;
10
- background: linear-gradient(
11
- 274deg,
12
- rgba(231, 56, 79, 0.24) 0%,
13
- rgba(231, 56, 79, 0.24) 19.79%,
14
- rgba(240, 125, 0, 0.24) 100%
15
- );
10
+ position: relative;
11
+ background: linear-gradient(109deg, #fdead8 10.28%, #fbdfd5 32.82%, #f9d1d5 63.38%, #fad9e7 96.05%);
16
12
  }
17
13
 
18
14
  .AIChip:hover {
19
- background: linear-gradient(
20
- 274deg,
21
- rgba(231, 56, 79, 0.32) 0%,
22
- rgba(231, 56, 79, 0.32) 19.79%,
23
- rgba(240, 125, 0, 0.32) 100%
24
- );
15
+ background: linear-gradient(108deg, #fad3b0 15.89%, #f9cdb7 33.52%, #f8c6bf 54.17%, #f7bfc7 70.92%);
25
16
  }
26
17
 
27
18
  .AIChip:active {
28
- background: linear-gradient(
29
- 274deg,
30
- rgba(231, 56, 79, 0.48) 0%,
31
- rgba(231, 56, 79, 0.48) 19.79%,
32
- rgba(240, 125, 0, 0.48) 100%
33
- );
19
+ background: linear-gradient(106deg, #f7bd89 20.06%, #f6b196 44.48%, #f4a4a5 67.83%, #f39faa 86.55%);
34
20
  }
35
21
 
36
22
  .AIChip:focus,
@@ -59,12 +45,7 @@
59
45
  /* Disabled Chip */
60
46
 
61
47
  .AIChip--disabled {
62
- background: linear-gradient(
63
- 274deg,
64
- rgba(231, 56, 79, 0.24) 0%,
65
- rgba(231, 56, 79, 0.24) 19.79%,
66
- rgba(240, 125, 0, 0.24) 100%
67
- );
48
+ background: linear-gradient(109deg, #fdead8 10.28%, #fbdfd5 32.82%, #f9d1d5 63.38%, #fad9e7 96.05%);
68
49
  }
69
50
 
70
51
  .AIChip-icon--disabled {
@@ -78,10 +59,11 @@
78
59
 
79
60
  .AIChip:disabled {
80
61
  cursor: not-allowed;
81
- background: linear-gradient(
82
- 274deg,
83
- rgba(231, 56, 79, 0.24) 0%,
84
- rgba(231, 56, 79, 0.24) 19.79%,
85
- rgba(240, 125, 0, 0.24) 100%
86
- );
62
+ background: linear-gradient(109deg, #fdead8 10.28%, #fbdfd5 32.82%, #f9d1d5 63.38%, #fad9e7 96.05%);
63
+ }
64
+
65
+ .AIChip-AIIcon {
66
+ position: absolute;
67
+ top: calc(-1 * var(--spacing-05));
68
+ right: calc(-1 * var(--spacing-05));
87
69
  }
@@ -20,22 +20,12 @@
20
20
  }
21
21
 
22
22
  .AIIconButton:hover {
23
- background: linear-gradient(
24
- 315deg,
25
- rgba(227, 28, 121, 0.2) 0%,
26
- rgba(231, 56, 79, 0.32) 19.79%,
27
- rgba(240, 125, 0, 0.32) 100%
28
- );
23
+ background: linear-gradient(143deg, #fad1b2 10.84%, #f8c4c1 51.71%, #f8c8d7 91.5%);
29
24
  color: var(--secondary) !important;
30
25
  }
31
26
 
32
27
  .AIIconButton:active {
33
- background: linear-gradient(
34
- 315deg,
35
- rgba(227, 28, 121, 0.31) 0%,
36
- rgba(231, 56, 79, 0.48) 19.79%,
37
- rgba(240, 125, 0, 0.48) 100%
38
- );
28
+ background: linear-gradient(144deg, #f7ba8c 14.82%, #f6af98 40.53%, #f5a8a0 55.69%, #f5adc5 79.29%);
39
29
  color: var(--secondary-dark) !important;
40
30
  }
41
31
 
@@ -87,3 +87,10 @@
87
87
  cursor: not-allowed;
88
88
  pointer-events: auto !important;
89
89
  }
90
+
91
+ @media (forced-colors: active) {
92
+ .AvatarGroup-input:focus-within {
93
+ outline: var(--border-width-05) solid Highlight !important;
94
+ outline-offset: var(--spacing-05);
95
+ }
96
+ }
@@ -193,3 +193,25 @@
193
193
  .SelectionAvatarCount--selected:focus-visible {
194
194
  box-shadow: 0 0 0 var(--spacing-2-5) white, 0 0 0 3px var(--primary-dark), 0 0 0 3px var(--primary-shadow) !important;
195
195
  }
196
+
197
+ @media (forced-colors: active) {
198
+ .SelectionAvatarGroup-item--selected:focus,
199
+ .SelectionAvatarGroup-item--selected:focus-visible {
200
+ outline: var(--border-width-05) solid Highlight !important;
201
+ outline-offset: var(--spacing-2-5);
202
+ box-shadow: none !important;
203
+ }
204
+
205
+ .SelectionAvatarCount--selected:focus,
206
+ .SelectionAvatarCount--selected:focus-visible {
207
+ outline: var(--border-width-05) solid Highlight !important;
208
+ outline-offset: var(--spacing-2-5);
209
+ box-shadow: none !important;
210
+ }
211
+
212
+ /* The inner search input uses outline:none !important — restore it in forced-colors mode */
213
+ .SelectionAvatar-input:focus-within {
214
+ outline: var(--border-width-05) solid Highlight !important;
215
+ outline-offset: var(--spacing-05);
216
+ }
217
+ }
@@ -47,7 +47,7 @@
47
47
  }
48
48
 
49
49
  .Badge--accent1 {
50
- background: var(--accent1-dark);
50
+ background: var(--accent1);
51
51
  color: var(--white);
52
52
  }
53
53
 
@@ -63,7 +63,7 @@
63
63
 
64
64
  .Badge--accent4 {
65
65
  background: var(--accent4);
66
- color: var(--accent4-darker);
66
+ color: var(--white);
67
67
  }
68
68
 
69
69
  .Badge--subtle-primary {
@@ -88,7 +88,7 @@
88
88
 
89
89
  .Badge--subtle-warning {
90
90
  color: var(--warning-darker);
91
- background: var(--warning-lightest);
91
+ background: var(--warning-300);
92
92
  }
93
93
 
94
94
  .Badge--subtle-accent1 {
@@ -24,11 +24,11 @@
24
24
  transition: var(--duration--fast-01) var(--standard-productive-curve);
25
25
  }
26
26
 
27
- .Button:disabled {
27
+ .Button--disabled {
28
28
  cursor: not-allowed;
29
29
  }
30
30
 
31
- .Button:focus {
31
+ .Button:focus-visible {
32
32
  outline: var(--border-width-05) solid var(--primary-focus);
33
33
  outline-offset: var(--spacing-05);
34
34
  }
@@ -108,13 +108,6 @@
108
108
  margin-left: var(--spacing-15);
109
109
  }
110
110
 
111
- .Button--tiny .Button-icon--left {
112
- margin-right: var(--spacing-10);
113
- }
114
- .Button--tiny .Button-icon--right {
115
- margin-left: var(--spacing-10);
116
- }
117
-
118
111
  .Button--basic {
119
112
  background: var(--secondary-light);
120
113
  color: var(--inverse);
@@ -128,7 +121,7 @@
128
121
  background: var(--secondary-dark);
129
122
  }
130
123
 
131
- .Button--basic:disabled {
124
+ .Button--basic-disabled {
132
125
  background: var(--secondary-lighter);
133
126
  color: var(--inverse-lightest);
134
127
  }
@@ -145,10 +138,14 @@
145
138
  background: var(--primary-darker);
146
139
  }
147
140
 
148
- .Button--primary:disabled {
141
+ .Button--primary-disabled {
149
142
  background: var(--primary-lighter);
150
143
  }
151
144
 
145
+ .Button-infoIcon--primary {
146
+ color: var(--text-link);
147
+ }
148
+
152
149
  .Button--success {
153
150
  background: var(--primary);
154
151
  }
@@ -161,10 +158,14 @@
161
158
  background: var(--primary-darker);
162
159
  }
163
160
 
164
- .Button--success:disabled {
161
+ .Button--success-disabled {
165
162
  background: var(--primary-lighter);
166
163
  }
167
164
 
165
+ .Button-infoIcon--success {
166
+ color: var(--text-link);
167
+ }
168
+
168
169
  .Button--alert {
169
170
  background: var(--alert);
170
171
  }
@@ -177,10 +178,14 @@
177
178
  background: var(--alert-darker);
178
179
  }
179
180
 
180
- .Button--alert:disabled {
181
+ .Button--alert-disabled {
181
182
  background: var(--alert-lighter);
182
183
  }
183
184
 
185
+ .Button-infoIcon--alert {
186
+ color: var(--alert);
187
+ }
188
+
184
189
  .Button--transparent {
185
190
  background: transparent;
186
191
  color: var(--inverse);
@@ -194,11 +199,11 @@
194
199
  background: var(--secondary-dark);
195
200
  }
196
201
 
197
- .Button--transparent:focus:active {
202
+ .Button--transparent:focus-visible:active {
198
203
  background: var(--secondary-dark);
199
204
  }
200
205
 
201
- .Button--transparent:disabled {
206
+ .Button--transparent-disabled {
202
207
  background: transparent;
203
208
  color: var(--inverse-lightest);
204
209
  }
@@ -225,21 +230,21 @@
225
230
  box-shadow: inset 0 0 0 2px var(--primary-dark);
226
231
  }
227
232
 
228
- .Button--selected:focus {
233
+ .Button--selected:focus-visible {
229
234
  background: var(--primary-ultra-light);
230
235
  outline: var(--border-width-05) solid var(--primary-focus);
231
236
  outline-offset: var(--spacing-05);
232
237
  box-shadow: inset 0 0 0 var(--border-width-05) var(--primary);
233
238
  }
234
239
 
235
- .Button--selected:focus:active {
240
+ .Button--selected:focus-visible:active {
236
241
  background: var(--primary-lighter);
237
242
  outline: var(--border-width-05) solid var(--primary-focus);
238
243
  outline-offset: var(--spacing-05);
239
244
  box-shadow: inset 0 0 0 var(--border-width-05) var(--primary-dark);
240
245
  }
241
246
 
242
- .Button--selected:disabled {
247
+ .Button--selected-disabled {
243
248
  background: var(--primary-ultra-light);
244
249
  color: var(--primary-lighter);
245
250
  box-shadow: inset 0 0 0 2px var(--primary-lightest);
@@ -255,6 +260,63 @@
255
260
  text-overflow: ellipsis;
256
261
  }
257
262
 
263
+ .Button-infoIconWrapper {
264
+ position: absolute;
265
+ top: -4px;
266
+ right: -4px;
267
+ width: var(--spacing-30);
268
+ height: var(--spacing-30);
269
+ box-sizing: border-box;
270
+ border-radius: var(--border-radius-full);
271
+ display: flex;
272
+ align-items: center;
273
+ justify-content: center;
274
+ overflow: hidden;
275
+ border: var(--border-width-2-5) solid var(--secondary-lightest);
276
+ pointer-events: none;
277
+ }
278
+
279
+ .Button-infoIconWrapper--transparent {
280
+ border: none;
281
+ background: transparent;
282
+ top: var(--spacing-2-5);
283
+ right: var(--spacing-2-5);
284
+ }
285
+
286
+ .Button-infoIconWrapper--iconOnly-transparent {
287
+ top: var(--spacing-2-5);
288
+ right: var(--spacing-2-5);
289
+ }
290
+
291
+ .Button-infoIconWrapper-outlined--basic {
292
+ background: var(--secondary-lightest);
293
+ }
294
+
295
+ .Button-infoIconWrapper-outlined--primary {
296
+ background: var(--primary-ultra-light);
297
+ }
298
+
299
+ .Button-infoIconWrapper-outlined--alert {
300
+ background: var(--alert-ultra-light);
301
+ }
302
+
303
+ .Button-infoIconWrapper--basic {
304
+ background: var(--secondary-lighter);
305
+ }
306
+
307
+ .Button-infoIconWrapper--primary,
308
+ .Button-infoIconWrapper--success {
309
+ background: var(--primary-lightest);
310
+ }
311
+
312
+ .Button-infoIconWrapper--alert {
313
+ background: var(--alert-lightest);
314
+ }
315
+
316
+ .Button-infoIcon {
317
+ color: var(--text-subtle);
318
+ }
319
+
258
320
  /* outlined button styles */
259
321
 
260
322
  .Button-outlined--basic {
@@ -273,13 +335,13 @@
273
335
  box-shadow: inset 0 0 0 1px var(--inverse-lightest);
274
336
  }
275
337
 
276
- .Button-outlined--basic:focus {
338
+ .Button-outlined--basic:focus-visible {
277
339
  outline: var(--border-width-05) solid var(--primary-focus);
278
340
  outline-offset: var(--spacing-05);
279
341
  box-shadow: inset 0 0 0 var(--border-width-2-5) var(--secondary);
280
342
  }
281
343
 
282
- .Button-outlined--basic:disabled {
344
+ .Button-outlined--basic-disabled {
283
345
  color: var(--inverse-lightest);
284
346
  background: transparent;
285
347
  box-shadow: inset 0 0 0 1px var(--secondary);
@@ -302,14 +364,14 @@
302
364
  box-shadow: inset 0 0 0 2px var(--primary-dark);
303
365
  }
304
366
 
305
- .Button-outlined--selected:focus {
367
+ .Button-outlined--selected:focus-visible {
306
368
  color: var(--primary-dark);
307
369
  outline: var(--border-width-05) solid var(--primary-focus);
308
370
  outline-offset: var(--spacing-05);
309
371
  box-shadow: inset 0 0 0 var(--border-width-05) var(--primary);
310
372
  }
311
373
 
312
- .Button-outlined--selected:focus:active {
374
+ .Button-outlined--selected:focus-visible:active {
313
375
  background: var(--primary-lighter);
314
376
  color: var(--primary-darker);
315
377
  outline: var(--border-width-05) solid var(--primary-focus);
@@ -317,7 +379,7 @@
317
379
  box-shadow: inset 0 0 0 var(--border-width-05) var(--primary-dark);
318
380
  }
319
381
 
320
- .Button-outlined--selected:disabled {
382
+ .Button-outlined--selected-disabled {
321
383
  background: var(--primary-ultra-light);
322
384
  color: var(--primary-lighter);
323
385
  box-shadow: inset 0 0 0 2px var(--primary-lightest);
@@ -341,18 +403,22 @@
341
403
  color: var(--primary-dark);
342
404
  }
343
405
 
344
- .Button-outlined--primary:focus {
406
+ .Button-outlined--primary:focus-visible {
345
407
  outline: var(--border-width-05) solid var(--primary-focus);
346
408
  outline-offset: var(--spacing-05);
347
409
  box-shadow: inset 0 0 0 var(--border-width-2-5) var(--primary);
348
410
  }
349
411
 
350
- .Button-outlined--primary:disabled {
412
+ .Button-outlined--primary-disabled {
351
413
  background: transparent;
352
414
  color: var(--primary-lighter);
353
415
  box-shadow: inset 0 0 0 1px var(--primary-lighter);
354
416
  }
355
417
 
418
+ .Button-infoIcon-outlined--primary {
419
+ color: var(--text-link);
420
+ }
421
+
356
422
  .Button-outlined--alert {
357
423
  background: transparent;
358
424
  box-shadow: inset 0 0 0 1px var(--alert);
@@ -371,14 +437,117 @@
371
437
  color: var(--alert-dark);
372
438
  }
373
439
 
374
- .Button-outlined--alert:focus {
440
+ .Button-outlined--alert:focus-visible {
375
441
  outline: var(--border-width-05) solid var(--primary-focus);
376
442
  outline-offset: var(--spacing-05);
377
443
  box-shadow: inset 0 0 0 var(--border-width-2-5) var(--alert);
378
444
  }
379
445
 
380
- .Button-outlined--alert:disabled {
446
+ .Button-outlined--alert-disabled {
381
447
  background: transparent;
382
448
  color: var(--alert-lighter);
383
449
  box-shadow: inset 0 0 0 1px var(--alert-lighter);
384
450
  }
451
+
452
+ .Button-infoIcon-outlined--alert {
453
+ color: var(--alert);
454
+ }
455
+
456
+ .Button-srOnly {
457
+ position: absolute;
458
+ width: var(--spacing-2-5);
459
+ height: var(--spacing-2-5);
460
+ padding: 0;
461
+ margin: calc(-1 * var(--spacing-2-5));
462
+ overflow: hidden;
463
+ clip: rect(0, 0, 0, 0);
464
+ white-space: nowrap;
465
+ border: 0;
466
+ }
467
+
468
+ @media (forced-colors: active) {
469
+ .Button--basic,
470
+ .Button--primary,
471
+ .Button--success,
472
+ .Button--alert,
473
+ .Button--transparent {
474
+ border: var(--border-width-2-5) solid ButtonText;
475
+ }
476
+
477
+ .Button--basic-disabled,
478
+ .Button--primary-disabled,
479
+ .Button--success-disabled,
480
+ .Button--alert-disabled,
481
+ .Button--transparent-disabled {
482
+ border: var(--border-width-2-5) solid GrayText;
483
+ }
484
+
485
+ /* Selected state: inset box-shadow acts as the visible border */
486
+ .Button--selected,
487
+ .Button--selected:hover,
488
+ .Button--selected:active,
489
+ .Button--selected-disabled {
490
+ border: var(--border-width-05) solid ButtonText;
491
+ box-shadow: none;
492
+ }
493
+
494
+ .Button--selected:focus-visible,
495
+ .Button--selected:focus-visible:active {
496
+ outline: var(--border-width-05) solid Highlight;
497
+ box-shadow: none;
498
+ }
499
+
500
+ /* Outlined variants: inset box-shadow is the only visible border */
501
+ .Button-outlined--basic,
502
+ .Button-outlined--basic:hover,
503
+ .Button-outlined--basic:active,
504
+ .Button-outlined--basic-disabled {
505
+ border: var(--border-width-2-5) solid ButtonText;
506
+ box-shadow: none;
507
+ }
508
+
509
+ .Button-outlined--basic:focus-visible {
510
+ outline: var(--border-width-05) solid Highlight;
511
+ box-shadow: none;
512
+ }
513
+
514
+ .Button-outlined--selected,
515
+ .Button-outlined--selected:hover,
516
+ .Button-outlined--selected:active,
517
+ .Button-outlined--selected-disabled {
518
+ border: var(--border-width-05) solid ButtonText;
519
+ box-shadow: none;
520
+ }
521
+
522
+ .Button-outlined--selected:focus-visible,
523
+ .Button-outlined--selected:focus-visible:active {
524
+ outline: var(--border-width-05) solid Highlight;
525
+ box-shadow: none;
526
+ }
527
+
528
+ .Button-outlined--primary,
529
+ .Button-outlined--primary:hover,
530
+ .Button-outlined--primary:active,
531
+ .Button-outlined--primary-disabled {
532
+ border: var(--border-width-2-5) solid ButtonText;
533
+ box-shadow: none;
534
+ }
535
+
536
+ .Button-outlined--primary:focus-visible {
537
+ outline: var(--border-width-05) solid Highlight;
538
+ box-shadow: none;
539
+ }
540
+
541
+ .Button-outlined--alert,
542
+ .Button-outlined--alert:hover,
543
+ .Button-outlined--alert:active,
544
+ .Button-outlined--alert-disabled {
545
+ border: var(--border-width-2-5) solid ButtonText;
546
+ box-shadow: none;
547
+ }
548
+
549
+ .Button-outlined--alert:focus-visible {
550
+ outline: var(--border-width-05) solid Highlight;
551
+ box-shadow: none;
552
+ }
553
+ }
@@ -140,6 +140,13 @@
140
140
  position: relative;
141
141
  }
142
142
 
143
+ .Calendar-monthValueWrapper,
144
+ .Calendar-yearValueWrapper {
145
+ display: inline-flex;
146
+ justify-content: center;
147
+ position: relative;
148
+ }
149
+
143
150
  .Calendar-valueWrapper--inRange {
144
151
  background: var(--primary-ultra-light);
145
152
  }
@@ -196,13 +203,13 @@
196
203
  text-align: center;
197
204
  cursor: pointer;
198
205
  user-select: none;
206
+ box-sizing: border-box;
199
207
  border-radius: var(--spacing-10);
200
208
  border: var(--border-width-2-5) solid transparent;
201
209
  transition: var(--duration--fast-01) var(--standard-productive-curve);
202
210
 
203
211
  /* Button reset (used on <button> for a11y) */
204
212
  background: transparent;
205
- border: none;
206
213
  padding: 0;
207
214
  margin: 0;
208
215
  font-family: inherit;
@@ -303,25 +310,6 @@
303
310
  width: var(--spacing-80);
304
311
  }
305
312
 
306
-
307
- .Calendar-valueWrapper--active-dummy .Calendar-value {
308
- border: none;
309
- }
310
-
311
- .Calendar-valueWrapper--active-dummy .Calendar-value--active {
312
- background: var(--primary-lighter);
313
- }
314
-
315
- .Calendar-valueWrapper--active-dummy .Calendar-value--active:hover {
316
- background: var(--primary-light);
317
- color: var(--inverse);
318
- }
319
-
320
- .Calendar-valueWrapper--active-dummy .Calendar-value--active:active {
321
- background: var(--primary-dark);
322
- color: var(--white);
323
- }
324
-
325
313
  .Calendar-valueWrapper--active-dummy .Calendar-value--startError,
326
314
  .Calendar-valueWrapper--active-dummy .Calendar-value--endError {
327
315
  background: var(--alert-lightest);
@@ -333,6 +321,10 @@
333
321
  border-color: transparent;
334
322
  }
335
323
 
324
+ .Calendar-valueWrapper--disabled {
325
+ opacity: var(--opacity-10);
326
+ }
327
+
336
328
  .Calendar-value--disabled {
337
329
  pointer-events: none;
338
330
  }
@@ -400,3 +392,52 @@
400
392
  background: var(--primary-lighter);
401
393
  border-color: transparent;
402
394
  }
395
+
396
+ @media (forced-colors: active) {
397
+ .Calendar-valueWrapper--start,
398
+ .Calendar-valueWrapper--end,
399
+ .Calendar-valueWrapper--hoverDate,
400
+ .Calendar-valueWrapper--hoverEndDate,
401
+ .Calendar-valueWrapper--inStartRange,
402
+ .Calendar-valueWrapper--inEndRange,
403
+ .Calendar-valueWrapper--inRange,
404
+ .Calendar-valueWrapper--inEdgeRange .Calendar-inRangeValue {
405
+ background: Highlight;
406
+ }
407
+
408
+ .Calendar-valueWrapper--startError,
409
+ .Calendar-valueWrapper--endError,
410
+ .Calendar-valueWrapper--inRangeError {
411
+ background: Mark;
412
+ }
413
+
414
+ /* Active/selected date cell */
415
+ .Calendar-value--active,
416
+ .Calendar-value--active:hover,
417
+ .Calendar-value--active:active {
418
+ forced-color-adjust: none;
419
+ background: Highlight;
420
+ color: HighlightText;
421
+ border-color: transparent;
422
+ }
423
+
424
+ /* Today's date marker ring */
425
+ .Calendar-value--currDateMonthYear {
426
+ border-color: ButtonText;
427
+ }
428
+
429
+ /* Event dot: use system color so it stays visible */
430
+ .Calendar-eventsIndicator {
431
+ background-color: ButtonText;
432
+ }
433
+
434
+ .Calendar-eventsIndicator--active {
435
+ background-color: HighlightText;
436
+ }
437
+
438
+ /* Disabled dates use opacity — switch to GrayText */
439
+ .Calendar-valueWrapper--disabled {
440
+ opacity: 1;
441
+ color: GrayText;
442
+ }
443
+ }
@@ -52,3 +52,17 @@
52
52
  .Card-footer--withSeperator {
53
53
  border-top: var(--border-width-2-5) solid var(--secondary-light);
54
54
  }
55
+
56
+ @media (forced-colors: active) {
57
+ /* box-shadow is stripped in forced-colors; add a real border so the card boundary is visible */
58
+ .Card--default,
59
+ .Card--light,
60
+ .Card--medium,
61
+ .Card--dark,
62
+ .Card--shadow10,
63
+ .Card--shadow20,
64
+ .Card--shadow30 {
65
+ border: var(--border-width-2-5) solid ButtonText;
66
+ box-shadow: none;
67
+ }
68
+ }