@morscherlab/mint-sdk 1.0.39 → 1.0.42
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.
- package/dist/{ExperimentPopover-DEzCbTqo.js → ExperimentPopover-8A4Rhffp.js} +1 -1
- package/dist/{ExperimentPopover-mzmSfAUp.js → ExperimentPopover-BbPkIFsI.js} +8 -2
- package/dist/ExperimentPopover-BbPkIFsI.js.map +1 -0
- package/dist/{ExperimentSelectorModal-Bn0Hmg07.js → ExperimentSelectorModal-B2qek_YG.js} +91 -46
- package/dist/ExperimentSelectorModal-B2qek_YG.js.map +1 -0
- package/dist/{ExperimentSelectorModal-BAIlIybO.js → ExperimentSelectorModal-BwPbQN1g.js} +1 -1
- package/dist/__tests__/components/AutoGroupModal.preview.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/classKey.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/groupTree.test.d.ts +1 -0
- package/dist/__tests__/composables/autoGroup/tokenLength.test.d.ts +1 -0
- package/dist/components/AppTopBar.navigation.d.ts +0 -1
- package/dist/components/index.js +3 -3
- package/dist/{components-Cyi0IfRl.js → components-BGVwavdd.js} +5632 -5629
- package/dist/components-BGVwavdd.js.map +1 -0
- package/dist/composables/autoGroup/classKey.d.ts +1 -0
- package/dist/composables/autoGroup/index.d.ts +2 -1
- package/dist/composables/autoGroup/replicatePreGroup.d.ts +10 -12
- package/dist/composables/autoGroup/tokenLength.d.ts +17 -0
- package/dist/composables/index.d.ts +1 -1
- package/dist/composables/index.js +3 -3
- package/dist/composables/useAutoGroup.d.ts +2 -0
- package/dist/composables/usePluginClient.d.ts +82 -5
- package/dist/{composables-CFSn4NN3.js → composables-C_hPF0Gn.js} +256 -9
- package/dist/{composables-CFSn4NN3.js.map → composables-C_hPF0Gn.js.map} +1 -1
- package/dist/index.js +6 -6
- package/dist/install.js +3 -3
- package/dist/styles.css +602 -555
- package/dist/types/auto-group.d.ts +19 -0
- package/dist/{useProtocolTemplates-CXP2ZosM.js → useProtocolTemplates-BbvlHoPD.js} +218 -90
- package/dist/useProtocolTemplates-BbvlHoPD.js.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/components/AppTopBar.navigation.test.ts +3 -5
- package/src/__tests__/components/AppTopBar.test.ts +2 -5
- package/src/__tests__/components/AppTopBarPageSelector.test.ts +22 -0
- package/src/__tests__/components/AutoGroupModal.preview.test.ts +46 -0
- package/src/__tests__/components/PluginWorkspaceView.test.ts +18 -0
- package/src/__tests__/composables/autoGroup/classKey.test.ts +25 -0
- package/src/__tests__/composables/autoGroup/fingerprint.test.ts +72 -0
- package/src/__tests__/composables/autoGroup/groupTree.test.ts +99 -0
- package/src/__tests__/composables/autoGroup/tokenLength.test.ts +85 -0
- package/src/__tests__/composables/useAutoGroup.test.ts +111 -19
- package/src/__tests__/composables/usePluginClient.test.ts +129 -3
- package/src/components/AppTopBar.navigation.ts +0 -2
- package/src/components/AppTopBar.story.vue +5 -5
- package/src/components/AppTopBar.vue +0 -1
- package/src/components/AutoGroupModal.vue +23 -19
- package/src/components/BaseModal.story.vue +7 -15
- package/src/components/ExperimentDataViewer.vue +1 -0
- package/src/components/ExperimentPopover.vue +6 -4
- package/src/components/ExperimentSelectorModal.vue +30 -3
- package/src/components/IconButton.story.vue +5 -0
- package/src/components/PluginWorkspaceView.vue +5 -1
- package/src/components/SampleSelector.vue +3 -2
- package/src/components/SampleSelectorSampleRow.vue +4 -2
- package/src/components/internal/AppTopBarPageSelectorInternal.vue +0 -1
- package/src/composables/autoGroup/classKey.ts +5 -2
- package/src/composables/autoGroup/columns.ts +2 -2
- package/src/composables/autoGroup/compose.ts +56 -0
- package/src/composables/autoGroup/fingerprint.ts +15 -1
- package/src/composables/autoGroup/index.ts +2 -0
- package/src/composables/autoGroup/replicatePreGroup.ts +34 -0
- package/src/composables/autoGroup/template.ts +2 -2
- package/src/composables/autoGroup/tokenLength.ts +53 -0
- package/src/composables/autoGroup/vocab.json +1 -2
- package/src/composables/index.ts +6 -0
- package/src/composables/useAutoGroup.ts +34 -13
- package/src/composables/usePluginClient.ts +453 -8
- package/src/styles/components/app-page-selector.css +3 -5
- package/src/styles/components/auto-group-modal.css +7 -11
- package/src/styles/components/button.css +14 -4
- package/src/styles/components/modal.css +3 -0
- package/src/styles/components/sample-selector.css +17 -0
- package/src/styles/variables.css +8 -0
- package/src/types/auto-group.ts +19 -0
- package/dist/ExperimentPopover-mzmSfAUp.js.map +0 -1
- package/dist/ExperimentSelectorModal-Bn0Hmg07.js.map +0 -1
- package/dist/components-Cyi0IfRl.js.map +0 -1
- package/dist/useProtocolTemplates-CXP2ZosM.js.map +0 -1
package/dist/styles.css
CHANGED
|
@@ -2855,10 +2855,11 @@
|
|
|
2855
2855
|
}
|
|
2856
2856
|
.mint-button--secondary {
|
|
2857
2857
|
background-color: var(--bg-secondary);
|
|
2858
|
-
color: var(--text-
|
|
2858
|
+
color: var(--text-secondary-strong);
|
|
2859
2859
|
border: 1px solid var(--border-color);
|
|
2860
|
-
/*
|
|
2861
|
-
|
|
2860
|
+
/* Secondary is lower-emphasis through surface, border, and shadow, but keeps
|
|
2861
|
+
medium label weight so it still reads as an actionable button. */
|
|
2862
|
+
font-weight: 500;
|
|
2862
2863
|
box-shadow: 0 1px 1px rgba(15, 23, 42, 0.03);
|
|
2863
2864
|
}
|
|
2864
2865
|
.mint-button--secondary:hover:not(.mint-button--disabled) {
|
|
@@ -2894,7 +2895,9 @@
|
|
|
2894
2895
|
}
|
|
2895
2896
|
.mint-button--ghost {
|
|
2896
2897
|
background-color: transparent;
|
|
2897
|
-
color: var(--text-
|
|
2898
|
+
color: var(--text-secondary-strong);
|
|
2899
|
+
/* Lowest-emphasis variant: regular (400) weight, below secondary. */
|
|
2900
|
+
font-weight: 400;
|
|
2898
2901
|
}
|
|
2899
2902
|
.mint-button--ghost:hover:not(.mint-button--disabled) {
|
|
2900
2903
|
background-color: var(--bg-tertiary);
|
|
@@ -2904,8 +2907,14 @@
|
|
|
2904
2907
|
.mint-button--sm {
|
|
2905
2908
|
padding: 0.375rem 0.75rem;
|
|
2906
2909
|
font-size: 0.875rem;
|
|
2910
|
+
/* Small buttons live in dense/secondary contexts — regular (400) weight
|
|
2911
|
+
keeps the compact label from reading too heavy. Applies to all variants. */
|
|
2912
|
+
font-weight: 400;
|
|
2907
2913
|
min-height: var(--form-height-sm);
|
|
2908
2914
|
}
|
|
2915
|
+
.mint-button--secondary.mint-button--sm {
|
|
2916
|
+
font-weight: 500;
|
|
2917
|
+
}
|
|
2909
2918
|
.mint-button--md {
|
|
2910
2919
|
padding: 0.5rem 1rem;
|
|
2911
2920
|
font-size: 0.875rem;
|
|
@@ -3113,6 +3122,9 @@ to {
|
|
|
3113
3122
|
}
|
|
3114
3123
|
.mint-modal__close {
|
|
3115
3124
|
flex-shrink: 0;
|
|
3125
|
+
/* Always pin the close affordance to the right edge of the header, even when
|
|
3126
|
+
there is no title/subtitle (no flex-1 header-text to push it over). */
|
|
3127
|
+
margin-left: auto;
|
|
3116
3128
|
width: 1.75rem;
|
|
3117
3129
|
height: 1.75rem;
|
|
3118
3130
|
padding: 0;
|
|
@@ -7096,10 +7108,9 @@ to {
|
|
|
7096
7108
|
}
|
|
7097
7109
|
.mint-page-selector__item-label {
|
|
7098
7110
|
flex: 1;
|
|
7099
|
-
|
|
7100
|
-
|
|
7101
|
-
|
|
7102
|
-
color: var(--text-muted);
|
|
7111
|
+
min-width: 0;
|
|
7112
|
+
overflow: hidden;
|
|
7113
|
+
text-overflow: ellipsis;
|
|
7103
7114
|
white-space: nowrap;
|
|
7104
7115
|
}
|
|
7105
7116
|
/* AppTopBar pillNav — centered top-level navigation pills */
|
|
@@ -10971,143 +10982,414 @@ to {
|
|
|
10971
10982
|
transform: rotate(360deg);
|
|
10972
10983
|
}
|
|
10973
10984
|
}
|
|
10974
|
-
/*
|
|
10975
|
-
.mint-
|
|
10976
|
-
|
|
10977
|
-
display: flex;
|
|
10978
|
-
flex-direction: column;
|
|
10979
|
-
gap: 0.625rem;
|
|
10980
|
-
min-height: 0;
|
|
10981
|
-
min-width: 0;
|
|
10985
|
+
/* SampleHierarchyTree Component Styles */
|
|
10986
|
+
.mint-sample-tree {
|
|
10987
|
+
font-size: 0.875rem;
|
|
10982
10988
|
}
|
|
10983
|
-
.mint-
|
|
10984
|
-
|
|
10989
|
+
.mint-sample-tree--sm {
|
|
10990
|
+
font-size: 0.75rem;
|
|
10985
10991
|
}
|
|
10986
|
-
.mint-
|
|
10987
|
-
|
|
10988
|
-
min-height: min(26rem, calc(100vh - 12rem));
|
|
10989
|
-
overflow: hidden;
|
|
10992
|
+
.mint-sample-tree--lg {
|
|
10993
|
+
font-size: 1rem;
|
|
10990
10994
|
}
|
|
10991
10995
|
|
|
10992
|
-
/*
|
|
10993
|
-
.mint-
|
|
10996
|
+
/* Node */
|
|
10997
|
+
.mint-sample-tree__node {
|
|
10998
|
+
user-select: none;
|
|
10999
|
+
}
|
|
11000
|
+
|
|
11001
|
+
/* Node header (clickable row) */
|
|
11002
|
+
.mint-sample-tree__node-header {
|
|
10994
11003
|
display: flex;
|
|
10995
|
-
align-items:
|
|
10996
|
-
|
|
10997
|
-
|
|
10998
|
-
|
|
10999
|
-
|
|
11000
|
-
|
|
11004
|
+
align-items: center;
|
|
11005
|
+
gap: 0.375rem;
|
|
11006
|
+
padding: 0.375rem 0.5rem;
|
|
11007
|
+
border-radius: var(--radius-sm);
|
|
11008
|
+
cursor: pointer;
|
|
11009
|
+
transition: background-color 0.15s ease;
|
|
11001
11010
|
}
|
|
11002
|
-
.mint-
|
|
11003
|
-
|
|
11011
|
+
.mint-sample-tree__node-header:hover {
|
|
11012
|
+
background-color: var(--bg-hover);
|
|
11004
11013
|
}
|
|
11005
|
-
.mint-
|
|
11006
|
-
|
|
11007
|
-
|
|
11014
|
+
.mint-sample-tree__node--selected > .mint-sample-tree__node-header {
|
|
11015
|
+
background-color: rgba(59, 130, 246, 0.1);
|
|
11016
|
+
}
|
|
11017
|
+
.mint-sample-tree--sm .mint-sample-tree__node-header {
|
|
11018
|
+
padding: 0.25rem 0.375rem;
|
|
11008
11019
|
gap: 0.25rem;
|
|
11009
11020
|
}
|
|
11010
|
-
.mint-
|
|
11011
|
-
|
|
11012
|
-
|
|
11013
|
-
|
|
11014
|
-
|
|
11015
|
-
|
|
11016
|
-
|
|
11021
|
+
.mint-sample-tree--lg .mint-sample-tree__node-header {
|
|
11022
|
+
padding: 0.5rem 0.625rem;
|
|
11023
|
+
gap: 0.5rem;
|
|
11024
|
+
}
|
|
11025
|
+
|
|
11026
|
+
/* Toggle button */
|
|
11027
|
+
.mint-sample-tree__toggle {
|
|
11028
|
+
display: flex;
|
|
11029
|
+
align-items: center;
|
|
11030
|
+
justify-content: center;
|
|
11031
|
+
width: 1.25rem;
|
|
11032
|
+
height: 1.25rem;
|
|
11033
|
+
padding: 0;
|
|
11017
11034
|
background: transparent;
|
|
11035
|
+
border: none;
|
|
11036
|
+
border-radius: var(--radius-sm);
|
|
11018
11037
|
color: var(--text-muted);
|
|
11019
|
-
font-size: 0.75rem;
|
|
11020
|
-
font-weight: 600;
|
|
11021
11038
|
cursor: pointer;
|
|
11022
|
-
|
|
11023
|
-
|
|
11039
|
+
transition: color 0.15s ease, transform 0.15s ease;
|
|
11040
|
+
flex-shrink: 0;
|
|
11024
11041
|
}
|
|
11025
|
-
.mint-
|
|
11042
|
+
.mint-sample-tree__toggle:hover {
|
|
11026
11043
|
color: var(--text-primary);
|
|
11044
|
+
background-color: var(--bg-tertiary);
|
|
11027
11045
|
}
|
|
11028
|
-
.mint-
|
|
11029
|
-
|
|
11030
|
-
|
|
11046
|
+
.mint-sample-tree__toggle svg {
|
|
11047
|
+
width: 0.875rem;
|
|
11048
|
+
height: 0.875rem;
|
|
11049
|
+
transition: transform 0.15s ease;
|
|
11031
11050
|
}
|
|
11032
|
-
.mint-
|
|
11033
|
-
|
|
11034
|
-
color: var(--color-primary);
|
|
11051
|
+
.mint-sample-tree__node--expanded > .mint-sample-tree__node-header .mint-sample-tree__toggle svg {
|
|
11052
|
+
transform: rotate(90deg);
|
|
11035
11053
|
}
|
|
11036
|
-
.mint-
|
|
11037
|
-
|
|
11038
|
-
|
|
11039
|
-
flex-direction: column;
|
|
11040
|
-
gap: 0.625rem;
|
|
11041
|
-
min-height: 0;
|
|
11042
|
-
min-width: 0;
|
|
11043
|
-
overflow: hidden;
|
|
11054
|
+
.mint-sample-tree--sm .mint-sample-tree__toggle {
|
|
11055
|
+
width: 1rem;
|
|
11056
|
+
height: 1rem;
|
|
11044
11057
|
}
|
|
11045
|
-
.mint-
|
|
11058
|
+
.mint-sample-tree--sm .mint-sample-tree__toggle svg {
|
|
11059
|
+
width: 0.75rem;
|
|
11060
|
+
height: 0.75rem;
|
|
11061
|
+
}
|
|
11062
|
+
.mint-sample-tree--lg .mint-sample-tree__toggle {
|
|
11063
|
+
width: 1.5rem;
|
|
11064
|
+
height: 1.5rem;
|
|
11065
|
+
}
|
|
11066
|
+
.mint-sample-tree--lg .mint-sample-tree__toggle svg {
|
|
11067
|
+
width: 1rem;
|
|
11068
|
+
height: 1rem;
|
|
11069
|
+
}
|
|
11070
|
+
|
|
11071
|
+
/* Placeholder for leaf nodes (no toggle) */
|
|
11072
|
+
.mint-sample-tree__toggle-placeholder {
|
|
11073
|
+
width: 1.25rem;
|
|
11074
|
+
flex-shrink: 0;
|
|
11075
|
+
}
|
|
11076
|
+
.mint-sample-tree--sm .mint-sample-tree__toggle-placeholder {
|
|
11077
|
+
width: 1rem;
|
|
11078
|
+
}
|
|
11079
|
+
.mint-sample-tree--lg .mint-sample-tree__toggle-placeholder {
|
|
11080
|
+
width: 1.5rem;
|
|
11081
|
+
}
|
|
11082
|
+
|
|
11083
|
+
/* Icon */
|
|
11084
|
+
.mint-sample-tree__icon {
|
|
11046
11085
|
display: flex;
|
|
11047
11086
|
align-items: center;
|
|
11048
|
-
justify-content:
|
|
11049
|
-
|
|
11050
|
-
|
|
11051
|
-
|
|
11052
|
-
padding-bottom: 0.25rem;
|
|
11087
|
+
justify-content: center;
|
|
11088
|
+
width: 1.25rem;
|
|
11089
|
+
height: 1.25rem;
|
|
11090
|
+
flex-shrink: 0;
|
|
11053
11091
|
}
|
|
11054
|
-
.mint-
|
|
11055
|
-
|
|
11056
|
-
|
|
11057
|
-
gap: 0.125rem;
|
|
11058
|
-
min-width: 0;
|
|
11092
|
+
.mint-sample-tree__icon svg {
|
|
11093
|
+
width: 1rem;
|
|
11094
|
+
height: 1rem;
|
|
11059
11095
|
}
|
|
11060
|
-
.mint-
|
|
11061
|
-
|
|
11062
|
-
|
|
11063
|
-
font-weight: 600;
|
|
11064
|
-
line-height: 1.25;
|
|
11096
|
+
.mint-sample-tree--sm .mint-sample-tree__icon {
|
|
11097
|
+
width: 1rem;
|
|
11098
|
+
height: 1rem;
|
|
11065
11099
|
}
|
|
11066
|
-
.mint-
|
|
11100
|
+
.mint-sample-tree--sm .mint-sample-tree__icon svg {
|
|
11101
|
+
width: 0.75rem;
|
|
11102
|
+
height: 0.75rem;
|
|
11103
|
+
}
|
|
11104
|
+
.mint-sample-tree--lg .mint-sample-tree__icon {
|
|
11105
|
+
width: 1.5rem;
|
|
11106
|
+
height: 1.5rem;
|
|
11107
|
+
}
|
|
11108
|
+
.mint-sample-tree--lg .mint-sample-tree__icon svg {
|
|
11109
|
+
width: 1.25rem;
|
|
11110
|
+
height: 1.25rem;
|
|
11111
|
+
}
|
|
11112
|
+
|
|
11113
|
+
/* Icon colors by type */
|
|
11114
|
+
.mint-sample-tree__icon--study {
|
|
11067
11115
|
color: var(--text-muted);
|
|
11068
|
-
font-size: 0.625rem;
|
|
11069
|
-
font-weight: 700;
|
|
11070
|
-
letter-spacing: 0.05em;
|
|
11071
|
-
line-height: 1.2;
|
|
11072
|
-
text-transform: uppercase;
|
|
11073
11116
|
}
|
|
11074
|
-
.mint-
|
|
11075
|
-
|
|
11076
|
-
|
|
11077
|
-
|
|
11078
|
-
|
|
11079
|
-
|
|
11117
|
+
.mint-sample-tree__icon--experiment {
|
|
11118
|
+
color: var(--color-primary);
|
|
11119
|
+
}
|
|
11120
|
+
.mint-sample-tree__icon--plate {
|
|
11121
|
+
color: var(--mint-info);
|
|
11122
|
+
}
|
|
11123
|
+
.mint-sample-tree__icon--sample {
|
|
11124
|
+
color: var(--mint-success);
|
|
11125
|
+
}
|
|
11126
|
+
.mint-sample-tree__icon--cell_line {
|
|
11127
|
+
color: var(--color-purple);
|
|
11128
|
+
}
|
|
11129
|
+
.mint-sample-tree__icon--passage {
|
|
11080
11130
|
color: var(--text-secondary);
|
|
11081
|
-
font-size: 0.6875rem;
|
|
11082
11131
|
}
|
|
11083
|
-
.mint-
|
|
11084
|
-
|
|
11085
|
-
align-items: center;
|
|
11086
|
-
gap: 0.25rem;
|
|
11087
|
-
min-height: 1.375rem;
|
|
11088
|
-
padding: 0.0625rem 0.4375rem;
|
|
11089
|
-
border: 1px solid var(--border-light);
|
|
11090
|
-
border-radius: 9999px;
|
|
11091
|
-
background: var(--bg-secondary);
|
|
11092
|
-
font-variant-numeric: tabular-nums;
|
|
11093
|
-
white-space: nowrap;
|
|
11132
|
+
.mint-sample-tree__icon--clone {
|
|
11133
|
+
color: var(--mint-warning);
|
|
11094
11134
|
}
|
|
11095
|
-
.mint-
|
|
11096
|
-
color: var(--
|
|
11097
|
-
font-family: 'Fira Code', monospace;
|
|
11098
|
-
font-size: 0.6875rem;
|
|
11135
|
+
.mint-sample-tree__icon--treatment {
|
|
11136
|
+
color: var(--color-cta);
|
|
11099
11137
|
}
|
|
11100
|
-
.mint-
|
|
11101
|
-
|
|
11102
|
-
|
|
11103
|
-
|
|
11138
|
+
.mint-sample-tree__icon--folder {
|
|
11139
|
+
color: var(--text-muted);
|
|
11140
|
+
}
|
|
11141
|
+
.mint-sample-tree__icon--custom {
|
|
11142
|
+
color: var(--text-secondary);
|
|
11143
|
+
}
|
|
11144
|
+
|
|
11145
|
+
/* Label */
|
|
11146
|
+
.mint-sample-tree__label {
|
|
11104
11147
|
flex: 1;
|
|
11105
|
-
min-height: 0;
|
|
11106
11148
|
min-width: 0;
|
|
11149
|
+
color: var(--text-primary);
|
|
11107
11150
|
overflow: hidden;
|
|
11151
|
+
text-overflow: ellipsis;
|
|
11152
|
+
white-space: nowrap;
|
|
11108
11153
|
}
|
|
11109
|
-
|
|
11110
|
-
|
|
11154
|
+
|
|
11155
|
+
/* Badge */
|
|
11156
|
+
.mint-sample-tree__badge {
|
|
11157
|
+
display: inline-flex;
|
|
11158
|
+
align-items: center;
|
|
11159
|
+
justify-content: center;
|
|
11160
|
+
min-width: 1.25rem;
|
|
11161
|
+
padding: 0.125rem 0.375rem;
|
|
11162
|
+
font-size: 0.625rem;
|
|
11163
|
+
font-weight: 600;
|
|
11164
|
+
border-radius: 9999px;
|
|
11165
|
+
flex-shrink: 0;
|
|
11166
|
+
}
|
|
11167
|
+
.mint-sample-tree--sm .mint-sample-tree__badge {
|
|
11168
|
+
min-width: 1rem;
|
|
11169
|
+
padding: 0.0625rem 0.25rem;
|
|
11170
|
+
font-size: 0.5rem;
|
|
11171
|
+
}
|
|
11172
|
+
.mint-sample-tree--lg .mint-sample-tree__badge {
|
|
11173
|
+
min-width: 1.5rem;
|
|
11174
|
+
padding: 0.125rem 0.5rem;
|
|
11175
|
+
font-size: 0.75rem;
|
|
11176
|
+
}
|
|
11177
|
+
.mint-sample-tree__badge--default {
|
|
11178
|
+
background-color: var(--bg-tertiary);
|
|
11179
|
+
color: var(--text-secondary);
|
|
11180
|
+
}
|
|
11181
|
+
.mint-sample-tree__badge--success {
|
|
11182
|
+
background-color: var(--mint-success-bg);
|
|
11183
|
+
color: var(--mint-success);
|
|
11184
|
+
}
|
|
11185
|
+
.mint-sample-tree__badge--warning {
|
|
11186
|
+
background-color: var(--mint-warning-bg);
|
|
11187
|
+
color: var(--mint-warning);
|
|
11188
|
+
}
|
|
11189
|
+
.mint-sample-tree__badge--error {
|
|
11190
|
+
background-color: var(--mint-error-bg);
|
|
11191
|
+
color: var(--mint-error);
|
|
11192
|
+
}
|
|
11193
|
+
|
|
11194
|
+
/* Children container */
|
|
11195
|
+
.mint-sample-tree__children {
|
|
11196
|
+
margin-left: 1.25rem;
|
|
11197
|
+
padding-left: 0.75rem;
|
|
11198
|
+
border-left: 1px solid var(--border-color);
|
|
11199
|
+
overflow: hidden;
|
|
11200
|
+
}
|
|
11201
|
+
.mint-sample-tree--sm .mint-sample-tree__children {
|
|
11202
|
+
margin-left: 1rem;
|
|
11203
|
+
padding-left: 0.5rem;
|
|
11204
|
+
}
|
|
11205
|
+
.mint-sample-tree--lg .mint-sample-tree__children {
|
|
11206
|
+
margin-left: 1.5rem;
|
|
11207
|
+
padding-left: 1rem;
|
|
11208
|
+
}
|
|
11209
|
+
|
|
11210
|
+
/* Animation */
|
|
11211
|
+
.mint-sample-tree__children--entering {
|
|
11212
|
+
animation: mint-tree-expand 0.15s ease-out;
|
|
11213
|
+
}
|
|
11214
|
+
.mint-sample-tree__children--leaving {
|
|
11215
|
+
animation: mint-tree-collapse 0.15s ease-out forwards;
|
|
11216
|
+
}
|
|
11217
|
+
@keyframes mint-tree-expand {
|
|
11218
|
+
from {
|
|
11219
|
+
opacity: 0;
|
|
11220
|
+
max-height: 0;
|
|
11221
|
+
}
|
|
11222
|
+
to {
|
|
11223
|
+
opacity: 1;
|
|
11224
|
+
max-height: 1000px;
|
|
11225
|
+
}
|
|
11226
|
+
}
|
|
11227
|
+
@keyframes mint-tree-collapse {
|
|
11228
|
+
from {
|
|
11229
|
+
opacity: 1;
|
|
11230
|
+
max-height: 1000px;
|
|
11231
|
+
}
|
|
11232
|
+
to {
|
|
11233
|
+
opacity: 0;
|
|
11234
|
+
max-height: 0;
|
|
11235
|
+
}
|
|
11236
|
+
}
|
|
11237
|
+
|
|
11238
|
+
/* Empty state */
|
|
11239
|
+
.mint-sample-tree__empty {
|
|
11240
|
+
padding: 1rem;
|
|
11241
|
+
text-align: center;
|
|
11242
|
+
color: var(--text-muted);
|
|
11243
|
+
}
|
|
11244
|
+
.mint-sample-tree__empty-icon {
|
|
11245
|
+
width: 2rem;
|
|
11246
|
+
height: 2rem;
|
|
11247
|
+
margin: 0 auto 0.5rem;
|
|
11248
|
+
opacity: 0.5;
|
|
11249
|
+
}
|
|
11250
|
+
.mint-sample-tree__empty-text {
|
|
11251
|
+
font-size: 0.875rem;
|
|
11252
|
+
margin-top: 0 !important;
|
|
11253
|
+
margin-bottom: 0 !important;
|
|
11254
|
+
padding: 0 !important;
|
|
11255
|
+
}
|
|
11256
|
+
/* AutoGroupModal - Smart grouping wizard */
|
|
11257
|
+
.mint-auto-group {
|
|
11258
|
+
flex: 1;
|
|
11259
|
+
display: flex;
|
|
11260
|
+
flex-direction: column;
|
|
11261
|
+
gap: 0.625rem;
|
|
11262
|
+
min-height: 0;
|
|
11263
|
+
min-width: 0;
|
|
11264
|
+
}
|
|
11265
|
+
.mint-modal__body:has(> .mint-auto-group .mint-auto-group__manual-mode) {
|
|
11266
|
+
overflow: hidden;
|
|
11267
|
+
}
|
|
11268
|
+
.mint-auto-group:has(.mint-auto-group__manual-mode) {
|
|
11269
|
+
height: min(34rem, calc(100vh - 12rem));
|
|
11270
|
+
min-height: min(26rem, calc(100vh - 12rem));
|
|
11271
|
+
overflow: hidden;
|
|
11272
|
+
}
|
|
11273
|
+
|
|
11274
|
+
/* --- Workflow tabs --- */
|
|
11275
|
+
.mint-auto-group__workflow-bar {
|
|
11276
|
+
display: flex;
|
|
11277
|
+
align-items: flex-end;
|
|
11278
|
+
justify-content: space-between;
|
|
11279
|
+
gap: 0.25rem;
|
|
11280
|
+
min-width: 0;
|
|
11281
|
+
padding-bottom: 0;
|
|
11282
|
+
border-bottom: 1px solid var(--border-color);
|
|
11283
|
+
}
|
|
11284
|
+
.mint-auto-group__workflow-bar--manual {
|
|
11285
|
+
gap: 0.75rem;
|
|
11286
|
+
}
|
|
11287
|
+
.mint-auto-group__workflow-tabs {
|
|
11288
|
+
display: flex;
|
|
11289
|
+
flex-shrink: 0;
|
|
11290
|
+
gap: 0.25rem;
|
|
11291
|
+
}
|
|
11292
|
+
.mint-auto-group__workflow-tab {
|
|
11293
|
+
min-height: 1.75rem;
|
|
11294
|
+
margin-bottom: -1px;
|
|
11295
|
+
padding: 0.25rem 0.625rem;
|
|
11296
|
+
border: 0;
|
|
11297
|
+
border-bottom: 2px solid transparent;
|
|
11298
|
+
border-radius: 0;
|
|
11299
|
+
background: transparent;
|
|
11300
|
+
color: var(--text-muted);
|
|
11301
|
+
font-size: 0.75rem;
|
|
11302
|
+
font-weight: 600;
|
|
11303
|
+
cursor: pointer;
|
|
11304
|
+
line-height: 1.25;
|
|
11305
|
+
transition: border-color 0.15s ease, color 0.15s ease;
|
|
11306
|
+
}
|
|
11307
|
+
.mint-auto-group__workflow-tab:hover {
|
|
11308
|
+
color: var(--text-primary);
|
|
11309
|
+
}
|
|
11310
|
+
.mint-auto-group__workflow-tab:focus-visible {
|
|
11311
|
+
outline: none;
|
|
11312
|
+
box-shadow: 0 0 0 2px var(--color-primary-soft);
|
|
11313
|
+
}
|
|
11314
|
+
.mint-auto-group__workflow-tab--active {
|
|
11315
|
+
border-bottom-color: var(--color-primary);
|
|
11316
|
+
color: var(--color-primary);
|
|
11317
|
+
}
|
|
11318
|
+
.mint-auto-group__manual-mode {
|
|
11319
|
+
flex: 1;
|
|
11320
|
+
display: flex;
|
|
11321
|
+
flex-direction: column;
|
|
11322
|
+
gap: 0.625rem;
|
|
11323
|
+
min-height: 0;
|
|
11324
|
+
min-width: 0;
|
|
11325
|
+
overflow: hidden;
|
|
11326
|
+
}
|
|
11327
|
+
.mint-auto-group__manual-summary {
|
|
11328
|
+
display: flex;
|
|
11329
|
+
align-items: center;
|
|
11330
|
+
justify-content: space-between;
|
|
11331
|
+
flex: 1;
|
|
11332
|
+
gap: 0.75rem;
|
|
11333
|
+
min-width: 0;
|
|
11334
|
+
padding-bottom: 0.25rem;
|
|
11335
|
+
}
|
|
11336
|
+
.mint-auto-group__manual-summary-text {
|
|
11337
|
+
display: flex;
|
|
11338
|
+
flex-direction: column;
|
|
11339
|
+
gap: 0.125rem;
|
|
11340
|
+
min-width: 0;
|
|
11341
|
+
}
|
|
11342
|
+
.mint-auto-group__manual-summary-text strong {
|
|
11343
|
+
color: var(--text-primary);
|
|
11344
|
+
font-size: 0.8125rem;
|
|
11345
|
+
font-weight: 600;
|
|
11346
|
+
line-height: 1.25;
|
|
11347
|
+
}
|
|
11348
|
+
.mint-auto-group__manual-eyebrow {
|
|
11349
|
+
color: var(--text-muted);
|
|
11350
|
+
font-size: 0.625rem;
|
|
11351
|
+
font-weight: 700;
|
|
11352
|
+
letter-spacing: 0.05em;
|
|
11353
|
+
line-height: 1.2;
|
|
11354
|
+
text-transform: uppercase;
|
|
11355
|
+
}
|
|
11356
|
+
.mint-auto-group__manual-stats {
|
|
11357
|
+
display: flex;
|
|
11358
|
+
align-items: center;
|
|
11359
|
+
gap: 0.375rem;
|
|
11360
|
+
flex-wrap: wrap;
|
|
11361
|
+
justify-content: flex-end;
|
|
11362
|
+
color: var(--text-secondary);
|
|
11363
|
+
font-size: 0.6875rem;
|
|
11364
|
+
}
|
|
11365
|
+
.mint-auto-group__manual-stats span {
|
|
11366
|
+
display: inline-flex;
|
|
11367
|
+
align-items: center;
|
|
11368
|
+
gap: 0.25rem;
|
|
11369
|
+
min-height: 1.375rem;
|
|
11370
|
+
padding: 0.0625rem 0.4375rem;
|
|
11371
|
+
border: 1px solid var(--border-light);
|
|
11372
|
+
border-radius: 9999px;
|
|
11373
|
+
background: var(--bg-secondary);
|
|
11374
|
+
font-variant-numeric: tabular-nums;
|
|
11375
|
+
white-space: nowrap;
|
|
11376
|
+
}
|
|
11377
|
+
.mint-auto-group__manual-stats strong {
|
|
11378
|
+
color: var(--text-primary);
|
|
11379
|
+
font-family: 'Fira Code', monospace;
|
|
11380
|
+
font-size: 0.6875rem;
|
|
11381
|
+
}
|
|
11382
|
+
.mint-auto-group__manual-grid {
|
|
11383
|
+
display: grid;
|
|
11384
|
+
grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr);
|
|
11385
|
+
gap: 0.625rem;
|
|
11386
|
+
flex: 1;
|
|
11387
|
+
min-height: 0;
|
|
11388
|
+
min-width: 0;
|
|
11389
|
+
overflow: hidden;
|
|
11390
|
+
}
|
|
11391
|
+
.mint-auto-group__manual-panel {
|
|
11392
|
+
min-width: 0;
|
|
11111
11393
|
min-height: 0;
|
|
11112
11394
|
overflow: hidden;
|
|
11113
11395
|
display: flex;
|
|
@@ -11738,7 +12020,7 @@ to {
|
|
|
11738
12020
|
font-size: 0.8125rem;
|
|
11739
12021
|
color: var(--mint-error);
|
|
11740
12022
|
background: var(--mint-error-bg);
|
|
11741
|
-
border: 1px solid
|
|
12023
|
+
border: 1px solid var(--mint-error-border);
|
|
11742
12024
|
border-radius: var(--radius);
|
|
11743
12025
|
}
|
|
11744
12026
|
|
|
@@ -11759,7 +12041,7 @@ to {
|
|
|
11759
12041
|
}
|
|
11760
12042
|
.mint-auto-group__experiment-error {
|
|
11761
12043
|
padding: 1.5rem;
|
|
11762
|
-
border: 1px solid
|
|
12044
|
+
border: 1px solid var(--mint-error-border);
|
|
11763
12045
|
border-radius: var(--radius-md);
|
|
11764
12046
|
background: var(--mint-error-bg);
|
|
11765
12047
|
font-size: 0.8125rem;
|
|
@@ -11790,7 +12072,7 @@ to {
|
|
|
11790
12072
|
.mint-auto-group__link-btn:focus-visible {
|
|
11791
12073
|
outline: 2px solid var(--color-primary);
|
|
11792
12074
|
outline-offset: 1px;
|
|
11793
|
-
border-radius:
|
|
12075
|
+
border-radius: var(--radius-sm);
|
|
11794
12076
|
}
|
|
11795
12077
|
.mint-auto-group__experiment-loaded {
|
|
11796
12078
|
padding: 1.5rem;
|
|
@@ -12167,21 +12449,12 @@ to {
|
|
|
12167
12449
|
}
|
|
12168
12450
|
.mint-auto-group__preview-panel h4 { margin: 0 0 10px; font-size: 12px; color: var(--text-muted); text-transform: uppercase; letter-spacing: .06em;
|
|
12169
12451
|
}
|
|
12170
|
-
|
|
12171
|
-
|
|
12172
|
-
|
|
12173
|
-
|
|
12174
|
-
.mint-auto-group__preview-group summary { display: flex; align-items: center; gap: 10px; cursor: pointer; font-size: 13px; padding: 0.5rem 0.875rem;
|
|
12175
|
-
}
|
|
12176
|
-
.mint-auto-group__preview-group[open] summary { border-bottom: 1px solid var(--border);
|
|
12177
|
-
}
|
|
12178
|
-
.mint-auto-group__preview-dot { width: 10px; height: 10px; border-radius: 9999px; flex-shrink: 0;
|
|
12179
|
-
}
|
|
12180
|
-
.mint-auto-group__preview-count { margin-left: auto; font-family: 'Fira Code', monospace; font-size: 12px; color: var(--text-secondary); background: var(--bg-primary); border: 1px solid var(--border); padding: 2px 8px; border-radius: 9999px;
|
|
12181
|
-
}
|
|
12182
|
-
.mint-auto-group__preview-samples { display: flex; flex-wrap: wrap; gap: 6px; padding: 0.5rem 0.875rem 0.625rem;
|
|
12452
|
+
|
|
12453
|
+
/* Nested experimental groups render as a collapsible SampleHierarchyTree; cap
|
|
12454
|
+
its height so a large batch scrolls inside the panel instead of the modal. */
|
|
12455
|
+
.mint-auto-group__preview-tree { max-height: 320px; overflow-y: auto;
|
|
12183
12456
|
}
|
|
12184
|
-
.mint-auto-group__preview-
|
|
12457
|
+
.mint-auto-group__preview-empty { margin: 0; font-size: 13px; color: var(--text-muted);
|
|
12185
12458
|
}
|
|
12186
12459
|
.mint-auto-group__qc-chips { display: flex; flex-wrap: wrap; gap: 6px;
|
|
12187
12460
|
}
|
|
@@ -12462,6 +12735,10 @@ to {
|
|
|
12462
12735
|
.mint-sample-selector__expand-btn:hover {
|
|
12463
12736
|
background-color: var(--bg-hover);
|
|
12464
12737
|
}
|
|
12738
|
+
.mint-sample-selector__expand-btn:focus-visible {
|
|
12739
|
+
outline: none;
|
|
12740
|
+
box-shadow: var(--focus-ring);
|
|
12741
|
+
}
|
|
12465
12742
|
.mint-sample-selector__expand-icon {
|
|
12466
12743
|
width: 0.875rem;
|
|
12467
12744
|
height: 0.875rem;
|
|
@@ -12571,6 +12848,10 @@ to {
|
|
|
12571
12848
|
transform: scale(1.25);
|
|
12572
12849
|
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), 0 0 0 3px rgba(0, 0, 0, 0.06);
|
|
12573
12850
|
}
|
|
12851
|
+
.mint-sample-selector__color-dot--clickable:focus-visible {
|
|
12852
|
+
outline: none;
|
|
12853
|
+
box-shadow: var(--focus-ring);
|
|
12854
|
+
}
|
|
12574
12855
|
|
|
12575
12856
|
/* Count Badge */
|
|
12576
12857
|
.mint-sample-selector__count-badge {
|
|
@@ -12602,8 +12883,15 @@ to {
|
|
|
12602
12883
|
background-color: var(--mint-error-bg);
|
|
12603
12884
|
color: var(--mint-error);
|
|
12604
12885
|
}
|
|
12605
|
-
|
|
12606
|
-
|
|
12886
|
+
|
|
12887
|
+
/* Reveal the hover-hidden delete button when reached by keyboard, and ring it. */
|
|
12888
|
+
.mint-sample-selector__delete-btn:focus-visible {
|
|
12889
|
+
outline: none;
|
|
12890
|
+
opacity: 1;
|
|
12891
|
+
box-shadow: var(--focus-ring);
|
|
12892
|
+
}
|
|
12893
|
+
.mint-sample-selector__delete-btn--hidden {
|
|
12894
|
+
opacity: 0;
|
|
12607
12895
|
}
|
|
12608
12896
|
.mint-sample-selector__delete-btn svg {
|
|
12609
12897
|
width: 0.875rem;
|
|
@@ -14730,448 +15018,177 @@ to {
|
|
|
14730
15018
|
.mint-reagent-editor__add-btn:hover:not(:disabled) {
|
|
14731
15019
|
filter: brightness(0.88);
|
|
14732
15020
|
}
|
|
14733
|
-
.mint-reagent-editor__add-btn:active:not(:disabled) {
|
|
14734
|
-
transform: scale(0.92);
|
|
14735
|
-
}
|
|
14736
|
-
.mint-reagent-editor__add-btn:disabled {
|
|
14737
|
-
opacity: var(--mint-disabled-opacity);
|
|
14738
|
-
cursor: not-allowed;
|
|
14739
|
-
}
|
|
14740
|
-
|
|
14741
|
-
/* Level table */
|
|
14742
|
-
.mint-reagent-editor__table {
|
|
14743
|
-
border: 1px solid var(--border-color);
|
|
14744
|
-
border-radius: var(--radius);
|
|
14745
|
-
overflow: hidden;
|
|
14746
|
-
max-height: 14rem;
|
|
14747
|
-
display: flex;
|
|
14748
|
-
flex-direction: column;
|
|
14749
|
-
}
|
|
14750
|
-
.mint-reagent-editor__table-body {
|
|
14751
|
-
flex: 1;
|
|
14752
|
-
overflow-y: auto;
|
|
14753
|
-
scrollbar-width: thin;
|
|
14754
|
-
scrollbar-color: var(--scrollbar-thumb) transparent;
|
|
14755
|
-
}
|
|
14756
|
-
.mint-reagent-editor__table-header {
|
|
14757
|
-
display: flex;
|
|
14758
|
-
align-items: center;
|
|
14759
|
-
padding: 0.375rem 0.5rem;
|
|
14760
|
-
background-color: var(--bg-tertiary);
|
|
14761
|
-
border-bottom: 1px solid var(--border-color);
|
|
14762
|
-
}
|
|
14763
|
-
.mint-reagent-editor__table-header .mint-reagent-editor__table-col {
|
|
14764
|
-
font-size: 0.6875rem;
|
|
14765
|
-
font-weight: 600;
|
|
14766
|
-
text-transform: uppercase;
|
|
14767
|
-
letter-spacing: 0.03em;
|
|
14768
|
-
color: var(--text-muted);
|
|
14769
|
-
}
|
|
14770
|
-
.mint-reagent-editor__table-row {
|
|
14771
|
-
display: flex;
|
|
14772
|
-
align-items: center;
|
|
14773
|
-
padding: 0.25rem 0.5rem;
|
|
14774
|
-
border-bottom: 1px solid var(--border-color);
|
|
14775
|
-
border-left: 2px solid transparent;
|
|
14776
|
-
transition: background-color 0.1s ease, border-left-color 0.1s ease;
|
|
14777
|
-
}
|
|
14778
|
-
.mint-reagent-editor__table-row:last-child {
|
|
14779
|
-
border-bottom: none;
|
|
14780
|
-
}
|
|
14781
|
-
.mint-reagent-editor__table-row:hover {
|
|
14782
|
-
background-color: color-mix(in srgb, var(--reagent-color, var(--color-primary)) 5%, var(--bg-secondary));
|
|
14783
|
-
border-left-color: var(--reagent-color, var(--color-primary));
|
|
14784
|
-
}
|
|
14785
|
-
.mint-reagent-editor__table-col--level {
|
|
14786
|
-
flex: 1;
|
|
14787
|
-
min-width: 0;
|
|
14788
|
-
display: flex;
|
|
14789
|
-
align-items: baseline;
|
|
14790
|
-
gap: 0.25rem;
|
|
14791
|
-
}
|
|
14792
|
-
.mint-reagent-editor__table-col--reps {
|
|
14793
|
-
width: 5.5rem;
|
|
14794
|
-
flex-shrink: 0;
|
|
14795
|
-
}
|
|
14796
|
-
.mint-reagent-editor__table-col--action {
|
|
14797
|
-
width: 1.75rem;
|
|
14798
|
-
flex-shrink: 0;
|
|
14799
|
-
display: flex;
|
|
14800
|
-
justify-content: center;
|
|
14801
|
-
}
|
|
14802
|
-
.mint-reagent-editor__level-value {
|
|
14803
|
-
font-family: 'Fira Code', monospace;
|
|
14804
|
-
font-size: 0.8125rem;
|
|
14805
|
-
font-weight: 500;
|
|
14806
|
-
color: var(--text-primary);
|
|
14807
|
-
overflow: hidden;
|
|
14808
|
-
text-overflow: ellipsis;
|
|
14809
|
-
white-space: nowrap;
|
|
14810
|
-
}
|
|
14811
|
-
.mint-reagent-editor__level-unit {
|
|
14812
|
-
font-family: 'Fira Code', monospace;
|
|
14813
|
-
font-size: 0.6875rem;
|
|
14814
|
-
color: var(--text-muted);
|
|
14815
|
-
}
|
|
14816
|
-
.mint-reagent-editor__remove-level-btn {
|
|
14817
|
-
display: flex;
|
|
14818
|
-
align-items: center;
|
|
14819
|
-
justify-content: center;
|
|
14820
|
-
width: 1.375rem;
|
|
14821
|
-
height: 1.375rem;
|
|
14822
|
-
border-radius: var(--radius-sm);
|
|
14823
|
-
background: transparent;
|
|
14824
|
-
color: var(--text-muted);
|
|
14825
|
-
border: none;
|
|
14826
|
-
cursor: pointer;
|
|
14827
|
-
opacity: 0;
|
|
14828
|
-
transition: opacity 0.1s ease, color 0.1s ease, background-color 0.1s ease;
|
|
14829
|
-
}
|
|
14830
|
-
.mint-reagent-editor__table-row:hover .mint-reagent-editor__remove-level-btn {
|
|
14831
|
-
opacity: 1;
|
|
14832
|
-
}
|
|
14833
|
-
.mint-reagent-editor__remove-level-btn:hover {
|
|
14834
|
-
color: var(--mint-error);
|
|
14835
|
-
background-color: var(--mint-error-bg);
|
|
14836
|
-
}
|
|
14837
|
-
|
|
14838
|
-
/* Empty state */
|
|
14839
|
-
.mint-reagent-editor__empty {
|
|
14840
|
-
text-align: center;
|
|
14841
|
-
padding: 1.25rem 0.75rem;
|
|
14842
|
-
font-size: 0.8125rem;
|
|
14843
|
-
color: var(--text-muted);
|
|
14844
|
-
font-style: italic;
|
|
14845
|
-
}
|
|
14846
|
-
|
|
14847
|
-
/* Position summary — reagent-tinted background */
|
|
14848
|
-
.mint-reagent-editor__summary {
|
|
14849
|
-
display: flex;
|
|
14850
|
-
align-items: center;
|
|
14851
|
-
justify-content: center;
|
|
14852
|
-
gap: 0.625rem;
|
|
14853
|
-
padding: 0.625rem 1rem;
|
|
14854
|
-
background-color: color-mix(in srgb, var(--reagent-color, var(--color-primary)) 6%, var(--bg-tertiary));
|
|
14855
|
-
border-bottom: 1px solid var(--border-color);
|
|
14856
|
-
}
|
|
14857
|
-
.mint-reagent-editor__summary-item {
|
|
14858
|
-
display: flex;
|
|
14859
|
-
align-items: baseline;
|
|
14860
|
-
gap: 0.25rem;
|
|
14861
|
-
}
|
|
14862
|
-
.mint-reagent-editor__summary-value {
|
|
14863
|
-
font-family: 'Fira Code', monospace;
|
|
14864
|
-
font-size: 0.8125rem;
|
|
14865
|
-
font-weight: 600;
|
|
14866
|
-
color: var(--reagent-color, var(--text-primary));
|
|
14867
|
-
}
|
|
14868
|
-
.mint-reagent-editor__summary-label {
|
|
14869
|
-
font-size: 0.6875rem;
|
|
14870
|
-
color: var(--text-muted);
|
|
14871
|
-
}
|
|
14872
|
-
.mint-reagent-editor__summary-dot {
|
|
14873
|
-
width: 3px;
|
|
14874
|
-
height: 3px;
|
|
14875
|
-
border-radius: 50%;
|
|
14876
|
-
background-color: var(--reagent-color, var(--text-muted));
|
|
14877
|
-
opacity: 0.5;
|
|
14878
|
-
flex-shrink: 0;
|
|
14879
|
-
}
|
|
14880
|
-
|
|
14881
|
-
/* Overflow warning */
|
|
14882
|
-
.mint-reagent-editor__summary--overflow {
|
|
14883
|
-
background-color: var(--mint-warning-bg);
|
|
14884
|
-
}
|
|
14885
|
-
.mint-reagent-editor__summary--overflow .mint-reagent-editor__summary-value {
|
|
14886
|
-
color: var(--mint-warning-hover);
|
|
14887
|
-
}
|
|
14888
|
-
.mint-reagent-editor__summary--overflow .mint-reagent-editor__summary-dot {
|
|
14889
|
-
background-color: var(--mint-warning);
|
|
14890
|
-
}
|
|
14891
|
-
.mint-reagent-editor__summary-warning {
|
|
14892
|
-
font-size: 0.6875rem;
|
|
14893
|
-
font-weight: 600;
|
|
14894
|
-
color: var(--mint-warning-hover);
|
|
14895
|
-
margin-left: 0.25rem;
|
|
14896
|
-
}
|
|
14897
|
-
|
|
14898
|
-
/* Footer */
|
|
14899
|
-
.mint-reagent-editor__footer {
|
|
14900
|
-
padding: 0.75rem 1rem;
|
|
14901
|
-
}
|
|
14902
|
-
.mint-reagent-editor__footer .mint-button {
|
|
14903
|
-
width: 100%;
|
|
14904
|
-
}
|
|
14905
|
-
/* SampleHierarchyTree Component Styles */
|
|
14906
|
-
.mint-sample-tree {
|
|
14907
|
-
font-size: 0.875rem;
|
|
14908
|
-
}
|
|
14909
|
-
.mint-sample-tree--sm {
|
|
14910
|
-
font-size: 0.75rem;
|
|
14911
|
-
}
|
|
14912
|
-
.mint-sample-tree--lg {
|
|
14913
|
-
font-size: 1rem;
|
|
14914
|
-
}
|
|
14915
|
-
|
|
14916
|
-
/* Node */
|
|
14917
|
-
.mint-sample-tree__node {
|
|
14918
|
-
user-select: none;
|
|
14919
|
-
}
|
|
14920
|
-
|
|
14921
|
-
/* Node header (clickable row) */
|
|
14922
|
-
.mint-sample-tree__node-header {
|
|
14923
|
-
display: flex;
|
|
14924
|
-
align-items: center;
|
|
14925
|
-
gap: 0.375rem;
|
|
14926
|
-
padding: 0.375rem 0.5rem;
|
|
14927
|
-
border-radius: var(--radius-sm);
|
|
14928
|
-
cursor: pointer;
|
|
14929
|
-
transition: background-color 0.15s ease;
|
|
14930
|
-
}
|
|
14931
|
-
.mint-sample-tree__node-header:hover {
|
|
14932
|
-
background-color: var(--bg-hover);
|
|
14933
|
-
}
|
|
14934
|
-
.mint-sample-tree__node--selected > .mint-sample-tree__node-header {
|
|
14935
|
-
background-color: rgba(59, 130, 246, 0.1);
|
|
14936
|
-
}
|
|
14937
|
-
.mint-sample-tree--sm .mint-sample-tree__node-header {
|
|
14938
|
-
padding: 0.25rem 0.375rem;
|
|
14939
|
-
gap: 0.25rem;
|
|
14940
|
-
}
|
|
14941
|
-
.mint-sample-tree--lg .mint-sample-tree__node-header {
|
|
14942
|
-
padding: 0.5rem 0.625rem;
|
|
14943
|
-
gap: 0.5rem;
|
|
14944
|
-
}
|
|
14945
|
-
|
|
14946
|
-
/* Toggle button */
|
|
14947
|
-
.mint-sample-tree__toggle {
|
|
14948
|
-
display: flex;
|
|
14949
|
-
align-items: center;
|
|
14950
|
-
justify-content: center;
|
|
14951
|
-
width: 1.25rem;
|
|
14952
|
-
height: 1.25rem;
|
|
14953
|
-
padding: 0;
|
|
14954
|
-
background: transparent;
|
|
14955
|
-
border: none;
|
|
14956
|
-
border-radius: var(--radius-sm);
|
|
14957
|
-
color: var(--text-muted);
|
|
14958
|
-
cursor: pointer;
|
|
14959
|
-
transition: color 0.15s ease, transform 0.15s ease;
|
|
14960
|
-
flex-shrink: 0;
|
|
14961
|
-
}
|
|
14962
|
-
.mint-sample-tree__toggle:hover {
|
|
14963
|
-
color: var(--text-primary);
|
|
14964
|
-
background-color: var(--bg-tertiary);
|
|
14965
|
-
}
|
|
14966
|
-
.mint-sample-tree__toggle svg {
|
|
14967
|
-
width: 0.875rem;
|
|
14968
|
-
height: 0.875rem;
|
|
14969
|
-
transition: transform 0.15s ease;
|
|
14970
|
-
}
|
|
14971
|
-
.mint-sample-tree__node--expanded > .mint-sample-tree__node-header .mint-sample-tree__toggle svg {
|
|
14972
|
-
transform: rotate(90deg);
|
|
14973
|
-
}
|
|
14974
|
-
.mint-sample-tree--sm .mint-sample-tree__toggle {
|
|
14975
|
-
width: 1rem;
|
|
14976
|
-
height: 1rem;
|
|
14977
|
-
}
|
|
14978
|
-
.mint-sample-tree--sm .mint-sample-tree__toggle svg {
|
|
14979
|
-
width: 0.75rem;
|
|
14980
|
-
height: 0.75rem;
|
|
14981
|
-
}
|
|
14982
|
-
.mint-sample-tree--lg .mint-sample-tree__toggle {
|
|
14983
|
-
width: 1.5rem;
|
|
14984
|
-
height: 1.5rem;
|
|
14985
|
-
}
|
|
14986
|
-
.mint-sample-tree--lg .mint-sample-tree__toggle svg {
|
|
14987
|
-
width: 1rem;
|
|
14988
|
-
height: 1rem;
|
|
14989
|
-
}
|
|
14990
|
-
|
|
14991
|
-
/* Placeholder for leaf nodes (no toggle) */
|
|
14992
|
-
.mint-sample-tree__toggle-placeholder {
|
|
14993
|
-
width: 1.25rem;
|
|
14994
|
-
flex-shrink: 0;
|
|
14995
|
-
}
|
|
14996
|
-
.mint-sample-tree--sm .mint-sample-tree__toggle-placeholder {
|
|
14997
|
-
width: 1rem;
|
|
14998
|
-
}
|
|
14999
|
-
.mint-sample-tree--lg .mint-sample-tree__toggle-placeholder {
|
|
15000
|
-
width: 1.5rem;
|
|
15001
|
-
}
|
|
15002
|
-
|
|
15003
|
-
/* Icon */
|
|
15004
|
-
.mint-sample-tree__icon {
|
|
15005
|
-
display: flex;
|
|
15006
|
-
align-items: center;
|
|
15007
|
-
justify-content: center;
|
|
15008
|
-
width: 1.25rem;
|
|
15009
|
-
height: 1.25rem;
|
|
15010
|
-
flex-shrink: 0;
|
|
15011
|
-
}
|
|
15012
|
-
.mint-sample-tree__icon svg {
|
|
15013
|
-
width: 1rem;
|
|
15014
|
-
height: 1rem;
|
|
15015
|
-
}
|
|
15016
|
-
.mint-sample-tree--sm .mint-sample-tree__icon {
|
|
15017
|
-
width: 1rem;
|
|
15018
|
-
height: 1rem;
|
|
15019
|
-
}
|
|
15020
|
-
.mint-sample-tree--sm .mint-sample-tree__icon svg {
|
|
15021
|
-
width: 0.75rem;
|
|
15022
|
-
height: 0.75rem;
|
|
15023
|
-
}
|
|
15024
|
-
.mint-sample-tree--lg .mint-sample-tree__icon {
|
|
15025
|
-
width: 1.5rem;
|
|
15026
|
-
height: 1.5rem;
|
|
15027
|
-
}
|
|
15028
|
-
.mint-sample-tree--lg .mint-sample-tree__icon svg {
|
|
15029
|
-
width: 1.25rem;
|
|
15030
|
-
height: 1.25rem;
|
|
15031
|
-
}
|
|
15032
|
-
|
|
15033
|
-
/* Icon colors by type */
|
|
15034
|
-
.mint-sample-tree__icon--study {
|
|
15035
|
-
color: var(--text-muted);
|
|
15036
|
-
}
|
|
15037
|
-
.mint-sample-tree__icon--experiment {
|
|
15038
|
-
color: var(--color-primary);
|
|
15039
|
-
}
|
|
15040
|
-
.mint-sample-tree__icon--plate {
|
|
15041
|
-
color: var(--mint-info);
|
|
15042
|
-
}
|
|
15043
|
-
.mint-sample-tree__icon--sample {
|
|
15044
|
-
color: var(--mint-success);
|
|
15045
|
-
}
|
|
15046
|
-
.mint-sample-tree__icon--cell_line {
|
|
15047
|
-
color: var(--color-purple);
|
|
15021
|
+
.mint-reagent-editor__add-btn:active:not(:disabled) {
|
|
15022
|
+
transform: scale(0.92);
|
|
15048
15023
|
}
|
|
15049
|
-
.mint-
|
|
15050
|
-
|
|
15024
|
+
.mint-reagent-editor__add-btn:disabled {
|
|
15025
|
+
opacity: var(--mint-disabled-opacity);
|
|
15026
|
+
cursor: not-allowed;
|
|
15051
15027
|
}
|
|
15052
|
-
|
|
15053
|
-
|
|
15028
|
+
|
|
15029
|
+
/* Level table */
|
|
15030
|
+
.mint-reagent-editor__table {
|
|
15031
|
+
border: 1px solid var(--border-color);
|
|
15032
|
+
border-radius: var(--radius);
|
|
15033
|
+
overflow: hidden;
|
|
15034
|
+
max-height: 14rem;
|
|
15035
|
+
display: flex;
|
|
15036
|
+
flex-direction: column;
|
|
15054
15037
|
}
|
|
15055
|
-
.mint-
|
|
15056
|
-
|
|
15038
|
+
.mint-reagent-editor__table-body {
|
|
15039
|
+
flex: 1;
|
|
15040
|
+
overflow-y: auto;
|
|
15041
|
+
scrollbar-width: thin;
|
|
15042
|
+
scrollbar-color: var(--scrollbar-thumb) transparent;
|
|
15057
15043
|
}
|
|
15058
|
-
.mint-
|
|
15044
|
+
.mint-reagent-editor__table-header {
|
|
15045
|
+
display: flex;
|
|
15046
|
+
align-items: center;
|
|
15047
|
+
padding: 0.375rem 0.5rem;
|
|
15048
|
+
background-color: var(--bg-tertiary);
|
|
15049
|
+
border-bottom: 1px solid var(--border-color);
|
|
15050
|
+
}
|
|
15051
|
+
.mint-reagent-editor__table-header .mint-reagent-editor__table-col {
|
|
15052
|
+
font-size: 0.6875rem;
|
|
15053
|
+
font-weight: 600;
|
|
15054
|
+
text-transform: uppercase;
|
|
15055
|
+
letter-spacing: 0.03em;
|
|
15059
15056
|
color: var(--text-muted);
|
|
15060
15057
|
}
|
|
15061
|
-
.mint-
|
|
15062
|
-
|
|
15058
|
+
.mint-reagent-editor__table-row {
|
|
15059
|
+
display: flex;
|
|
15060
|
+
align-items: center;
|
|
15061
|
+
padding: 0.25rem 0.5rem;
|
|
15062
|
+
border-bottom: 1px solid var(--border-color);
|
|
15063
|
+
border-left: 2px solid transparent;
|
|
15064
|
+
transition: background-color 0.1s ease, border-left-color 0.1s ease;
|
|
15063
15065
|
}
|
|
15064
|
-
|
|
15065
|
-
|
|
15066
|
-
|
|
15066
|
+
.mint-reagent-editor__table-row:last-child {
|
|
15067
|
+
border-bottom: none;
|
|
15068
|
+
}
|
|
15069
|
+
.mint-reagent-editor__table-row:hover {
|
|
15070
|
+
background-color: color-mix(in srgb, var(--reagent-color, var(--color-primary)) 5%, var(--bg-secondary));
|
|
15071
|
+
border-left-color: var(--reagent-color, var(--color-primary));
|
|
15072
|
+
}
|
|
15073
|
+
.mint-reagent-editor__table-col--level {
|
|
15067
15074
|
flex: 1;
|
|
15068
15075
|
min-width: 0;
|
|
15076
|
+
display: flex;
|
|
15077
|
+
align-items: baseline;
|
|
15078
|
+
gap: 0.25rem;
|
|
15079
|
+
}
|
|
15080
|
+
.mint-reagent-editor__table-col--reps {
|
|
15081
|
+
width: 5.5rem;
|
|
15082
|
+
flex-shrink: 0;
|
|
15083
|
+
}
|
|
15084
|
+
.mint-reagent-editor__table-col--action {
|
|
15085
|
+
width: 1.75rem;
|
|
15086
|
+
flex-shrink: 0;
|
|
15087
|
+
display: flex;
|
|
15088
|
+
justify-content: center;
|
|
15089
|
+
}
|
|
15090
|
+
.mint-reagent-editor__level-value {
|
|
15091
|
+
font-family: 'Fira Code', monospace;
|
|
15092
|
+
font-size: 0.8125rem;
|
|
15093
|
+
font-weight: 500;
|
|
15069
15094
|
color: var(--text-primary);
|
|
15070
15095
|
overflow: hidden;
|
|
15071
15096
|
text-overflow: ellipsis;
|
|
15072
15097
|
white-space: nowrap;
|
|
15073
15098
|
}
|
|
15074
|
-
|
|
15075
|
-
|
|
15076
|
-
|
|
15077
|
-
|
|
15099
|
+
.mint-reagent-editor__level-unit {
|
|
15100
|
+
font-family: 'Fira Code', monospace;
|
|
15101
|
+
font-size: 0.6875rem;
|
|
15102
|
+
color: var(--text-muted);
|
|
15103
|
+
}
|
|
15104
|
+
.mint-reagent-editor__remove-level-btn {
|
|
15105
|
+
display: flex;
|
|
15078
15106
|
align-items: center;
|
|
15079
15107
|
justify-content: center;
|
|
15080
|
-
|
|
15081
|
-
|
|
15082
|
-
|
|
15083
|
-
|
|
15084
|
-
|
|
15085
|
-
|
|
15086
|
-
|
|
15087
|
-
|
|
15088
|
-
|
|
15089
|
-
padding: 0.0625rem 0.25rem;
|
|
15090
|
-
font-size: 0.5rem;
|
|
15091
|
-
}
|
|
15092
|
-
.mint-sample-tree--lg .mint-sample-tree__badge {
|
|
15093
|
-
min-width: 1.5rem;
|
|
15094
|
-
padding: 0.125rem 0.5rem;
|
|
15095
|
-
font-size: 0.75rem;
|
|
15096
|
-
}
|
|
15097
|
-
.mint-sample-tree__badge--default {
|
|
15098
|
-
background-color: var(--bg-tertiary);
|
|
15099
|
-
color: var(--text-secondary);
|
|
15100
|
-
}
|
|
15101
|
-
.mint-sample-tree__badge--success {
|
|
15102
|
-
background-color: var(--mint-success-bg);
|
|
15103
|
-
color: var(--mint-success);
|
|
15108
|
+
width: 1.375rem;
|
|
15109
|
+
height: 1.375rem;
|
|
15110
|
+
border-radius: var(--radius-sm);
|
|
15111
|
+
background: transparent;
|
|
15112
|
+
color: var(--text-muted);
|
|
15113
|
+
border: none;
|
|
15114
|
+
cursor: pointer;
|
|
15115
|
+
opacity: 0;
|
|
15116
|
+
transition: opacity 0.1s ease, color 0.1s ease, background-color 0.1s ease;
|
|
15104
15117
|
}
|
|
15105
|
-
.mint-
|
|
15106
|
-
|
|
15107
|
-
color: var(--mint-warning);
|
|
15118
|
+
.mint-reagent-editor__table-row:hover .mint-reagent-editor__remove-level-btn {
|
|
15119
|
+
opacity: 1;
|
|
15108
15120
|
}
|
|
15109
|
-
.mint-
|
|
15110
|
-
background-color: var(--mint-error-bg);
|
|
15121
|
+
.mint-reagent-editor__remove-level-btn:hover {
|
|
15111
15122
|
color: var(--mint-error);
|
|
15123
|
+
background-color: var(--mint-error-bg);
|
|
15112
15124
|
}
|
|
15113
15125
|
|
|
15114
|
-
/*
|
|
15115
|
-
.mint-
|
|
15116
|
-
|
|
15117
|
-
padding
|
|
15118
|
-
|
|
15119
|
-
|
|
15120
|
-
|
|
15121
|
-
.mint-sample-tree--sm .mint-sample-tree__children {
|
|
15122
|
-
margin-left: 1rem;
|
|
15123
|
-
padding-left: 0.5rem;
|
|
15124
|
-
}
|
|
15125
|
-
.mint-sample-tree--lg .mint-sample-tree__children {
|
|
15126
|
-
margin-left: 1.5rem;
|
|
15127
|
-
padding-left: 1rem;
|
|
15126
|
+
/* Empty state */
|
|
15127
|
+
.mint-reagent-editor__empty {
|
|
15128
|
+
text-align: center;
|
|
15129
|
+
padding: 1.25rem 0.75rem;
|
|
15130
|
+
font-size: 0.8125rem;
|
|
15131
|
+
color: var(--text-muted);
|
|
15132
|
+
font-style: italic;
|
|
15128
15133
|
}
|
|
15129
15134
|
|
|
15130
|
-
/*
|
|
15131
|
-
.mint-
|
|
15132
|
-
|
|
15135
|
+
/* Position summary — reagent-tinted background */
|
|
15136
|
+
.mint-reagent-editor__summary {
|
|
15137
|
+
display: flex;
|
|
15138
|
+
align-items: center;
|
|
15139
|
+
justify-content: center;
|
|
15140
|
+
gap: 0.625rem;
|
|
15141
|
+
padding: 0.625rem 1rem;
|
|
15142
|
+
background-color: color-mix(in srgb, var(--reagent-color, var(--color-primary)) 6%, var(--bg-tertiary));
|
|
15143
|
+
border-bottom: 1px solid var(--border-color);
|
|
15133
15144
|
}
|
|
15134
|
-
.mint-
|
|
15135
|
-
|
|
15145
|
+
.mint-reagent-editor__summary-item {
|
|
15146
|
+
display: flex;
|
|
15147
|
+
align-items: baseline;
|
|
15148
|
+
gap: 0.25rem;
|
|
15136
15149
|
}
|
|
15137
|
-
|
|
15138
|
-
|
|
15139
|
-
|
|
15140
|
-
|
|
15150
|
+
.mint-reagent-editor__summary-value {
|
|
15151
|
+
font-family: 'Fira Code', monospace;
|
|
15152
|
+
font-size: 0.8125rem;
|
|
15153
|
+
font-weight: 600;
|
|
15154
|
+
color: var(--reagent-color, var(--text-primary));
|
|
15141
15155
|
}
|
|
15142
|
-
|
|
15143
|
-
|
|
15144
|
-
|
|
15156
|
+
.mint-reagent-editor__summary-label {
|
|
15157
|
+
font-size: 0.6875rem;
|
|
15158
|
+
color: var(--text-muted);
|
|
15159
|
+
}
|
|
15160
|
+
.mint-reagent-editor__summary-dot {
|
|
15161
|
+
width: 3px;
|
|
15162
|
+
height: 3px;
|
|
15163
|
+
border-radius: 50%;
|
|
15164
|
+
background-color: var(--reagent-color, var(--text-muted));
|
|
15165
|
+
opacity: 0.5;
|
|
15166
|
+
flex-shrink: 0;
|
|
15145
15167
|
}
|
|
15168
|
+
|
|
15169
|
+
/* Overflow warning */
|
|
15170
|
+
.mint-reagent-editor__summary--overflow {
|
|
15171
|
+
background-color: var(--mint-warning-bg);
|
|
15146
15172
|
}
|
|
15147
|
-
|
|
15148
|
-
|
|
15149
|
-
opacity: 1;
|
|
15150
|
-
max-height: 1000px;
|
|
15173
|
+
.mint-reagent-editor__summary--overflow .mint-reagent-editor__summary-value {
|
|
15174
|
+
color: var(--mint-warning-hover);
|
|
15151
15175
|
}
|
|
15152
|
-
|
|
15153
|
-
|
|
15154
|
-
max-height: 0;
|
|
15176
|
+
.mint-reagent-editor__summary--overflow .mint-reagent-editor__summary-dot {
|
|
15177
|
+
background-color: var(--mint-warning);
|
|
15155
15178
|
}
|
|
15179
|
+
.mint-reagent-editor__summary-warning {
|
|
15180
|
+
font-size: 0.6875rem;
|
|
15181
|
+
font-weight: 600;
|
|
15182
|
+
color: var(--mint-warning-hover);
|
|
15183
|
+
margin-left: 0.25rem;
|
|
15156
15184
|
}
|
|
15157
15185
|
|
|
15158
|
-
/*
|
|
15159
|
-
.mint-
|
|
15160
|
-
padding: 1rem;
|
|
15161
|
-
text-align: center;
|
|
15162
|
-
color: var(--text-muted);
|
|
15163
|
-
}
|
|
15164
|
-
.mint-sample-tree__empty-icon {
|
|
15165
|
-
width: 2rem;
|
|
15166
|
-
height: 2rem;
|
|
15167
|
-
margin: 0 auto 0.5rem;
|
|
15168
|
-
opacity: 0.5;
|
|
15186
|
+
/* Footer */
|
|
15187
|
+
.mint-reagent-editor__footer {
|
|
15188
|
+
padding: 0.75rem 1rem;
|
|
15169
15189
|
}
|
|
15170
|
-
.mint-
|
|
15171
|
-
|
|
15172
|
-
margin-top: 0 !important;
|
|
15173
|
-
margin-bottom: 0 !important;
|
|
15174
|
-
padding: 0 !important;
|
|
15190
|
+
.mint-reagent-editor__footer .mint-button {
|
|
15191
|
+
width: 100%;
|
|
15175
15192
|
}
|
|
15176
15193
|
/* ProtocolStepEditor Component Styles */
|
|
15177
15194
|
.mint-protocol-editor {
|
|
@@ -17987,6 +18004,11 @@ to { transform: rotate(360deg);
|
|
|
17987
18004
|
--text-primary: #1E293B;
|
|
17988
18005
|
--text-secondary: #64748B;
|
|
17989
18006
|
--text-muted: #94A3B8;
|
|
18007
|
+
/* De-emphasized label for low-emphasis interactive controls (secondary/ghost
|
|
18008
|
+
buttons). A true dark gray — softer than --text-primary's near-black — that
|
|
18009
|
+
still clears WCAG AA (4.5:1) on the secondary hover surface (--bg-tertiary),
|
|
18010
|
+
where --text-secondary would drop to ~4.35:1. */
|
|
18011
|
+
--text-secondary-strong: #475569;
|
|
17990
18012
|
|
|
17991
18013
|
/* Brand colors */
|
|
17992
18014
|
--color-primary: #6366F1;
|
|
@@ -18093,6 +18115,9 @@ html.dark {
|
|
|
18093
18115
|
--text-primary: #F8FAFC;
|
|
18094
18116
|
--text-secondary: #94A3B8;
|
|
18095
18117
|
--text-muted: #64748B;
|
|
18118
|
+
/* Dark-mode analog: soft light-gray instead of near-white, AA-safe (7.2:1)
|
|
18119
|
+
on the dark secondary hover surface (--bg-tertiary #334155). */
|
|
18120
|
+
--text-secondary-strong: #CBD5E1;
|
|
18096
18121
|
|
|
18097
18122
|
/* Scrollbar */
|
|
18098
18123
|
--scrollbar-track: #1E293B;
|
|
@@ -19876,10 +19901,11 @@ code, pre {
|
|
|
19876
19901
|
}
|
|
19877
19902
|
.mint-button--secondary {
|
|
19878
19903
|
background-color: var(--bg-secondary);
|
|
19879
|
-
color: var(--text-
|
|
19904
|
+
color: var(--text-secondary-strong);
|
|
19880
19905
|
border: 1px solid var(--border-color);
|
|
19881
|
-
/*
|
|
19882
|
-
|
|
19906
|
+
/* Secondary is lower-emphasis through surface, border, and shadow, but keeps
|
|
19907
|
+
medium label weight so it still reads as an actionable button. */
|
|
19908
|
+
font-weight: 500;
|
|
19883
19909
|
box-shadow: 0 1px 1px rgba(15, 23, 42, 0.03);
|
|
19884
19910
|
}
|
|
19885
19911
|
.mint-button--secondary:hover:not(.mint-button--disabled) {
|
|
@@ -19915,7 +19941,9 @@ code, pre {
|
|
|
19915
19941
|
}
|
|
19916
19942
|
.mint-button--ghost {
|
|
19917
19943
|
background-color: transparent;
|
|
19918
|
-
color: var(--text-
|
|
19944
|
+
color: var(--text-secondary-strong);
|
|
19945
|
+
/* Lowest-emphasis variant: regular (400) weight, below secondary. */
|
|
19946
|
+
font-weight: 400;
|
|
19919
19947
|
}
|
|
19920
19948
|
.mint-button--ghost:hover:not(.mint-button--disabled) {
|
|
19921
19949
|
background-color: var(--bg-tertiary);
|
|
@@ -19924,8 +19952,14 @@ code, pre {
|
|
|
19924
19952
|
.mint-button--sm {
|
|
19925
19953
|
padding: 0.375rem 0.75rem;
|
|
19926
19954
|
font-size: 0.875rem;
|
|
19955
|
+
/* Small buttons live in dense/secondary contexts — regular (400) weight
|
|
19956
|
+
keeps the compact label from reading too heavy. Applies to all variants. */
|
|
19957
|
+
font-weight: 400;
|
|
19927
19958
|
min-height: var(--form-height-sm);
|
|
19928
19959
|
}
|
|
19960
|
+
.mint-button--secondary.mint-button--sm {
|
|
19961
|
+
font-weight: 500;
|
|
19962
|
+
}
|
|
19929
19963
|
.mint-button--md {
|
|
19930
19964
|
padding: 0.5rem 1rem;
|
|
19931
19965
|
font-size: 0.875rem;
|
|
@@ -22278,6 +22312,9 @@ code, pre {
|
|
|
22278
22312
|
}
|
|
22279
22313
|
.mint-modal__close {
|
|
22280
22314
|
flex-shrink: 0;
|
|
22315
|
+
/* Always pin the close affordance to the right edge of the header, even when
|
|
22316
|
+
there is no title/subtitle (no flex-1 header-text to push it over). */
|
|
22317
|
+
margin-left: auto;
|
|
22281
22318
|
width: 1.75rem;
|
|
22282
22319
|
height: 1.75rem;
|
|
22283
22320
|
padding: 0;
|
|
@@ -24612,6 +24649,10 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
24612
24649
|
.mint-sample-selector__expand-btn:hover {
|
|
24613
24650
|
background-color: var(--bg-hover);
|
|
24614
24651
|
}
|
|
24652
|
+
.mint-sample-selector__expand-btn:focus-visible {
|
|
24653
|
+
outline: none;
|
|
24654
|
+
box-shadow: var(--focus-ring);
|
|
24655
|
+
}
|
|
24615
24656
|
.mint-sample-selector__expand-icon {
|
|
24616
24657
|
width: 0.875rem;
|
|
24617
24658
|
height: 0.875rem;
|
|
@@ -24716,6 +24757,10 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
24716
24757
|
transform: scale(1.25);
|
|
24717
24758
|
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.08), 0 0 0 3px rgba(0, 0, 0, 0.06);
|
|
24718
24759
|
}
|
|
24760
|
+
.mint-sample-selector__color-dot--clickable:focus-visible {
|
|
24761
|
+
outline: none;
|
|
24762
|
+
box-shadow: var(--focus-ring);
|
|
24763
|
+
}
|
|
24719
24764
|
/* Count Badge */
|
|
24720
24765
|
.mint-sample-selector__count-badge {
|
|
24721
24766
|
font-size: 0.625rem;
|
|
@@ -24745,6 +24790,12 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
24745
24790
|
background-color: var(--mint-error-bg);
|
|
24746
24791
|
color: var(--mint-error);
|
|
24747
24792
|
}
|
|
24793
|
+
/* Reveal the hover-hidden delete button when reached by keyboard, and ring it. */
|
|
24794
|
+
.mint-sample-selector__delete-btn:focus-visible {
|
|
24795
|
+
outline: none;
|
|
24796
|
+
opacity: 1;
|
|
24797
|
+
box-shadow: var(--focus-ring);
|
|
24798
|
+
}
|
|
24748
24799
|
.mint-sample-selector__delete-btn--hidden {
|
|
24749
24800
|
opacity: 0;
|
|
24750
24801
|
}
|
|
@@ -25822,7 +25873,7 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
25822
25873
|
font-size: 0.8125rem;
|
|
25823
25874
|
color: var(--mint-error);
|
|
25824
25875
|
background: var(--mint-error-bg);
|
|
25825
|
-
border: 1px solid
|
|
25876
|
+
border: 1px solid var(--mint-error-border);
|
|
25826
25877
|
border-radius: var(--radius);
|
|
25827
25878
|
}
|
|
25828
25879
|
/* --- Experiment mode --- */
|
|
@@ -25842,7 +25893,7 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
25842
25893
|
}
|
|
25843
25894
|
.mint-auto-group__experiment-error {
|
|
25844
25895
|
padding: 1.5rem;
|
|
25845
|
-
border: 1px solid
|
|
25896
|
+
border: 1px solid var(--mint-error-border);
|
|
25846
25897
|
border-radius: var(--radius-md);
|
|
25847
25898
|
background: var(--mint-error-bg);
|
|
25848
25899
|
font-size: 0.8125rem;
|
|
@@ -25873,7 +25924,7 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
25873
25924
|
.mint-auto-group__link-btn:focus-visible {
|
|
25874
25925
|
outline: 2px solid var(--color-primary);
|
|
25875
25926
|
outline-offset: 1px;
|
|
25876
|
-
border-radius:
|
|
25927
|
+
border-radius: var(--radius-sm);
|
|
25877
25928
|
}
|
|
25878
25929
|
.mint-auto-group__experiment-loaded {
|
|
25879
25930
|
padding: 1.5rem;
|
|
@@ -26188,14 +26239,10 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
26188
26239
|
.mint-auto-group__preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
|
|
26189
26240
|
.mint-auto-group__preview-panel { background: var(--bg-secondary); border: 1px solid var(--border); border-radius: var(--radius); padding: 14px; }
|
|
26190
26241
|
.mint-auto-group__preview-panel h4 { margin: 0 0 10px; font-size: 12px; color: var(--text-muted); text-transform: uppercase; letter-spacing: .06em; }
|
|
26191
|
-
|
|
26192
|
-
|
|
26193
|
-
.mint-auto-group__preview-
|
|
26194
|
-
.mint-auto-group__preview-
|
|
26195
|
-
.mint-auto-group__preview-dot { width: 10px; height: 10px; border-radius: 9999px; flex-shrink: 0; }
|
|
26196
|
-
.mint-auto-group__preview-count { margin-left: auto; font-family: 'Fira Code', monospace; font-size: 12px; color: var(--text-secondary); background: var(--bg-primary); border: 1px solid var(--border); padding: 2px 8px; border-radius: 9999px; }
|
|
26197
|
-
.mint-auto-group__preview-samples { display: flex; flex-wrap: wrap; gap: 6px; padding: 0.5rem 0.875rem 0.625rem; }
|
|
26198
|
-
.mint-auto-group__preview-sample { font-family: 'Fira Code', monospace; font-size: 11.5px; color: var(--text-primary); background: var(--bg-primary); border: 1px solid var(--border); padding: 3px 8px; border-radius: 9999px; }
|
|
26242
|
+
/* Nested experimental groups render as a collapsible SampleHierarchyTree; cap
|
|
26243
|
+
its height so a large batch scrolls inside the panel instead of the modal. */
|
|
26244
|
+
.mint-auto-group__preview-tree { max-height: 320px; overflow-y: auto; }
|
|
26245
|
+
.mint-auto-group__preview-empty { margin: 0; font-size: 13px; color: var(--text-muted); }
|
|
26199
26246
|
.mint-auto-group__qc-chips { display: flex; flex-wrap: wrap; gap: 6px; }
|
|
26200
26247
|
.mint-auto-group__qc-chip { background: var(--mint-warning-bg); color: #92400E; border: 1px solid var(--mint-warning-border); padding: 4px 10px; border-radius: 9999px; font-size: 12px; }
|
|
26201
26248
|
.mint-auto-group__fingerprint { margin-top: 14px; }
|