@morscherlab/mint-sdk 1.0.0-rc.5 → 1.0.0-rc.7

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 (55) hide show
  1. package/dist/components/AppSidebar.vue.d.ts +6 -3
  2. package/dist/components/BaseCheckbox.vue.d.ts +6 -1
  3. package/dist/components/BasePill.vue.d.ts +1 -1
  4. package/dist/components/BaseRadioGroup.vue.d.ts +1 -1
  5. package/dist/components/BaseToggle.vue.d.ts +6 -1
  6. package/dist/components/CollapsibleCard.vue.d.ts +9 -0
  7. package/dist/components/ControlWorkspaceView.vue.d.ts +1 -1
  8. package/dist/components/DoseDesignWorkspaceView.vue.d.ts +1 -1
  9. package/dist/components/PluginWorkspaceView.vue.d.ts +5 -1
  10. package/dist/components/index.js +2 -2
  11. package/dist/{components-DtHA2bgp.js → components-Blx4MG--.js} +565 -1477
  12. package/dist/components-Blx4MG--.js.map +1 -0
  13. package/dist/composables/controlSchemaTypes.d.ts +7 -1
  14. package/dist/composables/index.js +3 -3
  15. package/dist/{composables-Dlg8jenH.js → composables-CHDjDIQT.js} +2 -2
  16. package/dist/{composables-Dlg8jenH.js.map → composables-CHDjDIQT.js.map} +1 -1
  17. package/dist/index.js +4 -4
  18. package/dist/install.js +2 -2
  19. package/dist/styles.css +867 -126
  20. package/dist/templates/index.js +1 -1
  21. package/dist/{templates-DtdUvJ4c.js → templates-DSbHJC4v.js} +1351 -120
  22. package/dist/templates-DSbHJC4v.js.map +1 -0
  23. package/dist/types/components.d.ts +12 -0
  24. package/dist/types/form-builder.d.ts +3 -0
  25. package/dist/types/index.d.ts +1 -1
  26. package/dist/{useProtocolTemplates-Bm5vyH4_.js → useProtocolTemplates-BbPOYPzO.js} +2 -2
  27. package/dist/{useProtocolTemplates-Bm5vyH4_.js.map → useProtocolTemplates-BbPOYPzO.js.map} +1 -1
  28. package/package.json +1 -1
  29. package/src/__tests__/components/AppSidebar.test.ts +67 -0
  30. package/src/__tests__/components/CollapsibleCard.test.ts +47 -0
  31. package/src/__tests__/components/FormBuilder.test.ts +57 -0
  32. package/src/__tests__/components/PluginWorkspaceView.shell.test.ts +2 -0
  33. package/src/components/AppSidebar.story.vue +79 -6
  34. package/src/components/AppSidebar.vue +72 -0
  35. package/src/components/BaseCheckbox.story.vue +27 -0
  36. package/src/components/BaseCheckbox.vue +63 -1
  37. package/src/components/BaseToggle.story.vue +27 -0
  38. package/src/components/BaseToggle.vue +66 -1
  39. package/src/components/CollapsibleCard.vue +123 -45
  40. package/src/components/FormBuilder.story.vue +13 -0
  41. package/src/components/PluginWorkspaceView.shell.ts +1 -0
  42. package/src/components/PluginWorkspaceView.vue +3 -0
  43. package/src/components/internal/FormFieldRendererInternal.vue +23 -5
  44. package/src/composables/controlSchemaAdapters.ts +3 -0
  45. package/src/composables/controlSchemaFormFields.ts +3 -0
  46. package/src/composables/controlSchemaTypes.ts +8 -0
  47. package/src/styles/components/app-sidebar.css +134 -6
  48. package/src/styles/components/checkbox.css +87 -0
  49. package/src/styles/components/collapsible-card.css +154 -14
  50. package/src/styles/components/toggle.css +80 -0
  51. package/src/types/components.ts +21 -0
  52. package/src/types/form-builder.ts +3 -0
  53. package/src/types/index.ts +2 -0
  54. package/dist/components-DtHA2bgp.js.map +0 -1
  55. package/dist/templates-DtdUvJ4c.js.map +0 -1
package/dist/styles.css CHANGED
@@ -188,6 +188,90 @@
188
188
  height: 1rem;
189
189
  color: var(--text-muted);
190
190
  }
191
+ /* Tooltip — Dark Short */
192
+ .mint-tooltip {
193
+ display: inline-flex;
194
+ }
195
+ .mint-tooltip__content {
196
+ position: absolute;
197
+ z-index: 9999;
198
+ display: inline-flex;
199
+ align-items: center;
200
+ gap: 0.5rem;
201
+ padding: 0.375rem 0.625rem;
202
+ font-size: 0.75rem;
203
+ line-height: 1.2;
204
+ color: #FFFFFF;
205
+ background: #0F172A;
206
+ border-radius: var(--radius-sm);
207
+ white-space: nowrap;
208
+ pointer-events: none;
209
+ box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
210
+ }
211
+
212
+ /* Multi-line opt-in via maxWidth prop */
213
+ .mint-tooltip__content--multiline {
214
+ white-space: normal;
215
+ line-height: 1.4;
216
+ }
217
+ .mint-tooltip__body {
218
+ display: inline;
219
+ }
220
+
221
+ /* Keyboard shortcut chip */
222
+ .mint-tooltip__shortcut {
223
+ display: inline-flex;
224
+ align-items: center;
225
+ padding: 0.0625rem 0.375rem;
226
+ font-family: var(--font-mono, 'Fira Code', monospace);
227
+ font-size: 0.6875rem;
228
+ font-weight: 500;
229
+ color: rgba(255, 255, 255, 0.85);
230
+ background: rgba(255, 255, 255, 0.12);
231
+ border: 1px solid rgba(255, 255, 255, 0.18);
232
+ border-radius: 3px;
233
+ line-height: 1;
234
+ }
235
+
236
+ /* Arrow — color matches the dark tooltip bg */
237
+ .mint-tooltip__content::after {
238
+ content: '';
239
+ position: absolute;
240
+ border-width: 4px;
241
+ border-style: solid;
242
+ }
243
+ .mint-tooltip__content--top::after,
244
+ .mint-tooltip__content--top-start::after,
245
+ .mint-tooltip__content--top-end::after {
246
+ top: 100%;
247
+ left: 50%;
248
+ transform: translateX(-50%);
249
+ border-color: #0F172A transparent transparent transparent;
250
+ }
251
+ .mint-tooltip__content--bottom::after,
252
+ .mint-tooltip__content--bottom-start::after,
253
+ .mint-tooltip__content--bottom-end::after {
254
+ bottom: 100%;
255
+ left: 50%;
256
+ transform: translateX(-50%);
257
+ border-color: transparent transparent #0F172A transparent;
258
+ }
259
+ .mint-tooltip__content--left::after,
260
+ .mint-tooltip__content--left-start::after,
261
+ .mint-tooltip__content--left-end::after {
262
+ left: 100%;
263
+ top: 50%;
264
+ transform: translateY(-50%);
265
+ border-color: transparent transparent transparent #0F172A;
266
+ }
267
+ .mint-tooltip__content--right::after,
268
+ .mint-tooltip__content--right-start::after,
269
+ .mint-tooltip__content--right-end::after {
270
+ right: 100%;
271
+ top: 50%;
272
+ transform: translateY(-50%);
273
+ border-color: transparent #0F172A transparent transparent;
274
+ }
191
275
  /* BaseCheckbox Component Styles */
