ui-style-kit-css 2.3.0 → 2.4.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.
Files changed (122) hide show
  1. package/CHANGELOG.md +57 -2
  2. package/CONTRIBUTING.md +8 -1
  3. package/README.md +102 -44
  4. package/STYLE-MAP.md +14 -5
  5. package/dist/assets/bauhaus-barlow-OFL.txt +93 -0
  6. package/dist/assets/bauhaus-barlow-semibold.ttf +0 -0
  7. package/dist/assets/bauhaus-barlow.ttf +0 -0
  8. package/dist/assets/bauhaus-condensed-OFL.txt +93 -0
  9. package/dist/assets/bauhaus-condensed-bold.ttf +0 -0
  10. package/dist/assets/bauhaus-condensed-extrabold.ttf +0 -0
  11. package/dist/assets/bento-manrope-OFL.txt +93 -0
  12. package/dist/assets/bento-manrope.ttf +0 -0
  13. package/dist/assets/clay-grain.png +0 -0
  14. package/dist/assets/clay-rounded-OFL.txt +93 -0
  15. package/dist/assets/clay-rounded.ttf +0 -0
  16. package/dist/assets/neo-noir-corner-dark.png +0 -0
  17. package/dist/assets/neo-noir-corner-light.png +0 -0
  18. package/dist/assets/neo-noir-texture-dark.png +0 -0
  19. package/dist/assets/neo-noir-texture-light.png +0 -0
  20. package/dist/assets/organic-display-OFL.txt +93 -0
  21. package/dist/assets/organic-display.ttf +0 -0
  22. package/dist/assets/organic-icons-LICENSE.txt +21 -0
  23. package/dist/assets/organic-sans-OFL.txt +93 -0
  24. package/dist/assets/organic-sans.ttf +0 -0
  25. package/dist/ui-style-kit.css +47898 -15121
  26. package/dist/ui-style-kit.min.css +2 -2
  27. package/dist/ui-style-kit.visual.css +47771 -15122
  28. package/dist/ui-style-kit.visual.min.css +2 -2
  29. package/dist/ui-style-kit.with-bridge.css +47932 -15145
  30. package/dist/ui-style-kit.with-bridge.min.css +2 -2
  31. package/dist/visual/art-deco.css +3247 -295
  32. package/dist/visual/bauhaus.css +2 -4692
  33. package/dist/visual/bento.css +2 -4708
  34. package/dist/visual/brutalism.css +1229 -231
  35. package/dist/visual/clay.css +2 -4786
  36. package/dist/visual/cyberpunk.css +2663 -282
  37. package/dist/visual/data-terminal.css +2064 -276
  38. package/dist/visual/editorial-luxe.css +2315 -259
  39. package/dist/visual/industrial-utility.css +3142 -270
  40. package/dist/visual/maximalist.css +2185 -454
  41. package/dist/visual/minimal-saas.css +1503 -398
  42. package/dist/visual/neo-noir.css +2 -4787
  43. package/dist/visual/neumorphism.css +1690 -402
  44. package/dist/visual/organic-modern.css +2 -4764
  45. package/dist/visual/paper-editorial.css +2977 -292
  46. package/dist/visual/retro-glass.css +2625 -299
  47. package/dist/visual/retrofuturism.css +1885 -397
  48. package/dist/visual/tactile.css +2716 -498
  49. package/dist/visual/technical-blueprint.css +2599 -267
  50. package/dist/visual/y2k.css +1906 -309
  51. package/docs/ART-DECO.md +80 -0
  52. package/docs/BAUHAUS.md +152 -0
  53. package/docs/BENTO.md +121 -0
  54. package/docs/CLAY.md +127 -0
  55. package/docs/COLOR-THEMES.md +63 -0
  56. package/docs/DEMO-SHOWCASE.md +65 -0
  57. package/docs/ECOSYSTEM.md +4 -4
  58. package/docs/EDITORIAL-LUX.md +75 -0
  59. package/docs/INDUSTRIAL-UTILITY.md +131 -0
  60. package/docs/NATIVE-ELEMENTS.md +23 -17
  61. package/docs/NEO-NOIR.md +94 -0
  62. package/docs/ORGANIC-MODERN.md +91 -0
  63. package/docs/PAPER-EDITORIAL.md +63 -0
  64. package/docs/PUBLISHING.md +31 -10
  65. package/docs/RELEASE-2.4.0.md +88 -0
  66. package/docs/RELEASE-2.4.1.md +35 -0
  67. package/docs/RETRO-GLASS.md +105 -0
  68. package/docs/STYLE-GUIDE.md +41 -26
  69. package/docs/TACTILE.md +38 -0
  70. package/docs/TECHNICAL-BLUEPRINT.md +60 -0
  71. package/docs/TOKENS.md +80 -3
  72. package/docs/superpowers/plans/2026-09-04-library-wide-theme-fallback-and-fidelity.md +331 -0
  73. package/docs/superpowers/specs/2026-09-04-library-wide-theme-fallback-and-fidelity-design.md +113 -0
  74. package/manifest.json +624 -28
  75. package/package.json +20 -11
  76. package/styles/art-deco.css +1402 -17
  77. package/styles/assets/bauhaus-barlow-OFL.txt +93 -0
  78. package/styles/assets/bauhaus-barlow-semibold.ttf +0 -0
  79. package/styles/assets/bauhaus-barlow.ttf +0 -0
  80. package/styles/assets/bauhaus-condensed-OFL.txt +93 -0
  81. package/styles/assets/bauhaus-condensed-bold.ttf +0 -0
  82. package/styles/assets/bauhaus-condensed-extrabold.ttf +0 -0
  83. package/styles/assets/bento-manrope-OFL.txt +93 -0
  84. package/styles/assets/bento-manrope.ttf +0 -0
  85. package/styles/assets/clay-grain.png +0 -0
  86. package/styles/assets/clay-rounded-OFL.txt +93 -0
  87. package/styles/assets/clay-rounded.ttf +0 -0
  88. package/styles/assets/neo-noir-corner-dark.png +0 -0
  89. package/styles/assets/neo-noir-corner-light.png +0 -0
  90. package/styles/assets/neo-noir-texture-dark.png +0 -0
  91. package/styles/assets/neo-noir-texture-light.png +0 -0
  92. package/styles/assets/organic-display-OFL.txt +93 -0
  93. package/styles/assets/organic-display.ttf +0 -0
  94. package/styles/assets/organic-icons-LICENSE.txt +21 -0
  95. package/styles/assets/organic-sans-OFL.txt +93 -0
  96. package/styles/assets/organic-sans.ttf +0 -0
  97. package/styles/bauhaus.css +881 -110
  98. package/styles/bento.css +1182 -113
  99. package/styles/brutalism.css +266 -15
  100. package/styles/clay.css +1307 -72
  101. package/styles/compat-layout.css +1 -2
  102. package/styles/components.css +107 -36
  103. package/styles/content-overflow.css +11 -5
  104. package/styles/cyberpunk.css +1856 -51
  105. package/styles/data-terminal.css +1122 -18
  106. package/styles/editorial-luxe.css +581 -17
  107. package/styles/industrial-utility.css +1775 -16
  108. package/styles/interactive-surface-bridge.css +30 -20
  109. package/styles/interactive-surface-theme.css +21 -11
  110. package/styles/maximalist.css +1215 -133
  111. package/styles/minimal-saas.css +465 -93
  112. package/styles/native-elements.css +347 -171
  113. package/styles/neo-noir.css +661 -19
  114. package/styles/neumorphism.css +1021 -149
  115. package/styles/organic-modern.css +693 -23
  116. package/styles/paper-editorial.css +1053 -17
  117. package/styles/retro-glass.css +639 -50
  118. package/styles/retrofuturism.css +948 -60
  119. package/styles/tactile.css +1813 -111
  120. package/styles/technical-blueprint.css +673 -22
  121. package/styles/theme-colors.css +412 -2
  122. package/styles/y2k.css +954 -46
package/styles/bento.css CHANGED
@@ -15,20 +15,30 @@
15
15
  @import url("./native-elements.css");
16
16
  @import url("./content-overflow.css");
17
17
 
18
+ @font-face {
19
+ font-family: "Bento Manrope";
20
+ src: url("./assets/bento-manrope.ttf") format("truetype");
21
+ font-style: normal;
22
+ font-weight: 200 800;
23
+ font-display: swap;
24
+ }
25
+
18
26
  @layer ui-style-kit.bento {
19
27
  :root {
20
- --bento-font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
21
- --bento-font-display: Inter, ui-sans-serif, system-ui, sans-serif;
28
+ --bento-font-sans: "Bento Manrope", ui-sans-serif, system-ui, sans-serif;
29
+ --bento-font-display: var(--bento-font-sans);
22
30
  --bento-font-body: var(--bento-font-sans);
23
31
  --bento-font-heading: var(--bento-font-display);
24
32
  --bento-font-control: var(--bento-font-display);
25
33
  --bento-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
26
- --bento-radius-xs: .25rem;
27
- --bento-radius-sm: .5rem;
28
- --bento-radius-md: 1rem;
29
- --bento-radius-lg: 1.75rem;
30
- --bento-radius-xl: calc(1.75rem + .5rem);
34
+ --bento-radius-xs: .375rem;
35
+ --bento-radius-sm: .625rem;
36
+ --bento-radius-md: .75rem;
37
+ --bento-radius-lg: 1rem;
38
+ --bento-radius-xl: 1.5rem;
31
39
  --bento-radius-pill: 999px;
40
+ --bento-control-radius: .75rem;
41
+ --bento-tile-radius: 1.5rem;
32
42
  --bento-space-1: .25rem;
33
43
  --bento-space-2: .5rem;
34
44
  --bento-space-3: .75rem;
@@ -42,15 +52,61 @@
42
52
 
43
53
  [data-ui="bento"][data-mode="light"] {
44
54
  color-scheme: light;
45
- --bento-panel-alpha: .98;
46
- --bento-panel-soft-alpha: .78;
47
- --bento-border-alpha: .58;
48
- --bento-shadow-alpha: .12;
49
- --bento-focus-alpha: .34;
55
+ --bento-fallback-bg-rgb: 247 244 252;
56
+ --bento-fallback-surface-rgb: 255 255 255;
57
+ --bento-fallback-surface-strong-rgb: 252 250 255;
58
+ --bento-fallback-surface-soft-rgb: 233 226 246;
59
+ --bento-fallback-text-rgb: 36 26 58;
60
+ --bento-fallback-text-muted-rgb: 103 92 121;
61
+ --bento-fallback-border-rgb: 207 197 227;
62
+ --bento-fallback-primary-rgb: 101 82 184;
63
+ --bento-fallback-primary-hover-rgb: 75 59 152;
64
+ --bento-fallback-primary-text-rgb: 255 255 255;
65
+ --bento-fallback-secondary-rgb: 105 82 163;
66
+ --bento-fallback-secondary-hover-rgb: 81 63 129;
67
+ --bento-fallback-secondary-text-rgb: 255 255 255;
68
+ --bento-fallback-accent-rgb: 196 156 232;
69
+ --bento-fallback-accent-text-rgb: 0 0 0;
70
+ --bento-fallback-success-rgb: 62 122 98;
71
+ --bento-fallback-success-text-rgb: 255 255 255;
72
+ --bento-fallback-warning-rgb: 152 100 0;
73
+ --bento-fallback-warning-text-rgb: 255 255 255;
74
+ --bento-fallback-danger-rgb: 168 58 96;
75
+ --bento-fallback-danger-text-rgb: 255 255 255;
76
+ --bento-fallback-link-rgb: 75 59 152;
77
+ --bento-fallback-focus-rgb: 141 117 209;
78
+ --bento-panel-alpha: .96;
79
+ --bento-panel-soft-alpha: .72;
80
+ --bento-border-alpha: .38;
81
+ --bento-shadow-alpha: .14;
82
+ --bento-focus-alpha: .32;
50
83
  }
51
84
 
52
85
  [data-ui="bento"][data-mode="dark"] {
53
86
  color-scheme: dark;
87
+ --bento-fallback-bg-rgb: 18 13 29;
88
+ --bento-fallback-surface-rgb: 28 21 43;
89
+ --bento-fallback-surface-strong-rgb: 42 32 64;
90
+ --bento-fallback-surface-soft-rgb: 23 17 34;
91
+ --bento-fallback-text-rgb: 245 240 255;
92
+ --bento-fallback-text-muted-rgb: 196 184 217;
93
+ --bento-fallback-border-rgb: 93 79 120;
94
+ --bento-fallback-primary-rgb: 169 148 242;
95
+ --bento-fallback-primary-hover-rgb: 196 181 255;
96
+ --bento-fallback-primary-text-rgb: 0 0 0;
97
+ --bento-fallback-secondary-rgb: 209 183 245;
98
+ --bento-fallback-secondary-hover-rgb: 229 213 255;
99
+ --bento-fallback-secondary-text-rgb: 0 0 0;
100
+ --bento-fallback-accent-rgb: 231 198 255;
101
+ --bento-fallback-accent-text-rgb: 0 0 0;
102
+ --bento-fallback-success-rgb: 145 223 184;
103
+ --bento-fallback-success-text-rgb: 0 0 0;
104
+ --bento-fallback-warning-rgb: 255 210 122;
105
+ --bento-fallback-warning-text-rgb: 0 0 0;
106
+ --bento-fallback-danger-rgb: 255 153 183;
107
+ --bento-fallback-danger-text-rgb: 0 0 0;
108
+ --bento-fallback-link-rgb: 209 183 245;
109
+ --bento-fallback-focus-rgb: 209 183 245;
54
110
  --bento-panel-alpha: .92;
55
111
  --bento-panel-soft-alpha: .64;
56
112
  --bento-border-alpha: .52;
@@ -60,6 +116,29 @@
60
116
 
61
117
  [data-ui="bento"][data-mode="contrast"] {
62
118
  color-scheme: dark;
119
+ --bento-fallback-bg-rgb: 0 0 0;
120
+ --bento-fallback-surface-rgb: 12 7 20;
121
+ --bento-fallback-surface-strong-rgb: 26 16 40;
122
+ --bento-fallback-surface-soft-rgb: 0 0 0;
123
+ --bento-fallback-text-rgb: 255 255 255;
124
+ --bento-fallback-text-muted-rgb: 247 240 255;
125
+ --bento-fallback-border-rgb: 255 255 255;
126
+ --bento-fallback-primary-rgb: 184 156 255;
127
+ --bento-fallback-primary-hover-rgb: 255 255 255;
128
+ --bento-fallback-primary-text-rgb: 0 0 0;
129
+ --bento-fallback-secondary-rgb: 113 255 226;
130
+ --bento-fallback-secondary-hover-rgb: 255 255 255;
131
+ --bento-fallback-secondary-text-rgb: 0 0 0;
132
+ --bento-fallback-accent-rgb: 255 208 242;
133
+ --bento-fallback-accent-text-rgb: 0 0 0;
134
+ --bento-fallback-success-rgb: 0 255 144;
135
+ --bento-fallback-success-text-rgb: 0 0 0;
136
+ --bento-fallback-warning-rgb: 255 212 0;
137
+ --bento-fallback-warning-text-rgb: 0 0 0;
138
+ --bento-fallback-danger-rgb: 255 102 139;
139
+ --bento-fallback-danger-text-rgb: 0 0 0;
140
+ --bento-fallback-link-rgb: 201 181 255;
141
+ --bento-fallback-focus-rgb: 255 255 255;
63
142
  --bento-panel-alpha: 1;
64
143
  --bento-panel-soft-alpha: .92;
65
144
  --bento-border-alpha: 1;
@@ -67,8 +146,8 @@
67
146
  --bento-focus-alpha: .72;
68
147
  }
69
148
 
149
+ /** Preserves direct aliases for static extraction when a scheme is selected. */
70
150
  [data-ui="bento"][data-theme][data-mode] {
71
- /* Shared scheme aliases preserve the existing prefixed token API. */
72
151
  --bento-bg-rgb: var(--usk-bg-rgb);
73
152
  --bento-surface-rgb: var(--usk-surface-rgb);
74
153
  --bento-surface-strong-rgb: var(--usk-surface-strong-rgb);
@@ -83,15 +162,43 @@
83
162
  --bento-secondary-hover-rgb: var(--usk-secondary-hover-rgb);
84
163
  --bento-secondary-text-rgb: var(--usk-secondary-text-rgb);
85
164
  --bento-accent-rgb: var(--usk-accent-rgb);
86
- --bento-success-rgb: var(--usk-success-rgb);
87
- --bento-warning-rgb: var(--usk-warning-rgb);
88
- --bento-danger-rgb: var(--usk-danger-rgb);
89
- --bento-link-rgb: var(--usk-link-rgb);
90
165
  --bento-accent-text-rgb: var(--usk-accent-text-rgb);
166
+ --bento-success-rgb: var(--usk-success-rgb);
91
167
  --bento-success-text-rgb: var(--usk-success-text-rgb);
168
+ --bento-warning-rgb: var(--usk-warning-rgb);
92
169
  --bento-warning-text-rgb: var(--usk-warning-text-rgb);
170
+ --bento-danger-rgb: var(--usk-danger-rgb);
93
171
  --bento-danger-text-rgb: var(--usk-danger-text-rgb);
172
+ --bento-link-rgb: var(--usk-link-rgb);
94
173
  --bento-focus-rgb: var(--usk-focus-rgb);
174
+ }
175
+
176
+ [data-ui="bento"][data-mode] {
177
+ --usk-native-bg: var(--bento-bg);
178
+ /* Explicit schemes win; reference colors are used only when no scheme exists. */
179
+ --bento-bg-rgb: var(--usk-bg-rgb, var(--bento-fallback-bg-rgb));
180
+ --bento-surface-rgb: var(--usk-surface-rgb, var(--bento-fallback-surface-rgb));
181
+ --bento-surface-strong-rgb: var(--usk-surface-strong-rgb, var(--bento-fallback-surface-strong-rgb));
182
+ --bento-surface-soft-rgb: var(--usk-surface-soft-rgb, var(--bento-fallback-surface-soft-rgb));
183
+ --bento-text-rgb: var(--usk-text-rgb, var(--bento-fallback-text-rgb));
184
+ --bento-text-muted-rgb: var(--usk-text-muted-rgb, var(--bento-fallback-text-muted-rgb));
185
+ --bento-border-rgb: var(--usk-border-rgb, var(--bento-fallback-border-rgb));
186
+ --bento-primary-rgb: var(--usk-primary-rgb, var(--bento-fallback-primary-rgb));
187
+ --bento-primary-hover-rgb: var(--usk-primary-hover-rgb, var(--bento-fallback-primary-hover-rgb));
188
+ --bento-primary-text-rgb: var(--usk-primary-text-rgb, var(--bento-fallback-primary-text-rgb));
189
+ --bento-secondary-rgb: var(--usk-secondary-rgb, var(--bento-fallback-secondary-rgb));
190
+ --bento-secondary-hover-rgb: var(--usk-secondary-hover-rgb, var(--bento-fallback-secondary-hover-rgb));
191
+ --bento-secondary-text-rgb: var(--usk-secondary-text-rgb, var(--bento-fallback-secondary-text-rgb));
192
+ --bento-accent-rgb: var(--usk-accent-rgb, var(--bento-fallback-accent-rgb));
193
+ --bento-accent-text-rgb: var(--usk-accent-text-rgb, var(--bento-fallback-accent-text-rgb));
194
+ --bento-success-rgb: var(--usk-success-rgb, var(--bento-fallback-success-rgb));
195
+ --bento-success-text-rgb: var(--usk-success-text-rgb, var(--bento-fallback-success-text-rgb));
196
+ --bento-warning-rgb: var(--usk-warning-rgb, var(--bento-fallback-warning-rgb));
197
+ --bento-warning-text-rgb: var(--usk-warning-text-rgb, var(--bento-fallback-warning-text-rgb));
198
+ --bento-danger-rgb: var(--usk-danger-rgb, var(--bento-fallback-danger-rgb));
199
+ --bento-danger-text-rgb: var(--usk-danger-text-rgb, var(--bento-fallback-danger-text-rgb));
200
+ --bento-link-rgb: var(--usk-link-rgb, var(--bento-fallback-link-rgb));
201
+ --bento-focus-rgb: var(--usk-focus-rgb, var(--bento-fallback-focus-rgb));
95
202
  /* Native fallback selectors inherit visual identity through shared tokens. */
96
203
  --usk-native-surface: var(--bento-surface);
97
204
  --usk-native-surface-strong: var(--bento-surface-strong);
@@ -114,14 +221,65 @@
114
221
  --usk-native-font-control: var(--bento-font-control);
115
222
  --usk-native-font-mono: var(--bento-font-mono);
116
223
  --usk-native-radius-sm: var(--bento-radius-sm);
117
- --usk-native-radius: var(--bento-radius-md);
118
- --usk-native-radius-lg: var(--bento-radius-lg);
224
+ --usk-native-radius: var(--bento-control-radius);
225
+ --usk-native-radius-lg: var(--bento-tile-radius);
119
226
  --usk-native-shadow: var(--bento-shadow-sm, none);
120
227
  --usk-native-shadow-md: var(--bento-shadow-md, var(--usk-native-shadow));
121
228
  --usk-native-focus-ring: var(--bento-focus-ring, 0 0 0 3px rgb(var(--bento-focus-rgb) / .28));
122
229
  --usk-native-border-width: 1px;
123
230
  --usk-native-field-gap: .5rem;
124
- --usk-native-panel-padding: var(--bento-space-5);
231
+ --usk-native-panel-padding: var(--bento-space-6);
232
+ --usk-native-control-min-block-size: 2.75rem;
233
+ --usk-native-control-padding-block: .68rem;
234
+ --usk-native-control-padding-inline: 1rem;
235
+ --usk-native-subcontrol-padding-block: .55rem;
236
+ --usk-native-subcontrol-padding-inline: .85rem;
237
+ --usk-native-choice-size: 1.25rem;
238
+ --usk-native-choice-background: var(--bento-control-bg);
239
+ --usk-native-choice-border: 1px solid var(--bento-border);
240
+ --usk-native-checkbox-radius: .375rem;
241
+ --usk-native-radio-radius: 50%;
242
+ --usk-native-choice-shadow: 0 .2rem .55rem rgb(var(--bento-text-rgb) / .12), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .7);
243
+ --usk-native-choice-checked-background: var(--bento-primary);
244
+ --usk-native-choice-mark-color: var(--bento-on-primary);
245
+ --usk-native-select-indicator-image: linear-gradient(30deg, transparent 50%, var(--bento-primary) 50%), linear-gradient(150deg, var(--bento-primary) 50%, transparent 50%);
246
+ --usk-native-select-indicator-size: 0.38rem 0.38rem, 0.38rem 0.38rem;
247
+ --usk-native-select-indicator-position: calc(100% - 1.08rem) 50%, calc(100% - 0.78rem) 50%;
248
+ --usk-native-select-padding-inline-end: 2.4rem;
249
+ --usk-native-range-track-size: .6rem;
250
+ --usk-native-range-track-background: var(--bento-surface-soft);
251
+ --usk-native-range-track-border: 0 solid transparent;
252
+ --usk-native-range-track-radius: 999px;
253
+ --usk-native-range-track-shadow: inset 0 1px 2px rgb(var(--bento-text-rgb) / .12);
254
+ --usk-native-range-progress-background: var(--bento-primary);
255
+ --usk-native-range-thumb-size: 1.35rem;
256
+ --usk-native-range-thumb-background: var(--bento-surface-strong);
257
+ --usk-native-range-thumb-border: 1px solid rgb(var(--bento-primary-rgb) / .28);
258
+ --usk-native-range-thumb-radius: .5rem;
259
+ --usk-native-range-thumb-shadow: 0 .35rem .8rem rgb(var(--bento-text-rgb) / .18), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .78);
260
+ --usk-native-progress-size: .6rem;
261
+ --usk-native-progress-track-background: var(--bento-surface-soft);
262
+ --usk-native-progress-track-border: 0 solid transparent;
263
+ --usk-native-progress-track-radius: 999px;
264
+ --usk-native-progress-track-shadow: inset 0 1px 2px rgb(var(--bento-text-rgb) / .12);
265
+ --usk-native-progress-value-background: var(--bento-primary);
266
+ --usk-native-progress-value-radius: inherit;
267
+ --usk-native-progress-value-shadow: none;
268
+ --usk-native-meter-optimum-background: var(--bento-success);
269
+ --usk-native-meter-suboptimum-background: var(--bento-warning);
270
+ --usk-native-meter-critical-background: var(--bento-danger);
271
+ --usk-native-file-button-background: var(--bento-primary);
272
+ --usk-native-file-button-border: 1px solid rgb(var(--bento-primary-rgb) / .24);
273
+ --usk-native-file-button-radius: var(--bento-radius-md);
274
+ --usk-native-file-button-shadow: 0 .3rem .7rem rgb(var(--bento-primary-rgb) / .18);
275
+ --usk-native-color-swatch-border: 1px solid var(--bento-border);
276
+ --usk-native-color-swatch-radius: var(--bento-radius-md);
277
+ --usk-native-indicator-opacity: 0.77;
278
+ --usk-native-indicator-filter: none;
279
+ --usk-native-scrollbar-size: .8rem;
280
+ --usk-native-scrollbar-track: var(--bento-surface-soft);
281
+ --usk-native-scrollbar-thumb: var(--bento-primary);
282
+ --usk-native-scrollbar-radius: var(--bento-radius-pill);
125
283
  --bento-bg: rgb(var(--bento-bg-rgb));
126
284
  --bento-surface: rgb(var(--bento-surface-rgb) / var(--bento-panel-alpha));
127
285
  --bento-surface-strong: rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
@@ -152,17 +310,24 @@
152
310
  --bento-link: rgb(var(--bento-link-rgb));
153
311
  --bento-focus: rgb(var(--bento-focus-rgb));
154
312
  --bento-focus-ring: 0 0 0 3px rgb(var(--bento-focus-rgb) / var(--bento-focus-alpha));
313
+ --bento-shadow-sm: 0 .35rem 1rem rgb(var(--bento-text-rgb) / calc(var(--bento-shadow-alpha) * .72)), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .58);
314
+ --bento-shadow-md: 0 .95rem 2.35rem rgb(var(--bento-text-rgb) / var(--bento-shadow-alpha)), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .62);
315
+ --bento-tile-edge: rgb(var(--bento-border-rgb) / calc(var(--bento-border-alpha) * .34));
316
+ --bento-tile-shadow: 0 .85rem 2.2rem rgb(var(--bento-text-rgb) / calc(var(--bento-shadow-alpha) * .82)), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .68);
155
317
  --bento-theme-bg-size: auto;
