aeico-components 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/README.md +0 -0
  2. package/dist/chunks/action-button.cjs +2 -2
  3. package/dist/chunks/action-button.js +2 -2
  4. package/dist/chunks/alert.cjs +22 -28
  5. package/dist/chunks/alert.cjs.map +1 -1
  6. package/dist/chunks/alert.js +22 -28
  7. package/dist/chunks/alert.js.map +1 -1
  8. package/dist/chunks/badge.cjs +1 -1
  9. package/dist/chunks/badge.js +1 -1
  10. package/dist/chunks/breadcrumb-item.cjs +7 -7
  11. package/dist/chunks/breadcrumb-item.js +7 -7
  12. package/dist/chunks/button.cjs +39 -50
  13. package/dist/chunks/button.cjs.map +1 -1
  14. package/dist/chunks/button.js +39 -50
  15. package/dist/chunks/button.js.map +1 -1
  16. package/dist/chunks/card.cjs +1 -1
  17. package/dist/chunks/card.js +1 -1
  18. package/dist/chunks/checkbox.cjs +1 -1
  19. package/dist/chunks/checkbox.js +1 -1
  20. package/dist/chunks/color.cjs +1 -1
  21. package/dist/chunks/color.js +1 -1
  22. package/dist/chunks/copy-button.cjs +7 -4
  23. package/dist/chunks/copy-button.cjs.map +1 -1
  24. package/dist/chunks/copy-button.js +7 -4
  25. package/dist/chunks/copy-button.js.map +1 -1
  26. package/dist/chunks/detail-group.cjs +65 -0
  27. package/dist/chunks/detail-group.cjs.map +1 -0
  28. package/dist/chunks/detail-group.js +66 -0
  29. package/dist/chunks/detail-group.js.map +1 -0
  30. package/dist/chunks/detail.cjs +1 -1
  31. package/dist/chunks/detail.js +1 -1
  32. package/dist/chunks/dialog.cjs +1 -1
  33. package/dist/chunks/dialog.js +1 -1
  34. package/dist/chunks/divider.cjs +1 -1
  35. package/dist/chunks/divider.js +1 -1
  36. package/dist/chunks/drawer.cjs +1 -1
  37. package/dist/chunks/drawer.js +1 -1
  38. package/dist/chunks/dropdown-button.cjs +8 -9
  39. package/dist/chunks/dropdown-button.cjs.map +1 -1
  40. package/dist/chunks/dropdown-button.js +11 -12
  41. package/dist/chunks/dropdown-button.js.map +1 -1
  42. package/dist/chunks/icon.cjs +27 -11
  43. package/dist/chunks/icon.cjs.map +1 -1
  44. package/dist/chunks/icon.js +27 -11
  45. package/dist/chunks/icon.js.map +1 -1
  46. package/dist/chunks/menu.cjs +1 -1
  47. package/dist/chunks/menu.js +1 -1
  48. package/dist/chunks/navbar.cjs +1 -1
  49. package/dist/chunks/navbar.js +1 -1
  50. package/dist/chunks/number-input.cjs +110 -0
  51. package/dist/chunks/number-input.cjs.map +1 -0
  52. package/dist/chunks/number-input.js +111 -0
  53. package/dist/chunks/number-input.js.map +1 -0
  54. package/dist/chunks/pagination.cjs +31 -31
  55. package/dist/chunks/pagination.js +31 -31
  56. package/dist/chunks/progress-bar.cjs +1 -1
  57. package/dist/chunks/progress-bar.js +1 -1
  58. package/dist/chunks/radio.cjs +1 -1
  59. package/dist/chunks/radio.js +1 -1
  60. package/dist/chunks/select.cjs +1 -1
  61. package/dist/chunks/select.js +1 -1
  62. package/dist/chunks/size.cjs +1 -1
  63. package/dist/chunks/size.js +1 -1
  64. package/dist/chunks/slider.cjs +26 -29
  65. package/dist/chunks/slider.cjs.map +1 -1
  66. package/dist/chunks/slider.js +26 -29
  67. package/dist/chunks/slider.js.map +1 -1
  68. package/dist/chunks/spinner.cjs +1 -1
  69. package/dist/chunks/spinner.js +1 -1
  70. package/dist/chunks/switch.cjs +1 -1
  71. package/dist/chunks/switch.js +1 -1
  72. package/dist/chunks/tab-panel.cjs +12 -3
  73. package/dist/chunks/tab-panel.cjs.map +1 -1
  74. package/dist/chunks/tab-panel.js +12 -3
  75. package/dist/chunks/tab-panel.js.map +1 -1
  76. package/dist/chunks/tag.cjs +1 -1
  77. package/dist/chunks/tag.js +1 -1
  78. package/dist/chunks/text-input.cjs +1 -1
  79. package/dist/chunks/text-input.js +1 -1
  80. package/dist/chunks/textarea.cjs +1 -1
  81. package/dist/chunks/textarea.js +1 -1
  82. package/dist/chunks/tooltip.cjs +4 -5
  83. package/dist/chunks/tooltip.cjs.map +1 -1
  84. package/dist/chunks/tooltip.js +4 -5
  85. package/dist/chunks/tooltip.js.map +1 -1
  86. package/dist/chunks/tree.cjs +1 -1
  87. package/dist/chunks/tree.js +1 -1
  88. package/dist/chunks/variables.cjs +271 -247
  89. package/dist/chunks/variables.cjs.map +1 -1
  90. package/dist/chunks/variables.js +271 -247
  91. package/dist/chunks/variables.js.map +1 -1
  92. package/dist/detail-group.cjs +6 -0
  93. package/dist/detail-group.cjs.map +1 -0
  94. package/dist/detail-group.js +6 -0
  95. package/dist/detail-group.js.map +1 -0
  96. package/dist/dropdown.js +4 -4
  97. package/dist/index.cjs +4 -166
  98. package/dist/index.cjs.map +1 -1
  99. package/dist/index.js +10 -172
  100. package/dist/index.js.map +1 -1
  101. package/dist/number-input.cjs +6 -0
  102. package/dist/number-input.cjs.map +1 -0
  103. package/dist/number-input.js +6 -0
  104. package/dist/number-input.js.map +1 -0
  105. package/dist/select.cjs +1 -1
  106. package/dist/select.js +1 -1
  107. package/dist/types/card/defines.d.ts +1 -1
  108. package/dist/types/detail/defines.d.ts +1 -1
  109. package/dist/types/icon/defines.d.ts +5 -1
  110. package/dist/types/icon/index.d.ts +1 -1
  111. package/dist/types/tabs/defines.d.ts +1 -0
  112. package/dist/types/tabs/tabs.d.ts +3 -0
  113. package/package.json +1 -1
  114. package/src/card/defines.ts +1 -1
  115. package/src/copy-button/copy-button.ts +9 -5
  116. package/src/detail/defines.ts +1 -1
  117. package/src/icon/defines.ts +6 -1
  118. package/src/icon/icon.ts +28 -10
  119. package/src/icon/index.ts +1 -1
  120. package/src/icon/registry.ts +2 -2
  121. package/src/styles/color.css +91 -91
  122. package/src/styles/components/action-button.css +12 -12
  123. package/src/styles/components/alert.css +22 -28
  124. package/src/styles/components/badge.css +13 -20
  125. package/src/styles/components/breadcrumb-item.css +7 -7
  126. package/src/styles/components/button.css +39 -50
  127. package/src/styles/components/card.css +45 -30
  128. package/src/styles/components/checkbox.css +6 -11
  129. package/src/styles/components/copy-button.css +22 -33
  130. package/src/styles/components/detail.css +51 -39
  131. package/src/styles/components/dialog.css +11 -11
  132. package/src/styles/components/divider.css +3 -3
  133. package/src/styles/components/drawer.css +14 -23
  134. package/src/styles/components/dropdown-item.css +7 -8
  135. package/src/styles/components/dropdown.css +3 -4
  136. package/src/styles/components/field-label.css +12 -12
  137. package/src/styles/components/icon-button.css +25 -36
  138. package/src/styles/components/icon.css +1 -1
  139. package/src/styles/components/menu-item.css +7 -8
  140. package/src/styles/components/navbar.css +16 -16
  141. package/src/styles/components/number-input.css +27 -36
  142. package/src/styles/components/pagination.css +31 -31
  143. package/src/styles/components/progress-bar.css +2 -3
  144. package/src/styles/components/radio-group.css +69 -83
  145. package/src/styles/components/select-option.css +5 -5
  146. package/src/styles/components/select.css +21 -33
  147. package/src/styles/components/slider.css +26 -29
  148. package/src/styles/components/spinner.css +7 -9
  149. package/src/styles/components/switch.css +5 -17
  150. package/src/styles/components/tab.css +4 -5
  151. package/src/styles/components/tabs.css +48 -1
  152. package/src/styles/components/tag.css +14 -21
  153. package/src/styles/components/text-input.css +13 -22
  154. package/src/styles/components/textarea.css +12 -21
  155. package/src/styles/components/tooltip.css +4 -5
  156. package/src/styles/components/tree-item.css +12 -12
  157. package/src/styles/radius.css +10 -0
  158. package/src/styles/size.css +7 -7
  159. package/src/styles/variables.css +271 -247
  160. package/src/tabs/defines.ts +1 -0
  161. package/src/tabs/tabs.ts +12 -0
