@morscherlab/mint-sdk 1.0.0-beta.1 → 1.0.0-beta.2
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/__tests__/components/PluginIcon.test.d.ts +1 -0
- package/dist/components/AppTopBar.vue.d.ts +2 -0
- package/dist/components/BaseButton.vue.d.ts +1 -1
- package/dist/components/BaseCheckbox.vue.d.ts +1 -1
- package/dist/components/BaseInput.vue.d.ts +1 -1
- package/dist/components/BasePill.vue.d.ts +1 -1
- package/dist/components/BaseRadioGroup.vue.d.ts +1 -1
- package/dist/components/BaseSelect.vue.d.ts +1 -1
- package/dist/components/BaseSlider.vue.d.ts +1 -1
- package/dist/components/BaseTextarea.vue.d.ts +1 -1
- package/dist/components/BaseToggle.vue.d.ts +1 -1
- package/dist/components/ColorSlider.vue.d.ts +1 -1
- package/dist/components/ConcentrationInput.vue.d.ts +1 -1
- package/dist/components/DatePicker.vue.d.ts +1 -1
- package/dist/components/DateTimePicker.vue.d.ts +1 -1
- package/dist/components/Divider.vue.d.ts +1 -1
- package/dist/components/DropdownButton.vue.d.ts +1 -1
- package/dist/components/FileUploader.vue.d.ts +1 -1
- package/dist/components/FormulaInput.vue.d.ts +1 -1
- package/dist/components/IconButton.vue.d.ts +1 -1
- package/dist/components/LoadingSpinner.vue.d.ts +1 -1
- package/dist/components/MultiSelect.vue.d.ts +1 -1
- package/dist/components/NumberInput.vue.d.ts +1 -1
- package/dist/components/PluginIcon.vue.d.ts +11 -0
- package/dist/components/ProgressBar.vue.d.ts +1 -1
- package/dist/components/ReagentEditor.vue.d.ts +1 -1
- package/dist/components/ResourceCard.vue.d.ts +1 -1
- package/dist/components/SampleSelector.vue.d.ts +1 -1
- package/dist/components/ScientificNumber.vue.d.ts +1 -1
- package/dist/components/SegmentedControl.vue.d.ts +1 -1
- package/dist/components/SettingsModal.vue.d.ts +22 -2
- package/dist/components/TagsInput.vue.d.ts +1 -1
- package/dist/components/TimePicker.vue.d.ts +1 -1
- package/dist/components/TimeRangeInput.vue.d.ts +1 -1
- package/dist/components/UnitInput.vue.d.ts +1 -1
- package/dist/components/WellPlate.vue.d.ts +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +3 -3
- package/dist/{components-CzbQQPCb.js → components-_XqPEhP9.js} +572 -362
- package/dist/components-_XqPEhP9.js.map +1 -0
- package/dist/composables/index.js +2 -2
- package/dist/composables/usePlatformContext.d.ts +3 -0
- package/dist/{composables-BXklV5ii.js → composables-tiZqLu1M.js} +2 -2
- package/dist/{composables-BXklV5ii.js.map → composables-tiZqLu1M.js.map} +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +4 -4
- package/dist/install.js +2 -2
- package/dist/stores/auth.d.ts +1 -1
- package/dist/styles.css +896 -553
- package/dist/types/components.d.ts +39 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/platform.d.ts +1 -0
- package/dist/{useScheduleDrag-CxBeqYcu.js → useScheduleDrag-CA9sGNJG.js} +4000 -4000
- package/dist/useScheduleDrag-CA9sGNJG.js.map +1 -0
- package/package.json +1 -1
- package/src/__tests__/components/AppTopBar.test.ts +31 -13
- package/src/__tests__/components/PluginIcon.test.ts +119 -0
- package/src/components/AppTopBar.vue +32 -27
- package/src/components/PluginIcon.story.vue +71 -0
- package/src/components/PluginIcon.vue +88 -0
- package/src/components/SettingsModal.story.vue +337 -45
- package/src/components/SettingsModal.vue +251 -64
- package/src/components/index.ts +1 -0
- package/src/index.ts +4 -0
- package/src/styles/components/app-pill-nav.css +1 -2
- package/src/styles/components/app-top-bar.css +1 -2
- package/src/styles/components/button.css +3 -7
- package/src/styles/components/dropdown-button.css +4 -4
- package/src/styles/components/input.css +4 -5
- package/src/styles/components/number-input.css +3 -3
- package/src/styles/components/plugin-icon.css +38 -0
- package/src/styles/components/segmented-control.css +4 -7
- package/src/styles/components/settings-modal.css +184 -0
- package/src/styles/components/tabs.css +1 -2
- package/src/styles/components/textarea.css +4 -5
- package/src/styles/components/unit-input.css +3 -3
- package/src/types/components.ts +42 -0
- package/src/types/index.ts +3 -0
- package/src/types/platform.ts +1 -0
- package/dist/components-CzbQQPCb.js.map +0 -1
- package/dist/useScheduleDrag-CxBeqYcu.js.map +0 -1
package/dist/styles.css
CHANGED
|
@@ -38,20 +38,19 @@
|
|
|
38
38
|
cursor: not-allowed;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
/* Size variants
|
|
42
|
-
See CLAUDE.md § Optical Centering. */
|
|
41
|
+
/* Size variants */
|
|
43
42
|
.mint-input--sm {
|
|
44
|
-
padding: 0.
|
|
43
|
+
padding: 0.375rem 0.625rem;
|
|
45
44
|
font-size: 0.8125rem;
|
|
46
45
|
min-height: var(--form-height-sm);
|
|
47
46
|
}
|
|
48
47
|
.mint-input--md {
|
|
49
|
-
padding: 0.
|
|
48
|
+
padding: 0.5rem 0.75rem;
|
|
50
49
|
font-size: 0.875rem;
|
|
51
50
|
min-height: var(--form-height-md);
|
|
52
51
|
}
|
|
53
52
|
.mint-input--lg {
|
|
54
|
-
padding: 0.
|
|
53
|
+
padding: 0.75rem 1rem;
|
|
55
54
|
font-size: 1rem;
|
|
56
55
|
min-height: var(--form-height-lg);
|
|
57
56
|
}
|
|
@@ -98,18 +97,17 @@
|
|
|
98
97
|
resize: none;
|
|
99
98
|
}
|
|
100
99
|
|
|
101
|
-
/* Size variants
|
|
102
|
-
See CLAUDE.md § Optical Centering. */
|
|
100
|
+
/* Size variants */
|
|
103
101
|
.mint-textarea--sm {
|
|
104
|
-
padding: 0.
|
|
102
|
+
padding: 0.375rem 0.625rem;
|
|
105
103
|
font-size: 0.8125rem;
|
|
106
104
|
}
|
|
107
105
|
.mint-textarea--md {
|
|
108
|
-
padding: 0.
|
|
106
|
+
padding: 0.5rem 0.75rem;
|
|
109
107
|
font-size: 0.875rem;
|
|
110
108
|
}
|
|
111
109
|
.mint-textarea--lg {
|
|
112
|
-
padding: 0.
|
|
110
|
+
padding: 0.75rem 1rem;
|
|
113
111
|
font-size: 1rem;
|
|
114
112
|
}
|
|
115
113
|
.mint-textarea--resize-none {
|
|
@@ -1425,11 +1423,11 @@
|
|
|
1425
1423
|
|
|
1426
1424
|
/* Horizontal padding matches BaseInput canonical scale (10/12/16) so FormField's
|
|
1427
1425
|
12px label indent aligns with the numeric text across all input types. */
|
|
1428
|
-
.mint-number-input__input--sm { padding: 0.
|
|
1426
|
+
.mint-number-input__input--sm { padding: 0.375rem 0.625rem; font-size: 0.875rem;
|
|
1429
1427
|
}
|
|
1430
|
-
.mint-number-input__input--md { padding: 0.
|
|
1428
|
+
.mint-number-input__input--md { padding: 0.5rem 0.75rem; font-size: 0.875rem;
|
|
1431
1429
|
}
|
|
1432
|
-
.mint-number-input__input--lg { padding: 0.
|
|
1430
|
+
.mint-number-input__input--lg { padding: 0.75rem 1rem; font-size: 1rem;
|
|
1433
1431
|
}
|
|
1434
1432
|
|
|
1435
1433
|
/* ---------- Unit suffix ---------- */
|
|
@@ -1810,306 +1808,206 @@
|
|
|
1810
1808
|
transition: none;
|
|
1811
1809
|
}
|
|
1812
1810
|
}
|
|
1813
|
-
/*
|
|
1814
|
-
.mint-
|
|
1815
|
-
|
|
1816
|
-
|
|
1811
|
+
/* DateTimePicker Component Styles */
|
|
1812
|
+
.mint-datetime-picker {
|
|
1813
|
+
position: relative;
|
|
1814
|
+
}
|
|
1815
|
+
.mint-datetime-picker__input-wrapper {
|
|
1816
|
+
position: relative;
|
|
1817
|
+
}
|
|
1818
|
+
.mint-datetime-picker__input {
|
|
1819
|
+
width: 100%;
|
|
1817
1820
|
border-radius: var(--radius-md);
|
|
1818
1821
|
border: 1px solid var(--border-color);
|
|
1819
1822
|
background-color: var(--bg-secondary);
|
|
1820
|
-
|
|
1823
|
+
color: var(--text-primary);
|
|
1821
1824
|
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
1825
|
+
cursor: pointer;
|
|
1826
|
+
padding-left: 2.5rem;
|
|
1827
|
+
padding-right: 2.5rem;
|
|
1822
1828
|
}
|
|
1823
|
-
.mint-
|
|
1829
|
+
.mint-datetime-picker__input:focus-visible {
|
|
1830
|
+
outline: none;
|
|
1824
1831
|
border-color: transparent;
|
|
1825
1832
|
box-shadow: var(--focus-ring);
|
|
1826
1833
|
}
|
|
1827
|
-
.mint-
|
|
1828
|
-
|
|
1829
|
-
|
|
1834
|
+
.mint-datetime-picker__input--sm {
|
|
1835
|
+
padding-top: 0.375rem;
|
|
1836
|
+
padding-bottom: 0.375rem;
|
|
1837
|
+
font-size: 0.875rem;
|
|
1830
1838
|
}
|
|
1831
|
-
.mint-
|
|
1832
|
-
|
|
1839
|
+
.mint-datetime-picker__input--md {
|
|
1840
|
+
padding-top: 0.5rem;
|
|
1841
|
+
padding-bottom: 0.5rem;
|
|
1842
|
+
font-size: 0.875rem;
|
|
1833
1843
|
}
|
|
1834
|
-
.mint-
|
|
1844
|
+
.mint-datetime-picker__input--lg {
|
|
1845
|
+
padding-top: 0.75rem;
|
|
1846
|
+
padding-bottom: 0.75rem;
|
|
1847
|
+
font-size: 1rem;
|
|
1848
|
+
}
|
|
1849
|
+
.mint-datetime-picker__input--error {
|
|
1835
1850
|
border-color: var(--mint-error);
|
|
1836
1851
|
}
|
|
1837
|
-
.mint-
|
|
1852
|
+
.mint-datetime-picker__input--error:focus-visible {
|
|
1838
1853
|
box-shadow: var(--focus-ring-error);
|
|
1839
1854
|
}
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
width: 100%;
|
|
1845
|
-
min-height: 200px;
|
|
1846
|
-
background-color: var(--bg-secondary);
|
|
1847
|
-
}
|
|
1848
|
-
.mint-molecule-input__editor iframe {
|
|
1849
|
-
border: none;
|
|
1850
|
-
display: block;
|
|
1855
|
+
.mint-datetime-picker__input--disabled {
|
|
1856
|
+
opacity: var(--mint-disabled-opacity);
|
|
1857
|
+
cursor: not-allowed;
|
|
1858
|
+
background-color: var(--bg-tertiary);
|
|
1851
1859
|
}
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1860
|
+
.mint-datetime-picker__icon-calendar {
|
|
1861
|
+
position: absolute;
|
|
1862
|
+
top: 0;
|
|
1863
|
+
bottom: 0;
|
|
1864
|
+
left: 0;
|
|
1855
1865
|
display: flex;
|
|
1856
|
-
flex-direction: column;
|
|
1857
1866
|
align-items: center;
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
height: 100%;
|
|
1861
|
-
min-height: 200px;
|
|
1862
|
-
background-color: var(--bg-tertiary);
|
|
1863
|
-
}
|
|
1864
|
-
.mint-molecule-input__skeleton-icon {
|
|
1865
|
-
width: 3rem;
|
|
1866
|
-
height: 3rem;
|
|
1867
|
-
color: var(--text-muted);
|
|
1868
|
-
animation: mint-molecule-pulse 1.5s ease-in-out infinite;
|
|
1867
|
+
padding-left: 0.75rem;
|
|
1868
|
+
pointer-events: none;
|
|
1869
1869
|
}
|
|
1870
|
-
.mint-
|
|
1871
|
-
|
|
1870
|
+
.mint-datetime-picker__icon-calendar svg {
|
|
1871
|
+
width: 1rem;
|
|
1872
|
+
height: 1rem;
|
|
1872
1873
|
color: var(--text-muted);
|
|
1873
1874
|
}
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
opacity: 1;
|
|
1880
|
-
}
|
|
1881
|
-
}
|
|
1882
|
-
|
|
1883
|
-
/* Readonly SVG display */
|
|
1884
|
-
.mint-molecule-input__readonly {
|
|
1875
|
+
.mint-datetime-picker__icon-clock {
|
|
1876
|
+
position: absolute;
|
|
1877
|
+
top: 0;
|
|
1878
|
+
bottom: 0;
|
|
1879
|
+
right: 0;
|
|
1885
1880
|
display: flex;
|
|
1886
1881
|
align-items: center;
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
padding: 1rem;
|
|
1890
|
-
background-color: var(--bg-tertiary);
|
|
1882
|
+
padding-right: 0.75rem;
|
|
1883
|
+
pointer-events: none;
|
|
1891
1884
|
}
|
|
1892
|
-
.mint-
|
|
1893
|
-
|
|
1894
|
-
|
|
1885
|
+
.mint-datetime-picker__icon-clock svg {
|
|
1886
|
+
width: 1rem;
|
|
1887
|
+
height: 1rem;
|
|
1888
|
+
color: var(--text-muted);
|
|
1895
1889
|
}
|
|
1896
1890
|
|
|
1897
|
-
/*
|
|
1898
|
-
.mint-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
color: var(--
|
|
1891
|
+
/* Dropdown */
|
|
1892
|
+
.mint-datetime-picker__dropdown {
|
|
1893
|
+
position: absolute;
|
|
1894
|
+
z-index: 50;
|
|
1895
|
+
margin-top: 0.25rem;
|
|
1896
|
+
width: 20rem;
|
|
1897
|
+
padding: 0.75rem;
|
|
1898
|
+
border-radius: var(--radius-md);
|
|
1899
|
+
border: 1px solid var(--border-color);
|
|
1900
|
+
background-color: var(--bg-primary);
|
|
1901
|
+
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
|
|
1907
1902
|
}
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1903
|
+
|
|
1904
|
+
/* Calendar section */
|
|
1905
|
+
.mint-datetime-picker__calendar-section {
|
|
1906
|
+
margin-bottom: 0;
|
|
1911
1907
|
}
|
|
1912
|
-
|
|
1913
|
-
|
|
1908
|
+
|
|
1909
|
+
/* Divider */
|
|
1910
|
+
.mint-datetime-picker__divider {
|
|
1911
|
+
height: 1px;
|
|
1912
|
+
background-color: var(--border-color);
|
|
1913
|
+
margin: 0.5rem 0;
|
|
1914
1914
|
}
|
|
1915
1915
|
|
|
1916
|
-
/*
|
|
1917
|
-
.mint-
|
|
1918
|
-
padding: 0
|
|
1919
|
-
font-family: 'Fira Code', monospace;
|
|
1920
|
-
font-size: 0.75rem;
|
|
1921
|
-
color: var(--text-secondary);
|
|
1922
|
-
background-color: var(--bg-tertiary);
|
|
1923
|
-
border-top: 1px solid var(--border-color);
|
|
1924
|
-
word-break: break-all;
|
|
1925
|
-
user-select: all;
|
|
1916
|
+
/* Time section */
|
|
1917
|
+
.mint-datetime-picker__time-section {
|
|
1918
|
+
padding: 0;
|
|
1926
1919
|
}
|
|
1927
|
-
.mint-
|
|
1920
|
+
.mint-datetime-picker__time-label {
|
|
1921
|
+
font-size: 0.6875rem;
|
|
1928
1922
|
font-weight: 500;
|
|
1929
1923
|
color: var(--text-muted);
|
|
1930
|
-
|
|
1924
|
+
text-transform: uppercase;
|
|
1925
|
+
letter-spacing: 0.05em;
|
|
1926
|
+
margin-bottom: 0.375rem;
|
|
1927
|
+
}
|
|
1928
|
+
.mint-datetime-picker__time-grid {
|
|
1929
|
+
display: grid;
|
|
1930
|
+
grid-template-columns: repeat(4, 1fr);
|
|
1931
|
+
gap: 0.25rem;
|
|
1932
|
+
max-height: 10rem;
|
|
1933
|
+
overflow-y: auto;
|
|
1931
1934
|
}
|
|
1932
1935
|
|
|
1933
|
-
/*
|
|
1934
|
-
.mint-
|
|
1935
|
-
padding: 0.
|
|
1936
|
-
font-size: 0.
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1936
|
+
/* Time chips */
|
|
1937
|
+
.mint-datetime-picker__time-chip {
|
|
1938
|
+
padding: 0.25rem 0.5rem;
|
|
1939
|
+
font-size: 0.75rem;
|
|
1940
|
+
border-radius: var(--radius, 0.375rem);
|
|
1941
|
+
border: 1px solid var(--border-color);
|
|
1942
|
+
background-color: var(--bg-secondary);
|
|
1943
|
+
color: var(--text-primary);
|
|
1944
|
+
cursor: pointer;
|
|
1945
|
+
text-align: center;
|
|
1946
|
+
transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
|
|
1940
1947
|
}
|
|
1941
|
-
.mint-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1948
|
+
.mint-datetime-picker__time-chip:hover {
|
|
1949
|
+
background-color: var(--bg-hover);
|
|
1950
|
+
border-color: var(--color-primary);
|
|
1951
|
+
}
|
|
1952
|
+
.mint-datetime-picker__time-chip--active {
|
|
1953
|
+
background-color: var(--color-primary);
|
|
1954
|
+
border-color: var(--color-primary);
|
|
1955
|
+
color: white;
|
|
1956
|
+
}
|
|
1957
|
+
.mint-datetime-picker__time-chip--active:hover {
|
|
1958
|
+
background-color: var(--color-primary);
|
|
1959
|
+
}
|
|
1960
|
+
.mint-datetime-picker__time-chip--disabled {
|
|
1961
|
+
opacity: 0.3;
|
|
1962
|
+
cursor: not-allowed;
|
|
1946
1963
|
}
|
|
1947
1964
|
|
|
1948
|
-
/*
|
|
1949
|
-
.mint-
|
|
1965
|
+
/* Footer */
|
|
1966
|
+
.mint-datetime-picker__footer {
|
|
1950
1967
|
display: flex;
|
|
1951
|
-
|
|
1952
|
-
|
|
1953
|
-
|
|
1968
|
+
align-items: center;
|
|
1969
|
+
justify-content: space-between;
|
|
1970
|
+
margin-top: 0.75rem;
|
|
1971
|
+
padding-top: 0.75rem;
|
|
1954
1972
|
border-top: 1px solid var(--border-color);
|
|
1955
1973
|
}
|
|
1956
|
-
.mint-
|
|
1957
|
-
|
|
1958
|
-
align-items: center;
|
|
1959
|
-
justify-content: center;
|
|
1960
|
-
padding: 0.375rem;
|
|
1974
|
+
.mint-datetime-picker__footer-btn {
|
|
1975
|
+
font-size: 0.75rem;
|
|
1961
1976
|
background: transparent;
|
|
1962
1977
|
border: none;
|
|
1963
|
-
border-radius: var(--radius-sm);
|
|
1964
|
-
color: var(--text-muted);
|
|
1965
1978
|
cursor: pointer;
|
|
1966
|
-
transition: color 0.15s ease
|
|
1979
|
+
transition: color 0.15s ease;
|
|
1980
|
+
color: var(--color-primary);
|
|
1967
1981
|
}
|
|
1968
|
-
.mint-
|
|
1969
|
-
|
|
1970
|
-
background-color: var(--bg-hover);
|
|
1982
|
+
.mint-datetime-picker__footer-btn:hover {
|
|
1983
|
+
opacity: 0.8;
|
|
1971
1984
|
}
|
|
1972
|
-
.mint-
|
|
1973
|
-
|
|
1974
|
-
cursor: not-allowed;
|
|
1985
|
+
.mint-datetime-picker__footer-btn + .mint-datetime-picker__footer-btn {
|
|
1986
|
+
margin-left: 0.75rem;
|
|
1975
1987
|
}
|
|
1976
|
-
.mint-
|
|
1977
|
-
width: 1rem;
|
|
1978
|
-
height: 1rem;
|
|
1979
|
-
}
|
|
1980
|
-
/* ConcentrationInput Component Styles */
|
|
1981
|
-
.mint-concentration-input {
|
|
1982
|
-
display: flex;
|
|
1983
|
-
flex-direction: column;
|
|
1984
|
-
gap: 0.25rem;
|
|
1985
|
-
}
|
|
1986
|
-
.mint-concentration-input__controls {
|
|
1987
|
-
display: flex;
|
|
1988
|
-
border-radius: var(--radius-md);
|
|
1989
|
-
border: 1px solid var(--border-color);
|
|
1990
|
-
overflow: hidden;
|
|
1991
|
-
box-sizing: border-box;
|
|
1992
|
-
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
1993
|
-
}
|
|
1994
|
-
.mint-concentration-input__controls--sm {
|
|
1995
|
-
min-height: var(--form-height-sm);
|
|
1996
|
-
}
|
|
1997
|
-
.mint-concentration-input__controls--md {
|
|
1998
|
-
min-height: var(--form-height-md);
|
|
1999
|
-
}
|
|
2000
|
-
.mint-concentration-input__controls--lg {
|
|
2001
|
-
min-height: var(--form-height-lg);
|
|
2002
|
-
}
|
|
2003
|
-
.mint-concentration-input__controls:focus-within {
|
|
2004
|
-
border-color: transparent;
|
|
2005
|
-
box-shadow: var(--focus-ring);
|
|
2006
|
-
}
|
|
2007
|
-
.mint-concentration-input--error .mint-concentration-input__controls {
|
|
2008
|
-
border-color: var(--mint-error);
|
|
2009
|
-
}
|
|
2010
|
-
.mint-concentration-input--error .mint-concentration-input__controls:focus-within {
|
|
2011
|
-
box-shadow: var(--focus-ring-error);
|
|
2012
|
-
}
|
|
2013
|
-
.mint-concentration-input--disabled .mint-concentration-input__controls {
|
|
2014
|
-
opacity: var(--mint-disabled-opacity);
|
|
2015
|
-
}
|
|
2016
|
-
|
|
2017
|
-
/* Value input */
|
|
2018
|
-
.mint-concentration-input__value {
|
|
2019
|
-
flex: 1;
|
|
2020
|
-
min-width: 0;
|
|
2021
|
-
background-color: var(--bg-secondary);
|
|
2022
|
-
color: var(--text-primary);
|
|
2023
|
-
border: none;
|
|
2024
|
-
outline: none;
|
|
2025
|
-
line-height: 1.25;
|
|
2026
|
-
-webkit-appearance: textfield;
|
|
2027
|
-
-moz-appearance: textfield;
|
|
2028
|
-
appearance: textfield;
|
|
2029
|
-
}
|
|
2030
|
-
.mint-concentration-input__value::-webkit-outer-spin-button,
|
|
2031
|
-
.mint-concentration-input__value::-webkit-inner-spin-button {
|
|
2032
|
-
-webkit-appearance: none;
|
|
2033
|
-
margin: 0;
|
|
2034
|
-
}
|
|
2035
|
-
.mint-concentration-input__value::placeholder {
|
|
1988
|
+
.mint-datetime-picker__footer-btn--muted {
|
|
2036
1989
|
color: var(--text-muted);
|
|
2037
1990
|
}
|
|
2038
|
-
.mint-
|
|
2039
|
-
padding: 0.375rem 0.625rem;
|
|
2040
|
-
font-size: 0.875rem;
|
|
2041
|
-
}
|
|
2042
|
-
.mint-concentration-input__value--md {
|
|
2043
|
-
padding: 0.5rem 0.75rem;
|
|
2044
|
-
font-size: 0.875rem;
|
|
2045
|
-
}
|
|
2046
|
-
.mint-concentration-input__value--lg {
|
|
2047
|
-
padding: 0.75rem 1rem;
|
|
2048
|
-
font-size: 1rem;
|
|
2049
|
-
}
|
|
2050
|
-
.mint-concentration-input__value--disabled {
|
|
2051
|
-
cursor: not-allowed;
|
|
2052
|
-
background-color: var(--bg-tertiary);
|
|
2053
|
-
}
|
|
2054
|
-
|
|
2055
|
-
/* Unit select */
|
|
2056
|
-
.mint-concentration-input__unit {
|
|
2057
|
-
position: relative;
|
|
2058
|
-
flex-shrink: 0;
|
|
2059
|
-
border-left: 1px solid var(--border-color);
|
|
2060
|
-
}
|
|
2061
|
-
.mint-concentration-input__unit-select {
|
|
2062
|
-
height: 100%;
|
|
2063
|
-
background-color: var(--bg-tertiary);
|
|
1991
|
+
.mint-datetime-picker__footer-btn--muted:hover {
|
|
2064
1992
|
color: var(--text-primary);
|
|
2065
|
-
border: none;
|
|
2066
|
-
outline: none;
|
|
2067
|
-
cursor: pointer;
|
|
2068
|
-
font-weight: 500;
|
|
2069
|
-
padding-right: 1.5rem;
|
|
2070
|
-
appearance: none;
|
|
2071
|
-
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
|
|
2072
|
-
background-position: right 0.375rem center;
|
|
2073
|
-
background-repeat: no-repeat;
|
|
2074
|
-
background-size: 1rem 1rem;
|
|
2075
|
-
}
|
|
2076
|
-
.mint-concentration-input__unit-select--sm {
|
|
2077
|
-
padding: 0.375rem 1.5rem 0.375rem 0.5rem;
|
|
2078
|
-
font-size: 0.75rem;
|
|
2079
|
-
min-width: 4rem;
|
|
2080
|
-
}
|
|
2081
|
-
.mint-concentration-input__unit-select--md {
|
|
2082
|
-
padding: 0.5rem 1.75rem 0.5rem 0.625rem;
|
|
2083
|
-
font-size: 0.875rem;
|
|
2084
|
-
min-width: 4.5rem;
|
|
2085
|
-
}
|
|
2086
|
-
.mint-concentration-input__unit-select--lg {
|
|
2087
|
-
padding: 0.75rem 2rem 0.75rem 0.75rem;
|
|
2088
|
-
font-size: 0.875rem;
|
|
2089
|
-
min-width: 5rem;
|
|
2090
|
-
}
|
|
2091
|
-
.mint-concentration-input__unit-select:disabled {
|
|
2092
|
-
cursor: not-allowed;
|
|
2093
|
-
opacity: 0.7;
|
|
2094
|
-
}
|
|
2095
|
-
.mint-concentration-input__unit-select:hover:not(:disabled) {
|
|
2096
|
-
background-color: var(--bg-hover);
|
|
2097
1993
|
}
|
|
2098
1994
|
|
|
2099
|
-
/*
|
|
2100
|
-
.mint-
|
|
2101
|
-
|
|
2102
|
-
color: var(--text-secondary);
|
|
1995
|
+
/* Transition classes */
|
|
1996
|
+
.mint-datetime-picker__dropdown-enter-active {
|
|
1997
|
+
transition: opacity 0.1s ease-out, transform 0.1s ease-out;
|
|
2103
1998
|
}
|
|
2104
|
-
|
|
2105
|
-
|
|
2106
|
-
.mint-concentration-input__conversion {
|
|
2107
|
-
font-size: 0.75rem;
|
|
2108
|
-
color: var(--text-muted);
|
|
2109
|
-
padding-left: 0.125rem;
|
|
1999
|
+
.mint-datetime-picker__dropdown-leave-active {
|
|
2000
|
+
transition: opacity 0.075s ease-in, transform 0.075s ease-in;
|
|
2110
2001
|
}
|
|
2111
|
-
.mint-
|
|
2112
|
-
|
|
2002
|
+
.mint-datetime-picker__dropdown-enter-from,
|
|
2003
|
+
.mint-datetime-picker__dropdown-leave-to {
|
|
2004
|
+
opacity: 0;
|
|
2005
|
+
transform: scale(0.95);
|
|
2006
|
+
}
|
|
2007
|
+
.mint-datetime-picker__dropdown-enter-to,
|
|
2008
|
+
.mint-datetime-picker__dropdown-leave-from {
|
|
2009
|
+
opacity: 1;
|
|
2010
|
+
transform: scale(1);
|
|
2113
2011
|
}
|
|
2114
2012
|
/* FormulaInput Component Styles */
|
|
2115
2013
|
.mint-formula-input {
|
|
@@ -2362,322 +2260,422 @@
|
|
|
2362
2260
|
color: var(--text-primary);
|
|
2363
2261
|
margin-left: 0.25rem;
|
|
2364
2262
|
}
|
|
2365
|
-
/*
|
|
2366
|
-
.mint-
|
|
2263
|
+
/* MoleculeInput Component Styles */
|
|
2264
|
+
.mint-molecule-input {
|
|
2367
2265
|
display: flex;
|
|
2368
2266
|
flex-direction: column;
|
|
2369
|
-
|
|
2370
|
-
}
|
|
2371
|
-
|
|
2372
|
-
/* ---------- Controls row (value input + unit chip) ---------- */
|
|
2373
|
-
.mint-unit-input__controls {
|
|
2374
|
-
display: flex;
|
|
2375
|
-
align-items: stretch;
|
|
2376
|
-
background-color: var(--bg-secondary);
|
|
2267
|
+
border-radius: var(--radius-md);
|
|
2377
2268
|
border: 1px solid var(--border-color);
|
|
2378
|
-
|
|
2379
|
-
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
2269
|
+
background-color: var(--bg-secondary);
|
|
2380
2270
|
overflow: hidden;
|
|
2271
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
2381
2272
|
}
|
|
2382
|
-
.mint-
|
|
2383
|
-
|
|
2384
|
-
|
|
2385
|
-
}
|
|
2386
|
-
.mint-unit-input__controls--lg { min-height: var(--form-height-lg);
|
|
2273
|
+
.mint-molecule-input:focus-within {
|
|
2274
|
+
border-color: transparent;
|
|
2275
|
+
box-shadow: var(--focus-ring);
|
|
2387
2276
|
}
|
|
2388
|
-
.mint-
|
|
2389
|
-
|
|
2277
|
+
.mint-molecule-input--disabled {
|
|
2278
|
+
opacity: var(--mint-disabled-opacity);
|
|
2279
|
+
pointer-events: none;
|
|
2390
2280
|
}
|
|
2391
|
-
.mint-
|
|
2392
|
-
|
|
2393
|
-
box-shadow: var(--focus-ring-soft);
|
|
2281
|
+
.mint-molecule-input--readonly {
|
|
2282
|
+
pointer-events: none;
|
|
2394
2283
|
}
|
|
2395
|
-
.mint-
|
|
2284
|
+
.mint-molecule-input--error {
|
|
2396
2285
|
border-color: var(--mint-error);
|
|
2397
2286
|
}
|
|
2398
|
-
.mint-
|
|
2399
|
-
box-shadow: var(--focus-ring-
|
|
2287
|
+
.mint-molecule-input--error:focus-within {
|
|
2288
|
+
box-shadow: var(--focus-ring-error);
|
|
2400
2289
|
}
|
|
2401
|
-
|
|
2402
|
-
|
|
2290
|
+
|
|
2291
|
+
/* Editor container */
|
|
2292
|
+
.mint-molecule-input__editor {
|
|
2293
|
+
position: relative;
|
|
2294
|
+
width: 100%;
|
|
2295
|
+
min-height: 200px;
|
|
2403
2296
|
background-color: var(--bg-secondary);
|
|
2404
2297
|
}
|
|
2405
|
-
|
|
2406
|
-
/* ---------- Value input — Fira Code, left-aligned ---------- */
|
|
2407
|
-
.mint-unit-input__value {
|
|
2408
|
-
flex: 1;
|
|
2409
|
-
min-width: 0;
|
|
2410
|
-
text-align: left;
|
|
2411
|
-
background-color: transparent;
|
|
2412
|
-
color: var(--text-primary);
|
|
2298
|
+
.mint-molecule-input__editor iframe {
|
|
2413
2299
|
border: none;
|
|
2414
|
-
|
|
2415
|
-
font-family: var(--font-mono, 'Fira Code', monospace);
|
|
2416
|
-
-webkit-appearance: textfield;
|
|
2417
|
-
-moz-appearance: textfield;
|
|
2418
|
-
appearance: textfield;
|
|
2300
|
+
display: block;
|
|
2419
2301
|
}
|
|
2420
|
-
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2302
|
+
|
|
2303
|
+
/* Skeleton loader */
|
|
2304
|
+
.mint-molecule-input__skeleton {
|
|
2305
|
+
display: flex;
|
|
2306
|
+
flex-direction: column;
|
|
2307
|
+
align-items: center;
|
|
2308
|
+
justify-content: center;
|
|
2309
|
+
gap: 1rem;
|
|
2310
|
+
height: 100%;
|
|
2311
|
+
min-height: 200px;
|
|
2312
|
+
background-color: var(--bg-tertiary);
|
|
2424
2313
|
}
|
|
2425
|
-
.mint-
|
|
2314
|
+
.mint-molecule-input__skeleton-icon {
|
|
2315
|
+
width: 3rem;
|
|
2316
|
+
height: 3rem;
|
|
2317
|
+
color: var(--text-muted);
|
|
2318
|
+
animation: mint-molecule-pulse 1.5s ease-in-out infinite;
|
|
2426
2319
|
}
|
|
2427
|
-
|
|
2428
|
-
|
|
2429
|
-
|
|
2430
|
-
|
|
2320
|
+
.mint-molecule-input__skeleton-text {
|
|
2321
|
+
font-size: 0.875rem;
|
|
2322
|
+
color: var(--text-muted);
|
|
2323
|
+
}
|
|
2324
|
+
@keyframes mint-molecule-pulse {
|
|
2325
|
+
0%, 100% {
|
|
2326
|
+
opacity: 0.4;
|
|
2431
2327
|
}
|
|
2432
|
-
|
|
2328
|
+
50% {
|
|
2329
|
+
opacity: 1;
|
|
2433
2330
|
}
|
|
2434
|
-
.mint-unit-input__value--lg { padding: 0.6875rem 1rem 0.8125rem; font-size: 1rem;
|
|
2435
2331
|
}
|
|
2436
2332
|
|
|
2437
|
-
/*
|
|
2438
|
-
.mint-
|
|
2333
|
+
/* Readonly SVG display */
|
|
2334
|
+
.mint-molecule-input__readonly {
|
|
2439
2335
|
display: flex;
|
|
2440
2336
|
align-items: center;
|
|
2441
|
-
|
|
2442
|
-
|
|
2443
|
-
|
|
2337
|
+
justify-content: center;
|
|
2338
|
+
min-height: 200px;
|
|
2339
|
+
padding: 1rem;
|
|
2340
|
+
background-color: var(--bg-tertiary);
|
|
2444
2341
|
}
|
|
2445
|
-
.mint-
|
|
2446
|
-
|
|
2447
|
-
|
|
2448
|
-
color: var(--color-primary-hover);
|
|
2449
|
-
font-size: 0.75rem;
|
|
2450
|
-
font-weight: 500;
|
|
2451
|
-
padding: 0 0.375rem;
|
|
2452
|
-
cursor: pointer;
|
|
2453
|
-
outline: none;
|
|
2454
|
-
text-transform: none;
|
|
2455
|
-
font-family: var(--font-mono, 'Fira Code', monospace);
|
|
2456
|
-
line-height: 1;
|
|
2342
|
+
.mint-molecule-input__readonly svg {
|
|
2343
|
+
max-width: 100%;
|
|
2344
|
+
max-height: 100%;
|
|
2457
2345
|
}
|
|
2458
|
-
|
|
2346
|
+
|
|
2347
|
+
/* Empty state */
|
|
2348
|
+
.mint-molecule-input__empty {
|
|
2349
|
+
display: flex;
|
|
2350
|
+
flex-direction: column;
|
|
2351
|
+
align-items: center;
|
|
2352
|
+
justify-content: center;
|
|
2353
|
+
gap: 0.5rem;
|
|
2354
|
+
min-height: 200px;
|
|
2355
|
+
padding: 1rem;
|
|
2356
|
+
color: var(--text-muted);
|
|
2459
2357
|
}
|
|
2460
|
-
.mint-
|
|
2358
|
+
.mint-molecule-input__empty-icon {
|
|
2359
|
+
width: 2.5rem;
|
|
2360
|
+
height: 2.5rem;
|
|
2461
2361
|
}
|
|
2462
|
-
.mint-
|
|
2362
|
+
.mint-molecule-input__empty-text {
|
|
2363
|
+
font-size: 0.875rem;
|
|
2463
2364
|
}
|
|
2464
|
-
|
|
2465
|
-
|
|
2365
|
+
|
|
2366
|
+
/* SMILES preview */
|
|
2367
|
+
.mint-molecule-input__smiles {
|
|
2368
|
+
padding: 0.5rem 0.75rem;
|
|
2369
|
+
font-family: 'Fira Code', monospace;
|
|
2370
|
+
font-size: 0.75rem;
|
|
2371
|
+
color: var(--text-secondary);
|
|
2372
|
+
background-color: var(--bg-tertiary);
|
|
2373
|
+
border-top: 1px solid var(--border-color);
|
|
2374
|
+
word-break: break-all;
|
|
2375
|
+
user-select: all;
|
|
2376
|
+
}
|
|
2377
|
+
.mint-molecule-input__smiles-label {
|
|
2378
|
+
font-weight: 500;
|
|
2466
2379
|
color: var(--text-muted);
|
|
2380
|
+
margin-right: 0.5rem;
|
|
2467
2381
|
}
|
|
2468
2382
|
|
|
2469
|
-
/*
|
|
2470
|
-
.mint-
|
|
2471
|
-
|
|
2383
|
+
/* Error state */
|
|
2384
|
+
.mint-molecule-input__error {
|
|
2385
|
+
padding: 0.75rem;
|
|
2386
|
+
font-size: 0.875rem;
|
|
2387
|
+
color: var(--mint-error);
|
|
2388
|
+
background-color: var(--mint-error-bg);
|
|
2389
|
+
border-top: 1px solid var(--mint-error);
|
|
2390
|
+
}
|
|
2391
|
+
.mint-molecule-input__error-icon {
|
|
2392
|
+
width: 1rem;
|
|
2393
|
+
height: 1rem;
|
|
2394
|
+
margin-right: 0.5rem;
|
|
2395
|
+
vertical-align: middle;
|
|
2396
|
+
}
|
|
2397
|
+
|
|
2398
|
+
/* Actions toolbar */
|
|
2399
|
+
.mint-molecule-input__actions {
|
|
2400
|
+
display: flex;
|
|
2401
|
+
gap: 0.25rem;
|
|
2402
|
+
padding: 0.5rem;
|
|
2403
|
+
background-color: var(--bg-tertiary);
|
|
2404
|
+
border-top: 1px solid var(--border-color);
|
|
2405
|
+
}
|
|
2406
|
+
.mint-molecule-input__action-btn {
|
|
2407
|
+
display: flex;
|
|
2408
|
+
align-items: center;
|
|
2409
|
+
justify-content: center;
|
|
2410
|
+
padding: 0.375rem;
|
|
2411
|
+
background: transparent;
|
|
2412
|
+
border: none;
|
|
2413
|
+
border-radius: var(--radius-sm);
|
|
2472
2414
|
color: var(--text-muted);
|
|
2473
|
-
|
|
2474
|
-
|
|
2415
|
+
cursor: pointer;
|
|
2416
|
+
transition: color 0.15s ease, background-color 0.15s ease;
|
|
2475
2417
|
}
|
|
2476
|
-
.mint-
|
|
2477
|
-
|
|
2478
|
-
|
|
2479
|
-
font-style: normal;
|
|
2418
|
+
.mint-molecule-input__action-btn:hover:not(:disabled) {
|
|
2419
|
+
color: var(--text-primary);
|
|
2420
|
+
background-color: var(--bg-hover);
|
|
2480
2421
|
}
|
|
2481
|
-
|
|
2482
|
-
|
|
2483
|
-
|
|
2422
|
+
.mint-molecule-input__action-btn:disabled {
|
|
2423
|
+
opacity: var(--mint-disabled-opacity);
|
|
2424
|
+
cursor: not-allowed;
|
|
2484
2425
|
}
|
|
2485
|
-
.mint-
|
|
2486
|
-
|
|
2426
|
+
.mint-molecule-input__action-btn svg {
|
|
2427
|
+
width: 1rem;
|
|
2428
|
+
height: 1rem;
|
|
2487
2429
|
}
|
|
2488
|
-
|
|
2489
|
-
|
|
2430
|
+
/* ConcentrationInput Component Styles */
|
|
2431
|
+
.mint-concentration-input {
|
|
2432
|
+
display: flex;
|
|
2433
|
+
flex-direction: column;
|
|
2434
|
+
gap: 0.25rem;
|
|
2435
|
+
}
|
|
2436
|
+
.mint-concentration-input__controls {
|
|
2437
|
+
display: flex;
|
|
2490
2438
|
border-radius: var(--radius-md);
|
|
2491
2439
|
border: 1px solid var(--border-color);
|
|
2492
|
-
|
|
2493
|
-
|
|
2440
|
+
overflow: hidden;
|
|
2441
|
+
box-sizing: border-box;
|
|
2494
2442
|
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
2495
|
-
cursor: pointer;
|
|
2496
|
-
padding-left: 2.5rem;
|
|
2497
|
-
padding-right: 2.5rem;
|
|
2498
2443
|
}
|
|
2499
|
-
.mint-
|
|
2500
|
-
|
|
2501
|
-
border-color: transparent;
|
|
2502
|
-
box-shadow: var(--focus-ring);
|
|
2444
|
+
.mint-concentration-input__controls--sm {
|
|
2445
|
+
min-height: var(--form-height-sm);
|
|
2503
2446
|
}
|
|
2504
|
-
.mint-
|
|
2505
|
-
|
|
2506
|
-
padding-bottom: 0.375rem;
|
|
2507
|
-
font-size: 0.875rem;
|
|
2447
|
+
.mint-concentration-input__controls--md {
|
|
2448
|
+
min-height: var(--form-height-md);
|
|
2508
2449
|
}
|
|
2509
|
-
.mint-
|
|
2510
|
-
|
|
2511
|
-
padding-bottom: 0.5rem;
|
|
2512
|
-
font-size: 0.875rem;
|
|
2450
|
+
.mint-concentration-input__controls--lg {
|
|
2451
|
+
min-height: var(--form-height-lg);
|
|
2513
2452
|
}
|
|
2514
|
-
.mint-
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
|
-
font-size: 1rem;
|
|
2453
|
+
.mint-concentration-input__controls:focus-within {
|
|
2454
|
+
border-color: transparent;
|
|
2455
|
+
box-shadow: var(--focus-ring);
|
|
2518
2456
|
}
|
|
2519
|
-
.mint-
|
|
2457
|
+
.mint-concentration-input--error .mint-concentration-input__controls {
|
|
2520
2458
|
border-color: var(--mint-error);
|
|
2521
2459
|
}
|
|
2522
|
-
.mint-
|
|
2460
|
+
.mint-concentration-input--error .mint-concentration-input__controls:focus-within {
|
|
2523
2461
|
box-shadow: var(--focus-ring-error);
|
|
2524
2462
|
}
|
|
2525
|
-
.mint-
|
|
2463
|
+
.mint-concentration-input--disabled .mint-concentration-input__controls {
|
|
2526
2464
|
opacity: var(--mint-disabled-opacity);
|
|
2527
|
-
cursor: not-allowed;
|
|
2528
|
-
background-color: var(--bg-tertiary);
|
|
2529
2465
|
}
|
|
2530
|
-
|
|
2531
|
-
|
|
2532
|
-
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2466
|
+
|
|
2467
|
+
/* Value input */
|
|
2468
|
+
.mint-concentration-input__value {
|
|
2469
|
+
flex: 1;
|
|
2470
|
+
min-width: 0;
|
|
2471
|
+
background-color: var(--bg-secondary);
|
|
2472
|
+
color: var(--text-primary);
|
|
2473
|
+
border: none;
|
|
2474
|
+
outline: none;
|
|
2475
|
+
line-height: 1.25;
|
|
2476
|
+
-webkit-appearance: textfield;
|
|
2477
|
+
-moz-appearance: textfield;
|
|
2478
|
+
appearance: textfield;
|
|
2539
2479
|
}
|
|
2540
|
-
.mint-
|
|
2541
|
-
|
|
2542
|
-
|
|
2480
|
+
.mint-concentration-input__value::-webkit-outer-spin-button,
|
|
2481
|
+
.mint-concentration-input__value::-webkit-inner-spin-button {
|
|
2482
|
+
-webkit-appearance: none;
|
|
2483
|
+
margin: 0;
|
|
2484
|
+
}
|
|
2485
|
+
.mint-concentration-input__value::placeholder {
|
|
2543
2486
|
color: var(--text-muted);
|
|
2544
2487
|
}
|
|
2545
|
-
.mint-
|
|
2546
|
-
|
|
2547
|
-
|
|
2548
|
-
bottom: 0;
|
|
2549
|
-
right: 0;
|
|
2550
|
-
display: flex;
|
|
2551
|
-
align-items: center;
|
|
2552
|
-
padding-right: 0.75rem;
|
|
2553
|
-
pointer-events: none;
|
|
2488
|
+
.mint-concentration-input__value--sm {
|
|
2489
|
+
padding: 0.375rem 0.625rem;
|
|
2490
|
+
font-size: 0.875rem;
|
|
2554
2491
|
}
|
|
2555
|
-
.mint-
|
|
2556
|
-
|
|
2557
|
-
|
|
2558
|
-
color: var(--text-muted);
|
|
2492
|
+
.mint-concentration-input__value--md {
|
|
2493
|
+
padding: 0.5rem 0.75rem;
|
|
2494
|
+
font-size: 0.875rem;
|
|
2559
2495
|
}
|
|
2560
|
-
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
position: absolute;
|
|
2564
|
-
z-index: 50;
|
|
2565
|
-
margin-top: 0.25rem;
|
|
2566
|
-
width: 20rem;
|
|
2567
|
-
padding: 0.75rem;
|
|
2568
|
-
border-radius: var(--radius-md);
|
|
2569
|
-
border: 1px solid var(--border-color);
|
|
2570
|
-
background-color: var(--bg-primary);
|
|
2571
|
-
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
|
|
2496
|
+
.mint-concentration-input__value--lg {
|
|
2497
|
+
padding: 0.75rem 1rem;
|
|
2498
|
+
font-size: 1rem;
|
|
2572
2499
|
}
|
|
2573
|
-
|
|
2574
|
-
|
|
2575
|
-
|
|
2576
|
-
margin-bottom: 0;
|
|
2500
|
+
.mint-concentration-input__value--disabled {
|
|
2501
|
+
cursor: not-allowed;
|
|
2502
|
+
background-color: var(--bg-tertiary);
|
|
2577
2503
|
}
|
|
2578
2504
|
|
|
2579
|
-
/*
|
|
2580
|
-
.mint-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2505
|
+
/* Unit select */
|
|
2506
|
+
.mint-concentration-input__unit {
|
|
2507
|
+
position: relative;
|
|
2508
|
+
flex-shrink: 0;
|
|
2509
|
+
border-left: 1px solid var(--border-color);
|
|
2510
|
+
}
|
|
2511
|
+
.mint-concentration-input__unit-select {
|
|
2512
|
+
height: 100%;
|
|
2513
|
+
background-color: var(--bg-tertiary);
|
|
2514
|
+
color: var(--text-primary);
|
|
2515
|
+
border: none;
|
|
2516
|
+
outline: none;
|
|
2517
|
+
cursor: pointer;
|
|
2518
|
+
font-weight: 500;
|
|
2519
|
+
padding-right: 1.5rem;
|
|
2520
|
+
appearance: none;
|
|
2521
|
+
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
|
|
2522
|
+
background-position: right 0.375rem center;
|
|
2523
|
+
background-repeat: no-repeat;
|
|
2524
|
+
background-size: 1rem 1rem;
|
|
2525
|
+
}
|
|
2526
|
+
.mint-concentration-input__unit-select--sm {
|
|
2527
|
+
padding: 0.375rem 1.5rem 0.375rem 0.5rem;
|
|
2528
|
+
font-size: 0.75rem;
|
|
2529
|
+
min-width: 4rem;
|
|
2530
|
+
}
|
|
2531
|
+
.mint-concentration-input__unit-select--md {
|
|
2532
|
+
padding: 0.5rem 1.75rem 0.5rem 0.625rem;
|
|
2533
|
+
font-size: 0.875rem;
|
|
2534
|
+
min-width: 4.5rem;
|
|
2535
|
+
}
|
|
2536
|
+
.mint-concentration-input__unit-select--lg {
|
|
2537
|
+
padding: 0.75rem 2rem 0.75rem 0.75rem;
|
|
2538
|
+
font-size: 0.875rem;
|
|
2539
|
+
min-width: 5rem;
|
|
2540
|
+
}
|
|
2541
|
+
.mint-concentration-input__unit-select:disabled {
|
|
2542
|
+
cursor: not-allowed;
|
|
2543
|
+
opacity: 0.7;
|
|
2544
|
+
}
|
|
2545
|
+
.mint-concentration-input__unit-select:hover:not(:disabled) {
|
|
2546
|
+
background-color: var(--bg-hover);
|
|
2584
2547
|
}
|
|
2585
2548
|
|
|
2586
|
-
/*
|
|
2587
|
-
.mint-
|
|
2588
|
-
|
|
2549
|
+
/* Unit option group */
|
|
2550
|
+
.mint-concentration-input__unit-group {
|
|
2551
|
+
font-weight: 600;
|
|
2552
|
+
color: var(--text-secondary);
|
|
2589
2553
|
}
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2554
|
+
|
|
2555
|
+
/* Conversion hint */
|
|
2556
|
+
.mint-concentration-input__conversion {
|
|
2557
|
+
font-size: 0.75rem;
|
|
2593
2558
|
color: var(--text-muted);
|
|
2594
|
-
|
|
2595
|
-
letter-spacing: 0.05em;
|
|
2596
|
-
margin-bottom: 0.375rem;
|
|
2559
|
+
padding-left: 0.125rem;
|
|
2597
2560
|
}
|
|
2598
|
-
.mint-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
2561
|
+
.mint-concentration-input__conversion::before {
|
|
2562
|
+
content: '≈ ';
|
|
2563
|
+
}
|
|
2564
|
+
/* UnitInput Component Styles */
|
|
2565
|
+
.mint-unit-input {
|
|
2566
|
+
display: flex;
|
|
2567
|
+
flex-direction: column;
|
|
2568
|
+
gap: 0.375rem;
|
|
2604
2569
|
}
|
|
2605
2570
|
|
|
2606
|
-
/*
|
|
2607
|
-
.mint-
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
|
|
2571
|
+
/* ---------- Controls row (value input + unit chip) ---------- */
|
|
2572
|
+
.mint-unit-input__controls {
|
|
2573
|
+
display: flex;
|
|
2574
|
+
align-items: stretch;
|
|
2575
|
+
background-color: var(--bg-secondary);
|
|
2611
2576
|
border: 1px solid var(--border-color);
|
|
2577
|
+
border-radius: 0.5rem;
|
|
2578
|
+
transition: border-color 0.15s ease, box-shadow 0.15s ease;
|
|
2579
|
+
overflow: hidden;
|
|
2580
|
+
}
|
|
2581
|
+
.mint-unit-input__controls--sm { min-height: var(--form-height-sm);
|
|
2582
|
+
}
|
|
2583
|
+
.mint-unit-input__controls--md { min-height: var(--form-height-md);
|
|
2584
|
+
}
|
|
2585
|
+
.mint-unit-input__controls--lg { min-height: var(--form-height-lg);
|
|
2586
|
+
}
|
|
2587
|
+
.mint-unit-input__controls:hover:not(:has(:disabled)) {
|
|
2588
|
+
border-color: var(--text-muted);
|
|
2589
|
+
}
|
|
2590
|
+
.mint-unit-input__controls:focus-within {
|
|
2591
|
+
border-color: var(--color-primary);
|
|
2592
|
+
box-shadow: var(--focus-ring-soft);
|
|
2593
|
+
}
|
|
2594
|
+
.mint-unit-input--error .mint-unit-input__controls {
|
|
2595
|
+
border-color: var(--mint-error);
|
|
2596
|
+
}
|
|
2597
|
+
.mint-unit-input--error .mint-unit-input__controls:focus-within {
|
|
2598
|
+
box-shadow: var(--focus-ring-soft-error);
|
|
2599
|
+
}
|
|
2600
|
+
.mint-unit-input--disabled .mint-unit-input__controls {
|
|
2601
|
+
opacity: var(--mint-disabled-opacity);
|
|
2612
2602
|
background-color: var(--bg-secondary);
|
|
2603
|
+
}
|
|
2604
|
+
|
|
2605
|
+
/* ---------- Value input — Fira Code, left-aligned ---------- */
|
|
2606
|
+
.mint-unit-input__value {
|
|
2607
|
+
flex: 1;
|
|
2608
|
+
min-width: 0;
|
|
2609
|
+
text-align: left;
|
|
2610
|
+
background-color: transparent;
|
|
2613
2611
|
color: var(--text-primary);
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2612
|
+
border: none;
|
|
2613
|
+
outline: none;
|
|
2614
|
+
font-family: var(--font-mono, 'Fira Code', monospace);
|
|
2615
|
+
-webkit-appearance: textfield;
|
|
2616
|
+
-moz-appearance: textfield;
|
|
2617
|
+
appearance: textfield;
|
|
2617
2618
|
}
|
|
2618
|
-
.mint-
|
|
2619
|
-
|
|
2620
|
-
|
|
2619
|
+
.mint-unit-input__value::-webkit-outer-spin-button,
|
|
2620
|
+
.mint-unit-input__value::-webkit-inner-spin-button {
|
|
2621
|
+
-webkit-appearance: none;
|
|
2622
|
+
margin: 0;
|
|
2621
2623
|
}
|
|
2622
|
-
.mint-
|
|
2623
|
-
background-color: var(--color-primary);
|
|
2624
|
-
border-color: var(--color-primary);
|
|
2625
|
-
color: white;
|
|
2624
|
+
.mint-unit-input__value:disabled { cursor: not-allowed;
|
|
2626
2625
|
}
|
|
2627
|
-
|
|
2628
|
-
|
|
2626
|
+
|
|
2627
|
+
/* Horizontal padding matches BaseInput canonical scale (10/12/16) so FormField's
|
|
2628
|
+
12px label indent aligns with the value text across all input types. */
|
|
2629
|
+
.mint-unit-input__value--sm { padding: 0.375rem 0.625rem; font-size: 0.875rem;
|
|
2629
2630
|
}
|
|
2630
|
-
.mint-
|
|
2631
|
-
|
|
2632
|
-
|
|
2631
|
+
.mint-unit-input__value--md { padding: 0.5rem 0.75rem; font-size: 0.875rem;
|
|
2632
|
+
}
|
|
2633
|
+
.mint-unit-input__value--lg { padding: 0.75rem 1rem; font-size: 1rem;
|
|
2633
2634
|
}
|
|
2634
2635
|
|
|
2635
|
-
/*
|
|
2636
|
-
.mint-
|
|
2636
|
+
/* ---------- Unit chip ---------- */
|
|
2637
|
+
.mint-unit-input__unit {
|
|
2637
2638
|
display: flex;
|
|
2638
2639
|
align-items: center;
|
|
2639
|
-
|
|
2640
|
-
|
|
2641
|
-
|
|
2642
|
-
border-top: 1px solid var(--border-color);
|
|
2640
|
+
padding: 0 0.25rem;
|
|
2641
|
+
background-color: var(--color-primary-soft);
|
|
2642
|
+
border-left: 1px solid var(--border-color);
|
|
2643
2643
|
}
|
|
2644
|
-
.mint-
|
|
2645
|
-
font-size: 0.75rem;
|
|
2644
|
+
.mint-unit-input__unit-select {
|
|
2646
2645
|
background: transparent;
|
|
2647
2646
|
border: none;
|
|
2647
|
+
color: var(--color-primary-hover);
|
|
2648
|
+
font-size: 0.75rem;
|
|
2649
|
+
font-weight: 500;
|
|
2650
|
+
padding: 0 0.375rem;
|
|
2648
2651
|
cursor: pointer;
|
|
2649
|
-
|
|
2650
|
-
|
|
2652
|
+
outline: none;
|
|
2653
|
+
text-transform: none;
|
|
2654
|
+
font-family: var(--font-mono, 'Fira Code', monospace);
|
|
2655
|
+
line-height: 1;
|
|
2651
2656
|
}
|
|
2652
|
-
.mint-
|
|
2653
|
-
opacity: 0.8;
|
|
2657
|
+
.mint-unit-input__unit-select--sm { font-size: 0.6875rem;
|
|
2654
2658
|
}
|
|
2655
|
-
.mint-
|
|
2656
|
-
margin-left: 0.75rem;
|
|
2659
|
+
.mint-unit-input__unit-select--md { font-size: 0.75rem;
|
|
2657
2660
|
}
|
|
2658
|
-
.mint-
|
|
2659
|
-
color: var(--text-muted);
|
|
2661
|
+
.mint-unit-input__unit-select--lg { font-size: 0.8125rem;
|
|
2660
2662
|
}
|
|
2661
|
-
.mint-
|
|
2662
|
-
|
|
2663
|
+
.mint-unit-input__unit-select:disabled {
|
|
2664
|
+
cursor: not-allowed;
|
|
2665
|
+
color: var(--text-muted);
|
|
2663
2666
|
}
|
|
2664
2667
|
|
|
2665
|
-
/*
|
|
2666
|
-
.mint-
|
|
2667
|
-
|
|
2668
|
-
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
}
|
|
2672
|
-
.mint-datetime-picker__dropdown-enter-from,
|
|
2673
|
-
.mint-datetime-picker__dropdown-leave-to {
|
|
2674
|
-
opacity: 0;
|
|
2675
|
-
transform: scale(0.95);
|
|
2668
|
+
/* ---------- Conversion hint ---------- */
|
|
2669
|
+
.mint-unit-input__conversion-hint {
|
|
2670
|
+
font-size: 0.75rem;
|
|
2671
|
+
color: var(--text-muted);
|
|
2672
|
+
font-style: italic;
|
|
2673
|
+
padding: 0 0.75rem;
|
|
2676
2674
|
}
|
|
2677
|
-
.mint-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
|
|
2675
|
+
.mint-unit-input__unit-group {
|
|
2676
|
+
/* optgroup styling — browsers vary here; minimal override */
|
|
2677
|
+
font-weight: 600;
|
|
2678
|
+
font-style: normal;
|
|
2681
2679
|
}
|
|
2682
2680
|
/* BaseButton Component Styles */
|
|
2683
2681
|
.mint-button {
|
|
@@ -2799,23 +2797,18 @@
|
|
|
2799
2797
|
}
|
|
2800
2798
|
|
|
2801
2799
|
/* Sizes */
|
|
2802
|
-
|
|
2803
|
-
/* Optical centering: Fira Sans' cap-letter midpoint sits above the em-box center.
|
|
2804
|
-
Old rule (pre-0.16) compensated with a 2px upward shift; user testing showed
|
|
2805
|
-
that read as "too high" across sizes. New rule: 1px upward shift universally.
|
|
2806
|
-
See CLAUDE.md § Optical Centering. */
|
|
2807
2800
|
.mint-button--sm {
|
|
2808
|
-
padding: 0.
|
|
2801
|
+
padding: 0.375rem 0.75rem;
|
|
2809
2802
|
font-size: 0.875rem;
|
|
2810
2803
|
min-height: var(--form-height-sm);
|
|
2811
2804
|
}
|
|
2812
2805
|
.mint-button--md {
|
|
2813
|
-
padding: 0.
|
|
2806
|
+
padding: 0.5rem 1rem;
|
|
2814
2807
|
font-size: 0.875rem;
|
|
2815
2808
|
min-height: var(--form-height-md);
|
|
2816
2809
|
}
|
|
2817
2810
|
.mint-button--lg {
|
|
2818
|
-
padding: 0.
|
|
2811
|
+
padding: 0.75rem 1.5rem;
|
|
2819
2812
|
font-size: 1rem;
|
|
2820
2813
|
min-height: var(--form-height-lg);
|
|
2821
2814
|
}
|
|
@@ -2955,10 +2948,8 @@ to {
|
|
|
2955
2948
|
background-color: var(--bg-tertiary);
|
|
2956
2949
|
border-radius: var(--radius-md);
|
|
2957
2950
|
}
|
|
2958
|
-
|
|
2959
|
-
/* 1px optical padding shift (0.16+). See CLAUDE.md § Optical Centering. */
|
|
2960
2951
|
.mint-tab {
|
|
2961
|
-
padding: 0.
|
|
2952
|
+
padding: 0.5rem 1rem;
|
|
2962
2953
|
font-size: 0.875rem;
|
|
2963
2954
|
font-weight: 500;
|
|
2964
2955
|
transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
|
|
@@ -3471,22 +3462,19 @@ to {
|
|
|
3471
3462
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
|
3472
3463
|
}
|
|
3473
3464
|
|
|
3474
|
-
/* Size variants - simple
|
|
3475
|
-
See CLAUDE.md § Optical Centering. */
|
|
3465
|
+
/* Size variants - simple */
|
|
3476
3466
|
.mint-segmented-control__option--simple.mint-segmented-control__option--sm {
|
|
3477
|
-
padding: 0.
|
|
3467
|
+
padding: 0.375rem 0.75rem;
|
|
3478
3468
|
font-size: 0.75rem;
|
|
3479
3469
|
min-height: var(--form-height-sm);
|
|
3480
3470
|
}
|
|
3481
3471
|
.mint-segmented-control__option--simple.mint-segmented-control__option--md {
|
|
3482
|
-
padding: 0.
|
|
3472
|
+
padding: 0.5rem 1rem;
|
|
3483
3473
|
font-size: 0.875rem;
|
|
3484
3474
|
min-height: var(--form-height-md);
|
|
3485
3475
|
}
|
|
3486
3476
|
.mint-segmented-control__option--simple.mint-segmented-control__option--lg {
|
|
3487
|
-
|
|
3488
|
-
em-box at 1rem font + 1.25 line-height, so the 1px shift lands here. */
|
|
3489
|
-
padding: 0.5625rem 1.25rem 0.6875rem;
|
|
3477
|
+
padding: 0.625rem 1.25rem;
|
|
3490
3478
|
font-size: 1rem;
|
|
3491
3479
|
min-height: var(--form-height-lg);
|
|
3492
3480
|
}
|
|
@@ -3822,19 +3810,19 @@ html.dark .mint-pill__remove:hover {
|
|
|
3822
3810
|
background-color: var(--bg-tertiary);
|
|
3823
3811
|
}
|
|
3824
3812
|
|
|
3825
|
-
/* Trigger sizes
|
|
3813
|
+
/* Trigger sizes */
|
|
3826
3814
|
.mint-dropdown-button__trigger--sm {
|
|
3827
|
-
padding: 0.
|
|
3815
|
+
padding: 0.375rem 0.75rem;
|
|
3828
3816
|
font-size: 0.875rem;
|
|
3829
3817
|
min-height: var(--form-height-sm);
|
|
3830
3818
|
}
|
|
3831
3819
|
.mint-dropdown-button__trigger--md {
|
|
3832
|
-
padding: 0.
|
|
3820
|
+
padding: 0.5rem 1rem;
|
|
3833
3821
|
font-size: 0.875rem;
|
|
3834
3822
|
min-height: var(--form-height-md);
|
|
3835
3823
|
}
|
|
3836
3824
|
.mint-dropdown-button__trigger--lg {
|
|
3837
|
-
padding: 0.
|
|
3825
|
+
padding: 0.75rem 1.5rem;
|
|
3838
3826
|
font-size: 1rem;
|
|
3839
3827
|
min-height: var(--form-height-lg);
|
|
3840
3828
|
}
|
|
@@ -5349,6 +5337,170 @@ html.dark .mint-settings-modal__option-btn--active {
|
|
|
5349
5337
|
margin-bottom: 0 !important;
|
|
5350
5338
|
padding: 0 !important;
|
|
5351
5339
|
}
|
|
5340
|
+
|
|
5341
|
+
/* ─────────────────────────────────────────────────────────────────────
|
|
5342
|
+
* Schema-driven content grid (used by both layouts)
|
|
5343
|
+
* Cols come from `--mint-settings-cols` set inline by the component;
|
|
5344
|
+
* keeps the data binding minimal and the styling in one place.
|
|
5345
|
+
* ───────────────────────────────────────────────────────────────────── */
|
|
5346
|
+
.mint-settings-modal__group-grid {
|
|
5347
|
+
display: grid;
|
|
5348
|
+
gap: 1rem;
|
|
5349
|
+
grid-template-columns: repeat(var(--mint-settings-cols, 1), minmax(0, 1fr));
|
|
5350
|
+
}
|
|
5351
|
+
|
|
5352
|
+
/* ─────────────────────────────────────────────────────────────────────
|
|
5353
|
+
* Vertical layout — sidebar rail + content pane (opt-in via layout="vertical")
|
|
5354
|
+
* Designed for complex plugins with 5+ setting groups. Existing horizontal
|
|
5355
|
+
* classes above are deliberately untouched.
|
|
5356
|
+
* ───────────────────────────────────────────────────────────────────── */
|
|
5357
|
+
.mint-settings-modal--vertical {
|
|
5358
|
+
flex-direction: row;
|
|
5359
|
+
gap: 1.25rem;
|
|
5360
|
+
align-items: stretch;
|
|
5361
|
+
min-height: 22rem;
|
|
5362
|
+
}
|
|
5363
|
+
.mint-settings-modal__rail {
|
|
5364
|
+
flex-shrink: 0;
|
|
5365
|
+
width: 12.5rem;
|
|
5366
|
+
display: flex;
|
|
5367
|
+
flex-direction: column;
|
|
5368
|
+
gap: 0.125rem;
|
|
5369
|
+
padding-right: 0.75rem;
|
|
5370
|
+
border-right: 1px solid var(--border-light);
|
|
5371
|
+
}
|
|
5372
|
+
.mint-settings-modal__rail-item {
|
|
5373
|
+
display: flex;
|
|
5374
|
+
align-items: flex-start;
|
|
5375
|
+
gap: 0.625rem;
|
|
5376
|
+
width: 100%;
|
|
5377
|
+
padding: 0.5rem 0.75rem;
|
|
5378
|
+
font-size: 0.8125rem;
|
|
5379
|
+
font-weight: 500;
|
|
5380
|
+
color: var(--text-secondary);
|
|
5381
|
+
background: none;
|
|
5382
|
+
border: none;
|
|
5383
|
+
border-radius: var(--radius-md);
|
|
5384
|
+
cursor: pointer;
|
|
5385
|
+
text-align: left;
|
|
5386
|
+
transition:
|
|
5387
|
+
color var(--mint-transition),
|
|
5388
|
+
background-color var(--mint-transition);
|
|
5389
|
+
}
|
|
5390
|
+
.mint-settings-modal__rail-item:hover {
|
|
5391
|
+
background-color: var(--bg-hover);
|
|
5392
|
+
color: var(--text-primary);
|
|
5393
|
+
}
|
|
5394
|
+
.mint-settings-modal__rail-item:focus-visible {
|
|
5395
|
+
outline: none;
|
|
5396
|
+
box-shadow: var(--focus-ring);
|
|
5397
|
+
}
|
|
5398
|
+
.mint-settings-modal__rail-item--active {
|
|
5399
|
+
color: var(--color-primary);
|
|
5400
|
+
background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
|
|
5401
|
+
}
|
|
5402
|
+
html.dark .mint-settings-modal__rail-item--active {
|
|
5403
|
+
background-color: color-mix(in srgb, var(--color-primary) 18%, transparent);
|
|
5404
|
+
}
|
|
5405
|
+
|
|
5406
|
+
/* Reserved icon column keeps labels aligned whether or not icons are present */
|
|
5407
|
+
.mint-settings-modal__rail-item-icon {
|
|
5408
|
+
flex-shrink: 0;
|
|
5409
|
+
width: 1rem;
|
|
5410
|
+
height: 1rem;
|
|
5411
|
+
display: inline-flex;
|
|
5412
|
+
align-items: center;
|
|
5413
|
+
justify-content: center;
|
|
5414
|
+
margin-top: 0.0625rem;
|
|
5415
|
+
color: currentColor;
|
|
5416
|
+
}
|
|
5417
|
+
.mint-settings-modal__rail-item-icon svg {
|
|
5418
|
+
width: 100%;
|
|
5419
|
+
height: 100%;
|
|
5420
|
+
display: block;
|
|
5421
|
+
}
|
|
5422
|
+
.mint-settings-modal__rail-item-text {
|
|
5423
|
+
display: flex;
|
|
5424
|
+
flex-direction: column;
|
|
5425
|
+
gap: 0.125rem;
|
|
5426
|
+
min-width: 0;
|
|
5427
|
+
flex: 1;
|
|
5428
|
+
}
|
|
5429
|
+
.mint-settings-modal__rail-item-label {
|
|
5430
|
+
line-height: 1.3;
|
|
5431
|
+
}
|
|
5432
|
+
.mint-settings-modal__rail-item-description {
|
|
5433
|
+
font-size: 0.6875rem;
|
|
5434
|
+
font-weight: 400;
|
|
5435
|
+
color: var(--text-muted);
|
|
5436
|
+
line-height: 1.35;
|
|
5437
|
+
}
|
|
5438
|
+
.mint-settings-modal__rail-item--active .mint-settings-modal__rail-item-description {
|
|
5439
|
+
color: color-mix(in srgb, var(--color-primary) 65%, var(--text-secondary));
|
|
5440
|
+
}
|
|
5441
|
+
.mint-settings-modal__pane {
|
|
5442
|
+
flex: 1;
|
|
5443
|
+
min-width: 0;
|
|
5444
|
+
display: flex;
|
|
5445
|
+
flex-direction: column;
|
|
5446
|
+
}
|
|
5447
|
+
.mint-settings-modal__pane-header {
|
|
5448
|
+
margin-bottom: 1rem;
|
|
5449
|
+
padding-bottom: 0.75rem;
|
|
5450
|
+
border-bottom: 1px solid var(--border-light);
|
|
5451
|
+
}
|
|
5452
|
+
.mint-settings-modal__pane-title {
|
|
5453
|
+
font-size: 0.875rem;
|
|
5454
|
+
font-weight: 600;
|
|
5455
|
+
color: var(--text-primary);
|
|
5456
|
+
letter-spacing: -0.005em;
|
|
5457
|
+
margin: 0 !important;
|
|
5458
|
+
padding: 0 !important;
|
|
5459
|
+
line-height: 1.3;
|
|
5460
|
+
}
|
|
5461
|
+
.mint-settings-modal__pane-subtitle {
|
|
5462
|
+
font-size: 0.75rem;
|
|
5463
|
+
color: var(--text-secondary);
|
|
5464
|
+
line-height: 1.45;
|
|
5465
|
+
margin: 0.25rem 0 0 !important;
|
|
5466
|
+
padding: 0 !important;
|
|
5467
|
+
}
|
|
5468
|
+
.mint-settings-modal__pane-body {
|
|
5469
|
+
flex: 1;
|
|
5470
|
+
min-height: 0;
|
|
5471
|
+
/* Trailing breathing room so the last field doesn't hug the modal border */
|
|
5472
|
+
padding-bottom: 0.25rem;
|
|
5473
|
+
}
|
|
5474
|
+
|
|
5475
|
+
/* Mobile — collapse the rail into a horizontal scroll-strip so the modal stays usable.
|
|
5476
|
+
* Touch targets stay ≥40px tall via 0.5rem vertical padding + 1rem text line-height. */
|
|
5477
|
+
@media (max-width: 640px) {
|
|
5478
|
+
.mint-settings-modal--vertical {
|
|
5479
|
+
flex-direction: column;
|
|
5480
|
+
gap: 0.875rem;
|
|
5481
|
+
min-height: 0;
|
|
5482
|
+
}
|
|
5483
|
+
.mint-settings-modal__rail {
|
|
5484
|
+
width: 100%;
|
|
5485
|
+
flex-direction: row;
|
|
5486
|
+
overflow-x: auto;
|
|
5487
|
+
padding: 0 0 0.625rem;
|
|
5488
|
+
border-right: none;
|
|
5489
|
+
border-bottom: 1px solid var(--border-light);
|
|
5490
|
+
gap: 0.25rem;
|
|
5491
|
+
scrollbar-width: thin;
|
|
5492
|
+
}
|
|
5493
|
+
.mint-settings-modal__rail-item {
|
|
5494
|
+
flex-shrink: 0;
|
|
5495
|
+
width: auto;
|
|
5496
|
+
padding: 0.5rem 0.75rem;
|
|
5497
|
+
}
|
|
5498
|
+
|
|
5499
|
+
/* Two-line description hides on mobile so the rail strip stays compact */
|
|
5500
|
+
.mint-settings-modal__rail-item-description {
|
|
5501
|
+
display: none;
|
|
5502
|
+
}
|
|
5503
|
+
}
|
|
5352
5504
|
/* ConfirmDialog — aligned with refresh design.
|
|
5353
5505
|
- Title + optional subtitle live in BaseModal's header (top of modal)
|
|
5354
5506
|
- Body is focused on the message (no forced icon/flex-row layout)
|
|
@@ -6729,8 +6881,7 @@ to { transform: rotate(360deg);
|
|
|
6729
6881
|
display: inline-flex;
|
|
6730
6882
|
align-items: center;
|
|
6731
6883
|
border: 0;
|
|
6732
|
-
|
|
6733
|
-
padding: 0.3125rem 0.875rem 0.4375rem;
|
|
6884
|
+
padding: 0.375rem 0.875rem;
|
|
6734
6885
|
border-radius: 9999px;
|
|
6735
6886
|
font-size: 0.8125rem;
|
|
6736
6887
|
font-weight: 500;
|
|
@@ -7087,6 +7238,48 @@ to { transform: rotate(360deg);
|
|
|
7087
7238
|
width: 0.8125rem;
|
|
7088
7239
|
height: 0.8125rem;
|
|
7089
7240
|
}
|
|
7241
|
+
/* PluginIcon — BEM. Renders a plugin's icon inside a sized chip with two
|
|
7242
|
+
visual variants. Tintable via `--mint-plugin-icon-tone` custom property. */
|
|
7243
|
+
.mint-plugin-icon {
|
|
7244
|
+
display: inline-flex;
|
|
7245
|
+
align-items: center;
|
|
7246
|
+
justify-content: center;
|
|
7247
|
+
flex-shrink: 0;
|
|
7248
|
+
border-radius: var(--radius-md, 0.5rem);
|
|
7249
|
+
overflow: hidden;
|
|
7250
|
+
}
|
|
7251
|
+
|
|
7252
|
+
/* Sizes */
|
|
7253
|
+
.mint-plugin-icon--sm { width: 1.5rem; height: 1.5rem;
|
|
7254
|
+
}
|
|
7255
|
+
.mint-plugin-icon--md { width: 2rem; height: 2rem;
|
|
7256
|
+
}
|
|
7257
|
+
.mint-plugin-icon--lg { width: 3rem; height: 3rem; border-radius: 0.75rem;
|
|
7258
|
+
}
|
|
7259
|
+
|
|
7260
|
+
/* Variants — `--mint-plugin-icon-tone` falls back to --color-primary */
|
|
7261
|
+
.mint-plugin-icon--solid {
|
|
7262
|
+
background-color: var(--mint-plugin-icon-tone, var(--color-primary));
|
|
7263
|
+
color: white;
|
|
7264
|
+
}
|
|
7265
|
+
.mint-plugin-icon--tinted {
|
|
7266
|
+
background-color: color-mix(in srgb, var(--mint-plugin-icon-tone, var(--color-primary)) 12%, transparent);
|
|
7267
|
+
color: var(--mint-plugin-icon-tone, var(--color-primary));
|
|
7268
|
+
}
|
|
7269
|
+
|
|
7270
|
+
/* Inner svg/img — sized to ~62% of chip */
|
|
7271
|
+
.mint-plugin-icon--sm .mint-plugin-icon__svg,
|
|
7272
|
+
.mint-plugin-icon--sm .mint-plugin-icon__img { width: 0.9375rem; height: 0.9375rem;
|
|
7273
|
+
}
|
|
7274
|
+
.mint-plugin-icon--md .mint-plugin-icon__svg,
|
|
7275
|
+
.mint-plugin-icon--md .mint-plugin-icon__img { width: 1.125rem; height: 1.125rem;
|
|
7276
|
+
}
|
|
7277
|
+
.mint-plugin-icon--lg .mint-plugin-icon__svg,
|
|
7278
|
+
.mint-plugin-icon--lg .mint-plugin-icon__img { width: 1.5rem; height: 1.5rem;
|
|
7279
|
+
}
|
|
7280
|
+
.mint-plugin-icon__img {
|
|
7281
|
+
object-fit: contain;
|
|
7282
|
+
}
|
|
7090
7283
|
/* AppTopBar - BEM-style naming for external package consumers */
|
|
7091
7284
|
|
|
7092
7285
|
/* Motion tokens — shared across AppTopBar subcomponents */
|
|
@@ -7338,8 +7531,7 @@ to { transform: rotate(360deg);
|
|
|
7338
7531
|
display: inline-flex;
|
|
7339
7532
|
align-items: center;
|
|
7340
7533
|
gap: 0.25rem;
|
|
7341
|
-
|
|
7342
|
-
padding: 0.3125rem 0.875rem 0.4375rem;
|
|
7534
|
+
padding: 0.375rem 0.875rem;
|
|
7343
7535
|
border: 0;
|
|
7344
7536
|
background: transparent;
|
|
7345
7537
|
border-radius: 9999px;
|
|
@@ -16802,8 +16994,7 @@ code, pre {
|
|
|
16802
16994
|
display: inline-flex;
|
|
16803
16995
|
align-items: center;
|
|
16804
16996
|
gap: 0.25rem;
|
|
16805
|
-
|
|
16806
|
-
padding: 0.3125rem 0.875rem 0.4375rem;
|
|
16997
|
+
padding: 0.375rem 0.875rem;
|
|
16807
16998
|
border: 0;
|
|
16808
16999
|
background: transparent;
|
|
16809
17000
|
border-radius: 9999px;
|
|
@@ -17105,22 +17296,18 @@ code, pre {
|
|
|
17105
17296
|
background-color: var(--bg-tertiary);
|
|
17106
17297
|
}
|
|
17107
17298
|
/* Sizes */
|
|
17108
|
-
/* Optical centering: Fira Sans' cap-letter midpoint sits above the em-box center.
|
|
17109
|
-
Old rule (pre-0.16) compensated with a 2px upward shift; user testing showed
|
|
17110
|
-
that read as "too high" across sizes. New rule: 1px upward shift universally.
|
|
17111
|
-
See CLAUDE.md § Optical Centering. */
|
|
17112
17299
|
.mint-button--sm {
|
|
17113
|
-
padding: 0.
|
|
17300
|
+
padding: 0.375rem 0.75rem;
|
|
17114
17301
|
font-size: 0.875rem;
|
|
17115
17302
|
min-height: var(--form-height-sm);
|
|
17116
17303
|
}
|
|
17117
17304
|
.mint-button--md {
|
|
17118
|
-
padding: 0.
|
|
17305
|
+
padding: 0.5rem 1rem;
|
|
17119
17306
|
font-size: 0.875rem;
|
|
17120
17307
|
min-height: var(--form-height-md);
|
|
17121
17308
|
}
|
|
17122
17309
|
.mint-button--lg {
|
|
17123
|
-
padding: 0.
|
|
17310
|
+
padding: 0.75rem 1.5rem;
|
|
17124
17311
|
font-size: 1rem;
|
|
17125
17312
|
min-height: var(--form-height-lg);
|
|
17126
17313
|
}
|
|
@@ -18704,20 +18891,19 @@ code, pre {
|
|
|
18704
18891
|
color: var(--text-muted);
|
|
18705
18892
|
cursor: not-allowed;
|
|
18706
18893
|
}
|
|
18707
|
-
/* Size variants
|
|
18708
|
-
See CLAUDE.md § Optical Centering. */
|
|
18894
|
+
/* Size variants */
|
|
18709
18895
|
.mint-input--sm {
|
|
18710
|
-
padding: 0.
|
|
18896
|
+
padding: 0.375rem 0.625rem;
|
|
18711
18897
|
font-size: 0.8125rem;
|
|
18712
18898
|
min-height: var(--form-height-sm);
|
|
18713
18899
|
}
|
|
18714
18900
|
.mint-input--md {
|
|
18715
|
-
padding: 0.
|
|
18901
|
+
padding: 0.5rem 0.75rem;
|
|
18716
18902
|
font-size: 0.875rem;
|
|
18717
18903
|
min-height: var(--form-height-md);
|
|
18718
18904
|
}
|
|
18719
18905
|
.mint-input--lg {
|
|
18720
|
-
padding: 0.
|
|
18906
|
+
padding: 0.75rem 1rem;
|
|
18721
18907
|
font-size: 1rem;
|
|
18722
18908
|
min-height: var(--form-height-lg);
|
|
18723
18909
|
}
|
|
@@ -19093,9 +19279,9 @@ code, pre {
|
|
|
19093
19279
|
.mint-number-input__input:disabled { cursor: not-allowed; }
|
|
19094
19280
|
/* Horizontal padding matches BaseInput canonical scale (10/12/16) so FormField's
|
|
19095
19281
|
12px label indent aligns with the numeric text across all input types. */
|
|
19096
|
-
.mint-number-input__input--sm { padding: 0.
|
|
19097
|
-
.mint-number-input__input--md { padding: 0.
|
|
19098
|
-
.mint-number-input__input--lg { padding: 0.
|
|
19282
|
+
.mint-number-input__input--sm { padding: 0.375rem 0.625rem; font-size: 0.875rem; }
|
|
19283
|
+
.mint-number-input__input--md { padding: 0.5rem 0.75rem; font-size: 0.875rem; }
|
|
19284
|
+
.mint-number-input__input--lg { padding: 0.75rem 1rem; font-size: 1rem; }
|
|
19099
19285
|
/* ---------- Unit suffix ---------- */
|
|
19100
19286
|
.mint-number-input__unit {
|
|
19101
19287
|
padding: 0 0.625rem 0 0;
|
|
@@ -20228,9 +20414,8 @@ code, pre {
|
|
|
20228
20414
|
background-color: var(--bg-tertiary);
|
|
20229
20415
|
border-radius: var(--radius-md);
|
|
20230
20416
|
}
|
|
20231
|
-
/* 1px optical padding shift (0.16+). See CLAUDE.md § Optical Centering. */
|
|
20232
20417
|
.mint-tab {
|
|
20233
|
-
padding: 0.
|
|
20418
|
+
padding: 0.5rem 1rem;
|
|
20234
20419
|
font-size: 0.875rem;
|
|
20235
20420
|
font-weight: 500;
|
|
20236
20421
|
transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease;
|
|
@@ -20502,18 +20687,17 @@ code, pre {
|
|
|
20502
20687
|
cursor: not-allowed;
|
|
20503
20688
|
resize: none;
|
|
20504
20689
|
}
|
|
20505
|
-
/* Size variants
|
|
20506
|
-
See CLAUDE.md § Optical Centering. */
|
|
20690
|
+
/* Size variants */
|
|
20507
20691
|
.mint-textarea--sm {
|
|
20508
|
-
padding: 0.
|
|
20692
|
+
padding: 0.375rem 0.625rem;
|
|
20509
20693
|
font-size: 0.8125rem;
|
|
20510
20694
|
}
|
|
20511
20695
|
.mint-textarea--md {
|
|
20512
|
-
padding: 0.
|
|
20696
|
+
padding: 0.5rem 0.75rem;
|
|
20513
20697
|
font-size: 0.875rem;
|
|
20514
20698
|
}
|
|
20515
20699
|
.mint-textarea--lg {
|
|
20516
|
-
padding: 0.
|
|
20700
|
+
padding: 0.75rem 1rem;
|
|
20517
20701
|
font-size: 1rem;
|
|
20518
20702
|
}
|
|
20519
20703
|
.mint-textarea--resize-none {
|
|
@@ -24325,22 +24509,19 @@ html.dark .mint-toast__item .mint-toast__message {
|
|
|
24325
24509
|
color: var(--text-primary);
|
|
24326
24510
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
|
|
24327
24511
|
}
|
|
24328
|
-
/* Size variants - simple
|
|
24329
|
-
See CLAUDE.md § Optical Centering. */
|
|
24512
|
+
/* Size variants - simple */
|
|
24330
24513
|
.mint-segmented-control__option--simple.mint-segmented-control__option--sm {
|
|
24331
|
-
padding: 0.
|
|
24514
|
+
padding: 0.375rem 0.75rem;
|
|
24332
24515
|
font-size: 0.75rem;
|
|
24333
24516
|
min-height: var(--form-height-sm);
|
|
24334
24517
|
}
|
|
24335
24518
|
.mint-segmented-control__option--simple.mint-segmented-control__option--md {
|
|
24336
|
-
padding: 0.
|
|
24519
|
+
padding: 0.5rem 1rem;
|
|
24337
24520
|
font-size: 0.875rem;
|
|
24338
24521
|
min-height: var(--form-height-md);
|
|
24339
24522
|
}
|
|
24340
24523
|
.mint-segmented-control__option--simple.mint-segmented-control__option--lg {
|
|
24341
|
-
|
|
24342
|
-
em-box at 1rem font + 1.25 line-height, so the 1px shift lands here. */
|
|
24343
|
-
padding: 0.5625rem 1.25rem 0.6875rem;
|
|
24524
|
+
padding: 0.625rem 1.25rem;
|
|
24344
24525
|
font-size: 1rem;
|
|
24345
24526
|
min-height: var(--form-height-lg);
|
|
24346
24527
|
}
|
|
@@ -24763,19 +24944,19 @@ html.dark .mint-pill__remove:hover {
|
|
|
24763
24944
|
.mint-dropdown-button__trigger--ghost:hover:not(.mint-dropdown-button__trigger--disabled) {
|
|
24764
24945
|
background-color: var(--bg-tertiary);
|
|
24765
24946
|
}
|
|
24766
|
-
/* Trigger sizes
|
|
24947
|
+
/* Trigger sizes */
|
|
24767
24948
|
.mint-dropdown-button__trigger--sm {
|
|
24768
|
-
padding: 0.
|
|
24949
|
+
padding: 0.375rem 0.75rem;
|
|
24769
24950
|
font-size: 0.875rem;
|
|
24770
24951
|
min-height: var(--form-height-sm);
|
|
24771
24952
|
}
|
|
24772
24953
|
.mint-dropdown-button__trigger--md {
|
|
24773
|
-
padding: 0.
|
|
24954
|
+
padding: 0.5rem 1rem;
|
|
24774
24955
|
font-size: 0.875rem;
|
|
24775
24956
|
min-height: var(--form-height-md);
|
|
24776
24957
|
}
|
|
24777
24958
|
.mint-dropdown-button__trigger--lg {
|
|
24778
|
-
padding: 0.
|
|
24959
|
+
padding: 0.75rem 1.5rem;
|
|
24779
24960
|
font-size: 1rem;
|
|
24780
24961
|
min-height: var(--form-height-lg);
|
|
24781
24962
|
}
|
|
@@ -26733,6 +26914,168 @@ html.dark .mint-settings-modal__option-btn--active {
|
|
|
26733
26914
|
margin-bottom: 0 !important;
|
|
26734
26915
|
padding: 0 !important;
|
|
26735
26916
|
}
|
|
26917
|
+
/* ─────────────────────────────────────────────────────────────────────
|
|
26918
|
+
* Schema-driven content grid (used by both layouts)
|
|
26919
|
+
* Cols come from `--mint-settings-cols` set inline by the component;
|
|
26920
|
+
* keeps the data binding minimal and the styling in one place.
|
|
26921
|
+
* ───────────────────────────────────────────────────────────────────── */
|
|
26922
|
+
.mint-settings-modal__group-grid {
|
|
26923
|
+
display: grid;
|
|
26924
|
+
gap: 1rem;
|
|
26925
|
+
grid-template-columns: repeat(var(--mint-settings-cols, 1), minmax(0, 1fr));
|
|
26926
|
+
}
|
|
26927
|
+
/* ─────────────────────────────────────────────────────────────────────
|
|
26928
|
+
* Vertical layout — sidebar rail + content pane (opt-in via layout="vertical")
|
|
26929
|
+
* Designed for complex plugins with 5+ setting groups. Existing horizontal
|
|
26930
|
+
* classes above are deliberately untouched.
|
|
26931
|
+
* ───────────────────────────────────────────────────────────────────── */
|
|
26932
|
+
.mint-settings-modal--vertical {
|
|
26933
|
+
flex-direction: row;
|
|
26934
|
+
gap: 1.25rem;
|
|
26935
|
+
align-items: stretch;
|
|
26936
|
+
min-height: 22rem;
|
|
26937
|
+
}
|
|
26938
|
+
.mint-settings-modal__rail {
|
|
26939
|
+
flex-shrink: 0;
|
|
26940
|
+
width: 12.5rem;
|
|
26941
|
+
display: flex;
|
|
26942
|
+
flex-direction: column;
|
|
26943
|
+
gap: 0.125rem;
|
|
26944
|
+
padding-right: 0.75rem;
|
|
26945
|
+
border-right: 1px solid var(--border-light);
|
|
26946
|
+
}
|
|
26947
|
+
.mint-settings-modal__rail-item {
|
|
26948
|
+
display: flex;
|
|
26949
|
+
align-items: flex-start;
|
|
26950
|
+
gap: 0.625rem;
|
|
26951
|
+
width: 100%;
|
|
26952
|
+
padding: 0.5rem 0.75rem;
|
|
26953
|
+
font-size: 0.8125rem;
|
|
26954
|
+
font-weight: 500;
|
|
26955
|
+
color: var(--text-secondary);
|
|
26956
|
+
background: none;
|
|
26957
|
+
border: none;
|
|
26958
|
+
border-radius: var(--radius-md);
|
|
26959
|
+
cursor: pointer;
|
|
26960
|
+
text-align: left;
|
|
26961
|
+
transition:
|
|
26962
|
+
color var(--mint-transition),
|
|
26963
|
+
background-color var(--mint-transition);
|
|
26964
|
+
}
|
|
26965
|
+
.mint-settings-modal__rail-item:hover {
|
|
26966
|
+
background-color: var(--bg-hover);
|
|
26967
|
+
color: var(--text-primary);
|
|
26968
|
+
}
|
|
26969
|
+
.mint-settings-modal__rail-item:focus-visible {
|
|
26970
|
+
outline: none;
|
|
26971
|
+
box-shadow: var(--focus-ring);
|
|
26972
|
+
}
|
|
26973
|
+
.mint-settings-modal__rail-item--active {
|
|
26974
|
+
color: var(--color-primary);
|
|
26975
|
+
background-color: color-mix(in srgb, var(--color-primary) 10%, transparent);
|
|
26976
|
+
}
|
|
26977
|
+
html.dark .mint-settings-modal__rail-item--active {
|
|
26978
|
+
background-color: color-mix(in srgb, var(--color-primary) 18%, transparent);
|
|
26979
|
+
}
|
|
26980
|
+
/* Reserved icon column keeps labels aligned whether or not icons are present */
|
|
26981
|
+
.mint-settings-modal__rail-item-icon {
|
|
26982
|
+
flex-shrink: 0;
|
|
26983
|
+
width: 1rem;
|
|
26984
|
+
height: 1rem;
|
|
26985
|
+
display: inline-flex;
|
|
26986
|
+
align-items: center;
|
|
26987
|
+
justify-content: center;
|
|
26988
|
+
margin-top: 0.0625rem;
|
|
26989
|
+
color: currentColor;
|
|
26990
|
+
}
|
|
26991
|
+
.mint-settings-modal__rail-item-icon svg {
|
|
26992
|
+
width: 100%;
|
|
26993
|
+
height: 100%;
|
|
26994
|
+
display: block;
|
|
26995
|
+
}
|
|
26996
|
+
.mint-settings-modal__rail-item-text {
|
|
26997
|
+
display: flex;
|
|
26998
|
+
flex-direction: column;
|
|
26999
|
+
gap: 0.125rem;
|
|
27000
|
+
min-width: 0;
|
|
27001
|
+
flex: 1;
|
|
27002
|
+
}
|
|
27003
|
+
.mint-settings-modal__rail-item-label {
|
|
27004
|
+
line-height: 1.3;
|
|
27005
|
+
}
|
|
27006
|
+
.mint-settings-modal__rail-item-description {
|
|
27007
|
+
font-size: 0.6875rem;
|
|
27008
|
+
font-weight: 400;
|
|
27009
|
+
color: var(--text-muted);
|
|
27010
|
+
line-height: 1.35;
|
|
27011
|
+
}
|
|
27012
|
+
.mint-settings-modal__rail-item--active .mint-settings-modal__rail-item-description {
|
|
27013
|
+
color: color-mix(in srgb, var(--color-primary) 65%, var(--text-secondary));
|
|
27014
|
+
}
|
|
27015
|
+
.mint-settings-modal__pane {
|
|
27016
|
+
flex: 1;
|
|
27017
|
+
min-width: 0;
|
|
27018
|
+
display: flex;
|
|
27019
|
+
flex-direction: column;
|
|
27020
|
+
}
|
|
27021
|
+
.mint-settings-modal__pane-header {
|
|
27022
|
+
margin-bottom: 1rem;
|
|
27023
|
+
padding-bottom: 0.75rem;
|
|
27024
|
+
border-bottom: 1px solid var(--border-light);
|
|
27025
|
+
}
|
|
27026
|
+
.mint-settings-modal__pane-title {
|
|
27027
|
+
font-size: 0.875rem;
|
|
27028
|
+
font-weight: 600;
|
|
27029
|
+
color: var(--text-primary);
|
|
27030
|
+
letter-spacing: -0.005em;
|
|
27031
|
+
margin: 0 !important;
|
|
27032
|
+
padding: 0 !important;
|
|
27033
|
+
line-height: 1.3;
|
|
27034
|
+
}
|
|
27035
|
+
.mint-settings-modal__pane-subtitle {
|
|
27036
|
+
font-size: 0.75rem;
|
|
27037
|
+
color: var(--text-secondary);
|
|
27038
|
+
line-height: 1.45;
|
|
27039
|
+
margin: 0.25rem 0 0 !important;
|
|
27040
|
+
padding: 0 !important;
|
|
27041
|
+
}
|
|
27042
|
+
.mint-settings-modal__pane-body {
|
|
27043
|
+
flex: 1;
|
|
27044
|
+
min-height: 0;
|
|
27045
|
+
/* Trailing breathing room so the last field doesn't hug the modal border */
|
|
27046
|
+
padding-bottom: 0.25rem;
|
|
27047
|
+
}
|
|
27048
|
+
/* Mobile — collapse the rail into a horizontal scroll-strip so the modal stays usable.
|
|
27049
|
+
* Touch targets stay ≥40px tall via 0.5rem vertical padding + 1rem text line-height. */
|
|
27050
|
+
@media (max-width: 640px) {
|
|
27051
|
+
.mint-settings-modal--vertical {
|
|
27052
|
+
flex-direction: column;
|
|
27053
|
+
gap: 0.875rem;
|
|
27054
|
+
min-height: 0;
|
|
27055
|
+
}
|
|
27056
|
+
|
|
27057
|
+
.mint-settings-modal__rail {
|
|
27058
|
+
width: 100%;
|
|
27059
|
+
flex-direction: row;
|
|
27060
|
+
overflow-x: auto;
|
|
27061
|
+
padding: 0 0 0.625rem;
|
|
27062
|
+
border-right: none;
|
|
27063
|
+
border-bottom: 1px solid var(--border-light);
|
|
27064
|
+
gap: 0.25rem;
|
|
27065
|
+
scrollbar-width: thin;
|
|
27066
|
+
}
|
|
27067
|
+
|
|
27068
|
+
.mint-settings-modal__rail-item {
|
|
27069
|
+
flex-shrink: 0;
|
|
27070
|
+
width: auto;
|
|
27071
|
+
padding: 0.5rem 0.75rem;
|
|
27072
|
+
}
|
|
27073
|
+
|
|
27074
|
+
/* Two-line description hides on mobile so the rail strip stays compact */
|
|
27075
|
+
.mint-settings-modal__rail-item-description {
|
|
27076
|
+
display: none;
|
|
27077
|
+
}
|
|
27078
|
+
}
|
|
26736
27079
|
/* ScientificNumber Component Styles */
|
|
26737
27080
|
.mint-sci-number {
|
|
26738
27081
|
display: inline-flex;
|
|
@@ -27124,9 +27467,9 @@ html.dark .mint-settings-modal__option-btn--active {
|
|
|
27124
27467
|
.mint-unit-input__value:disabled { cursor: not-allowed; }
|
|
27125
27468
|
/* Horizontal padding matches BaseInput canonical scale (10/12/16) so FormField's
|
|
27126
27469
|
12px label indent aligns with the value text across all input types. */
|
|
27127
|
-
.mint-unit-input__value--sm { padding: 0.
|
|
27128
|
-
.mint-unit-input__value--md { padding: 0.
|
|
27129
|
-
.mint-unit-input__value--lg { padding: 0.
|
|
27470
|
+
.mint-unit-input__value--sm { padding: 0.375rem 0.625rem; font-size: 0.875rem; }
|
|
27471
|
+
.mint-unit-input__value--md { padding: 0.5rem 0.75rem; font-size: 0.875rem; }
|
|
27472
|
+
.mint-unit-input__value--lg { padding: 0.75rem 1rem; font-size: 1rem; }
|
|
27130
27473
|
/* ---------- Unit chip ---------- */
|
|
27131
27474
|
.mint-unit-input__unit {
|
|
27132
27475
|
display: flex;
|