ui-style-kit-css 1.2.2 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -1
- package/CONTRIBUTING.md +6 -5
- package/README.md +133 -17
- package/STYLE-MAP.md +24 -0
- package/demo/index.html +1076 -73
- package/dist/ui-style-kit.css +2932 -8339
- package/dist/ui-style-kit.min.css +1 -1
- package/dist/ui-style-kit.with-bridge.css +5861 -0
- package/dist/ui-style-kit.with-bridge.min.css +1 -0
- package/docs/PUBLISHING.md +3 -3
- package/docs/STYLE-GUIDE.md +3 -1
- package/docs/TOKENS.md +215 -10
- package/package.json +15 -3
- package/styles/bauhaus.css +142 -702
- package/styles/bento.css +142 -701
- package/styles/brutalism.css +137 -702
- package/styles/cyberpunk.css +128 -699
- package/styles/interactive-surface-bridge.css +147 -311
- package/styles/maximalist.css +143 -702
- package/styles/minimal-saas.css +138 -701
- package/styles/native-elements.css +374 -0
- package/styles/neumorphism.css +144 -702
- package/styles/retro-glass.css +131 -702
- package/styles/retrofuturism.css +144 -702
- package/styles/tactile.css +142 -701
- package/styles/theme-colors.css +787 -0
- package/styles/y2k.css +122 -696
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,33 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to **UI Style Kit CSS** will be documented here.
|
|
4
4
|
|
|
5
|
+
## [2.0.1] - 2026-06-22
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added visible tooltip utilities for every UI preset through `<prefix>-tooltip`, `<prefix>-tooltip-arrow`, `.ui-tooltip`, `[role="tooltip"]`, and `[data-tooltip]`.
|
|
10
|
+
- Added demo coverage for tooltips, switch-style Interactive Surface bridge controls, padded table showcases, combined controls/loading/progress displays, and more useful utility samples.
|
|
11
|
+
- Added the exported `native-elements.css` shared fallback layer for standalone style imports.
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Aligned package metadata, generated dist banners, and release documentation to publish from the `v2.0.1` tag after the previous release tag was retired.
|
|
16
|
+
- Moved concrete color scheme values into the shared `styles/theme-colors.css` layer.
|
|
17
|
+
- Updated all UI systems to alias shared `--usk-*` RGB roles back to their public style prefixes.
|
|
18
|
+
- Reduced generated bundle size by removing duplicated per-UI color scheme blocks from `dist`.
|
|
19
|
+
- Kept prefixed functional tokens such as `--saas-primary`, `--neo-card-bg`, and `--rg-on-primary` for component styling.
|
|
20
|
+
- Refactored the Interactive Surface bridge to inherit shared `--usk-*` roles, expose visible hover/active/focus state layers, and support `data-surface-level="1"`, `"2"`, and `"3"` surface depth hooks.
|
|
21
|
+
- Moved the bridge attach switch into the demo bridge section so the opt-in behavior is documented where it is exercised.
|
|
22
|
+
- Refactored native HTML fallback rules into one shared `styles/native-elements.css` layer while each preset now supplies only visual token mappings through `--usk-native-*`.
|
|
23
|
+
- Polished the demo component layout at desktop, tablet, and square viewports with denser controls, richer badge examples, padded native controls, and balanced showcase rows.
|
|
24
|
+
- Moved the demo Usage section to match the primary navigation order and tightened the mobile controls showcase into a readable single-column flow.
|
|
25
|
+
- Updated the Interactive Surface bridge docs to keep the bridge opt-in while `interactive-surface-css` is revised separately.
|
|
26
|
+
|
|
27
|
+
### Breaking
|
|
28
|
+
|
|
29
|
+
- Concrete scheme overrides should now target shared `--usk-*-rgb` roles instead of redefining one copy per UI prefix.
|
|
30
|
+
- Standalone style imports rely on `styles/theme-colors.css` and `styles/native-elements.css`; import those shared layers first if your CSS pipeline does not resolve `@import`.
|
|
31
|
+
|
|
5
32
|
## [1.2.2] - 2026-06-05
|
|
6
33
|
|
|
7
34
|
### Added
|
|
@@ -11,7 +38,7 @@ All notable changes to **UI Style Kit CSS** will be documented here.
|
|
|
11
38
|
|
|
12
39
|
### Changed
|
|
13
40
|
|
|
14
|
-
-
|
|
41
|
+
- Added generated `with-bridge` dist CSS for consumers that want the Interactive Surface bridge in the same import.
|
|
15
42
|
- Aligned release metadata, package checks, and documentation for the `1.2.2` release.
|
|
16
43
|
|
|
17
44
|
## 0.2.0
|
package/CONTRIBUTING.md
CHANGED
|
@@ -11,11 +11,12 @@ The library is CSS-only for consumers. Build and validation scripts run with Nod
|
|
|
11
11
|
|
|
12
12
|
## Adding or changing a style system
|
|
13
13
|
|
|
14
|
-
1. Keep the public `data-ui`, `data-theme`, and `data-mode` API stable.
|
|
15
|
-
2. Preserve class prefixes.
|
|
16
|
-
3.
|
|
17
|
-
4.
|
|
18
|
-
5.
|
|
14
|
+
1. Keep the public `data-ui`, `data-theme`, and `data-mode` API stable unless preparing a documented major version.
|
|
15
|
+
2. Preserve class prefixes and prefixed functional tokens.
|
|
16
|
+
3. Define concrete color scheme values in `styles/theme-colors.css` as shared `--usk-*` roles; UI style files should only alias those roles and define visual treatment.
|
|
17
|
+
4. Include the native HTML coverage and accessibility layer.
|
|
18
|
+
5. Run `npm run check` before publishing.
|
|
19
|
+
6. Update `STYLE-MAP.md`, `docs/TOKENS.md`, `README.md`, wiki pages, and `CHANGELOG.md` for public API changes.
|
|
19
20
|
|
|
20
21
|
## Versioning
|
|
21
22
|
|
package/README.md
CHANGED
|
@@ -4,16 +4,25 @@
|
|
|
4
4
|
|
|
5
5
|
It is separate from, but complementary to, **Interactive Surface CSS**. Use **UI Style Kit CSS** for visual identity, color themes, UI presets, layout mood, and native HTML styling. Use **Interactive Surface CSS** for interaction-state animation systems and surface behavior.
|
|
6
6
|
|
|
7
|
+
## Current Release
|
|
8
|
+
|
|
9
|
+
`v2.0.1` is the current v2 release. It centralizes color schemes in `styles/theme-colors.css`, centralizes native HTML fallback styling in `styles/native-elements.css`, keeps style-specific component APIs prefix-bound, and ships the Interactive Surface bridge as an opt-in import.
|
|
10
|
+
|
|
7
11
|
## Features
|
|
8
12
|
|
|
9
13
|
- 11 UI style systems
|
|
10
14
|
- 10 shared color schemes
|
|
11
15
|
- `light`, `dark`, and `contrast` modes
|
|
12
|
-
- Combined CSS bundle and
|
|
13
|
-
-
|
|
16
|
+
- Combined CSS bundle and per-style production imports
|
|
17
|
+
- Shared `theme-colors.css` scheme layer and `native-elements.css` fallback layer for all UI systems
|
|
18
|
+
- Scoped native HTML element coverage, including semantic containers and inline text elements
|
|
14
19
|
- Visible `:focus-visible` defaults
|
|
15
20
|
- Skip-link and visually-hidden helpers per style prefix
|
|
16
|
-
-
|
|
21
|
+
- Compact shared palette → prefixed alias → UI-rule token model
|
|
22
|
+
- Theme-driven card, panel, control, page-background, and spinner defaults
|
|
23
|
+
- Visible tooltip classes and native `[role="tooltip"]` styling inside each UI scope
|
|
24
|
+
- Font-family override variables for body, headings, controls, and mono text
|
|
25
|
+
- Optional bridge tokens, visible state layers, and an opt-in bridge bundle for `interactive-surface-css`
|
|
17
26
|
- Reduced-motion, high-contrast, forced-colors, and print support
|
|
18
27
|
- Cascade-layered CSS for easier consumer overrides
|
|
19
28
|
- No runtime dependencies
|
|
@@ -26,32 +35,60 @@ npm install ui-style-kit-css
|
|
|
26
35
|
|
|
27
36
|
## Import
|
|
28
37
|
|
|
29
|
-
|
|
38
|
+
Use a single style import for production apps that use one visual system:
|
|
30
39
|
|
|
31
40
|
```js
|
|
32
|
-
import "ui-style-kit-css/
|
|
41
|
+
import "ui-style-kit-css/minimal-saas.css";
|
|
33
42
|
```
|
|
34
43
|
|
|
35
|
-
|
|
44
|
+
In `v2.0.1`, standalone style files import the shared color-scheme layer from `styles/theme-colors.css` and the shared native-element fallback layer from `styles/native-elements.css`. Bundlers that understand CSS `@import` will resolve them automatically. If your build pipeline does not resolve CSS imports, import the shared dependencies before the style file:
|
|
45
|
+
|
|
46
|
+
```js
|
|
47
|
+
import "ui-style-kit-css/theme-colors.css";
|
|
48
|
+
import "ui-style-kit-css/native-elements.css";
|
|
49
|
+
import "ui-style-kit-css/minimal-saas.css";
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
The longer `styles/*` paths are also exported:
|
|
36
53
|
|
|
37
54
|
```js
|
|
38
55
|
import "ui-style-kit-css/styles/minimal-saas.css";
|
|
39
56
|
import "ui-style-kit-css/styles/cyberpunk.css";
|
|
40
57
|
```
|
|
41
58
|
|
|
42
|
-
|
|
59
|
+
Use the full bundle when users need to switch `data-ui` systems at runtime:
|
|
43
60
|
|
|
44
61
|
```js
|
|
45
|
-
import "ui-style-kit-css/
|
|
46
|
-
import "ui-style-kit-css/retro-glass.css";
|
|
62
|
+
import "ui-style-kit-css/dist/ui-style-kit.css";
|
|
47
63
|
```
|
|
48
64
|
|
|
49
|
-
|
|
65
|
+
Use the opt-in bridge bundle when you want UI Style Kit CSS and the Interactive Surface bridge in one import:
|
|
50
66
|
|
|
51
67
|
```js
|
|
68
|
+
import "ui-style-kit-css/with-bridge.css";
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Or import the bridge by itself when you are using a single style file:
|
|
72
|
+
|
|
73
|
+
```js
|
|
74
|
+
import "ui-style-kit-css/minimal-saas.css";
|
|
52
75
|
import "ui-style-kit-css/interactive-surface-bridge";
|
|
53
76
|
```
|
|
54
77
|
|
|
78
|
+
The default full bundle does **not** include the bridge. That keeps `dist/ui-style-kit.css` focused on UI systems and prevents accidental duplicate bridge imports.
|
|
79
|
+
|
|
80
|
+
When the bridge is attached, add `.interactive-surface` to interactable elements and use `data-surface-variant` plus `data-surface-level="1"`, `"2"`, or `"3"` to opt into the visible rest, hover, active, and focus treatments. The bridge inherits from shared `--usk-*` roles instead of duplicating per-theme or per-preset token maps.
|
|
81
|
+
|
|
82
|
+
### Bundle size guide
|
|
83
|
+
|
|
84
|
+
| Import | Raw | Gzip | Best for |
|
|
85
|
+
|---|---:|---:|---|
|
|
86
|
+
| `ui-style-kit-css/dist/ui-style-kit.min.css` | ~269 KB | ~34 KB | Runtime UI-system switchers and demos |
|
|
87
|
+
| `ui-style-kit-css/with-bridge.css` | ~331 KB | ~39 KB | Runtime switchers plus Interactive Surface bridge |
|
|
88
|
+
| `ui-style-kit-css/theme-colors.css` | ~25 KB | ~3 KB | Shared color schemes for standalone style imports |
|
|
89
|
+
| `ui-style-kit-css/native-elements.css` | ~13 KB | ~2 KB | Shared native HTML fallback styling |
|
|
90
|
+
| Single style imports | ~26-28 KB | ~5-6 KB | Production apps with one visual system |
|
|
91
|
+
|
|
55
92
|
## CDN usage
|
|
56
93
|
|
|
57
94
|
After publishing to NPM:
|
|
@@ -63,7 +100,7 @@ After publishing to NPM:
|
|
|
63
100
|
For production, pin a version:
|
|
64
101
|
|
|
65
102
|
```html
|
|
66
|
-
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/ui-style-kit-css@
|
|
103
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/ui-style-kit-css@2.0.1/dist/ui-style-kit.min.css" />
|
|
67
104
|
```
|
|
68
105
|
|
|
69
106
|
## Basic usage
|
|
@@ -76,6 +113,7 @@ For production, pin a version:
|
|
|
76
113
|
<h1 class="saas-title">UI Style Kit CSS</h1>
|
|
77
114
|
<p class="saas-subtitle">Switch UI systems, themes, and modes with attributes.</p>
|
|
78
115
|
<button class="saas-button saas-button-primary">Primary Action</button>
|
|
116
|
+
<span class="saas-spinner" aria-label="Loading"></span>
|
|
79
117
|
</article>
|
|
80
118
|
</section>
|
|
81
119
|
</main>
|
|
@@ -121,6 +159,8 @@ cyber-lime
|
|
|
121
159
|
arctic-indigo
|
|
122
160
|
```
|
|
123
161
|
|
|
162
|
+
Color schemes are defined once in `styles/theme-colors.css` as shared `--usk-*` RGB roles. Each UI style maps those shared roles back to its public prefix, so existing component rules still consume variables such as `--saas-primary`, `--bau-surface`, and `--rg-on-primary`.
|
|
163
|
+
|
|
124
164
|
## Modes
|
|
125
165
|
|
|
126
166
|
```txt
|
|
@@ -131,27 +171,90 @@ contrast
|
|
|
131
171
|
|
|
132
172
|
## Native HTML coverage
|
|
133
173
|
|
|
134
|
-
|
|
174
|
+
`styles/native-elements.css` owns the shared native selectors under `[data-ui][data-theme][data-mode]`. Each style system maps those selectors to its visual identity through `--usk-native-*` tokens, so native controls keep the same coverage while inheriting each preset's radius, shadows, borders, typography, and color surfaces.
|
|
135
175
|
|
|
136
|
-
|
|
137
|
-
|
|
176
|
+
The shared native layer covers common native elements, including:
|
|
177
|
+
|
|
178
|
+
- semantic containers: `main`, `section`, `header`, `footer`, `nav`, `article`, `aside`, `address`
|
|
179
|
+
- headings, paragraphs, links, lists, definition lists, blockquotes, code, pre, mark, abbr
|
|
180
|
+
- inline semantics: `strong`, `b`, `em`, `i`, `cite`, `var`, `q`, `ins`, `del`, `s`, `sub`, `sup`, `output`, `time`, `data`, `dfn`, `ruby`, `rt`, `rp`
|
|
181
|
+
- images, media, figures, captions, `audio`, `picture`, `object`, `embed`, and `math`
|
|
138
182
|
- forms, fieldsets, labels, inputs, textareas, selects, checkboxes, radios, range, color, file inputs
|
|
139
183
|
- buttons and submit/reset controls
|
|
140
184
|
- tables and captions
|
|
141
|
-
- `details`, `summary`, `dialog`, `progress`, and `
|
|
185
|
+
- `details`, `summary`, `dialog`, `progress`, `meter`, `menu`, `search`, `optgroup`, and `option`
|
|
186
|
+
- loading indicators through `<prefix>-spinner`, `<prefix>-loading-spinner`, and busy native buttons with `aria-busy="true"`
|
|
187
|
+
- tooltip surfaces through `<prefix>-tooltip`, `<prefix>-tooltip-arrow`, `.ui-tooltip`, `[role="tooltip"]`, and `[data-tooltip]`
|
|
142
188
|
|
|
143
189
|
CSS improves accessibility presentation, but it cannot guarantee accessibility by itself. Use semantic HTML, real labels, keyboard-safe JavaScript, meaningful link/button text, and correct ARIA state management.
|
|
144
190
|
|
|
191
|
+
Semantic text utilities such as `saas-text-primary`, `saas-text-warning`, and `saas-text-danger` use the active theme palette directly. Filled UI such as buttons, badges, and busy states use compact `on-*` aliases like `--saas-on-primary` and `--saas-on-danger`.
|
|
192
|
+
|
|
193
|
+
## Loading states
|
|
194
|
+
|
|
195
|
+
Every style includes theme-driven spinner utilities:
|
|
196
|
+
|
|
197
|
+
```html
|
|
198
|
+
<span class="saas-spinner" aria-label="Loading"></span>
|
|
199
|
+
<span class="saas-loading-spinner saas-spinner-sm" aria-hidden="true"></span>
|
|
200
|
+
<button class="saas-button saas-button-primary" aria-busy="true">Saving</button>
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Spinner track, stroke, and accent colors come from the active `data-theme` and `data-mode`. The generic `.ui-spinner`, `.loading-spinner`, and `[data-loading-spinner]` hooks are also themed inside any `[data-ui="..."]` scope.
|
|
204
|
+
|
|
205
|
+
## Tooltip surfaces
|
|
206
|
+
|
|
207
|
+
Every style includes visible tooltip utilities with the same API and preset-specific visual treatment:
|
|
208
|
+
|
|
209
|
+
```html
|
|
210
|
+
<span class="saas-tooltip" role="tooltip">
|
|
211
|
+
Helpful context
|
|
212
|
+
<span class="saas-tooltip-arrow" aria-hidden="true"></span>
|
|
213
|
+
</span>
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
Inside a `[data-ui="..."]` scope, generic `.ui-tooltip`, `[role="tooltip"]`, and `[data-tooltip]` hooks inherit the active UI system.
|
|
217
|
+
|
|
218
|
+
## Font overrides
|
|
219
|
+
|
|
220
|
+
Each style exposes backward-compatible base font variables plus more granular aliases:
|
|
221
|
+
|
|
222
|
+
```css
|
|
223
|
+
[data-ui="minimal-saas"] {
|
|
224
|
+
--saas-font-sans: Inter, system-ui, sans-serif;
|
|
225
|
+
--saas-font-display: Inter, system-ui, sans-serif;
|
|
226
|
+
--saas-font-body: var(--saas-font-sans);
|
|
227
|
+
--saas-font-heading: var(--saas-font-display);
|
|
228
|
+
--saas-font-control: var(--saas-font-display);
|
|
229
|
+
--saas-font-mono: "JetBrains Mono", ui-monospace, monospace;
|
|
230
|
+
}
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
Override `--<prefix>-font-sans` and `--<prefix>-font-display` for the broadest changes, or override `--<prefix>-font-body`, `--<prefix>-font-heading`, `--<prefix>-font-control`, and `--<prefix>-font-mono` for targeted typography control.
|
|
234
|
+
|
|
145
235
|
## Cascade layers
|
|
146
236
|
|
|
147
237
|
The library styles are wrapped in `@layer ui-style-kit.*`. Unlayered consumer CSS can override the library without specificity fights:
|
|
148
238
|
|
|
149
239
|
```css
|
|
150
240
|
[data-ui="minimal-saas"][data-theme="arctic-indigo"] {
|
|
151
|
-
--saas-
|
|
241
|
+
--saas-radius-md: 1rem;
|
|
242
|
+
--saas-font-sans: Inter, system-ui, sans-serif;
|
|
243
|
+
--saas-font-display: Inter, system-ui, sans-serif;
|
|
244
|
+
--saas-font-body: var(--saas-font-sans);
|
|
245
|
+
--saas-font-heading: var(--saas-font-display);
|
|
246
|
+
--saas-font-control: var(--saas-font-display);
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
:where([data-ui][data-theme="arctic-indigo"][data-mode="light"]) {
|
|
250
|
+
--usk-primary-rgb: 72 91 255;
|
|
251
|
+
--usk-primary-hover-rgb: 55 75 230;
|
|
252
|
+
--usk-primary-text-rgb: 255 255 255;
|
|
152
253
|
}
|
|
153
254
|
```
|
|
154
255
|
|
|
256
|
+
The color model is intentionally small: shared `--usk-*` RGB variables feed prefixed aliases such as `--<prefix>-bg`, `--<prefix>-text`, `--<prefix>-surface`, and `--<prefix>-border`. Filled components use `--<prefix>-on-primary`, `--<prefix>-on-secondary`, `--<prefix>-on-success`, `--<prefix>-on-warning`, and `--<prefix>-on-danger` for readable text over filled surfaces.
|
|
257
|
+
|
|
155
258
|
## File structure
|
|
156
259
|
|
|
157
260
|
```txt
|
|
@@ -164,7 +267,11 @@ ui-style-kit-css/
|
|
|
164
267
|
dist/
|
|
165
268
|
ui-style-kit.css
|
|
166
269
|
ui-style-kit.min.css
|
|
270
|
+
ui-style-kit.with-bridge.css
|
|
271
|
+
ui-style-kit.with-bridge.min.css
|
|
167
272
|
styles/
|
|
273
|
+
theme-colors.css
|
|
274
|
+
native-elements.css
|
|
168
275
|
minimal-saas.css
|
|
169
276
|
bento.css
|
|
170
277
|
maximalist.css
|
|
@@ -192,7 +299,16 @@ npm run check
|
|
|
192
299
|
npm run pack:dry-run
|
|
193
300
|
```
|
|
194
301
|
|
|
195
|
-
`npm run check` rebuilds the
|
|
302
|
+
`npm run check` rebuilds the bundles, runs stylelint, verifies package metadata, checks the documented class API, and validates contrast for base text/link pairs and filled component `on-*` pairs. Optional Playwright visual smoke tests are available through `npm run test:visual` after installing dev dependencies.
|
|
303
|
+
|
|
304
|
+
## v2.0.1 Migration Notes
|
|
305
|
+
|
|
306
|
+
The `v2.0.1` release line removes duplicated per-UI color-scheme blocks. Color schemes now live in `theme-colors.css` as shared `--usk-*` roles, native HTML fallback styling lives in `native-elements.css`, and each UI style aliases those shared roles back to its prefix.
|
|
307
|
+
|
|
308
|
+
- Use `--usk-*-rgb` when defining or overriding a color scheme.
|
|
309
|
+
- Continue using prefixed functional tokens such as `--saas-primary`, `--neo-card-bg`, and `--rg-on-primary` inside components.
|
|
310
|
+
- Import `ui-style-kit-css/theme-colors.css` and `ui-style-kit-css/native-elements.css` before standalone style files if your bundler does not follow CSS `@import`.
|
|
311
|
+
- Keep using `ui-style-kit-css/interactive-surface-bridge` or `ui-style-kit-css/with-bridge.css` for the opt-in bridge. The bridge now inherits shared `--usk-*` roles and exposes three `data-surface-level` visual states while the default bundle remains bridge-free.
|
|
196
312
|
|
|
197
313
|
## License
|
|
198
314
|
|
package/STYLE-MAP.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
## UI systems
|
|
4
4
|
|
|
5
|
+
Color schemes are defined once in `styles/theme-colors.css`. Native HTML fallback selectors are defined once in `styles/native-elements.css`. Each UI system file imports both shared layers, aliases `--usk-*` RGB roles back to its prefix, and maps `--usk-native-*` tokens into the preset's visual identity.
|
|
6
|
+
|
|
5
7
|
| UI style | `data-ui` | Prefix | File |
|
|
6
8
|
|---|---:|---:|---|
|
|
7
9
|
| Minimal SaaS | `minimal-saas` | `saas` | `styles/minimal-saas.css` |
|
|
@@ -16,6 +18,28 @@
|
|
|
16
18
|
| Y2K | `y2k` | `y2k` | `styles/y2k.css` |
|
|
17
19
|
| Retro Glass | `retro-glass` | `rg` | `styles/retro-glass.css` |
|
|
18
20
|
|
|
21
|
+
## Shared color file
|
|
22
|
+
|
|
23
|
+
| Purpose | Import |
|
|
24
|
+
|---|---|
|
|
25
|
+
| Shared color schemes and mode palettes | `styles/theme-colors.css` |
|
|
26
|
+
|
|
27
|
+
## Shared native layer
|
|
28
|
+
|
|
29
|
+
| Purpose | Import |
|
|
30
|
+
|---|---|
|
|
31
|
+
| Shared native HTML element fallback selectors | `styles/native-elements.css` |
|
|
32
|
+
|
|
33
|
+
Native selectors stay generic under `[data-ui][data-theme][data-mode]`. Presets only provide token mappings such as `--usk-native-surface`, `--usk-native-radius`, and `--usk-native-shadow`, which avoids repeating the same fieldset, table, dialog, details, form, and semantic-element rules in every UI file.
|
|
34
|
+
|
|
35
|
+
## Bridge bundle
|
|
36
|
+
|
|
37
|
+
| Purpose | Import |
|
|
38
|
+
|---|---|
|
|
39
|
+
| Interactive Surface bridge tokens and state levels | `styles/interactive-surface-bridge.css` |
|
|
40
|
+
|
|
41
|
+
The bridge inherits from shared `--usk-*` color roles, then applies `.interactive-surface`, `data-surface-variant`, and `data-surface-level` hooks without duplicating theme or UI preset maps.
|
|
42
|
+
|
|
19
43
|
## Themes
|
|
20
44
|
|
|
21
45
|
- `midnight-gold`
|