@@ -3,11 +3,11 @@
3
3
 
4
4
  --option-padding: 0.417em 0.667em;
5
5
  --option-bg: transparent;
6
- --option-bg-hover: var(--surface-raised);
7
- --option-bg-selected: color-mix(in srgb, var(--color-primary) 12%, transparent);
8
- --option-color: var(--color-text-main);
9
- --option-color-disabled: var(--color-text-disabled);
10
- --option-color-selected: var(--color-primary);
6
+ --option-bg-hover: var(--ae-surface-raised);
7
+ --option-bg-selected: color-mix(in srgb, var(--ae-color-primary) 12%, transparent);
8
+ --option-color: var(--ae-color-text-main);
9
+ --option-color-disabled: var(--ae-color-text-disabled);
10
+ --option-color-selected: var(--ae-color-primary);
11
11
  --option-font-size: 1em;
12
12
  --option-transition: background 0.1s;
13
13
  }
@@ -2,7 +2,7 @@
2
2
  display: block;
3
3
  flex: 1;
4
4
  min-width: 0;
5
- font-size: var(--size-base);
5
+ font-size: var(--ae-size-base);
6
6
 
7
7
  /* Layout variables */
8
8
  --select-field-gap: 2px;
@@ -11,25 +11,13 @@
11
11
  --select-font-size: 1em;
