@svadmin/surface 0.9.0 → 0.11.0

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 (145) hide show
  1. package/README.md +9 -3
  2. package/STYLING.md +4 -2
  3. package/compatibility.json +18 -7
  4. package/dist/agent-contract.d.ts +1 -1
  5. package/dist/agent-contract.js +5 -2
  6. package/dist/builtin-schemas.js +1 -1
  7. package/dist/business-data.d.ts +16 -0
  8. package/dist/business-data.js +42 -0
  9. package/dist/business-definitions.d.ts +28 -0
  10. package/dist/business-definitions.js +53 -0
  11. package/dist/business.d.ts +3 -0
  12. package/dist/business.js +17 -0
  13. package/dist/components/ActivityFeedWidget.svelte +34 -0
  14. package/dist/components/ActivityFeedWidget.svelte.d.ts +4 -0
  15. package/dist/components/MetricWidget.svelte +2 -1
  16. package/dist/components/MetricWidget.svelte.d.ts +1 -0
  17. package/dist/components/ResourceDetailWidget.svelte +56 -0
  18. package/dist/components/ResourceDetailWidget.svelte.d.ts +4 -0
  19. package/dist/components/ResourceFormBody.svelte +1 -1
  20. package/dist/components/ResourceTableWidget.svelte +2 -1
  21. package/dist/components/ResourceTableWidget.svelte.d.ts +1 -0
  22. package/dist/components/SurfaceEditPreview.svelte +1 -1
  23. package/dist/components/SurfaceRenderer.svelte +2 -1
  24. package/dist/components/SurfaceRenderer.svelte.d.ts +1 -0
  25. package/dist/design-contract.d.ts +2 -0
  26. package/dist/design-contract.js +2 -0
  27. package/dist/localization.d.ts +11 -1
  28. package/dist/localization.js +20 -0
  29. package/dist/openui.js +17 -1
  30. package/dist/recipes.d.ts +20 -0
  31. package/dist/recipes.js +20 -0
  32. package/dist/styles/{editor.generated.js → editor.js} +1 -1
  33. package/dist/styles.css +41 -1260
  34. package/dist/types.d.ts +1 -1
  35. package/dist/validation.js +12 -6
  36. package/dist/workflows/catalog.js +1 -1
  37. package/package.json +15 -8
  38. package/dist/styled-system/css/conditions.js +0 -36
  39. package/dist/styled-system/css/css.d.ts +0 -22
  40. package/dist/styled-system/css/css.js +0 -45
  41. package/dist/styled-system/css/cva.d.ts +0 -6
  42. package/dist/styled-system/css/cva.js +0 -87
  43. package/dist/styled-system/css/cx.d.ts +0 -5
  44. package/dist/styled-system/css/cx.js +0 -15
  45. package/dist/styled-system/css/index.d.ts +0 -5
  46. package/dist/styled-system/css/index.js +0 -4
  47. package/dist/styled-system/css/sva.d.ts +0 -4
  48. package/dist/styled-system/css/sva.js +0 -46
  49. package/dist/styled-system/design-contract.d.ts +0 -13
  50. package/dist/styled-system/design-contract.js +0 -11
  51. package/dist/styled-system/helpers.js +0 -316
  52. package/dist/styled-system/patterns/aspect-ratio.d.ts +0 -20
  53. package/dist/styled-system/patterns/aspect-ratio.js +0 -38
  54. package/dist/styled-system/patterns/bleed.d.ts +0 -21
  55. package/dist/styled-system/patterns/bleed.js +0 -24
  56. package/dist/styled-system/patterns/box.d.ts +0 -20
  57. package/dist/styled-system/patterns/box.js +0 -15
  58. package/dist/styled-system/patterns/center.d.ts +0 -20
  59. package/dist/styled-system/patterns/center.js +0 -21
  60. package/dist/styled-system/patterns/circle.d.ts +0 -20
  61. package/dist/styled-system/patterns/circle.js +0 -25
  62. package/dist/styled-system/patterns/container.d.ts +0 -20
  63. package/dist/styled-system/patterns/container.js +0 -21
  64. package/dist/styled-system/patterns/cq.d.ts +0 -21
  65. package/dist/styled-system/patterns/cq.js +0 -21
  66. package/dist/styled-system/patterns/divider.d.ts +0 -22
  67. package/dist/styled-system/patterns/divider.js +0 -25
  68. package/dist/styled-system/patterns/flex.d.ts +0 -26
  69. package/dist/styled-system/patterns/flex.js +0 -26
  70. package/dist/styled-system/patterns/float.d.ts +0 -23
  71. package/dist/styled-system/patterns/float.js +0 -52
  72. package/dist/styled-system/patterns/grid-item.d.ts +0 -25
  73. package/dist/styled-system/patterns/grid-item.js +0 -25
  74. package/dist/styled-system/patterns/grid.d.ts +0 -24
  75. package/dist/styled-system/patterns/grid.js +0 -27
  76. package/dist/styled-system/patterns/hstack.d.ts +0 -21
  77. package/dist/styled-system/patterns/hstack.js +0 -24
  78. package/dist/styled-system/patterns/index.d.ts +0 -21
  79. package/dist/styled-system/patterns/index.js +0 -20
  80. package/dist/styled-system/patterns/link-overlay.d.ts +0 -20
  81. package/dist/styled-system/patterns/link-overlay.js +0 -24
  82. package/dist/styled-system/patterns/spacer.d.ts +0 -20
  83. package/dist/styled-system/patterns/spacer.js +0 -25
  84. package/dist/styled-system/patterns/square.d.ts +0 -20
  85. package/dist/styled-system/patterns/square.js +0 -24
  86. package/dist/styled-system/patterns/stack.d.ts +0 -23
  87. package/dist/styled-system/patterns/stack.js +0 -24
  88. package/dist/styled-system/patterns/visually-hidden.d.ts +0 -20
  89. package/dist/styled-system/patterns/visually-hidden.js +0 -18
  90. package/dist/styled-system/patterns/vstack.d.ts +0 -21
  91. package/dist/styled-system/patterns/vstack.js +0 -24
  92. package/dist/styled-system/patterns/wrap.d.ts +0 -24
  93. package/dist/styled-system/patterns/wrap.js +0 -25
  94. package/dist/styled-system/recipes/content-header.d.ts +0 -31
  95. package/dist/styled-system/recipes/content-header.js +0 -65
  96. package/dist/styled-system/recipes/content-page.d.ts +0 -34
  97. package/dist/styled-system/recipes/content-page.js +0 -43
  98. package/dist/styled-system/recipes/create-recipe.js +0 -82
  99. package/dist/styled-system/recipes/index.d.ts +0 -17
  100. package/dist/styled-system/recipes/index.js +0 -16
  101. package/dist/styled-system/recipes/metric-block.d.ts +0 -34
  102. package/dist/styled-system/recipes/metric-block.js +0 -76
  103. package/dist/styled-system/recipes/product-list.d.ts +0 -31
  104. package/dist/styled-system/recipes/product-list.js +0 -73
  105. package/dist/styled-system/recipes/product-section.d.ts +0 -31
  106. package/dist/styled-system/recipes/product-section.js +0 -49
  107. package/dist/styled-system/recipes/product-settings-row.d.ts +0 -34
  108. package/dist/styled-system/recipes/product-settings-row.js +0 -58
  109. package/dist/styled-system/recipes/product-settings.d.ts +0 -31
  110. package/dist/styled-system/recipes/product-settings.js +0 -57
  111. package/dist/styled-system/recipes/product-status.d.ts +0 -34
  112. package/dist/styled-system/recipes/product-status.js +0 -45
  113. package/dist/styled-system/recipes/product-toolbar.d.ts +0 -31
  114. package/dist/styled-system/recipes/product-toolbar.js +0 -41
  115. package/dist/styled-system/recipes/product-workspace.d.ts +0 -34
  116. package/dist/styled-system/recipes/product-workspace.js +0 -58
  117. package/dist/styled-system/recipes/surface-metric.d.ts +0 -38
  118. package/dist/styled-system/recipes/surface-metric.js +0 -63
  119. package/dist/styled-system/recipes/surface-table.d.ts +0 -34
  120. package/dist/styled-system/recipes/surface-table.js +0 -62
  121. package/dist/styled-system/recipes/ui-badge.d.ts +0 -31
  122. package/dist/styled-system/recipes/ui-badge.js +0 -38
  123. package/dist/styled-system/recipes/ui-button.d.ts +0 -32
  124. package/dist/styled-system/recipes/ui-button.js +0 -43
  125. package/dist/styled-system/recipes/ui-input.d.ts +0 -31
  126. package/dist/styled-system/recipes/ui-input.js +0 -49
  127. package/dist/styled-system/recipes/ui-textarea.d.ts +0 -31
  128. package/dist/styled-system/recipes/ui-textarea.js +0 -24
  129. package/dist/styled-system/styles.css +0 -1257
  130. package/dist/styled-system/tokens/index.d.ts +0 -9
  131. package/dist/styled-system/tokens/index.js +0 -268
  132. package/dist/styled-system/tokens/tokens.d.ts +0 -36
  133. package/dist/styled-system/types/composition.d.ts +0 -227
  134. package/dist/styled-system/types/conditions.d.ts +0 -236
  135. package/dist/styled-system/types/csstype.d.ts +0 -22570
  136. package/dist/styled-system/types/index.d.ts +0 -6
  137. package/dist/styled-system/types/parts.d.ts +0 -8
  138. package/dist/styled-system/types/pattern.d.ts +0 -78
  139. package/dist/styled-system/types/prop-type.d.ts +0 -223
  140. package/dist/styled-system/types/recipe.d.ts +0 -181
  141. package/dist/styled-system/types/selectors.d.ts +0 -59
  142. package/dist/styled-system/types/static-css.d.ts +0 -56
  143. package/dist/styled-system/types/style-props.d.ts +0 -8088
  144. package/dist/styled-system/types/system-types.d.ts +0 -151
  145. /package/dist/styles/{editor.generated.d.ts → editor.d.ts} +0 -0