156
- --bento-theme-bg: radial-gradient(circle at 0% 0%, rgb(var(--bento-primary-rgb) / .16), transparent 32rem), radial-gradient(circle at 100% 0%, rgb(var(--bento-accent-rgb) / .12), transparent 30rem), radial-gradient(circle at 50% 100%, rgb(var(--bento-secondary-rgb) / .10), transparent 34rem), var(--bento-bg);
157
- --bento-card-bg: linear-gradient(135deg, rgb(var(--bento-primary-rgb) / .10), rgb(var(--bento-accent-rgb) / .055) 42%, rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)) 100%), var(--bento-surface);
158
- --bento-control-bg: linear-gradient(180deg, rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)), rgb(var(--bento-surface-soft-rgb) / var(--bento-panel-soft-alpha)));
318
+ --bento-theme-bg: radial-gradient(circle at 18% 8%, rgb(var(--bento-primary-rgb) / .10), transparent 30rem), radial-gradient(circle at 88% 4%, rgb(var(--bento-accent-rgb) / .10), transparent 28rem), linear-gradient(180deg, rgb(var(--bento-primary-rgb) / .035), transparent 32rem), var(--bento-bg);
319
+ --bento-card-bg: linear-gradient(145deg, rgb(var(--bento-primary-rgb) / .12), rgb(var(--bento-accent-rgb) / .07)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
320
+ --bento-control-bg: linear-gradient(180deg, rgb(var(--bento-primary-rgb) / .045), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)));
321
+ --bento-tile-primary-bg: linear-gradient(145deg, rgb(var(--bento-primary-rgb) / .16), rgb(var(--bento-primary-rgb) / .06)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
322
+ --bento-tile-accent-bg: linear-gradient(145deg, rgb(var(--bento-accent-rgb) / .15), rgb(var(--bento-primary-rgb) / .05)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
323
+ --bento-tile-secondary-bg: linear-gradient(145deg, rgb(var(--bento-secondary-rgb) / .14), rgb(var(--bento-accent-rgb) / .05)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
159
324
  --bento-spinner-track: rgb(var(--bento-border-rgb) / max(.28, calc(var(--bento-border-alpha) * .7)));
160
325
  --bento-spinner-stroke: var(--bento-primary);
161
326
  --bento-spinner-accent: var(--bento-accent);
162
327
  }
163
328
 
164
329
  @supports (color: color-mix(in srgb, black, white)) {
165
- [data-ui="bento"][data-theme][data-mode] { --bento-border: color-mix(in srgb, rgb(var(--bento-border-rgb) / max(var(--bento-border-alpha), var(--usk-border-min-alpha))), var(--bento-text) var(--usk-border-text-mix)); }
330
+ [data-ui="bento"][data-mode] { --bento-border: color-mix(in srgb, rgb(var(--bento-border-rgb) / max(var(--bento-border-alpha), var(--usk-border-min-alpha))), var(--bento-text) var(--usk-border-text-mix)); }
166
331
  }
167
332
 
168
333
 
@@ -201,7 +366,7 @@
201
366
 
202
367
  [data-ui="bento"] {
203
368
  min-height: 100vh;
204
- background: radial-gradient(circle at 20% 5%, rgb(var(--bento-accent-rgb) / .18), transparent 26rem), radial-gradient(circle at 85% 0%, rgb(var(--bento-secondary-rgb) / .12), transparent 24rem), var(--bento-bg);
369
+ background: var(--bento-bg);
205
370
  color: var(--bento-text);
206
371
  font-family: var(--bento-font-body);
207
372
  line-height: 1.5;
@@ -214,7 +379,7 @@
214
379
  [data-ui="bento"] *::before,
215
380
  [data-ui="bento"] *::after { box-sizing: border-box; }
216
381
 
217
- [data-ui="bento"][data-theme][data-mode] { background: var(--bento-theme-bg); background-size: var(--bento-theme-bg-size); }
382
+ [data-ui="bento"][data-mode] { background: var(--bento-theme-bg); background-size: var(--bento-theme-bg-size); }
218
383
 
219
384
  .bento-page { min-height: 100vh; padding: clamp(1rem, 4vw, 3rem); }
220
385
  .bento-container { width: min(100% - 2rem, 1200px); margin-inline: auto; }
@@ -229,10 +394,10 @@
229
394
  ========================================================= */
230
395
 
231
396
  .bento-title, .bento-heading, .bento-kicker, .bento-button, .bento-badge, .bento-nav-link { font-family: var(--bento-font-heading); }
232
- .bento-title { margin: 0; color: var(--bento-text); font-size: clamp(2rem, 5vw, 3.7rem); line-height: 1.02; letter-spacing: -0.055em; }
233
- .bento-heading { margin: 0; color: var(--bento-text); font-size: clamp(1.2rem, 2.5vw, 2rem); line-height: 1.15; letter-spacing: -0.03em; }
234
- .bento-kicker { margin: 0; color: var(--bento-primary); font-size: .82rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
235
- .bento-subtitle, .bento-copy { margin: 0; color: var(--bento-text-muted); line-height: 1.65; }
397
+ .bento-title { margin: 0; color: var(--bento-text); font-size: clamp(2.1rem, 5.5vw, 3.9rem); font-weight: 800; line-height: 1.02; letter-spacing: -.045em; }
398
+ .bento-heading { margin: 0; color: var(--bento-text); font-size: clamp(1.25rem, 2.75vw, 2.1rem); font-weight: 800; line-height: 1.15; letter-spacing: -.025em; }
399
+ .bento-kicker { margin: 0; color: var(--usk-primary-ink, var(--bento-primary)); font-size: .82rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
400
+ .bento-subtitle, .bento-copy { margin: 0; color: var(--bento-text-muted); line-height: 1.55; }
236
401
  .bento-text-muted { color: var(--bento-text-muted); }
237
402
  .bento-divider { width: 100%; height: 1px; border: 0; background: var(--bento-border); }
238
403
 
@@ -242,19 +407,19 @@
242
407
 
243
408
  .bento-surface, .bento-card, .bento-panel, .bento-toolbar, .bento-table-wrap {
244
409
  position: relative;
245
- background: linear-gradient(135deg, rgb(var(--bento-primary-rgb) / .08), transparent 36%), linear-gradient(180deg, rgb(255 255 255 / .08), rgb(255 255 255 / 0)), var(--bento-surface);
410
+ background: var(--bento-card-bg);
246
411
  color: var(--bento-text);
247
- border: 1px solid var(--bento-border);
248
- border-radius: var(--bento-radius-lg);
249
- box-shadow: 0 16px 40px rgb(0 0 0 / var(--bento-shadow-alpha));
412
+ border: 1px solid var(--bento-tile-edge);
413
+ border-radius: var(--bento-tile-radius);
414
+ box-shadow: var(--bento-tile-shadow);
250
415
  transition: transform var(--bento-transition-base), box-shadow var(--bento-transition-base), border-color var(--bento-transition-base), background var(--bento-transition-base);
251
416
  }
252
417
  .bento-card, .bento-panel { padding: var(--bento-space-6); }
253
418
  .bento-toolbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--bento-space-4); padding: var(--bento-space-4); }
254
- .bento-surface-sm { border-radius: var(--bento-radius-md); box-shadow: 0 6px 18px rgb(0 0 0 / calc(var(--bento-shadow-alpha) * .72)); }
255
- .bento-surface-lg { border-radius: var(--bento-radius-xl); box-shadow: 0 22px 60px rgb(0 0 0 / calc(var(--bento-shadow-alpha) + .08)); }
256
- .bento-well, .bento-inset { background: var(--bento-surface-soft); color: var(--bento-text); border: 1px solid rgb(var(--bento-border-rgb) / calc(var(--bento-border-alpha) * .7)); border-radius: var(--bento-radius-md); padding: var(--bento-space-5); box-shadow: inset 0 1px 3px rgb(0 0 0 / .08); }
257
- .bento-hover-lift:hover { transform: translateY(-3px) scale(1.005); box-shadow: 0 22px 60px rgb(0 0 0 / calc(var(--bento-shadow-alpha) + .12)); }
419
+ .bento-surface-sm { border-radius: var(--bento-radius-md); box-shadow: var(--bento-shadow-sm); }
420
+ .bento-surface-lg { border-radius: var(--bento-radius-xl); box-shadow: 0 1rem 2.5rem rgb(var(--bento-text-rgb) / calc(var(--bento-shadow-alpha) + .04)); }
421
+ .bento-well, .bento-inset { background: var(--bento-tile-secondary-bg); color: var(--bento-text); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-lg); padding: var(--bento-space-5); box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .72), inset 0 -1px 2px rgb(var(--bento-text-rgb) / .08); }
422
+ .bento-hover-lift:hover { transform: translateY(-2px); box-shadow: 0 1.1rem 2.4rem rgb(var(--bento-text-rgb) / calc(var(--bento-shadow-alpha) + .06)); }
258
423
 
259
424
  /* =========================================================
260
425
  Buttons
@@ -262,26 +427,26 @@
262
427
 
263
428
  .bento-button, .bento-icon-button {
264
429
  appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: var(--bento-space-2);
265
- min-height: 2.75rem; padding: .75rem 1.1rem; background: var(--bento-surface); color: var(--bento-text);
266
- border: 1px solid var(--bento-border); border-radius: var(--bento-radius-md); box-shadow: 0 6px 18px rgb(0 0 0 / var(--bento-shadow-alpha));
430
+ min-height: 2.75rem; padding: .7rem 1.1rem; background: var(--bento-control-bg); color: var(--bento-text);
431
+ border: 1px solid var(--bento-border); border-radius: var(--bento-control-radius); box-shadow: var(--bento-shadow-sm);
267
432
  font: inherit; font-weight: 800; line-height: 1; text-decoration: none; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; user-select: none;
268
433
  transition: color var(--bento-transition-fast), background var(--bento-transition-fast), border-color var(--bento-transition-fast), box-shadow var(--bento-transition-fast), transform var(--bento-transition-fast);
269
434
  }
270
- .bento-button:hover, .bento-icon-button:hover { transform: translateY(-1px); border-color: var(--bento-primary); }
271
- .bento-button:active, .bento-icon-button:active, .bento-button[aria-pressed="true"], .bento-icon-button[aria-pressed="true"], .bento-button.is-active, .bento-icon-button.is-active { transform: translateY(1px); box-shadow: inset 0 3px 10px rgb(0 0 0 / .18); }
435
+ .bento-button:hover, .bento-icon-button:hover { transform: translateY(-1px); background: var(--bento-surface-soft); border-color: rgb(var(--bento-primary-rgb) / .48); }
436
+ .bento-button:active, .bento-icon-button:active, .bento-button[aria-pressed="true"], .bento-icon-button[aria-pressed="true"], .bento-button.is-active, .bento-icon-button.is-active { transform: translateY(1px); box-shadow: inset 0 2px 6px rgb(var(--bento-text-rgb) / .14); }
272
437
  .bento-button-primary { background: var(--bento-primary); color: var(--bento-on-primary); border-color: var(--bento-primary); }
273
438
  .bento-button-primary:hover { background: var(--bento-primary-hover); border-color: var(--bento-primary-hover); }
274
- .bento-button-secondary { background: var(--bento-secondary); color: var(--bento-on-secondary); border-color: var(--bento-secondary); }
275
- .bento-button-secondary:hover { background: var(--bento-secondary-hover); border-color: var(--bento-secondary-hover); }
439
+ .bento-button-secondary { background: rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)); color: var(--usk-primary-ink, var(--bento-primary)); border-color: rgb(var(--bento-primary-rgb) / .32); box-shadow: none; }
440
+ .bento-button-secondary:hover { background: rgb(var(--bento-primary-rgb) / .06); border-color: rgb(var(--bento-primary-rgb) / .52); }
276
441
  .bento-button-danger { background: var(--bento-danger); color: var(--bento-on-danger); border-color: var(--bento-danger); }
277
- .bento-button-ghost { background: transparent; color: var(--bento-text); box-shadow: none; }
278
- .bento-icon-button { width: 2.75rem; padding: 0; border-radius: var(--bento-radius-pill); }
442
+ .bento-button-ghost { background: transparent; color: var(--usk-primary-ink, var(--bento-primary)); border-color: transparent; box-shadow: none; }
443
+ .bento-icon-button { width: 2.75rem; padding: 0; border-radius: var(--bento-control-radius); }
279
444
  .bento-button:disabled, .bento-icon-button:disabled, .bento-disabled { opacity: .55; cursor: not-allowed; transform: none; }
280
445
 
281
446
  /* Theme-responsive component defaults */
282
447
  .bento-card, .bento-panel { background: var(--bento-card-bg); }
283
448
  .bento-toolbar, .bento-table-wrap { background: var(--bento-control-bg); }
284
- .bento-button:not(.bento-button-primary):not(.bento-button-secondary):not(.bento-button-danger):not(.bento-button-ghost), .bento-icon-button { background: var(--bento-control-bg); }
449
+ .bento-button:where(:not(.bento-button-primary):not(.bento-button-secondary):not(.bento-button-danger):not(.bento-button-warning):not(.bento-button-ghost):not(.is-primary):not(.is-secondary):not(.is-danger):not(.is-ghost):not(.is-hover):not(.is-busy)), .bento-icon-button { background: var(--bento-control-bg); }
285
450
  .bento-button, .bento-icon-button, .bento-badge, .bento-nav-link { font-family: var(--bento-font-control); }
286
451
 
287
452
 
@@ -290,83 +455,83 @@
290
455
  ========================================================= */
291
456
 
292
457
  .bento-field { display: flex; flex-direction: column; gap: var(--bento-space-2); }
293
- .bento-label { color: var(--bento-text); font-size: .925rem; font-weight: 800; }
458
+ .bento-label { color: var(--bento-text); font-size: .9rem; font-weight: 750; }
294
459
  .bento-input, .bento-textarea, .bento-select {
295
- width: 100%; min-height: 2.875rem; padding: .75rem 1rem; background: var(--bento-surface-soft); color: var(--bento-text);
296
- border: 1px solid var(--bento-border); border-radius: var(--bento-radius-md); font: inherit; outline: none;
460
+ width: 100%; min-height: 2.75rem; padding: .68rem 1rem; background: var(--bento-control-bg); color: var(--bento-text);
461
+ border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-control-radius); box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .72); font: inherit; outline: none;
297
462
  transition: background var(--bento-transition-fast), border-color var(--bento-transition-fast), box-shadow var(--bento-transition-fast);