12
12
  --select-padding: 0.333em 0.583em;
13
13
  --select-border-width: 1px;
14
- --select-border-radius: 2px;
15
- --select-border-color: var(--border-subtle);
16
- --select-border-color-hover: var(--border-default);
17
- --select-border-color-focus: var(--border-focus);
18
- --select-bg: var(--surface-base);
19
- --select-bg-hover: var(--surface-raised);
20
- --select-bg-focus: var(--surface-raised);
21
- --select-color: var(--color-text-muted);
22
14
  --select-transition: border-color 0.12s, background 0.12s;
23
15
 
24
16
  /* Arrow */
25
- --select-arrow-color: var(--color-text-muted);
26
17
  --select-arrow-size: 0.75em;
27
18
 
28
19
  /* Dropdown */
29
- --select-dropdown-bg: var(--surface-overlay);
30
- --select-dropdown-border: var(--border-default);
31
20
  --select-dropdown-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
32
- --select-dropdown-border-radius: 2px;
33
21
  --select-dropdown-max-height: 240px;
34
22
  --select-dropdown-z-index: 1000;
35
23
  }
@@ -51,10 +39,10 @@
51
39
  gap: 0.333em;
52
40
  font-size: var(--select-font-size);
53
41
  padding: var(--select-padding);
54
- border: var(--select-border-width) solid var(--select-border-color);
55
- border-radius: var(--select-border-radius);
56
- background: var(--select-bg);
57
- color: var(--select-color);
42
+ border: var(--select-border-width) solid var(--ae-border-subtle);
43
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs));
44
+ background: var(--ae-surface-base);
45
+ color: var(--ae-color-text-muted);
58
46
  cursor: pointer;
59
47
  transition: var(--select-transition);
60
48
  user-select: none;
@@ -63,13 +51,13 @@
63
51
  }
64
52
 
65
53
  .trigger:hover:not(.disabled) {
66
- border-color: var(--select-border-color-hover);
67
- background: var(--select-bg-hover);
54
+ border-color: var(--ae-border-default);
55
+ background: var(--ae-surface-raised);
68
56
  }
69
57
 
70
58
  .trigger.open {
71
- border-color: var(--select-border-color-focus);
72
- background: var(--select-bg-focus);
59
+ border-color: var(--ae-border-focus);
60
+ background: var(--ae-surface-raised);
73
61
  }
74
62
 