192
276
  .mint-checkbox {
193
277
  display: inline-flex;
@@ -196,15 +280,77 @@
196
280
  cursor: pointer;
197
281
  user-select: none;
198
282
  }
283
+ .mint-checkbox--default {
284
+ width: fit-content;
285
+ }
286
+ .mint-checkbox--row {
287
+ width: 100%;
288
+ min-height: 2rem;
289
+ gap: 0.5rem;
290
+ padding: 0.375rem 0.5rem;
291
+ border-radius: var(--radius-sm, 0.375rem);
292
+ background: transparent;
293
+ box-sizing: border-box;
294
+ transition:
295
+ background-color 0.15s ease,
296
+ color 0.15s ease;
297
+ }
298
+ .mint-checkbox--row:hover {
299
+ background: var(--bg-hover);
300
+ }
199
301
  .mint-checkbox--disabled {
200
302
  opacity: var(--mint-disabled-opacity);
201
303
  cursor: not-allowed;
202
304
  }
305
+ .mint-checkbox--disabled.mint-checkbox--row:hover {
306
+ background: transparent;
307
+ }
308
+ .mint-checkbox__row-icon {
309
+ display: inline-flex;
310
+ align-items: center;
311
+ justify-content: center;
312
+ width: 0.875rem;
313
+ height: 0.875rem;
314
+ flex-shrink: 0;
315
+ transition:
316
+ color 0.15s ease,
317
+ transform 0.15s ease;
318
+ }
319
+ .mint-checkbox--row:hover .mint-checkbox__row-icon {
320
+ transform: scale(1.04);
321
+ }
322
+ .mint-checkbox__row-svg {
323
+ width: 0.875rem;
324
+ height: 0.875rem;
325
+ }
326
+ .mint-checkbox__row-text-icon {
327
+ font-size: 0.75rem;
328
+ font-weight: 700;
329
+ line-height: 1;
330
+ }
331
+ .mint-checkbox__copy {
332
+ display: block;
333
+ flex: 1 1 auto;
334
+ min-width: 0;
335
+ }
336
+ .mint-checkbox__copy .mint-tooltip {
337
+ max-width: 100%;
338
+ }
339
+ .mint-checkbox--row .mint-checkbox__label {
340
+ display: block;
341
+ overflow: hidden;
342
+ text-overflow: ellipsis;
343
+ white-space: nowrap;
344
+ }
345
+ .mint-checkbox__label--tooltip {
346
+ cursor: help;
347
+ }
203
348
  .mint-checkbox__input-wrapper {
204
349
  position: relative;
205
350
  display: flex;
206
351
  align-items: center;
207
352
  justify-content: center;
353
+ flex-shrink: 0;
208
354
  }
209
355
  .mint-checkbox__native {
210
356
  position: absolute;
@@ -281,6 +427,7 @@
281
427
  }
282
428
  .mint-checkbox__label {
283
429
  color: var(--text-primary);
430
+ line-height: 1.25;
284
431
  }