298
463
  }
299
- .bento-textarea { min-height: 8rem; resize: vertical; }
464
+ .bento-textarea { min-height: 7rem; resize: vertical; }
300
465
  .bento-input::placeholder, .bento-textarea::placeholder { color: var(--bento-text-muted); opacity: .82; }
301
- .bento-input:hover, .bento-textarea:hover, .bento-select:hover { border-color: rgb(var(--bento-primary-rgb) / .58); }
466
+ .bento-input:hover, .bento-textarea:hover, .bento-select:hover { border-color: rgb(var(--bento-primary-rgb) / .42); }
302
467
  .bento-input:focus, .bento-textarea:focus, .bento-select:focus { border-color: var(--bento-focus); box-shadow: var(--bento-focus-ring); }
303
468
  .bento-help-text { color: var(--bento-text-muted); font-size: .875rem; line-height: 1.45; }
304
469
 
305
470
  /* Checkbox / Radio */
306
471
  .bento-check, .bento-radio { display: inline-flex; align-items: center; gap: var(--bento-space-2); color: var(--bento-text); cursor: pointer; }
307
472
  .bento-check input, .bento-radio input { position: absolute; opacity: 0; pointer-events: none; }
308
- .bento-check-control, .bento-radio-control { display: inline-grid; place-items: center; width: 1.35rem; height: 1.35rem; background: var(--bento-surface-soft); border: 1px solid var(--bento-border); transition: background var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
473
+ .bento-check-control, .bento-radio-control { display: inline-grid; place-items: center; width: 1.25rem; height: 1.25rem; background: var(--bento-control-bg); border: 1px solid var(--bento-tile-edge); box-shadow: var(--bento-shadow-sm); transition: background var(--bento-transition-fast), border-color var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
309
474
  .bento-check-control { border-radius: var(--bento-radius-xs); }
310
475
  .bento-radio-control { border-radius: 50%; }
311
- .bento-check input:checked + .bento-check-control, .bento-radio input:checked + .bento-radio-control { background: var(--bento-primary); border-color: var(--bento-primary); box-shadow: var(--bento-focus-ring); }
312
- .bento-check input:checked + .bento-check-control::after { content: "✓"; color: var(--bento-on-primary); font-size: .9rem; font-weight: 900; }
313
- .bento-radio input:checked + .bento-radio-control::after { content: ""; width: .55rem; height: .55rem; background: var(--bento-on-primary); border-radius: 50%; }
476
+ .bento-check input:checked + .bento-check-control, .bento-radio input:checked + .bento-radio-control { background: var(--bento-primary); border-color: var(--bento-primary); box-shadow: 0 0 0 .16rem rgb(var(--bento-primary-rgb) / .18); }
477
+ .bento-check input:checked + .bento-check-control::after { content: "✓"; color: var(--bento-on-primary); font-size: .78rem; font-weight: 900; line-height: 1; }
478
+ .bento-radio input:checked + .bento-radio-control::after { content: ""; width: .48rem; height: .48rem; background: var(--bento-on-primary); border-radius: 50%; }
314
479
 
315
480
  /* Switch */
316
481
  .bento-switch { display: inline-flex; align-items: center; gap: var(--bento-space-3); color: var(--bento-text); cursor: pointer; }
317
482
  .bento-switch input { position: absolute; opacity: 0; pointer-events: none; }
318
- .bento-switch-track { position: relative; width: 3.5rem; height: 1.9rem; background: var(--bento-surface-soft); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-pill); transition: background var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
319
- .bento-switch-thumb { position: absolute; top: .22rem; left: .22rem; width: 1.34rem; height: 1.34rem; background: var(--bento-surface-strong); border: 1px solid var(--bento-border); border-radius: 50%; box-shadow: 0 4px 12px rgb(0 0 0 / var(--bento-shadow-alpha)); transition: left var(--bento-transition-fast), background var(--bento-transition-fast); }
483
+ .bento-switch-track { position: relative; width: 3rem; height: 1.6rem; background: var(--bento-surface-soft); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-pill); box-shadow: inset 0 1px 3px rgb(var(--bento-text-rgb) / .12); transition: background var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
484
+ .bento-switch-thumb { position: absolute; top: .16rem; left: .16rem; width: 1.15rem; height: 1.15rem; background: var(--bento-surface-strong); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-sm); box-shadow: var(--bento-shadow-sm); transition: left var(--bento-transition-fast), background var(--bento-transition-fast); }
320
485
  .bento-switch input:checked + .bento-switch-track { background: var(--bento-primary); border-color: var(--bento-primary); }
321
- .bento-switch input:checked + .bento-switch-track .bento-switch-thumb { left: calc(100% - 1.34rem - .22rem); background: var(--bento-on-primary); }
486
+ .bento-switch input:checked + .bento-switch-track .bento-switch-thumb { left: calc(100% - 1.15rem - .16rem); background: var(--bento-on-primary); }
322
487
 
323
488
  /* =========================================================
324
489
  Badges / Nav / Progress / Alerts / Tables
325
490
  ========================================================= */
326
491
 
327
- .bento-badge { display: inline-flex; align-items: center; gap: var(--bento-space-1); min-height: 1.75rem; padding: .35rem .7rem; background: var(--bento-surface-soft); color: var(--bento-text); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-pill); font-size: .8125rem; font-weight: 850; line-height: 1; }
492
+ .bento-badge { display: inline-flex; align-items: center; gap: var(--bento-space-1); min-height: 1.75rem; padding: .38rem .72rem; background: var(--bento-tile-secondary-bg); color: var(--bento-text); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-sm); box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .62); font-size: .8125rem; font-weight: 800; line-height: 1; }
328
493
  .bento-badge-primary { background: var(--bento-primary); color: var(--bento-on-primary); border-color: var(--bento-primary); }
329
- .bento-badge-secondary { background: var(--bento-secondary); color: var(--bento-on-secondary); border-color: var(--bento-secondary); }
330
- .bento-badge-success { background: var(--bento-success); color: var(--bento-on-success); border-color: var(--bento-success); }
331
- .bento-badge-warning { background: var(--bento-warning); color: var(--bento-on-warning); border-color: var(--bento-warning); }
332
- .bento-badge-danger { background: var(--bento-danger); color: var(--bento-on-danger); border-color: var(--bento-danger); }
494
+ .bento-badge-secondary { background: rgb(var(--bento-primary-rgb) / .10); color: var(--usk-primary-ink, var(--bento-primary)); border-color: transparent; }
495
+ .bento-badge-success { background: rgb(var(--bento-success-rgb) / .14); color: var(--bento-success); border-color: transparent; }
496
+ .bento-badge-warning { background: rgb(var(--bento-warning-rgb) / .14); color: var(--bento-warning); border-color: transparent; }
497
+ .bento-badge-danger { background: rgb(var(--bento-danger-rgb) / .14); color: var(--bento-danger); border-color: transparent; }
333
498
 
334
- .bento-nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--bento-space-2); padding: var(--bento-space-2); background: var(--bento-surface); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-xl); box-shadow: 0 10px 30px rgb(0 0 0 / var(--bento-shadow-alpha)); }
335
- .bento-nav-link { display: inline-flex; align-items: center; justify-content: center; min-height: 2.5rem; padding: .65rem 1rem; color: var(--bento-text-muted); border-radius: var(--bento-radius-pill); text-decoration: none; font-weight: 850; transition: color var(--bento-transition-fast), background var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
499
+ .bento-nav { display: flex; flex-wrap: wrap; align-items: center; gap: var(--bento-space-2); padding: var(--bento-space-2); background: var(--bento-card-bg); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-tile-radius); box-shadow: var(--bento-tile-shadow); }
500
+ .bento-nav-link { display: inline-flex; align-items: center; justify-content: center; min-height: 2.5rem; padding: .6rem 1rem; color: var(--bento-text-muted); border-radius: var(--bento-control-radius); text-decoration: none; font-weight: 800; transition: color var(--bento-transition-fast), background var(--bento-transition-fast), box-shadow var(--bento-transition-fast); }
336
501
  .bento-nav-link:hover { color: var(--bento-text); background: var(--bento-surface-soft); }
337
502
  .bento-nav-link[aria-current="page"], .bento-nav-link.is-active { color: var(--bento-on-primary); background: var(--bento-primary); }
338
503
 
339
504
  /* Tooltips use compact contrast surfaces that stay readable across theme modes. */
340
505
  .bento-tooltip, [data-ui="bento"] :where(.ui-tooltip, [role="tooltip"], [data-tooltip]) {
341
506
  display: inline-flex; align-items: center; gap: .45rem; max-inline-size: 16rem; padding: .6rem .8rem;
342
- background: linear-gradient(135deg, rgb(var(--bento-primary-rgb) / .18), transparent 52%), var(--bento-surface-strong);
343
- color: var(--bento-text); border: 1px solid rgb(var(--bento-border-rgb) / .7); border-radius: var(--bento-radius-sm);
344
- box-shadow: 0 .65rem 1.35rem rgb(0 0 0 / var(--bento-shadow-alpha)); font-size: .82rem; font-weight: 850; line-height: 1.35;
507
+ background: var(--bento-text); color: var(--bento-bg); border: 1px solid rgb(var(--bento-border-rgb) / .7); border-radius: var(--bento-radius-md);
508
+ box-shadow: 0 .75rem 1.6rem rgb(var(--bento-text-rgb) / .24); font-size: .82rem; font-weight: 800; line-height: 1.35;
345
509
  }
346
- .bento-tooltip-arrow { inline-size: .6rem; block-size: .6rem; flex: 0 0 auto; background: var(--bento-primary); border-radius: var(--bento-radius-xs); transform: rotate(45deg); }
510
+ .bento-tooltip-arrow { inline-size: .6rem; block-size: .6rem; flex: 0 0 auto; background: currentColor; border-radius: var(--bento-radius-xs); opacity: .9; transform: rotate(45deg); }
347
511
 
348
- .bento-progress { width: 100%; height: .9rem; overflow: hidden; background: var(--bento-surface-soft); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-pill); }
349
- .bento-progress-bar { height: 100%; width: var(--bento-progress-value, 50%); background: linear-gradient(90deg, var(--bento-primary), var(--bento-accent)); border-radius: inherit; }
512
+ .bento-progress { width: 100%; height: .6rem; overflow: hidden; background: linear-gradient(90deg, rgb(var(--bento-surface-soft-rgb) / .86), rgb(var(--bento-primary-rgb) / .08)); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-pill); box-shadow: inset 0 1px 2px rgb(var(--bento-text-rgb) / .12); }
513
+ .bento-progress-bar { height: 100%; width: var(--bento-progress-value, 50%); background: var(--bento-primary); border-radius: inherit; }
350
514
 
351
- .bento-alert { display: grid; gap: var(--bento-space-2); padding: var(--bento-space-4); background: var(--bento-surface); color: var(--bento-text); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-lg); box-shadow: 0 10px 30px rgb(0 0 0 / var(--bento-shadow-alpha)); }
352
- .bento-alert-success { border-left-color: var(--bento-success); }
353
- .bento-alert-warning { border-left-color: var(--bento-warning); }
354
- .bento-alert-danger { border-left-color: var(--bento-danger); }
515
+ .bento-alert { display: grid; gap: var(--bento-space-2); padding: var(--bento-space-5); background: var(--bento-tile-primary-bg); color: var(--bento-text); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-tile-radius); box-shadow: var(--bento-shadow-sm); }
516
+ .bento-alert-success { background: linear-gradient(145deg, rgb(var(--bento-success-rgb) / .18), rgb(var(--bento-primary-rgb) / .04)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)); border-color: rgb(var(--bento-success-rgb) / .28); }
517
+ .bento-alert-warning { background: linear-gradient(145deg, rgb(var(--bento-warning-rgb) / .2), rgb(var(--bento-accent-rgb) / .04)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)); border-color: rgb(var(--bento-warning-rgb) / .28); }
518
+ .bento-alert-danger { background: linear-gradient(145deg, rgb(var(--bento-danger-rgb) / .18), rgb(var(--bento-accent-rgb) / .04)), rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha)); border-color: rgb(var(--bento-danger-rgb) / .28); }
355
519
  .bento-alert-title { margin: 0; font-weight: 900; }
356
520
  .bento-alert-body { margin: 0; color: var(--bento-text-muted); line-height: 1.55; }
357
521
 
358
522
  .bento-table-wrap { overflow: auto; }
359
- .bento-table { width: 100%; border-collapse: collapse; }
360
- .bento-table th, .bento-table td { padding: .95rem 1rem; text-align: left; border-bottom: 1px solid var(--bento-border); }
361
- .bento-table th { color: var(--bento-text); font-size: .82rem; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; background: rgb(var(--bento-primary-rgb) / .08); }
523
+ .bento-table { width: 100%; border-collapse: separate; border-spacing: 0; }
524
+ .bento-table th, .bento-table td { padding: .95rem 1.1rem; text-align: left; border-bottom: 1px solid var(--bento-tile-edge); }
525
+ .bento-table th { color: var(--bento-text); font-size: .82rem; font-weight: 800; text-transform: none; letter-spacing: 0; background: rgb(var(--bento-primary-rgb) / .08); }
362
526
  .bento-table td { color: var(--bento-text-muted); }
363
- .bento-table tr:hover td { background: rgb(var(--bento-primary-rgb) / .045); }
527
+ .bento-table tbody tr:nth-child(even) td { background: rgb(var(--bento-accent-rgb) / .035); }
528
+ .bento-table tr:hover td { background: rgb(var(--bento-primary-rgb) / .08); }
364
529
 
365
530
  /* =========================================================
366
531
  Utilities
367
532
  ========================================================= */
368
533
 
369
- .bento-text-primary { color: var(--bento-primary); } .bento-text-secondary { color: var(--bento-secondary); } .bento-text-accent { color: var(--bento-accent); } .bento-text-success { color: var(--bento-success); } .bento-text-warning { color: var(--bento-warning); } .bento-text-danger { color: var(--bento-danger); }
534
+ .bento-text-primary { color: var(--usk-primary-ink, var(--bento-primary)); } .bento-text-secondary { color: var(--bento-secondary); } .bento-text-accent { color: var(--usk-accent-ink, var(--bento-accent)); } .bento-text-success { color: var(--bento-success); } .bento-text-warning { color: var(--bento-warning); } .bento-text-danger { color: var(--bento-danger); }
370
535
  .bento-bg-primary { background: var(--bento-primary); color: var(--bento-on-primary); } .bento-bg-secondary { background: var(--bento-secondary); color: var(--bento-on-secondary); }
371
536
  .bento-border { border: 1px solid var(--bento-border); } .bento-rounded { border-radius: var(--bento-radius-md); } .bento-rounded-lg { border-radius: var(--bento-radius-lg); } .bento-rounded-xl { border-radius: var(--bento-radius-xl); } .bento-pill { border-radius: var(--bento-radius-pill); }
372
537
  .bento-sr-only, .bento-visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
@@ -381,7 +546,9 @@
381
546
  grid-auto-rows: minmax(9rem, auto);
382
547
  gap: var(--bento-space-5);
383
548
  }
384
- .bento-tile { min-height: 12rem; padding: var(--bento-space-6); background: linear-gradient(135deg, rgb(var(--bento-primary-rgb) / .1), transparent 48%), var(--bento-surface); border: 1px solid var(--bento-border); border-radius: var(--bento-radius-xl); box-shadow: 0 16px 40px rgb(0 0 0 / var(--bento-shadow-alpha)); }
549
+ .bento-tile { min-height: 12rem; padding: var(--bento-space-6); background: var(--bento-tile-primary-bg); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-tile-radius); box-shadow: var(--bento-tile-shadow); }
550
+ .bento-tile:nth-child(3n + 2) { background: var(--bento-tile-accent-bg); }
551
+ .bento-tile:nth-child(3n) { background: var(--bento-tile-secondary-bg); }
385
552
  .bento-tile,