75
63
  .trigger.disabled {
@@ -80,12 +68,12 @@
80
68
 
81
69
  /* Error state */
82
70
  :host([error]) .trigger {
83
- border-color: var(--field-error-color, var(--red));
71
+ border-color: var(--field-error-color, var(--ae-red));
84
72
  }
85
73
 
86
74
  :host([error]) .trigger:hover:not(.disabled),
87
75
  :host([error]) .trigger.open {
88
- border-color: var(--field-error-color, var(--red));
76
+ border-color: var(--field-error-color, var(--ae-red));
89
77
  }
90
78
 
91
79
  .value {
@@ -97,7 +85,7 @@
97
85
  }
98
86
 
99
87
  .placeholder {
100
- color: var(--color-text-disabled);
88
+ color: var(--ae-color-text-disabled);
101
89
  }
102
90
 
103
91
  .selected-list {
@@ -124,10 +112,10 @@
124
112
  flex-shrink: 0;
125
113
  align-self: center;
126
114
  padding: 1px 6px;
127
- background: color-mix(in srgb, var(--color-primary) 12%, transparent);
128
- color: var(--color-primary);
129
- border: 1px solid color-mix(in srgb, var(--color-primary) 30%, transparent);
130
- border-radius: 3px;
115
+ background: color-mix(in srgb, var(--ae-color-primary) 12%, transparent);
116
+ color: var(--ae-color-primary);
117
+ border: 1px solid color-mix(in srgb, var(--ae-color-primary) 30%, transparent);
118
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs));
131
119
  font-size: 0.82em;
132
120
  line-height: 1.6;
133
121
  cursor: default;
@@ -138,7 +126,7 @@
138
126
  flex-shrink: 0;
139
127
  align-self: center;
140
128
  font-size: var(--select-arrow-size);
141
- color: var(--select-arrow-color);
129
+ color: var(--ae-color-text-muted);
142
130
  transition: transform 0.12s;
143
131
  pointer-events: none;
144
132
  line-height: 1;
@@ -152,9 +140,9 @@
152
140
  display: none;
153
141
  position: absolute;
154
142
  z-index: var(--select-dropdown-z-index);
155
- background: var(--select-dropdown-bg);
156
- border: 1px solid var(--select-dropdown-border);
157
- border-radius: var(--select-dropdown-border-radius);
143
+ background: var(--ae-surface-overlay);
144
+ border: 1px solid var(--ae-border-default);
145
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs));
158
146
  box-shadow: var(--select-dropdown-shadow);
159
147
  max-height: var(--select-dropdown-max-height);
160
148
  overflow-y: auto;
@@ -191,5 +179,5 @@
191
179
  }
192
180
 
193
181
  .container:has(.action-controls) .trigger {
194
- border-radius: var(--select-border-radius) 0 0 var(--select-border-radius);
182
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs)) 0 0 var(--ae-border-radius, var(--ae-radius-xs));
195
183
  }
@@ -2,10 +2,7 @@
2
2
  display: block;
3
3
  flex: 1;
4
4
  min-width: 0;
5
- font-size: var(--size-base);
6
-
7
- /* Default color when no [color] attribute — overridden by color.css :host([color=...]) */
8
- --color-solid: var(--color-primary);
5
+ font-size: var(--ae-size-base);
9
6
  }
10
7
 
