@morscherlab/mint-sdk 1.0.0-beta.4 → 1.0.0-beta.6

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 (58) hide show
  1. package/dist/components/AppSidebar.vue.d.ts +1 -1
  2. package/dist/components/index.js +2 -2
  3. package/dist/{components-BkGF4B4y.js → components-DihbSJjU.js} +2524 -2517
  4. package/dist/components-DihbSJjU.js.map +1 -0
  5. package/dist/composables/index.js +3 -3
  6. package/dist/{composables-CHsME9H1.js → composables-BcgZ6diz.js} +2 -2
  7. package/dist/{composables-CHsME9H1.js.map → composables-BcgZ6diz.js.map} +1 -1
  8. package/dist/index.js +5 -5
  9. package/dist/install.js +2 -2
  10. package/dist/styles.css +738 -738
  11. package/dist/templates/adapters.d.ts +7 -1
  12. package/dist/templates/catalog.d.ts +5 -5
  13. package/dist/templates/index.d.ts +2 -2
  14. package/dist/templates/index.js +2 -2
  15. package/dist/templates/presets.d.ts +4 -4
  16. package/dist/templates/types.d.ts +4 -1
  17. package/dist/{templates-B5jmTWuk.js → templates-Cyt0Suwf.js} +213 -19
  18. package/dist/{templates-B5jmTWuk.js.map → templates-Cyt0Suwf.js.map} +1 -1
  19. package/dist/{useScheduleDrag-BgzpQT53.js → useExperimentData-CM6Y0u5L.js} +183 -183
  20. package/dist/useExperimentData-CM6Y0u5L.js.map +1 -0
  21. package/package.json +1 -1
  22. package/src/__tests__/components/AppSidebar.test.ts +4 -2
  23. package/src/__tests__/components/AppTopBar.test.ts +9 -3
  24. package/src/__tests__/components/{AppPageSelector.test.ts → AppTopBarPageSelector.test.ts} +8 -8
  25. package/src/__tests__/components/{AppPillNav.test.ts → AppTopBarPillNav.test.ts} +7 -7
  26. package/src/__tests__/components/BioTemplatePackWorkspaceView.test.ts +17 -0
  27. package/src/__tests__/components/BioTemplatePresetWorkspaceView.test.ts +22 -0
  28. package/src/__tests__/components/BioTemplateRenderer.test.ts +25 -0
  29. package/src/__tests__/components/ComponentBindingRenderer.test.ts +117 -0
  30. package/src/__tests__/composables/useBioTemplatePackWorkspace.test.ts +1 -1
  31. package/src/__tests__/composables/useBioTemplatePresetWorkspace.test.ts +1 -1
  32. package/src/__tests__/composables/useControlSchema.test.ts +1 -1
  33. package/src/__tests__/templates/templates.test.ts +44 -0
  34. package/src/components/AppSidebar.vue +3 -3
  35. package/src/components/AppTopBar.vue +7 -7
  36. package/src/components/BioTemplatePresetWorkspaceView.vue +3 -3
  37. package/src/components/BioTemplateRenderer.story.vue +2 -2
  38. package/src/components/ComponentBindingRenderer.story.vue +30 -0
  39. package/src/components/ComponentBindingRenderer.vue +9 -0
  40. package/src/components/ExperimentPopover.story.vue +2 -2
  41. package/src/styles/components/app-page-selector.css +1 -1
  42. package/src/styles/components/app-pill-nav.css +1 -1
  43. package/src/styles/components/experiment-popover.css +2 -2
  44. package/src/templates/adapters.ts +193 -0
  45. package/src/templates/catalog.ts +5 -5
  46. package/src/templates/componentBindings.ts +52 -3
  47. package/src/templates/index.ts +6 -0
  48. package/src/templates/packs.ts +10 -1
  49. package/src/templates/presets.ts +14 -4
  50. package/src/templates/types.ts +4 -0
  51. package/dist/components-BkGF4B4y.js.map +0 -1
  52. package/dist/useScheduleDrag-BgzpQT53.js.map +0 -1
  53. /package/dist/__tests__/components/{AppPageSelector.test.d.ts → AppTopBarPageSelector.test.d.ts} +0 -0
  54. /package/dist/__tests__/components/{AppPillNav.test.d.ts → AppTopBarPillNav.test.d.ts} +0 -0
  55. /package/dist/components/internal/{AppPageSelectorInternal.vue.d.ts → AppTopBarPageSelectorInternal.vue.d.ts} +0 -0
  56. /package/dist/components/internal/{AppPillNavInternal.vue.d.ts → AppTopBarPillNavInternal.vue.d.ts} +0 -0
  57. /package/src/components/internal/{AppPageSelectorInternal.vue → AppTopBarPageSelectorInternal.vue} +0 -0
  58. /package/src/components/internal/{AppPillNavInternal.vue → AppTopBarPillNavInternal.vue} +0 -0
package/dist/styles.css CHANGED
@@ -5409,7 +5409,7 @@ html.dark .mint-settings-modal__rail-item--active {
5409
5409
  transform: none;
5410
5410
  }
5411
5411
  }
5412
- /* ExperimentPopover — aligned with refresh design (AppPluginSwitcher / AppPageSelector) */
5412
+ /* ExperimentPopover — aligned with refresh design (AppPluginSwitcher / AppTopBar page selector) */
5413
5413
 
5414
5414
  /* Container */