386
553
  .bento-tile-lg,
387
554
  .bento-tile-md,
@@ -391,7 +558,7 @@
391
558
  grid-row: auto;
392
559
  }
393
560
  .bento-stat { display: grid; gap: .25rem; }
394
- .bento-stat-value { color: var(--bento-primary); font-size: clamp(2rem, 4vw, 3rem); font-weight: 950; line-height: 1; }
561
+ .bento-stat-value { color: var(--usk-primary-ink, var(--bento-primary)); font-size: clamp(2rem, 4vw, 3rem); font-weight: 950; line-height: 1; }
395
562
  .bento-stat-label { color: var(--bento-text-muted); font-weight: 750; overflow-wrap: normal; word-break: normal; }
396
563
 
397
564
  @container (min-width: 34rem) {
@@ -499,7 +666,7 @@
499
666
  .bento-button.bento-button-outline-heavy,
500
667
  .bento-button-outline-heavy {
501
668
  background: transparent;
502
- color: var(--bento-primary);
669
+ color: var(--usk-primary-ink, var(--bento-primary));
503
670
  border-style: solid;
504
671
  border-width: 2px;
505
672
  border-color: var(--bento-primary);
@@ -535,7 +702,6 @@
535
702
  .bento-feature-strip {
536
703
  display: grid;
537
704
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr));
538
- overflow: hidden;
539
705
  background: var(--bento-card-bg);
540
706
  color: var(--bento-text);
541
707
  border: 1px solid var(--bento-border);
@@ -570,7 +736,7 @@
570
736
 
571
737
  .bento-eyebrow {
572
738
  margin: 0;
573
- color: var(--bento-primary);
739
+ color: var(--usk-primary-ink, var(--bento-primary));
574
740
  font-family: var(--bento-font-heading);
575
741
  font-size: .76rem;
576
742
  font-weight: 900;
@@ -615,54 +781,86 @@
615
781
  .bento-feature-item:last-child { border-block-end: 0; }
616
782
  }
617
783
 
618
- .bento-card-service, .bento-card-feature { border-radius: var(--bento-radius-xl); }
619
- .bento-icon-medallion { border-radius: 32%; box-shadow: 0 .8rem 1.8rem rgb(0 0 0 / .16); }
784
+ .bento-card-service { background: var(--bento-tile-primary-bg); border-radius: var(--bento-tile-radius); }
785
+ .bento-card-feature { background: var(--bento-tile-accent-bg); border-radius: var(--bento-tile-radius); }
786
+ .bento-icon-medallion {
787
+ background: rgb(var(--bento-primary-rgb) / .10);
788
+ color: var(--usk-primary-ink, var(--bento-primary));
789
+ border: 1px solid rgb(var(--bento-primary-rgb) / .20);
790
+ border-radius: var(--bento-radius-md);
791
+ box-shadow: var(--bento-shadow-sm);
792
+ }
620
793
  .bento-feature-strip { gap: var(--bento-space-3); padding: var(--bento-space-3); }
621
- .bento-feature-item { border: 1px solid var(--bento-border); border-radius: var(--bento-radius-lg); }
794
+ .bento-feature-item { background: var(--bento-tile-primary-bg); border: 1px solid var(--bento-tile-edge); border-radius: var(--bento-radius-lg); box-shadow: var(--bento-shadow-sm); }
795
+ .bento-feature-item:nth-child(3n + 2) { background: var(--bento-tile-accent-bg); }
796
+ .bento-feature-item:nth-child(3n) { background: var(--bento-tile-secondary-bg); }
622
797
 
623
- /* Filled and framed actions behave as bounded tiles with matching stepped corners. */
798
+ /* Filled and framed actions behave as bounded, friendly tiles. */
624
799
  .bento-button.bento-button-cut, .bento-button-cut {
800
+ min-block-size: 2.75rem;
625
801
  inline-size: min(100%, 14rem);
626
802
  min-inline-size: 6rem;
627
803
  max-inline-size: 100%;
628
804
  justify-self: center;
629
805
  justify-content: center;
630
- clip-path: polygon(0 0, calc(100% - .65rem) 0, 100% .65rem, 100% calc(100% - .65rem), calc(100% - .65rem) 100%, 0 100%);
806
+ border-radius: var(--bento-control-radius);
807
+ clip-path: none;
631
808
  }
632
809
  .bento-button.bento-button-outline-heavy, .bento-button-outline-heavy {
633
- border-width: 2px;
634
- border-radius: 0;
635
- clip-path: polygon(0 .5rem, .5rem 0, 100% 0, 100% calc(100% - .5rem), calc(100% - .5rem) 100%, 0 100%);
636
- box-shadow: inset 0 0 0 1px rgb(var(--bento-surface-strong-rgb) / .82);
810
+ background: rgb(var(--bento-surface-strong-rgb) / var(--bento-panel-alpha));
811
+ color: var(--usk-primary-ink, var(--bento-primary));
812
+ border-width: 1px;
813
+ border-color: rgb(var(--bento-primary-rgb) / .32);
814
+ border-radius: var(--bento-control-radius);
815
+ clip-path: none;
816
+ box-shadow: var(--bento-shadow-sm);
637
817
  }
638
818
 
639
- /* Cards, strips, and native surfaces use nested tile framing instead of pills. */
819
+ /* Cards, strips, and native surfaces use soft mosaic tiles instead of hard blocks. */
640
820
  .bento-card-service, .bento-media-scrim, .bento-feature-strip, .bento-callout-bar {
641
- border: 1px solid var(--bento-border);
642
- border-radius: var(--bento-radius-xl);
643
- box-shadow: inset 0 0 0 1px rgb(var(--bento-surface-strong-rgb) / .62), 0 .75rem 1.5rem rgb(var(--bento-text-rgb) / .1);
821
+ border: 1px solid var(--bento-tile-edge);
822
+ border-radius: var(--bento-tile-radius);
823
+ box-shadow: var(--bento-tile-shadow);
644
824
  }
825
+ .bento-feature-strip { background: var(--bento-card-bg); }
826
+ .bento-callout-bar { background: var(--bento-tile-secondary-bg); }
645
827
  .bento-grid-feature {
646
828
  padding: var(--bento-space-3);
647
- background: rgb(var(--bento-surface-rgb) / .36);
648
- border: 1px solid var(--bento-border);
649
- border-radius: var(--bento-radius-xl);
650
- box-shadow: inset 0 0 0 1px rgb(var(--bento-surface-strong-rgb) / .6);
829
+ background: rgb(var(--bento-primary-rgb) / .055);
830
+ border: 1px solid var(--bento-tile-edge);
831
+ border-radius: var(--bento-tile-radius);
832
+ box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .55);
651
833
  }
