luxen-ui 0.1.2 → 0.2.1
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/cdn/custom-elements.json +183 -5
- package/cdn/elements/dialog/dialog.d.ts +4 -0
- package/cdn/elements/dialog/dialog.d.ts.map +1 -1
- package/cdn/elements/dialog/dialog.js +10 -6
- package/cdn/elements/dialog/dialog.js.map +1 -1
- package/cdn/elements/dialog/dialog.styles.js +1 -1
- package/cdn/elements/dialog/dialog.styles.js.map +1 -1
- package/cdn/elements/dropdown/dropdown.js +1 -1
- package/cdn/elements/dropdown/dropdown.js.map +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.js +1 -1
- package/cdn/elements/dropdown-item/dropdown-item.js.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.d.ts +3 -0
- package/cdn/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/cdn/elements/input-stepper/input-stepper.js.map +1 -1
- package/cdn/elements/popover/popover.d.ts +3 -1
- package/cdn/elements/popover/popover.d.ts.map +1 -1
- package/cdn/elements/popover/popover.js +2 -2
- package/cdn/elements/popover/popover.js.map +1 -1
- package/cdn/shared/controllers/popover.d.ts +1 -0
- package/cdn/shared/controllers/popover.d.ts.map +1 -1
- package/cdn/shared/controllers/popover.js +1 -1
- package/cdn/shared/controllers/popover.js.map +1 -1
- package/cdn/styles/elements/button.css +1 -1
- package/cdn/styles/elements/input-stepper/default.css +19 -16
- package/cdn/styles/elements/input-stepper/rounded.css +14 -11
- package/cdn/styles/index.css +5 -2
- package/dist/css/elements/button.css +1 -1
- package/dist/css/elements/input-stepper/default.css +19 -16
- package/dist/css/elements/input-stepper/rounded.css +14 -11
- package/dist/css/index.css +5 -2
- package/dist/custom-elements.json +183 -5
- package/dist/elements/dialog/dialog.css +4 -3
- package/dist/elements/dialog/dialog.d.ts +4 -0
- package/dist/elements/dialog/dialog.d.ts.map +1 -1
- package/dist/elements/dialog/dialog.js +17 -4
- package/dist/elements/dropdown/dropdown.css +4 -4
- package/dist/elements/dropdown-item/dropdown-item.css +2 -1
- package/dist/elements/input-stepper/input-stepper.d.ts +3 -0
- package/dist/elements/input-stepper/input-stepper.d.ts.map +1 -1
- package/dist/elements/input-stepper/input-stepper.js +3 -0
- package/dist/elements/popover/popover.css +9 -5
- package/dist/elements/popover/popover.d.ts +3 -1
- package/dist/elements/popover/popover.d.ts.map +1 -1
- package/dist/elements/popover/popover.js +15 -4
- package/dist/shared/controllers/popover.d.ts +1 -0
- package/dist/shared/controllers/popover.d.ts.map +1 -1
- package/dist/shared/controllers/popover.js +2 -1
- package/dist/skills/luxen-ui/references/dialog.md +3 -1
- package/package.json +3 -2
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
|
|
31
31
|
:scope {
|
|
32
32
|
--_button-size: var(--l-size-control-md);
|
|
33
|
-
--
|
|
34
|
-
--
|
|
33
|
+
--border-color: var(--l-color-border);
|
|
34
|
+
--border-radius: var(--radius-md);
|
|
35
35
|
--_button-bg-hover: var(--l-color-bg-fill-neutral-soft);
|
|
36
36
|
--_button-bg-active: var(--l-color-bg-fill-neutral-subtle);
|
|
37
37
|
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
46
46
|
🅵🅾🆄🅲🅴 🅿🆁🅴🆅🅴🅽🆃🅸🅾🅽
|
|
47
47
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
48
|
-
Reserve button space before JS loads
|
|
48
|
+
Reserve button space before JS loads to avoid layout shift when buttons mount.
|
|
49
49
|
*/
|
|
50
50
|
|
|
51
51
|
:scope:not(:defined) {
|
|
@@ -56,12 +56,6 @@
|
|
|
56
56
|
padding-inline: 0;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
input::-webkit-inner-spin-button,
|
|
60
|
-
input::-webkit-outer-spin-button {
|
|
61
|
-
appearance: none;
|
|
62
|
-
margin: 0;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
59
|
/*
|
|
66
60
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
67
61
|
🆂🅸🆉🅴🆂
|
|
@@ -132,7 +126,7 @@
|
|
|
132
126
|
*/
|
|
133
127
|
|
|
134
128
|
input {
|
|
135
|
-
appearance:
|
|
129
|
+
appearance: textfield;
|
|
136
130
|
box-sizing: border-box;
|
|
137
131
|
font-family: inherit;
|
|
138
132
|
font-size: inherit;
|
|
@@ -205,23 +199,32 @@
|
|
|
205
199
|
color: var(--l-color-text-disabled);
|
|
206
200
|
}
|
|
207
201
|
}
|
|
202
|
+
|
|
203
|
+
/* Hide native spinners — kept outside @scope because Safari ignores
|
|
204
|
+
::-webkit-*-spin-button rules nested inside @scope blocks. */
|
|
205
|
+
l-input-stepper input::-webkit-inner-spin-button,
|
|
206
|
+
l-input-stepper input::-webkit-outer-spin-button {
|
|
207
|
+
appearance: none;
|
|
208
|
+
display: none;
|
|
209
|
+
margin: 0;
|
|
210
|
+
}
|
|
208
211
|
}
|
|
209
212
|
|
|
210
213
|
@layer components {
|
|
211
214
|
@scope (l-input-stepper:not([appearance]), l-input-stepper[appearance='default']) {
|
|
212
215
|
:scope {
|
|
213
|
-
border: 1px solid var(--
|
|
214
|
-
border-radius: var(--
|
|
216
|
+
border: 1px solid var(--border-color);
|
|
217
|
+
border-radius: var(--border-radius);
|
|
215
218
|
background-color: var(--l-color-surface);
|
|
216
219
|
min-height: var(--_button-size);
|
|
217
220
|
}
|
|
218
221
|
|
|
219
222
|
button:first-of-type {
|
|
220
|
-
border-radius: var(--
|
|
223
|
+
border-radius: var(--border-radius) 0 0 var(--border-radius);
|
|
221
224
|
}
|
|
222
225
|
|
|
223
226
|
button:last-of-type {
|
|
224
|
-
border-radius: 0 var(--
|
|
227
|
+
border-radius: 0 var(--border-radius) var(--border-radius) 0;
|
|
225
228
|
}
|
|
226
229
|
|
|
227
230
|
:scope:has(input:disabled) {
|
|
@@ -236,8 +239,8 @@
|
|
|
236
239
|
since no buttons exist to push the content area beyond min-height. */
|
|
237
240
|
@scope (l-input-stepper:not(:defined):not([appearance]), l-input-stepper:not(:defined)[appearance='default']) {
|
|
238
241
|
:scope {
|
|
239
|
-
border: 1px solid var(--
|
|
240
|
-
border-radius: var(--
|
|
242
|
+
border: 1px solid var(--border-color);
|
|
243
|
+
border-radius: var(--border-radius);
|
|
241
244
|
background-color: var(--l-color-surface);
|
|
242
245
|
min-height: calc(var(--_button-size) + 2px);
|
|
243
246
|
}
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
|
|
31
31
|
:scope {
|
|
32
32
|
--_button-size: var(--l-size-control-md);
|
|
33
|
-
--
|
|
34
|
-
--
|
|
33
|
+
--border-color: var(--l-color-border);
|
|
34
|
+
--border-radius: var(--radius-md);
|
|
35
35
|
--_button-bg-hover: var(--l-color-bg-fill-neutral-soft);
|
|
36
36
|
--_button-bg-active: var(--l-color-bg-fill-neutral-subtle);
|
|
37
37
|
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
46
46
|
🅵🅾🆄🅲🅴 🅿🆁🅴🆅🅴🅽🆃🅸🅾🅽
|
|
47
47
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
48
|
-
Reserve button space before JS loads
|
|
48
|
+
Reserve button space before JS loads to avoid layout shift when buttons mount.
|
|
49
49
|
*/
|
|
50
50
|
|
|
51
51
|
:scope:not(:defined) {
|
|
@@ -56,12 +56,6 @@
|
|
|
56
56
|
padding-inline: 0;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
input::-webkit-inner-spin-button,
|
|
60
|
-
input::-webkit-outer-spin-button {
|
|
61
|
-
appearance: none;
|
|
62
|
-
margin: 0;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
59
|
/*
|
|
66
60
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
67
61
|
🆂🅸🆉🅴🆂
|
|
@@ -132,7 +126,7 @@
|
|
|
132
126
|
*/
|
|
133
127
|
|
|
134
128
|
input {
|
|
135
|
-
appearance:
|
|
129
|
+
appearance: textfield;
|
|
136
130
|
box-sizing: border-box;
|
|
137
131
|
font-family: inherit;
|
|
138
132
|
font-size: inherit;
|
|
@@ -205,6 +199,15 @@
|
|
|
205
199
|
color: var(--l-color-text-disabled);
|
|
206
200
|
}
|
|
207
201
|
}
|
|
202
|
+
|
|
203
|
+
/* Hide native spinners — kept outside @scope because Safari ignores
|
|
204
|
+
::-webkit-*-spin-button rules nested inside @scope blocks. */
|
|
205
|
+
l-input-stepper input::-webkit-inner-spin-button,
|
|
206
|
+
l-input-stepper input::-webkit-outer-spin-button {
|
|
207
|
+
appearance: none;
|
|
208
|
+
display: none;
|
|
209
|
+
margin: 0;
|
|
210
|
+
}
|
|
208
211
|
}
|
|
209
212
|
|
|
210
213
|
@layer components {
|
|
@@ -214,7 +217,7 @@
|
|
|
214
217
|
}
|
|
215
218
|
|
|
216
219
|
button {
|
|
217
|
-
border: 1px solid var(--
|
|
220
|
+
border: 1px solid var(--border-color);
|
|
218
221
|
border-radius: var(--radius-full);
|
|
219
222
|
background-color: var(--l-color-surface);
|
|
220
223
|
}
|
package/cdn/styles/index.css
CHANGED
|
@@ -757,8 +757,8 @@ In dark mode, mixes the base color with black (default 15% black).
|
|
|
757
757
|
/* Semi-transparent backdrop behind modals, dialogs, drawers, and any overlay that dims the page content. Darker in dark mode for better contrast against dark surfaces. */
|
|
758
758
|
--l-backdrop: light-dark(oklch(46% 0.01 260 / 33%), oklch(15% 0.01 260 / 60%));
|
|
759
759
|
|
|
760
|
-
/* Default border for form controls, secondary buttons, inputs, and
|
|
761
|
-
--l-color-border: light-dark(var(--color-gray-
|
|
760
|
+
/* Default border for form controls, secondary buttons, inputs, selects, and any element that needs a thin neutral outline. Visible enough to delimit the element without competing with surrounding content. */
|
|
761
|
+
--l-color-border: light-dark(var(--color-gray-300), var(--color-gray-600));
|
|
762
762
|
|
|
763
763
|
/* Subtle divider line for separating content sections, list items, and card groups. Lighter than --l-color-border to avoid visual competition with interactive element borders. */
|
|
764
764
|
--l-color-divider: light-dark(var(--color-gray-200), var(--color-gray-700));
|
|
@@ -766,6 +766,9 @@ In dark mode, mixes the base color with black (default 15% black).
|
|
|
766
766
|
/* Subtle border or ring for interactive elements like close buttons, toggles, and icon buttons on hover. Provides low-contrast visual feedback without competing with primary content. */
|
|
767
767
|
--l-color-border-interactive: light-dark(var(--color-gray-300), var(--color-gray-600));
|
|
768
768
|
|
|
769
|
+
/* Border for floating surfaces like popovers, dropdowns, menus, tooltips, and combobox listboxes. Aliases --l-color-border so overlays stay visually consistent with form controls, but exposed as a separate semantic so consumers can soften overlay borders independently if needed. Pairs with --l-color-surface-overlay. */
|
|
770
|
+
--l-color-border-overlay: var(--l-color-border);
|
|
771
|
+
|
|
769
772
|
/* Border color for disabled form controls, buttons, and interactive elements. Faded to signal non-interactivity. */
|
|
770
773
|
--l-color-border-disabled: light-dark(var(--color-gray-300), var(--color-gray-700));
|
|
771
774
|
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
var(--l-color-text-primary)
|
|
25
25
|
);
|
|
26
26
|
--background-color-hover: var(--background-color-active);
|
|
27
|
-
--font-size: var(--text-
|
|
27
|
+
--font-size: var(--text-sm);
|
|
28
28
|
--text-color: var(--l-color-text-primary);
|
|
29
29
|
--text-color-hover: var(--text-color);
|
|
30
30
|
--border-color: var(--l-color-border);
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
|
|
31
31
|
:scope {
|
|
32
32
|
--_button-size: var(--l-size-control-md);
|
|
33
|
-
--
|
|
34
|
-
--
|
|
33
|
+
--border-color: var(--l-color-border);
|
|
34
|
+
--border-radius: var(--radius-md);
|
|
35
35
|
--_button-bg-hover: var(--l-color-bg-fill-neutral-soft);
|
|
36
36
|
--_button-bg-active: var(--l-color-bg-fill-neutral-subtle);
|
|
37
37
|
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
46
46
|
🅵🅾🆄🅲🅴 🅿🆁🅴🆅🅴🅽🆃🅸🅾🅽
|
|
47
47
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
48
|
-
Reserve button space before JS loads
|
|
48
|
+
Reserve button space before JS loads to avoid layout shift when buttons mount.
|
|
49
49
|
*/
|
|
50
50
|
|
|
51
51
|
:scope:not(:defined) {
|
|
@@ -56,12 +56,6 @@
|
|
|
56
56
|
padding-inline: 0;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
input::-webkit-inner-spin-button,
|
|
60
|
-
input::-webkit-outer-spin-button {
|
|
61
|
-
appearance: none;
|
|
62
|
-
margin: 0;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
59
|
/*
|
|
66
60
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
67
61
|
🆂🅸🆉🅴🆂
|
|
@@ -132,7 +126,7 @@
|
|
|
132
126
|
*/
|
|
133
127
|
|
|
134
128
|
input {
|
|
135
|
-
appearance:
|
|
129
|
+
appearance: textfield;
|
|
136
130
|
box-sizing: border-box;
|
|
137
131
|
font-family: inherit;
|
|
138
132
|
font-size: inherit;
|
|
@@ -205,23 +199,32 @@
|
|
|
205
199
|
color: var(--l-color-text-disabled);
|
|
206
200
|
}
|
|
207
201
|
}
|
|
202
|
+
|
|
203
|
+
/* Hide native spinners — kept outside @scope because Safari ignores
|
|
204
|
+
::-webkit-*-spin-button rules nested inside @scope blocks. */
|
|
205
|
+
l-input-stepper input::-webkit-inner-spin-button,
|
|
206
|
+
l-input-stepper input::-webkit-outer-spin-button {
|
|
207
|
+
appearance: none;
|
|
208
|
+
display: none;
|
|
209
|
+
margin: 0;
|
|
210
|
+
}
|
|
208
211
|
}
|
|
209
212
|
|
|
210
213
|
@layer components {
|
|
211
214
|
@scope (l-input-stepper:not([appearance]), l-input-stepper[appearance='default']) {
|
|
212
215
|
:scope {
|
|
213
|
-
border: 1px solid var(--
|
|
214
|
-
border-radius: var(--
|
|
216
|
+
border: 1px solid var(--border-color);
|
|
217
|
+
border-radius: var(--border-radius);
|
|
215
218
|
background-color: var(--l-color-surface);
|
|
216
219
|
min-height: var(--_button-size);
|
|
217
220
|
}
|
|
218
221
|
|
|
219
222
|
button:first-of-type {
|
|
220
|
-
border-radius: var(--
|
|
223
|
+
border-radius: var(--border-radius) 0 0 var(--border-radius);
|
|
221
224
|
}
|
|
222
225
|
|
|
223
226
|
button:last-of-type {
|
|
224
|
-
border-radius: 0 var(--
|
|
227
|
+
border-radius: 0 var(--border-radius) var(--border-radius) 0;
|
|
225
228
|
}
|
|
226
229
|
|
|
227
230
|
:scope:has(input:disabled) {
|
|
@@ -236,8 +239,8 @@
|
|
|
236
239
|
since no buttons exist to push the content area beyond min-height. */
|
|
237
240
|
@scope (l-input-stepper:not(:defined):not([appearance]), l-input-stepper:not(:defined)[appearance='default']) {
|
|
238
241
|
:scope {
|
|
239
|
-
border: 1px solid var(--
|
|
240
|
-
border-radius: var(--
|
|
242
|
+
border: 1px solid var(--border-color);
|
|
243
|
+
border-radius: var(--border-radius);
|
|
241
244
|
background-color: var(--l-color-surface);
|
|
242
245
|
min-height: calc(var(--_button-size) + 2px);
|
|
243
246
|
}
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
|
|
31
31
|
:scope {
|
|
32
32
|
--_button-size: var(--l-size-control-md);
|
|
33
|
-
--
|
|
34
|
-
--
|
|
33
|
+
--border-color: var(--l-color-border);
|
|
34
|
+
--border-radius: var(--radius-md);
|
|
35
35
|
--_button-bg-hover: var(--l-color-bg-fill-neutral-soft);
|
|
36
36
|
--_button-bg-active: var(--l-color-bg-fill-neutral-subtle);
|
|
37
37
|
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
46
46
|
🅵🅾🆄🅲🅴 🅿🆁🅴🆅🅴🅽🆃🅸🅾🅽
|
|
47
47
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
48
|
-
Reserve button space before JS loads
|
|
48
|
+
Reserve button space before JS loads to avoid layout shift when buttons mount.
|
|
49
49
|
*/
|
|
50
50
|
|
|
51
51
|
:scope:not(:defined) {
|
|
@@ -56,12 +56,6 @@
|
|
|
56
56
|
padding-inline: 0;
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
input::-webkit-inner-spin-button,
|
|
60
|
-
input::-webkit-outer-spin-button {
|
|
61
|
-
appearance: none;
|
|
62
|
-
margin: 0;
|
|
63
|
-
}
|
|
64
|
-
|
|
65
59
|
/*
|
|
66
60
|
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
|
|
67
61
|
🆂🅸🆉🅴🆂
|
|
@@ -132,7 +126,7 @@
|
|
|
132
126
|
*/
|
|
133
127
|
|
|
134
128
|
input {
|
|
135
|
-
appearance:
|
|
129
|
+
appearance: textfield;
|
|
136
130
|
box-sizing: border-box;
|
|
137
131
|
font-family: inherit;
|
|
138
132
|
font-size: inherit;
|
|
@@ -205,6 +199,15 @@
|
|
|
205
199
|
color: var(--l-color-text-disabled);
|
|
206
200
|
}
|
|
207
201
|
}
|
|
202
|
+
|
|
203
|
+
/* Hide native spinners — kept outside @scope because Safari ignores
|
|
204
|
+
::-webkit-*-spin-button rules nested inside @scope blocks. */
|
|
205
|
+
l-input-stepper input::-webkit-inner-spin-button,
|
|
206
|
+
l-input-stepper input::-webkit-outer-spin-button {
|
|
207
|
+
appearance: none;
|
|
208
|
+
display: none;
|
|
209
|
+
margin: 0;
|
|
210
|
+
}
|
|
208
211
|
}
|
|
209
212
|
|
|
210
213
|
@layer components {
|
|
@@ -214,7 +217,7 @@
|
|
|
214
217
|
}
|
|
215
218
|
|
|
216
219
|
button {
|
|
217
|
-
border: 1px solid var(--
|
|
220
|
+
border: 1px solid var(--border-color);
|
|
218
221
|
border-radius: var(--radius-full);
|
|
219
222
|
background-color: var(--l-color-surface);
|
|
220
223
|
}
|
package/dist/css/index.css
CHANGED
|
@@ -757,8 +757,8 @@ In dark mode, mixes the base color with black (default 15% black).
|
|
|
757
757
|
/* Semi-transparent backdrop behind modals, dialogs, drawers, and any overlay that dims the page content. Darker in dark mode for better contrast against dark surfaces. */
|
|
758
758
|
--l-backdrop: light-dark(oklch(46% 0.01 260 / 33%), oklch(15% 0.01 260 / 60%));
|
|
759
759
|
|
|
760
|
-
/* Default border for form controls, secondary buttons, inputs, and
|
|
761
|
-
--l-color-border: light-dark(var(--color-gray-
|
|
760
|
+
/* Default border for form controls, secondary buttons, inputs, selects, and any element that needs a thin neutral outline. Visible enough to delimit the element without competing with surrounding content. */
|
|
761
|
+
--l-color-border: light-dark(var(--color-gray-300), var(--color-gray-600));
|
|
762
762
|
|
|
763
763
|
/* Subtle divider line for separating content sections, list items, and card groups. Lighter than --l-color-border to avoid visual competition with interactive element borders. */
|
|
764
764
|
--l-color-divider: light-dark(var(--color-gray-200), var(--color-gray-700));
|
|
@@ -766,6 +766,9 @@ In dark mode, mixes the base color with black (default 15% black).
|
|
|
766
766
|
/* Subtle border or ring for interactive elements like close buttons, toggles, and icon buttons on hover. Provides low-contrast visual feedback without competing with primary content. */
|
|
767
767
|
--l-color-border-interactive: light-dark(var(--color-gray-300), var(--color-gray-600));
|
|
768
768
|
|
|
769
|
+
/* Border for floating surfaces like popovers, dropdowns, menus, tooltips, and combobox listboxes. Aliases --l-color-border so overlays stay visually consistent with form controls, but exposed as a separate semantic so consumers can soften overlay borders independently if needed. Pairs with --l-color-surface-overlay. */
|
|
770
|
+
--l-color-border-overlay: var(--l-color-border);
|
|
771
|
+
|
|
769
772
|
/* Border color for disabled form controls, buttons, and interactive elements. Faded to signal non-interactivity. */
|
|
770
773
|
--l-color-border-disabled: light-dark(var(--color-gray-300), var(--color-gray-700));
|
|
771
774
|
|