285
432
  .mint-checkbox__label--sm {
286
433
  font-size: 0.875rem;
@@ -291,6 +438,16 @@
291
438
  .mint-checkbox__label--lg {
292
439
  font-size: 1rem;
293
440
  }
441
+ @media (prefers-reduced-motion: reduce) {
442
+ .mint-checkbox--row,
443
+ .mint-checkbox__row-icon,
444
+ .mint-checkbox__box {
445
+ transition: none;
446
+ }
447
+ .mint-checkbox--row:hover .mint-checkbox__row-icon {
448
+ transform: none;
449
+ }
450
+ }
294
451
  /* BaseToggle Component Styles */
295
452
  .mint-toggle {
296
453
  display: inline-flex;
@@ -299,6 +456,24 @@
299
456
  cursor: pointer;
300
457
  user-select: none;
301
458
  }
459
+ .mint-toggle--default {
460
+ width: fit-content;
461
+ }
462
+ .mint-toggle--row {
463
+ width: 100%;
464
+ min-height: 2rem;
465
+ gap: 0.5rem;
466
+ padding: 0.375rem 0.5rem;
467
+ border-radius: var(--radius-sm, 0.375rem);
468
+ background: transparent;
469
+ box-sizing: border-box;
470
+ transition:
471
+ background-color 0.15s ease,
472
+ color 0.15s ease;
473
+ }
474
+ .mint-toggle--row:hover {
475
+ background: var(--bg-hover);
476
+ }
302
477
  .mint-toggle--reverse {
303
478
  flex-direction: row-reverse;
304
479
  justify-content: space-between;
@@ -317,6 +492,49 @@
317
492
  opacity: var(--mint-disabled-opacity);
318
493
  cursor: not-allowed;
319
494
  }
495
+ .mint-toggle--disabled.mint-toggle--row:hover {
496
+ background: transparent;
497
+ }
498
+ .mint-toggle__row-icon {
499
+ display: inline-flex;
500
+ align-items: center;
501
+ justify-content: center;
502
+ width: 0.875rem;
503
+ height: 0.875rem;
504
+ flex-shrink: 0;
505
+ transition:
506
+ color 0.15s ease,
507
+ transform 0.15s ease;
508
+ }
509
+ .mint-toggle--row:hover .mint-toggle__row-icon {
510
+ transform: scale(1.04);
511
+ }
512
+ .mint-toggle__row-svg {
513
+ width: 0.875rem;
514
+ height: 0.875rem;
515
+ }
516
+ .mint-toggle__row-text-icon {
517
+ font-size: 0.75rem;
518
+ font-weight: 700;
519
+ line-height: 1;
520
+ }
521
+ .mint-toggle__copy {
522
+ display: block;
523
+ flex: 1 1 auto;
524
+ min-width: 0;
525
+ }
526
+ .mint-toggle__copy .mint-tooltip {
527
+ max-width: 100%;
528
+ }
529
+ .mint-toggle--row .mint-toggle__label {
530
+ display: block;
531
+ overflow: hidden;
532
+ text-overflow: ellipsis;
533
+ white-space: nowrap;
534
+ }
535
+ .mint-toggle__label--tooltip {
536
+ cursor: help;
537
+ }
320
538
  .mint-toggle__track {
321
539
  position: relative;
322
540
  display: inline-block;
@@ -396,6 +614,7 @@
396
614
  }
397
615
  .mint-toggle__label {
398
616
  color: var(--text-primary);
617
+ line-height: 1.25;
399
618
  }
400
619
  .mint-toggle__label--sm {
401
620
  font-size: 0.875rem;
@@ -407,9 +626,14 @@
407
626
  font-size: 1rem;
408
627
  }
409
628
  @media (prefers-reduced-motion: reduce) {
410
- .mint-toggle__knob {
629
+ .mint-toggle--row,
630
+ .mint-toggle__row-icon,
631
+ .mint-toggle__knob {
411
632
  transition: none;
412
633
  }
634
+ .mint-toggle--row:hover .mint-toggle__row-icon {
635
+ transform: none;
636
+ }
413
637
  }
414
638
  /* BaseRadioGroup Component Styles */
415
639
  .mint-radio-group {
@@ -4802,24 +5026,43 @@ to {
4802
5026
  border-radius: var(--radius-lg);
4803
5027
  overflow: hidden;
4804
5028
  background-color: var(--bg-card);
5029
+ transition:
5030
+ border-color 150ms ease,
5031
+ box-shadow 150ms ease,
5032
+ transform 150ms ease;
4805
5033
  }
4806
- .mint-collapsible-card__header {
5034
+ .mint-collapsible-card:hover {
5035
+ border-color: color-mix(in srgb, var(--color-primary) 20%, var(--border-color));
5036
+ box-shadow: var(--shadow-sm);
5037
+ }
5038
+ .mint-collapsible-card__header-shell {
4807
5039
  display: flex;
4808
5040
  align-items: center;
4809
- justify-content: space-between;
4810
5041
  width: 100%;
5042
+ background-color: var(--bg-card);
5043
+ transition: background-color 0.15s ease;
5044
+ }
5045
+ .mint-collapsible-card__header-shell:hover {
5046
+ background-color: var(--bg-hover);
5047
+ }
5048
+ .mint-collapsible-card__header {
5049
+ display: flex;
5050
+ align-items: center;
5051
+ justify-content: flex-start;
5052
+ flex: 1;
5053
+ min-width: 0;
4811
5054
  padding: 0.75rem;
4812
5055
  text-align: left;
4813
- background-color: var(--bg-card);
5056
+ background-color: transparent;
4814
5057
  border: none;
4815
5058
  cursor: pointer;
4816
- transition: background-color 0.15s ease;
5059
+ transition: color 0.15s ease;
4817
5060
  gap: 0.75rem;
4818
5061
  font-family: inherit;
4819
5062
  min-height: 3rem;
4820
5063
  }
4821
5064
  .mint-collapsible-card__header:hover {
4822
- background-color: var(--bg-hover);
5065
+ background-color: transparent;
4823
5066
  }
4824
5067
  .mint-collapsible-card__header:focus-visible {
4825
5068
  outline: none;
@@ -4844,6 +5087,10 @@ to {
4844
5087
  height: 2rem;
4845
5088
  border-radius: var(--radius-md);
4846
5089
  flex-shrink: 0;
5090
+ transition: transform 180ms ease, background-color 150ms ease;
5091
+ }
5092
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__icon-badge {
5093
+ transform: scale(1.04);
4847
5094
  }
4848
5095
  .mint-collapsible-card__icon {
4849
5096
  width: 1rem;
@@ -4885,8 +5132,95 @@ to {
4885
5132
  .mint-collapsible-card__actions {
4886
5133
  display: flex;
4887
5134
  align-items: center;
4888
- gap: 0.75rem;
5135
+ gap: 0.375rem;
4889
5136
  flex-shrink: 0;
5137
+ padding-right: 0.625rem;
5138
+ }
5139
+ .mint-collapsible-card__badge {
5140
+ display: inline-flex;
5141
+ align-items: center;
5142
+ justify-content: center;
5143
+ min-width: 1.25rem;
5144
+ height: 1.25rem;
5145
+ padding: 0 0.375rem;
5146
+ border-radius: 9999px;
5147
+ background: color-mix(in srgb, var(--mint-sidebar-badge-color) 14%, transparent);
5148
+ color: var(--mint-sidebar-badge-color);
5149
+ font-size: 0.6875rem;
5150
+ font-weight: 700;
5151
+ line-height: 1;
5152
+ font-variant-numeric: tabular-nums;
5153
+ }
5154
+ .mint-collapsible-card__badge--primary,
5155
+ .mint-collapsible-card__action--primary {
5156
+ --mint-sidebar-badge-color: var(--color-primary);
5157
+ }
5158
+ .mint-collapsible-card__badge--cta,
5159
+ .mint-collapsible-card__action--cta {
5160
+ --mint-sidebar-badge-color: var(--color-cta);
5161
+ }
5162
+ .mint-collapsible-card__badge--success,
5163
+ .mint-collapsible-card__action--success {
5164
+ --mint-sidebar-badge-color: var(--mint-success);
5165
+ }
5166
+ .mint-collapsible-card__badge--warning,
5167
+ .mint-collapsible-card__action--warning {
5168
+ --mint-sidebar-badge-color: var(--mint-warning);
5169
+ }
5170
+ .mint-collapsible-card__badge--error,
5171
+ .mint-collapsible-card__action--error {
5172
+ --mint-sidebar-badge-color: var(--mint-error);
5173
+ }
5174
+ .mint-collapsible-card__badge--info,
5175
+ .mint-collapsible-card__action--info {
5176
+ --mint-sidebar-badge-color: var(--mint-info);
5177
+ }
5178
+ .mint-collapsible-card__badge--neutral,
5179
+ .mint-collapsible-card__action--neutral {
5180
+ --mint-sidebar-badge-color: var(--text-secondary);
5181
+ }
5182
+ .mint-collapsible-card__action,
5183
+ .mint-collapsible-card__chevron-button {
5184
+ display: inline-flex;
5185
+ align-items: center;
5186
+ justify-content: center;
5187
+ width: 1.75rem;
5188
+ height: 1.75rem;
5189
+ border: 0;
5190
+ border-radius: var(--radius-md);
5191
+ color: var(--mint-sidebar-badge-color, var(--text-muted));
5192
+ background: transparent;
5193
+ cursor: pointer;
5194
+ transition:
5195
+ color 150ms ease,
5196
+ background-color 150ms ease,
5197
+ transform 150ms ease;
5198
+ }
5199
+ .mint-collapsible-card__action:hover,
5200
+ .mint-collapsible-card__chevron-button:hover {
5201
+ color: var(--mint-sidebar-badge-color, var(--text-secondary));
5202
+ background: color-mix(in srgb, var(--mint-sidebar-badge-color, var(--text-secondary)) 10%, transparent);
5203
+ transform: translateY(-1px);
5204
+ }
5205
+ .mint-collapsible-card__action:focus-visible,
5206
+ .mint-collapsible-card__chevron-button:focus-visible {
5207
+ outline: none;
5208
+ box-shadow: var(--focus-ring);
5209
+ }
5210
+ .mint-collapsible-card__action:disabled,
5211
+ .mint-collapsible-card__action--disabled,
5212
+ .mint-collapsible-card__chevron-button:disabled {
5213
+ opacity: var(--mint-disabled-opacity);
5214
+ cursor: not-allowed;
5215
+ transform: none;
5216
+ }
5217
+ .mint-collapsible-card__action-icon {
5218
+ width: 0.875rem;
5219
+ height: 0.875rem;
5220
+ }
5221
+ .mint-collapsible-card__action-text-icon {
5222
+ font-size: 0.8125rem;
5223
+ line-height: 1;
4890
5224
  }
4891
5225
  .mint-collapsible-card__toggle {
4892
5226
  display: flex;
@@ -4924,8 +5258,8 @@ to {
4924
5258
  left: 1.125rem;
4925
5259
  }
4926
5260
  .mint-collapsible-card__chevron {
4927
- width: 1.25rem;
4928
- height: 1.25rem;
5261
+ width: 1rem;
5262
+ height: 1rem;
4929
5263
  color: var(--text-muted);
4930
5264
  transition: transform 0.2s ease;
4931
5265
  flex-shrink: 0;
@@ -4933,7 +5267,7 @@ to {
4933
5267
  .mint-collapsible-card__chevron--open {
4934
5268
  transform: rotate(180deg);
4935
5269
  }
4936
- .mint-collapsible-card__header:hover .mint-collapsible-card__chevron {
5270
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__chevron {
4937
5271
  color: var(--text-secondary);
4938
5272
  }
4939
5273
  .mint-collapsible-card__body {
@@ -4955,15 +5289,13 @@ to {
4955
5289
  gap: 0.5rem;
4956
5290
  }
4957
5291
  .mint-collapsible-card--dense .mint-collapsible-card__icon-badge {
4958
- width: 1.5rem;
4959
- height: 1.5rem;
4960
- border-radius: var(--radius);
4961
- background: transparent !important;
5292
+ width: 1.75rem;
5293
+ height: 1.75rem;
5294
+ border-radius: var(--radius);
4962
5295
  }
4963
5296
  .mint-collapsible-card--dense .mint-collapsible-card__icon {
4964
5297
  width: 0.875rem;
4965
5298
  height: 0.875rem;
4966
- opacity: 0.5;
4967
5299
  }
4968
5300
  .mint-collapsible-card--dense .mint-collapsible-card__title {
4969
5301
  font-size: 0.8125rem;
@@ -4972,7 +5304,8 @@ to {
4972
5304
  font-size: 0.6875rem;
4973
5305
  }
4974
5306
  .mint-collapsible-card--dense .mint-collapsible-card__actions {
4975
- gap: 0.5rem;
5307
+ gap: 0.25rem;
5308
+ padding-right: 0.5rem;
4976
5309
  }
4977
5310
  .mint-collapsible-card--dense .mint-collapsible-card__chevron {
4978
5311
  width: 0.875rem;
@@ -5003,6 +5336,18 @@ to {
5003
5336
  .mint-collapsible-card__chevron {
5004
5337
  transition: none;
5005
5338
  }
5339
+ .mint-collapsible-card,
5340
+ .mint-collapsible-card__icon-badge,
5341
+ .mint-collapsible-card__action,
5342
+ .mint-collapsible-card__chevron-button {
5343
+ transition: none;
5344
+ }
5345
+ .mint-collapsible-card:hover,
5346
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__icon-badge,
5347
+ .mint-collapsible-card__action:hover,
5348
+ .mint-collapsible-card__chevron-button:hover {
5349
+ transform: none;
5350
+ }
5006
5351
  .mint-collapsible-card__toggle-knob {
5007
5352
  transition: none;
5008
5353
  }
@@ -7731,7 +8076,7 @@ to { transform: rotate(360deg);
7731
8076
  height: 100%;
7732
8077
  overflow: hidden;
7733
8078
  background-color: var(--bg-secondary);
7734
- transition: width 180ms ease;
8079
+ transition: width 180ms ease, background-color 150ms ease;
7735
8080
  }
7736
8081
  .mint-sidebar--hidden {
7737
8082
  display: none;
@@ -7769,6 +8114,10 @@ to { transform: rotate(360deg);
7769
8114
  padding: 0.75rem;
7770
8115
  gap: 0.75rem;
7771
8116
  }
8117
+ .mint-sidebar--analysis.mint-sidebar--dense .mint-sidebar__sections {
8118
+ padding: 0.75rem;
8119
+ gap: 0.75rem;
8120
+ }
7772
8121
 
7773
8122
  /* Header / Footer slots */
7774
8123
  .mint-sidebar__header {
@@ -7884,6 +8233,91 @@ to { transform: rotate(360deg);
7884
8233
  align-items: center;
7885
8234
  gap: 0.5rem;
7886
8235
  }
8236
+ .mint-sidebar__collapsed--default {
8237
+ padding-top: 0.75rem;
8238
+ }
8239
+ .mint-sidebar__rail-item {
8240
+ position: relative;
8241
+ display: inline-flex;
8242
+ align-items: center;
8243
+ justify-content: center;
8244
+ width: 2rem;
8245
+ height: 2rem;
8246
+ border: 0;
8247
+ border-radius: var(--radius-md);
8248
+ color: var(--text-secondary);
8249
+ background: transparent;
8250
+ cursor: pointer;
8251
+ transition:
8252
+ background-color 150ms ease,
8253
+ transform 150ms ease;
8254
+ }
8255
+ .mint-sidebar__rail-item:hover {
8256
+ background: var(--bg-tertiary);
8257
+ transform: translateY(-1px);
8258
+ }
8259
+ .mint-sidebar__rail-item:focus-visible {
8260
+ outline: none;
8261
+ box-shadow: var(--focus-ring);
8262
+ }
8263
+ .mint-sidebar__rail-icon {
8264
+ display: inline-flex;
8265
+ align-items: center;
8266
+ justify-content: center;
8267
+ width: 1.75rem;
8268
+ height: 1.75rem;
8269
+ border-radius: var(--radius-md);
8270
+ transition: transform 150ms ease;
8271
+ }
8272
+ .mint-sidebar__rail-item:hover .mint-sidebar__rail-icon {
8273
+ transform: scale(1.04);
8274
+ }
8275
+ .mint-sidebar__rail-svg {
8276
+ width: 0.9375rem;
8277
+ height: 0.9375rem;
8278
+ }
8279
+ .mint-sidebar__rail-text-icon {
8280
+ font-size: 0.8125rem;
8281
+ font-weight: 700;
8282
+ line-height: 1;
8283
+ }
8284
+ .mint-sidebar__rail-badge {
8285
+ position: absolute;
8286
+ top: -0.25rem;
8287
+ right: -0.25rem;
8288
+ min-width: 1rem;
8289
+ height: 1rem;
8290
+ padding: 0 0.25rem;
8291
+ border-radius: 9999px;
8292
+ background: var(--mint-sidebar-rail-badge-color);
8293
+ color: white;
8294
+ font-size: 0.625rem;
8295
+ font-weight: 700;
8296
+ line-height: 1rem;
8297
+ text-align: center;
8298
+ font-variant-numeric: tabular-nums;
8299
+ }
8300
+ .mint-sidebar__rail-badge--primary {
8301
+ --mint-sidebar-rail-badge-color: var(--color-primary);
8302
+ }
8303
+ .mint-sidebar__rail-badge--cta {
8304
+ --mint-sidebar-rail-badge-color: var(--color-cta);
8305
+ }
8306
+ .mint-sidebar__rail-badge--success {
8307
+ --mint-sidebar-rail-badge-color: var(--mint-success);
8308
+ }
8309
+ .mint-sidebar__rail-badge--warning {
8310
+ --mint-sidebar-rail-badge-color: var(--mint-warning);
8311
+ }
8312
+ .mint-sidebar__rail-badge--error {
8313
+ --mint-sidebar-rail-badge-color: var(--mint-error);
8314
+ }
8315
+ .mint-sidebar__rail-badge--info {
8316
+ --mint-sidebar-rail-badge-color: var(--mint-info);
8317
+ }
8318
+ .mint-sidebar__rail-badge--neutral {
8319
+ --mint-sidebar-rail-badge-color: var(--text-secondary);
8320
+ }
7887
8321
 
7888
8322
  /* Dense sidebar variant — compact sections */
7889
8323
  .mint-sidebar--dense .mint-sidebar__sections {
@@ -7903,21 +8337,25 @@ to { transform: rotate(360deg);
7903
8337
  background-color: var(--bg-card);
7904
8338
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
7905
8339
  }
8340
+ .mint-sidebar--analysis .mint-sidebar__sections > .mint-collapsible-card {
8341
+ border-color: var(--border-color);
8342
+ border-radius: var(--radius-lg);
8343
+ }
7906
8344
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__header {
7907
8345
  padding: 0.625rem 0.75rem;
7908
8346
  min-height: auto;
7909
8347
  }
7910
8348
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon-badge {
7911
- width: 2.25rem;
7912
- height: 2.25rem;
8349
+ width: 1.75rem;
8350
+ height: 1.75rem;
7913
8351
  border-radius: var(--radius-md);
7914
8352
  }
7915
8353
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon {
7916
- width: 1.125rem;
7917
- height: 1.125rem;
8354
+ width: 0.9375rem;
8355
+ height: 0.9375rem;
7918
8356
  }
7919
8357
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon-text {
7920
- font-size: 1.125rem;
8358
+ font-size: 0.9375rem;
7921
8359
  }
7922
8360
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__title {
7923
8361
  font-size: 0.875rem;
@@ -7954,6 +8392,20 @@ to { transform: rotate(360deg);
7954
8392
  flex-direction: column;
7955
8393
  gap: 0.75rem;
7956
8394
  }
8395
+ .mint-sidebar__footer--collapsed {
8396
+ padding: 0.5rem;
8397
+ }
8398
+ @media (prefers-reduced-motion: reduce) {
8399
+ .mint-sidebar,
8400
+ .mint-sidebar__rail-item,
8401
+ .mint-sidebar__rail-icon {
8402
+ transition: none;
8403
+ }
8404
+ .mint-sidebar__rail-item:hover,
8405
+ .mint-sidebar__rail-item:hover .mint-sidebar__rail-icon {
8406
+ transform: none;
8407
+ }
8408
+ }
7957
8409
  /* AppLayout Component Styles */
7958
8410
  .mint-layout {
7959
8411
  display: flex;
@@ -12539,90 +12991,6 @@ to {
12539
12991
  width: 0.875rem;
12540
12992
  height: 0.875rem;
12541
12993
  }
12542
- /* Tooltip — Dark Short */
12543
- .mint-tooltip {
12544
- display: inline-flex;
12545
- }
12546
- .mint-tooltip__content {
12547
- position: absolute;
12548
- z-index: 9999;
12549
- display: inline-flex;
12550
- align-items: center;
12551
- gap: 0.5rem;
12552
- padding: 0.375rem 0.625rem;
12553
- font-size: 0.75rem;
12554
- line-height: 1.2;
12555
- color: #FFFFFF;
12556
- background: #0F172A;
12557
- border-radius: var(--radius-sm);
12558
- white-space: nowrap;
12559
- pointer-events: none;
12560
- box-shadow: 0 4px 12px rgba(15, 23, 42, 0.18);
12561
- }
12562
-
12563
- /* Multi-line opt-in via maxWidth prop */
12564
- .mint-tooltip__content--multiline {
12565
- white-space: normal;
12566
- line-height: 1.4;
12567
- }
12568
- .mint-tooltip__body {
12569
- display: inline;
12570
- }
12571
-
12572
- /* Keyboard shortcut chip */
12573
- .mint-tooltip__shortcut {
12574
- display: inline-flex;
12575
- align-items: center;
12576
- padding: 0.0625rem 0.375rem;
12577
- font-family: var(--font-mono, 'Fira Code', monospace);
12578
- font-size: 0.6875rem;
12579
- font-weight: 500;
12580
- color: rgba(255, 255, 255, 0.85);
12581
- background: rgba(255, 255, 255, 0.12);
12582
- border: 1px solid rgba(255, 255, 255, 0.18);
12583
- border-radius: 3px;
12584
- line-height: 1;
12585
- }
12586
-
12587
- /* Arrow — color matches the dark tooltip bg */
12588
- .mint-tooltip__content::after {
12589
- content: '';
12590
- position: absolute;
12591
- border-width: 4px;
12592
- border-style: solid;
12593
- }
12594
- .mint-tooltip__content--top::after,
12595
- .mint-tooltip__content--top-start::after,
12596
- .mint-tooltip__content--top-end::after {
12597
- top: 100%;
12598
- left: 50%;
12599
- transform: translateX(-50%);
12600
- border-color: #0F172A transparent transparent transparent;
12601
- }
12602
- .mint-tooltip__content--bottom::after,
12603
- .mint-tooltip__content--bottom-start::after,
12604
- .mint-tooltip__content--bottom-end::after {
12605
- bottom: 100%;
12606
- left: 50%;
12607
- transform: translateX(-50%);
12608
- border-color: transparent transparent #0F172A transparent;
12609
- }
12610
- .mint-tooltip__content--left::after,
12611
- .mint-tooltip__content--left-start::after,
12612
- .mint-tooltip__content--left-end::after {
12613
- left: 100%;
12614
- top: 50%;
12615
- transform: translateY(-50%);
12616
- border-color: transparent transparent transparent #0F172A;
12617
- }
12618
- .mint-tooltip__content--right::after,
12619
- .mint-tooltip__content--right-start::after,
12620
- .mint-tooltip__content--right-end::after {
12621
- right: 100%;
12622
- top: 50%;
12623
- transform: translateY(-50%);
12624
- border-color: transparent #0F172A transparent transparent;
12625
- }
12626
12994
  /* ChartContainer Component Styles */
12627
12995
  .mint-chart {
12628
12996
  background-color: var(--bg-card);
@@ -17997,7 +18365,7 @@ code, pre {
17997
18365
  height: 100%;
17998
18366
  overflow: hidden;
17999
18367
  background-color: var(--bg-secondary);
18000
- transition: width 180ms ease;
18368
+ transition: width 180ms ease, background-color 150ms ease;
18001
18369
  }
18002
18370
  .mint-sidebar--hidden {
18003
18371
  display: none;
@@ -18035,6 +18403,10 @@ code, pre {
18035
18403
  padding: 0.75rem;
18036
18404
  gap: 0.75rem;
18037
18405
  }
18406
+ .mint-sidebar--analysis.mint-sidebar--dense .mint-sidebar__sections {
18407
+ padding: 0.75rem;
18408
+ gap: 0.75rem;
18409
+ }
18038
18410
  /* Header / Footer slots */
18039
18411
  .mint-sidebar__header {
18040
18412
  padding: 0.75rem;
@@ -18148,6 +18520,91 @@ code, pre {
18148
18520
  align-items: center;
18149
18521
  gap: 0.5rem;
18150
18522
  }
18523
+ .mint-sidebar__collapsed--default {
18524
+ padding-top: 0.75rem;
18525
+ }
18526
+ .mint-sidebar__rail-item {
18527
+ position: relative;
18528
+ display: inline-flex;
18529
+ align-items: center;
18530
+ justify-content: center;
18531
+ width: 2rem;
18532
+ height: 2rem;
18533
+ border: 0;
18534
+ border-radius: var(--radius-md);
18535
+ color: var(--text-secondary);
18536
+ background: transparent;
18537
+ cursor: pointer;
18538
+ transition:
18539
+ background-color 150ms ease,
18540
+ transform 150ms ease;
18541
+ }
18542
+ .mint-sidebar__rail-item:hover {
18543
+ background: var(--bg-tertiary);
18544
+ transform: translateY(-1px);
18545
+ }
18546
+ .mint-sidebar__rail-item:focus-visible {
18547
+ outline: none;
18548
+ box-shadow: var(--focus-ring);
18549
+ }
18550
+ .mint-sidebar__rail-icon {
18551
+ display: inline-flex;
18552
+ align-items: center;
18553
+ justify-content: center;
18554
+ width: 1.75rem;
18555
+ height: 1.75rem;
18556
+ border-radius: var(--radius-md);
18557
+ transition: transform 150ms ease;
18558
+ }
18559
+ .mint-sidebar__rail-item:hover .mint-sidebar__rail-icon {
18560
+ transform: scale(1.04);
18561
+ }
18562
+ .mint-sidebar__rail-svg {
18563
+ width: 0.9375rem;
18564
+ height: 0.9375rem;
18565
+ }
18566
+ .mint-sidebar__rail-text-icon {
18567
+ font-size: 0.8125rem;
18568
+ font-weight: 700;
18569
+ line-height: 1;
18570
+ }
18571
+ .mint-sidebar__rail-badge {
18572
+ position: absolute;
18573
+ top: -0.25rem;
18574
+ right: -0.25rem;
18575
+ min-width: 1rem;
18576
+ height: 1rem;
18577
+ padding: 0 0.25rem;
18578
+ border-radius: 9999px;
18579
+ background: var(--mint-sidebar-rail-badge-color);
18580
+ color: white;
18581
+ font-size: 0.625rem;
18582
+ font-weight: 700;
18583
+ line-height: 1rem;
18584
+ text-align: center;
18585
+ font-variant-numeric: tabular-nums;
18586
+ }
18587
+ .mint-sidebar__rail-badge--primary {
18588
+ --mint-sidebar-rail-badge-color: var(--color-primary);
18589
+ }
18590
+ .mint-sidebar__rail-badge--cta {
18591
+ --mint-sidebar-rail-badge-color: var(--color-cta);
18592
+ }
18593
+ .mint-sidebar__rail-badge--success {
18594
+ --mint-sidebar-rail-badge-color: var(--mint-success);
18595
+ }
18596
+ .mint-sidebar__rail-badge--warning {
18597
+ --mint-sidebar-rail-badge-color: var(--mint-warning);
18598
+ }
18599
+ .mint-sidebar__rail-badge--error {
18600
+ --mint-sidebar-rail-badge-color: var(--mint-error);
18601
+ }
18602
+ .mint-sidebar__rail-badge--info {
18603
+ --mint-sidebar-rail-badge-color: var(--mint-info);
18604
+ }
18605
+ .mint-sidebar__rail-badge--neutral {
18606
+ --mint-sidebar-rail-badge-color: var(--text-secondary);
18607
+ }
18151
18608
  /* Dense sidebar variant — compact sections */
18152
18609
  .mint-sidebar--dense .mint-sidebar__sections {
18153
18610
  padding: 0.5rem;
@@ -18165,21 +18622,25 @@ code, pre {
18165
18622
  background-color: var(--bg-card);
18166
18623
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
18167
18624
  }
18625
+ .mint-sidebar--analysis .mint-sidebar__sections > .mint-collapsible-card {
18626
+ border-color: var(--border-color);
18627
+ border-radius: var(--radius-lg);
18628
+ }
18168
18629
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__header {
18169
18630
  padding: 0.625rem 0.75rem;
18170
18631
  min-height: auto;
18171
18632
  }
18172
18633
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon-badge {
18173
- width: 2.25rem;
18174
- height: 2.25rem;
18634
+ width: 1.75rem;
18635
+ height: 1.75rem;
18175
18636
  border-radius: var(--radius-md);
18176
18637
  }
18177
18638
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon {
18178
- width: 1.125rem;
18179
- height: 1.125rem;
18639
+ width: 0.9375rem;
18640
+ height: 0.9375rem;
18180
18641
  }
18181
18642
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__icon-text {
18182
- font-size: 1.125rem;
18643
+ font-size: 0.9375rem;
18183
18644
  }
18184
18645
  .mint-sidebar__sections > .mint-collapsible-card .mint-collapsible-card__title {
18185
18646
  font-size: 0.875rem;
@@ -18215,6 +18676,21 @@ code, pre {
18215
18676
  flex-direction: column;
18216
18677
  gap: 0.75rem;
18217
18678
  }
18679
+ .mint-sidebar__footer--collapsed {
18680
+ padding: 0.5rem;
18681
+ }
18682
+ @media (prefers-reduced-motion: reduce) {
18683
+ .mint-sidebar,
18684
+ .mint-sidebar__rail-item,
18685
+ .mint-sidebar__rail-icon {
18686
+ transition: none;
18687
+ }
18688
+
18689
+ .mint-sidebar__rail-item:hover,
18690
+ .mint-sidebar__rail-item:hover .mint-sidebar__rail-icon {
18691
+ transform: none;
18692
+ }
18693
+ }
18218
18694
  /* AppTopBar - BEM-style naming for external package consumers */
18219
18695
  /* Motion tokens — shared across AppTopBar subcomponents */
18220
18696
  :root {
@@ -18636,15 +19112,77 @@ code, pre {
18636
19112
  cursor: pointer;
18637
19113
  user-select: none;
18638
19114
  }
19115
+ .mint-checkbox--default {
19116
+ width: fit-content;
19117
+ }
19118
+ .mint-checkbox--row {
19119
+ width: 100%;
19120
+ min-height: 2rem;
19121
+ gap: 0.5rem;
19122
+ padding: 0.375rem 0.5rem;
19123
+ border-radius: var(--radius-sm, 0.375rem);
19124
+ background: transparent;
19125
+ box-sizing: border-box;
19126
+ transition:
19127
+ background-color 0.15s ease,
19128
+ color 0.15s ease;
19129
+ }
19130
+ .mint-checkbox--row:hover {
19131
+ background: var(--bg-hover);
19132
+ }
18639
19133
  .mint-checkbox--disabled {
18640
19134
  opacity: var(--mint-disabled-opacity);
18641
19135
  cursor: not-allowed;
18642
19136
  }
19137
+ .mint-checkbox--disabled.mint-checkbox--row:hover {
19138
+ background: transparent;
19139
+ }
19140
+ .mint-checkbox__row-icon {
19141
+ display: inline-flex;
19142
+ align-items: center;
19143
+ justify-content: center;
19144
+ width: 0.875rem;
19145
+ height: 0.875rem;
19146
+ flex-shrink: 0;
19147
+ transition:
19148
+ color 0.15s ease,
19149
+ transform 0.15s ease;
19150
+ }
19151
+ .mint-checkbox--row:hover .mint-checkbox__row-icon {
19152
+ transform: scale(1.04);
19153
+ }
19154
+ .mint-checkbox__row-svg {
19155
+ width: 0.875rem;
19156
+ height: 0.875rem;
19157
+ }
19158
+ .mint-checkbox__row-text-icon {
19159
+ font-size: 0.75rem;
19160
+ font-weight: 700;
19161
+ line-height: 1;
19162
+ }
19163
+ .mint-checkbox__copy {
19164
+ display: block;
19165
+ flex: 1 1 auto;
19166
+ min-width: 0;
19167
+ }
19168
+ .mint-checkbox__copy .mint-tooltip {
19169
+ max-width: 100%;
19170
+ }
19171
+ .mint-checkbox--row .mint-checkbox__label {
19172
+ display: block;
19173
+ overflow: hidden;
19174
+ text-overflow: ellipsis;
19175
+ white-space: nowrap;
19176
+ }
19177
+ .mint-checkbox__label--tooltip {
19178
+ cursor: help;
19179
+ }
18643
19180
  .mint-checkbox__input-wrapper {
18644
19181
  position: relative;
18645
19182
  display: flex;
18646
19183
  align-items: center;
18647
19184
  justify-content: center;
19185
+ flex-shrink: 0;
18648
19186
  }
18649
19187
  .mint-checkbox__native {
18650
19188
  position: absolute;
@@ -18721,6 +19259,7 @@ code, pre {
18721
19259
  }
18722
19260
  .mint-checkbox__label {
18723
19261
  color: var(--text-primary);
19262
+ line-height: 1.25;
18724
19263
  }
18725
19264
  .mint-checkbox__label--sm {
18726
19265
  font-size: 0.875rem;
@@ -18731,30 +19270,60 @@ code, pre {
18731
19270
  .mint-checkbox__label--lg {
18732
19271
  font-size: 1rem;
18733
19272
  }
19273
+ @media (prefers-reduced-motion: reduce) {
19274
+ .mint-checkbox--row,
19275
+ .mint-checkbox__row-icon,
19276
+ .mint-checkbox__box {
19277
+ transition: none;
19278
+ }
19279
+
19280
+ .mint-checkbox--row:hover .mint-checkbox__row-icon {
19281
+ transform: none;
19282
+ }
19283
+ }
18734
19284
  /* CollapsibleCard Component Styles */
18735
19285
  .mint-collapsible-card {
18736
19286
  border: 1px solid var(--border-color);
18737
19287
  border-radius: var(--radius-lg);
18738
19288
  overflow: hidden;
18739
19289
  background-color: var(--bg-card);
19290
+ transition:
19291
+ border-color 150ms ease,
19292
+ box-shadow 150ms ease,
19293
+ transform 150ms ease;
18740
19294
  }
18741
- .mint-collapsible-card__header {
19295
+ .mint-collapsible-card:hover {
19296
+ border-color: color-mix(in srgb, var(--color-primary) 20%, var(--border-color));
19297
+ box-shadow: var(--shadow-sm);
19298
+ }
19299
+ .mint-collapsible-card__header-shell {
18742
19300
  display: flex;
18743
19301
  align-items: center;
18744
- justify-content: space-between;
18745
19302
  width: 100%;
19303
+ background-color: var(--bg-card);
19304
+ transition: background-color 0.15s ease;
19305
+ }
19306
+ .mint-collapsible-card__header-shell:hover {
19307
+ background-color: var(--bg-hover);
19308
+ }
19309
+ .mint-collapsible-card__header {
19310
+ display: flex;
19311
+ align-items: center;
19312
+ justify-content: flex-start;
19313
+ flex: 1;
19314
+ min-width: 0;
18746
19315
  padding: 0.75rem;
18747
19316
  text-align: left;
18748
- background-color: var(--bg-card);
19317
+ background-color: transparent;
18749
19318
  border: none;
18750
19319
  cursor: pointer;
18751
- transition: background-color 0.15s ease;
19320
+ transition: color 0.15s ease;
18752
19321
  gap: 0.75rem;
18753
19322
  font-family: inherit;
18754
19323
  min-height: 3rem;
18755
19324
  }
18756
19325
  .mint-collapsible-card__header:hover {
18757
- background-color: var(--bg-hover);
19326
+ background-color: transparent;
18758
19327
  }
18759
19328
  .mint-collapsible-card__header:focus-visible {
18760
19329
  outline: none;
@@ -18779,6 +19348,10 @@ code, pre {
18779
19348
  height: 2rem;
18780
19349
  border-radius: var(--radius-md);
18781
19350
  flex-shrink: 0;
19351
+ transition: transform 180ms ease, background-color 150ms ease;
19352
+ }
19353
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__icon-badge {
19354
+ transform: scale(1.04);
18782
19355
  }
18783
19356
  .mint-collapsible-card__icon {
18784
19357
  width: 1rem;
@@ -18820,8 +19393,95 @@ code, pre {
18820
19393
  .mint-collapsible-card__actions {
18821
19394
  display: flex;
18822
19395
  align-items: center;
18823
- gap: 0.75rem;
19396
+ gap: 0.375rem;
18824
19397
  flex-shrink: 0;
19398
+ padding-right: 0.625rem;
19399
+ }
19400
+ .mint-collapsible-card__badge {
19401
+ display: inline-flex;
19402
+ align-items: center;
19403
+ justify-content: center;
19404
+ min-width: 1.25rem;
19405
+ height: 1.25rem;
19406
+ padding: 0 0.375rem;
19407
+ border-radius: 9999px;
19408
+ background: color-mix(in srgb, var(--mint-sidebar-badge-color) 14%, transparent);
19409
+ color: var(--mint-sidebar-badge-color);
19410
+ font-size: 0.6875rem;
19411
+ font-weight: 700;
19412
+ line-height: 1;
19413
+ font-variant-numeric: tabular-nums;
19414
+ }
19415
+ .mint-collapsible-card__badge--primary,
19416
+ .mint-collapsible-card__action--primary {
19417
+ --mint-sidebar-badge-color: var(--color-primary);
19418
+ }
19419
+ .mint-collapsible-card__badge--cta,
19420
+ .mint-collapsible-card__action--cta {
19421
+ --mint-sidebar-badge-color: var(--color-cta);
19422
+ }
19423
+ .mint-collapsible-card__badge--success,
19424
+ .mint-collapsible-card__action--success {
19425
+ --mint-sidebar-badge-color: var(--mint-success);
19426
+ }
19427
+ .mint-collapsible-card__badge--warning,
19428
+ .mint-collapsible-card__action--warning {
19429
+ --mint-sidebar-badge-color: var(--mint-warning);
19430
+ }
19431
+ .mint-collapsible-card__badge--error,
19432
+ .mint-collapsible-card__action--error {
19433
+ --mint-sidebar-badge-color: var(--mint-error);
19434
+ }
19435
+ .mint-collapsible-card__badge--info,
19436
+ .mint-collapsible-card__action--info {
19437
+ --mint-sidebar-badge-color: var(--mint-info);
19438
+ }
19439
+ .mint-collapsible-card__badge--neutral,
19440
+ .mint-collapsible-card__action--neutral {
19441
+ --mint-sidebar-badge-color: var(--text-secondary);
19442
+ }
19443
+ .mint-collapsible-card__action,
19444
+ .mint-collapsible-card__chevron-button {
19445
+ display: inline-flex;
19446
+ align-items: center;
19447
+ justify-content: center;
19448
+ width: 1.75rem;
19449
+ height: 1.75rem;
19450
+ border: 0;
19451
+ border-radius: var(--radius-md);
19452
+ color: var(--mint-sidebar-badge-color, var(--text-muted));
19453
+ background: transparent;
19454
+ cursor: pointer;
19455
+ transition:
19456
+ color 150ms ease,
19457
+ background-color 150ms ease,
19458
+ transform 150ms ease;
19459
+ }
19460
+ .mint-collapsible-card__action:hover,
19461
+ .mint-collapsible-card__chevron-button:hover {
19462
+ color: var(--mint-sidebar-badge-color, var(--text-secondary));
19463
+ background: color-mix(in srgb, var(--mint-sidebar-badge-color, var(--text-secondary)) 10%, transparent);
19464
+ transform: translateY(-1px);
19465
+ }
19466
+ .mint-collapsible-card__action:focus-visible,
19467
+ .mint-collapsible-card__chevron-button:focus-visible {
19468
+ outline: none;
19469
+ box-shadow: var(--focus-ring);
19470
+ }
19471
+ .mint-collapsible-card__action:disabled,
19472
+ .mint-collapsible-card__action--disabled,
19473
+ .mint-collapsible-card__chevron-button:disabled {
19474
+ opacity: var(--mint-disabled-opacity);
19475
+ cursor: not-allowed;
19476
+ transform: none;
19477
+ }
19478
+ .mint-collapsible-card__action-icon {
19479
+ width: 0.875rem;
19480
+ height: 0.875rem;
19481
+ }
19482
+ .mint-collapsible-card__action-text-icon {
19483
+ font-size: 0.8125rem;
19484
+ line-height: 1;
18825
19485
  }
18826
19486
  .mint-collapsible-card__toggle {
18827
19487
  display: flex;
@@ -18859,8 +19519,8 @@ code, pre {
18859
19519
  left: 1.125rem;
18860
19520
  }
18861
19521
  .mint-collapsible-card__chevron {
18862
- width: 1.25rem;
18863
- height: 1.25rem;
19522
+ width: 1rem;
19523
+ height: 1rem;
18864
19524
  color: var(--text-muted);
18865
19525
  transition: transform 0.2s ease;
18866
19526
  flex-shrink: 0;
@@ -18868,7 +19528,7 @@ code, pre {
18868
19528
  .mint-collapsible-card__chevron--open {
18869
19529
  transform: rotate(180deg);
18870
19530
  }
18871
- .mint-collapsible-card__header:hover .mint-collapsible-card__chevron {
19531
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__chevron {
18872
19532
  color: var(--text-secondary);
18873
19533
  }
18874
19534
  .mint-collapsible-card__body {
@@ -18889,15 +19549,13 @@ code, pre {
18889
19549
  gap: 0.5rem;
18890
19550
  }
18891
19551
  .mint-collapsible-card--dense .mint-collapsible-card__icon-badge {
18892
- width: 1.5rem;
18893
- height: 1.5rem;
19552
+ width: 1.75rem;
19553
+ height: 1.75rem;
18894
19554
  border-radius: var(--radius);
18895
- background: transparent !important;
18896
19555
  }
18897
19556
  .mint-collapsible-card--dense .mint-collapsible-card__icon {
18898
19557
  width: 0.875rem;
18899
19558
  height: 0.875rem;
18900
- opacity: 0.5;
18901
19559
  }
18902
19560
  .mint-collapsible-card--dense .mint-collapsible-card__title {
18903
19561
  font-size: 0.8125rem;
@@ -18906,7 +19564,8 @@ code, pre {
18906
19564
  font-size: 0.6875rem;
18907
19565
  }
18908
19566
  .mint-collapsible-card--dense .mint-collapsible-card__actions {
18909
- gap: 0.5rem;
19567
+ gap: 0.25rem;
19568
+ padding-right: 0.5rem;
18910
19569
  }
18911
19570
  .mint-collapsible-card--dense .mint-collapsible-card__chevron {
18912
19571
  width: 0.875rem;
@@ -18937,6 +19596,20 @@ code, pre {
18937
19596
  transition: none;
18938
19597
  }
18939
19598
 
19599
+ .mint-collapsible-card,
19600
+ .mint-collapsible-card__icon-badge,
19601
+ .mint-collapsible-card__action,
19602
+ .mint-collapsible-card__chevron-button {
19603
+ transition: none;
19604
+ }
19605
+
19606
+ .mint-collapsible-card:hover,
19607
+ .mint-collapsible-card__header-shell:hover .mint-collapsible-card__icon-badge,
19608
+ .mint-collapsible-card__action:hover,
19609
+ .mint-collapsible-card__chevron-button:hover {
19610
+ transform: none;
19611
+ }
19612
+
18940
19613
  .mint-collapsible-card__toggle-knob {
18941
19614
  transition: none;
18942
19615
  }
@@ -22428,6 +23101,24 @@ html.dark .mint-toast__item .mint-toast__message {
22428
23101
  cursor: pointer;
22429
23102
  user-select: none;
22430
23103
  }
23104
+ .mint-toggle--default {
23105
+ width: fit-content;
23106
+ }
23107
+ .mint-toggle--row {
23108
+ width: 100%;
23109
+ min-height: 2rem;
23110
+ gap: 0.5rem;
23111
+ padding: 0.375rem 0.5rem;
23112
+ border-radius: var(--radius-sm, 0.375rem);
23113
+ background: transparent;
23114
+ box-sizing: border-box;
23115
+ transition:
23116
+ background-color 0.15s ease,
23117
+ color 0.15s ease;
23118
+ }
23119
+ .mint-toggle--row:hover {
23120
+ background: var(--bg-hover);
23121
+ }
22431
23122
  .mint-toggle--reverse {
22432
23123
  flex-direction: row-reverse;
22433
23124
  justify-content: space-between;
@@ -22445,6 +23136,49 @@ html.dark .mint-toast__item .mint-toast__message {
22445
23136
  opacity: var(--mint-disabled-opacity);
22446
23137
  cursor: not-allowed;
22447
23138
  }
23139
+ .mint-toggle--disabled.mint-toggle--row:hover {
23140
+ background: transparent;
23141
+ }
23142
+ .mint-toggle__row-icon {
23143
+ display: inline-flex;
23144
+ align-items: center;
23145
+ justify-content: center;
23146
+ width: 0.875rem;
23147
+ height: 0.875rem;
23148
+ flex-shrink: 0;
23149
+ transition:
23150
+ color 0.15s ease,
23151
+ transform 0.15s ease;
23152
+ }
23153
+ .mint-toggle--row:hover .mint-toggle__row-icon {
23154
+ transform: scale(1.04);
23155
+ }
23156
+ .mint-toggle__row-svg {
23157
+ width: 0.875rem;
23158
+ height: 0.875rem;
23159
+ }
23160
+ .mint-toggle__row-text-icon {
23161
+ font-size: 0.75rem;
23162
+ font-weight: 700;
23163
+ line-height: 1;
23164
+ }
23165
+ .mint-toggle__copy {
23166
+ display: block;
23167
+ flex: 1 1 auto;
23168
+ min-width: 0;
23169
+ }
23170
+ .mint-toggle__copy .mint-tooltip {
23171
+ max-width: 100%;
23172
+ }
23173
+ .mint-toggle--row .mint-toggle__label {
23174
+ display: block;
23175
+ overflow: hidden;
23176
+ text-overflow: ellipsis;
23177
+ white-space: nowrap;
23178
+ }
23179
+ .mint-toggle__label--tooltip {
23180
+ cursor: help;
23181
+ }
22448
23182
  .mint-toggle__track {
22449
23183
  position: relative;
22450
23184
  display: inline-block;
@@ -22524,6 +23258,7 @@ html.dark .mint-toast__item .mint-toast__message {
22524
23258
  }
22525
23259
  .mint-toggle__label {
22526
23260
  color: var(--text-primary);
23261
+ line-height: 1.25;
22527
23262
  }
22528
23263
  .mint-toggle__label--sm {
22529
23264
  font-size: 0.875rem;
@@ -22535,9 +23270,15 @@ html.dark .mint-toast__item .mint-toast__message {
22535
23270
  font-size: 1rem;
22536
23271
  }
22537
23272
  @media (prefers-reduced-motion: reduce) {
23273
+ .mint-toggle--row,
23274
+ .mint-toggle__row-icon,
22538
23275
  .mint-toggle__knob {
22539
23276
  transition: none;
22540
23277
  }
23278
+
23279
+ .mint-toggle--row:hover .mint-toggle__row-icon {
23280
+ transform: none;
23281
+ }
22541
23282
  }
22542
23283
  /* WellPlate Component Styles */
22543
23284
  .mint-well-plate {