11
8
  .range-container {
@@ -28,8 +25,8 @@ input[type="range"] {
28
25
  appearance: none;
29
26
  width: 100%;
30
27
  height: 0.333em;
31
- border-radius: 2px;
32
- background: var(--border-subtle);
28
+ border-radius: var(--ae-radius-xs);
29
+ background: var(--ae-border-subtle);
33
30
  outline: none;
34
31
  cursor: pointer;
35
32
  margin: 0;
@@ -46,8 +43,8 @@ input[type="range"]::-webkit-slider-thumb {
46
43
  appearance: none;
47
44
  width: 1.167em;
48
45
  height: 1.167em;
49
- border-radius: 50%;
50
- background: var(--color-solid);
46
+ border-radius: var(--ae-radius-circle);
47
+ background: var(--ae-color-solid);
51
48
  cursor: pointer;
52
49
  transition: background 0.12s, transform 0.12s;
53
50
  }
@@ -55,21 +52,21 @@ input[type="range"]::-webkit-slider-thumb {
55
52
  .input-range::-webkit-slider-thumb:hover,
56
53
  .slider-input::-webkit-slider-thumb:hover,
57
54
  input[type="range"]:hover::-webkit-slider-thumb {
58
- background: var(--color-solid-hover);
55
+ background: var(--ae-color-solid-hover);
59
56
  transform: scale(1.1);
60
57
  }
61
58
 
62
59
  .input-range::-webkit-slider-thumb:active,
63
60
  .slider-input::-webkit-slider-thumb:active,
64
61
  input[type="range"]:active::-webkit-slider-thumb {
65
- background: var(--color-solid-hover);
62
+ background: var(--ae-color-solid-hover);
66
63
  transform: scale(1.2);
67
64
  }
68
65
 
69
66
  .input-range:focus::-webkit-slider-thumb,
70
67
  .slider-input:focus::-webkit-slider-thumb,
71
68
  input[type="range"]:focus::-webkit-slider-thumb {
72
- background: var(--color-solid);
69
+ background: var(--ae-color-solid);
73
70
  outline: none;
74
71
  box-shadow: none;
75
72
  }
@@ -77,7 +74,7 @@ input[type="range"]:focus::-webkit-slider-thumb {
77
74
  .input-range:focus:hover::-webkit-slider-thumb,
78
75
  .slider-input:focus:hover::-webkit-slider-thumb,
79
76
  input[type="range"]:focus:hover::-webkit-slider-thumb {
80
- background: var(--color-solid-hover);
77
+ background: var(--ae-color-solid-hover);
81
78
  outline: none;
82
79
  box-shadow: none;
83
80
  }
@@ -85,7 +82,7 @@ input[type="range"]:focus:hover::-webkit-slider-thumb {
85
82
  .input-range:focus:active::-webkit-slider-thumb,
86
83
  .slider-input:focus:active::-webkit-slider-thumb,
87
84
  input[type="range"]:focus:active::-webkit-slider-thumb {
88
- background: var(--color-solid-hover);
85
+ background: var(--ae-color-solid-hover);
89
86
  outline: none;
90
87
  box-shadow: none;
91
88
  }
@@ -96,8 +93,8 @@ input[type="range"]::-moz-range-thumb {
96
93
  width: 1.167em;
97
94
  height: 1.167em;
98
95
  border: none;
99
- border-radius: 50%;
100
- background: var(--color-solid);
96
+ border-radius: var(--ae-radius-circle);
97
+ background: var(--ae-color-solid);
101
98
  cursor: pointer;
102
99
  transition: background 0.12s, transform 0.12s;
103
100
  }
@@ -105,21 +102,21 @@ input[type="range"]::-moz-range-thumb {
105
102
  .input-range::-moz-range-thumb:hover,
106
103
  .slider-input::-moz-range-thumb:hover,
107
104
  input[type="range"]:hover::-moz-range-thumb {
108
- background: var(--color-solid-hover);
105
+ background: var(--ae-color-solid-hover);
109
106
  transform: scale(1.1);
110
107
  }
111
108
 
112
109
  .input-range::-moz-range-thumb:active,
113
110
  .slider-input::-moz-range-thumb:active,
114
111
  input[type="range"]:active::-moz-range-thumb {
115
- background: var(--color-solid-hover);
112
+ background: var(--ae-color-solid-hover);
116
113
  transform: scale(1.2);
117
114
  }
118
115
 
119
116
  .input-range:focus::-moz-range-thumb,
120
117
  .slider-input:focus::-moz-range-thumb,
121
118
  input[type="range"]:focus::-moz-range-thumb {
122
- background: var(--color-solid);
119
+ background: var(--ae-color-solid);
123
120
  outline: none;
124
121
  box-shadow: none;
125
122
  }
@@ -127,7 +124,7 @@ input[type="range"]:focus::-moz-range-thumb {
127
124
  .input-range:focus:hover::-moz-range-thumb,
128
125
  .slider-input:focus:hover::-moz-range-thumb,
129
126
  input[type="range"]:focus:hover::-moz-range-thumb {
130
- background: var(--color-solid-hover);
127
+ background: var(--ae-color-solid-hover);
131
128
  outline: none;
132
129
  box-shadow: none;
133
130
  }
@@ -135,7 +132,7 @@ input[type="range"]:focus:hover::-moz-range-thumb {
135
132
  .input-range:focus:active::-moz-range-thumb,
136
133
  .slider-input:focus:active::-moz-range-thumb,
137
134
  input[type="range"]:focus:active::-moz-range-thumb {
138
- background: var(--color-solid-hover);
135
+ background: var(--ae-color-solid-hover);
139
136
  outline: none;
140
137
  box-shadow: none;
141
138
  }
@@ -163,7 +160,7 @@ input[type="range"]:disabled::-moz-range-thumb {
163
160
  min-width: 14px;
164
161
  text-align: center;
165
162
  font-size: 12px;
166
- color: var(--color-text-muted);
163
+ color: var(--ae-color-text-muted);
167
164
  font-weight: 500;
168
165
  font-variant-numeric: tabular-nums;
169
166
  pointer-events: none;
@@ -198,10 +195,10 @@ input[type="range"]::-moz-range-thumb {
198
195
  width: 56px;
199
196
  padding: 0 4px;
200
197
  height: 22px;
201
- border: 1px solid var(--border-subtle);
202
- border-radius: 4px;
198
+ border: 1px solid var(--ae-border-subtle);
199
+ border-radius: var(--ae-radius-sm);
203
200
  background: transparent;
204
- color: var(--color-text);
201
+ color: var(--ae-color-text);
205
202
  font-size: 12px;
206
203
  text-align: center;
207
204
  outline: none;
@@ -209,7 +206,7 @@ input[type="range"]::-moz-range-thumb {
209
206
  }
210
207
 
211
208
  .value-input:focus {
212
- border-color: var(--color-solid);
209
+ border-color: var(--ae-color-solid);
213
210
  }
214
211
 
215
212
  .value-input:disabled {
@@ -222,8 +219,8 @@ input[type="range"]::-moz-range-thumb {
222
219
  :host([tracked]) input[type="range"] {
223
220
  background: linear-gradient(
224
221
  to right,
225
- var(--color-solid) var(--fill-pct, 0%),
226
- var(--border-subtle) var(--fill-pct, 0%)
222
+ var(--ae-color-solid) var(--fill-pct, 0%),
223
+ var(--ae-border-subtle) var(--fill-pct, 0%)
227
224
  );
228
225
  }
229
226
 
@@ -267,13 +264,13 @@ input[type="range"]::-moz-range-thumb {
267
264
  display: block;
268
265
  width: 1px;
269
266
  height: 4px;
270
- background: var(--border-default, var(--border-subtle));
267
+ background: var(--ae-border-default, var(--ae-border-subtle));
271
268
  border-radius: 1px;
272
269
  }
273
270
 
274
271
  .mark-label {
275
272
  font-size: 10px;
276
- color: var(--color-text-muted);
273
+ color: var(--ae-color-text-muted);
277
274
  white-space: nowrap;
278
275
  }
279
276
 
@@ -6,8 +6,6 @@
6
6
  vertical-align: middle;
7
7
  --spinner-size: 1.75em;
8
8
  --spinner-thickness: 0.15em;
9
- --spinner-color: var(--color-solid);
10
- --spinner-track-color: var(--color-bg-subtle, rgba(0, 0, 0, 0.08));
11
9
  --spinner-speed: 0.75s;
12
10
  }
13
11
 
@@ -20,9 +18,9 @@
20
18
  display: inline-block;
21
19
  width: var(--spinner-size);
22
20
  height: var(--spinner-size);
23
- border-radius: 50%;
24
- border: var(--spinner-thickness) solid var(--spinner-track-color);
25
- border-top-color: var(--spinner-color);
21
+ border-radius: var(--ae-radius-circle);
22
+ border: var(--spinner-thickness) solid var(--ae-color-bg-subtle, rgba(0, 0, 0, 0.08));
23
+ border-top-color: var(--ae-color-solid);
26
24
  animation: ae-spin var(--spinner-speed) linear infinite;
27
25
  box-sizing: border-box;
28
26
  }
@@ -35,7 +33,7 @@
35
33
  width: auto;
36
34
  height: var(--spinner-size);
37
35
  border: none;
38
- border-radius: 0;
36
+ border-radius: var(--ae-radius-square);
39
37
  animation: none;
40
38
  background: transparent;
41
39
  }
@@ -44,8 +42,8 @@
44
42
  display: inline-block;
45
43
  width: calc(var(--spinner-size) * 0.28);
46
44
  height: calc(var(--spinner-size) * 0.28);
47
- border-radius: 50%;
48
- background: var(--spinner-color);
45
+ border-radius: var(--ae-radius-circle);
46
+ background: var(--ae-color-solid);
49
47
  animation: ae-bounce var(--spinner-speed) ease-in-out infinite;
50
48
  }
51
49
 
@@ -69,7 +67,7 @@
69
67
  @media (prefers-reduced-motion: reduce) {
70
68
  .track {
71
69
  animation: none;
72
- border-top-color: var(--spinner-color);
70
+ border-top-color: var(--ae-color-solid);
73
71
  opacity: 0.6;
74
72
  }
75
73
 
@@ -1,6 +1,6 @@
1
1
  :host {
2
2
  display: block;
3
- font-size: var(--size-base);
3
+ font-size: var(--ae-size-base);
4
4
 
5
5
  --switch-field-gap: 4px;
6
6
 
@@ -9,13 +9,10 @@
9
9
  --toggle-slider-size: 1em;
10
10
  --toggle-gap: calc((var(--toggle-height) - var(--toggle-slider-size)) / 2);
11
11
  --toggle-border-radius: calc(var(--toggle-height) / 2);
12
- --toggle-bg: var(--color-gray);
13
- --toggle-bg-checked: var(--color-solid);
12
+ --toggle-bg: var(--ae-color-gray);
13
+ --toggle-bg-checked: var(--ae-color-solid);
14
14
  --toggle-slider-bg: white;
15
15
  --toggle-transition: 0.2s;
16
-
17
- /* Default color when no [color] attribute — overridden by color.css :host([color=...]) */
18
- --color-solid: var(--color-primary);
19
16
  }
20
17
 
21
18
  .switch-container {
@@ -42,7 +39,7 @@
42
39
  margin: 0;
43
40
  z-index: 1;
44
41
  border: none;
45
- border-radius: 0;
42
+ border-radius: var(--ae-radius-square);
46
43
  background: none;
47
44
  accent-color: unset;
48
45
  }
@@ -71,7 +68,7 @@
71
68
  left: var(--toggle-gap);
72
69
  top: var(--toggle-gap);
73
70
  background: var(--toggle-slider-bg);
74
- border-radius: 50%;
71
+ border-radius: var(--ae-radius-circle);
75
72
  transition: var(--toggle-transition);
76
73
  }
77
74
 
@@ -88,11 +85,6 @@
88
85
  pointer-events: auto;
89
86
  }
90
87
 
91
- /* ===== Icon size override ===== */
92
- /* ae-icon shadow DOM sets :host { font-size: 20px }, external styles beat it.
93
- Font-size on the CONTAINER span must NOT be set here — doing so causes
94
- double-multiplying (container 0.72× then ae-icon 0.72× again = tiny icons).
95
- Only the ae-icon element itself is targeted. */
96
88
  .toggle-knob-icon ae-icon,
97
89
  .track-icon ae-icon {
98
90
  font-size: var(--toggle-icon-size, calc(var(--toggle-slider-size) * 0.72));
@@ -100,7 +92,6 @@
100
92
  height: 1em;
101
93
  }
102
94
 
103
- /* ===== Knob icons ===== */
104
95
  .toggle-knob-icon {
105
96
  position: absolute;
106
97
  height: var(--toggle-slider-size);
@@ -131,9 +122,6 @@
131
122
  opacity: 0;
132
123
  }
133
124
 
134
- /* ===== Track icons ===== */
135
- /* Positioned at the same location as the knob in each state (the circular ends),
136
- so the icon appears to live inside the circle, not on the flat track sides. */
137
125
  .track-icon {
138
126
  position: absolute;
139
127
  top: var(--toggle-gap);
@@ -1,7 +1,6 @@
1
1
  :host {
2
2
  display: inline-flex;
3
3
  cursor: pointer;
4
- margin-bottom: -1px;
5
4
  }
6
5
 
7
6
  button {
@@ -24,17 +23,17 @@ button {
24
23
  }
25
24
 
26
25
  button:hover {
27
- color: var(--ae-tab-hover-color, var(--color-primary));
26
+ color: var(--ae-tab-hover-color, var(--ae-color-primary));
28
27
  }
29
28
 
30
29
  button:focus-visible {
31
- outline: 2px solid var(--color-primary);
30
+ outline: 2px solid var(--ae-color-primary);
32
31
  outline-offset: -2px;
33
32
  }
34
33
 
35
34
  :host([active]) button {
36
- color: var(--ae-tab-active-color, var(--color-primary));
37
- border-bottom-color: var(--ae-tab-active-color, var(--color-primary));
35
+ color: var(--ae-tab-active-color, var(--ae-color-primary));
36
+ border-bottom-color: var(--ae-tab-active-color, var(--ae-color-primary));
38
37
  }
39
38
 
40
39
  :host([disabled]) button {
@@ -3,15 +3,62 @@
3
3
  flex-direction: column;
4
4
  gap: var(--ae-tabs-gap, 0);
5
5
  overflow: hidden;
6
+ border: 1px solid transparent;
7
+ border-radius: var(--ae-border-radius, var(--ae-radius-lg));
8
+ background: transparent;
6
9
  }
7
10
 
8
11
  [part="tab-nav"] {
9
12
  display: flex;
10
13
  flex-shrink: 0;
11
- border-bottom: 1px solid var(--ae-tabs-border-color, var(--border-default));
12
14
  }
13
15
 
14
16
  [part="panels"] {
15
17
  flex: 1;
16
18
  overflow: auto;
17
19
  }
20
+
21
+ :host([variant="filled"]) {
22
+ border-color: var(--ae-color-gray);
23
+ background: var(--ae-color-gray);
24
+ }
25
+
26
+ :host([variant="filled"]) [part="tab-nav"] {
27
+ border-bottom: 1px solid color-mix(in srgb, var(--ae-color-gray), black 15%);
28
+ }
29
+
30
+ :host([variant="outlined"]) {
31
+ border-color: var(--ae-border-hover);
32
+ background: transparent;
33
+ }
34
+
35
+ :host([variant="outlined"]) [part="tab-nav"] {
36
+ border-bottom: 1px solid var(--ae-border-hover);
37
+ }
38
+
39
+ :host([variant="faint"]) {
40
+ border-color: var(--ae-border-default);
41
+ background: var(--ae-border-subtle);
42
+ }
43
+
44
+ :host([variant="faint"]) [part="tab-nav"] {
45
+ border-bottom: 1px solid var(--ae-border-default);
46
+ }
47
+
48
+ :host([variant="subtle"]) {
49
+ border-color: transparent;
50
+ background: var(--ae-border-subtle);
51
+ }
52
+
53
+ :host([variant="subtle"]) [part="tab-nav"] {
54
+ border-bottom: 1px solid transparent;
55
+ }
56
+
57
+ :host([variant="text"]) {
58
+ border-color: transparent;
59
+ background: transparent;
60
+ }
61
+
62
+ :host([variant="text"]) [part="tab-nav"] {
63
+ border-bottom: 1px solid transparent;
64
+ }
@@ -1,13 +1,6 @@
1
1
  :host {
2
2
  display: inline-flex;
3
3
  align-items: center;
4
- --tag-solid-bg: var(--color-solid);
5
- --tag-solid-color: var(--color-on-solid);
6
- --tag-border: var(--color-border);
7
- --tag-accent: var(--color-accent);
8
- --tag-subtle-bg: var(--color-bg-subtle);
9
- --tag-subtle-color: var(--color-text-subtle);
10
- --tag-subtle-border: var(--color-border-subtle);
11
4
  }
12
5
 
13
6
  .tag {
@@ -21,42 +14,42 @@
21
14
  line-height: 1.2;
22
15
  font-size: 1em;
23
16
  padding: 0.15em 0.5em 0.15em 0.6em;
24
- border-radius: 4px;
25
- border: 1px solid var(--tag-solid-bg);
26
- background: var(--tag-solid-bg);
27
- color: var(--tag-solid-color);
17
+ border-radius: var(--ae-border-radius, var(--ae-radius-sm));
18
+ border: 1px solid var(--ae-color-solid);
19
+ background: var(--ae-color-solid);
20
+ color: var(--ae-color-on-solid);
28
21
  max-width: 160px;
29
22
  min-width: 0;
30
23
  }
31
24
 
32
25
  :host([variant="outlined"]) .tag {
33
26
  background: transparent;
34
- border-color: var(--tag-border);
35
- color: var(--tag-accent);
27
+ border-color: var(--ae-color-border);
28
+ color: var(--ae-color-accent);
36
29
  }
37
30
 
38
31
  :host([variant="faint"]) .tag {
39
- background: var(--tag-subtle-bg);
40
- border-color: var(--tag-subtle-border);
41
- color: var(--tag-subtle-color);
32
+ background: var(--ae-color-bg-subtle);
33
+ border-color: var(--ae-color-border-subtle);
34
+ color: var(--ae-color-text-subtle);
42
35
  }
43
36
 
44
37
  :host([variant="subtle"]) .tag {
45
- background: var(--tag-subtle-bg);
38
+ background: var(--ae-color-bg-subtle);
46
39
  border-color: transparent;
47
- color: var(--tag-subtle-color);
40
+ color: var(--ae-color-text-subtle);
48
41
  }
49
42
 
50
43
  :host([variant="text"]) .tag {
51
44
  background: transparent;
52
45
  border-color: transparent;
53
- color: var(--tag-accent);
46
+ color: var(--ae-color-accent);
54
47
  padding-left: 0;
55
48
  padding-right: 0;
56
49
  }
57
50
 
58
51
 
59
- :host([pill]) .tag { border-radius: 999px; }
52
+ :host([pill]) .tag { border-radius: var(--ae-radius-pill); }
60
53
 
61
54
  .tag-content {
62
55
  flex: 1;
@@ -78,7 +71,7 @@
78
71
  line-height: 1;
79
72
  font-size: 1em;
80
73
  padding: 0 1px;
81
- border-radius: 2px;
74
+ border-radius: var(--ae-border-radius, var(--ae-radius-xs));
82
75
  background: transparent;
83
76
  border: none;
84
77
  color: inherit;