5415
5415
  .mint-experiment-popover {
@@ -5475,7 +5475,7 @@ html.dark .mint-settings-modal__rail-item--active {
5475
5475
  transition-duration: 0.05s;
5476
5476
  }
5477
5477
 
5478
- /* Active (panel open) — ring treatment, same language as PluginSwitcher/PageSelector */
5478
+ /* Active (panel open) — ring treatment, same language as PluginSwitcher/page selector */
5479
5479
  .mint-experiment-popover__trigger--active {
5480
5480
  border-color: var(--color-primary);
5481
5481
  box-shadow: 0 0 0 3px var(--color-primary-soft);
@@ -6476,7 +6476,7 @@ to { transform: rotate(360deg);
6476
6476
  .mint-plugin-icon__img {
6477
6477
  object-fit: contain;
6478
6478
  }
6479
- /* AppPageSelector — left-side page dropdown */
6479
+ /* AppTopBar page selector — left-side route/page dropdown */
6480
6480
  .mint-page-selector {
6481
6481
  position: relative;
6482
6482
  flex-shrink: 0;
@@ -6662,7 +6662,7 @@ to { transform: rotate(360deg);
6662
6662
  color: var(--text-muted);
6663
6663
  white-space: nowrap;
6664
6664
  }
6665
- /* AppPillNav — centered top-level navigation pills */
6665
+ /* AppTopBar pillNav — centered top-level navigation pills */
6666
6666
  .mint-pill-nav {
6667
6667
  display: inline-flex;
6668
6668
  padding: 0.1875rem;
@@ -11535,418 +11535,839 @@ to {
11535
11535
  transition: none;
11536
11536
  }
11537
11537
  }
11538
-
11539
- .mint-component-binding-renderer[data-v-a3c3536d] {
11540
- display: grid;
11541
- gap: 1rem;
11542
- min-width: 0;
11543
- }
11544
- .mint-component-binding-renderer--grid[data-v-a3c3536d] {
11545
- grid-template-columns: repeat(auto-fit, minmax(min(100%, 28rem), 1fr));
11546
- }
11547
- .mint-component-binding-renderer--stack[data-v-a3c3536d] {
11548
- grid-template-columns: minmax(0, 1fr);
11549
- }
11550
- .mint-component-binding-renderer--dense[data-v-a3c3536d] {
11551
- gap: 0.75rem;
11552
- }
11553
- .mint-component-binding-renderer__item[data-v-a3c3536d] {
11554
- min-width: 0;
11538
+ /* ScheduleCalendar Component Styles */
11539
+ .mint-schedule {
11540
+ border: 1px solid var(--border-color);
11541
+ border-radius: var(--radius-lg);
11542
+ background-color: var(--bg-card);
11555
11543
  overflow: hidden;
11556
- border: 1px solid var(--border-color, #e5e7eb);
11557
- border-radius: 0.5rem;
11558
- background: var(--bg-card, #ffffff);
11559
- box-shadow: var(--shadow-sm, 0 1px 2px rgb(15 23 42 / 0.06));
11560
11544
  }
11561
- .mint-component-binding-renderer__header[data-v-a3c3536d] {
11545
+
11546
+ /* Header */
11547
+ .mint-schedule__header {
11562
11548
  display: flex;
11563
- align-items: flex-start;
11549
+ align-items: center;
11564
11550
  justify-content: space-between;
11565
- gap: 1rem;
11566
11551
  padding: 0.75rem 1rem;
11567
- border-bottom: 1px solid var(--border-color, #e5e7eb);
11568
- background: var(--bg-secondary, #f8fafc);
11552
+ border-bottom: 1px solid var(--border-color);
11569
11553
  }
11570
- .mint-component-binding-renderer__title-group[data-v-a3c3536d] {
11571
- min-width: 0;
11554
+ .mint-schedule__nav {
11555
+ display: flex;
11556
+ align-items: center;
11557
+ gap: 0.25rem;
11572
11558
  }
11573
- .mint-component-binding-renderer__component[data-v-a3c3536d] {
11574
- margin: 0;
11575
- color: var(--text-primary, #0f172a);
11576
- font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
11577
- font-size: 0.8125rem;
11578
- font-weight: 600;
11559
+ .mint-schedule__nav-btn {
11560
+ padding: 0.375rem;
11561
+ border-radius: 9999px;
11562
+ background: transparent;
11563
+ border: none;
11564
+ cursor: pointer;
11565
+ color: var(--text-muted);
11566
+ transition: background-color 0.15s ease, color 0.15s ease;
11567
+ display: flex;
11568
+ align-items: center;
11569
+ justify-content: center;
11579
11570
  }
11580
- .mint-component-binding-renderer__source[data-v-a3c3536d],
11581
- .mint-component-binding-renderer__description[data-v-a3c3536d],
11582
- .mint-component-binding-renderer__empty[data-v-a3c3536d] {
11583
- margin: 0;
11584
- color: var(--text-secondary, #475569);
11571
+ .mint-schedule__nav-btn:hover {
11572
+ background-color: var(--bg-tertiary);
11573
+ color: var(--text-primary);
11574
+ }
11575
+ .mint-schedule__nav-btn svg {
11576
+ width: 1.25rem;
11577
+ height: 1.25rem;
11578
+ }
11579
+ .mint-schedule__today-btn {
11580
+ padding: 0.25rem 0.75rem;
11581
+ border-radius: var(--radius);
11582
+ background: transparent;
11583
+ border: 1px solid var(--border-color);
11584
+ cursor: pointer;
11585
+ color: var(--text-primary);
11585
11586
  font-size: 0.75rem;
11586
- line-height: 1.4;
11587
+ font-weight: 500;
11588
+ transition: background-color 0.15s ease, border-color 0.15s ease;
11589
+ margin-left: 0.5rem;
11587
11590
  }
11588
- .mint-component-binding-renderer__description[data-v-a3c3536d] {
11589
- max-width: 24rem;
11590
- text-align: right;
11591
+ .mint-schedule__today-btn:hover {
11592
+ background-color: var(--bg-hover);
11593
+ border-color: var(--color-primary);
11591
11594
  }
11592
- .mint-component-binding-renderer__body[data-v-a3c3536d] {
11593
- min-width: 0;
11594
- padding: 1rem;
11595
+ .mint-schedule__title {
11596
+ font-weight: 600;
11597
+ font-size: 0.875rem;
11598
+ color: var(--text-primary);
11595
11599
  }
11596
- .mint-component-binding-renderer--dense .mint-component-binding-renderer__header[data-v-a3c3536d],
11597
- .mint-component-binding-renderer--dense .mint-component-binding-renderer__body[data-v-a3c3536d] {
11598
- padding: 0.75rem;
11600
+ .mint-schedule__view-toggle {
11601
+ display: flex;
11602
+ align-items: center;
11603
+ border: 1px solid var(--border-color);
11604
+ border-radius: var(--radius);
11605
+ overflow: hidden;
11599
11606
  }
11600
- .mint-component-binding-renderer__empty[data-v-a3c3536d] {
11601
- padding: 1rem;
11602
- border: 1px dashed var(--border-color, #e5e7eb);
11603
- border-radius: 0.5rem;
11604
- background: var(--bg-secondary, #f8fafc);
11605
- text-align: center;
11607
+ .mint-schedule__view-btn {
11608
+ padding: 0.25rem 0.75rem;
11609
+ border: none;
11610
+ background: transparent;
11611
+ cursor: pointer;
11612
+ color: var(--text-muted);
11613
+ font-size: 0.75rem;
11614
+ font-weight: 500;
11615
+ transition: background-color 0.15s ease, color 0.15s ease;
11606
11616
  }
11607
- @media (max-width: 720px) {
11608
- .mint-component-binding-renderer__header[data-v-a3c3536d] {
11609
- display: block;
11617
+ .mint-schedule__view-btn:not(:last-child) {
11618
+ border-right: 1px solid var(--border-color);
11610
11619
  }
11611
- .mint-component-binding-renderer__description[data-v-a3c3536d] {
11612
- max-width: none;
11613
- margin-top: 0.25rem;
11614
- text-align: left;
11620
+ .mint-schedule__view-btn:hover {
11621
+ background-color: var(--bg-hover);
11622
+ color: var(--text-primary);
11623
+ }
11624
+ .mint-schedule__view-btn--active {
11625
+ background-color: var(--color-primary);
11626
+ color: white;
11615
11627
  }
11628
+ .mint-schedule__view-btn--active:hover {
11629
+ background-color: var(--color-primary);
11630
+ color: white;
11616
11631
  }
11617
11632
 
11618
- .mint-control-workspace-view[data-v-ec2a5a8a] {
11619
- min-width: 0;
11633
+ /* Body (week/day view) */
11634
+ .mint-schedule__body {
11635
+ display: flex;
11636
+ overflow: auto;
11637
+ max-height: 600px;
11620
11638
  }
11621
- .mint-control-workspace-view__content[data-v-ec2a5a8a] {
11639
+ .mint-schedule__time-gutter {
11640
+ width: 3.5rem;
11641
+ flex-shrink: 0;
11642
+ border-right: 1px solid var(--border-color);
11643
+ }
11644
+ .mint-schedule__time-label {
11645
+ height: var(--slot-height, 2.5rem);
11646
+ font-size: 0.6875rem;
11647
+ color: var(--text-muted);
11648
+ text-align: right;
11649
+ padding-right: 0.5rem;
11650
+ position: relative;
11651
+ top: -0.5em;
11652
+ line-height: 1;
11653
+ }
11654
+ .mint-schedule__day-columns {
11655
+ display: flex;
11656
+ flex: 1;
11622
11657
  min-width: 0;
11623
- padding: 1rem;
11624
11658
  }
11625
-
11626
- .mint-dose-design-workspace[data-v-99145924] {
11627
- display: grid;
11628
- grid-template-columns: minmax(360px, 1fr) minmax(300px, 420px);
11629
- gap: 1rem;
11630
- align-items: start;
11659
+ .mint-schedule__day-column {
11660
+ flex: 1;
11631
11661
  min-width: 0;
11662
+ border-left: 1px solid var(--border-light, var(--border-color));
11663
+ position: relative;
11632
11664
  }
11633
- @media (max-width: 900px) {
11634
- .mint-dose-design-workspace[data-v-99145924] {
11635
- grid-template-columns: minmax(0, 1fr);
11665
+ .mint-schedule__day-column:first-child {
11666
+ border-left: none;
11636
11667
  }
11668
+ .mint-schedule__day-column--today {
11669
+ background-color: rgba(59, 130, 246, 0.03);
11637
11670
  }
11638
- /* Divider Component Styles */
11639
- .mint-divider {
11671
+
11672
+ /* Day headers */
11673
+ .mint-schedule__day-headers {
11640
11674
  display: flex;
11641
- align-items: center;
11642
- border: none;
11675
+ border-bottom: 1px solid var(--border-color);
11643
11676
  }
11644
-
11645
- /* Horizontal without label - single line */
11646
- .mint-divider:not(.mint-divider--vertical):not(.mint-divider--labeled) {
11647
- border-top: 1px solid var(--border-color);
11677
+ .mint-schedule__day-header-gutter {
11678
+ width: 3.5rem;
11679
+ flex-shrink: 0;
11680
+ border-right: 1px solid var(--border-color);
11648
11681
  }
11649
-
11650
- /* Line segments (for labeled variants) */
11651
- .mint-divider__line {
11682
+ .mint-schedule__day-header {
11652
11683
  flex: 1;
11653
- height: 1px;
11654
- background-color: var(--border-color);
11655
- }
11656
-
11657
- /* ---------- Center-aligned label ---------- */
11658
- .mint-divider--center .mint-divider__label {
11659
- padding: 0 0.75rem;
11660
- font-size: 0.6875rem;
11684
+ min-width: 0;
11685
+ text-align: center;
11686
+ padding: 0.5rem 0.25rem;
11687
+ font-size: 0.75rem;
11661
11688
  font-weight: 500;
11662
- letter-spacing: 0.05em;
11663
- text-transform: uppercase;
11664
11689
  color: var(--text-muted);
11665
- white-space: nowrap;
11666
- }
11667
-
11668
- /* ---------- Left-aligned label ---------- */
11669
- .mint-divider--left {
11670
- gap: 0.75rem;
11690
+ border-left: 1px solid var(--border-light, var(--border-color));
11671
11691
  }
11672
- .mint-divider--left .mint-divider__label {
11673
- font-size: 0.8125rem;
11674
- font-weight: 500;
11675
- color: var(--text-primary);
11676
- white-space: nowrap;
11677
- flex-shrink: 0;
11692
+ .mint-schedule__day-header:first-child {
11693
+ border-left: none;
11678
11694
  }
11679
-
11680
- /* Vertical */
11681
- .mint-divider--vertical {
11682
- display: inline-block;
11683
- width: 1px;
11684
- height: auto;
11685
- align-self: stretch;
11686
- background-color: var(--border-color);
11687
- border: none;
11695
+ .mint-schedule__day-header--today {
11696
+ color: var(--color-primary);
11688
11697
  }
11689
-
11690
- /* Horizontal spacing */
11691
- .mint-divider--sm:not(.mint-divider--vertical) { margin: 0.5rem 0;
11698
+ .mint-schedule__day-header-name {
11699
+ display: block;
11700
+ font-size: 0.6875rem;
11701
+ text-transform: uppercase;
11702
+ letter-spacing: 0.05em;
11692
11703
  }
11693
- .mint-divider--md:not(.mint-divider--vertical) { margin: 1rem 0;
11704
+ .mint-schedule__day-header-number {
11705
+ display: inline-flex;
11706
+ align-items: center;
11707
+ justify-content: center;
11708
+ width: 1.75rem;
11709
+ height: 1.75rem;
11710
+ border-radius: 9999px;
11711
+ font-size: 0.875rem;
11712
+ font-weight: 600;
11713
+ margin-top: 0.125rem;
11694
11714
  }
11695
- .mint-divider--lg:not(.mint-divider--vertical) { margin: 1.5rem 0;
11715
+ .mint-schedule__day-header--today .mint-schedule__day-header-number {
11716
+ background-color: var(--color-primary);
11717
+ color: white;
11696
11718
  }
11697
11719
 
11698
- /* Vertical spacing */
11699
- .mint-divider--vertical.mint-divider--sm { margin: 0 0.5rem;
11700
- }
11701
- .mint-divider--vertical.mint-divider--md { margin: 0 1rem;
11720
+ /* Grid lines / slots */
11721
+ .mint-schedule__grid-line {
11722
+ height: var(--slot-height, 2.5rem);
11723
+ border-bottom: 1px solid var(--border-light, var(--border-color));
11702
11724
  }
11703
- .mint-divider--vertical.mint-divider--lg { margin: 0 1.5rem;
11704
- }
11705
- /* StatusIndicator Component Styles */
11706
- .mint-status {
11707
- display: inline-flex;
11708
- align-items: center;
11709
- gap: 0.5rem;
11710
- }
11711
- .mint-status__dot {
11712
- width: 8px;
11713
- height: 8px;
11714
- border-radius: 50%;
11715
- flex-shrink: 0;
11725
+ .mint-schedule__slot {
11726
+ height: var(--slot-height, 2.5rem);
11727
+ border-bottom: 1px solid var(--border-light, var(--border-color));
11716
11728
  position: relative;
11717
11729
  }
11718
-
11719
- /* Status colors */
11720
- .mint-status__dot--success {
11721
- background-color: var(--mint-success);
11722
- color: var(--mint-success);
11723
- }
11724
- .mint-status__dot--warning {
11725
- background-color: var(--mint-warning);
11726
- color: var(--mint-warning);
11727
- }
11728
- .mint-status__dot--error {
11729
- background-color: var(--mint-error);
11730
- color: var(--mint-error);
11731
- }
11732
- .mint-status__dot--info {
11733
- background-color: var(--mint-info);
11734
- color: var(--mint-info);
11735
- }
11736
- .mint-status__dot--muted {
11737
- background-color: var(--text-muted);
11738
- color: var(--text-muted);
11730
+ .mint-schedule__slot--interactive {
11731
+ cursor: pointer;
11739
11732
  }
11740
- .mint-status__label {
11741
- font-size: 0.875rem;
11742
- color: var(--text-primary);
11733
+ .mint-schedule__slot--interactive:hover {
11734
+ background-color: rgba(59, 130, 246, 0.03);
11743
11735
  }
11744
11736
 
11745
- /* Pulse — expanding ring via ::before pseudo, 1.8s loop */
11746
- .mint-status__dot--pulse::before {
11747
- content: '';
11737
+ /* Events */
11738
+ .mint-schedule__event {
11748
11739
  position: absolute;
11749
- inset: 0;
11750
- border-radius: 50%;
11751
- background-color: currentColor;
11752
- animation: mint-status-pulse 1.8s ease-out infinite;
11753
- pointer-events: none;
11740
+ left: 2px;
11741
+ right: 2px;
11742
+ border-radius: var(--radius-sm, 0.25rem);
11743
+ padding: 0.25rem 0.5rem;
11744
+ font-size: 0.75rem;
11745
+ font-weight: 500;
11746
+ overflow: hidden;
11747
+ cursor: pointer;
11748
+ z-index: 1;
11749
+ border-left: 3px solid var(--event-color, #3B82F6);
11750
+ transition: box-shadow 0.15s ease;
11754
11751
  }
11755
- @keyframes mint-status-pulse {
11756
- 0% { transform: scale(0.6); opacity: 0.6;
11752
+ .mint-schedule__event:hover {
11753
+ box-shadow: var(--shadow-sm);
11754
+ filter: brightness(1.05);
11757
11755
  }
11758
- 100% { transform: scale(1.8); opacity: 0;
11756
+ .mint-schedule__event--confirmed {
11757
+ background-color: rgba(16, 185, 129, 0.15);
11758
+ color: #065F46;
11759
+ --event-color: #10B981;
11759
11760
  }
11761
+ .mint-schedule__event--pending {
11762
+ background-color: rgba(245, 158, 11, 0.15);
11763
+ color: #92400E;
11764
+ --event-color: #F59E0B;
11760
11765
  }
11761
- @media (prefers-reduced-motion: reduce) {
11762
- .mint-status__dot--pulse::before { animation: none; opacity: 0;
11766
+ .mint-schedule__event--in-progress {
11767
+ background-color: rgba(59, 130, 246, 0.15);
11768
+ color: #1E40AF;
11769
+ --event-color: #3B82F6;
11763
11770
  }
11771
+ .mint-schedule__event--cancelled {
11772
+ background-color: rgba(239, 68, 68, 0.1);
11773
+ color: #991B1B;
11774
+ --event-color: #EF4444;
11775
+ text-decoration: line-through;
11764
11776
  }
11765
- /* ProgressBar Component Styles */
11766
- .mint-progress {
11767
- width: 100%;
11777
+ .mint-schedule__event-title {
11778
+ white-space: nowrap;
11779
+ overflow: hidden;
11780
+ text-overflow: ellipsis;
11781
+ line-height: 1.25;
11768
11782
  }
11769
- .mint-progress__header {
11770
- display: flex;
11771
- justify-content: space-between;
11772
- margin-bottom: 0.25rem;
11783
+ .mint-schedule__event-time {
11784
+ font-size: 0.625rem;
11785
+ font-weight: 400;
11786
+ opacity: 0.75;
11787
+ white-space: nowrap;
11773
11788
  }
11774
- .mint-progress__label {
11775
- font-size: 0.875rem;
11776
- color: var(--text-secondary);
11789
+
11790
+ /* Resize handles */
11791
+ .mint-schedule__event-resize-handle {
11792
+ position: absolute;
11793
+ left: 0;
11794
+ right: 0;
11795
+ height: 6px;
11796
+ cursor: ns-resize;
11797
+ z-index: 2;
11777
11798
  }
11778
- .mint-progress__value {
11779
- font-size: 0.875rem;
11780
- color: var(--text-muted);
11781
- font-variant-numeric: tabular-nums;
11799
+ .mint-schedule__event-resize-handle--top {
11800
+ top: 0;
11782
11801
  }
11783
-
11784
- /* ========================================================================
11785
- Rail variant (default) — single filled track, pill ends
11786
- ======================================================================== */
11787
- .mint-progress__track {
11788
- width: 100%;
11789
- background-color: var(--bg-tertiary);
11790
- border-radius: 9999px; /* pill ends — spec */
11791
- overflow: hidden;
11802
+ .mint-schedule__event-resize-handle--bottom {
11803
+ bottom: 0;
11792
11804
  }
11793
- .mint-progress__track--sm { height: 4px;
11805
+
11806
+ /* Blocked slots */
11807
+ .mint-schedule__blocked {
11808
+ position: absolute;
11809
+ left: 0;
11810
+ right: 0;
11811
+ background: repeating-linear-gradient(
11812
+ 45deg,
11813
+ transparent,
11814
+ transparent 4px,
11815
+ var(--border-light, var(--border-color)) 4px,
11816
+ var(--border-light, var(--border-color)) 5px
11817
+ );
11818
+ z-index: 0;
11819
+ pointer-events: none;
11794
11820
  }
11795
- .mint-progress__track--md { height: 8px;
11821
+ .mint-schedule__blocked-label {
11822
+ position: absolute;
11823
+ top: 50%;
11824
+ left: 50%;
11825
+ transform: translate(-50%, -50%);
11826
+ font-size: 0.625rem;
11827
+ color: var(--text-muted);
11828
+ white-space: nowrap;
11796
11829
  }
11797
- .mint-progress__track--lg { height: 12px;
11830
+
11831
+ /* Now indicator */
11832
+ .mint-schedule__now-indicator {
11833
+ position: absolute;
11834
+ left: 0;
11835
+ right: 0;
11836
+ height: 2px;
11837
+ background-color: var(--mint-error);
11838
+ z-index: 3;
11839
+ pointer-events: none;
11798
11840
  }
11799
- .mint-progress__bar {
11800
- height: 100%;
11841
+ .mint-schedule__now-dot {
11842
+ position: absolute;
11843
+ left: -4px;
11844
+ top: -3px;
11845
+ width: 8px;
11846
+ height: 8px;
11801
11847
  border-radius: 9999px;
11802
- transition: width 0.3s ease;
11848
+ background-color: var(--mint-error);
11803
11849
  }
11804
- .mint-progress__bar--primary { background-color: var(--color-primary);
11850
+
11851
+ /* Ghost (drag preview) */
11852
+ .mint-schedule__ghost {
11853
+ position: absolute;
11854
+ left: 2px;
11855
+ right: 2px;
11856
+ border: 2px dashed var(--color-primary);
11857
+ background-color: rgba(59, 130, 246, 0.08);
11858
+ border-radius: var(--radius-sm, 0.25rem);
11859
+ z-index: 4;
11860
+ pointer-events: none;
11805
11861
  }
11806
- .mint-progress__bar--success { background-color: var(--mint-success);
11862
+ @media (prefers-reduced-motion: reduce) {
11863
+ .mint-schedule__ghost {
11864
+ transition: none;
11807
11865
  }
11808
- .mint-progress__bar--warning { background-color: var(--mint-warning);
11809
11866
  }
11810
- .mint-progress__bar--error { background-color: var(--mint-error);
11867
+
11868
+ /* Month view */
11869
+ .mint-schedule__month-grid {
11870
+ display: grid;
11871
+ grid-template-columns: repeat(7, 1fr);
11811
11872
  }
11812
- .mint-progress__bar--info { background-color: var(--mint-info);
11873
+ .mint-schedule__month-weekday {
11874
+ text-align: center;
11875
+ padding: 0.5rem 0.25rem;
11876
+ font-size: 0.6875rem;
11877
+ font-weight: 500;
11878
+ color: var(--text-muted);
11879
+ text-transform: uppercase;
11880
+ letter-spacing: 0.05em;
11881
+ border-bottom: 1px solid var(--border-color);
11813
11882
  }
11814
- .mint-progress__bar--indeterminate {
11815
- width: 40% !important;
11816
- animation: mint-progress-indeterminate 1.5s ease-in-out infinite;
11883
+ .mint-schedule__month-cell {
11884
+ min-height: 5rem;
11885
+ border-bottom: 1px solid var(--border-light, var(--border-color));
11886
+ border-right: 1px solid var(--border-light, var(--border-color));
11887
+ padding: 0.25rem;
11888
+ cursor: pointer;
11889
+ transition: background-color 0.15s ease;
11817
11890
  }
11818
- @keyframes mint-progress-indeterminate {
11819
- 0% { transform: translateX(-100%);
11891
+ .mint-schedule__month-cell:nth-child(7n) {
11892
+ border-right: none;
11820
11893
  }
11821
- 50% { transform: translateX(150%);
11894
+ .mint-schedule__month-cell:hover {
11895
+ background-color: var(--bg-hover);
11822
11896
  }
11823
- 100% { transform: translateX(-100%);
11897
+ .mint-schedule__month-cell--today {
11898
+ border-left: 3px solid var(--color-primary);
11824
11899
  }
11900
+ .mint-schedule__month-cell--outside {
11901
+ opacity: 0.4;
11825
11902
  }
11826
-
11827
- /* ========================================================================
11828
- Segmented variant — discrete step segments for pipelines / wizards
11829
- ======================================================================== */
11830
- .mint-progress__segments {
11831
- display: flex;
11832
- width: 100%;
11833
- gap: 4px;
11903
+ .mint-schedule__month-date {
11904
+ font-size: 0.75rem;
11905
+ font-weight: 500;
11906
+ color: var(--text-primary);
11907
+ margin-bottom: 0.25rem;
11908
+ padding: 0.125rem 0.25rem;
11834
11909
  }
11835
- .mint-progress__segments--sm { height: 4px;
11910
+ .mint-schedule__month-cell--today .mint-schedule__month-date {
11911
+ color: var(--color-primary);
11912
+ font-weight: 600;
11836
11913
  }
11837
- .mint-progress__segments--md { height: 8px;
11914
+ .mint-schedule__month-event {
11915
+ height: 1.25rem;
11916
+ font-size: 0.6875rem;
11917
+ font-weight: 500;
11918
+ padding: 0 0.375rem;
11919
+ margin-bottom: 1px;
11920
+ border-radius: 2px;
11921
+ overflow: hidden;
11922
+ white-space: nowrap;
11923
+ text-overflow: ellipsis;
11924
+ cursor: pointer;
11925
+ border-left: 2px solid var(--event-color, #3B82F6);
11926
+ line-height: 1.25rem;
11838
11927
  }
11839
- .mint-progress__segments--lg { height: 12px;
11928
+ .mint-schedule__month-event--confirmed {
11929
+ background-color: rgba(16, 185, 129, 0.15);
11930
+ color: #065F46;
11931
+ --event-color: #10B981;
11840
11932
  }
11841
- .mint-progress__segment {
11842
- flex: 1;
11843
- background-color: var(--bg-tertiary);
11844
- border-radius: 9999px;
11845
- transition: background-color 0.2s ease;
11933
+ .mint-schedule__month-event--pending {
11934
+ background-color: rgba(245, 158, 11, 0.15);
11935
+ color: #92400E;
11936
+ --event-color: #F59E0B;
11846
11937
  }
11847
- .mint-progress__segment--done.mint-progress__segment--primary { background-color: var(--color-primary);
11938
+ .mint-schedule__month-event--in-progress {
11939
+ background-color: rgba(59, 130, 246, 0.15);
11940
+ color: #1E40AF;
11941
+ --event-color: #3B82F6;
11848
11942
  }
11849
- .mint-progress__segment--done.mint-progress__segment--success { background-color: var(--mint-success);
11943
+ .mint-schedule__month-event--cancelled {
11944
+ background-color: rgba(239, 68, 68, 0.1);
11945
+ color: #991B1B;
11946
+ --event-color: #EF4444;
11947
+ text-decoration: line-through;
11850
11948
  }
11851
- .mint-progress__segment--done.mint-progress__segment--warning { background-color: var(--mint-warning);
11949
+ .mint-schedule__month-more {
11950
+ font-size: 0.625rem;
11951
+ color: var(--color-primary);
11952
+ padding: 0 0.375rem;
11953
+ cursor: pointer;
11954
+ font-weight: 500;
11852
11955
  }
11853
- .mint-progress__segment--done.mint-progress__segment--error { background-color: var(--mint-error);
11956
+ .mint-schedule__month-more:hover {
11957
+ text-decoration: underline;
11854
11958
  }
11855
- .mint-progress__segment--done.mint-progress__segment--info { background-color: var(--mint-info);
11959
+
11960
+ .mint-component-binding-renderer[data-v-93f5795f] {
11961
+ display: grid;
11962
+ gap: 1rem;
11963
+ min-width: 0;
11856
11964
  }
11857
- .mint-progress__segment--active {
11858
- animation: mint-progress-segment-pulse 1.4s ease-in-out infinite;
11965
+ .mint-component-binding-renderer--grid[data-v-93f5795f] {
11966
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 28rem), 1fr));
11859
11967
  }
11860
- .mint-progress__segment--active.mint-progress__segment--primary { background-color: var(--color-primary);
11968
+ .mint-component-binding-renderer--stack[data-v-93f5795f] {
11969
+ grid-template-columns: minmax(0, 1fr);
11861
11970
  }
11862
- .mint-progress__segment--active.mint-progress__segment--success { background-color: var(--mint-success);
11971
+ .mint-component-binding-renderer--dense[data-v-93f5795f] {
11972
+ gap: 0.75rem;
11863
11973
  }
11864
- .mint-progress__segment--active.mint-progress__segment--warning { background-color: var(--mint-warning);
11974
+ .mint-component-binding-renderer__item[data-v-93f5795f] {
11975
+ min-width: 0;
11976
+ overflow: hidden;
11977
+ border: 1px solid var(--border-color, #e5e7eb);
11978
+ border-radius: 0.5rem;
11979
+ background: var(--bg-card, #ffffff);
11980
+ box-shadow: var(--shadow-sm, 0 1px 2px rgb(15 23 42 / 0.06));
11865
11981
  }
11866
- .mint-progress__segment--active.mint-progress__segment--error { background-color: var(--mint-error);
11982
+ .mint-component-binding-renderer__header[data-v-93f5795f] {
11983
+ display: flex;
11984
+ align-items: flex-start;
11985
+ justify-content: space-between;
11986
+ gap: 1rem;
11987
+ padding: 0.75rem 1rem;
11988
+ border-bottom: 1px solid var(--border-color, #e5e7eb);
11989
+ background: var(--bg-secondary, #f8fafc);
11867
11990
  }
11868
- .mint-progress__segment--active.mint-progress__segment--info { background-color: var(--mint-info);
11991
+ .mint-component-binding-renderer__title-group[data-v-93f5795f] {
11992
+ min-width: 0;
11869
11993
  }
11870
- @keyframes mint-progress-segment-pulse {
11871
- 0%, 100% { opacity: 0.55;
11994
+ .mint-component-binding-renderer__component[data-v-93f5795f] {
11995
+ margin: 0;
11996
+ color: var(--text-primary, #0f172a);
11997
+ font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
11998
+ font-size: 0.8125rem;
11999
+ font-weight: 600;
11872
12000
  }
11873
- 50% { opacity: 1;
12001
+ .mint-component-binding-renderer__source[data-v-93f5795f],
12002
+ .mint-component-binding-renderer__description[data-v-93f5795f],
12003
+ .mint-component-binding-renderer__empty[data-v-93f5795f] {
12004
+ margin: 0;
12005
+ color: var(--text-secondary, #475569);
12006
+ font-size: 0.75rem;
12007
+ line-height: 1.4;
11874
12008
  }
12009
+ .mint-component-binding-renderer__description[data-v-93f5795f] {
12010
+ max-width: 24rem;
12011
+ text-align: right;
11875
12012
  }
11876
- @media (prefers-reduced-motion: reduce) {
11877
- .mint-progress__segment--active { animation: none; opacity: 1;
12013
+ .mint-component-binding-renderer__body[data-v-93f5795f] {
12014
+ min-width: 0;
12015
+ padding: 1rem;
11878
12016
  }
11879
- .mint-progress__bar--indeterminate { animation: none;
12017
+ .mint-component-binding-renderer--dense .mint-component-binding-renderer__header[data-v-93f5795f],
12018
+ .mint-component-binding-renderer--dense .mint-component-binding-renderer__body[data-v-93f5795f] {
12019
+ padding: 0.75rem;
12020
+ }
12021
+ .mint-component-binding-renderer__empty[data-v-93f5795f] {
12022
+ padding: 1rem;
12023
+ border: 1px dashed var(--border-color, #e5e7eb);
12024
+ border-radius: 0.5rem;
12025
+ background: var(--bg-secondary, #f8fafc);
12026
+ text-align: center;
12027
+ }
12028
+ @media (max-width: 720px) {
12029
+ .mint-component-binding-renderer__header[data-v-93f5795f] {
12030
+ display: block;
12031
+ }
12032
+ .mint-component-binding-renderer__description[data-v-93f5795f] {
12033
+ max-width: none;
12034
+ margin-top: 0.25rem;
12035
+ text-align: left;
11880
12036
  }
11881
12037
  }
11882
12038
 
11883
- /* Step labels under segmented bar */
11884
- .mint-progress__step-labels {
12039
+ .mint-control-workspace-view[data-v-ec2a5a8a] {
12040
+ min-width: 0;
12041
+ }
12042
+ .mint-control-workspace-view__content[data-v-ec2a5a8a] {
12043
+ min-width: 0;
12044
+ padding: 1rem;
12045
+ }
12046
+
12047
+ .mint-dose-design-workspace[data-v-99145924] {
12048
+ display: grid;
12049
+ grid-template-columns: minmax(360px, 1fr) minmax(300px, 420px);
12050
+ gap: 1rem;
12051
+ align-items: start;
12052
+ min-width: 0;
12053
+ }
12054
+ @media (max-width: 900px) {
12055
+ .mint-dose-design-workspace[data-v-99145924] {
12056
+ grid-template-columns: minmax(0, 1fr);
12057
+ }
12058
+ }
12059
+ /* Divider Component Styles */
12060
+ .mint-divider {
11885
12061
  display: flex;
11886
- width: 100%;
11887
- gap: 4px;
11888
- margin-top: 0.375rem;
12062
+ align-items: center;
12063
+ border: none;
11889
12064
  }
11890
- .mint-progress__step-label {
12065
+
12066
+ /* Horizontal without label - single line */
12067
+ .mint-divider:not(.mint-divider--vertical):not(.mint-divider--labeled) {
12068
+ border-top: 1px solid var(--border-color);
12069
+ }
12070
+
12071
+ /* Line segments (for labeled variants) */
12072
+ .mint-divider__line {
11891
12073
  flex: 1;
12074
+ height: 1px;
12075
+ background-color: var(--border-color);
12076
+ }
12077
+
12078
+ /* ---------- Center-aligned label ---------- */
12079
+ .mint-divider--center .mint-divider__label {
12080
+ padding: 0 0.75rem;
11892
12081
  font-size: 0.6875rem;
12082
+ font-weight: 500;
12083
+ letter-spacing: 0.05em;
12084
+ text-transform: uppercase;
11893
12085
  color: var(--text-muted);
11894
- text-align: center;
11895
- line-height: 1.3;
11896
- transition: color 0.15s ease;
12086
+ white-space: nowrap;
11897
12087
  }
11898
- .mint-progress__step-label--done {
11899
- color: var(--text-secondary);
12088
+
12089
+ /* ---------- Left-aligned label ---------- */
12090
+ .mint-divider--left {
12091
+ gap: 0.75rem;
11900
12092
  }
11901
- .mint-progress__step-label--active {
11902
- color: var(--text-primary);
12093
+ .mint-divider--left .mint-divider__label {
12094
+ font-size: 0.8125rem;
11903
12095
  font-weight: 500;
12096
+ color: var(--text-primary);
12097
+ white-space: nowrap;
12098
+ flex-shrink: 0;
11904
12099
  }
11905
- /* Avatar Component Styles */
11906
12100
 
11907
- /* Outer wrapper — anchors the status dot; NO overflow hidden */
11908
- .mint-avatar {
11909
- position: relative;
12101
+ /* Vertical */
12102
+ .mint-divider--vertical {
11910
12103
  display: inline-block;
11911
- flex-shrink: 0;
11912
- line-height: 0; /* prevents inline-baseline gap under the face */
12104
+ width: 1px;
12105
+ height: auto;
12106
+ align-self: stretch;
12107
+ background-color: var(--border-color);
12108
+ border: none;
11913
12109
  }
11914
12110
 
11915
- /* Inner face — holds photo/initials; CLIPS its own contents */
11916
- .mint-avatar__face {
12111
+ /* Horizontal spacing */
12112
+ .mint-divider--sm:not(.mint-divider--vertical) { margin: 0.5rem 0;
12113
+ }
12114
+ .mint-divider--md:not(.mint-divider--vertical) { margin: 1rem 0;
12115
+ }
12116
+ .mint-divider--lg:not(.mint-divider--vertical) { margin: 1.5rem 0;
12117
+ }
12118
+
12119
+ /* Vertical spacing */
12120
+ .mint-divider--vertical.mint-divider--sm { margin: 0 0.5rem;
12121
+ }
12122
+ .mint-divider--vertical.mint-divider--md { margin: 0 1rem;
12123
+ }
12124
+ .mint-divider--vertical.mint-divider--lg { margin: 0 1.5rem;
12125
+ }
12126
+ /* StatusIndicator Component Styles */
12127
+ .mint-status {
11917
12128
  display: inline-flex;
11918
12129
  align-items: center;
11919
- justify-content: center;
11920
- width: 100%;
11921
- height: 100%;
12130
+ gap: 0.5rem;
12131
+ }
12132
+ .mint-status__dot {
12133
+ width: 8px;
12134
+ height: 8px;
11922
12135
  border-radius: 50%;
11923
- overflow: hidden;
11924
- /* font-weight 500 (medium) matches the platform's inline avatar typography
11925
- — text-sm font-medium text-white in admin/UserTable.vue:292. */
11926
- font-weight: 500;
11927
- color: white;
11928
- background: var(--bg-tertiary);
12136
+ flex-shrink: 0;
12137
+ position: relative;
11929
12138
  }
11930
12139
 
11931
- /* Sizes applied on the wrapper so face fills 100%.
11932
- md = 32px to match the platform's canonical w-8 h-8 admin/user listing
11933
- size. Pre-0.16.5, md was 40px. */
11934
- .mint-avatar--xs { width: 24px; height: 24px; font-size: 0.625rem;
12140
+ /* Status colors */
12141
+ .mint-status__dot--success {
12142
+ background-color: var(--mint-success);
12143
+ color: var(--mint-success);
11935
12144
  }
11936
- .mint-avatar--sm { width: 28px; height: 28px; font-size: 0.75rem;
12145
+ .mint-status__dot--warning {
12146
+ background-color: var(--mint-warning);
12147
+ color: var(--mint-warning);
11937
12148
  }
11938
- .mint-avatar--md { width: 32px; height: 32px; font-size: 0.875rem;
12149
+ .mint-status__dot--error {
12150
+ background-color: var(--mint-error);
12151
+ color: var(--mint-error);
11939
12152
  }
11940
- .mint-avatar--lg { width: 40px; height: 40px; font-size: 1rem;
12153
+ .mint-status__dot--info {
12154
+ background-color: var(--mint-info);
12155
+ color: var(--mint-info);
11941
12156
  }
11942
- .mint-avatar--xl { width: 56px; height: 56px; font-size: 1.25rem;
12157
+ .mint-status__dot--muted {
12158
+ background-color: var(--text-muted);
12159
+ color: var(--text-muted);
11943
12160
  }
11944
-
11945
- /* Image */
11946
- .mint-avatar__image {
11947
- width: 100%;
11948
- height: 100%;
11949
- object-fit: cover;
12161
+ .mint-status__label {
12162
+ font-size: 0.875rem;
12163
+ color: var(--text-primary);
12164
+ }
12165
+
12166
+ /* Pulse — expanding ring via ::before pseudo, 1.8s loop */
12167
+ .mint-status__dot--pulse::before {
12168
+ content: '';
12169
+ position: absolute;
12170
+ inset: 0;
12171
+ border-radius: 50%;
12172
+ background-color: currentColor;
12173
+ animation: mint-status-pulse 1.8s ease-out infinite;
12174
+ pointer-events: none;
12175
+ }
12176
+ @keyframes mint-status-pulse {
12177
+ 0% { transform: scale(0.6); opacity: 0.6;
12178
+ }
12179
+ 100% { transform: scale(1.8); opacity: 0;
12180
+ }
12181
+ }
12182
+ @media (prefers-reduced-motion: reduce) {
12183
+ .mint-status__dot--pulse::before { animation: none; opacity: 0;
12184
+ }
12185
+ }
12186
+ /* ProgressBar Component Styles */
12187
+ .mint-progress {
12188
+ width: 100%;
12189
+ }
12190
+ .mint-progress__header {
12191
+ display: flex;
12192
+ justify-content: space-between;
12193
+ margin-bottom: 0.25rem;
12194
+ }
12195
+ .mint-progress__label {
12196
+ font-size: 0.875rem;
12197
+ color: var(--text-secondary);
12198
+ }
12199
+ .mint-progress__value {
12200
+ font-size: 0.875rem;
12201
+ color: var(--text-muted);
12202
+ font-variant-numeric: tabular-nums;
12203
+ }
12204
+
12205
+ /* ========================================================================
12206
+ Rail variant (default) — single filled track, pill ends
12207
+ ======================================================================== */
12208
+ .mint-progress__track {
12209
+ width: 100%;
12210
+ background-color: var(--bg-tertiary);
12211
+ border-radius: 9999px; /* pill ends — spec */
12212
+ overflow: hidden;
12213
+ }
12214
+ .mint-progress__track--sm { height: 4px;
12215
+ }
12216
+ .mint-progress__track--md { height: 8px;
12217
+ }
12218
+ .mint-progress__track--lg { height: 12px;
12219
+ }
12220
+ .mint-progress__bar {
12221
+ height: 100%;
12222
+ border-radius: 9999px;
12223
+ transition: width 0.3s ease;
12224
+ }
12225
+ .mint-progress__bar--primary { background-color: var(--color-primary);
12226
+ }
12227
+ .mint-progress__bar--success { background-color: var(--mint-success);
12228
+ }
12229
+ .mint-progress__bar--warning { background-color: var(--mint-warning);
12230
+ }
12231
+ .mint-progress__bar--error { background-color: var(--mint-error);
12232
+ }
12233
+ .mint-progress__bar--info { background-color: var(--mint-info);
12234
+ }
12235
+ .mint-progress__bar--indeterminate {
12236
+ width: 40% !important;
12237
+ animation: mint-progress-indeterminate 1.5s ease-in-out infinite;
12238
+ }
12239
+ @keyframes mint-progress-indeterminate {
12240
+ 0% { transform: translateX(-100%);
12241
+ }
12242
+ 50% { transform: translateX(150%);
12243
+ }
12244
+ 100% { transform: translateX(-100%);
12245
+ }
12246
+ }
12247
+
12248
+ /* ========================================================================
12249
+ Segmented variant — discrete step segments for pipelines / wizards
12250
+ ======================================================================== */
12251
+ .mint-progress__segments {
12252
+ display: flex;
12253
+ width: 100%;
12254
+ gap: 4px;
12255
+ }
12256
+ .mint-progress__segments--sm { height: 4px;
12257
+ }
12258
+ .mint-progress__segments--md { height: 8px;
12259
+ }
12260
+ .mint-progress__segments--lg { height: 12px;
12261
+ }
12262
+ .mint-progress__segment {
12263
+ flex: 1;
12264
+ background-color: var(--bg-tertiary);
12265
+ border-radius: 9999px;
12266
+ transition: background-color 0.2s ease;
12267
+ }
12268
+ .mint-progress__segment--done.mint-progress__segment--primary { background-color: var(--color-primary);
12269
+ }
12270
+ .mint-progress__segment--done.mint-progress__segment--success { background-color: var(--mint-success);
12271
+ }
12272
+ .mint-progress__segment--done.mint-progress__segment--warning { background-color: var(--mint-warning);
12273
+ }
12274
+ .mint-progress__segment--done.mint-progress__segment--error { background-color: var(--mint-error);
12275
+ }
12276
+ .mint-progress__segment--done.mint-progress__segment--info { background-color: var(--mint-info);
12277
+ }
12278
+ .mint-progress__segment--active {
12279
+ animation: mint-progress-segment-pulse 1.4s ease-in-out infinite;
12280
+ }
12281
+ .mint-progress__segment--active.mint-progress__segment--primary { background-color: var(--color-primary);
12282
+ }
12283
+ .mint-progress__segment--active.mint-progress__segment--success { background-color: var(--mint-success);
12284
+ }
12285
+ .mint-progress__segment--active.mint-progress__segment--warning { background-color: var(--mint-warning);
12286
+ }
12287
+ .mint-progress__segment--active.mint-progress__segment--error { background-color: var(--mint-error);
12288
+ }
12289
+ .mint-progress__segment--active.mint-progress__segment--info { background-color: var(--mint-info);
12290
+ }
12291
+ @keyframes mint-progress-segment-pulse {
12292
+ 0%, 100% { opacity: 0.55;
12293
+ }
12294
+ 50% { opacity: 1;
12295
+ }
12296
+ }
12297
+ @media (prefers-reduced-motion: reduce) {
12298
+ .mint-progress__segment--active { animation: none; opacity: 1;
12299
+ }
12300
+ .mint-progress__bar--indeterminate { animation: none;
12301
+ }
12302
+ }
12303
+
12304
+ /* Step labels under segmented bar */
12305
+ .mint-progress__step-labels {
12306
+ display: flex;
12307
+ width: 100%;
12308
+ gap: 4px;
12309
+ margin-top: 0.375rem;
12310
+ }
12311
+ .mint-progress__step-label {
12312
+ flex: 1;
12313
+ font-size: 0.6875rem;
12314
+ color: var(--text-muted);
12315
+ text-align: center;
12316
+ line-height: 1.3;
12317
+ transition: color 0.15s ease;
12318
+ }
12319
+ .mint-progress__step-label--done {
12320
+ color: var(--text-secondary);
12321
+ }
12322
+ .mint-progress__step-label--active {
12323
+ color: var(--text-primary);
12324
+ font-weight: 500;
12325
+ }
12326
+ /* Avatar Component Styles */
12327
+
12328
+ /* Outer wrapper — anchors the status dot; NO overflow hidden */
12329
+ .mint-avatar {
12330
+ position: relative;
12331
+ display: inline-block;
12332
+ flex-shrink: 0;
12333
+ line-height: 0; /* prevents inline-baseline gap under the face */
12334
+ }
12335
+
12336
+ /* Inner face — holds photo/initials; CLIPS its own contents */
12337
+ .mint-avatar__face {
12338
+ display: inline-flex;
12339
+ align-items: center;
12340
+ justify-content: center;
12341
+ width: 100%;
12342
+ height: 100%;
12343
+ border-radius: 50%;
12344
+ overflow: hidden;
12345
+ /* font-weight 500 (medium) matches the platform's inline avatar typography
12346
+ — text-sm font-medium text-white in admin/UserTable.vue:292. */
12347
+ font-weight: 500;
12348
+ color: white;
12349
+ background: var(--bg-tertiary);
12350
+ }
12351
+
12352
+ /* Sizes — applied on the wrapper so face fills 100%.
12353
+ md = 32px to match the platform's canonical w-8 h-8 admin/user listing
12354
+ size. Pre-0.16.5, md was 40px. */
12355
+ .mint-avatar--xs { width: 24px; height: 24px; font-size: 0.625rem;
12356
+ }
12357
+ .mint-avatar--sm { width: 28px; height: 28px; font-size: 0.75rem;
12358
+ }
12359
+ .mint-avatar--md { width: 32px; height: 32px; font-size: 0.875rem;
12360
+ }
12361
+ .mint-avatar--lg { width: 40px; height: 40px; font-size: 1rem;
12362
+ }
12363
+ .mint-avatar--xl { width: 56px; height: 56px; font-size: 1.25rem;
12364
+ }
12365
+
12366
+ /* Image */
12367
+ .mint-avatar__image {
12368
+ width: 100%;
12369
+ height: 100%;
12370
+ object-fit: cover;
11950
12371
  }
11951
12372
 
11952
12373
  /* Initials */
@@ -12241,76 +12662,76 @@ to {
12241
12662
  }
12242
12663
  }
12243
12664
 
12244
- .mint-bio-template-preset-workspace[data-v-d69ebe16] {
12665
+ .mint-bio-template-preset-workspace[data-v-0cb9aa98] {
12245
12666
  display: flex;
12246
12667
  flex-direction: column;
12247
12668
  gap: 1rem;
12248
12669
  min-width: 0;
12249
12670
  }
12250
- .mint-bio-template-preset-workspace__toolbar[data-v-d69ebe16] {
12671
+ .mint-bio-template-preset-workspace__toolbar[data-v-0cb9aa98] {
12251
12672
  display: flex;
12252
12673
  align-items: center;
12253
12674
  justify-content: space-between;
12254
12675
  gap: 0.75rem;
12255
12676
  }
12256
- .mint-bio-template-preset-workspace__status[data-v-d69ebe16] {
12677
+ .mint-bio-template-preset-workspace__status[data-v-0cb9aa98] {
12257
12678
  flex: 1 1 auto;
12258
12679
  min-width: 0;
12259
12680
  }
12260
- .mint-bio-template-preset-workspace__actions[data-v-d69ebe16] {
12681
+ .mint-bio-template-preset-workspace__actions[data-v-0cb9aa98] {
12261
12682
  display: flex;
12262
12683
  flex: 0 0 auto;
12263
12684
  gap: 0.5rem;
12264
12685
  }
12265
- .mint-bio-template-preset-workspace__meta[data-v-d69ebe16],
12266
- .mint-bio-template-preset-workspace__sidebar-subtitle[data-v-d69ebe16],
12267
- .mint-bio-template-preset-workspace__template-meta[data-v-d69ebe16] {
12686
+ .mint-bio-template-preset-workspace__meta[data-v-0cb9aa98],
12687
+ .mint-bio-template-preset-workspace__sidebar-subtitle[data-v-0cb9aa98],
12688
+ .mint-bio-template-preset-workspace__template-meta[data-v-0cb9aa98] {
12268
12689
  margin: 0;
12269
12690
  color: var(--text-secondary, #64748b);
12270
12691
  font-family: var(--font-mono, 'Fira Code', monospace);
12271
12692
  font-size: 0.75rem;
12272
12693
  }
12273
- .mint-bio-template-preset-workspace__main[data-v-d69ebe16] {
12694
+ .mint-bio-template-preset-workspace__main[data-v-0cb9aa98] {
12274
12695
  display: grid;
12275
12696
  grid-template-columns: minmax(16rem, max-content) minmax(0, 1fr);
12276
12697
  gap: 1rem;
12277
12698
  align-items: start;
12278
12699
  min-width: 0;
12279
12700
  }
12280
- .mint-bio-template-preset-workspace__sidebar-title[data-v-d69ebe16] {
12701
+ .mint-bio-template-preset-workspace__sidebar-title[data-v-0cb9aa98] {
12281
12702
  margin: 0;
12282
12703
  color: var(--text-primary, #0f172a);
12283
12704
  font-size: 0.875rem;
12284
12705
  font-weight: 600;
12285
12706
  }
12286
- .mint-bio-template-preset-workspace__view-nav[data-v-d69ebe16] {
12707
+ .mint-bio-template-preset-workspace__view-nav[data-v-0cb9aa98] {
12287
12708
  margin-top: 0.5rem;
12288
12709
  }
12289
- .mint-bio-template-preset-workspace__templates[data-v-d69ebe16] {
12710
+ .mint-bio-template-preset-workspace__templates[data-v-0cb9aa98] {
12290
12711
  display: grid;
12291
12712
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
12292
12713
  gap: 0.75rem;
12293
12714
  }
12294
- .mint-bio-template-preset-workspace__template[data-v-d69ebe16] {
12715
+ .mint-bio-template-preset-workspace__template[data-v-0cb9aa98] {
12295
12716
  min-width: 0;
12296
12717
  padding: 1rem;
12297
12718
  border: 1px solid var(--border-color, #e5e7eb);
12298
12719
  border-radius: 0.5rem;
12299
12720
  background: var(--bg-primary, #ffffff);
12300
12721
  }
12301
- .mint-bio-template-preset-workspace__template-id[data-v-d69ebe16] {
12722
+ .mint-bio-template-preset-workspace__template-id[data-v-0cb9aa98] {
12302
12723
  margin: 0;
12303
12724
  color: var(--text-primary, #0f172a);
12304
12725
  font-family: var(--font-mono, 'Fira Code', monospace);
12305
12726
  font-size: 0.875rem;
12306
12727
  }
12307
12728
  @media (max-width: 48rem) {
12308
- .mint-bio-template-preset-workspace__toolbar[data-v-d69ebe16],
12309
- .mint-bio-template-preset-workspace__actions[data-v-d69ebe16] {
12729
+ .mint-bio-template-preset-workspace__toolbar[data-v-0cb9aa98],
12730
+ .mint-bio-template-preset-workspace__actions[data-v-0cb9aa98] {
12310
12731
  align-items: stretch;
12311
12732
  flex-direction: column;
12312
12733
  }
12313
- .mint-bio-template-preset-workspace__main[data-v-d69ebe16] {
12734
+ .mint-bio-template-preset-workspace__main[data-v-0cb9aa98] {
12314
12735
  grid-template-columns: minmax(0, 1fr);
12315
12736
  }
12316
12737
  }
@@ -14409,427 +14830,6 @@ to { transform: rotate(360deg);
14409
14830
  .mint-time-range__duration--error {
14410
14831
  color: var(--mint-error);
14411
14832
  }
14412
- /* ScheduleCalendar Component Styles */
14413
- .mint-schedule {
14414
- border: 1px solid var(--border-color);
14415
- border-radius: var(--radius-lg);
14416
- background-color: var(--bg-card);
14417
- overflow: hidden;
14418
- }
14419
-
14420
- /* Header */
14421
- .mint-schedule__header {
14422
- display: flex;
14423
- align-items: center;
14424
- justify-content: space-between;
14425
- padding: 0.75rem 1rem;
14426
- border-bottom: 1px solid var(--border-color);
14427
- }
14428
- .mint-schedule__nav {
14429
- display: flex;
14430
- align-items: center;
14431
- gap: 0.25rem;
14432
- }
14433
- .mint-schedule__nav-btn {
14434
- padding: 0.375rem;
14435
- border-radius: 9999px;
14436
- background: transparent;
14437
- border: none;
14438
- cursor: pointer;
14439
- color: var(--text-muted);
14440
- transition: background-color 0.15s ease, color 0.15s ease;
14441
- display: flex;
14442
- align-items: center;
14443
- justify-content: center;
14444
- }
14445
- .mint-schedule__nav-btn:hover {
14446
- background-color: var(--bg-tertiary);
14447
- color: var(--text-primary);
14448
- }
14449
- .mint-schedule__nav-btn svg {
14450
- width: 1.25rem;
14451
- height: 1.25rem;
14452
- }
14453
- .mint-schedule__today-btn {
14454
- padding: 0.25rem 0.75rem;
14455
- border-radius: var(--radius);
14456
- background: transparent;
14457
- border: 1px solid var(--border-color);
14458
- cursor: pointer;
14459
- color: var(--text-primary);
14460
- font-size: 0.75rem;
14461
- font-weight: 500;
14462
- transition: background-color 0.15s ease, border-color 0.15s ease;
14463
- margin-left: 0.5rem;
14464
- }
14465
- .mint-schedule__today-btn:hover {
14466
- background-color: var(--bg-hover);
14467
- border-color: var(--color-primary);
14468
- }
14469
- .mint-schedule__title {
14470
- font-weight: 600;
14471
- font-size: 0.875rem;
14472
- color: var(--text-primary);
14473
- }
14474
- .mint-schedule__view-toggle {
14475
- display: flex;
14476
- align-items: center;
14477
- border: 1px solid var(--border-color);
14478
- border-radius: var(--radius);
14479
- overflow: hidden;
14480
- }
14481
- .mint-schedule__view-btn {
14482
- padding: 0.25rem 0.75rem;
14483
- border: none;
14484
- background: transparent;
14485
- cursor: pointer;
14486
- color: var(--text-muted);
14487
- font-size: 0.75rem;
14488
- font-weight: 500;
14489
- transition: background-color 0.15s ease, color 0.15s ease;
14490
- }
14491
- .mint-schedule__view-btn:not(:last-child) {
14492
- border-right: 1px solid var(--border-color);
14493
- }
14494
- .mint-schedule__view-btn:hover {
14495
- background-color: var(--bg-hover);
14496
- color: var(--text-primary);
14497
- }
14498
- .mint-schedule__view-btn--active {
14499
- background-color: var(--color-primary);
14500
- color: white;
14501
- }
14502
- .mint-schedule__view-btn--active:hover {
14503
- background-color: var(--color-primary);
14504
- color: white;
14505
- }
14506
-
14507
- /* Body (week/day view) */
14508
- .mint-schedule__body {
14509
- display: flex;
14510
- overflow: auto;
14511
- max-height: 600px;
14512
- }
14513
- .mint-schedule__time-gutter {
14514
- width: 3.5rem;
14515
- flex-shrink: 0;
14516
- border-right: 1px solid var(--border-color);
14517
- }
14518
- .mint-schedule__time-label {
14519
- height: var(--slot-height, 2.5rem);
14520
- font-size: 0.6875rem;
14521
- color: var(--text-muted);
14522
- text-align: right;
14523
- padding-right: 0.5rem;
14524
- position: relative;
14525
- top: -0.5em;
14526
- line-height: 1;
14527
- }
14528
- .mint-schedule__day-columns {
14529
- display: flex;
14530
- flex: 1;
14531
- min-width: 0;
14532
- }
14533
- .mint-schedule__day-column {
14534
- flex: 1;
14535
- min-width: 0;
14536
- border-left: 1px solid var(--border-light, var(--border-color));
14537
- position: relative;
14538
- }
14539
- .mint-schedule__day-column:first-child {
14540
- border-left: none;
14541
- }
14542
- .mint-schedule__day-column--today {
14543
- background-color: rgba(59, 130, 246, 0.03);
14544
- }
14545
-
14546
- /* Day headers */
14547
- .mint-schedule__day-headers {
14548
- display: flex;
14549
- border-bottom: 1px solid var(--border-color);
14550
- }
14551
- .mint-schedule__day-header-gutter {
14552
- width: 3.5rem;
14553
- flex-shrink: 0;
14554
- border-right: 1px solid var(--border-color);
14555
- }
14556
- .mint-schedule__day-header {
14557
- flex: 1;
14558
- min-width: 0;
14559
- text-align: center;
14560
- padding: 0.5rem 0.25rem;
14561
- font-size: 0.75rem;
14562
- font-weight: 500;
14563
- color: var(--text-muted);
14564
- border-left: 1px solid var(--border-light, var(--border-color));
14565
- }
14566
- .mint-schedule__day-header:first-child {
14567
- border-left: none;
14568
- }
14569
- .mint-schedule__day-header--today {
14570
- color: var(--color-primary);
14571
- }
14572
- .mint-schedule__day-header-name {
14573
- display: block;
14574
- font-size: 0.6875rem;
14575
- text-transform: uppercase;
14576
- letter-spacing: 0.05em;
14577
- }
14578
- .mint-schedule__day-header-number {
14579
- display: inline-flex;
14580
- align-items: center;
14581
- justify-content: center;
14582
- width: 1.75rem;
14583
- height: 1.75rem;
14584
- border-radius: 9999px;
14585
- font-size: 0.875rem;
14586
- font-weight: 600;
14587
- margin-top: 0.125rem;
14588
- }
14589
- .mint-schedule__day-header--today .mint-schedule__day-header-number {
14590
- background-color: var(--color-primary);
14591
- color: white;
14592
- }
14593
-
14594
- /* Grid lines / slots */
14595
- .mint-schedule__grid-line {
14596
- height: var(--slot-height, 2.5rem);
14597
- border-bottom: 1px solid var(--border-light, var(--border-color));
14598
- }
14599
- .mint-schedule__slot {
14600
- height: var(--slot-height, 2.5rem);
14601
- border-bottom: 1px solid var(--border-light, var(--border-color));
14602
- position: relative;
14603
- }
14604
- .mint-schedule__slot--interactive {
14605
- cursor: pointer;
14606
- }
14607
- .mint-schedule__slot--interactive:hover {
14608
- background-color: rgba(59, 130, 246, 0.03);
14609
- }
14610
-
14611
- /* Events */
14612
- .mint-schedule__event {
14613
- position: absolute;
14614
- left: 2px;
14615
- right: 2px;
14616
- border-radius: var(--radius-sm, 0.25rem);
14617
- padding: 0.25rem 0.5rem;
14618
- font-size: 0.75rem;
14619
- font-weight: 500;
14620
- overflow: hidden;
14621
- cursor: pointer;
14622
- z-index: 1;
14623
- border-left: 3px solid var(--event-color, #3B82F6);
14624
- transition: box-shadow 0.15s ease;
14625
- }
14626
- .mint-schedule__event:hover {
14627
- box-shadow: var(--shadow-sm);
14628
- filter: brightness(1.05);
14629
- }
14630
- .mint-schedule__event--confirmed {
14631
- background-color: rgba(16, 185, 129, 0.15);
14632
- color: #065F46;
14633
- --event-color: #10B981;
14634
- }
14635
- .mint-schedule__event--pending {
14636
- background-color: rgba(245, 158, 11, 0.15);
14637
- color: #92400E;
14638
- --event-color: #F59E0B;
14639
- }
14640
- .mint-schedule__event--in-progress {
14641
- background-color: rgba(59, 130, 246, 0.15);
14642
- color: #1E40AF;
14643
- --event-color: #3B82F6;
14644
- }
14645
- .mint-schedule__event--cancelled {
14646
- background-color: rgba(239, 68, 68, 0.1);
14647
- color: #991B1B;
14648
- --event-color: #EF4444;
14649
- text-decoration: line-through;
14650
- }
14651
- .mint-schedule__event-title {
14652
- white-space: nowrap;
14653
- overflow: hidden;
14654
- text-overflow: ellipsis;
14655
- line-height: 1.25;
14656
- }
14657
- .mint-schedule__event-time {
14658
- font-size: 0.625rem;
14659
- font-weight: 400;
14660
- opacity: 0.75;
14661
- white-space: nowrap;
14662
- }
14663
-
14664
- /* Resize handles */
14665
- .mint-schedule__event-resize-handle {
14666
- position: absolute;
14667
- left: 0;
14668
- right: 0;
14669
- height: 6px;
14670
- cursor: ns-resize;
14671
- z-index: 2;
14672
- }
14673
- .mint-schedule__event-resize-handle--top {
14674
- top: 0;
14675
- }
14676
- .mint-schedule__event-resize-handle--bottom {
14677
- bottom: 0;
14678
- }
14679
-
14680
- /* Blocked slots */
14681
- .mint-schedule__blocked {
14682
- position: absolute;
14683
- left: 0;
14684
- right: 0;
14685
- background: repeating-linear-gradient(
14686
- 45deg,
14687
- transparent,
14688
- transparent 4px,
14689
- var(--border-light, var(--border-color)) 4px,
14690
- var(--border-light, var(--border-color)) 5px
14691
- );
14692
- z-index: 0;
14693
- pointer-events: none;
14694
- }
14695
- .mint-schedule__blocked-label {
14696
- position: absolute;
14697
- top: 50%;
14698
- left: 50%;
14699
- transform: translate(-50%, -50%);
14700
- font-size: 0.625rem;
14701
- color: var(--text-muted);
14702
- white-space: nowrap;
14703
- }
14704
-
14705
- /* Now indicator */
14706
- .mint-schedule__now-indicator {
14707
- position: absolute;
14708
- left: 0;
14709
- right: 0;
14710
- height: 2px;
14711
- background-color: var(--mint-error);
14712
- z-index: 3;
14713
- pointer-events: none;
14714
- }
14715
- .mint-schedule__now-dot {
14716
- position: absolute;
14717
- left: -4px;
14718
- top: -3px;
14719
- width: 8px;
14720
- height: 8px;
14721
- border-radius: 9999px;
14722
- background-color: var(--mint-error);
14723
- }
14724
-
14725
- /* Ghost (drag preview) */
14726
- .mint-schedule__ghost {
14727
- position: absolute;
14728
- left: 2px;
14729
- right: 2px;
14730
- border: 2px dashed var(--color-primary);
14731
- background-color: rgba(59, 130, 246, 0.08);
14732
- border-radius: var(--radius-sm, 0.25rem);
14733
- z-index: 4;
14734
- pointer-events: none;
14735
- }
14736
- @media (prefers-reduced-motion: reduce) {
14737
- .mint-schedule__ghost {
14738
- transition: none;
14739
- }
14740
- }
14741
-
14742
- /* Month view */
14743
- .mint-schedule__month-grid {
14744
- display: grid;
14745
- grid-template-columns: repeat(7, 1fr);
14746
- }
14747
- .mint-schedule__month-weekday {
14748
- text-align: center;
14749
- padding: 0.5rem 0.25rem;
14750
- font-size: 0.6875rem;
14751
- font-weight: 500;
14752
- color: var(--text-muted);
14753
- text-transform: uppercase;
14754
- letter-spacing: 0.05em;
14755
- border-bottom: 1px solid var(--border-color);
14756
- }
14757
- .mint-schedule__month-cell {
14758
- min-height: 5rem;
14759
- border-bottom: 1px solid var(--border-light, var(--border-color));
14760
- border-right: 1px solid var(--border-light, var(--border-color));
14761
- padding: 0.25rem;
14762
- cursor: pointer;
14763
- transition: background-color 0.15s ease;
14764
- }
14765
- .mint-schedule__month-cell:nth-child(7n) {
14766
- border-right: none;
14767
- }
14768
- .mint-schedule__month-cell:hover {
14769
- background-color: var(--bg-hover);
14770
- }
14771
- .mint-schedule__month-cell--today {
14772
- border-left: 3px solid var(--color-primary);
14773
- }
14774
- .mint-schedule__month-cell--outside {
14775
- opacity: 0.4;
14776
- }
14777
- .mint-schedule__month-date {
14778
- font-size: 0.75rem;
14779
- font-weight: 500;
14780
- color: var(--text-primary);
14781
- margin-bottom: 0.25rem;
14782
- padding: 0.125rem 0.25rem;
14783
- }
14784
- .mint-schedule__month-cell--today .mint-schedule__month-date {
14785
- color: var(--color-primary);
14786
- font-weight: 600;
14787
- }
14788
- .mint-schedule__month-event {
14789
- height: 1.25rem;
14790
- font-size: 0.6875rem;
14791
- font-weight: 500;
14792
- padding: 0 0.375rem;
14793
- margin-bottom: 1px;
14794
- border-radius: 2px;
14795
- overflow: hidden;
14796
- white-space: nowrap;
14797
- text-overflow: ellipsis;
14798
- cursor: pointer;
14799
- border-left: 2px solid var(--event-color, #3B82F6);
14800
- line-height: 1.25rem;
14801
- }
14802
- .mint-schedule__month-event--confirmed {
14803
- background-color: rgba(16, 185, 129, 0.15);
14804
- color: #065F46;
14805
- --event-color: #10B981;
14806
- }
14807
- .mint-schedule__month-event--pending {
14808
- background-color: rgba(245, 158, 11, 0.15);
14809
- color: #92400E;
14810
- --event-color: #F59E0B;
14811
- }
14812
- .mint-schedule__month-event--in-progress {
14813
- background-color: rgba(59, 130, 246, 0.15);
14814
- color: #1E40AF;
14815
- --event-color: #3B82F6;
14816
- }
14817
- .mint-schedule__month-event--cancelled {
14818
- background-color: rgba(239, 68, 68, 0.1);
14819
- color: #991B1B;
14820
- --event-color: #EF4444;
14821
- text-decoration: line-through;
14822
- }
14823
- .mint-schedule__month-more {
14824
- font-size: 0.625rem;
14825
- color: var(--color-primary);
14826
- padding: 0 0.375rem;
14827
- cursor: pointer;
14828
- font-weight: 500;
14829
- }
14830
- .mint-schedule__month-more:hover {
14831
- text-decoration: underline;
14832
- }
14833
14833
  /* ResourceCard Component Styles */
14834
14834
  .mint-resource-card {
14835
14835
  background-color: var(--bg-card);
@@ -28748,7 +28748,7 @@ html.dark .mint-settings-modal__rail-item--active {
28748
28748
  color: var(--color-primary);
28749
28749
  text-decoration-color: var(--color-primary);
28750
28750
  }
28751
- /* ExperimentPopover — aligned with refresh design (AppPluginSwitcher / AppPageSelector) */
28751
+ /* ExperimentPopover — aligned with refresh design (AppPluginSwitcher / AppTopBar page selector) */
28752
28752
  /* Container */
28753
28753
  .mint-experiment-popover {
28754
28754
  position: relative;
@@ -28808,7 +28808,7 @@ html.dark .mint-settings-modal__rail-item--active {
28808
28808
  box-shadow: none;
28809
28809
  transition-duration: 0.05s;
28810
28810
  }
28811
- /* Active (panel open) — ring treatment, same language as PluginSwitcher/PageSelector */
28811
+ /* Active (panel open) — ring treatment, same language as PluginSwitcher/page selector */
28812
28812
  .mint-experiment-popover__trigger--active {
28813
28813
  border-color: var(--color-primary);
28814
28814
  box-shadow: 0 0 0 3px var(--color-primary-soft);