652
- [data-ui="bento"][data-theme][data-mode] :where(button:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class])) {
653
- border: 2px solid var(--bento-primary);
654
- border-radius: var(--bento-radius-sm);
655
- box-shadow: inset 0 0 0 1px rgb(var(--bento-surface-strong-rgb) / .68);
834
+ [data-ui="bento"][data-mode] :where(fieldset, article, aside) {
835
+ background: var(--bento-card-bg);
836
+ border: 1px solid var(--bento-tile-edge);
837
+ border-radius: var(--bento-tile-radius);
838
+ box-shadow: var(--bento-tile-shadow);
656
839
  }
657
- [data-ui="bento"][data-theme][data-mode] :where(dialog) {
658
- border: 1px solid var(--bento-border);
659
- border-radius: var(--bento-radius-xl);
660
- box-shadow: inset 0 0 0 1px rgb(var(--bento-surface-strong-rgb) / .64), 0 1rem 2.2rem rgb(var(--bento-text-rgb) / .18);
840
+ [data-ui="bento"][data-mode] :where(legend) { font-family: var(--bento-font-heading); font-weight: 800; }
841
+ [data-ui="bento"][data-mode] :where(label) { font-weight: 750; }
842
+ [data-ui="bento"][data-mode] :where(button:not([class]), input[type="button"]:not([class]), input[type="submit"]:not([class]), input[type="reset"]:not([class])) {
843
+ min-block-size: var(--usk-native-control-min-block-size);
844
+ padding: .7rem 1.1rem;
845
+ background-color: var(--bento-surface-strong);
846
+ background-image: var(--bento-control-bg);
847
+ color: var(--bento-text);
848
+ border: 1px solid var(--bento-tile-edge);
849
+ border-radius: var(--bento-control-radius);
850
+ box-shadow: var(--bento-shadow-sm);
851
+ font-family: var(--bento-font-control);
852
+ font-weight: 800;
853
+ }
854
+ [data-ui="bento"][data-mode] :where(dialog) {
855
+ background: var(--bento-card-bg);
856
+ border: 1px solid var(--bento-tile-edge);
857
+ border-radius: var(--bento-tile-radius);
858
+ box-shadow: var(--bento-tile-shadow);
661
859
  }
662
860
 
663
- /* Busy indicators rotate as compact stepped tiles. */
861
+ /* Busy indicators rotate as compact mosaic tiles. */
664
862
  .bento-button[aria-busy="true"]::after, .bento-icon-button[aria-busy="true"]::after, [data-ui="bento"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"])::after {
665
- border: .12em solid currentColor; border-radius: .18em; background: conic-gradient(currentColor 0 25%, transparent 0 50%, currentColor 0 75%, transparent 0); box-shadow: inset 0 0 0 .12em rgb(var(--bento-surface-rgb) / .72); clip-path: inset(0 round .18em); animation: bento-spin .86s steps(4, end) infinite;
863
+ border: .12em solid currentColor; border-radius: .24em; background: conic-gradient(currentColor 0 25%, transparent 0 50%, currentColor 0 75%, transparent 0); box-shadow: inset 0 0 0 .12em rgb(var(--bento-surface-rgb) / .72); clip-path: inset(0 round .24em); animation: bento-spin .86s steps(4, end) infinite;
666
864
  }
667
865
 
668
866
  @media (prefers-reduced-motion: reduce) {
@@ -681,3 +879,874 @@
681
879
  [data-ui="bento"] a { color: #000 !important; text-decoration: underline; }
682
880
  }
683
881
  }
882
+
883
+ @layer ui-style-kit.bento {
884
+ /* Keeps semantic field states above preset-specific material paint. */
885
+ .bento-input[aria-invalid="true"], .bento-textarea[aria-invalid="true"], .bento-select[aria-invalid="true"] { border-color: var(--bento-danger); box-shadow: 0 0 0 2px rgb(var(--bento-danger-rgb) / .18); }
886
+ .bento-input[readonly], .bento-textarea[readonly] { border-style: dashed; filter: saturate(.72); opacity: .78; }
887
+ }
888
+
889
+ @layer ui-style-kit.bento {
890
+ /**
891
+ * Locks Bento controls to the spacious rounded mosaic tile system.
892
+ * Tinted depth, inset highlights, and soft elevation echo the reference tiles.
893
+ */
894
+ [data-ui="bento"][data-mode] {
895
+ --usk-native-control-padding-block: .68rem;
896
+ --usk-native-control-padding-inline: 1.05rem;
897
+ --usk-native-radius-sm: .625rem;
898
+ --usk-native-radius: .75rem;
899
+ --usk-native-radius-lg: 1.5rem;
900
+ --usk-native-shadow: 0 .3rem .85rem rgb(var(--bento-text-rgb) / .1), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .68);
901
+ --usk-native-shadow-md: 0 .85rem 2.2rem rgb(var(--bento-text-rgb) / .14), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .72);
902
+ --usk-native-focus-ring: 0 0 0 .2rem rgb(var(--bento-focus-rgb) / .28);
903
+ --usk-native-subcontrol-padding-block: .54rem;
904
+ --usk-native-subcontrol-padding-inline: .84rem;
905
+ --usk-native-choice-size: 1.25rem;
906
+ --usk-native-choice-background: linear-gradient(145deg, rgb(var(--bento-primary-rgb) / .08), rgb(var(--bento-surface-strong-rgb) / .96));
907
+ --usk-native-choice-border: 1px solid rgb(var(--bento-border-rgb) / .54);
908
+ --usk-native-checkbox-radius: .375rem;
909
+ --usk-native-choice-shadow: 0 .2rem .55rem rgb(var(--bento-text-rgb) / .12), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .78);
910
+ --usk-native-choice-checked-background: linear-gradient(145deg, var(--bento-primary), var(--bento-primary-hover));
911
+ --usk-native-select-indicator-size: .38rem .38rem, .38rem .38rem;
912
+ --usk-native-select-indicator-position: calc(100% - 1.08rem) 50%, calc(100% - .78rem) 50%;
913
+ --usk-native-select-padding-inline-end: 2.4rem;
914
+ --usk-native-range-track-size: .6rem;
915
+ --usk-native-range-track-background: linear-gradient(90deg, rgb(var(--bento-surface-soft-rgb) / .9), rgb(var(--bento-primary-rgb) / .12));
916
+ --usk-native-range-track-border: 0 solid transparent;
917
+ --usk-native-range-track-shadow: inset 0 1px 2px rgb(var(--bento-text-rgb) / .12);
918
+ --usk-native-range-progress-background: linear-gradient(90deg, var(--bento-primary), var(--bento-accent));
919
+ --usk-native-range-thumb-size: 1.35rem;
920
+ --usk-native-range-thumb-border: 1px solid rgb(var(--bento-primary-rgb) / .28);
921
+ --usk-native-range-thumb-radius: .5rem;
922
+ --usk-native-range-thumb-shadow: 0 .35rem .8rem rgb(var(--bento-text-rgb) / .18), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .78);
923
+ --usk-native-progress-size: .6rem;
924
+ --usk-native-progress-track-background: linear-gradient(90deg, rgb(var(--bento-surface-soft-rgb) / .92), rgb(var(--bento-primary-rgb) / .08));
925
+ --usk-native-progress-track-border: 0 solid transparent;
926
+ --usk-native-progress-track-shadow: inset 0 1px 2px rgb(var(--bento-text-rgb) / .12);
927
+ --usk-native-progress-value-background: linear-gradient(90deg, var(--bento-primary), var(--bento-accent));
928
+ --usk-native-progress-value-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .32);
929
+ --usk-native-scrollbar-size: .8rem;
930
+ --usk-native-scrollbar-track: rgb(var(--bento-surface-soft-rgb) / .74);
931
+ --usk-native-scrollbar-thumb: linear-gradient(180deg, var(--bento-primary), var(--bento-primary-hover));
932
+ --usk-native-scrollbar-radius: 999px;
933
+ }
934
+
935
+ /** Carries the friendly tile grammar through authored components and feedback states. */
936
+ .bento-title { margin-block: .75rem; font-weight: 800; letter-spacing: max(.018em, .5px); }
937
+ .bento-label { font-size: .9rem; font-weight: 750; }
938
+ .bento-button, .bento-icon-button {
939
+ min-height: 2.75rem;
940
+ padding: .68rem 1.05rem;
941
+ background: var(--bento-control-bg);
942
+ border-radius: .75rem;
943
+ box-shadow: var(--bento-shadow-sm);
944
+ font-weight: 800;
945
+ }
946
+ .bento-icon-button { padding: 0; }
947
+ .bento-input, .bento-textarea, .bento-select {
948
+ min-height: 2.75rem;
949
+ padding: .68rem 1rem;
950
+ border-radius: .75rem;
951
+ box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .72);
952
+ }
953
+ .bento-surface, .bento-card, .bento-panel, .bento-toolbar, .bento-table-wrap {
954
+ background: var(--bento-card-bg);
955
+ border: 1px solid var(--bento-tile-edge);
956
+ border-radius: 1.5rem;
957
+ box-shadow: var(--bento-tile-shadow);
958
+ }
959
+ .bento-card, .bento-panel { padding: 1.5rem; }
960
+ .bento-card:nth-of-type(3n + 2), .bento-panel:nth-of-type(3n + 2) { background: var(--bento-tile-accent-bg); }
961
+ .bento-card:nth-of-type(3n), .bento-panel:nth-of-type(3n) { background: var(--bento-tile-secondary-bg); }
962
+ .bento-well, .bento-inset {
963
+ padding: 1.25rem;
964
+ background: var(--bento-tile-secondary-bg);
965
+ border: 1px solid var(--bento-tile-edge);
966
+ border-radius: 1.125rem;
967
+ box-shadow: inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .74), inset 0 -1px 2px rgb(var(--bento-text-rgb) / .08);
968
+ }
969
+ .bento-badge { min-height: 1.7rem; padding: .3rem .7rem; border-radius: .625rem; }
970
+ .bento-alert {
971
+ background: linear-gradient(145deg, rgb(var(--bento-primary-rgb) / .1), rgb(var(--bento-accent-rgb) / .055)), var(--bento-surface-strong);
972
+ border: 1px solid var(--bento-tile-edge);
973
+ border-radius: 1.25rem;
974
+ box-shadow: var(--bento-shadow-sm);
975
+ }
976
+ .bento-progress { height: .6rem; background: rgb(var(--bento-surface-soft-rgb) / .88); }
977
+ .bento-progress-bar { background: linear-gradient(90deg, var(--bento-primary), var(--bento-accent)); }
978
+ .bento-table-wrap { background: var(--bento-card-bg); border-radius: 1.5rem; box-shadow: var(--bento-tile-shadow); }
979
+ .bento-table th { padding: .95rem 1.1rem; background: rgb(var(--bento-primary-rgb) / .08); font-weight: 800; }
980
+ .bento-table td { padding: .95rem 1.1rem; }
981
+ .bento-nav { padding: .35rem; border-radius: 1rem; box-shadow: var(--bento-shadow-sm); }
982
+ .bento-nav-link { min-height: 2.5rem; padding: .6rem .9rem; border-radius: .75rem; }
983
+ .bento-tooltip, [data-ui="bento"] :where(.ui-tooltip, [role="tooltip"], [data-tooltip]) { border-radius: .75rem; box-shadow: var(--bento-shadow-md); }
984
+ .bento-card-service, .bento-card-feature, .bento-feature-strip, .bento-callout-bar {
985
+ padding: 1.5rem;
986
+ border-radius: 1.5rem;
987
+ box-shadow: var(--bento-tile-shadow);
988
+ }
989
+ .bento-feature-item { padding: 1rem; border-radius: 1rem; }
990
+ [data-ui="bento"][data-mode] :where(dialog) {
991
+ background: var(--bento-card-bg);
992
+ border-radius: 1.5rem;
993
+ box-shadow: 0 1.25rem 3rem rgb(var(--bento-text-rgb) / .2), inset 0 1px 0 rgb(var(--bento-surface-strong-rgb) / .72);
994
+ }
995
+ }
996
+
997
+ @layer ui-style-kit.bento {
998
+ /* Restores semantic action paint after identity-specific geometry. */
999
+ .bento-button-primary { background: var(--bento-primary); color: var(--bento-on-primary); border-color: var(--bento-primary); }
1000
+ .bento-button-secondary { background: var(--bento-secondary); color: var(--bento-on-secondary); border-color: var(--bento-secondary); }
1001
+ .bento-button-danger { background: var(--bento-danger); color: var(--bento-on-danger); border-color: var(--bento-danger); }
1002
+ .bento-button-ghost { background: transparent; color: var(--usk-primary-ink, var(--bento-primary)); border-color: transparent; }
1003
+ }
1004
+
1005
+ @layer ui-style-kit.bento {
1006
+ /* Shared annotation fidelity: readable display rhythm and appropriately scaled text icons. */
1007
+ .bento-feature-item > .bento-icon-medallion { font-size: 1.5rem; line-height: 1; }
1008
+ .bento-callout-bar > .bento-icon-medallion { min-inline-size: 4.5rem; min-block-size: 4.5rem; font-size: 2rem; font-weight: 800; line-height: 1; }
1009
+ /** Warning actions inherit preset geometry and use the paired semantic warning colors. */
1010
+ [data-ui="bento"][data-mode] .bento-button.bento-button-warning {
1011
+ background: var(--bento-warning);
1012
+ color: var(--bento-on-warning);
1013
+ border-color: var(--bento-warning);
1014
+ text-shadow: none;
1015
+ }
1016
+
1017
+ }
1018
+
1019
+ /* Soft Mosaic source component geometry; adapted from the retained September 2026 template. */
1020
+ @layer ui-style-kit.bento {
1021
+ [data-ui=bento][data-mode] .bento-sheet *,
1022
+ [data-ui=bento][data-mode] .bento-sheet *::before,
1023
+ [data-ui=bento][data-mode] .bento-sheet *::after { box-sizing: border-box; }
1024
+
1025
+ [data-ui=bento][data-mode] .bento-sheet button,
1026
+ [data-ui=bento][data-mode] .bento-sheet input,
1027
+ [data-ui=bento][data-mode] .bento-sheet select,
1028
+ [data-ui=bento][data-mode] .bento-sheet textarea { font: inherit; }
1029
+
1030
+ [data-ui=bento][data-mode] .bento-sheet button { color: inherit; cursor: pointer; }
1031
+
1032
+ [data-ui=bento][data-mode] .bento-sheet button:focus-visible,
1033
+ [data-ui=bento][data-mode] .bento-sheet input:focus-visible,
1034
+ [data-ui=bento][data-mode] .bento-sheet select:focus-visible,
1035
+ [data-ui=bento][data-mode] .bento-sheet textarea:focus-visible,
1036
+ [data-ui=bento][data-mode] .bento-sheet summary:focus-visible { outline: 2px solid var(--bento-mosaic-violet); outline-offset: 2px; }
1037
+
1038
+ [data-ui=bento][data-mode] .bento-sheet h1,
1039
+ [data-ui=bento][data-mode] .bento-sheet h2,
1040
+ [data-ui=bento][data-mode] .bento-sheet p { margin: 0; }
1041
+
1042
+ [data-ui=bento][data-mode] .bento-sheet h2 { font-size: 13px; font-weight: 800; letter-spacing: 0; }
1043
+ [data-ui=bento][data-mode] .bento-sheet svg { display: block; flex: 0 0 auto; }
1044
+
1045
+ [data-ui=bento][data-mode] .bento-stage { margin: 0 auto; overflow: hidden; position: relative; }
1046
+ [data-ui=bento][data-mode] .bento-stage.is-export,
1047
+ [data-ui=bento][data-mode] .bento-stage.is-export * { cursor: none !important; pointer-events: none !important; }
1048
+
1049
+ [data-ui=bento][data-mode] .bento-stage.is-export *,
1050
+ [data-ui=bento][data-mode] .bento-stage.is-export *::before,
1051
+ [data-ui=bento][data-mode] .bento-stage.is-export *::after {
1052
+ animation: none !important;
1053
+ transition: none !important;
1054
+ }
1055
+
1056
+ [data-ui=bento][data-mode] .bento-panel {
1057
+ background: var(--bento-mosaic-panel);
1058
+ border: 1px solid var(--bento-mosaic-line);
1059
+ border-radius: 17px;
1060
+ box-shadow: var(--bento-mosaic-shadow);
1061
+ min-height: 0;
1062
+ overflow: visible;
1063
+ padding: 15px;
1064
+ }
1065
+
1066
+ [data-ui=bento][data-mode] .bento-panel > header { align-items: center; display: flex; justify-content: space-between; margin-bottom: 11px; }
1067
+ [data-ui=bento][data-mode] .bento-panel > header > svg { color: var(--usk-primary-ink, var(--bento-mosaic-primary)); height: 17px; width: 17px; }
1068
+
1069
+ [data-ui=bento][data-mode] .bento-sidebar {
1070
+ background: var(--bento-mosaic-panel);
1071
+ border: 1px solid var(--bento-mosaic-line);
1072
+ border-radius: 0 18px 18px 0;
1073
+ display: flex;
1074
+ flex-direction: column;
1075
+ height: calc(100% - 12px);
1076
+ margin-block: 6px;
1077
+ overflow: hidden;
1078
+ padding: 20px 12px 12px;
1079
+ }
1080
+
1081
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-sidebar { background: var(--bento-surface); }
1082
+
1083
+ [data-ui=bento][data-mode] .bento-brand { align-items: center; display: flex; gap: 10px; padding: 0 8px 24px; }
1084
+ [data-ui=bento][data-mode] .bento-brand-mark {
1085
+ align-items: center;
1086
+ background: var(--bento-mosaic-primary-soft);
1087
+ border: 1px solid var(--bento-mosaic-primary);
1088
+ border-radius: 8px;
1089
+ color: var(--usk-primary-ink, var(--bento-mosaic-primary));
1090
+ display: flex;
1091
+ height: 30px;
1092
+ justify-content: center;
1093
+ width: 30px;
1094
+ }
1095
+ [data-ui=bento][data-mode] .bento-brand-mark svg { height: 18px; width: 18px; }
1096
+ [data-ui=bento][data-mode] .bento-brand > span:last-child { display: grid; }
1097
+ [data-ui=bento][data-mode] .bento-brand strong { font-size: 14px; font-weight: 800; }
1098
+ [data-ui=bento][data-mode] .bento-brand small { color: var(--bento-mosaic-muted); font-size: 12px; font-weight: 800; letter-spacing: 0; }
1099
+
1100
+ [data-ui=bento][data-mode] .bento-sidebar nav { display: grid; gap: 5px; }
1101
+ [data-ui=bento][data-mode] .bento-sidebar nav button {
1102
+ align-items: center;
1103
+ background: transparent;
1104
+ border: 0;
1105
+ border-radius: 9px;
1106
+ color: var(--bento-mosaic-muted);
1107
+ display: flex;
1108
+ font-size: 12px;
1109
+ font-weight: 650;
1110
+ gap: 10px;
1111
+ min-height: 40px;
1112
+ padding: 0 11px;
1113
+ text-align: left;
1114
+ transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
1115
+ width: 100%;
1116
+ }
1117
+ [data-ui=bento][data-mode] .bento-sidebar nav button svg { height: 17px; width: 17px; }
1118
+ [data-ui=bento][data-mode] .bento-sidebar nav button:hover { background: var(--bento-mosaic-panel-soft); color: var(--bento-mosaic-text); transform: translateX(2px); }
1119
+ [data-ui=bento][data-mode] .bento-sidebar nav button.is-active { background: var(--bento-mosaic-primary); box-shadow: 0 8px 20px var(--bento-mosaic-primary); color: var(--bento-on-primary); }
1120
+ [data-ui=bento][data-mode] .bento-sidebar-spacer { flex: 1; }
1121
+
1122
+ [data-ui=bento][data-mode] .bento-sidebar-note {
1123
+ background: var(--bento-mosaic-primary-soft);
1124
+ border: 1px solid var(--bento-mosaic-primary);
1125
+ border-radius: 13px;
1126
+ min-height: 197px;
1127
+ overflow: hidden;
1128
+ padding: 18px 15px 8px;
1129
+ position: relative;
1130
+ }
1131
+ [data-ui=bento][data-mode] .bento-sidebar-note strong { font-size: 12px; line-height: 1.55; }
1132
+ [data-ui=bento][data-mode] .bento-sidebar-note p { color: var(--bento-mosaic-muted); font-size: 12px; line-height: 1.55; margin-top: 8px; max-width: 112px; }
1133
+ [data-ui=bento][data-mode] .bento-sidebar-note img { bottom: -24px; height: 108px; object-fit: contain; position: absolute; right: -24px; width: 132px; }
1134
+
1135
+ [data-ui=bento][data-mode] .bento-theme-toggle {
1136
+ align-items: center;
1137
+ background: var(--bento-mosaic-panel-soft);
1138
+ border: 1px solid var(--bento-mosaic-line);
1139
+ border-radius: 12px;
1140
+ display: grid;
1141
+ font-size: 12px;
1142
+ font-weight: 700;
1143
+ gap: 8px;
1144
+ grid-template-columns: auto 1fr auto;
1145
+ margin-top: 10px;
1146
+ min-height: 50px;
1147
+ padding: 0 11px;
1148
+ width: 100%;
1149
+ }
1150
+ [data-ui=bento][data-mode] .bento-theme-toggle > svg { height: 18px; width: 18px; }
1151
+
1152
+ /** Compact switches are controls, not the label wrapper used by the public checkbox API. */
1153
+ [data-ui=bento][data-mode] .bento-switch:where(button, span) {
1154
+ background: var(--bento-mosaic-line-strong);
1155
+ border: 1px solid var(--bento-mosaic-line-strong);
1156
+ border-radius: 999px;
1157
+ display: inline-flex;
1158
+ height: 20px;
1159
+ padding: 2px;
1160
+ transition: background-color 160ms ease;
1161
+ width: 37px;
1162
+ }
1163
+ [data-ui=bento][data-mode] .bento-switch:where(button, span) > span { background: var(--bento-on-primary); border-radius: 50%; box-shadow: 0 1px 4px rgba(19, 29, 64, 0.25); display: block; height: 14px; transform: translateX(0); transition: transform 160ms ease; width: 14px; }
1164
+ [data-ui=bento][data-mode] .bento-switch:where(button, span)[aria-checked="true"] { background: var(--bento-mosaic-primary); border-color: var(--bento-mosaic-primary); }
1165
+ [data-ui=bento][data-mode] .bento-switch:where(button, span)[aria-checked="true"] > span { transform: translateX(17px); }
1166
+
1167
+ [data-ui=bento][data-mode] .bento-switch:where(button, span).is-on { background: var(--bento-mosaic-primary); border-color: var(--bento-mosaic-primary); }
1168
+ [data-ui=bento][data-mode] .bento-switch:where(button, span).is-on > span { transform: translateX(17px); }
1169
+
1170
+ /** Labeled checkbox switches retain an intrinsic text lane beside the fixed-size track. */
1171
+ [data-ui=bento][data-mode] .bento-switch:where(label) { position: relative; display: inline-flex; align-items: center; gap: 8px; max-width: 100%; }
1172
+ [data-ui=bento][data-mode] .bento-switch:where(label) > span:last-child { overflow-wrap: normal; word-break: normal; }
1173
+ [data-ui=bento][data-mode] .bento-switch-track { flex: 0 0 37px; width: 37px; height: 20px; background: var(--bento-border); box-shadow: none; }
1174
+ [data-ui=bento][data-mode] .bento-switch-thumb { top: 2px; left: 2px; width: 14px; height: 14px; border: 0; border-radius: 50%; background: var(--bento-surface-strong); box-shadow: none; }
1175
+ [data-ui=bento][data-mode] .bento-switch input:checked + .bento-switch-track { background: var(--bento-primary); border-color: var(--bento-primary); }
1176
+ [data-ui=bento][data-mode] .bento-switch input:checked + .bento-switch-track .bento-switch-thumb { left: calc(100% - 16px); background: var(--bento-on-primary); }
1177
+ [data-ui=bento][data-mode] .bento-switch input:focus-visible + .bento-switch-track { outline: 2px solid var(--bento-focus); outline-offset: 3px; }
1178
+ [data-ui=bento][data-mode] .bento-switch input:disabled + .bento-switch-track { opacity: .5; }
1179
+
1180
+ [data-ui=bento][data-mode] .bento-canvas { display: grid; gap: 8px; grid-template-rows: 388px 286px 322px; height: 1024px; padding: 6px 8px 6px 10px; }
1181
+ [data-ui=bento][data-mode] .bento-top-grid,
1182
+ [data-ui=bento][data-mode] .bento-middle-grid,
1183
+ [data-ui=bento][data-mode] .bento-bottom-grid { display: grid; gap: 8px; min-height: 0; }
1184
+ [data-ui=bento][data-mode] .bento-top-grid { grid-template-columns: 4.8fr 1.95fr 2.2fr 2.25fr; }
1185
+ [data-ui=bento][data-mode] .bento-middle-grid { grid-template-columns: 4.25fr 2.15fr 2.7fr 2.3fr 1.55fr; }
1186
+ [data-ui=bento][data-mode] .bento-bottom-grid { grid-template-columns: 5.6fr 2.05fr 4.15fr; }
1187
+
1188
+ [data-ui=bento][data-mode] .bento-hero { background: var(--bento-mosaic-primary-soft); border-color: var(--bento-border); padding: 0; position: relative; }
1189
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-hero { background: var(--bento-mosaic-primary-soft); border-color: var(--bento-border); }
1190
+ [data-ui=bento][data-mode] .bento-hero-copy { left: 40px; position: absolute; top: 55px; z-index: 2; }
1191
+ [data-ui=bento][data-mode] .bento-eyebrow { color: var(--usk-primary-ink, var(--bento-mosaic-primary)); font-size: 12px; font-weight: 800; letter-spacing: 0; }
1192
+ [data-ui=bento][data-mode] .bento-hero h1 { font-size: 50px; font-weight: 850; letter-spacing: 0; line-height: 1.08; margin: 11px 0 14px; }
1193
+ [data-ui=bento][data-mode] .bento-hero h1 span { color: var(--usk-primary-ink, var(--bento-mosaic-primary)); }
1194
+ [data-ui=bento][data-mode] .bento-hero p { color: var(--bento-mosaic-muted); font-size: 13px; max-width: 270px; }
1195
+ [data-ui=bento][data-mode] .bento-inline-actions { display: flex; gap: 10px; margin-top: 20px; }
1196
+ [data-ui=bento][data-mode] .bento-hero-art { height: 345px; object-fit: contain; object-position: center; position: absolute; right: -30px; top: 20px; transform: rotate(-3deg); width: 420px; z-index: 1; }
1197
+ [data-ui=bento][data-mode] .bento-hero-art.is-dark,
1198
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-hero-art.is-light { display: none; }
1199
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-hero-art.is-dark { display: block; }
1200
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-hero-art.is-dark { height: 300px; right: -10px; top: 40px; width: 300px; }
1201
+
1202
+ [data-ui=bento][data-mode] .bento-button {
1203
+ align-items: center;
1204
+ background: var(--bento-mosaic-panel-soft);
1205
+ border: 1px solid var(--bento-mosaic-line);
1206
+ border-radius: 8px;
1207
+ display: inline-flex;
1208
+ font-weight: 750;
1209
+ gap: 7px;
1210
+ justify-content: center;
1211
+ min-height: 44px;
1212
+ padding: 0 16px;
1213
+ transition: background-color 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
1214
+ }
1215
+ [data-ui=bento][data-mode] .bento-button:hover:not(:disabled) { transform: translateY(-1px); }
1216
+ [data-ui=bento][data-mode] .bento-button:active:not(:disabled) { transform: translateY(1px); }
1217
+ [data-ui=bento][data-mode] .bento-button.is-primary,
1218
+ [data-ui=bento][data-mode] .bento-button.is-hover,
1219
+ [data-ui=bento][data-mode] .bento-button.is-busy { background: var(--bento-mosaic-primary); border-color: var(--bento-mosaic-primary); color: var(--bento-on-primary); }
1220
+ [data-ui=bento][data-mode] .bento-button.is-hover { background: var(--bento-mosaic-primary-hover); box-shadow: 0 8px 18px var(--bento-mosaic-primary); }
1221
+ [data-ui=bento][data-mode] .bento-button.is-secondary { background: transparent; border-color: var(--bento-mosaic-primary); color: var(--usk-primary-ink, var(--bento-mosaic-primary)); }
1222
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-button.is-secondary { border-color: var(--bento-border); color: var(--bento-link); }
1223
+ [data-ui=bento][data-mode] .bento-button.is-danger { background: var(--bento-mosaic-danger-soft); border-color: var(--bento-mosaic-danger); color: var(--bento-mosaic-danger); }
1224
+ [data-ui=bento][data-mode] .bento-button.is-ghost { background: transparent; border-color: transparent; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); }
1225
+ [data-ui=bento][data-mode] .bento-button:disabled { color: var(--bento-mosaic-faint); cursor: not-allowed; opacity: 0.62; }
1226
+
1227
+ [data-ui=bento][data-mode] .bento-actions { display: grid; gap: 5px; grid-template-rows: auto repeat(7, 1fr); }
1228
+ [data-ui=bento][data-mode] .bento-actions header { margin-bottom: 2px; }
1229
+ [data-ui=bento][data-mode] .bento-actions .bento-button { font-size: 12px; min-height: 0; padding-block: 0; width: 100%; }
1230
+
1231
+ [data-ui=bento][data-mode] .bento-system { background: var(--bento-primary); border-color: var(--bento-primary); color: var(--bento-on-primary); }
1232
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-system { background: var(--bento-primary); border-color: var(--bento-primary); }
1233
+ [data-ui=bento][data-mode] .bento-system > header { margin-bottom: 5px; }
1234
+ [data-ui=bento][data-mode] .bento-system > header > svg { color: var(--bento-on-primary); }
1235
+ [data-ui=bento][data-mode] .bento-system > p { align-items: center; display: flex; font-size: 12px; gap: 7px; margin-bottom: 8px; }
1236
+ [data-ui=bento][data-mode] .bento-live-dot { background: var(--bento-success); border-radius: 50%; display: inline-block; height: 7px; width: 7px; }
1237
+ [data-ui=bento][data-mode] .bento-service-row { align-items: center; background: rgba(255, 255, 255, 0.09); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 8px; display: grid; gap: 8px; grid-template-columns: 1fr 64px; margin-bottom: 8px; min-height: 61px; padding: 9px; }
1238
+ [data-ui=bento][data-mode] .bento-service-row span { display: grid; gap: 2px; }
1239
+ [data-ui=bento][data-mode] .bento-service-row strong,
1240
+ [data-ui=bento][data-mode] .bento-service-row small { font-size: 12px; }
1241
+ [data-ui=bento][data-mode] .bento-service-row small { color: var(--bento-on-primary); font-weight: 700; }
1242
+ [data-ui=bento][data-mode] .bento-system > small { color: var(--bento-on-primary); font-size: 12px; }
1243
+ [data-ui=bento][data-mode] .bento-system > button { align-items: center; background: transparent; border: 0; color: var(--bento-on-primary); display: flex; font-size: 12px; font-weight: 750; gap: 6px; margin-top: 5px; padding: 0; }
1244
+ [data-ui=bento][data-mode] .bento-system > button svg { height: 13px; width: 13px; }
1245
+
1246
+ [data-ui=bento][data-mode] .bento-system progress,
1247
+ [data-ui=bento][data-mode] .bento-usage progress,
1248
+ [data-ui=bento][data-mode] .bento-usage-cell progress,
1249
+ [data-ui=bento][data-mode] .bento-sliders progress { appearance: none; background: var(--bento-mosaic-line); border: 0; border-radius: 999px; height: 6px; overflow: hidden; width: 100%; }
1250
+ [data-ui=bento][data-mode] .bento-system progress { background: rgba(255, 255, 255, 0.16); }
1251
+ [data-ui=bento][data-mode] .bento-system progress::-webkit-progress-bar,
1252
+ [data-ui=bento][data-mode] .bento-usage progress::-webkit-progress-bar,
1253
+ [data-ui=bento][data-mode] .bento-usage-cell progress::-webkit-progress-bar,
1254
+ [data-ui=bento][data-mode] .bento-sliders progress::-webkit-progress-bar { background: inherit; border-radius: inherit; }
1255
+ [data-ui=bento][data-mode] .bento-system progress::-webkit-progress-value { background: var(--bento-success); border-radius: inherit; }
1256
+ [data-ui=bento][data-mode] .bento-system progress::-moz-progress-bar { background: var(--bento-success); border-radius: inherit; }
1257
+
1258
+ [data-ui=bento][data-mode] .bento-metrics-stack,
1259
+ [data-ui=bento][data-mode] .bento-utility-stack { display: grid; gap: 8px; min-height: 0; }
1260
+ [data-ui=bento][data-mode] .bento-metrics-stack { grid-template-rows: 1.55fr 0.95fr; }
1261
+ [data-ui=bento][data-mode] .bento-usage { background: var(--bento-mosaic-warning-soft); border-color: var(--bento-warning); }
1262
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-usage { background: var(--bento-mosaic-warning-soft); border-color: var(--bento-warning); }
1263
+ [data-ui=bento][data-mode] .bento-usage > header { margin-bottom: 3px; }
1264
+ [data-ui=bento][data-mode] .bento-usage > header > svg { color: var(--bento-mosaic-warning); }
1265
+ [data-ui=bento][data-mode] .bento-usage > strong { display: block; font-size: 33px; letter-spacing: 0; line-height: 1.1; margin-top: 4px; }
1266
+ [data-ui=bento][data-mode] .bento-usage > span { color: var(--bento-mosaic-muted); display: block; font-size: 12px; font-weight: 700; }
1267
+ [data-ui=bento][data-mode] .bento-usage > div { align-items: center; display: flex; gap: 8px; margin: 12px 0 10px; }
1268
+ [data-ui=bento][data-mode] .bento-usage > div small { color: var(--bento-mosaic-muted); font-size: 12px; }
1269
+ [data-ui=bento][data-mode] .bento-usage progress::-webkit-progress-value,
1270
+ [data-ui=bento][data-mode] .bento-usage-cell progress::-webkit-progress-value,
1271
+ [data-ui=bento][data-mode] .bento-sliders progress::-webkit-progress-value { background: var(--bento-mosaic-primary); border-radius: inherit; }
1272
+ [data-ui=bento][data-mode] .bento-usage progress::-moz-progress-bar,
1273
+ [data-ui=bento][data-mode] .bento-usage-cell progress::-moz-progress-bar,
1274
+ [data-ui=bento][data-mode] .bento-sliders progress::-moz-progress-bar { background: var(--bento-mosaic-primary); border-radius: inherit; }
1275
+
1276
+ [data-ui=bento][data-mode] .bento-quota { align-items: center; background: var(--bento-mosaic-success-soft); border-color: var(--bento-success); display: grid; grid-template-columns: 1fr 98px; }
1277
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-quota { background: var(--bento-mosaic-success-soft); border-color: var(--bento-success); }
1278
+ [data-ui=bento][data-mode] .bento-quota-copy { display: grid; gap: 3px; }
1279
+ [data-ui=bento][data-mode] .bento-quota-copy strong { color: var(--bento-mosaic-success); font-size: 24px; letter-spacing: 0; }
1280
+ [data-ui=bento][data-mode] .bento-quota-copy span { color: var(--bento-mosaic-muted); font-size: 12px; }
1281
+ [data-ui=bento][data-mode] .bento-quota meter,
1282
+ [data-ui=bento][data-mode] .bento-sliders meter { accent-color: var(--bento-mosaic-success); height: 13px; width: 100%; }
1283
+
1284
+ [data-ui=bento][data-mode] .bento-form-panel > header > span { color: var(--bento-mosaic-muted); font-size: 12px; }
1285
+ [data-ui=bento][data-mode] .bento-form-grid { display: grid; gap: 5px 6px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
1286
+ [data-ui=bento][data-mode] .bento-field { display: grid; gap: 3px; min-width: 0; position: relative; }
1287
+ [data-ui=bento][data-mode] .bento-field.is-wide { width: 100%; }
1288
+ [data-ui=bento][data-mode] .bento-field > span:first-child { color: var(--bento-mosaic-muted); font-size: 12px; font-weight: 750; }
1289
+ [data-ui=bento][data-mode] .bento-field input,
1290
+ [data-ui=bento][data-mode] .bento-field select,
1291
+ [data-ui=bento][data-mode] .bento-field textarea,
1292
+ [data-ui=bento][data-mode] .bento-table-tools input { background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line-strong); border-radius: 6px; color: var(--bento-mosaic-text); height: 26px; min-width: 0; padding: 0 7px; width: 100%; }
1293
+ [data-ui=bento][data-mode] .bento-field input::placeholder,
1294
+ [data-ui=bento][data-mode] .bento-field textarea::placeholder,
1295
+ [data-ui=bento][data-mode] .bento-table-tools input::placeholder { color: var(--bento-mosaic-faint); }
1296
+ [data-ui=bento][data-mode] .bento-field textarea { height: 32px; padding-top: 6px; resize: none; }
1297
+ [data-ui=bento][data-mode] .bento-input-icon { display: block; position: relative; }
1298
+ [data-ui=bento][data-mode] .bento-input-icon > svg { color: var(--bento-mosaic-muted); height: 12px; left: 7px; pointer-events: none; position: absolute; top: 7px; width: 12px; z-index: 1; }
1299
+ [data-ui=bento][data-mode] .bento-input-icon > input { padding-left: 24px; }
1300
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > input { padding-left: 7px; padding-right: 26px; }
1301
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > button { background: transparent; border: 0; padding: 0; position: absolute; right: 7px; top: 7px; z-index: 2; }
1302
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > button svg { height: 12px; width: 12px; }
1303
+ [data-ui=bento][data-mode] .bento-field input[type="color"] { padding: 2px; }
1304
+ [data-ui=bento][data-mode] .bento-file input { height: 26px; opacity: 0; position: absolute; top: 12px; z-index: 2; }
1305
+ [data-ui=bento][data-mode] .bento-file > span:last-child { align-items: center; background: var(--bento-mosaic-panel-soft); border: 1px dashed var(--bento-mosaic-line-strong); border-radius: 6px; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); display: flex; font-size: 12px; font-weight: 750; gap: 5px; height: 26px; justify-content: center; }
1306
+ [data-ui=bento][data-mode] .bento-file > span:last-child svg { height: 12px; width: 12px; }
1307
+
1308
+ [data-ui=bento][data-mode] .bento-choices fieldset { border: 0; margin: 0 0 7px; padding: 0; }
1309
+ [data-ui=bento][data-mode] .bento-choices legend { font-size: 12px; font-weight: 800; margin-bottom: 4px; }
1310
+ [data-ui=bento][data-mode] .bento-choices fieldset > label,
1311
+ [data-ui=bento][data-mode] .bento-switch-row { align-items: center; color: var(--bento-mosaic-muted); display: flex; font-size: 12px; gap: 7px; margin-bottom: 5px; }
1312
+ [data-ui=bento][data-mode] .bento-choices input[type="checkbox"],
1313
+ [data-ui=bento][data-mode] .bento-choices input[type="radio"] { accent-color: var(--bento-mosaic-primary); height: 15px; margin: 0; width: 15px; }
1314
+ [data-ui=bento][data-mode] .bento-switch-row { background: transparent; border: 0; justify-content: space-between; padding: 0; width: 100%; }
1315
+ [data-ui=bento][data-mode] .bento-switch-row:disabled { opacity: 0.48; }
1316
+
1317
+ [data-ui=bento][data-mode] .bento-sliders > label { display: grid; gap: 5px; margin-bottom: 13px; }
1318
+ [data-ui=bento][data-mode] .bento-sliders > label > span { color: var(--bento-mosaic-muted); display: flex; font-size: 12px; font-weight: 700; justify-content: space-between; }
1319
+ [data-ui=bento][data-mode] .bento-sliders output { color: var(--bento-mosaic-text); }
1320
+ [data-ui=bento][data-mode] .bento-sliders input[type="range"] { accent-color: var(--bento-mosaic-primary); height: 7px; margin: 0; width: 100%; }
1321
+ [data-ui=bento][data-mode] .bento-stepper { align-items: center; display: flex; justify-content: space-between; margin: 3px 0 13px; }
1322
+ [data-ui=bento][data-mode] .bento-stepper > span { align-items: center; background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line-strong); border-radius: 50%; display: flex; font-size: 12px; height: 20px; justify-content: center; width: 20px; }
1323
+ [data-ui=bento][data-mode] .bento-stepper > span.is-complete,
1324
+ [data-ui=bento][data-mode] .bento-stepper > span.is-current { background: var(--bento-mosaic-primary); border-color: var(--bento-mosaic-primary); color: var(--bento-on-primary); }
1325
+ [data-ui=bento][data-mode] .bento-stepper > span svg { height: 10px; width: 10px; }
1326
+ [data-ui=bento][data-mode] .bento-stepper > i { background: var(--bento-mosaic-line-strong); height: 2px; width: 23px; }
1327
+
1328
+ [data-ui=bento][data-mode] .bento-segment { background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line); border-radius: 7px; display: grid; grid-template-columns: repeat(3, 1fr); padding: 2px; }
1329
+ [data-ui=bento][data-mode] .bento-segment button { background: transparent; border: 0; border-radius: 5px; color: var(--bento-mosaic-muted); font-size: 12px; min-height: 24px; }
1330
+ [data-ui=bento][data-mode] .bento-segment button.is-active { background: var(--bento-mosaic-panel-raised); box-shadow: 0 2px 8px rgba(24, 35, 72, 0.1); color: var(--usk-primary-ink, var(--bento-mosaic-primary)); font-weight: 800; }
1331
+
1332
+ [data-ui=bento][data-mode] .bento-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 11px; }
1333
+ [data-ui=bento][data-mode] .bento-status { align-items: center; background: var(--bento-mosaic-primary-soft); border: 1px solid var(--bento-mosaic-primary); border-radius: 5px; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); display: inline-flex; font-size: 12px; font-weight: 800; min-height: 22px; padding: 0 8px; white-space: nowrap; }
1334
+ [data-ui=bento][data-mode] .bento-status.is-violet { background: var(--bento-mosaic-violet-soft); color: var(--bento-mosaic-violet); }
1335
+ [data-ui=bento][data-mode] .bento-status.is-success { background: var(--bento-mosaic-success-soft); color: var(--bento-mosaic-success); }
1336
+ [data-ui=bento][data-mode] .bento-status.is-warning { background: var(--bento-mosaic-warning-soft); color: var(--bento-mosaic-warning); }
1337
+ [data-ui=bento][data-mode] .bento-status.is-danger { background: var(--bento-mosaic-danger-soft); color: var(--bento-mosaic-danger); }
1338
+ [data-ui=bento][data-mode] .bento-status.is-info { background: var(--bento-mosaic-info-soft); color: var(--bento-mosaic-info); }
1339
+
1340
+ [data-ui=bento][data-mode] .bento-alert,
1341
+ [data-ui=bento][data-mode] .bento-toast { align-items: flex-start; border: 1px solid; border-radius: 9px; display: flex; gap: 8px; margin-bottom: 7px; min-height: 66px; padding: 10px; }
1342
+ [data-ui=bento][data-mode] .bento-alert { background: var(--bento-mosaic-danger-soft); border-color: var(--bento-mosaic-danger); color: var(--bento-mosaic-danger); }
1343
+ [data-ui=bento][data-mode] .bento-toast { background: var(--bento-mosaic-success-soft); border-color: var(--bento-mosaic-success); color: var(--bento-mosaic-success); }
1344
+ [data-ui=bento][data-mode] .bento-alert > svg,
1345
+ [data-ui=bento][data-mode] .bento-toast > svg { height: 16px; margin-top: 1px; width: 16px; }
1346
+ [data-ui=bento][data-mode] .bento-alert > span,
1347
+ [data-ui=bento][data-mode] .bento-toast > span { display: grid; gap: 3px; flex: 1; }
1348
+ [data-ui=bento][data-mode] .bento-alert strong,
1349
+ [data-ui=bento][data-mode] .bento-toast strong { color: var(--bento-mosaic-text); font-size: 12px; }
1350
+ [data-ui=bento][data-mode] .bento-alert small,
1351
+ [data-ui=bento][data-mode] .bento-toast small { color: var(--bento-mosaic-muted); font-size: 12px; }
1352
+ [data-ui=bento][data-mode] .bento-alert button,
1353
+ [data-ui=bento][data-mode] .bento-toast button { background: transparent; border: 0; color: var(--bento-mosaic-muted); padding: 0; }
1354
+ [data-ui=bento][data-mode] .bento-alert button svg,
1355
+ [data-ui=bento][data-mode] .bento-toast button svg { height: 13px; width: 13px; }
1356
+
1357
+ [data-ui=bento][data-mode] .bento-utility-stack { grid-template-rows: 1fr 1fr; }
1358
+ [data-ui=bento][data-mode] .bento-tooltip,
1359
+ [data-ui=bento][data-mode] .ui-tooltip,
1360
+ [data-ui=bento][data-mode] .bento-loading { padding: 13px; }
1361
+ [data-ui=bento][data-mode] .bento-tooltip > header,
1362
+ [data-ui=bento][data-mode] .bento-loading > header { margin-bottom: 7px; }
1363
+ [data-ui=bento][data-mode] .bento-tooltip { overflow: visible; position: relative; z-index: 4; }
1364
+ [data-ui=bento][data-mode] .bento-tooltip > button { align-items: center; background: var(--bento-mosaic-primary-soft); border: 0; border-radius: 50%; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); display: flex; height: 23px; justify-content: center; width: 23px; }
1365
+ [data-ui=bento][data-mode] .bento-tooltip > button svg { height: 13px; width: 13px; }
1366
+ [data-ui=bento][data-mode] .bento-tooltip [role="tooltip"] { background: var(--bento-tooltip-bg); border: 1px solid var(--bento-border); border-radius: 7px; bottom: 11px; color: var(--bento-on-primary); font-size: 12px; left: 41px; line-height: 1.5; padding: 9px; position: absolute; width: 102px; }
1367
+
1368
+ [data-ui=bento][data-mode] .bento-loading { align-items: center; display: grid; grid-template-columns: 40px 1fr; grid-template-rows: auto 1fr; }
1369
+ [data-ui=bento][data-mode] .bento-loading > header { width: 100%; }
1370
+ [data-ui=bento][data-mode] .bento-spinner { color: var(--usk-primary-ink, var(--bento-mosaic-primary)); height: 31px; width: 31px; }
1371
+ [data-ui=bento][data-mode] .bento-spin { animation: bento-mosaic-spin 1s linear infinite; }
1372
+ @keyframes bento-mosaic-spin { to { transform: rotate(360deg); } }
1373
+ [data-ui=bento][data-mode] .bento-skeleton { display: grid; gap: 5px; }
1374
+ [data-ui=bento][data-mode] .bento-skeleton span { animation: bento-mosaic-pulse 1.5s ease-in-out infinite; background: var(--bento-mosaic-line); border-radius: 999px; display: block; height: 6px; }
1375
+ [data-ui=bento][data-mode] .bento-skeleton span:nth-child(2) { width: 76%; }
1376
+ [data-ui=bento][data-mode] .bento-skeleton span:nth-child(3) { width: 54%; }
1377
+ @keyframes bento-mosaic-pulse { 50% { opacity: 0.45; } }
1378
+
1379
+ [data-ui=bento][data-mode] .bento-table-panel { display: grid; grid-template-rows: auto 1fr auto; }
1380
+ [data-ui=bento][data-mode] .bento-table-panel > header { margin-bottom: 9px; }
1381
+ [data-ui=bento][data-mode] .bento-table-panel > header > div:first-child { display: grid; }
1382
+ [data-ui=bento][data-mode] .bento-table-panel > header > div:first-child > span { color: var(--bento-mosaic-muted); font-size: 12px; }
1383
+ [data-ui=bento][data-mode] .bento-table-tools { align-items: center; display: flex; gap: 6px; }
1384
+ [data-ui=bento][data-mode] .bento-table-tools label { position: relative; }
1385
+ [data-ui=bento][data-mode] .bento-table-tools label > svg { color: var(--bento-mosaic-muted); height: 11px; left: 7px; position: absolute; top: 7px; width: 11px; }
1386
+ [data-ui=bento][data-mode] .bento-table-tools input { font-size: 12px; height: 25px; padding-left: 23px; width: 92px; }
1387
+ [data-ui=bento][data-mode] .bento-table-tools > button,
1388
+ [data-ui=bento][data-mode] .bento-table-panel td > button { align-items: center; background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line); border-radius: 6px; display: flex; height: 25px; justify-content: center; padding: 0; width: 25px; }
1389
+ [data-ui=bento][data-mode] .bento-table-tools > button svg,
1390
+ [data-ui=bento][data-mode] .bento-table-panel td > button svg { height: 13px; width: 13px; }
1391
+ [data-ui=bento][data-mode] .bento-table-wrap { border: 1px solid var(--bento-mosaic-line); border-radius: 9px; overflow: hidden; }
1392
+ [data-ui=bento][data-mode] .bento-table-panel table { border-collapse: collapse; font-size: 12px; table-layout: fixed; width: 100%; }
1393
+ [data-ui=bento][data-mode] .bento-table-panel thead { background: var(--bento-mosaic-panel-soft); }
1394
+ [data-ui=bento][data-mode] .bento-table-panel th,
1395
+ [data-ui=bento][data-mode] .bento-table-panel td { border-bottom: 1px solid var(--bento-mosaic-line); height: 43px; overflow: hidden; padding: 0 8px; text-align: left; text-overflow: ellipsis; white-space: nowrap; }
1396
+ [data-ui=bento][data-mode] .bento-table-panel th { color: var(--bento-mosaic-muted); font-size: 12px; font-weight: 800; height: 32px; text-transform: uppercase; }
1397
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(1) { width: 68px; }
1398
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(3) { width: 58px; }
1399
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(4) { width: 80px; }
1400
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(5) { width: 118px; }
1401
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(6) { width: 94px; }
1402
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(7) { width: 30px; }
1403
+ [data-ui=bento][data-mode] .bento-table-panel tbody tr:last-child td { border-bottom: 0; }
1404
+ [data-ui=bento][data-mode] .bento-table-panel .bento-status { min-height: 20px; padding-inline: 6px; }
1405
+ [data-ui=bento][data-mode] .bento-usage-cell { align-items: center; display: grid; gap: 7px; grid-template-columns: 27px 1fr; }
1406
+ [data-ui=bento][data-mode] .bento-usage-cell b { font-size: 12px; }
1407
+ [data-ui=bento][data-mode] .bento-table-panel > footer { align-items: center; color: var(--bento-mosaic-muted); display: flex; font-size: 12px; justify-content: space-between; padding-top: 9px; }
1408
+ [data-ui=bento][data-mode] .bento-table-panel > footer nav { display: flex; gap: 4px; }
1409
+ [data-ui=bento][data-mode] .bento-table-panel > footer nav button { align-items: center; background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line); border-radius: 6px; display: flex; font-size: 12px; height: 26px; justify-content: center; padding: 0; width: 26px; }
1410
+ [data-ui=bento][data-mode] .bento-table-panel > footer nav button.is-active { background: var(--bento-mosaic-primary-soft); border-color: var(--bento-mosaic-primary); color: var(--usk-primary-ink, var(--bento-mosaic-primary)); font-weight: 800; }
1411
+
1412
+ [data-ui=bento][data-mode] .bento-service-card { display: flex; flex-direction: column; }
1413
+ [data-ui=bento][data-mode] .bento-service-card > header { align-items: center; justify-content: flex-start; }
1414
+ [data-ui=bento][data-mode] .bento-service-icon { align-items: center; background: var(--bento-mosaic-primary-soft); border: 1px solid var(--bento-mosaic-primary); border-radius: 9px; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); display: flex; height: 38px; justify-content: center; width: 38px; }
1415
+ [data-ui=bento][data-mode] .bento-service-icon svg { height: 22px; width: 22px; }
1416
+ [data-ui=bento][data-mode] .bento-service-card > header > div { align-items: center; display: flex; flex-wrap: wrap; gap: 5px; }
1417
+ [data-ui=bento][data-mode] .bento-service-card > header .bento-status { min-height: 18px; padding-inline: 5px; }
1418
+ [data-ui=bento][data-mode] .bento-service-card > p { color: var(--bento-mosaic-muted); font-size: 12px; line-height: 1.55; margin-bottom: 10px; }
1419
+ [data-ui=bento][data-mode] .bento-service-card dl { border-block: 1px solid var(--bento-mosaic-line); margin: 0 0 8px; padding: 8px 0; }
1420
+ [data-ui=bento][data-mode] .bento-service-card dl > div { display: flex; font-size: 12px; justify-content: space-between; margin-bottom: 4px; }
1421
+ [data-ui=bento][data-mode] .bento-service-card dl > div:last-child { margin-bottom: 0; }
1422
+ [data-ui=bento][data-mode] .bento-service-card dt { color: var(--bento-mosaic-muted); }
1423
+ [data-ui=bento][data-mode] .bento-service-card dd { margin: 0; }
1424
+ [data-ui=bento][data-mode] .bento-listbox { background: var(--bento-mosaic-panel-soft); border: 1px solid var(--bento-mosaic-line); border-radius: 8px; display: grid; margin-bottom: 8px; overflow: hidden; }
1425
+ [data-ui=bento][data-mode] .bento-listbox button { align-items: center; background: transparent; border: 0; border-bottom: 1px solid var(--bento-mosaic-line); display: flex; font-size: 12px; justify-content: space-between; min-height: 27px; padding: 0 8px; text-align: left; }
1426
+ [data-ui=bento][data-mode] .bento-listbox button:last-child { border-bottom: 0; }
1427
+ [data-ui=bento][data-mode] .bento-listbox button[aria-selected="true"] { color: var(--usk-primary-ink, var(--bento-mosaic-primary)); font-weight: 800; }
1428
+ [data-ui=bento][data-mode] .bento-listbox button svg { height: 12px; width: 12px; }
1429
+ [data-ui=bento][data-mode] .bento-service-card details { color: var(--bento-mosaic-muted); font-size: 12px; margin-bottom: 8px; }
1430
+ [data-ui=bento][data-mode] .bento-service-card summary { align-items: center; color: var(--bento-mosaic-text); cursor: pointer; display: flex; font-weight: 800; justify-content: space-between; list-style: none; }
1431
+ [data-ui=bento][data-mode] .bento-service-card summary svg { height: 12px; width: 12px; }
1432
+ [data-ui=bento][data-mode] .bento-service-card details p { margin-top: 4px; }
1433
+ [data-ui=bento][data-mode] .bento-service-card > .bento-button { margin-top: auto; min-height: 30px; width: 100%; }
1434
+
1435
+ [data-ui=bento][data-mode] .bento-dialog-zone { background: var(--bento-primary); border-color: var(--bento-primary); display: grid; grid-template-rows: auto 1fr; padding: 0; }
1436
+ [data-ui=bento][data-mode] .bento-sheet[data-mode="dark"] .bento-dialog-zone { background: var(--bento-primary); border-color: var(--bento-border); }
1437
+ [data-ui=bento][data-mode] .bento-dialog-toolbar { align-items: center; border-bottom: 1px solid rgba(255, 255, 255, 0.15); display: flex; justify-content: space-between; padding: 7px 11px; }
1438
+ [data-ui=bento][data-mode] .bento-tabs { display: flex; gap: 3px; }
1439
+ [data-ui=bento][data-mode] .bento-tabs button,
1440
+ [data-ui=bento][data-mode] .bento-dialog-toolbar > button { background: transparent; border: 0; border-radius: 6px; color: var(--bento-on-primary); font-size: 12px; min-height: 26px; padding: 0 8px; }
1441
+ [data-ui=bento][data-mode] .bento-tabs button.is-active { background: rgba(255, 255, 255, 0.13); color: var(--bento-on-primary); font-weight: 800; }
1442
+ [data-ui=bento][data-mode] .bento-dialog-surface { align-items: center; display: flex; justify-content: center; padding: 16px; }
1443
+ [data-ui=bento][data-mode] .bento-dialog-surface dialog { background: var(--bento-mosaic-panel-raised); border: 1px solid var(--bento-mosaic-line); border-radius: 14px; box-shadow: var(--bento-mosaic-shadow-raised); color: var(--bento-mosaic-text); display: block; margin: 0; max-width: 315px; padding: 26px; position: relative; width: 100%; }
1444
+ [data-ui=bento][data-mode] .bento-dialog-surface dialog:not([open]) { display: none; }
1445
+ [data-ui=bento][data-mode] .bento-dialog-close { background: transparent; border: 0; color: var(--bento-mosaic-muted); padding: 0; position: absolute; right: 13px; top: 13px; }
1446
+ [data-ui=bento][data-mode] .bento-dialog-close svg { height: 15px; width: 15px; }
1447
+ [data-ui=bento][data-mode] .bento-dialog-icon { align-items: center; background: var(--bento-mosaic-primary-soft); border-radius: 9px; color: var(--usk-primary-ink, var(--bento-mosaic-primary)); display: flex; height: 38px; justify-content: center; margin-bottom: 13px; width: 38px; }
1448
+ [data-ui=bento][data-mode] .bento-dialog-icon svg { height: 21px; width: 21px; }
1449
+ [data-ui=bento][data-mode] .bento-dialog-surface h2 { font-size: 15px; }
1450
+ [data-ui=bento][data-mode] .bento-dialog-surface p { color: var(--bento-mosaic-muted); font-size: 12px; margin: 9px 0 18px; }
1451
+ [data-ui=bento][data-mode] .bento-dialog-surface dialog > div { display: flex; gap: 8px; justify-content: flex-end; }
1452
+ [data-ui=bento][data-mode] .bento-dialog-surface .bento-button { font-size: 12px; min-height: 33px; }
1453
+
1454
+ [data-ui=bento][data-mode] .bento-live-status,
1455
+ [data-ui=bento][data-mode] .bento-visually-hidden { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
1456
+
1457
+ @media (prefers-reduced-motion: reduce) {
1458
+ [data-ui=bento][data-mode] .bento-sheet *,
1459
+ [data-ui=bento][data-mode] .bento-sheet *::before,
1460
+ [data-ui=bento][data-mode] .bento-sheet *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
1461
+ }
1462
+
1463
+
1464
+ }
1465
+
1466
+ /**
1467
+ * Adapts the retained Soft Mosaic components to the library role contract.
1468
+ * Explicit --usk-* theme roles always take precedence over reference fallbacks.
1469
+ */
1470
+ @layer ui-style-kit.bento {
1471
+ [data-ui="bento"][data-mode="light"] {
1472
+ --bento-fallback-bg-rgb: 248 249 253;
1473
+ --bento-fallback-surface-rgb: 255 255 255;
1474
+ --bento-fallback-surface-strong-rgb: 255 255 255;
1475
+ --bento-fallback-surface-soft-rgb: 242 244 251;
1476
+ --bento-fallback-text-rgb: 17 20 62;
1477
+ --bento-fallback-text-muted-rgb: 97 105 128;
1478
+ --bento-fallback-border-rgb: 223 228 239;
1479
+ --bento-fallback-primary-rgb: 49 87 220;
1480
+ --bento-fallback-primary-hover-rgb: 70 99 212;
1481
+ --bento-fallback-primary-text-rgb: 255 255 255;
1482
+ --bento-fallback-secondary-rgb: 117 108 228;
1483
+ --bento-fallback-secondary-hover-rgb: 91 82 201;
1484
+ --bento-fallback-secondary-text-rgb: 255 255 255;
1485
+ --bento-fallback-accent-rgb: 117 108 228;
1486
+ --bento-fallback-accent-text-rgb: 255 255 255;
1487
+ --bento-fallback-success-rgb: 53 168 103;
1488
+ --bento-fallback-success-text-rgb: 0 0 0;
1489
+ --bento-fallback-warning-rgb: 215 144 15;
1490
+ --bento-fallback-warning-text-rgb: 0 0 0;
1491
+ --bento-fallback-danger-rgb: 223 77 74;
1492
+ --bento-fallback-danger-text-rgb: 0 0 0;
1493
+ --bento-fallback-link-rgb: 49 87 220;
1494
+ --bento-fallback-focus-rgb: 49 87 220;
1495
+ --bento-success-ink: rgb(var(--usk-success-rgb, 30 122 72));
1496
+ }
1497
+ [data-ui="bento"][data-mode="dark"] {
1498
+ --bento-fallback-bg-rgb: 7 17 31;
1499
+ --bento-fallback-surface-rgb: 12 26 43;
1500
+ --bento-fallback-surface-strong-rgb: 19 36 58;
1501
+ --bento-fallback-surface-soft-rgb: 16 34 56;
1502
+ --bento-fallback-text-rgb: 244 245 244;
1503
+ --bento-fallback-text-muted-rgb: 173 184 205;
1504
+ --bento-fallback-border-rgb: 32 54 76;
1505
+ --bento-fallback-primary-rgb: 43 94 226;
1506
+ --bento-fallback-primary-hover-rgb: 70 103 210;
1507
+ --bento-fallback-primary-text-rgb: 255 255 255;
1508
+ --bento-fallback-secondary-rgb: 122 107 233;
1509
+ --bento-fallback-secondary-hover-rgb: 148 136 248;
1510
+ --bento-fallback-secondary-text-rgb: 0 0 0;
1511
+ --bento-fallback-accent-rgb: 122 107 233;
1512
+ --bento-fallback-accent-text-rgb: 0 0 0;
1513
+ --bento-fallback-success-rgb: 84 196 123;
1514
+ --bento-fallback-success-text-rgb: 0 0 0;
1515
+ --bento-fallback-warning-rgb: 228 166 38;
1516
+ --bento-fallback-warning-text-rgb: 0 0 0;
1517
+ --bento-fallback-danger-rgb: 240 100 100;
1518
+ --bento-fallback-danger-text-rgb: 0 0 0;
1519
+ --bento-fallback-link-rgb: 105 169 240;
1520
+ --bento-fallback-focus-rgb: 122 107 233;
1521
+ --bento-success-ink: var(--bento-success);
1522
+ }
1523
+ [data-ui="bento"][data-mode] {
1524
+ --bento-panel-alpha: 1;
1525
+ --bento-panel-soft-alpha: 1;
1526
+ --bento-border-alpha: 1;
1527
+ --bento-tile-radius: 17px;
1528
+ --bento-control-radius: 8px;
1529
+ --bento-card-bg: var(--bento-surface);
1530
+ --bento-control-bg: var(--bento-surface-soft);
1531
+ --bento-tile-accent-bg: var(--bento-surface);
1532
+ --bento-tile-secondary-bg: var(--bento-surface);
1533
+ --bento-tile-edge: var(--bento-border);
1534
+ --bento-tile-shadow: 0 3px 12px rgb(var(--bento-text-rgb) / .04);
1535
+ --bento-mosaic-panel: var(--bento-surface);
1536
+ --bento-mosaic-panel-soft: var(--bento-surface-soft);
1537
+ --bento-mosaic-panel-raised: var(--bento-surface-strong);
1538
+ --bento-mosaic-line: var(--bento-border);
1539
+ --bento-mosaic-line-strong: var(--bento-border);
1540
+ --bento-mosaic-text: var(--bento-text);
1541
+ --bento-mosaic-muted: var(--bento-text-muted);
1542
+ --bento-mosaic-faint: var(--bento-text-muted);
1543
+ --bento-mosaic-primary: var(--bento-primary);
1544
+ --bento-mosaic-primary-hover: var(--bento-primary-hover);
1545
+ --bento-mosaic-primary-soft: rgb(var(--bento-primary-rgb) / .1);
1546
+ --bento-mosaic-violet: var(--bento-secondary);
1547
+ --bento-mosaic-violet-soft: rgb(var(--bento-secondary-rgb) / .1);
1548
+ --bento-mosaic-success: var(--bento-success);
1549
+ --bento-mosaic-success-soft: rgb(var(--bento-success-rgb) / .1);
1550
+ --bento-mosaic-warning: var(--bento-warning);
1551
+ --bento-mosaic-warning-soft: rgb(var(--bento-warning-rgb) / .1);
1552
+ --bento-mosaic-danger: var(--bento-danger);
1553
+ --bento-mosaic-danger-soft: rgb(var(--bento-danger-rgb) / .1);
1554
+ --bento-mosaic-info: var(--bento-link);
1555
+ --bento-mosaic-info-soft: rgb(var(--bento-link-rgb) / .1);
1556
+ --bento-mosaic-shadow: var(--bento-tile-shadow);
1557
+ --bento-mosaic-shadow-raised: 0 12px 32px rgb(var(--bento-text-rgb) / .12);
1558
+ --bento-tooltip-bg: var(--bento-text);
1559
+ --bento-tooltip-text: var(--bento-surface);
1560
+ --usk-native-radius-sm: 6px;
1561
+ --usk-native-radius: 8px;
1562
+ --usk-native-radius-lg: 17px;
1563
+ --usk-native-shadow: var(--bento-mosaic-shadow);
1564
+ --usk-native-shadow-md: var(--bento-mosaic-shadow-raised);
1565
+ --usk-native-choice-background: var(--bento-surface-soft);
1566
+ --usk-native-choice-shadow: none;
1567
+ --usk-native-choice-checked-background: var(--bento-primary);
1568
+ --usk-native-checkbox-radius: 4px;
1569
+ --usk-native-range-thumb-radius: 50%;
1570
+ --usk-native-range-track-background: var(--bento-border);
1571
+ --usk-native-range-progress-background: var(--bento-primary);
1572
+ --usk-native-progress-track-background: var(--bento-border);
1573
+ --usk-native-progress-value-background: var(--bento-primary);
1574
+ }
1575
+ [data-ui=bento][data-mode] .bento-title, [data-ui=bento][data-mode] .bento-heading, [data-ui=bento][data-mode] .bento-kicker { letter-spacing: 0; }
1576
+ [data-ui=bento][data-mode] .bento-card, [data-ui=bento][data-mode] .bento-surface, [data-ui=bento][data-mode] .bento-toolbar, [data-ui=bento][data-mode] .bento-card-service, [data-ui=bento][data-mode] .bento-card-feature,
1577
+ [data-ui=bento][data-mode] .bento-feature-strip, [data-ui=bento][data-mode] .bento-callout-bar { border-radius: 17px; box-shadow: var(--bento-mosaic-shadow); }
1578
+ [data-ui=bento][data-mode] .bento-card, [data-ui=bento][data-mode] .bento-panel { padding: 16px; }
1579
+ [data-ui=bento][data-mode] .bento-button, [data-ui=bento][data-mode] .bento-icon-button { border-radius: 8px; box-shadow: none; font-weight: 750; text-shadow: none; }
1580
+ [data-ui=bento][data-mode] .bento-button:not(.bento-button-primary):not(.bento-button-secondary):not(.bento-button-danger):not(.bento-button-warning):not(.bento-button-ghost):not(.is-primary):not(.is-secondary):not(.is-danger):not(.is-ghost):not(.is-busy):not(.is-hover) { background: var(--bento-surface-soft); }
1581
+ [data-ui=bento][data-mode] .bento-button.bento-button-primary, [data-ui=bento][data-mode] .bento-button.is-primary, [data-ui=bento][data-mode] .bento-button.is-busy { background: var(--bento-primary); color: var(--bento-on-primary); border-color: var(--bento-primary); }
1582
+ [data-ui=bento][data-mode] .bento-button.bento-button-secondary, [data-ui=bento][data-mode] .bento-button.is-secondary { background: transparent; color: var(--bento-link); border-color: var(--bento-primary); }
1583
+ [data-ui=bento][data-mode] .bento-button.bento-button-danger, [data-ui=bento][data-mode] .bento-button.is-danger { background: var(--bento-mosaic-danger-soft); color: var(--bento-text); border-color: var(--bento-danger); }
1584
+ [data-ui=bento][data-mode] .bento-button.bento-button-ghost, [data-ui=bento][data-mode] .bento-button.is-ghost { background: transparent; border-color: transparent; color: var(--bento-link); }
1585
+ [data-ui=bento][data-mode] .bento-button.is-hover { background: var(--bento-primary-hover); color: var(--bento-on-primary); box-shadow: 0 3px 10px rgb(var(--bento-primary-rgb) / .2); }
1586
+ [data-ui=bento][data-mode] .bento-input, [data-ui=bento][data-mode] .bento-textarea, [data-ui=bento][data-mode] .bento-select { border-radius: 6px; background-color: var(--bento-surface-soft); box-shadow: none; }
1587
+ [data-ui=bento][data-mode] .bento-badge { border-radius: 5px; box-shadow: none; }
1588
+ [data-ui=bento][data-mode] .bento-alert, [data-ui=bento][data-mode] .bento-toast { border-radius: 9px; box-shadow: none; color: var(--bento-text); }
1589
+ /** Wrap feedback at word boundaries; title/body siblings must not compete for a narrow text lane. */
1590
+ [data-ui=bento][data-mode] .bento-alert { flex-wrap: wrap; }
1591
+ [data-ui=bento][data-mode] .bento-alert :is(p, strong, small) { overflow-wrap: normal; word-break: normal; hyphens: none; }
1592
+ [data-ui=bento][data-mode] .bento-alert-title { flex: 0 0 auto; max-width: 100%; }
1593
+ [data-ui=bento][data-mode] .bento-alert-body { flex: 1 1 12rem; min-width: 0; }
1594
+ [data-ui=bento][data-mode] .bento-card-service > .bento-icon-medallion { font-size: 32px; line-height: 1; }
1595
+ [data-ui=bento][data-mode] .bento-alert-success { background: var(--bento-mosaic-success-soft); border-color: var(--bento-success); }
1596
+ [data-ui=bento][data-mode] .bento-alert-warning { background: var(--bento-mosaic-warning-soft); border-color: var(--bento-warning); }
1597
+ [data-ui=bento][data-mode] .bento-alert-danger { background: var(--bento-mosaic-danger-soft); border-color: var(--bento-danger); }
1598
+ [data-ui=bento][data-mode] .bento-alert-info { background: var(--bento-mosaic-info-soft); border-color: var(--bento-link); }
1599
+ [data-ui=bento][data-mode] .bento-status { color: var(--bento-text); }
1600
+ [data-ui=bento][data-mode] .bento-status.is-success, [data-ui=bento][data-mode] .bento-status.is-warning, [data-ui=bento][data-mode] .bento-status.is-danger,
1601
+ [data-ui=bento][data-mode] .bento-status.is-info, [data-ui=bento][data-mode] .bento-status.is-violet { color: var(--bento-text); border-color: currentColor; }
1602
+ [data-ui=bento][data-mode] .bento-progress-bar { background: var(--bento-primary); }
1603
+ [data-ui=bento][data-mode] .bento-table-wrap { border-radius: 9px; box-shadow: none; }
1604
+ [data-ui=bento][data-mode] .bento-table th { background: var(--bento-surface-soft); }
1605
+ [data-ui=bento][data-mode] .bento-table :is(th, td) { padding: 12px; border-bottom: 1px solid var(--bento-border); }
1606
+ [data-ui=bento][data-mode] .bento-nav-link { border-radius: 9px; }
1607
+ [data-ui=bento][data-mode] .bento-well, [data-ui=bento][data-mode] .bento-inset { border-radius: 9px; box-shadow: none; }
1608
+ [data-ui="bento"][data-mode] :where(dialog) { border-radius: 14px; box-shadow: var(--bento-mosaic-shadow-raised); }
1609
+
1610
+ /** Intrinsic tracks preserve the board hierarchy without shrinking its controls. */
1611
+ [data-ui=bento][data-mode] .bento-sheet { display: grid; grid-template-columns: 184px minmax(0, 1fr); gap: 10px; font: 14px/1.5 var(--bento-font-sans); color: var(--bento-text); background: var(--bento-bg); min-width: 0; padding: 8px; }
1612
+ [data-ui=bento][data-mode] .bento-sheet :is(h1, h2, h3, p, span, label, button) { letter-spacing: 0; }
1613
+ [data-ui=bento][data-mode] .bento-sheet :is(h2, h3) { font-size: 16px; font-weight: 800; margin: 0; }
1614
+ [data-ui=bento][data-mode] .bento-sheet svg { width: 18px; height: 18px; }
1615
+ [data-ui=bento][data-mode] .bento-sheet :is(button, a, input, select, textarea) { font-family: inherit; }
1616
+ [data-ui=bento][data-mode] .bento-sheet button { box-shadow: none; }
1617
+ [data-ui=bento][data-mode] .bento-sheet :is(button, input, select, textarea):focus-visible { outline: 2px solid var(--bento-focus); outline-offset: 3px; }
1618
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar { height: auto; margin: 0; border-radius: 18px; gap: 16px; }
1619
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar-note { min-height: 0; }
1620
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar-note p { max-width: none; }
1621
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar nav button.is-active { box-shadow: none; }
1622
+ [data-ui=bento][data-mode] .bento-canvas { height: auto; grid-template-rows: auto; padding: 0; min-width: 0; }
1623
+ [data-ui=bento][data-mode] .bento-top-grid { grid-template-columns: minmax(0, 2fr) minmax(160px, 1fr) minmax(180px, 1fr); }
1624
+ [data-ui=bento][data-mode] .bento-middle-grid { grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr)); }
1625
+ [data-ui=bento][data-mode] .bento-bottom-grid { grid-template-columns: minmax(0, 2fr) minmax(180px, 1fr) minmax(0, 1.4fr); }
1626
+ [data-ui=bento][data-mode] .bento-canvas :is(.bento-panel, .bento-metrics-stack, .bento-utility-stack) { min-width: 0; }
1627
+ [data-ui=bento][data-mode] .bento-sheet .bento-panel { color: var(--bento-text); }
1628
+ [data-ui=bento][data-mode] .bento-sheet .bento-actions { background: var(--bento-surface); grid-template-rows: auto; }
1629
+ [data-ui=bento][data-mode] .bento-sheet .bento-button { min-height: 36px; padding: 8px 12px; font-size: 12px; }
1630
+ [data-ui=bento][data-mode] .bento-sheet .bento-system { background: var(--bento-primary); color: var(--bento-on-primary); }
1631
+ [data-ui=bento][data-mode] .bento-sheet .bento-system :is(header, h2, p, strong, small) { color: var(--bento-on-primary); }
1632
+ [data-ui=bento][data-mode] .bento-metrics-stack { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; }
1633
+ [data-ui=bento][data-mode] .bento-sheet .bento-usage { background: var(--bento-mosaic-warning-soft); }
1634
+ [data-ui=bento][data-mode] .bento-sheet .bento-quota { background: var(--bento-mosaic-success-soft); }
1635
+ [data-ui=bento][data-mode] .bento-quota-copy strong { color: var(--bento-success-ink, var(--bento-success)); }
1636
+ [data-ui=bento][data-mode] .bento-sheet .bento-hero { background: var(--bento-mosaic-primary-soft); display: flex; flex-direction: column; min-height: 360px; padding: 24px; }
1637
+ [data-ui=bento][data-mode] .bento-hero-copy { position: static; }
1638
+ [data-ui=bento][data-mode] .bento-hero h1 { font-size: 32px; }
1639
+ [data-ui=bento][data-mode] .bento-hero p { max-width: none; }
1640
+ [data-ui=bento][data-mode] .bento-inline-actions { flex-wrap: wrap; }
1641
+ [data-ui=bento][data-mode] .bento-sheet .bento-hero-art { position: relative; inset: auto; transform: none; width: 175px; height: 190px; margin: 12px auto 0; overflow: hidden; flex: 0 0 190px; }
1642
+ [data-ui=bento][data-mode] .bento-sheet .bento-hero-art img { position: absolute; width: 1160px; max-width: none; height: auto; left: -380px; top: -55px; }
1643
+ [data-ui=bento][data-mode] .bento-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
1644
+ [data-ui=bento][data-mode] .bento-field :is(input, select, textarea), [data-ui=bento][data-mode] .bento-table-tools input { min-height: 36px; height: auto; font-size: 13px; }
1645
+ [data-ui=bento][data-mode] .bento-field textarea { min-height: 72px; resize: vertical; padding: 8px; }
1646
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > button { top: 9px; }
1647
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > button svg { width: 18px; height: 18px; }
1648
+ [data-ui=bento][data-mode] .bento-file { min-height: 60px; }
1649
+ [data-ui=bento][data-mode] .bento-file input { top: 22px; height: 36px; cursor: pointer; }
1650
+ [data-ui=bento][data-mode] .bento-file > span:last-child { height: 36px; }
1651
+ [data-ui=bento][data-mode] .bento-file:focus-within { outline: 2px solid var(--bento-focus); outline-offset: 2px; }
1652
+ [data-ui=bento][data-mode] .bento-choices fieldset > label { min-height: 28px; }
1653
+ [data-ui=bento][data-mode] .bento-choices fieldset { border-radius: 0; background: transparent; box-shadow: none; }
1654
+ [data-ui=bento][data-mode] .bento-choices input:is([type="checkbox"], [type="radio"]) { appearance: auto; background: none; box-shadow: none; }
1655
+ [data-ui=bento][data-mode] .bento-choices input:is([type="checkbox"], [type="radio"])::before,
1656
+ [data-ui=bento][data-mode] .bento-choices input:is([type="checkbox"], [type="radio"])::after { content: none; }
1657
+ [data-ui=bento][data-mode] .bento-input-icon.is-end > button { min-height: 24px; width: 24px; height: 24px; top: 6px; right: 6px; padding: 3px; }
1658
+ [data-ui=bento][data-mode] :is(.bento-alert, .bento-toast) button { min-height: 24px; height: 24px; width: 24px; display: inline-flex; justify-content: center; align-items: center; flex: 0 0 24px; }
1659
+ [data-ui=bento][data-mode] .bento-eyebrow,
1660
+ [data-ui=bento][data-mode] .bento-file > span:last-child,
1661
+ [data-ui=bento][data-mode] .bento-segment button.is-active,
1662
+ [data-ui=bento][data-mode] .bento-listbox button[aria-selected="true"] { color: var(--bento-link); }
1663
+ [data-ui=bento][data-mode] .bento-media-scrim > :where(figcaption, [data-media-caption]) * { color: inherit; }
1664
+ [data-ui=bento][data-mode] .bento-tabs button.is-active { background: var(--bento-surface); color: var(--bento-text); }
1665
+ [data-ui=bento][data-mode] .bento-switch-row { min-height: 32px; }
1666
+ [data-ui=bento][data-mode] .bento-sheet .bento-switch:where(button, span) { flex: 0 0 37px; padding: 2px; min-height: 20px; }
1667
+ [data-ui=bento][data-mode] .bento-segment button { min-height: 36px; padding: 4px; }
1668
+ [data-ui=bento][data-mode] .bento-sheet .bento-tooltip { background: var(--bento-surface); color: var(--bento-text); display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; min-height: 100px; }
1669
+ [data-ui=bento][data-mode] .bento-sheet .bento-tooltip [role="tooltip"] { position: static; transform: none; background: var(--bento-tooltip-bg); color: var(--bento-tooltip-text); border-radius: 7px; padding: 8px; }
1670
+ [data-ui=bento][data-mode] .bento-sheet .bento-tooltip [role="tooltip"]::after { display: none; }
1671
+ [data-ui=bento][data-mode] .bento-sheet .bento-loading { display: flex; flex-wrap: wrap; align-content: start; align-items: center; gap: 12px; min-height: 100px; }
1672
+ [data-ui=bento][data-mode] .bento-sheet :is(.bento-loading, .bento-tooltip) > header { flex: 0 0 100%; }
1673
+ [data-ui=bento][data-mode] .bento-sheet .bento-tooltip > button { min-height: 24px; width: 24px; height: 24px; padding: 0; }
1674
+ [data-ui=bento][data-mode] .bento-spinner,
1675
+ [data-ui=bento][data-mode] .bento-loading-spinner,
1676
+ [data-ui=bento][data-mode] :where(.ui-spinner, .loading-spinner, [data-loading-spinner]),
1677
+ [data-ui=bento][data-mode] .bento-sheet .bento-spinner { border: 2px solid currentColor; border-top-color: transparent; background: transparent; clip-path: none; border-radius: 50%; box-shadow: none; animation: bento-mosaic-spin 1s linear infinite; width: 28px; height: 28px; inline-size: 28px; block-size: 28px; flex: 0 0 auto; }
1678
+ /** Keeps semantic spinner paint aligned with the prefixed readable ink treatment. */
1679
+ [data-ui=bento][data-mode] :where(.ui-spinner, .loading-spinner, [data-loading-spinner]) { color: var(--usk-primary-ink, var(--bento-spinner-stroke)); }
1680
+ [data-ui=bento][data-mode] .bento-spinner-sm { width: 16px; height: 16px; inline-size: 16px; block-size: 16px; }
1681
+ [data-ui=bento][data-mode] .bento-spinner-lg { width: 40px; height: 40px; inline-size: 40px; block-size: 40px; }
1682
+ /** Keeps native busy controls on the same Soft Mosaic ring as authored button aliases. */
1683
+ [data-ui=bento][data-mode] :is(.bento-button, .bento-icon-button)[aria-busy="true"]::after,
1684
+ [data-ui=bento][data-mode] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"])::after { background: transparent; border: 2px solid currentColor; border-top-color: transparent; border-radius: 50%; box-shadow: none; clip-path: none; animation: bento-mosaic-spin 1s linear infinite; }
1685
+ [data-ui=bento][data-mode] .bento-sheet .bento-spinner::before, [data-ui=bento][data-mode] .bento-sheet .bento-spinner::after { content: none; }
1686
+ [data-ui=bento][data-mode] .bento-sheet .bento-skeleton { flex: 1; min-width: 40px; width: auto; height: auto; background: transparent; }
1687
+ [data-ui=bento][data-mode] .bento-sheet .bento-skeleton::after { content: none; }
1688
+ [data-ui=bento][data-mode] .bento-sheet .bento-table-panel { grid-column: 1; }
1689
+ [data-ui=bento][data-mode] .bento-sheet .bento-table-wrap { overflow: auto; background: var(--bento-surface); }
1690
+ [data-ui=bento][data-mode] .bento-table-panel table { min-width: 500px; table-layout: auto; }
1691
+ [data-ui=bento][data-mode] .bento-table-panel :is(th, td) { padding: 10px; }
1692
+ [data-ui=bento][data-mode] .bento-table-panel th { background: var(--bento-surface-soft); color: var(--bento-text); }
1693
+ [data-ui=bento][data-mode] .bento-table-panel th:nth-child(n) { width: auto; }
1694
+ [data-ui=bento][data-mode] .bento-table-panel > header { flex-wrap: wrap; gap: 12px; }
1695
+ [data-ui=bento][data-mode] .bento-table-tools { width: 100%; }
1696
+ [data-ui=bento][data-mode] .bento-table-tools input { width: 100%; }
1697
+ [data-ui=bento][data-mode] .bento-listbox button { min-height: 36px; color: var(--bento-text); }
1698
+ [data-ui=bento][data-mode] .bento-sheet .bento-dialog-zone { background: var(--bento-primary); padding: 0; }
1699
+ [data-ui=bento][data-mode] .bento-dialog-toolbar { flex-wrap: wrap; gap: 8px; }
1700
+ [data-ui=bento][data-mode] .bento-dialog-surface { min-height: 280px; padding: 14px; }
1701
+ [data-ui=bento][data-mode] .bento-dialog-surface dialog { padding: 20px; }
1702
+ [data-ui=bento][data-mode] .bento-dialog-surface dialog > div { flex-wrap: wrap; }
1703
+ [data-ui=bento][data-mode] .bento-sheet [hidden] { display: none; }
1704
+ @media (min-width: 1800px) {
1705
+ [data-ui=bento][data-mode] .bento-top-grid { grid-template-columns: 2fr 1fr 1fr 1fr; }
1706
+ [data-ui=bento][data-mode] .bento-metrics-stack { grid-column: auto; grid-template-columns: 1fr; }
1707
+ }
1708
+ @media (max-width: 1250px) {
1709
+ [data-ui=bento][data-mode] .bento-sheet { grid-template-columns: 1fr; }
1710
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar { flex-direction: row; flex-wrap: wrap; align-items: center; padding: 12px; }
1711
+ [data-ui=bento][data-mode] .bento-brand { padding: 0; }
1712
+ [data-ui=bento][data-mode] .bento-sidebar nav { display: flex; flex-wrap: wrap; }
1713
+ [data-ui=bento][data-mode] .bento-sidebar-spacer, [data-ui=bento][data-mode] .bento-sidebar-note { display: none; }
1714
+ [data-ui=bento][data-mode] .bento-theme-toggle { width: auto; margin: 0; }
1715
+ [data-ui=bento][data-mode] .bento-bottom-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
1716
+ [data-ui=bento][data-mode] .bento-sheet .bento-table-panel { grid-column: 1 / -1; }
1717
+ }
1718
+ @media (max-width: 800px) {
1719
+ [data-ui=bento][data-mode] .bento-top-grid, [data-ui=bento][data-mode] .bento-middle-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
1720
+ [data-ui=bento][data-mode] .bento-hero, [data-ui=bento][data-mode] .bento-form-panel { grid-column: 1 / -1; }
1721
+ [data-ui=bento][data-mode] .bento-sheet .bento-hero { min-height: 0; }
1722
+ }
1723
+ @media (max-width: 520px) {
1724
+ [data-ui=bento][data-mode] .bento-top-grid, [data-ui=bento][data-mode] .bento-middle-grid, [data-ui=bento][data-mode] .bento-bottom-grid, [data-ui=bento][data-mode] .bento-metrics-stack { grid-template-columns: minmax(0, 1fr); }
1725
+ [data-ui=bento][data-mode] .bento-form-grid { grid-template-columns: minmax(0, 1fr); }
1726
+ [data-ui=bento][data-mode] .bento-sheet .bento-hero { padding: 16px; }
1727
+ [data-ui=bento][data-mode] .bento-sheet { padding: 4px; }
1728
+ [data-ui=bento][data-mode] .bento-sheet .bento-sidebar nav button { width: auto; }
1729
+ }
1730
+ }
1731
+
1732
+ /**
1733
+ * Preserves shared annotation fixture spacing and icon weight after reference
1734
+ * overrides append their compact source rules.
1735
+ */
1736
+ [data-ui="bento"][data-mode] .bento-title {
1737
+ margin-block: max(.75rem, 12px);
1738
+ letter-spacing: max(.018em, .5px);
1739
+ }
1740
+
1741
+ [data-ui="bento"][data-mode] .bento-feature-item > .bento-icon-medallion {
1742
+ font-size: 1.5rem;
1743
+ line-height: 1;
1744
+ }
1745
+
1746
+ [data-ui="bento"][data-mode] .bento-callout-bar > .bento-icon-medallion {
1747
+ min-inline-size: 4.5rem;
1748
+ min-block-size: 4.5rem;
1749
+ font-size: 2rem;
1750
+ font-weight: 800;
1751
+ line-height: 1;
1752
+ }