package/dist/styles.css CHANGED
@@ -1,1262 +1,43 @@
1
- :where(:root, :host, .svadmin-theme, .dark, [data-theme]) {
2
- --svadmin-spacing-xs: 0.25rem;
3
- --svadmin-spacing-sm: 0.75rem;
4
- --svadmin-spacing-md: 1rem;
5
- --svadmin-spacing-lg: 1.25rem;
6
- --svadmin-spacing-content-stack: var(--spacing);
7
- --svadmin-spacing-content-inline: calc(var(--spacing) * 2);
8
- --svadmin-spacing-content-section: calc(var(--spacing) * 3);
9
- --svadmin-spacing-content-panel: calc(var(--spacing) * 4);
10
- --svadmin-spacing-content-page: calc(var(--spacing) * 6);
11
- --svadmin-sizes-content-narrow: var(--container-3xl);
12
- --svadmin-sizes-content-default: 74rem;
13
- --svadmin-sizes-content-wide: 92rem;
14
- --svadmin-sizes-content-description: var(--container-2xl);
15
- --svadmin-sizes-content-skeleton-height: calc(var(--spacing) * 8);
16
- --svadmin-sizes-content-skeleton-width: calc(var(--spacing) * 24);
17
- --svadmin-font-sizes-compact: 0.75rem;
18
- --svadmin-font-sizes-body: 0.875rem;
19
- --svadmin-font-sizes-content-caption: var(--text-xs);
20
- --svadmin-font-sizes-content-body: var(--text-sm);
21
- --svadmin-font-sizes-content-title: var(--text-xl);
22
- --svadmin-font-sizes-content-metric: var(--text-2xl);
23
- --svadmin-line-heights-content-caption: var(--text-xs--line-height);
24
- --svadmin-line-heights-content-body: var(--text-sm--line-height);
25
- --svadmin-line-heights-content-title: var(--leading-tight);
26
- --svadmin-line-heights-content-description: calc(var(--spacing) * 6);
27
- --svadmin-line-heights-content-metric: var(--text-2xl--line-height);
28
- --svadmin-font-weights-content-medium: var(--font-weight-medium);
29
- --svadmin-font-weights-content-strong: var(--font-weight-semibold);
30
- --svadmin-letter-spacings-content-normal: var(--tracking-normal);
31
- --svadmin-shadows-content-card: 0 0 0 0 transparent, 0 0 0 0 transparent, 0 0 0 0 transparent, 0 0 0 0 transparent, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
32
- --svadmin-colors-surface: var(--card);
33
- --svadmin-colors-foreground: var(--foreground);
34
- --svadmin-colors-muted: var(--muted-foreground);
35
- --svadmin-colors-border: var(--border);
36
- --svadmin-colors-success: var(--success);
37
- --svadmin-colors-warning: var(--warning);
38
- --svadmin-colors-danger: var(--destructive);
39
- --svadmin-colors-info: var(--info);
40
- --svadmin-colors-content-foreground: var(--color-foreground);
41
- --svadmin-colors-content-muted: var(--color-muted-foreground);
42
- --svadmin-colors-content-card: var(--color-card);
43
- --svadmin-colors-content-border: var(--color-border);
44
- --svadmin-colors-content-positive: var(--color-success);
45
- --svadmin-colors-content-negative: var(--color-destructive);
46
- --svadmin-colors-content-warning: var(--color-warning-foreground);
47
- --svadmin-radii-surface: var(--radius-lg);
48
- --svadmin-radii-content-card: var(--radius-lg);
49
- }
50
-
51
- @layer components {
52
-
53
- .svadmin-ui-badge {
54
- border: 1px solid transparent;
55
- padding: 0.125rem 0.625rem;
56
- gap: 0.25rem;
57
- overflow: hidden;
58
- border-radius: var(--radius-sm);
59
- transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
60
- display: inline-flex;
61
- flex-shrink: 0;
62
- align-items: center;
63
- justify-content: center;
64
- font-size: 0.75rem;
65
- font-weight: 600;
66
- line-height: 1;
67
- white-space: nowrap;
68
- width: fit-content;
69
- min-height: 1.25rem;
70
- }
71
-
72
- .svadmin-ui-badge > svg {
73
- pointer-events: none;
74
- width: 0.75rem;
75
- height: 0.75rem;
76
- }
77
-
78
- .svadmin-ui-button {
79
- border: 1px solid transparent;
80
- gap: 0.375rem;
81
- border-radius: var(--radius-md);
82
- outline: 2px solid transparent;
83
- outline-offset: 2px;
84
- transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
85
- display: inline-flex;
86
- flex-shrink: 0;
87
- align-items: center;
88
- justify-content: center;
89
- background-clip: padding-box;
90
- -webkit-background-clip: padding-box;
91
- font-size: 0.875rem;
92
- font-weight: 500;
93
- line-height: 1;
94
- white-space: nowrap;
95
- -webkit-user-select: none;
96
- user-select: none;
97
- }
98
-
99
- .svadmin-ui-button > svg {
100
- flex-shrink: 0;
101
- pointer-events: none;
102
- width: 1rem;
103
- height: 1rem;
104
- }
105
-
106
- .svadmin-ui-button:disabled,.svadmin-ui-button[aria-disabled="true"] {
107
- pointer-events: none;
108
- opacity: 0.5;
109
- }
110
-
111
- .svadmin-ui-button:active {
112
- transform: translateY(1px);
113
- }
114
-
115
- .svadmin-ui-textarea {
116
- border: 1px solid var(--border);
117
- padding: 0.5rem 0.75rem;
118
- background: transparent;
119
- font: inherit;
120
- border-radius: 0.5rem;
121
- outline: 2px solid transparent;
122
- outline-offset: 2px;
123
- transition: border-color 120ms ease, box-shadow 120ms ease, background-color 120ms ease;
124
- resize: vertical;
125
- color: var(--foreground);
126
- font-size: 0.875rem;
127
- width: 100%;
128
- min-height: 5rem;
129
- }
130
-
131
- .svadmin-ui-textarea[aria-invalid="true"] {
132
- border-color: var(--destructive);
133
- box-shadow: 0 0 0 3px var(--destructive);
134
- }
135
-
136
- .svadmin-ui-textarea:disabled {
137
- cursor: not-allowed;
138
- opacity: 0.5;
139
- }
140
-
141
- .svadmin-ui-textarea::placeholder {
142
- color: var(--muted-foreground);
143
- }
144
-
145
- .svadmin-ui-textarea:focus-visible {
146
- border-color: var(--ring);
147
- box-shadow: 0 0 0 3px var(--ring);
148
- }
149
- }
150
-
151
- @supports (color: color-mix(in lab, red, red)) {
152
- @layer components {
153
- .svadmin-ui-textarea[aria-invalid="true"] {
154
- box-shadow: 0 0 0 3px color-mix(in srgb, var(--destructive) 20%, transparent);
155
- }
156
-
157
- .svadmin-ui-textarea:focus-visible {
158
- box-shadow: 0 0 0 3px color-mix(in srgb, var(--ring) 20%, transparent);
159
- }
160
- }
161
- }
162
-
163
- @layer components {
164
-
165
- .svadmin-ui-badge--variant_default {
166
- background: var(--primary);
167
- color: var(--primary-foreground);
168
- }
169
-
170
- .svadmin-ui-badge--variant_secondary {
171
- background: var(--secondary);
172
- color: var(--secondary-foreground);
173
- }
174
-
175
- .svadmin-ui-badge--variant_destructive {
176
- background: var(--muted);
177
- border-color: var(--destructive);
178
- color: var(--foreground);
179
- }
180
- }
181
-
182
- @supports (color: color-mix(in lab, red, red)) {
183
- @layer components {
184
- .svadmin-ui-badge--variant_destructive {
185
- background: color-mix(in oklch, var(--destructive) 10%, transparent);
186
- border-color: color-mix(in oklch, var(--destructive) 20%, transparent);
187
- color: var(--destructive);
188
- }
189
- }
190
- }
191
-
192
- @layer components {
193
-
194
- .svadmin-ui-badge--variant_subtle {
195
- background: var(--muted);
196
- border-color: var(--primary);
197
- color: var(--foreground);
198
- }
199
- }
200
-
201
- @supports (color: color-mix(in lab, red, red)) {
202
- @layer components {
203
- .svadmin-ui-badge--variant_subtle {
204
- background: color-mix(in oklch, var(--primary) 10%, transparent);
205
- border-color: color-mix(in oklch, var(--primary) 20%, transparent);
206
- color: var(--primary);
207
- }
208
- }
209
- }
210
-
211
- @layer components {
212
-
213
- .svadmin-ui-badge--variant_subtle-success {
214
- background: var(--muted);
215
- border-color: var(--success);
216
- color: var(--foreground);
217
- }
218
- }
219
-
220
- @supports (color: color-mix(in lab, red, red)) {
221
- @layer components {
222
- .svadmin-ui-badge--variant_subtle-success {
223
- background: color-mix(in oklch, var(--success) 10%, transparent);
224
- border-color: color-mix(in oklch, var(--success) 20%, transparent);
225
- color: var(--success);
226
- }
227
- }
228
- }
229
-
230
- @layer components {
231
-
232
- .svadmin-ui-badge--variant_subtle-warning {
233
- background: var(--muted);
234
- border-color: var(--warning);
235
- color: var(--foreground);
236
- }
237
- }
238
-
239
- @supports (color: color-mix(in lab, red, red)) {
240
- @layer components {
241
- .svadmin-ui-badge--variant_subtle-warning {
242
- background: color-mix(in oklch, var(--warning) 10%, transparent);
243
- border-color: color-mix(in oklch, var(--warning) 20%, transparent);
244
- color: var(--warning);
245
- }
246
- }
247
- }
248
-
249
- @layer components {
250
-
251
- .svadmin-ui-badge--variant_subtle-destructive {
252
- background: var(--muted);
253
- border-color: var(--destructive);
254
- color: var(--foreground);
255
- }
256
- }
257
-
258
- @supports (color: color-mix(in lab, red, red)) {
259
- @layer components {
260
- .svadmin-ui-badge--variant_subtle-destructive {
261
- background: color-mix(in oklch, var(--destructive) 10%, transparent);
262
- border-color: color-mix(in oklch, var(--destructive) 20%, transparent);
263
- color: var(--destructive);
264
- }
265
- }
266
- }
267
-
268
- @layer components {
269
-
270
- .svadmin-ui-badge--variant_subtle-pill {
271
- background: var(--muted);
272
- border-color: var(--border);
273
- border-radius: 999px;
274
- color: var(--muted-foreground);
275
- font-weight: 500;
276
- }
277
- }
278
-
279
- @supports (color: color-mix(in lab, red, red)) {
280
- @layer components {
281
- .svadmin-ui-badge--variant_subtle-pill {
282
- background: color-mix(in oklch, var(--muted) 70%, transparent);
283
- border-color: color-mix(in oklch, var(--border) 80%, transparent);
284
- }
285
- }
286
- }
287
-
288
- @layer components {
289
-
290
- .svadmin-ui-badge--variant_outline {
291
- border-color: var(--color-border, var(--border));
292
- color: var(--foreground);
293
- }
294
-
295
- .svadmin-ui-badge--variant_outline:hover,.svadmin-ui-badge--variant_ghost:hover {
296
- background: var(--muted);
297
- color: var(--muted-foreground);
298
- }
299
-
300
- .svadmin-ui-badge--variant_link {
301
- text-decoration: underline;
302
- color: var(--primary);
303
- text-underline-offset: 0.25rem;
304
- }
305
-
306
- .svadmin-ui-button--variant_default {
307
- background: var(--primary);
308
- color: var(--primary-foreground);
309
- }
310
-
311
- .svadmin-ui-button--variant_default:hover {
312
- background: var(--primary);
313
- }
314
- }
315
-
316
- @supports (color: color-mix(in lab, red, red)) {
317
- @layer components {
318
- .svadmin-ui-button--variant_default:hover {
319
- background: color-mix(in oklch, var(--primary) 80%, var(--foreground));
320
- }
321
- }
322
- }
323
-
324
- @layer components {
325
-
326
- .svadmin-ui-button--size_default {
327
- padding: 0 0.75rem;
328
- min-height: 2.25rem;
329
- }
330
-
331
- .svadmin-ui-button--variant_outline {
332
- background: var(--background);
333
- border-color: var(--color-border, var(--border));
334
- color: var(--foreground);
335
- }
336
-
337
- .svadmin-ui-button--variant_outline:hover {
338
- background: var(--muted);
339
- }
340
-
341
- .svadmin-ui-button--variant_secondary {
342
- background: var(--secondary);
343
- color: var(--secondary-foreground);
344
- }
345
-
346
- .svadmin-ui-button--variant_secondary:hover,.svadmin-ui-button--variant_ghost:hover,.svadmin-ui-button--variant_destructive {
347
- background: var(--muted);
348
- color: var(--foreground);
349
- }
350
-
351
- .svadmin-ui-button--variant_destructive {
352
- border-color: var(--destructive);
353
- }
354
-
355
- .svadmin-ui-button--variant_destructive:hover {
356
- background: var(--muted);
357
- }
358
- }
359
-
360
- @supports (color: color-mix(in lab, red, red)) {
361
- @layer components {
362
- .svadmin-ui-button--variant_destructive {
363
- background: color-mix(in oklch, var(--destructive) 10%, transparent);
364
- border-color: transparent;
365
- color: var(--destructive);
366
- }
367
-
368
- .svadmin-ui-button--variant_destructive:hover {
369
- background: color-mix(in oklch, var(--destructive) 20%, transparent);
370
- }
371
- }
372
- }
373
-
374
- @layer components {
375
-
376
- .svadmin-ui-button--variant_link {
377
- text-decoration: underline;
378
- color: var(--primary);
379
- text-underline-offset: 0.25rem;
380
- }
381
-
382
- .svadmin-ui-button--size_xs {
383
- padding: 0 0.5rem;
384
- font-size: 0.75rem;
385
- min-height: 1.5rem;
386
- }
387
-
388
- .svadmin-ui-button--size_sm {
389
- padding: 0 0.75rem;
390
- font-size: 0.8rem;
391
- min-height: 2rem;
392
- }
393
-
394
- .svadmin-ui-button--size_lg {
395
- padding: 0 1rem;
396
- min-height: 2.5rem;
397
- }
398
-
399
- .svadmin-ui-button--size_icon {
400
- width: 2.25rem;
401
- height: 2.25rem;
402
- }
403
-
404
- .svadmin-ui-button--size_icon-xs {
405
- width: 1.5rem;
406
- height: 1.5rem;
407
- }
408
-
409
- .svadmin-ui-button--size_icon-sm {
410
- width: 2rem;
411
- height: 2rem;
412
- }
413
-
414
- .svadmin-ui-button--size_icon-lg {
415
- width: 2.5rem;
416
- height: 2.5rem;
417
- }
418
- }
419
-
420
- .svadmin-surface-metric__root {
421
- min-width: 0;
422
- }
423
-
424
- .svadmin-surface-metric__card {
425
- border-inline-start-style: solid;
426
- border-inline-start-width: 3px;
427
- }
428
-
429
- .svadmin-surface-metric__description {
430
- color: var(--svadmin-colors-muted);
431
- }
432
-
1
+ /* 独立的有限语义样式;保持旧 UI peer 和无宿主编译器的消费方式。 */
2
+ .svadmin-surface-metric__root,
3
+ .svadmin-surface-table__root { min-width: 0; }
4
+ .svadmin-surface-tone--neutral { --svadmin-surface-accent: var(--border); }
5
+ .svadmin-surface-tone--success { --svadmin-surface-accent: var(--success); }
6
+ .svadmin-surface-tone--warning { --svadmin-surface-accent: var(--warning); }
7
+ .svadmin-surface-tone--danger { --svadmin-surface-accent: var(--destructive); }
8
+ .svadmin-surface-tone--info { --svadmin-surface-accent: var(--info); }
9
+ .svadmin-surface-density--compact {
10
+ --svadmin-surface-padding: 0.75rem;
11
+ --svadmin-surface-cell-padding: 0.25rem;
12
+ --svadmin-surface-cell-font: 0.75rem;
13
+ --svadmin-metric-state-padding: 0.75rem;
14
+ --svadmin-metric-state-height: 4.5rem;
15
+ --svadmin-table-state-height: 6rem;
16
+ }
17
+ .svadmin-surface-density--comfortable {
18
+ --svadmin-surface-padding: 1.25rem;
19
+ --svadmin-surface-cell-padding: 0.5rem;
20
+ --svadmin-surface-cell-font: 0.875rem;
21
+ --svadmin-metric-state-padding: 1.25rem;
22
+ --svadmin-metric-state-height: 6rem;
23
+ --svadmin-table-state-height: 8rem;
24
+ }
25
+ .svadmin-surface-metric__card.svadmin-surface-metric__card {
26
+ border-inline-start: 3px solid var(--svadmin-surface-accent);
27
+ padding: var(--svadmin-surface-padding);
28
+ }
29
+ .svadmin-surface-metric__description,
30
+ .svadmin-surface-table__state { color: var(--muted-foreground); }
433
31
  .svadmin-surface-metric__state {
434
- --svadmin-metric-state-border-width: 3px;
435
- }
436
-
437
- .svadmin-surface-table__root {
438
- min-width: 0;
439
- }
440
-
441
- .svadmin-surface-table__state {
442
- color: var(--svadmin-colors-muted);
443
- }
444
-
445
- :where(.svadmin-content-header__root > :not(:last-child)) {
446
- margin-block-start: 0px;
447
- margin-block-end: var(--svadmin-spacing-content-section);
448
- }
449
-
450
- .svadmin-content-header__breadcrumbs {
451
- gap: var(--svadmin-spacing-content-inline);
452
- display: flex;
453
- align-items: center;
454
- font-size: var(--svadmin-font-sizes-content-caption);
455
- line-height: var(--svadmin-line-heights-content-caption);
456
- color: var(--svadmin-colors-content-muted);
457
- }
458
-
459
- .svadmin-content-header__currentCrumb {
460
- color: var(--svadmin-colors-content-foreground);
461
- }
462
-
463
- .svadmin-content-header__row {
464
- gap: var(--svadmin-spacing-content-panel);
465
- display: flex;
466
- flex-direction: column;
467
- }
468
-
469
- .svadmin-content-header__heading {
470
- min-width: 0px;
471
- }
472
-
473
- :where(.svadmin-content-header__heading > :not(:last-child)) {
474
- margin-block-start: 0px;
475
- margin-block-end: var(--svadmin-spacing-content-stack);
476
- }
477
-
478
- .svadmin-content-header__eyebrow {
479
- font-size: var(--svadmin-font-sizes-content-caption);
480
- line-height: var(--svadmin-line-heights-content-caption);
481
- font-weight: var(--svadmin-font-weights-content-medium);
482
- color: var(--svadmin-colors-content-muted);
483
- }
484
-
485
- .svadmin-content-header__title {
486
- font-size: var(--svadmin-font-sizes-content-title);
487
- line-height: var(--svadmin-line-heights-content-title);
488
- font-weight: var(--svadmin-font-weights-content-strong);
489
- letter-spacing: var(--svadmin-letter-spacings-content-normal);
490
- color: var(--svadmin-colors-content-foreground);
491
- }
492
-
493
- .svadmin-content-header__description {
494
- font-size: var(--svadmin-font-sizes-content-body);
495
- line-height: var(--svadmin-line-heights-content-description);
496
- color: var(--svadmin-colors-content-muted);
497
- max-width: var(--svadmin-sizes-content-description);
498
- }
499
-
500
- .svadmin-content-header__actions {
501
- gap: var(--svadmin-spacing-content-inline);
502
- display: flex;
503
- flex-shrink: 0;
504
- flex-wrap: wrap;
505
- align-items: center;
506
- }
507
-
508
- .svadmin-content-page__root {
509
- margin-inline: auto;
510
- width: 100%;
511
- }
512
-
513
- :where(.svadmin-content-page__root > :not(:last-child)) {
514
- margin-block-start: 0px;
515
- margin-block-end: var(--svadmin-spacing-content-page);
516
- }
517
-
518
- .svadmin-metric-block__root {
519
- padding: var(--svadmin-spacing-content-panel);
520
- border-radius: var(--svadmin-radii-content-card);
521
- border-style: solid;
522
- border-width: 1px;
523
- border-color: var(--svadmin-colors-content-border);
524
- background-color: var(--svadmin-colors-content-card);
525
- box-shadow: var(--svadmin-shadows-content-card);
526
- min-width: 0px;
527
- }
528
-
529
- .layout-clean-flat [data-svadmin-content-page] .svadmin-metric-block__root {
530
- background: var(--svadmin-surface);
531
- border-color: var(--svadmin-border);
532
- border-radius: var(--svadmin-radii-content-card);
533
- box-shadow: var(--svadmin-surface-shadow);
534
- min-width: 0px;
535
- }
536
-
537
- .svadmin-metric-block__header {
538
- gap: var(--svadmin-spacing-content-section);
539
- display: flex;
540
- align-items: flex-start;
541
- justify-content: space-between;
542
- }
543
-
544
- .svadmin-metric-block__label {
545
- font-size: var(--svadmin-font-sizes-content-body);
546
- line-height: var(--svadmin-line-heights-content-body);
547
- }
548
-
549
- .svadmin-metric-block__label,.svadmin-metric-block__icon {
550
- color: var(--svadmin-colors-content-muted);
551
- }
552
-
553
- .svadmin-metric-block__skeleton {
554
- margin-top: var(--svadmin-spacing-content-section);
555
- height: var(--svadmin-sizes-content-skeleton-height);
556
- width: var(--svadmin-sizes-content-skeleton-width);
557
- }
558
-
559
- .svadmin-metric-block__value {
560
- overflow: hidden;
561
- text-overflow: ellipsis;
562
- white-space: nowrap;
563
- font-size: var(--svadmin-font-sizes-content-metric);
564
- line-height: var(--svadmin-line-heights-content-metric);
565
- font-weight: var(--svadmin-font-weights-content-strong);
566
- letter-spacing: var(--svadmin-letter-spacings-content-normal);
567
- color: var(--svadmin-colors-content-foreground);
568
- font-variant-numeric: tabular-nums;
569
- margin-top: var(--svadmin-spacing-content-inline);
570
- }
571
-
572
- .svadmin-metric-block__meta {
573
- gap: var(--svadmin-spacing-content-inline);
574
- display: flex;
575
- flex-wrap: wrap;
576
- font-size: var(--svadmin-font-sizes-content-caption);
577
- line-height: var(--svadmin-line-heights-content-caption);
578
- margin-top: var(--svadmin-spacing-content-inline);
579
- }
580
-
581
- .svadmin-metric-block__trend {
582
- font-weight: var(--svadmin-font-weights-content-medium);
583
- font-variant-numeric: tabular-nums;
584
- }
585
-
586
- .svadmin-metric-block__detail {
587
- color: var(--svadmin-colors-content-muted);
588
- }
589
-
590
- .svadmin-product-toolbar__root {
591
- gap: calc(var(--spacing, 0.25rem) * 3);
592
- padding-block: calc(var(--spacing, 0.25rem) * 3);
593
- border-bottom: 1px solid;
594
- border-color: var(--svadmin-colors-border);
595
- display: flex;
596
- flex-wrap: wrap;
597
- align-items: center;
598
- justify-content: space-between;
599
- min-width: 0;
600
- }
601
-
602
- .svadmin-product-toolbar__leading {
603
- flex: 1 1 16rem;
604
- }
605
-
606
- .svadmin-product-toolbar__leading,.svadmin-product-toolbar__trailing {
607
- gap: calc(var(--spacing, 0.25rem) * 2);
608
- display: flex;
609
- flex-wrap: wrap;
610
- align-items: center;
611
- min-width: 0;
612
- }
613
-
614
- .svadmin-product-toolbar__trailing {
615
- margin-inline-start: auto;
616
- }
617
-
618
- .svadmin-product-section__root {
619
- gap: calc(var(--spacing, 0.25rem) * 3);
620
- display: flex;
621
- flex-wrap: wrap;
622
- align-items: flex-start;
623
- justify-content: space-between;
624
- }
625
-
626
- .svadmin-product-section__heading {
627
- flex: 1 1 16rem;
628
- min-width: 0;
629
- }
630
-
631
- .svadmin-product-section__title {
632
- margin: 0;
633
- color: var(--svadmin-colors-foreground);
634
- font-size: 1rem;
635
- line-height: 1.5;
636
- font-weight: 600;
637
- overflow-wrap: anywhere;
638
- }
639
-
640
- .svadmin-product-section__description {
641
- margin: calc(var(--spacing, 0.25rem) * 1) 0 0;
642
- color: var(--svadmin-colors-muted);
643
- font-size: 0.8125rem;
644
- line-height: 1.5;
645
- max-width: 65ch;
646
- }
647
-
648
- .svadmin-product-section__actions {
649
- gap: calc(var(--spacing, 0.25rem) * 2);
650
- display: flex;
651
- flex-wrap: wrap;
652
- align-items: center;
653
- flex-shrink: 0;
654
- min-width: 0;
655
- }
656
-
657
- .svadmin-product-settings-row__root {
658
- gap: calc(var(--spacing, 0.25rem) * 3);
659
- padding-block: calc(var(--spacing, 0.25rem) * 5);
660
- display: grid;
661
- grid-template-columns: minmax(0, 1fr);
662
- align-items: start;
663
- min-width: 0;
664
- }
665
-
666
- .svadmin-product-settings-row__heading {
667
- min-width: 0;
668
- }
669
-
670
- .svadmin-product-settings-row__label {
671
- margin: 0;
672
- color: var(--svadmin-colors-foreground);
673
- font-size: var(--svadmin-font-sizes-body);
674
- line-height: 1.5;
675
- font-weight: 500;
676
- overflow-wrap: anywhere;
677
- }
678
-
679
- .svadmin-product-settings-row__description {
680
- margin: calc(var(--spacing, 0.25rem) * 1) 0 0;
681
- color: var(--svadmin-colors-muted);
682
- font-size: 0.8125rem;
683
- line-height: 1.5;
684
- overflow-wrap: anywhere;
685
- max-width: 52ch;
686
- }
687
-
688
- .svadmin-product-settings-row__control {
689
- min-width: 0;
690
- max-width: 100%;
691
- }
692
-
693
- .svadmin-product-settings__root {
694
- color: var(--svadmin-colors-foreground);
695
- font-size: var(--svadmin-font-sizes-body);
696
- line-height: 1.5;
697
- min-width: 0;
698
- }
699
-
700
- .svadmin-product-settings__header {
701
- gap: calc(var(--spacing, 0.25rem) * 3);
702
- padding-block: calc(var(--spacing, 0.25rem) * 4);
703
- border-bottom: 1px solid;
704
- border-color: var(--svadmin-colors-border);
705
- display: flex;
706
- flex-wrap: wrap;
707
- align-items: flex-start;
708
- justify-content: space-between;
709
- }
710
-
711
- .svadmin-product-settings__heading {
712
- flex: 1 1 16rem;
713
- min-width: 0;
714
- }
715
-
716
- .svadmin-product-settings__title {
717
- margin: 0;
718
- color: var(--svadmin-colors-foreground);
719
- font-size: 1rem;
720
- line-height: 1.5;
721
- font-weight: 600;
722
- overflow-wrap: anywhere;
723
- }
724
-
725
- .svadmin-product-settings__description {
726
- margin: calc(var(--spacing, 0.25rem) * 1) 0 0;
727
- color: var(--svadmin-colors-muted);
728
- font-size: 0.8125rem;
729
- line-height: 1.5;
730
- max-width: 65ch;
731
- }
732
-
733
- .svadmin-product-settings__actions {
734
- gap: calc(var(--spacing, 0.25rem) * 2);
735
- display: flex;
736
- flex-wrap: wrap;
737
- align-items: center;
738
- flex-shrink: 0;
739
- min-width: 0;
740
- }
741
-
742
- .svadmin-product-settings__body {
743
- padding-block: calc(var(--spacing, 0.25rem) * 1);
744
- min-width: 0;
745
- }
746
-
747
- .svadmin-product-status__root {
748
- --svadmin-status-color: var(--muted-foreground);
749
- }
750
-
751
- .svadmin-product-status__root[data-slot=badge] {
752
- background: var(--muted);
753
- border-color: var(--svadmin-status-color);
754
- color: var(--foreground);
755
- white-space: nowrap;
756
- }
757
-
758
- @supports (color: color-mix(in oklab, black, white)) {
759
- .svadmin-product-status__root[data-slot=badge] {
760
- background: color-mix(in oklab, var(--svadmin-status-color) 10%, var(--card));
761
- border-color: color-mix(in oklab, var(--svadmin-status-color) 25%, var(--card));
762
- color: color-mix(in oklab, var(--svadmin-status-color) 35%, var(--foreground));
763
- }
764
- }
765
-
766
- .svadmin-product-workspace__root {
767
- gap: calc(var(--spacing, 0.25rem) * 6);
768
- display: flex;
769
- flex-direction: column;
770
- min-width: 0;
771
- }
772
-
773
- .svadmin-product-workspace__summary {
774
- min-width: 0;
775
- }
776
-
777
- .svadmin-product-workspace__columns {
778
- gap: calc(var(--spacing, 0.25rem) * 8);
779
- display: grid;
780
- grid-template-columns: minmax(0, 1fr);
781
- align-items: start;
782
- min-width: 0;
783
- }
784
-
785
- .svadmin-product-workspace__primary {
786
- min-width: 0;
787
- }
788
-
789
- .svadmin-product-workspace__secondary {
790
- gap: calc(var(--spacing, 0.25rem) * 6);
791
- display: flex;
792
- flex-direction: column;
793
- min-width: 0;
794
- }
795
-
796
- @layer components {
797
-
798
- .svadmin-ui-input__root {
799
- position: relative;
800
- }
801
-
802
- .svadmin-ui-input__root,.svadmin-ui-input__control {
803
- width: 100%;
804
- min-width: 0;
805
- height: 2.25rem;
806
- }
807
-
808
- .svadmin-ui-input__control {
809
- border: 1px solid var(--border);
810
- background: transparent;
811
- border-radius: 0.5rem;
812
- outline: 2px solid transparent;
813
- outline-offset: 2px;
814
- transition: border-color 120ms ease, box-shadow 120ms ease, background-color 120ms ease;
815
- color: var(--foreground);
816
- }
817
-
818
- .svadmin-ui-input__control:not([data-input-type="file"]) {
819
- padding: 0.375rem 0.75rem;
820
- font-size: 0.875rem;
821
- }
822
-
823
- .svadmin-ui-input__control[data-input-type="file"] {
824
- inset: 0;
825
- border: 0;
826
- padding: 0;
827
- position: absolute;
828
- z-index: 1;
829
- opacity: 0;
830
- appearance: none;
831
- -webkit-appearance: none;
832
- cursor: pointer;
833
- height: 100%;
834
- }
835
-
836
- .svadmin-ui-input__control[aria-invalid="true"] {
837
- border-color: var(--destructive);
838
- box-shadow: 0 0 0 3px var(--destructive);
839
- }
840
-
841
- .svadmin-ui-input__control:disabled {
842
- cursor: not-allowed;
843
- opacity: 0.5;
844
- }
845
-
846
- .svadmin-ui-input__control::placeholder {
847
- color: var(--muted-foreground);
848
- }
849
-
850
- .svadmin-ui-input__control[data-input-type="file"]:focus-visible + .svadmin-file-input__visual,.svadmin-ui-input__control:focus-visible {
851
- border-color: var(--ring);
852
- box-shadow: 0 0 0 3px var(--ring);
853
- }
854
- }
855
-
856
- @supports (color: color-mix(in lab, red, red)) {
857
- @layer components {
858
- .svadmin-ui-input__control[aria-invalid="true"] {
859
- box-shadow: 0 0 0 3px color-mix(in srgb, var(--destructive) 20%, transparent);
860
- }
861
-
862
- .svadmin-ui-input__control[data-input-type="file"]:focus-visible + .svadmin-file-input__visual,.svadmin-ui-input__control:focus-visible {
863
- box-shadow: 0 0 0 3px color-mix(in srgb, var(--ring) 20%, transparent);
864
- }
865
- }
866
- }
867
-
868
- @layer components {
869
-
870
- .svadmin-ui-input__visual {
871
- border: 1px solid var(--border);
872
- background: var(--card);
873
- padding: 0.25rem 0.75rem 0.25rem 0.25rem;
874
- gap: 0.75rem;
875
- overflow: hidden;
876
- border-radius: 0.5rem;
877
- transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
878
- display: flex;
879
- align-items: center;
880
- box-shadow: var(--shadow-control);
881
- color: var(--muted-foreground);
882
- pointer-events: none;
883
- width: 100%;
884
- height: 100%;
885
- }
886
-
887
- .svadmin-file-input[data-disabled="true"] .svadmin-ui-input__visual {
888
- opacity: 0.5;
889
- }
890
-
891
- .svadmin-ui-input__button {
892
- border: 1px solid var(--border);
893
- padding: 0 0.625rem;
894
- background: var(--muted);
895
- font: inherit;
896
- flex: 0 0 auto;
897
- border-radius: 0.375rem;
898
- display: inline-flex;
899
- align-items: center;
900
- color: var(--foreground);
901
- font-size: 0.75rem;
902
- white-space: nowrap;
903
- height: 1.75rem;
904
- }
905
- }
906
-
907
- @supports (color: color-mix(in lab, red, red)) {
908
- @layer components {
909
- .svadmin-ui-input__button {
910
- border: 1px solid color-mix(in srgb, var(--border) 60%, transparent);
911
- }
912
- }
913
- }
914
-
915
- @layer components {
916
-
917
- .svadmin-ui-input__name {
918
- overflow: hidden;
919
- text-overflow: ellipsis;
920
- white-space: nowrap;
921
- }
922
- }
923
-
924
- .svadmin-product-list__filters {
925
- gap: calc(var(--spacing, 0.25rem) * 1);
926
- border-bottom: 1px solid;
927
- border-color: var(--svadmin-colors-border);
928
- padding-bottom: calc(var(--spacing, 0.25rem) * 3);
929
- }
930
-
931
- .svadmin-product-list__filters,.svadmin-product-list__filter {
932
- display: flex;
933
- flex-wrap: wrap;
934
- align-items: center;
935
- min-width: 0;
936
- }
937
-
938
- .svadmin-product-list__filter {
939
- border: 0;
940
- background: transparent;
941
- padding: calc(var(--spacing, 0.25rem) * 1.5) calc(var(--spacing, 0.25rem) * 3);
942
- gap: calc(var(--spacing, 0.25rem) * 2);
943
- border-radius: var(--radius-md);
944
- color: var(--svadmin-colors-muted);
945
- font-size: var(--svadmin-font-sizes-body);
946
- font-weight: 500;
947
- cursor: pointer;
948
- }
949
-
950
- .svadmin-product-list__filter[aria-pressed=true] {
951
- background: var(--accent);
952
- color: var(--accent-foreground);
953
- }
954
-
955
- .svadmin-product-list__filter:focus-visible {
956
- outline: 2px solid var(--ring);
957
- outline-offset: 2px;
958
- }
959
-
960
- .svadmin-product-list__filter:hover {
961
- background: var(--muted);
962
- }
963
-
964
- .svadmin-product-list__filterCount {
965
- font-size: var(--svadmin-font-sizes-compact);
966
- font-variant-numeric: tabular-nums;
967
- color: inherit;
968
- }
969
-
970
- .svadmin-product-list__table {
971
- border-block: 1px solid;
972
- border-color: var(--svadmin-colors-border);
973
- min-width: 0;
974
- max-width: 100%;
975
- overflow-x: auto;
976
- }
977
-
978
- .svadmin-product-list__table [data-slot=table-head] {
979
- padding: calc(var(--spacing, 0.25rem) * 3) calc(var(--spacing, 0.25rem) * 4);
980
- border-bottom: 1px solid;
981
- border-color: var(--svadmin-colors-border);
982
- color: var(--svadmin-colors-muted);
983
- font-size: 0.8125rem;
984
- font-weight: 500;
985
- text-align: start;
986
- white-space: nowrap;
987
- }
988
-
989
- .svadmin-product-list__table [data-slot=table-cell] {
990
- padding: calc(var(--spacing, 0.25rem) * 3) calc(var(--spacing, 0.25rem) * 4);
991
- vertical-align: middle;
992
- }
993
-
994
- .svadmin-product-list__table [data-slot=table-caption] {
995
- padding: calc(var(--spacing, 0.25rem) * 3) calc(var(--spacing, 0.25rem) * 4);
996
- text-align: start;
997
- color: var(--svadmin-colors-muted);
998
- font-size: var(--svadmin-font-sizes-compact);
999
- }
1000
-
1001
- .svadmin-product-list__table > [data-slot=table-container] {
1002
- overflow: visible;
1003
- }
1004
-
1005
- .svadmin-product-list__table tbody [data-slot=table-row]:not(:last-child) {
1006
- border-bottom: 1px solid;
1007
- border-color: var(--svadmin-colors-border);
1008
- }
1009
-
1010
- .svadmin-product-list__table [data-table-density=comfortable] [data-slot=table-cell] {
1011
- padding-block: calc(var(--spacing, 0.25rem) * 4);
1012
- }
1013
-
1014
- .svadmin-product-list__table [data-slot=table] {
1015
- border-collapse: collapse;
1016
- font-size: var(--svadmin-font-sizes-body);
1017
- width: 100%;
1018
- }
1019
-
1020
- .svadmin-product-list__table [data-align=end] {
1021
- text-align: end;
1022
- }
1023
-
1024
- .svadmin-product-list__table:focus-visible {
1025
- outline: 2px solid var(--ring);
1026
- outline-offset: 2px;
1027
- }
1028
-
1029
- .svadmin-product-list__table tbody [data-slot=table-row]:hover {
1030
- background: var(--muted);
1031
- }
1032
-
1033
- .svadmin-product-list__identity {
1034
- gap: calc(var(--spacing, 0.25rem) * 3);
1035
- display: flex;
1036
- align-items: center;
1037
- min-width: 12rem;
1038
- }
1039
-
1040
- .svadmin-product-list__avatar {
1041
- background: var(--muted);
1042
- border: 1px solid;
1043
- place-items: center;
1044
- border-color: var(--svadmin-colors-border);
1045
- border-radius: var(--radius-md);
1046
- display: grid;
1047
- flex-shrink: 0;
1048
- color: var(--svadmin-colors-muted);
1049
- font-size: var(--svadmin-font-sizes-compact);
1050
- font-weight: 600;
1051
- width: 2rem;
1052
- height: 2rem;
1053
- }
1054
-
1055
- .svadmin-product-list__name {
1056
- color: var(--svadmin-colors-foreground);
1057
- font-size: var(--svadmin-font-sizes-body);
1058
- line-height: 1.5;
1059
- font-weight: 500;
1060
- white-space: normal;
1061
- overflow-wrap: anywhere;
1062
- max-width: 28rem;
1063
- }
1064
-
1065
- .svadmin-product-list__secondary {
1066
- color: var(--svadmin-colors-muted);
1067
- font-size: var(--svadmin-font-sizes-compact);
1068
- line-height: 1.5;
1069
- display: block;
1070
- overflow-wrap: anywhere;
1071
- }
1072
-
1073
- .svadmin-product-list__numeric {
1074
- font-variant-numeric: tabular-nums;
1075
- text-align: end;
1076
- white-space: nowrap;
1077
- }
1078
-
1079
- .svadmin-product-list__footer {
1080
- gap: calc(var(--spacing, 0.25rem) * 2);
1081
- padding-block: calc(var(--spacing, 0.25rem) * 3);
1082
- display: flex;
1083
- flex-wrap: wrap;
1084
- align-items: center;
1085
- justify-content: space-between;
1086
- min-width: 0;
1087
- }
1088
-
1089
- .svadmin-product-list__footer,.svadmin-product-list__help {
1090
- color: var(--svadmin-colors-muted);
1091
- font-size: 0.8125rem;
1092
- }
1093
-
1094
- .svadmin-product-list__help {
1095
- margin: 0;
1096
- line-height: 1.5;
1097
- max-width: 65ch;
1098
- }
1099
-
1100
- @media (width >= 40rem) {
1101
- .svadmin-content-header__row {
1102
- flex-direction: row;
1103
- align-items: flex-start;
1104
- justify-content: space-between;
1105
- }
1106
- }
1107
-
1108
- @media (min-width: 48rem) {
1109
- .svadmin-product-settings-row__root {
1110
- grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
1111
- column-gap: calc(var(--spacing, 0.25rem) * 6);
1112
- }
1113
- }
1114
-
1115
- .svadmin-surface-metric__card--tone_neutral {
1116
- border-inline-start-color: var(--svadmin-colors-border);
1117
- }
1118
-
1119
- .svadmin-surface-metric__state--tone_neutral {
1120
- --svadmin-metric-state-accent: var(--svadmin-colors-border);
1121
- }
1122
-
1123
- .svadmin-surface-metric__card--density_comfortable {
1124
- padding: var(--svadmin-spacing-lg);
1125
- }
1126
-
1127
- .svadmin-surface-metric__state--density_comfortable {
1128
- --svadmin-metric-state-padding: 1.25rem;
1129
- --svadmin-metric-state-height: 6rem;
1130
- }
1131
-
1132
- .svadmin-surface-metric__card--tone_success {
1133
- border-inline-start-color: var(--svadmin-colors-success);
1134
- }
1135
-
1136
- .svadmin-surface-metric__state--tone_success {
1137
- --svadmin-metric-state-accent: var(--svadmin-colors-success);
1138
- }
1139
-
1140
- .svadmin-surface-metric__card--tone_warning {
1141
- border-inline-start-color: var(--svadmin-colors-warning);
1142
- }
1143
-
1144
- .svadmin-surface-metric__state--tone_warning {
1145
- --svadmin-metric-state-accent: var(--svadmin-colors-warning);
1146
- }
1147
-
1148
- .svadmin-surface-metric__card--tone_danger {
1149
- border-inline-start-color: var(--svadmin-colors-danger);
1150
- }
1151
-
1152
- .svadmin-surface-metric__state--tone_danger {
1153
- --svadmin-metric-state-accent: var(--svadmin-colors-danger);
1154
- }
1155
-
1156
- .svadmin-surface-metric__card--tone_info {
1157
- border-inline-start-color: var(--svadmin-colors-info);
1158
- }
1159
-
1160
- .svadmin-surface-metric__state--tone_info {
1161
- --svadmin-metric-state-accent: var(--svadmin-colors-info);
1162
- }
1163
-
1164
- .svadmin-surface-metric__card--density_compact {
1165
- padding: var(--svadmin-spacing-sm);
1166
- }
1167
-
1168
- .svadmin-surface-metric__state--density_compact {
1169
- --svadmin-metric-state-padding: 0.75rem;
1170
- --svadmin-metric-state-height: 4.5rem;
1171
- }
1172
-
1173
- .svadmin-surface-table__header--density_comfortable,.svadmin-surface-table__content--density_comfortable {
1174
- padding-inline: var(--svadmin-spacing-md);
1175
- }
1176
-
1177
- .svadmin-surface-table__head--density_comfortable[data-slot="table-head"],.svadmin-surface-table__cell--density_comfortable[data-slot="table-cell"] {
1178
- padding-block: 0.5rem;
1179
- font-size: var(--svadmin-font-sizes-body);
1180
- }
1181
-
1182
- .svadmin-surface-table__state--density_comfortable {
1183
- --svadmin-table-state-height: 8rem;
1184
- }
1185
-
1186
- .svadmin-surface-table__header--density_compact,.svadmin-surface-table__content--density_compact {
1187
- padding-inline: var(--svadmin-spacing-sm);
1188
- }
1189
-
1190
- .svadmin-surface-table__head--density_compact[data-slot="table-head"],.svadmin-surface-table__cell--density_compact[data-slot="table-cell"] {
1191
- padding-block: var(--svadmin-spacing-xs);
1192
- font-size: var(--svadmin-font-sizes-compact);
1193
- }
1194
-
1195
- .svadmin-surface-table__state--density_compact {
1196
- --svadmin-table-state-height: 6rem;
1197
- }
1198
-
1199
- .svadmin-content-page__root--width_default {
1200
- max-width: var(--svadmin-sizes-content-default);
1201
- }
1202
-
1203
- .svadmin-content-page__root--width_narrow {
1204
- max-width: var(--svadmin-sizes-content-narrow);
1205
- }
1206
-
1207
- .svadmin-content-page__root--width_wide {
1208
- max-width: var(--svadmin-sizes-content-wide);
1209
- }
1210
-
1211
- .svadmin-metric-block__trend--trendTone_neutral {
1212
- color: var(--svadmin-colors-content-muted);
1213
- }
1214
-
1215
- .svadmin-metric-block__trend--trendTone_positive {
1216
- color: var(--svadmin-colors-content-positive);
1217
- }
1218
-
1219
- .svadmin-metric-block__trend--trendTone_negative {
1220
- color: var(--svadmin-colors-content-negative);
1221
- }
1222
-
1223
- .svadmin-metric-block__trend--trendTone_warning {
1224
- color: var(--svadmin-colors-content-warning);
1225
- }
1226
-
1227
- .svadmin-product-settings-row__root--separated_true {
1228
- border-top: 1px solid;
1229
- border-color: var(--svadmin-colors-border);
1230
- }
1231
-
1232
- .svadmin-product-status__root--status_neutral {
1233
- --svadmin-status-color: var(--muted-foreground);
1234
- }
1235
-
1236
- .svadmin-product-status__root--status_success {
1237
- --svadmin-status-color: var(--success);
1238
- }
1239
-
1240
- .svadmin-product-status__root--status_warning {
1241
- --svadmin-status-color: var(--warning);
1242
- }
1243
-
1244
- .svadmin-product-status__root--status_danger {
1245
- --svadmin-status-color: var(--destructive);
1246
- }
1247
-
1248
- .svadmin-product-status__root--status_info {
1249
- --svadmin-status-color: var(--info);
1250
- }
1251
-
1252
- @media (min-width: 64rem) {
1253
- .svadmin-product-workspace__columns--hasSecondary_true {
1254
- grid-template-columns: minmax(0, 1fr) minmax(0, var(--workspace-secondary-width, 22rem));
1255
- }
1256
- .svadmin-product-workspace__primary--hasSecondary_true {
1257
- order: 1;
1258
- }
1259
- .svadmin-product-workspace__secondary--hasSecondary_true {
1260
- order: 2;
1261
- }
32
+ --svadmin-metric-state-border-width: 3px;
33
+ --svadmin-metric-state-accent: var(--svadmin-surface-accent);
34
+ }
35
+ .svadmin-surface-table__header.svadmin-surface-density--compact,
36
+ .svadmin-surface-table__content.svadmin-surface-density--compact { padding-inline: 0.75rem; }
37
+ .svadmin-surface-table__header.svadmin-surface-density--comfortable,
38
+ .svadmin-surface-table__content.svadmin-surface-density--comfortable { padding-inline: 1rem; }
39
+ .svadmin-surface-table__head[data-slot="table-head"],
40
+ .svadmin-surface-table__cell[data-slot="table-cell"] {
41
+ padding-block: var(--svadmin-surface-cell-padding);
42
+ font-size: var(--svadmin-surface-cell-font);
1262
43
  }