ui-style-kit-css 2.1.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * UI Style Kit CSS v2.1.0
2
+ * UI Style Kit CSS v2.2.0
3
3
  * CSS theme and UI style preset library.
4
4
  * License: MIT
5
5
  */
@@ -846,6 +846,22 @@
846
846
  --usk-native-shadow: none;
847
847
  --usk-native-shadow-md: var(--usk-native-shadow);
848
848
  --usk-native-focus-ring: 0 0 0 3px rgb(var(--usk-focus-rgb) / .28);
849
+ --usk-motion-duration: 140ms;
850
+ --usk-motion-easing: cubic-bezier(0.2, 0, 0.2, 1);
851
+
852
+ /* Shared semantic values are fully typed so optional companion and third-party consumers can use them directly. */
853
+ --ui-color-bg: rgb(var(--usk-bg-rgb));
854
+ --ui-color-surface: var(--usk-native-surface-strong);
855
+ --ui-color-text: var(--usk-native-text);
856
+ --ui-color-muted: var(--usk-native-text-muted);
857
+ --ui-color-primary: var(--usk-native-primary);
858
+ --ui-color-on-primary: var(--usk-native-on-primary);
859
+ --ui-color-border: var(--usk-native-border);
860
+ --ui-radius-control: var(--usk-native-radius);
861
+ --ui-shadow-control: var(--usk-native-shadow);
862
+ --ui-focus-color: var(--usk-native-focus);
863
+ --ui-motion-duration: var(--usk-motion-duration);
864
+ --ui-motion-easing: var(--usk-motion-easing);
849
865
  }
850
866
 
851
867
  [data-ui][data-theme][data-mode] :where(h1, h2, h3, h4, h5, h6) {
@@ -1536,7 +1552,7 @@
1536
1552
  [class~="rg-alert"],
1537
1553
  [class~="rg-table-wrap"],
1538
1554
  [class~="rg-nav"]
1539
- ) {
1555
+ ), [data-ui]:where([data-ui="minimal-saas"],[data-ui="bento"],[data-ui="maximalist"],[data-ui="bauhaus"],[data-ui="tactile"],[data-ui="neumorphism"],[data-ui="retrofuturism"],[data-ui="brutalism"],[data-ui="cyberpunk"],[data-ui="y2k"],[data-ui="retro-glass"])[data-theme][data-mode] :where([class~="saas-surface"],[class~="saas-surface-sm"],[class~="saas-surface-lg"],.ui-card,[class~="saas-panel"],.ui-toolbar,[class~="saas-well"],[class~="saas-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="bento-surface"],[class~="bento-surface-sm"],[class~="bento-surface-lg"],.ui-card,[class~="bento-panel"],.ui-toolbar,[class~="bento-well"],[class~="bento-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="max-surface"],[class~="max-surface-sm"],[class~="max-surface-lg"],.ui-card,[class~="max-panel"],.ui-toolbar,[class~="max-well"],[class~="max-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="bau-surface"],[class~="bau-surface-sm"],[class~="bau-surface-lg"],.ui-card,[class~="bau-panel"],.ui-toolbar,[class~="bau-well"],[class~="bau-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="tactile-surface"],[class~="tactile-surface-sm"],[class~="tactile-surface-lg"],.ui-card,[class~="tactile-panel"],.ui-toolbar,[class~="tactile-well"],[class~="tactile-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="neo-surface"],[class~="neo-surface-sm"],[class~="neo-surface-lg"],.ui-card,[class~="neo-panel"],.ui-toolbar,[class~="neo-well"],[class~="neo-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="retro-surface"],[class~="retro-surface-sm"],[class~="retro-surface-lg"],.ui-card,[class~="retro-panel"],.ui-toolbar,[class~="retro-well"],[class~="retro-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,[class~="brutal-surface"],.ui-card,[class~="brutal-panel"],.ui-toolbar,[class~="brutal-well"],[class~="brutal-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,.ui-card,[class~="cyber-panel"],.ui-toolbar,[class~="cyber-well"],[class~="cyber-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,.ui-card,[class~="y2k-panel"],.ui-toolbar,[class~="y2k-well"],[class~="y2k-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav,.ui-card,[class~="rg-panel"],.ui-toolbar,[class~="rg-well"],[class~="rg-inset"],.ui-field,.ui-alert,.ui-table-wrap,.ui-nav) {
1540
1556
  max-inline-size: 100%;
1541
1557
  min-inline-size: 0;
1542
1558
  overflow-wrap: anywhere;
@@ -1587,7 +1603,7 @@
1587
1603
  [class~="rg-icon-button"],
1588
1604
  [class~="rg-badge"],
1589
1605
  [class~="rg-nav-link"]
1590
- ) {
1606
+ ), [data-ui]:where([data-ui="minimal-saas"],[data-ui="bento"],[data-ui="maximalist"],[data-ui="bauhaus"],[data-ui="tactile"],[data-ui="neumorphism"],[data-ui="retrofuturism"],[data-ui="brutalism"],[data-ui="cyberpunk"],[data-ui="y2k"],[data-ui="retro-glass"])[data-theme][data-mode] :where(.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link,.ui-button,.ui-icon-button,.ui-badge,.ui-nav-link) {
1591
1607
  max-inline-size: 100%;
1592
1608
  min-inline-size: 0;
1593
1609
  white-space: normal;
@@ -1627,7 +1643,7 @@
1627
1643
  .rg-button,
1628
1644
  .rg-icon-button,
1629
1645
  .rg-button-pill
1630
- ) {
1646
+ ), [data-ui]:where([data-ui="minimal-saas"],[data-ui="bento"],[data-ui="maximalist"],[data-ui="bauhaus"],[data-ui="tactile"],[data-ui="neumorphism"],[data-ui="retrofuturism"],[data-ui="brutalism"],[data-ui="cyberpunk"],[data-ui="y2k"],[data-ui="retro-glass"])[data-theme][data-mode] :where(.ui-button,.ui-icon-button,.saas-button-pill,.ui-button,.ui-icon-button,.bento-button-pill,.ui-button,.ui-icon-button,.max-button-pill,.ui-button,.ui-icon-button,.bau-button-pill,.ui-button,.ui-icon-button,.tactile-button-pill,.ui-button,.ui-icon-button,.neo-button-pill,.ui-button,.ui-icon-button,.retro-button-pill,.ui-button,.ui-icon-button,.brutal-button-pill,.ui-button,.ui-icon-button,.cyber-button-pill,.ui-button,.ui-icon-button,.y2k-button-pill,.ui-button,.ui-icon-button,.rg-button-pill) {
1631
1647
  box-sizing: border-box;
1632
1648
  display: inline-flex;
1633
1649
  align-items: center;
@@ -1951,13 +1967,13 @@
1951
1967
  .saas-divider, .bento-divider, .max-divider, .bau-divider, .tactile-divider, .neo-divider, .retro-divider, .brutal-divider, .cyber-divider, .y2k-divider, .rg-divider { inline-size: 100%; block-size: 1px; border: 0; background: var(--usk-native-border); }
1952
1968
  .saas-disabled, .bento-disabled, .max-disabled, .bau-disabled, .tactile-disabled, .neo-disabled, .retro-disabled, .brutal-disabled, .cyber-disabled, .y2k-disabled, .rg-disabled { opacity: .55; cursor: not-allowed; pointer-events: none; }
1953
1969
 
1954
- .saas-button-ghost, .bento-button-ghost, .max-button-ghost, .bau-button-ghost, .tactile-button-ghost, .neo-button-ghost, .retro-button-ghost, .brutal-button-ghost, .cyber-button-ghost, .y2k-button-ghost, .rg-button-ghost {
1970
+ .saas-button-ghost, .bento-button-ghost, .max-button-ghost, .bau-button-ghost, .tactile-button-ghost, .neo-button-ghost, .retro-button-ghost, .brutal-button-ghost, .cyber-button-ghost, .y2k-button-ghost, .rg-button-ghost, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-button:where([data-ui-variant="ghost"]) {
1955
1971
  color: var(--usk-native-primary);
1956
1972
  background: transparent;
1957
1973
  border-color: var(--usk-native-border);
1958
1974
  }
1959
1975
 
1960
- .saas-check, .saas-radio, .saas-switch, .bento-check, .bento-radio, .bento-switch, .max-check, .max-radio, .max-switch, .bau-check, .bau-radio, .bau-switch, .tactile-check, .tactile-radio, .tactile-switch, .neo-check, .neo-radio, .neo-switch, .retro-check, .retro-radio, .retro-switch, .brutal-check, .brutal-radio, .brutal-switch, .cyber-check, .cyber-radio, .cyber-switch, .y2k-check, .y2k-radio, .y2k-switch, .rg-check, .rg-radio, .rg-switch {
1976
+ .saas-check, .saas-radio, .saas-switch, .bento-check, .bento-radio, .bento-switch, .max-check, .max-radio, .max-switch, .bau-check, .bau-radio, .bau-switch, .tactile-check, .tactile-radio, .tactile-switch, .neo-check, .neo-radio, .neo-switch, .retro-check, .retro-radio, .retro-switch, .brutal-check, .brutal-radio, .brutal-switch, .cyber-check, .cyber-radio, .cyber-switch, .y2k-check, .y2k-radio, .y2k-switch, .rg-check, .rg-radio, .rg-switch, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-check, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-radio, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-switch {
1961
1977
  display: inline-flex;
1962
1978
  align-items: center;
1963
1979
  gap: var(--usk-native-field-gap);
@@ -1965,13 +1981,13 @@
1965
1981
  color: var(--usk-native-text);
1966
1982
  }
1967
1983
 
1968
- .saas-check-control, .saas-radio-control, .bento-check-control, .bento-radio-control, .max-check-control, .max-radio-control, .bau-check-control, .bau-radio-control, .tactile-check-control, .tactile-radio-control, .neo-check-control, .neo-radio-control, .retro-check-control, .retro-radio-control, .brutal-check-control, .brutal-radio-control, .cyber-check-control, .cyber-radio-control, .y2k-check-control, .y2k-radio-control, .rg-check-control, .rg-radio-control {
1984
+ .saas-check-control, .saas-radio-control, .bento-check-control, .bento-radio-control, .max-check-control, .max-radio-control, .bau-check-control, .bau-radio-control, .tactile-check-control, .tactile-radio-control, .neo-check-control, .neo-radio-control, .retro-check-control, .retro-radio-control, .brutal-check-control, .brutal-radio-control, .cyber-check-control, .cyber-radio-control, .y2k-check-control, .y2k-radio-control, .rg-check-control, .rg-radio-control, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-check-control, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-radio-control {
1969
1985
  inline-size: 1.5rem;
1970
1986
  block-size: 1.5rem;
1971
1987
  accent-color: var(--usk-native-primary);
1972
1988
  }
1973
1989
 
1974
- .saas-switch-track, .bento-switch-track, .max-switch-track, .bau-switch-track, .tactile-switch-track, .neo-switch-track, .retro-switch-track, .brutal-switch-track, .cyber-switch-track, .y2k-switch-track, .rg-switch-track {
1990
+ .saas-switch-track, .bento-switch-track, .max-switch-track, .bau-switch-track, .tactile-switch-track, .neo-switch-track, .retro-switch-track, .brutal-switch-track, .cyber-switch-track, .y2k-switch-track, .rg-switch-track, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-switch-track {
1975
1991
  position: relative;
1976
1992
  display: inline-flex;
1977
1993
  align-items: center;
@@ -1983,7 +1999,7 @@
1983
1999
  border-radius: 999px;
1984
2000
  }
1985
2001
 
1986
- .saas-switch-thumb, .bento-switch-thumb, .max-switch-thumb, .bau-switch-thumb, .tactile-switch-thumb, .neo-switch-thumb, .retro-switch-thumb, .brutal-switch-thumb, .cyber-switch-thumb, .y2k-switch-thumb, .rg-switch-thumb {
2002
+ .saas-switch-thumb, .bento-switch-thumb, .max-switch-thumb, .bau-switch-thumb, .tactile-switch-thumb, .neo-switch-thumb, .retro-switch-thumb, .brutal-switch-thumb, .cyber-switch-thumb, .y2k-switch-thumb, .rg-switch-thumb, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-switch-thumb {
1987
2003
  inline-size: 1rem;
1988
2004
  block-size: 1rem;
1989
2005
  background: var(--usk-native-thumb);
@@ -2002,7 +2018,7 @@
2002
2018
  .brutal-switch:has(input:checked) .brutal-switch-track,
2003
2019
  .cyber-switch:has(input:checked) .cyber-switch-track,
2004
2020
  .y2k-switch:has(input:checked) .y2k-switch-track,
2005
- .rg-switch:has(input:checked) .rg-switch-track {
2021
+ .rg-switch:has(input:checked) .rg-switch-track, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-switch:has(input:checked) .ui-switch-track {
2006
2022
  background: var(--usk-native-track-fill);
2007
2023
  }
2008
2024
 
@@ -2016,7 +2032,7 @@
2016
2032
  .brutal-switch:has(input:checked) .brutal-switch-thumb,
2017
2033
  .cyber-switch:has(input:checked) .cyber-switch-thumb,
2018
2034
  .y2k-switch:has(input:checked) .y2k-switch-thumb,
2019
- .rg-switch:has(input:checked) .rg-switch-thumb {
2035
+ .rg-switch:has(input:checked) .rg-switch-thumb, :where([data-ui="minimal-saas"], [data-ui="bento"], [data-ui="maximalist"], [data-ui="bauhaus"], [data-ui="tactile"], [data-ui="neumorphism"], [data-ui="retrofuturism"], [data-ui="brutalism"], [data-ui="cyberpunk"], [data-ui="y2k"], [data-ui="retro-glass"]) .ui-switch:has(input:checked) .ui-switch-thumb {
2020
2036
  transform: translateX(1.25rem);
2021
2037
  }
2022
2038
 
@@ -2214,7 +2230,7 @@
2214
2230
  background-size: var(--saas-theme-bg-size);
2215
2231
  }
2216
2232
 
2217
- .saas-title, .saas-heading, .saas-kicker, .saas-button, .saas-badge, .saas-nav-link {
2233
+ .saas-title, .saas-heading, .saas-kicker, .saas-button, .saas-badge, .saas-nav-link, :where([data-ui="minimal-saas"]) .ui-button, :where([data-ui="minimal-saas"]) .ui-badge, :where([data-ui="minimal-saas"]) .ui-nav-link {
2218
2234
  font-family: var(--saas-font-heading);
2219
2235
  }
2220
2236
 
@@ -2260,7 +2276,7 @@
2260
2276
  height: 1px;
2261
2277
  }
2262
2278
 
2263
- .saas-surface, .saas-card, .saas-panel, .saas-toolbar, .saas-table-wrap {
2279
+ .saas-surface, .saas-card, .saas-panel, .saas-toolbar, .saas-table-wrap, :where([data-ui="minimal-saas"]) .ui-card, :where([data-ui="minimal-saas"]) .ui-toolbar, :where([data-ui="minimal-saas"]) .ui-table-wrap {
2264
2280
  background: linear-gradient(180deg,#ffffff0d,#fff0),var(--saas-surface);
2265
2281
  color: var(--saas-text);
2266
2282
  border: 1px solid var(--saas-border);
@@ -2270,11 +2286,11 @@
2270
2286
  position: relative;
2271
2287
  }
2272
2288
 
2273
- .saas-card, .saas-panel {
2289
+ .saas-card, .saas-panel, :where([data-ui="minimal-saas"]) .ui-card {
2274
2290
  padding: var(--saas-space-6);
2275
2291
  }
2276
2292
 
2277
- .saas-toolbar {
2293
+ .saas-toolbar, :where([data-ui="minimal-saas"]) .ui-toolbar {
2278
2294
  justify-content: space-between;
2279
2295
  align-items: center;
2280
2296
  gap: var(--saas-space-4);
@@ -2307,7 +2323,7 @@
2307
2323
  transform: translateY(-2px);
2308
2324
  }
2309
2325
 
2310
- .saas-button, .saas-icon-button {
2326
+ .saas-button, .saas-icon-button, :where([data-ui="minimal-saas"]) .ui-button, :where([data-ui="minimal-saas"]) .ui-icon-button {
2311
2327
  appearance: none;
2312
2328
  justify-content: center;
2313
2329
  align-items: center;
@@ -2331,87 +2347,87 @@
2331
2347
  display: inline-flex;
2332
2348
  }
2333
2349
 
2334
- .saas-button:hover, .saas-icon-button:hover {
2350
+ .saas-button:hover, .saas-icon-button:hover, :where([data-ui="minimal-saas"]) .ui-button:hover, :where([data-ui="minimal-saas"]) .ui-icon-button:hover {
2335
2351
  border-color: var(--saas-primary);
2336
2352
  transform: translateY(-1px);
2337
2353
  }
2338
2354
 
2339
- .saas-button:active, .saas-icon-button:active, .saas-button[aria-pressed="true"], .saas-icon-button[aria-pressed="true"], .saas-button.is-active, .saas-icon-button.is-active {
2355
+ .saas-button:active, .saas-icon-button:active, .saas-button[aria-pressed="true"], .saas-icon-button[aria-pressed="true"], .saas-button.is-active, .saas-icon-button.is-active, :where([data-ui="minimal-saas"]) .ui-button:active, :where([data-ui="minimal-saas"]) .ui-icon-button:active, :where([data-ui="minimal-saas"]) .ui-button[aria-pressed="true"], :where([data-ui="minimal-saas"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="minimal-saas"]) .ui-button.is-active, :where([data-ui="minimal-saas"]) .ui-icon-button.is-active {
2340
2356
  transform: translateY(1px);
2341
2357
  box-shadow: inset 0 3px 10px #0000002e;
2342
2358
  }
2343
2359
 
2344
- .saas-button-primary {
2360
+ .saas-button-primary, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="primary"]) {
2345
2361
  background: var(--saas-primary);
2346
2362
  color: var(--saas-on-primary);
2347
2363
  border-color: var(--saas-primary);
2348
2364
  }
2349
2365
 
2350
- .saas-button-primary:hover {
2366
+ .saas-button-primary:hover, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="primary"]):hover {
2351
2367
  background: var(--saas-primary-hover);
2352
2368
  border-color: var(--saas-primary-hover);
2353
2369
  }
2354
2370
 
2355
- .saas-button-secondary {
2371
+ .saas-button-secondary, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="secondary"]) {
2356
2372
  background: var(--saas-secondary);
2357
2373
  color: var(--saas-on-secondary);
2358
2374
  border-color: var(--saas-secondary);
2359
2375
  }
2360
2376
 
2361
- .saas-button-secondary:hover {
2377
+ .saas-button-secondary:hover, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="secondary"]):hover {
2362
2378
  background: var(--saas-secondary-hover);
2363
2379
  border-color: var(--saas-secondary-hover);
2364
2380
  }
2365
2381
 
2366
- .saas-button-danger {
2382
+ .saas-button-danger, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="danger"]) {
2367
2383
  background: var(--saas-danger);
2368
2384
  color: var(--saas-on-danger);
2369
2385
  border-color: var(--saas-danger);
2370
2386
  }
2371
2387
 
2372
- .saas-button-ghost {
2388
+ .saas-button-ghost, :where([data-ui="minimal-saas"]) .ui-button:where([data-ui-variant="ghost"]) {
2373
2389
  color: var(--saas-text);
2374
2390
  box-shadow: none;
2375
2391
  background: none;
2376
2392
  }
2377
2393
 
2378
- .saas-icon-button {
2394
+ .saas-icon-button, :where([data-ui="minimal-saas"]) .ui-icon-button {
2379
2395
  border-radius: var(--saas-radius-pill);
2380
2396
  width: 2.75rem;
2381
2397
  padding: 0;
2382
2398
  }
2383
2399
 
2384
- .saas-button:disabled, .saas-icon-button:disabled, .saas-disabled {
2400
+ .saas-button:disabled, .saas-icon-button:disabled, .saas-disabled, :where([data-ui="minimal-saas"]) .ui-button:disabled, :where([data-ui="minimal-saas"]) .ui-icon-button:disabled {
2385
2401
  opacity: .55;
2386
2402
  cursor: not-allowed;
2387
2403
  transform: none;
2388
2404
  }
2389
2405
 
2390
- .saas-card, .saas-panel {
2406
+ .saas-card, .saas-panel, :where([data-ui="minimal-saas"]) .ui-card {
2391
2407
  background: var(--saas-card-bg);
2392
2408
  }
2393
2409
 
2394
- .saas-toolbar, .saas-table-wrap, .saas-button:not(.saas-button-primary):not(.saas-button-secondary):not(.saas-button-danger):not(.saas-button-ghost), .saas-icon-button {
2410
+ .saas-toolbar, .saas-table-wrap, .saas-button:not(.saas-button-primary):not(.saas-button-secondary):not(.saas-button-danger):not(.saas-button-ghost), .saas-icon-button, :where([data-ui="minimal-saas"]) .ui-toolbar, :where([data-ui="minimal-saas"]) .ui-table-wrap, :where([data-ui="minimal-saas"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="minimal-saas"]) .ui-icon-button {
2395
2411
  background: var(--saas-control-bg);
2396
2412
  }
2397
2413
 
2398
- .saas-button, .saas-icon-button, .saas-badge, .saas-nav-link {
2414
+ .saas-button, .saas-icon-button, .saas-badge, .saas-nav-link, :where([data-ui="minimal-saas"]) .ui-button, :where([data-ui="minimal-saas"]) .ui-icon-button, :where([data-ui="minimal-saas"]) .ui-badge, :where([data-ui="minimal-saas"]) .ui-nav-link {
2399
2415
  font-family: var(--saas-font-control);
2400
2416
  }
2401
2417
 
2402
- .saas-field {
2418
+ .saas-field, :where([data-ui="minimal-saas"]) .ui-field {
2403
2419
  gap: var(--saas-space-2);
2404
2420
  flex-direction: column;
2405
2421
  display: flex;
2406
2422
  }
2407
2423
 
2408
- .saas-label {
2424
+ .saas-label, :where([data-ui="minimal-saas"]) .ui-label {
2409
2425
  color: var(--saas-text);
2410
2426
  font-size: .925rem;
2411
2427
  font-weight: 800;
2412
2428
  }
2413
2429
 
2414
- .saas-input, .saas-textarea, .saas-select {
2430
+ .saas-input, .saas-textarea, .saas-select, :where([data-ui="minimal-saas"]) .ui-input, :where([data-ui="minimal-saas"]) .ui-textarea, :where([data-ui="minimal-saas"]) .ui-select {
2415
2431
  background: var(--saas-surface-soft);
2416
2432
  width: 100%;
2417
2433
  min-height: 2.875rem;
@@ -2424,32 +2440,32 @@
2424
2440
  padding: .75rem 1rem;
2425
2441
  }
2426
2442
 
2427
- .saas-textarea {
2443
+ .saas-textarea, :where([data-ui="minimal-saas"]) .ui-textarea {
2428
2444
  resize: vertical;
2429
2445
  min-height: 8rem;
2430
2446
  }
2431
2447
 
2432
- .saas-input::placeholder, .saas-textarea::placeholder {
2448
+ .saas-input::placeholder, .saas-textarea::placeholder, :where([data-ui="minimal-saas"]) .ui-input::placeholder, :where([data-ui="minimal-saas"]) .ui-textarea::placeholder {
2433
2449
  color: var(--saas-text-muted);
2434
2450
  opacity: .82;
2435
2451
  }
2436
2452
 
2437
- .saas-input:hover, .saas-textarea:hover, .saas-select:hover {
2453
+ .saas-input:hover, .saas-textarea:hover, .saas-select:hover, :where([data-ui="minimal-saas"]) .ui-input:hover, :where([data-ui="minimal-saas"]) .ui-textarea:hover, :where([data-ui="minimal-saas"]) .ui-select:hover {
2438
2454
  border-color: rgb(var(--saas-primary-rgb)/.58);
2439
2455
  }
2440
2456
 
2441
- .saas-input:focus, .saas-textarea:focus, .saas-select:focus {
2457
+ .saas-input:focus, .saas-textarea:focus, .saas-select:focus, :where([data-ui="minimal-saas"]) .ui-input:focus, :where([data-ui="minimal-saas"]) .ui-textarea:focus, :where([data-ui="minimal-saas"]) .ui-select:focus {
2442
2458
  border-color: var(--saas-focus);
2443
2459
  box-shadow: var(--saas-focus-ring);
2444
2460
  }
2445
2461
 
2446
- .saas-help-text {
2462
+ .saas-help-text, :where([data-ui="minimal-saas"]) .ui-help-text {
2447
2463
  color: var(--saas-text-muted);
2448
2464
  font-size: .875rem;
2449
2465
  line-height: 1.45;
2450
2466
  }
2451
2467
 
2452
- .saas-check, .saas-radio {
2468
+ .saas-check, .saas-radio, :where([data-ui="minimal-saas"]) .ui-check, :where([data-ui="minimal-saas"]) .ui-radio {
2453
2469
  align-items: center;
2454
2470
  gap: var(--saas-space-2);
2455
2471
  color: var(--saas-text);
@@ -2457,13 +2473,13 @@
2457
2473
  display: inline-flex;
2458
2474
  }
2459
2475
 
2460
- .saas-check input, .saas-radio input {
2476
+ .saas-check input, .saas-radio input, :where([data-ui="minimal-saas"]) .ui-check input, :where([data-ui="minimal-saas"]) .ui-radio input {
2461
2477
  opacity: 0;
2462
2478
  pointer-events: none;
2463
2479
  position: absolute;
2464
2480
  }
2465
2481
 
2466
- .saas-check-control, .saas-radio-control {
2482
+ .saas-check-control, .saas-radio-control, :where([data-ui="minimal-saas"]) .ui-check-control, :where([data-ui="minimal-saas"]) .ui-radio-control {
2467
2483
  background: var(--saas-surface-soft);
2468
2484
  border: 1px solid var(--saas-border);
2469
2485
  width: 1.35rem;
@@ -2473,28 +2489,28 @@
2473
2489
  display: inline-grid;
2474
2490
  }
2475
2491
 
2476
- .saas-check-control {
2492
+ .saas-check-control, :where([data-ui="minimal-saas"]) .ui-check-control {
2477
2493
  border-radius: var(--saas-radius-xs);
2478
2494
  }
2479
2495
 
2480
- .saas-radio-control {
2496
+ .saas-radio-control, :where([data-ui="minimal-saas"]) .ui-radio-control {
2481
2497
  border-radius: 50%;
2482
2498
  }
2483
2499
 
2484
- .saas-check input:checked + .saas-check-control, .saas-radio input:checked + .saas-radio-control {
2500
+ .saas-check input:checked + .saas-check-control, .saas-radio input:checked + .saas-radio-control, :where([data-ui="minimal-saas"]) .ui-check input:checked+.ui-check-control, :where([data-ui="minimal-saas"]) .ui-radio input:checked+.ui-radio-control {
2485
2501
  background: var(--saas-primary);
2486
2502
  border-color: var(--saas-primary);
2487
2503
  box-shadow: var(--saas-focus-ring);
2488
2504
  }
2489
2505
 
2490
- .saas-check input:checked + .saas-check-control:after {
2506
+ .saas-check input:checked + .saas-check-control:after, :where([data-ui="minimal-saas"]) .ui-check input:checked+.ui-check-control:after {
2491
2507
  content: "✓";
2492
2508
  color: var(--saas-on-primary);
2493
2509
  font-size: .9rem;
2494
2510
  font-weight: 900;
2495
2511
  }
2496
2512
 
2497
- .saas-radio input:checked + .saas-radio-control:after {
2513
+ .saas-radio input:checked + .saas-radio-control:after, :where([data-ui="minimal-saas"]) .ui-radio input:checked+.ui-radio-control:after {
2498
2514
  content: "";
2499
2515
  background: var(--saas-on-primary);
2500
2516
  border-radius: 50%;
@@ -2502,7 +2518,7 @@
2502
2518
  height: .55rem;
2503
2519
  }
2504
2520
 
2505
- .saas-switch {
2521
+ .saas-switch, :where([data-ui="minimal-saas"]) .ui-switch {
2506
2522
  align-items: center;
2507
2523
  gap: var(--saas-space-3);
2508
2524
  color: var(--saas-text);
@@ -2510,13 +2526,13 @@
2510
2526
  display: inline-flex;
2511
2527
  }
2512
2528
 
2513
- .saas-switch input {
2529
+ .saas-switch input, :where([data-ui="minimal-saas"]) .ui-switch input {
2514
2530
  opacity: 0;
2515
2531
  pointer-events: none;
2516
2532
  position: absolute;
2517
2533
  }
2518
2534
 
2519
- .saas-switch-track {
2535
+ .saas-switch-track, :where([data-ui="minimal-saas"]) .ui-switch-track {
2520
2536
  background: var(--saas-surface-soft);
2521
2537
  border: 1px solid var(--saas-border);
2522
2538
  border-radius: var(--saas-radius-pill);
@@ -2526,7 +2542,7 @@
2526
2542
  position: relative;
2527
2543
  }
2528
2544
 
2529
- .saas-switch-thumb {
2545
+ .saas-switch-thumb, :where([data-ui="minimal-saas"]) .ui-switch-thumb {
2530
2546
  background: var(--saas-surface-strong);
2531
2547
  border: 1px solid var(--saas-border);
2532
2548
  width: 1.34rem;
@@ -2539,17 +2555,17 @@
2539
2555
  left: .22rem;
2540
2556
  }
2541
2557
 
2542
- .saas-switch input:checked + .saas-switch-track {
2558
+ .saas-switch input:checked + .saas-switch-track, :where([data-ui="minimal-saas"]) .ui-switch input:checked+.ui-switch-track {
2543
2559
  background: var(--saas-primary);
2544
2560
  border-color: var(--saas-primary);
2545
2561
  }
2546
2562
 
2547
- .saas-switch input:checked + .saas-switch-track .saas-switch-thumb {
2563
+ .saas-switch input:checked + .saas-switch-track .saas-switch-thumb, :where([data-ui="minimal-saas"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
2548
2564
  background: var(--saas-on-primary);
2549
2565
  left: calc(100% - 1.56rem);
2550
2566
  }
2551
2567
 
2552
- .saas-badge {
2568
+ .saas-badge, :where([data-ui="minimal-saas"]) .ui-badge {
2553
2569
  align-items: center;
2554
2570
  gap: var(--saas-space-1);
2555
2571
  background: var(--saas-surface-soft);
@@ -2564,37 +2580,37 @@
2564
2580
  display: inline-flex;
2565
2581
  }
2566
2582
 
2567
- .saas-badge-primary {
2583
+ .saas-badge-primary, :where([data-ui="minimal-saas"]) .ui-badge:where([data-ui-variant="primary"]) {
2568
2584
  background: var(--saas-primary);
2569
2585
  color: var(--saas-on-primary);
2570
2586
  border-color: var(--saas-primary);
2571
2587
  }
2572
2588
 
2573
- .saas-badge-secondary {
2589
+ .saas-badge-secondary, :where([data-ui="minimal-saas"]) .ui-badge:where([data-ui-variant="secondary"]) {
2574
2590
  background: var(--saas-secondary);
2575
2591
  color: var(--saas-on-secondary);
2576
2592
  border-color: var(--saas-secondary);
2577
2593
  }
2578
2594
 
2579
- .saas-badge-success {
2595
+ .saas-badge-success, :where([data-ui="minimal-saas"]) .ui-badge:where([data-ui-variant="success"]) {
2580
2596
  background: var(--saas-success);
2581
2597
  color: var(--saas-on-success);
2582
2598
  border-color: var(--saas-success);
2583
2599
  }
2584
2600
 
2585
- .saas-badge-warning {
2601
+ .saas-badge-warning, :where([data-ui="minimal-saas"]) .ui-badge:where([data-ui-variant="warning"]) {
2586
2602
  background: var(--saas-warning);
2587
2603
  color: var(--saas-on-warning);
2588
2604
  border-color: var(--saas-warning);
2589
2605
  }
2590
2606
 
2591
- .saas-badge-danger {
2607
+ .saas-badge-danger, :where([data-ui="minimal-saas"]) .ui-badge:where([data-ui-variant="danger"]) {
2592
2608
  background: var(--saas-danger);
2593
2609
  color: var(--saas-on-danger);
2594
2610
  border-color: var(--saas-danger);
2595
2611
  }
2596
2612
 
2597
- .saas-nav {
2613
+ .saas-nav, :where([data-ui="minimal-saas"]) .ui-nav {
2598
2614
  align-items: center;
2599
2615
  gap: var(--saas-space-2);
2600
2616
  padding: var(--saas-space-2);
@@ -2606,7 +2622,7 @@
2606
2622
  display: flex;
2607
2623
  }
2608
2624
 
2609
- .saas-nav-link {
2625
+ .saas-nav-link, :where([data-ui="minimal-saas"]) .ui-nav-link {
2610
2626
  min-height: 2.5rem;
2611
2627
  color: var(--saas-text-muted);
2612
2628
  border-radius: var(--saas-radius-pill);
@@ -2619,12 +2635,12 @@
2619
2635
  display: inline-flex;
2620
2636
  }
2621
2637
 
2622
- .saas-nav-link:hover {
2638
+ .saas-nav-link:hover, :where([data-ui="minimal-saas"]) .ui-nav-link:hover {
2623
2639
  color: var(--saas-text);
2624
2640
  background: var(--saas-surface-soft);
2625
2641
  }
2626
2642
 
2627
- .saas-nav-link[aria-current="page"], .saas-nav-link.is-active {
2643
+ .saas-nav-link[aria-current="page"], .saas-nav-link.is-active, :where([data-ui="minimal-saas"]) .ui-nav-link[aria-current="page"], :where([data-ui="minimal-saas"]) .ui-nav-link.is-active {
2628
2644
  color: var(--saas-on-primary);
2629
2645
  background: var(--saas-primary);
2630
2646
  }
@@ -2655,7 +2671,7 @@
2655
2671
  transform: rotate(45deg);
2656
2672
  }
2657
2673
 
2658
- .saas-progress {
2674
+ .saas-progress, :where([data-ui="minimal-saas"]) .ui-progress {
2659
2675
  background: var(--saas-surface-soft);
2660
2676
  border: 1px solid var(--saas-border);
2661
2677
  border-radius: var(--saas-radius-pill);
@@ -2664,14 +2680,14 @@
2664
2680
  overflow: hidden;
2665
2681
  }
2666
2682
 
2667
- .saas-progress-bar {
2683
+ .saas-progress-bar, :where([data-ui="minimal-saas"]) .ui-progress-bar {
2668
2684
  height: 100%;
2669
2685
  width: var(--saas-progress-value, 50%);
2670
2686
  background: linear-gradient(90deg,var(--saas-primary),var(--saas-accent));
2671
2687
  border-radius: inherit;
2672
2688
  }
2673
2689
 
2674
- .saas-alert {
2690
+ .saas-alert, :where([data-ui="minimal-saas"]) .ui-alert {
2675
2691
  gap: var(--saas-space-2);
2676
2692
  padding: var(--saas-space-4);
2677
2693
  background: var(--saas-surface);
@@ -2682,45 +2698,45 @@
2682
2698
  display: grid;
2683
2699
  }
2684
2700
 
2685
- .saas-alert-success {
2701
+ .saas-alert-success, :where([data-ui="minimal-saas"]) .ui-alert:where([data-ui-variant="success"]) {
2686
2702
  border-left-color: var(--saas-success);
2687
2703
  }
2688
2704
 
2689
- .saas-alert-warning {
2705
+ .saas-alert-warning, :where([data-ui="minimal-saas"]) .ui-alert:where([data-ui-variant="warning"]) {
2690
2706
  border-left-color: var(--saas-warning);
2691
2707
  }
2692
2708
 
2693
- .saas-alert-danger {
2709
+ .saas-alert-danger, :where([data-ui="minimal-saas"]) .ui-alert:where([data-ui-variant="danger"]) {
2694
2710
  border-left-color: var(--saas-danger);
2695
2711
  }
2696
2712
 
2697
- .saas-alert-title {
2713
+ .saas-alert-title, :where([data-ui="minimal-saas"]) .ui-alert-title {
2698
2714
  margin: 0;
2699
2715
  font-weight: 900;
2700
2716
  }
2701
2717
 
2702
- .saas-alert-body {
2718
+ .saas-alert-body, :where([data-ui="minimal-saas"]) .ui-alert-body {
2703
2719
  color: var(--saas-text-muted);
2704
2720
  margin: 0;
2705
2721
  line-height: 1.55;
2706
2722
  }
2707
2723
 
2708
- .saas-table-wrap {
2724
+ .saas-table-wrap, :where([data-ui="minimal-saas"]) .ui-table-wrap {
2709
2725
  overflow: auto;
2710
2726
  }
2711
2727
 
2712
- .saas-table {
2728
+ .saas-table, :where([data-ui="minimal-saas"]) .ui-table {
2713
2729
  border-collapse: collapse;
2714
2730
  width: 100%;
2715
2731
  }
2716
2732
 
2717
- .saas-table th, .saas-table td {
2733
+ .saas-table th, .saas-table td, :where([data-ui="minimal-saas"]) .ui-table th, :where([data-ui="minimal-saas"]) .ui-table td {
2718
2734
  text-align: left;
2719
2735
  border-bottom: 1px solid var(--saas-border);
2720
2736
  padding: .95rem 1rem;
2721
2737
  }
2722
2738
 
2723
- .saas-table th {
2739
+ .saas-table th, :where([data-ui="minimal-saas"]) .ui-table th {
2724
2740
  color: var(--saas-text);
2725
2741
  text-transform: uppercase;
2726
2742
  letter-spacing: .08em;
@@ -2729,11 +2745,11 @@
2729
2745
  font-weight: 900;
2730
2746
  }
2731
2747
 
2732
- .saas-table td {
2748
+ .saas-table td, :where([data-ui="minimal-saas"]) .ui-table td {
2733
2749
  color: var(--saas-text-muted);
2734
2750
  }
2735
2751
 
2736
- .saas-table tr:hover td {
2752
+ .saas-table tr:hover td, :where([data-ui="minimal-saas"]) .ui-table tr:hover td {
2737
2753
  background: rgb(var(--saas-primary-rgb)/.045);
2738
2754
  }
2739
2755
 
@@ -2879,12 +2895,12 @@
2879
2895
  inline-size: 3rem;
2880
2896
  }
2881
2897
 
2882
- .saas-button[aria-busy="true"], .saas-icon-button[aria-busy="true"], [data-ui="minimal-saas"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
2898
+ .saas-button[aria-busy="true"], .saas-icon-button[aria-busy="true"], [data-ui="minimal-saas"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="minimal-saas"]) .ui-button[aria-busy="true"], :where([data-ui="minimal-saas"]) .ui-icon-button[aria-busy="true"] {
2883
2899
  cursor: progress;
2884
2900
  gap: .55rem;
2885
2901
  }
2886
2902
 
2887
- .saas-button[aria-busy="true"]:after, .saas-icon-button[aria-busy="true"]:after, [data-ui="minimal-saas"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
2903
+ .saas-button[aria-busy="true"]:after, .saas-icon-button[aria-busy="true"]:after, [data-ui="minimal-saas"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="minimal-saas"]) .ui-button[aria-busy="true"]:after, :where([data-ui="minimal-saas"]) .ui-icon-button[aria-busy="true"]:after {
2888
2904
  content: "";
2889
2905
  border: .16em solid rgb(var(--saas-primary-text-rgb)/.42);
2890
2906
  border-block-start-color: currentColor;
@@ -3110,7 +3126,7 @@
3110
3126
  background-size: var(--bento-theme-bg-size);
3111
3127
  }
3112
3128
 
3113
- .bento-title, .bento-heading, .bento-kicker, .bento-button, .bento-badge, .bento-nav-link {
3129
+ .bento-title, .bento-heading, .bento-kicker, .bento-button, .bento-badge, .bento-nav-link, :where([data-ui="bento"]) .ui-button, :where([data-ui="bento"]) .ui-badge, :where([data-ui="bento"]) .ui-nav-link {
3114
3130
  font-family: var(--bento-font-heading);
3115
3131
  }
3116
3132
 
@@ -3156,7 +3172,7 @@
3156
3172
  height: 1px;
3157
3173
  }
3158
3174
 
3159
- .bento-surface, .bento-card, .bento-panel, .bento-toolbar, .bento-table-wrap {
3175
+ .bento-surface, .bento-card, .bento-panel, .bento-toolbar, .bento-table-wrap, :where([data-ui="bento"]) .ui-card, :where([data-ui="bento"]) .ui-toolbar, :where([data-ui="bento"]) .ui-table-wrap {
3160
3176
  background: linear-gradient(135deg,rgb(var(--bento-primary-rgb)/.08),transparent 36%),linear-gradient(180deg,#ffffff14,#fff0),var(--bento-surface);
3161
3177
  color: var(--bento-text);
3162
3178
  border: 1px solid var(--bento-border);
@@ -3166,11 +3182,11 @@
3166
3182
  position: relative;
3167
3183
  }
3168
3184
 
3169
- .bento-card, .bento-panel {
3185
+ .bento-card, .bento-panel, :where([data-ui="bento"]) .ui-card {
3170
3186
  padding: var(--bento-space-6);
3171
3187
  }
3172
3188
 
3173
- .bento-toolbar {
3189
+ .bento-toolbar, :where([data-ui="bento"]) .ui-toolbar {
3174
3190
  justify-content: space-between;
3175
3191
  align-items: center;
3176
3192
  gap: var(--bento-space-4);
@@ -3203,7 +3219,7 @@
3203
3219
  transform: translateY(-3px) scale(1.005);
3204
3220
  }
3205
3221
 
3206
- .bento-button, .bento-icon-button {
3222
+ .bento-button, .bento-icon-button, :where([data-ui="bento"]) .ui-button, :where([data-ui="bento"]) .ui-icon-button {
3207
3223
  appearance: none;
3208
3224
  justify-content: center;
3209
3225
  align-items: center;
@@ -3227,87 +3243,87 @@
3227
3243
  display: inline-flex;
3228
3244
  }
3229
3245
 
3230
- .bento-button:hover, .bento-icon-button:hover {
3246
+ .bento-button:hover, .bento-icon-button:hover, :where([data-ui="bento"]) .ui-button:hover, :where([data-ui="bento"]) .ui-icon-button:hover {
3231
3247
  border-color: var(--bento-primary);
3232
3248
  transform: translateY(-1px);
3233
3249
  }
3234
3250
 
3235
- .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 {
3251
+ .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, :where([data-ui="bento"]) .ui-button:active, :where([data-ui="bento"]) .ui-icon-button:active, :where([data-ui="bento"]) .ui-button[aria-pressed="true"], :where([data-ui="bento"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="bento"]) .ui-button.is-active, :where([data-ui="bento"]) .ui-icon-button.is-active {
3236
3252
  transform: translateY(1px);
3237
3253
  box-shadow: inset 0 3px 10px #0000002e;
3238
3254
  }
3239
3255
 
3240
- .bento-button-primary {
3256
+ .bento-button-primary, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="primary"]) {
3241
3257
  background: var(--bento-primary);
3242
3258
  color: var(--bento-on-primary);
3243
3259
  border-color: var(--bento-primary);
3244
3260
  }
3245
3261
 
3246
- .bento-button-primary:hover {
3262
+ .bento-button-primary:hover, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="primary"]):hover {
3247
3263
  background: var(--bento-primary-hover);
3248
3264
  border-color: var(--bento-primary-hover);
3249
3265
  }
3250
3266
 
3251
- .bento-button-secondary {
3267
+ .bento-button-secondary, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="secondary"]) {
3252
3268
  background: var(--bento-secondary);
3253
3269
  color: var(--bento-on-secondary);
3254
3270
  border-color: var(--bento-secondary);
3255
3271
  }
3256
3272
 
3257
- .bento-button-secondary:hover {
3273
+ .bento-button-secondary:hover, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="secondary"]):hover {
3258
3274
  background: var(--bento-secondary-hover);
3259
3275
  border-color: var(--bento-secondary-hover);
3260
3276
  }
3261
3277
 
3262
- .bento-button-danger {
3278
+ .bento-button-danger, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="danger"]) {
3263
3279
  background: var(--bento-danger);
3264
3280
  color: var(--bento-on-danger);
3265
3281
  border-color: var(--bento-danger);
3266
3282
  }
3267
3283
 
3268
- .bento-button-ghost {
3284
+ .bento-button-ghost, :where([data-ui="bento"]) .ui-button:where([data-ui-variant="ghost"]) {
3269
3285
  color: var(--bento-text);
3270
3286
  box-shadow: none;
3271
3287
  background: none;
3272
3288
  }
3273
3289
 
3274
- .bento-icon-button {
3290
+ .bento-icon-button, :where([data-ui="bento"]) .ui-icon-button {
3275
3291
  border-radius: var(--bento-radius-pill);
3276
3292
  width: 2.75rem;
3277
3293
  padding: 0;
3278
3294
  }
3279
3295
 
3280
- .bento-button:disabled, .bento-icon-button:disabled, .bento-disabled {
3296
+ .bento-button:disabled, .bento-icon-button:disabled, .bento-disabled, :where([data-ui="bento"]) .ui-button:disabled, :where([data-ui="bento"]) .ui-icon-button:disabled {
3281
3297
  opacity: .55;
3282
3298
  cursor: not-allowed;
3283
3299
  transform: none;
3284
3300
  }
3285
3301
 
3286
- .bento-card, .bento-panel {
3302
+ .bento-card, .bento-panel, :where([data-ui="bento"]) .ui-card {
3287
3303
  background: var(--bento-card-bg);
3288
3304
  }
3289
3305
 
3290
- .bento-toolbar, .bento-table-wrap, .bento-button:not(.bento-button-primary):not(.bento-button-secondary):not(.bento-button-danger):not(.bento-button-ghost), .bento-icon-button {
3306
+ .bento-toolbar, .bento-table-wrap, .bento-button:not(.bento-button-primary):not(.bento-button-secondary):not(.bento-button-danger):not(.bento-button-ghost), .bento-icon-button, :where([data-ui="bento"]) .ui-toolbar, :where([data-ui="bento"]) .ui-table-wrap, :where([data-ui="bento"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="bento"]) .ui-icon-button {
3291
3307
  background: var(--bento-control-bg);
3292
3308
  }
3293
3309
 
3294
- .bento-button, .bento-icon-button, .bento-badge, .bento-nav-link {
3310
+ .bento-button, .bento-icon-button, .bento-badge, .bento-nav-link, :where([data-ui="bento"]) .ui-button, :where([data-ui="bento"]) .ui-icon-button, :where([data-ui="bento"]) .ui-badge, :where([data-ui="bento"]) .ui-nav-link {
3295
3311
  font-family: var(--bento-font-control);
3296
3312
  }
3297
3313
 
3298
- .bento-field {
3314
+ .bento-field, :where([data-ui="bento"]) .ui-field {
3299
3315
  gap: var(--bento-space-2);
3300
3316
  flex-direction: column;
3301
3317
  display: flex;
3302
3318
  }
3303
3319
 
3304
- .bento-label {
3320
+ .bento-label, :where([data-ui="bento"]) .ui-label {
3305
3321
  color: var(--bento-text);
3306
3322
  font-size: .925rem;
3307
3323
  font-weight: 800;
3308
3324
  }
3309
3325
 
3310
- .bento-input, .bento-textarea, .bento-select {
3326
+ .bento-input, .bento-textarea, .bento-select, :where([data-ui="bento"]) .ui-input, :where([data-ui="bento"]) .ui-textarea, :where([data-ui="bento"]) .ui-select {
3311
3327
  background: var(--bento-surface-soft);
3312
3328
  width: 100%;
3313
3329
  min-height: 2.875rem;
@@ -3320,32 +3336,32 @@
3320
3336
  padding: .75rem 1rem;
3321
3337
  }
3322
3338
 
3323
- .bento-textarea {
3339
+ .bento-textarea, :where([data-ui="bento"]) .ui-textarea {
3324
3340
  resize: vertical;
3325
3341
  min-height: 8rem;
3326
3342
  }
3327
3343
 
3328
- .bento-input::placeholder, .bento-textarea::placeholder {
3344
+ .bento-input::placeholder, .bento-textarea::placeholder, :where([data-ui="bento"]) .ui-input::placeholder, :where([data-ui="bento"]) .ui-textarea::placeholder {
3329
3345
  color: var(--bento-text-muted);
3330
3346
  opacity: .82;
3331
3347
  }
3332
3348
 
3333
- .bento-input:hover, .bento-textarea:hover, .bento-select:hover {
3349
+ .bento-input:hover, .bento-textarea:hover, .bento-select:hover, :where([data-ui="bento"]) .ui-input:hover, :where([data-ui="bento"]) .ui-textarea:hover, :where([data-ui="bento"]) .ui-select:hover {
3334
3350
  border-color: rgb(var(--bento-primary-rgb)/.58);
3335
3351
  }
3336
3352
 
3337
- .bento-input:focus, .bento-textarea:focus, .bento-select:focus {
3353
+ .bento-input:focus, .bento-textarea:focus, .bento-select:focus, :where([data-ui="bento"]) .ui-input:focus, :where([data-ui="bento"]) .ui-textarea:focus, :where([data-ui="bento"]) .ui-select:focus {
3338
3354
  border-color: var(--bento-focus);
3339
3355
  box-shadow: var(--bento-focus-ring);
3340
3356
  }
3341
3357
 
3342
- .bento-help-text {
3358
+ .bento-help-text, :where([data-ui="bento"]) .ui-help-text {
3343
3359
  color: var(--bento-text-muted);
3344
3360
  font-size: .875rem;
3345
3361
  line-height: 1.45;
3346
3362
  }
3347
3363
 
3348
- .bento-check, .bento-radio {
3364
+ .bento-check, .bento-radio, :where([data-ui="bento"]) .ui-check, :where([data-ui="bento"]) .ui-radio {
3349
3365
  align-items: center;
3350
3366
  gap: var(--bento-space-2);
3351
3367
  color: var(--bento-text);
@@ -3353,13 +3369,13 @@
3353
3369
  display: inline-flex;
3354
3370
  }
3355
3371
 
3356
- .bento-check input, .bento-radio input {
3372
+ .bento-check input, .bento-radio input, :where([data-ui="bento"]) .ui-check input, :where([data-ui="bento"]) .ui-radio input {
3357
3373
  opacity: 0;
3358
3374
  pointer-events: none;
3359
3375
  position: absolute;
3360
3376
  }
3361
3377
 
3362
- .bento-check-control, .bento-radio-control {
3378
+ .bento-check-control, .bento-radio-control, :where([data-ui="bento"]) .ui-check-control, :where([data-ui="bento"]) .ui-radio-control {
3363
3379
  background: var(--bento-surface-soft);
3364
3380
  border: 1px solid var(--bento-border);
3365
3381
  width: 1.35rem;
@@ -3369,28 +3385,28 @@
3369
3385
  display: inline-grid;
3370
3386
  }
3371
3387
 
3372
- .bento-check-control {
3388
+ .bento-check-control, :where([data-ui="bento"]) .ui-check-control {
3373
3389
  border-radius: var(--bento-radius-xs);
3374
3390
  }
3375
3391
 
3376
- .bento-radio-control {
3392
+ .bento-radio-control, :where([data-ui="bento"]) .ui-radio-control {
3377
3393
  border-radius: 50%;
3378
3394
  }
3379
3395
 
3380
- .bento-check input:checked + .bento-check-control, .bento-radio input:checked + .bento-radio-control {
3396
+ .bento-check input:checked + .bento-check-control, .bento-radio input:checked + .bento-radio-control, :where([data-ui="bento"]) .ui-check input:checked+.ui-check-control, :where([data-ui="bento"]) .ui-radio input:checked+.ui-radio-control {
3381
3397
  background: var(--bento-primary);
3382
3398
  border-color: var(--bento-primary);
3383
3399
  box-shadow: var(--bento-focus-ring);
3384
3400
  }
3385
3401
 
3386
- .bento-check input:checked + .bento-check-control:after {
3402
+ .bento-check input:checked + .bento-check-control:after, :where([data-ui="bento"]) .ui-check input:checked+.ui-check-control:after {
3387
3403
  content: "✓";
3388
3404
  color: var(--bento-on-primary);
3389
3405
  font-size: .9rem;
3390
3406
  font-weight: 900;
3391
3407
  }
3392
3408
 
3393
- .bento-radio input:checked + .bento-radio-control:after {
3409
+ .bento-radio input:checked + .bento-radio-control:after, :where([data-ui="bento"]) .ui-radio input:checked+.ui-radio-control:after {
3394
3410
  content: "";
3395
3411
  background: var(--bento-on-primary);
3396
3412
  border-radius: 50%;
@@ -3398,7 +3414,7 @@
3398
3414
  height: .55rem;
3399
3415
  }
3400
3416
 
3401
- .bento-switch {
3417
+ .bento-switch, :where([data-ui="bento"]) .ui-switch {
3402
3418
  align-items: center;
3403
3419
  gap: var(--bento-space-3);
3404
3420
  color: var(--bento-text);
@@ -3406,13 +3422,13 @@
3406
3422
  display: inline-flex;
3407
3423
  }
3408
3424
 
3409
- .bento-switch input {
3425
+ .bento-switch input, :where([data-ui="bento"]) .ui-switch input {
3410
3426
  opacity: 0;
3411
3427
  pointer-events: none;
3412
3428
  position: absolute;
3413
3429
  }
3414
3430
 
3415
- .bento-switch-track {
3431
+ .bento-switch-track, :where([data-ui="bento"]) .ui-switch-track {
3416
3432
  background: var(--bento-surface-soft);
3417
3433
  border: 1px solid var(--bento-border);
3418
3434
  border-radius: var(--bento-radius-pill);
@@ -3422,7 +3438,7 @@
3422
3438
  position: relative;
3423
3439
  }
3424
3440
 
3425
- .bento-switch-thumb {
3441
+ .bento-switch-thumb, :where([data-ui="bento"]) .ui-switch-thumb {
3426
3442
  background: var(--bento-surface-strong);
3427
3443
  border: 1px solid var(--bento-border);
3428
3444
  width: 1.34rem;
@@ -3435,17 +3451,17 @@
3435
3451
  left: .22rem;
3436
3452
  }
3437
3453
 
3438
- .bento-switch input:checked + .bento-switch-track {
3454
+ .bento-switch input:checked + .bento-switch-track, :where([data-ui="bento"]) .ui-switch input:checked+.ui-switch-track {
3439
3455
  background: var(--bento-primary);
3440
3456
  border-color: var(--bento-primary);
3441
3457
  }
3442
3458
 
3443
- .bento-switch input:checked + .bento-switch-track .bento-switch-thumb {
3459
+ .bento-switch input:checked + .bento-switch-track .bento-switch-thumb, :where([data-ui="bento"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
3444
3460
  background: var(--bento-on-primary);
3445
3461
  left: calc(100% - 1.56rem);
3446
3462
  }
3447
3463
 
3448
- .bento-badge {
3464
+ .bento-badge, :where([data-ui="bento"]) .ui-badge {
3449
3465
  align-items: center;
3450
3466
  gap: var(--bento-space-1);
3451
3467
  background: var(--bento-surface-soft);
@@ -3460,37 +3476,37 @@
3460
3476
  display: inline-flex;
3461
3477
  }
3462
3478
 
3463
- .bento-badge-primary {
3479
+ .bento-badge-primary, :where([data-ui="bento"]) .ui-badge:where([data-ui-variant="primary"]) {
3464
3480
  background: var(--bento-primary);
3465
3481
  color: var(--bento-on-primary);
3466
3482
  border-color: var(--bento-primary);
3467
3483
  }
3468
3484
 
3469
- .bento-badge-secondary {
3485
+ .bento-badge-secondary, :where([data-ui="bento"]) .ui-badge:where([data-ui-variant="secondary"]) {
3470
3486
  background: var(--bento-secondary);
3471
3487
  color: var(--bento-on-secondary);
3472
3488
  border-color: var(--bento-secondary);
3473
3489
  }
3474
3490
 
3475
- .bento-badge-success {
3491
+ .bento-badge-success, :where([data-ui="bento"]) .ui-badge:where([data-ui-variant="success"]) {
3476
3492
  background: var(--bento-success);
3477
3493
  color: var(--bento-on-success);
3478
3494
  border-color: var(--bento-success);
3479
3495
  }
3480
3496
 
3481
- .bento-badge-warning {
3497
+ .bento-badge-warning, :where([data-ui="bento"]) .ui-badge:where([data-ui-variant="warning"]) {
3482
3498
  background: var(--bento-warning);
3483
3499
  color: var(--bento-on-warning);
3484
3500
  border-color: var(--bento-warning);
3485
3501
  }
3486
3502
 
3487
- .bento-badge-danger {
3503
+ .bento-badge-danger, :where([data-ui="bento"]) .ui-badge:where([data-ui-variant="danger"]) {
3488
3504
  background: var(--bento-danger);
3489
3505
  color: var(--bento-on-danger);
3490
3506
  border-color: var(--bento-danger);
3491
3507
  }
3492
3508
 
3493
- .bento-nav {
3509
+ .bento-nav, :where([data-ui="bento"]) .ui-nav {
3494
3510
  align-items: center;
3495
3511
  gap: var(--bento-space-2);
3496
3512
  padding: var(--bento-space-2);
@@ -3502,7 +3518,7 @@
3502
3518
  display: flex;
3503
3519
  }
3504
3520
 
3505
- .bento-nav-link {
3521
+ .bento-nav-link, :where([data-ui="bento"]) .ui-nav-link {
3506
3522
  min-height: 2.5rem;
3507
3523
  color: var(--bento-text-muted);
3508
3524
  border-radius: var(--bento-radius-pill);
@@ -3515,12 +3531,12 @@
3515
3531
  display: inline-flex;
3516
3532
  }
3517
3533
 
3518
- .bento-nav-link:hover {
3534
+ .bento-nav-link:hover, :where([data-ui="bento"]) .ui-nav-link:hover {
3519
3535
  color: var(--bento-text);
3520
3536
  background: var(--bento-surface-soft);
3521
3537
  }
3522
3538
 
3523
- .bento-nav-link[aria-current="page"], .bento-nav-link.is-active {
3539
+ .bento-nav-link[aria-current="page"], .bento-nav-link.is-active, :where([data-ui="bento"]) .ui-nav-link[aria-current="page"], :where([data-ui="bento"]) .ui-nav-link.is-active {
3524
3540
  color: var(--bento-on-primary);
3525
3541
  background: var(--bento-primary);
3526
3542
  }
@@ -3550,7 +3566,7 @@
3550
3566
  transform: rotate(45deg);
3551
3567
  }
3552
3568
 
3553
- .bento-progress {
3569
+ .bento-progress, :where([data-ui="bento"]) .ui-progress {
3554
3570
  background: var(--bento-surface-soft);
3555
3571
  border: 1px solid var(--bento-border);
3556
3572
  border-radius: var(--bento-radius-pill);
@@ -3559,14 +3575,14 @@
3559
3575
  overflow: hidden;
3560
3576
  }
3561
3577
 
3562
- .bento-progress-bar {
3578
+ .bento-progress-bar, :where([data-ui="bento"]) .ui-progress-bar {
3563
3579
  height: 100%;
3564
3580
  width: var(--bento-progress-value, 50%);
3565
3581
  background: linear-gradient(90deg,var(--bento-primary),var(--bento-accent));
3566
3582
  border-radius: inherit;
3567
3583
  }
3568
3584
 
3569
- .bento-alert {
3585
+ .bento-alert, :where([data-ui="bento"]) .ui-alert {
3570
3586
  gap: var(--bento-space-2);
3571
3587
  padding: var(--bento-space-4);
3572
3588
  background: var(--bento-surface);
@@ -3577,45 +3593,45 @@
3577
3593
  display: grid;
3578
3594
  }
3579
3595
 
3580
- .bento-alert-success {
3596
+ .bento-alert-success, :where([data-ui="bento"]) .ui-alert:where([data-ui-variant="success"]) {
3581
3597
  border-left-color: var(--bento-success);
3582
3598
  }
3583
3599
 
3584
- .bento-alert-warning {
3600
+ .bento-alert-warning, :where([data-ui="bento"]) .ui-alert:where([data-ui-variant="warning"]) {
3585
3601
  border-left-color: var(--bento-warning);
3586
3602
  }
3587
3603
 
3588
- .bento-alert-danger {
3604
+ .bento-alert-danger, :where([data-ui="bento"]) .ui-alert:where([data-ui-variant="danger"]) {
3589
3605
  border-left-color: var(--bento-danger);
3590
3606
  }
3591
3607
 
3592
- .bento-alert-title {
3608
+ .bento-alert-title, :where([data-ui="bento"]) .ui-alert-title {
3593
3609
  margin: 0;
3594
3610
  font-weight: 900;
3595
3611
  }
3596
3612
 
3597
- .bento-alert-body {
3613
+ .bento-alert-body, :where([data-ui="bento"]) .ui-alert-body {
3598
3614
  color: var(--bento-text-muted);
3599
3615
  margin: 0;
3600
3616
  line-height: 1.55;
3601
3617
  }
3602
3618
 
3603
- .bento-table-wrap {
3619
+ .bento-table-wrap, :where([data-ui="bento"]) .ui-table-wrap {
3604
3620
  overflow: auto;
3605
3621
  }
3606
3622
 
3607
- .bento-table {
3623
+ .bento-table, :where([data-ui="bento"]) .ui-table {
3608
3624
  border-collapse: collapse;
3609
3625
  width: 100%;
3610
3626
  }
3611
3627
 
3612
- .bento-table th, .bento-table td {
3628
+ .bento-table th, .bento-table td, :where([data-ui="bento"]) .ui-table th, :where([data-ui="bento"]) .ui-table td {
3613
3629
  text-align: left;
3614
3630
  border-bottom: 1px solid var(--bento-border);
3615
3631
  padding: .95rem 1rem;
3616
3632
  }
3617
3633
 
3618
- .bento-table th {
3634
+ .bento-table th, :where([data-ui="bento"]) .ui-table th {
3619
3635
  color: var(--bento-text);
3620
3636
  text-transform: uppercase;
3621
3637
  letter-spacing: .08em;
@@ -3624,11 +3640,11 @@
3624
3640
  font-weight: 900;
3625
3641
  }
3626
3642
 
3627
- .bento-table td {
3643
+ .bento-table td, :where([data-ui="bento"]) .ui-table td {
3628
3644
  color: var(--bento-text-muted);
3629
3645
  }
3630
3646
 
3631
- .bento-table tr:hover td {
3647
+ .bento-table tr:hover td, :where([data-ui="bento"]) .ui-table tr:hover td {
3632
3648
  background: rgb(var(--bento-primary-rgb)/.045);
3633
3649
  }
3634
3650
 
@@ -3796,12 +3812,12 @@
3796
3812
  inline-size: 3rem;
3797
3813
  }
3798
3814
 
3799
- .bento-button[aria-busy="true"], .bento-icon-button[aria-busy="true"], [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"]) {
3815
+ .bento-button[aria-busy="true"], .bento-icon-button[aria-busy="true"], [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"]), :where([data-ui="bento"]) .ui-button[aria-busy="true"], :where([data-ui="bento"]) .ui-icon-button[aria-busy="true"] {
3800
3816
  cursor: progress;
3801
3817
  gap: .55rem;
3802
3818
  }
3803
3819
 
3804
- .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 {
3820
+ .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, :where([data-ui="bento"]) .ui-button[aria-busy="true"]:after, :where([data-ui="bento"]) .ui-icon-button[aria-busy="true"]:after {
3805
3821
  content: "";
3806
3822
  border: .16em solid rgb(var(--bento-primary-text-rgb)/.42);
3807
3823
  border-block-start-color: currentColor;
@@ -4027,7 +4043,7 @@
4027
4043
  background-size: var(--max-theme-bg-size);
4028
4044
  }
4029
4045
 
4030
- .max-title, .max-heading, .max-kicker, .max-button, .max-badge, .max-nav-link {
4046
+ .max-title, .max-heading, .max-kicker, .max-button, .max-badge, .max-nav-link, :where([data-ui="maximalist"]) .ui-button, :where([data-ui="maximalist"]) .ui-badge, :where([data-ui="maximalist"]) .ui-nav-link {
4031
4047
  font-family: var(--max-font-heading);
4032
4048
  }
4033
4049
 
@@ -4074,7 +4090,7 @@
4074
4090
  height: 3px;
4075
4091
  }
4076
4092
 
4077
- .max-surface, .max-card, .max-panel, .max-toolbar, .max-table-wrap {
4093
+ .max-surface, .max-card, .max-panel, .max-toolbar, .max-table-wrap, :where([data-ui="maximalist"]) .ui-card, :where([data-ui="maximalist"]) .ui-toolbar, :where([data-ui="maximalist"]) .ui-table-wrap {
4078
4094
  background: linear-gradient(135deg,rgb(var(--max-accent-rgb)/.18),transparent 42%),var(--max-surface);
4079
4095
  color: var(--max-text);
4080
4096
  border: 3px solid var(--max-border);
@@ -4084,11 +4100,11 @@
4084
4100
  position: relative;
4085
4101
  }
4086
4102
 
4087
- .max-card, .max-panel {
4103
+ .max-card, .max-panel, :where([data-ui="maximalist"]) .ui-card {
4088
4104
  padding: var(--max-space-6);
4089
4105
  }
4090
4106
 
4091
- .max-toolbar {
4107
+ .max-toolbar, :where([data-ui="maximalist"]) .ui-toolbar {
4092
4108
  justify-content: space-between;
4093
4109
  align-items: center;
4094
4110
  gap: var(--max-space-4);
@@ -4121,7 +4137,7 @@
4121
4137
  transform: translate(-2px, -2px);
4122
4138
  }
4123
4139
 
4124
- .max-button, .max-icon-button {
4140
+ .max-button, .max-icon-button, :where([data-ui="maximalist"]) .ui-button, :where([data-ui="maximalist"]) .ui-icon-button {
4125
4141
  appearance: none;
4126
4142
  justify-content: center;
4127
4143
  align-items: center;
@@ -4145,87 +4161,87 @@
4145
4161
  display: inline-flex;
4146
4162
  }
4147
4163
 
4148
- .max-button:hover, .max-icon-button:hover {
4164
+ .max-button:hover, .max-icon-button:hover, :where([data-ui="maximalist"]) .ui-button:hover, :where([data-ui="maximalist"]) .ui-icon-button:hover {
4149
4165
  border-color: var(--max-primary);
4150
4166
  transform: translateY(-1px);
4151
4167
  }
4152
4168
 
4153
- .max-button:active, .max-icon-button:active, .max-button[aria-pressed="true"], .max-icon-button[aria-pressed="true"], .max-button.is-active, .max-icon-button.is-active {
4169
+ .max-button:active, .max-icon-button:active, .max-button[aria-pressed="true"], .max-icon-button[aria-pressed="true"], .max-button.is-active, .max-icon-button.is-active, :where([data-ui="maximalist"]) .ui-button:active, :where([data-ui="maximalist"]) .ui-icon-button:active, :where([data-ui="maximalist"]) .ui-button[aria-pressed="true"], :where([data-ui="maximalist"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="maximalist"]) .ui-button.is-active, :where([data-ui="maximalist"]) .ui-icon-button.is-active {
4154
4170
  transform: translateY(1px);
4155
4171
  box-shadow: inset 0 3px 10px #0000002e;
4156
4172
  }
4157
4173
 
4158
- .max-button-primary {
4174
+ .max-button-primary, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="primary"]) {
4159
4175
  background: var(--max-primary);
4160
4176
  color: var(--max-on-primary);
4161
4177
  border-color: var(--max-primary);
4162
4178
  }
4163
4179
 
4164
- .max-button-primary:hover {
4180
+ .max-button-primary:hover, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="primary"]):hover {
4165
4181
  background: var(--max-primary-hover);
4166
4182
  border-color: var(--max-primary-hover);
4167
4183
  }
4168
4184
 
4169
- .max-button-secondary {
4185
+ .max-button-secondary, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="secondary"]) {
4170
4186
  background: var(--max-secondary);
4171
4187
  color: var(--max-on-secondary);
4172
4188
  border-color: var(--max-secondary);
4173
4189
  }
4174
4190
 
4175
- .max-button-secondary:hover {
4191
+ .max-button-secondary:hover, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="secondary"]):hover {
4176
4192
  background: var(--max-secondary-hover);
4177
4193
  border-color: var(--max-secondary-hover);
4178
4194
  }
4179
4195
 
4180
- .max-button-danger {
4196
+ .max-button-danger, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="danger"]) {
4181
4197
  background: var(--max-danger);
4182
4198
  color: var(--max-on-danger);
4183
4199
  border-color: var(--max-danger);
4184
4200
  }
4185
4201
 
4186
- .max-button-ghost {
4202
+ .max-button-ghost, :where([data-ui="maximalist"]) .ui-button:where([data-ui-variant="ghost"]) {
4187
4203
  color: var(--max-text);
4188
4204
  box-shadow: none;
4189
4205
  background: none;
4190
4206
  }
4191
4207
 
4192
- .max-icon-button {
4208
+ .max-icon-button, :where([data-ui="maximalist"]) .ui-icon-button {
4193
4209
  border-radius: var(--max-radius-pill);
4194
4210
  width: 2.75rem;
4195
4211
  padding: 0;
4196
4212
  }
4197
4213
 
4198
- .max-button:disabled, .max-icon-button:disabled, .max-disabled {
4214
+ .max-button:disabled, .max-icon-button:disabled, .max-disabled, :where([data-ui="maximalist"]) .ui-button:disabled, :where([data-ui="maximalist"]) .ui-icon-button:disabled {
4199
4215
  opacity: .55;
4200
4216
  cursor: not-allowed;
4201
4217
  transform: none;
4202
4218
  }
4203
4219
 
4204
- .max-card, .max-panel {
4220
+ .max-card, .max-panel, :where([data-ui="maximalist"]) .ui-card {
4205
4221
  background: var(--max-card-bg);
4206
4222
  }
4207
4223
 
4208
- .max-toolbar, .max-table-wrap, .max-button:not(.max-button-primary):not(.max-button-secondary):not(.max-button-danger):not(.max-button-ghost), .max-icon-button {
4224
+ .max-toolbar, .max-table-wrap, .max-button:not(.max-button-primary):not(.max-button-secondary):not(.max-button-danger):not(.max-button-ghost), .max-icon-button, :where([data-ui="maximalist"]) .ui-toolbar, :where([data-ui="maximalist"]) .ui-table-wrap, :where([data-ui="maximalist"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="maximalist"]) .ui-icon-button {
4209
4225
  background: var(--max-control-bg);
4210
4226
  }
4211
4227
 
4212
- .max-button, .max-icon-button, .max-badge, .max-nav-link {
4228
+ .max-button, .max-icon-button, .max-badge, .max-nav-link, :where([data-ui="maximalist"]) .ui-button, :where([data-ui="maximalist"]) .ui-icon-button, :where([data-ui="maximalist"]) .ui-badge, :where([data-ui="maximalist"]) .ui-nav-link {
4213
4229
  font-family: var(--max-font-control);
4214
4230
  }
4215
4231
 
4216
- .max-field {
4232
+ .max-field, :where([data-ui="maximalist"]) .ui-field {
4217
4233
  gap: var(--max-space-2);
4218
4234
  flex-direction: column;
4219
4235
  display: flex;
4220
4236
  }
4221
4237
 
4222
- .max-label {
4238
+ .max-label, :where([data-ui="maximalist"]) .ui-label {
4223
4239
  color: var(--max-text);
4224
4240
  font-size: .925rem;
4225
4241
  font-weight: 800;
4226
4242
  }
4227
4243
 
4228
- .max-input, .max-textarea, .max-select {
4244
+ .max-input, .max-textarea, .max-select, :where([data-ui="maximalist"]) .ui-input, :where([data-ui="maximalist"]) .ui-textarea, :where([data-ui="maximalist"]) .ui-select {
4229
4245
  background: var(--max-surface-soft);
4230
4246
  width: 100%;
4231
4247
  min-height: 2.875rem;
@@ -4238,32 +4254,32 @@
4238
4254
  padding: .75rem 1rem;
4239
4255
  }
4240
4256
 
4241
- .max-textarea {
4257
+ .max-textarea, :where([data-ui="maximalist"]) .ui-textarea {
4242
4258
  resize: vertical;
4243
4259
  min-height: 8rem;
4244
4260
  }
4245
4261
 
4246
- .max-input::placeholder, .max-textarea::placeholder {
4262
+ .max-input::placeholder, .max-textarea::placeholder, :where([data-ui="maximalist"]) .ui-input::placeholder, :where([data-ui="maximalist"]) .ui-textarea::placeholder {
4247
4263
  color: var(--max-text-muted);
4248
4264
  opacity: .82;
4249
4265
  }
4250
4266
 
4251
- .max-input:hover, .max-textarea:hover, .max-select:hover {
4267
+ .max-input:hover, .max-textarea:hover, .max-select:hover, :where([data-ui="maximalist"]) .ui-input:hover, :where([data-ui="maximalist"]) .ui-textarea:hover, :where([data-ui="maximalist"]) .ui-select:hover {
4252
4268
  border-color: rgb(var(--max-primary-rgb)/.58);
4253
4269
  }
4254
4270
 
4255
- .max-input:focus, .max-textarea:focus, .max-select:focus {
4271
+ .max-input:focus, .max-textarea:focus, .max-select:focus, :where([data-ui="maximalist"]) .ui-input:focus, :where([data-ui="maximalist"]) .ui-textarea:focus, :where([data-ui="maximalist"]) .ui-select:focus {
4256
4272
  border-color: var(--max-focus);
4257
4273
  box-shadow: var(--max-focus-ring);
4258
4274
  }
4259
4275
 
4260
- .max-help-text {
4276
+ .max-help-text, :where([data-ui="maximalist"]) .ui-help-text {
4261
4277
  color: var(--max-text-muted);
4262
4278
  font-size: .875rem;
4263
4279
  line-height: 1.45;
4264
4280
  }
4265
4281
 
4266
- .max-check, .max-radio {
4282
+ .max-check, .max-radio, :where([data-ui="maximalist"]) .ui-check, :where([data-ui="maximalist"]) .ui-radio {
4267
4283
  align-items: center;
4268
4284
  gap: var(--max-space-2);
4269
4285
  color: var(--max-text);
@@ -4271,13 +4287,13 @@
4271
4287
  display: inline-flex;
4272
4288
  }
4273
4289
 
4274
- .max-check input, .max-radio input {
4290
+ .max-check input, .max-radio input, :where([data-ui="maximalist"]) .ui-check input, :where([data-ui="maximalist"]) .ui-radio input {
4275
4291
  opacity: 0;
4276
4292
  pointer-events: none;
4277
4293
  position: absolute;
4278
4294
  }
4279
4295
 
4280
- .max-check-control, .max-radio-control {
4296
+ .max-check-control, .max-radio-control, :where([data-ui="maximalist"]) .ui-check-control, :where([data-ui="maximalist"]) .ui-radio-control {
4281
4297
  background: var(--max-surface-soft);
4282
4298
  border: 3px solid var(--max-border);
4283
4299
  width: 1.35rem;
@@ -4287,28 +4303,28 @@
4287
4303
  display: inline-grid;
4288
4304
  }
4289
4305
 
4290
- .max-check-control {
4306
+ .max-check-control, :where([data-ui="maximalist"]) .ui-check-control {
4291
4307
  border-radius: var(--max-radius-xs);
4292
4308
  }
4293
4309
 
4294
- .max-radio-control {
4310
+ .max-radio-control, :where([data-ui="maximalist"]) .ui-radio-control {
4295
4311
  border-radius: 50%;
4296
4312
  }
4297
4313
 
4298
- .max-check input:checked + .max-check-control, .max-radio input:checked + .max-radio-control {
4314
+ .max-check input:checked + .max-check-control, .max-radio input:checked + .max-radio-control, :where([data-ui="maximalist"]) .ui-check input:checked+.ui-check-control, :where([data-ui="maximalist"]) .ui-radio input:checked+.ui-radio-control {
4299
4315
  background: var(--max-primary);
4300
4316
  border-color: var(--max-primary);
4301
4317
  box-shadow: var(--max-focus-ring);
4302
4318
  }
4303
4319
 
4304
- .max-check input:checked + .max-check-control:after {
4320
+ .max-check input:checked + .max-check-control:after, :where([data-ui="maximalist"]) .ui-check input:checked+.ui-check-control:after {
4305
4321
  content: "✓";
4306
4322
  color: var(--max-on-primary);
4307
4323
  font-size: .9rem;
4308
4324
  font-weight: 900;
4309
4325
  }
4310
4326
 
4311
- .max-radio input:checked + .max-radio-control:after {
4327
+ .max-radio input:checked + .max-radio-control:after, :where([data-ui="maximalist"]) .ui-radio input:checked+.ui-radio-control:after {
4312
4328
  content: "";
4313
4329
  background: var(--max-on-primary);
4314
4330
  border-radius: 50%;
@@ -4316,7 +4332,7 @@
4316
4332
  height: .55rem;
4317
4333
  }
4318
4334
 
4319
- .max-switch {
4335
+ .max-switch, :where([data-ui="maximalist"]) .ui-switch {
4320
4336
  align-items: center;
4321
4337
  gap: var(--max-space-3);
4322
4338
  color: var(--max-text);
@@ -4324,13 +4340,13 @@
4324
4340
  display: inline-flex;
4325
4341
  }
4326
4342
 
4327
- .max-switch input {
4343
+ .max-switch input, :where([data-ui="maximalist"]) .ui-switch input {
4328
4344
  opacity: 0;
4329
4345
  pointer-events: none;
4330
4346
  position: absolute;
4331
4347
  }
4332
4348
 
4333
- .max-switch-track {
4349
+ .max-switch-track, :where([data-ui="maximalist"]) .ui-switch-track {
4334
4350
  background: var(--max-surface-soft);
4335
4351
  border: 3px solid var(--max-border);
4336
4352
  border-radius: var(--max-radius-pill);
@@ -4340,7 +4356,7 @@
4340
4356
  position: relative;
4341
4357
  }
4342
4358
 
4343
- .max-switch-thumb {
4359
+ .max-switch-thumb, :where([data-ui="maximalist"]) .ui-switch-thumb {
4344
4360
  background: var(--max-surface-strong);
4345
4361
  border: 3px solid var(--max-border);
4346
4362
  width: 1.34rem;
@@ -4353,17 +4369,17 @@
4353
4369
  left: .22rem;
4354
4370
  }
4355
4371
 
4356
- .max-switch input:checked + .max-switch-track {
4372
+ .max-switch input:checked + .max-switch-track, :where([data-ui="maximalist"]) .ui-switch input:checked+.ui-switch-track {
4357
4373
  background: var(--max-primary);
4358
4374
  border-color: var(--max-primary);
4359
4375
  }
4360
4376
 
4361
- .max-switch input:checked + .max-switch-track .max-switch-thumb {
4377
+ .max-switch input:checked + .max-switch-track .max-switch-thumb, :where([data-ui="maximalist"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
4362
4378
  background: var(--max-on-primary);
4363
4379
  left: calc(100% - 1.56rem);
4364
4380
  }
4365
4381
 
4366
- .max-badge {
4382
+ .max-badge, :where([data-ui="maximalist"]) .ui-badge {
4367
4383
  align-items: center;
4368
4384
  gap: var(--max-space-1);
4369
4385
  background: var(--max-surface-soft);
@@ -4378,37 +4394,37 @@
4378
4394
  display: inline-flex;
4379
4395
  }
4380
4396
 
4381
- .max-badge-primary {
4397
+ .max-badge-primary, :where([data-ui="maximalist"]) .ui-badge:where([data-ui-variant="primary"]) {
4382
4398
  background: var(--max-primary);
4383
4399
  color: var(--max-on-primary);
4384
4400
  border-color: var(--max-primary);
4385
4401
  }
4386
4402
 
4387
- .max-badge-secondary {
4403
+ .max-badge-secondary, :where([data-ui="maximalist"]) .ui-badge:where([data-ui-variant="secondary"]) {
4388
4404
  background: var(--max-secondary);
4389
4405
  color: var(--max-on-secondary);
4390
4406
  border-color: var(--max-secondary);
4391
4407
  }
4392
4408
 
4393
- .max-badge-success {
4409
+ .max-badge-success, :where([data-ui="maximalist"]) .ui-badge:where([data-ui-variant="success"]) {
4394
4410
  background: var(--max-success);
4395
4411
  color: var(--max-on-success);
4396
4412
  border-color: var(--max-success);
4397
4413
  }
4398
4414
 
4399
- .max-badge-warning {
4415
+ .max-badge-warning, :where([data-ui="maximalist"]) .ui-badge:where([data-ui-variant="warning"]) {
4400
4416
  background: var(--max-warning);
4401
4417
  color: var(--max-on-warning);
4402
4418
  border-color: var(--max-warning);
4403
4419
  }
4404
4420
 
4405
- .max-badge-danger {
4421
+ .max-badge-danger, :where([data-ui="maximalist"]) .ui-badge:where([data-ui-variant="danger"]) {
4406
4422
  background: var(--max-danger);
4407
4423
  color: var(--max-on-danger);
4408
4424
  border-color: var(--max-danger);
4409
4425
  }
4410
4426
 
4411
- .max-nav {
4427
+ .max-nav, :where([data-ui="maximalist"]) .ui-nav {
4412
4428
  align-items: center;
4413
4429
  gap: var(--max-space-2);
4414
4430
  padding: var(--max-space-2);
@@ -4420,7 +4436,7 @@
4420
4436
  display: flex;
4421
4437
  }
4422
4438
 
4423
- .max-nav-link {
4439
+ .max-nav-link, :where([data-ui="maximalist"]) .ui-nav-link {
4424
4440
  min-height: 2.5rem;
4425
4441
  color: var(--max-text-muted);
4426
4442
  border-radius: var(--max-radius-pill);
@@ -4433,12 +4449,12 @@
4433
4449
  display: inline-flex;
4434
4450
  }
4435
4451
 
4436
- .max-nav-link:hover {
4452
+ .max-nav-link:hover, :where([data-ui="maximalist"]) .ui-nav-link:hover {
4437
4453
  color: var(--max-text);
4438
4454
  background: var(--max-surface-soft);
4439
4455
  }
4440
4456
 
4441
- .max-nav-link[aria-current="page"], .max-nav-link.is-active {
4457
+ .max-nav-link[aria-current="page"], .max-nav-link.is-active, :where([data-ui="maximalist"]) .ui-nav-link[aria-current="page"], :where([data-ui="maximalist"]) .ui-nav-link.is-active {
4442
4458
  color: var(--max-on-primary);
4443
4459
  background: var(--max-primary);
4444
4460
  }
@@ -4470,7 +4486,7 @@
4470
4486
  transform: rotate(45deg);
4471
4487
  }
4472
4488
 
4473
- .max-progress {
4489
+ .max-progress, :where([data-ui="maximalist"]) .ui-progress {
4474
4490
  background: var(--max-surface-soft);
4475
4491
  border: 3px solid var(--max-border);
4476
4492
  border-radius: var(--max-radius-pill);
@@ -4479,14 +4495,14 @@
4479
4495
  overflow: hidden;
4480
4496
  }
4481
4497
 
4482
- .max-progress-bar {
4498
+ .max-progress-bar, :where([data-ui="maximalist"]) .ui-progress-bar {
4483
4499
  height: 100%;
4484
4500
  width: var(--max-progress-value, 50%);
4485
4501
  background: linear-gradient(90deg,var(--max-primary),var(--max-accent));
4486
4502
  border-radius: inherit;
4487
4503
  }
4488
4504
 
4489
- .max-alert {
4505
+ .max-alert, :where([data-ui="maximalist"]) .ui-alert {
4490
4506
  gap: var(--max-space-2);
4491
4507
  padding: var(--max-space-4);
4492
4508
  background: var(--max-surface);
@@ -4497,45 +4513,45 @@
4497
4513
  display: grid;
4498
4514
  }
4499
4515
 
4500
- .max-alert-success {
4516
+ .max-alert-success, :where([data-ui="maximalist"]) .ui-alert:where([data-ui-variant="success"]) {
4501
4517
  border-left-color: var(--max-success);
4502
4518
  }
4503
4519
 
4504
- .max-alert-warning {
4520
+ .max-alert-warning, :where([data-ui="maximalist"]) .ui-alert:where([data-ui-variant="warning"]) {
4505
4521
  border-left-color: var(--max-warning);
4506
4522
  }
4507
4523
 
4508
- .max-alert-danger {
4524
+ .max-alert-danger, :where([data-ui="maximalist"]) .ui-alert:where([data-ui-variant="danger"]) {
4509
4525
  border-left-color: var(--max-danger);
4510
4526
  }
4511
4527
 
4512
- .max-alert-title {
4528
+ .max-alert-title, :where([data-ui="maximalist"]) .ui-alert-title {
4513
4529
  margin: 0;
4514
4530
  font-weight: 900;
4515
4531
  }
4516
4532
 
4517
- .max-alert-body {
4533
+ .max-alert-body, :where([data-ui="maximalist"]) .ui-alert-body {
4518
4534
  color: var(--max-text-muted);
4519
4535
  margin: 0;
4520
4536
  line-height: 1.55;
4521
4537
  }
4522
4538
 
4523
- .max-table-wrap {
4539
+ .max-table-wrap, :where([data-ui="maximalist"]) .ui-table-wrap {
4524
4540
  overflow: auto;
4525
4541
  }
4526
4542
 
4527
- .max-table {
4543
+ .max-table, :where([data-ui="maximalist"]) .ui-table {
4528
4544
  border-collapse: collapse;
4529
4545
  width: 100%;
4530
4546
  }
4531
4547
 
4532
- .max-table th, .max-table td {
4548
+ .max-table th, .max-table td, :where([data-ui="maximalist"]) .ui-table th, :where([data-ui="maximalist"]) .ui-table td {
4533
4549
  text-align: left;
4534
4550
  border-bottom: 3px solid var(--max-border);
4535
4551
  padding: .95rem 1rem;
4536
4552
  }
4537
4553
 
4538
- .max-table th {
4554
+ .max-table th, :where([data-ui="maximalist"]) .ui-table th {
4539
4555
  color: var(--max-text);
4540
4556
  text-transform: uppercase;
4541
4557
  letter-spacing: .08em;
@@ -4544,11 +4560,11 @@
4544
4560
  font-weight: 900;
4545
4561
  }
4546
4562
 
4547
- .max-table td {
4563
+ .max-table td, :where([data-ui="maximalist"]) .ui-table td {
4548
4564
  color: var(--max-text-muted);
4549
4565
  }
4550
4566
 
4551
- .max-table tr:hover td {
4567
+ .max-table tr:hover td, :where([data-ui="maximalist"]) .ui-table tr:hover td {
4552
4568
  background: rgb(var(--max-primary-rgb)/.045);
4553
4569
  }
4554
4570
 
@@ -4701,12 +4717,12 @@
4701
4717
  inline-size: 3rem;
4702
4718
  }
4703
4719
 
4704
- .max-button[aria-busy="true"], .max-icon-button[aria-busy="true"], [data-ui="maximalist"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
4720
+ .max-button[aria-busy="true"], .max-icon-button[aria-busy="true"], [data-ui="maximalist"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="maximalist"]) .ui-button[aria-busy="true"], :where([data-ui="maximalist"]) .ui-icon-button[aria-busy="true"] {
4705
4721
  cursor: progress;
4706
4722
  gap: .55rem;
4707
4723
  }
4708
4724
 
4709
- .max-button[aria-busy="true"]:after, .max-icon-button[aria-busy="true"]:after, [data-ui="maximalist"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
4725
+ .max-button[aria-busy="true"]:after, .max-icon-button[aria-busy="true"]:after, [data-ui="maximalist"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="maximalist"]) .ui-button[aria-busy="true"]:after, :where([data-ui="maximalist"]) .ui-icon-button[aria-busy="true"]:after {
4710
4726
  content: "";
4711
4727
  border: .16em solid rgb(var(--max-primary-text-rgb)/.42);
4712
4728
  border-block-start-color: currentColor;
@@ -4933,7 +4949,7 @@
4933
4949
  background-size: var(--bau-theme-bg-size);
4934
4950
  }
4935
4951
 
4936
- .bau-title, .bau-heading, .bau-kicker, .bau-button, .bau-badge, .bau-nav-link {
4952
+ .bau-title, .bau-heading, .bau-kicker, .bau-button, .bau-badge, .bau-nav-link, :where([data-ui="bauhaus"]) .ui-button, :where([data-ui="bauhaus"]) .ui-badge, :where([data-ui="bauhaus"]) .ui-nav-link {
4937
4953
  font-family: var(--bau-font-heading);
4938
4954
  }
4939
4955
 
@@ -4980,7 +4996,7 @@
4980
4996
  height: 2px;
4981
4997
  }
4982
4998
 
4983
- .bau-surface, .bau-card, .bau-panel, .bau-toolbar, .bau-table-wrap {
4999
+ .bau-surface, .bau-card, .bau-panel, .bau-toolbar, .bau-table-wrap, :where([data-ui="bauhaus"]) .ui-card, :where([data-ui="bauhaus"]) .ui-toolbar, :where([data-ui="bauhaus"]) .ui-table-wrap {
4984
5000
  background: linear-gradient(90deg,rgb(var(--bau-primary-rgb)/.1)0 .5rem,transparent .5rem),var(--bau-surface);
4985
5001
  color: var(--bau-text);
4986
5002
  border: 2px solid var(--bau-border);
@@ -4990,11 +5006,11 @@
4990
5006
  position: relative;
4991
5007
  }
4992
5008
 
4993
- .bau-card, .bau-panel {
5009
+ .bau-card, .bau-panel, :where([data-ui="bauhaus"]) .ui-card {
4994
5010
  padding: var(--bau-space-6);
4995
5011
  }
4996
5012
 
4997
- .bau-toolbar {
5013
+ .bau-toolbar, :where([data-ui="bauhaus"]) .ui-toolbar {
4998
5014
  justify-content: space-between;
4999
5015
  align-items: center;
5000
5016
  gap: var(--bau-space-4);
@@ -5027,7 +5043,7 @@
5027
5043
  transform: translate(-3px, -3px);
5028
5044
  }
5029
5045
 
5030
- .bau-button, .bau-icon-button {
5046
+ .bau-button, .bau-icon-button, :where([data-ui="bauhaus"]) .ui-button, :where([data-ui="bauhaus"]) .ui-icon-button {
5031
5047
  appearance: none;
5032
5048
  justify-content: center;
5033
5049
  align-items: center;
@@ -5051,87 +5067,87 @@
5051
5067
  display: inline-flex;
5052
5068
  }
5053
5069
 
5054
- .bau-button:hover, .bau-icon-button:hover {
5070
+ .bau-button:hover, .bau-icon-button:hover, :where([data-ui="bauhaus"]) .ui-button:hover, :where([data-ui="bauhaus"]) .ui-icon-button:hover {
5055
5071
  border-color: var(--bau-primary);
5056
5072
  transform: translateY(-1px);
5057
5073
  }
5058
5074
 
5059
- .bau-button:active, .bau-icon-button:active, .bau-button[aria-pressed="true"], .bau-icon-button[aria-pressed="true"], .bau-button.is-active, .bau-icon-button.is-active {
5075
+ .bau-button:active, .bau-icon-button:active, .bau-button[aria-pressed="true"], .bau-icon-button[aria-pressed="true"], .bau-button.is-active, .bau-icon-button.is-active, :where([data-ui="bauhaus"]) .ui-button:active, :where([data-ui="bauhaus"]) .ui-icon-button:active, :where([data-ui="bauhaus"]) .ui-button[aria-pressed="true"], :where([data-ui="bauhaus"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="bauhaus"]) .ui-button.is-active, :where([data-ui="bauhaus"]) .ui-icon-button.is-active {
5060
5076
  transform: translateY(1px);
5061
5077
  box-shadow: inset 0 3px 10px #0000002e;
5062
5078
  }
5063
5079
 
5064
- .bau-button-primary {
5080
+ .bau-button-primary, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="primary"]) {
5065
5081
  background: var(--bau-primary);
5066
5082
  color: var(--bau-on-primary);
5067
5083
  border-color: var(--bau-primary);
5068
5084
  }
5069
5085
 
5070
- .bau-button-primary:hover {
5086
+ .bau-button-primary:hover, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="primary"]):hover {
5071
5087
  background: var(--bau-primary-hover);
5072
5088
  border-color: var(--bau-primary-hover);
5073
5089
  }
5074
5090
 
5075
- .bau-button-secondary {
5091
+ .bau-button-secondary, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="secondary"]) {
5076
5092
  background: var(--bau-secondary);
5077
5093
  color: var(--bau-on-secondary);
5078
5094
  border-color: var(--bau-secondary);
5079
5095
  }
5080
5096
 
5081
- .bau-button-secondary:hover {
5097
+ .bau-button-secondary:hover, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="secondary"]):hover {
5082
5098
  background: var(--bau-secondary-hover);
5083
5099
  border-color: var(--bau-secondary-hover);
5084
5100
  }
5085
5101
 
5086
- .bau-button-danger {
5102
+ .bau-button-danger, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="danger"]) {
5087
5103
  background: var(--bau-danger);
5088
5104
  color: var(--bau-on-danger);
5089
5105
  border-color: var(--bau-danger);
5090
5106
  }
5091
5107
 
5092
- .bau-button-ghost {
5108
+ .bau-button-ghost, :where([data-ui="bauhaus"]) .ui-button:where([data-ui-variant="ghost"]) {
5093
5109
  color: var(--bau-text);
5094
5110
  box-shadow: none;
5095
5111
  background: none;
5096
5112
  }
5097
5113
 
5098
- .bau-icon-button {
5114
+ .bau-icon-button, :where([data-ui="bauhaus"]) .ui-icon-button {
5099
5115
  border-radius: var(--bau-radius-pill);
5100
5116
  width: 2.75rem;
5101
5117
  padding: 0;
5102
5118
  }
5103
5119
 
5104
- .bau-button:disabled, .bau-icon-button:disabled, .bau-disabled {
5120
+ .bau-button:disabled, .bau-icon-button:disabled, .bau-disabled, :where([data-ui="bauhaus"]) .ui-button:disabled, :where([data-ui="bauhaus"]) .ui-icon-button:disabled {
5105
5121
  opacity: .55;
5106
5122
  cursor: not-allowed;
5107
5123
  transform: none;
5108
5124
  }
5109
5125
 
5110
- .bau-card, .bau-panel {
5126
+ .bau-card, .bau-panel, :where([data-ui="bauhaus"]) .ui-card {
5111
5127
  background: var(--bau-card-bg);
5112
5128
  }
5113
5129
 
5114
- .bau-toolbar, .bau-table-wrap, .bau-button:not(.bau-button-primary):not(.bau-button-secondary):not(.bau-button-danger):not(.bau-button-ghost), .bau-icon-button {
5130
+ .bau-toolbar, .bau-table-wrap, .bau-button:not(.bau-button-primary):not(.bau-button-secondary):not(.bau-button-danger):not(.bau-button-ghost), .bau-icon-button, :where([data-ui="bauhaus"]) .ui-toolbar, :where([data-ui="bauhaus"]) .ui-table-wrap, :where([data-ui="bauhaus"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="bauhaus"]) .ui-icon-button {
5115
5131
  background: var(--bau-control-bg);
5116
5132
  }
5117
5133
 
5118
- .bau-button, .bau-icon-button, .bau-badge, .bau-nav-link {
5134
+ .bau-button, .bau-icon-button, .bau-badge, .bau-nav-link, :where([data-ui="bauhaus"]) .ui-button, :where([data-ui="bauhaus"]) .ui-icon-button, :where([data-ui="bauhaus"]) .ui-badge, :where([data-ui="bauhaus"]) .ui-nav-link {
5119
5135
  font-family: var(--bau-font-control);
5120
5136
  }
5121
5137
 
5122
- .bau-field {
5138
+ .bau-field, :where([data-ui="bauhaus"]) .ui-field {
5123
5139
  gap: var(--bau-space-2);
5124
5140
  flex-direction: column;
5125
5141
  display: flex;
5126
5142
  }
5127
5143
 
5128
- .bau-label {
5144
+ .bau-label, :where([data-ui="bauhaus"]) .ui-label {
5129
5145
  color: var(--bau-text);
5130
5146
  font-size: .925rem;
5131
5147
  font-weight: 800;
5132
5148
  }
5133
5149
 
5134
- .bau-input, .bau-textarea, .bau-select {
5150
+ .bau-input, .bau-textarea, .bau-select, :where([data-ui="bauhaus"]) .ui-input, :where([data-ui="bauhaus"]) .ui-textarea, :where([data-ui="bauhaus"]) .ui-select {
5135
5151
  background: var(--bau-surface-soft);
5136
5152
  width: 100%;
5137
5153
  min-height: 2.875rem;
@@ -5144,32 +5160,32 @@
5144
5160
  padding: .75rem 1rem;
5145
5161
  }
5146
5162
 
5147
- .bau-textarea {
5163
+ .bau-textarea, :where([data-ui="bauhaus"]) .ui-textarea {
5148
5164
  resize: vertical;
5149
5165
  min-height: 8rem;
5150
5166
  }
5151
5167
 
5152
- .bau-input::placeholder, .bau-textarea::placeholder {
5168
+ .bau-input::placeholder, .bau-textarea::placeholder, :where([data-ui="bauhaus"]) .ui-input::placeholder, :where([data-ui="bauhaus"]) .ui-textarea::placeholder {
5153
5169
  color: var(--bau-text-muted);
5154
5170
  opacity: .82;
5155
5171
  }
5156
5172
 
5157
- .bau-input:hover, .bau-textarea:hover, .bau-select:hover {
5173
+ .bau-input:hover, .bau-textarea:hover, .bau-select:hover, :where([data-ui="bauhaus"]) .ui-input:hover, :where([data-ui="bauhaus"]) .ui-textarea:hover, :where([data-ui="bauhaus"]) .ui-select:hover {
5158
5174
  border-color: rgb(var(--bau-primary-rgb)/.58);
5159
5175
  }
5160
5176
 
5161
- .bau-input:focus, .bau-textarea:focus, .bau-select:focus {
5177
+ .bau-input:focus, .bau-textarea:focus, .bau-select:focus, :where([data-ui="bauhaus"]) .ui-input:focus, :where([data-ui="bauhaus"]) .ui-textarea:focus, :where([data-ui="bauhaus"]) .ui-select:focus {
5162
5178
  border-color: var(--bau-focus);
5163
5179
  box-shadow: var(--bau-focus-ring);
5164
5180
  }
5165
5181
 
5166
- .bau-help-text {
5182
+ .bau-help-text, :where([data-ui="bauhaus"]) .ui-help-text {
5167
5183
  color: var(--bau-text-muted);
5168
5184
  font-size: .875rem;
5169
5185
  line-height: 1.45;
5170
5186
  }
5171
5187
 
5172
- .bau-check, .bau-radio {
5188
+ .bau-check, .bau-radio, :where([data-ui="bauhaus"]) .ui-check, :where([data-ui="bauhaus"]) .ui-radio {
5173
5189
  align-items: center;
5174
5190
  gap: var(--bau-space-2);
5175
5191
  color: var(--bau-text);
@@ -5177,13 +5193,13 @@
5177
5193
  display: inline-flex;
5178
5194
  }
5179
5195
 
5180
- .bau-check input, .bau-radio input {
5196
+ .bau-check input, .bau-radio input, :where([data-ui="bauhaus"]) .ui-check input, :where([data-ui="bauhaus"]) .ui-radio input {
5181
5197
  opacity: 0;
5182
5198
  pointer-events: none;
5183
5199
  position: absolute;
5184
5200
  }
5185
5201
 
5186
- .bau-check-control, .bau-radio-control {
5202
+ .bau-check-control, .bau-radio-control, :where([data-ui="bauhaus"]) .ui-check-control, :where([data-ui="bauhaus"]) .ui-radio-control {
5187
5203
  background: var(--bau-surface-soft);
5188
5204
  border: 2px solid var(--bau-border);
5189
5205
  width: 1.35rem;
@@ -5193,28 +5209,28 @@
5193
5209
  display: inline-grid;
5194
5210
  }
5195
5211
 
5196
- .bau-check-control {
5212
+ .bau-check-control, :where([data-ui="bauhaus"]) .ui-check-control {
5197
5213
  border-radius: var(--bau-radius-xs);
5198
5214
  }
5199
5215
 
5200
- .bau-radio-control {
5216
+ .bau-radio-control, :where([data-ui="bauhaus"]) .ui-radio-control {
5201
5217
  border-radius: 50%;
5202
5218
  }
5203
5219
 
5204
- .bau-check input:checked + .bau-check-control, .bau-radio input:checked + .bau-radio-control {
5220
+ .bau-check input:checked + .bau-check-control, .bau-radio input:checked + .bau-radio-control, :where([data-ui="bauhaus"]) .ui-check input:checked+.ui-check-control, :where([data-ui="bauhaus"]) .ui-radio input:checked+.ui-radio-control {
5205
5221
  background: var(--bau-primary);
5206
5222
  border-color: var(--bau-primary);
5207
5223
  box-shadow: var(--bau-focus-ring);
5208
5224
  }
5209
5225
 
5210
- .bau-check input:checked + .bau-check-control:after {
5226
+ .bau-check input:checked + .bau-check-control:after, :where([data-ui="bauhaus"]) .ui-check input:checked+.ui-check-control:after {
5211
5227
  content: "✓";
5212
5228
  color: var(--bau-on-primary);
5213
5229
  font-size: .9rem;
5214
5230
  font-weight: 900;
5215
5231
  }
5216
5232
 
5217
- .bau-radio input:checked + .bau-radio-control:after {
5233
+ .bau-radio input:checked + .bau-radio-control:after, :where([data-ui="bauhaus"]) .ui-radio input:checked+.ui-radio-control:after {
5218
5234
  content: "";
5219
5235
  background: var(--bau-on-primary);
5220
5236
  border-radius: 50%;
@@ -5222,7 +5238,7 @@
5222
5238
  height: .55rem;
5223
5239
  }
5224
5240
 
5225
- .bau-switch {
5241
+ .bau-switch, :where([data-ui="bauhaus"]) .ui-switch {
5226
5242
  align-items: center;
5227
5243
  gap: var(--bau-space-3);
5228
5244
  color: var(--bau-text);
@@ -5230,13 +5246,13 @@
5230
5246
  display: inline-flex;
5231
5247
  }
5232
5248
 
5233
- .bau-switch input {
5249
+ .bau-switch input, :where([data-ui="bauhaus"]) .ui-switch input {
5234
5250
  opacity: 0;
5235
5251
  pointer-events: none;
5236
5252
  position: absolute;
5237
5253
  }
5238
5254
 
5239
- .bau-switch-track {
5255
+ .bau-switch-track, :where([data-ui="bauhaus"]) .ui-switch-track {
5240
5256
  background: var(--bau-surface-soft);
5241
5257
  border: 2px solid var(--bau-border);
5242
5258
  border-radius: var(--bau-radius-pill);
@@ -5246,7 +5262,7 @@
5246
5262
  position: relative;
5247
5263
  }
5248
5264
 
5249
- .bau-switch-thumb {
5265
+ .bau-switch-thumb, :where([data-ui="bauhaus"]) .ui-switch-thumb {
5250
5266
  background: var(--bau-surface-strong);
5251
5267
  border: 2px solid var(--bau-border);
5252
5268
  width: 1.34rem;
@@ -5259,17 +5275,17 @@
5259
5275
  left: .22rem;
5260
5276
  }
5261
5277
 
5262
- .bau-switch input:checked + .bau-switch-track {
5278
+ .bau-switch input:checked + .bau-switch-track, :where([data-ui="bauhaus"]) .ui-switch input:checked+.ui-switch-track {
5263
5279
  background: var(--bau-primary);
5264
5280
  border-color: var(--bau-primary);
5265
5281
  }
5266
5282
 
5267
- .bau-switch input:checked + .bau-switch-track .bau-switch-thumb {
5283
+ .bau-switch input:checked + .bau-switch-track .bau-switch-thumb, :where([data-ui="bauhaus"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
5268
5284
  background: var(--bau-on-primary);
5269
5285
  left: calc(100% - 1.56rem);
5270
5286
  }
5271
5287
 
5272
- .bau-badge {
5288
+ .bau-badge, :where([data-ui="bauhaus"]) .ui-badge {
5273
5289
  align-items: center;
5274
5290
  gap: var(--bau-space-1);
5275
5291
  background: var(--bau-surface-soft);
@@ -5284,37 +5300,37 @@
5284
5300
  display: inline-flex;
5285
5301
  }
5286
5302
 
5287
- .bau-badge-primary {
5303
+ .bau-badge-primary, :where([data-ui="bauhaus"]) .ui-badge:where([data-ui-variant="primary"]) {
5288
5304
  background: var(--bau-primary);
5289
5305
  color: var(--bau-on-primary);
5290
5306
  border-color: var(--bau-primary);
5291
5307
  }
5292
5308
 
5293
- .bau-badge-secondary {
5309
+ .bau-badge-secondary, :where([data-ui="bauhaus"]) .ui-badge:where([data-ui-variant="secondary"]) {
5294
5310
  background: var(--bau-secondary);
5295
5311
  color: var(--bau-on-secondary);
5296
5312
  border-color: var(--bau-secondary);
5297
5313
  }
5298
5314
 
5299
- .bau-badge-success {
5315
+ .bau-badge-success, :where([data-ui="bauhaus"]) .ui-badge:where([data-ui-variant="success"]) {
5300
5316
  background: var(--bau-success);
5301
5317
  color: var(--bau-on-success);
5302
5318
  border-color: var(--bau-success);
5303
5319
  }
5304
5320
 
5305
- .bau-badge-warning {
5321
+ .bau-badge-warning, :where([data-ui="bauhaus"]) .ui-badge:where([data-ui-variant="warning"]) {
5306
5322
  background: var(--bau-warning);
5307
5323
  color: var(--bau-on-warning);
5308
5324
  border-color: var(--bau-warning);
5309
5325
  }
5310
5326
 
5311
- .bau-badge-danger {
5327
+ .bau-badge-danger, :where([data-ui="bauhaus"]) .ui-badge:where([data-ui-variant="danger"]) {
5312
5328
  background: var(--bau-danger);
5313
5329
  color: var(--bau-on-danger);
5314
5330
  border-color: var(--bau-danger);
5315
5331
  }
5316
5332
 
5317
- .bau-nav {
5333
+ .bau-nav, :where([data-ui="bauhaus"]) .ui-nav {
5318
5334
  align-items: center;
5319
5335
  gap: var(--bau-space-2);
5320
5336
  padding: var(--bau-space-2);
@@ -5326,7 +5342,7 @@
5326
5342
  display: flex;
5327
5343
  }
5328
5344
 
5329
- .bau-nav-link {
5345
+ .bau-nav-link, :where([data-ui="bauhaus"]) .ui-nav-link {
5330
5346
  min-height: 2.5rem;
5331
5347
  color: var(--bau-text-muted);
5332
5348
  border-radius: var(--bau-radius-pill);
@@ -5339,12 +5355,12 @@
5339
5355
  display: inline-flex;
5340
5356
  }
5341
5357
 
5342
- .bau-nav-link:hover {
5358
+ .bau-nav-link:hover, :where([data-ui="bauhaus"]) .ui-nav-link:hover {
5343
5359
  color: var(--bau-text);
5344
5360
  background: var(--bau-surface-soft);
5345
5361
  }
5346
5362
 
5347
- .bau-nav-link[aria-current="page"], .bau-nav-link.is-active {
5363
+ .bau-nav-link[aria-current="page"], .bau-nav-link.is-active, :where([data-ui="bauhaus"]) .ui-nav-link[aria-current="page"], :where([data-ui="bauhaus"]) .ui-nav-link.is-active {
5348
5364
  color: var(--bau-on-primary);
5349
5365
  background: var(--bau-primary);
5350
5366
  }
@@ -5375,7 +5391,7 @@
5375
5391
  transform: rotate(45deg);
5376
5392
  }
5377
5393
 
5378
- .bau-progress {
5394
+ .bau-progress, :where([data-ui="bauhaus"]) .ui-progress {
5379
5395
  background: var(--bau-surface-soft);
5380
5396
  border: 2px solid var(--bau-border);
5381
5397
  border-radius: var(--bau-radius-pill);
@@ -5384,14 +5400,14 @@
5384
5400
  overflow: hidden;
5385
5401
  }
5386
5402
 
5387
- .bau-progress-bar {
5403
+ .bau-progress-bar, :where([data-ui="bauhaus"]) .ui-progress-bar {
5388
5404
  height: 100%;
5389
5405
  width: var(--bau-progress-value, 50%);
5390
5406
  background: linear-gradient(90deg,var(--bau-primary),var(--bau-accent));
5391
5407
  border-radius: inherit;
5392
5408
  }
5393
5409
 
5394
- .bau-alert {
5410
+ .bau-alert, :where([data-ui="bauhaus"]) .ui-alert {
5395
5411
  gap: var(--bau-space-2);
5396
5412
  padding: var(--bau-space-4);
5397
5413
  background: var(--bau-surface);
@@ -5402,45 +5418,45 @@
5402
5418
  display: grid;
5403
5419
  }
5404
5420
 
5405
- .bau-alert-success {
5421
+ .bau-alert-success, :where([data-ui="bauhaus"]) .ui-alert:where([data-ui-variant="success"]) {
5406
5422
  border-left-color: var(--bau-success);
5407
5423
  }
5408
5424
 
5409
- .bau-alert-warning {
5425
+ .bau-alert-warning, :where([data-ui="bauhaus"]) .ui-alert:where([data-ui-variant="warning"]) {
5410
5426
  border-left-color: var(--bau-warning);
5411
5427
  }
5412
5428
 
5413
- .bau-alert-danger {
5429
+ .bau-alert-danger, :where([data-ui="bauhaus"]) .ui-alert:where([data-ui-variant="danger"]) {
5414
5430
  border-left-color: var(--bau-danger);
5415
5431
  }
5416
5432
 
5417
- .bau-alert-title {
5433
+ .bau-alert-title, :where([data-ui="bauhaus"]) .ui-alert-title {
5418
5434
  margin: 0;
5419
5435
  font-weight: 900;
5420
5436
  }
5421
5437
 
5422
- .bau-alert-body {
5438
+ .bau-alert-body, :where([data-ui="bauhaus"]) .ui-alert-body {
5423
5439
  color: var(--bau-text-muted);
5424
5440
  margin: 0;
5425
5441
  line-height: 1.55;
5426
5442
  }
5427
5443
 
5428
- .bau-table-wrap {
5444
+ .bau-table-wrap, :where([data-ui="bauhaus"]) .ui-table-wrap {
5429
5445
  overflow: auto;
5430
5446
  }
5431
5447
 
5432
- .bau-table {
5448
+ .bau-table, :where([data-ui="bauhaus"]) .ui-table {
5433
5449
  border-collapse: collapse;
5434
5450
  width: 100%;
5435
5451
  }
5436
5452
 
5437
- .bau-table th, .bau-table td {
5453
+ .bau-table th, .bau-table td, :where([data-ui="bauhaus"]) .ui-table th, :where([data-ui="bauhaus"]) .ui-table td {
5438
5454
  text-align: left;
5439
5455
  border-bottom: 2px solid var(--bau-border);
5440
5456
  padding: .95rem 1rem;
5441
5457
  }
5442
5458
 
5443
- .bau-table th {
5459
+ .bau-table th, :where([data-ui="bauhaus"]) .ui-table th {
5444
5460
  color: var(--bau-text);
5445
5461
  text-transform: uppercase;
5446
5462
  letter-spacing: .08em;
@@ -5449,11 +5465,11 @@
5449
5465
  font-weight: 900;
5450
5466
  }
5451
5467
 
5452
- .bau-table td {
5468
+ .bau-table td, :where([data-ui="bauhaus"]) .ui-table td {
5453
5469
  color: var(--bau-text-muted);
5454
5470
  }
5455
5471
 
5456
- .bau-table tr:hover td {
5472
+ .bau-table tr:hover td, :where([data-ui="bauhaus"]) .ui-table tr:hover td {
5457
5473
  background: rgb(var(--bau-primary-rgb)/.045);
5458
5474
  }
5459
5475
 
@@ -5599,12 +5615,12 @@
5599
5615
  inline-size: 3rem;
5600
5616
  }
5601
5617
 
5602
- .bau-button[aria-busy="true"], .bau-icon-button[aria-busy="true"], [data-ui="bauhaus"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
5618
+ .bau-button[aria-busy="true"], .bau-icon-button[aria-busy="true"], [data-ui="bauhaus"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="bauhaus"]) .ui-button[aria-busy="true"], :where([data-ui="bauhaus"]) .ui-icon-button[aria-busy="true"] {
5603
5619
  cursor: progress;
5604
5620
  gap: .55rem;
5605
5621
  }
5606
5622
 
5607
- .bau-button[aria-busy="true"]:after, .bau-icon-button[aria-busy="true"]:after, [data-ui="bauhaus"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
5623
+ .bau-button[aria-busy="true"]:after, .bau-icon-button[aria-busy="true"]:after, [data-ui="bauhaus"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="bauhaus"]) .ui-button[aria-busy="true"]:after, :where([data-ui="bauhaus"]) .ui-icon-button[aria-busy="true"]:after {
5608
5624
  content: "";
5609
5625
  border: .16em solid rgb(var(--bau-primary-text-rgb)/.42);
5610
5626
  border-block-start-color: currentColor;
@@ -5830,7 +5846,7 @@
5830
5846
  background-size: var(--tactile-theme-bg-size);
5831
5847
  }
5832
5848
 
5833
- .tactile-title, .tactile-heading, .tactile-kicker, .tactile-button, .tactile-badge, .tactile-nav-link {
5849
+ .tactile-title, .tactile-heading, .tactile-kicker, .tactile-button, .tactile-badge, .tactile-nav-link, :where([data-ui="tactile"]) .ui-button, :where([data-ui="tactile"]) .ui-badge, :where([data-ui="tactile"]) .ui-nav-link {
5834
5850
  font-family: var(--tactile-font-heading);
5835
5851
  }
5836
5852
 
@@ -5876,7 +5892,7 @@
5876
5892
  height: 1px;
5877
5893
  }
5878
5894
 
5879
- .tactile-surface, .tactile-card, .tactile-panel, .tactile-toolbar, .tactile-table-wrap {
5895
+ .tactile-surface, .tactile-card, .tactile-panel, .tactile-toolbar, .tactile-table-wrap, :where([data-ui="tactile"]) .ui-card, :where([data-ui="tactile"]) .ui-toolbar, :where([data-ui="tactile"]) .ui-table-wrap {
5880
5896
  background: linear-gradient(180deg,#ffffff2e,#ffffff08),linear-gradient(135deg,rgb(var(--tactile-primary-rgb)/.07),transparent 46%),var(--tactile-surface);
5881
5897
  color: var(--tactile-text);
5882
5898
  border: 1px solid var(--tactile-border);
@@ -5886,11 +5902,11 @@
5886
5902
  position: relative;
5887
5903
  }
5888
5904
 
5889
- .tactile-card, .tactile-panel {
5905
+ .tactile-card, .tactile-panel, :where([data-ui="tactile"]) .ui-card {
5890
5906
  padding: var(--tactile-space-6);
5891
5907
  }
5892
5908
 
5893
- .tactile-toolbar {
5909
+ .tactile-toolbar, :where([data-ui="tactile"]) .ui-toolbar {
5894
5910
  justify-content: space-between;
5895
5911
  align-items: center;
5896
5912
  gap: var(--tactile-space-4);
@@ -5923,7 +5939,7 @@
5923
5939
  transform: translateY(-2px);
5924
5940
  }
5925
5941
 
5926
- .tactile-button, .tactile-icon-button {
5942
+ .tactile-button, .tactile-icon-button, :where([data-ui="tactile"]) .ui-button, :where([data-ui="tactile"]) .ui-icon-button {
5927
5943
  appearance: none;
5928
5944
  justify-content: center;
5929
5945
  align-items: center;
@@ -5947,87 +5963,87 @@
5947
5963
  display: inline-flex;
5948
5964
  }
5949
5965
 
5950
- .tactile-button:hover, .tactile-icon-button:hover {
5966
+ .tactile-button:hover, .tactile-icon-button:hover, :where([data-ui="tactile"]) .ui-button:hover, :where([data-ui="tactile"]) .ui-icon-button:hover {
5951
5967
  border-color: var(--tactile-primary);
5952
5968
  transform: translateY(-1px);
5953
5969
  }
5954
5970
 
5955
- .tactile-button:active, .tactile-icon-button:active, .tactile-button[aria-pressed="true"], .tactile-icon-button[aria-pressed="true"], .tactile-button.is-active, .tactile-icon-button.is-active {
5971
+ .tactile-button:active, .tactile-icon-button:active, .tactile-button[aria-pressed="true"], .tactile-icon-button[aria-pressed="true"], .tactile-button.is-active, .tactile-icon-button.is-active, :where([data-ui="tactile"]) .ui-button:active, :where([data-ui="tactile"]) .ui-icon-button:active, :where([data-ui="tactile"]) .ui-button[aria-pressed="true"], :where([data-ui="tactile"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="tactile"]) .ui-button.is-active, :where([data-ui="tactile"]) .ui-icon-button.is-active {
5956
5972
  transform: translateY(1px);
5957
5973
  box-shadow: inset 0 3px 10px #0000002e;
5958
5974
  }
5959
5975
 
5960
- .tactile-button-primary {
5976
+ .tactile-button-primary, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="primary"]) {
5961
5977
  background: var(--tactile-primary);
5962
5978
  color: var(--tactile-on-primary);
5963
5979
  border-color: var(--tactile-primary);
5964
5980
  }
5965
5981
 
5966
- .tactile-button-primary:hover {
5982
+ .tactile-button-primary:hover, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="primary"]):hover {
5967
5983
  background: var(--tactile-primary-hover);
5968
5984
  border-color: var(--tactile-primary-hover);
5969
5985
  }
5970
5986
 
5971
- .tactile-button-secondary {
5987
+ .tactile-button-secondary, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="secondary"]) {
5972
5988
  background: var(--tactile-secondary);
5973
5989
  color: var(--tactile-on-secondary);
5974
5990
  border-color: var(--tactile-secondary);
5975
5991
  }
5976
5992
 
5977
- .tactile-button-secondary:hover {
5993
+ .tactile-button-secondary:hover, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="secondary"]):hover {
5978
5994
  background: var(--tactile-secondary-hover);
5979
5995
  border-color: var(--tactile-secondary-hover);
5980
5996
  }
5981
5997
 
5982
- .tactile-button-danger {
5998
+ .tactile-button-danger, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="danger"]) {
5983
5999
  background: var(--tactile-danger);
5984
6000
  color: var(--tactile-on-danger);
5985
6001
  border-color: var(--tactile-danger);
5986
6002
  }
5987
6003
 
5988
- .tactile-button-ghost {
6004
+ .tactile-button-ghost, :where([data-ui="tactile"]) .ui-button:where([data-ui-variant="ghost"]) {
5989
6005
  color: var(--tactile-text);
5990
6006
  box-shadow: none;
5991
6007
  background: none;
5992
6008
  }
5993
6009
 
5994
- .tactile-icon-button {
6010
+ .tactile-icon-button, :where([data-ui="tactile"]) .ui-icon-button {
5995
6011
  border-radius: var(--tactile-radius-pill);
5996
6012
  width: 2.75rem;
5997
6013
  padding: 0;
5998
6014
  }
5999
6015
 
6000
- .tactile-button:disabled, .tactile-icon-button:disabled, .tactile-disabled {
6016
+ .tactile-button:disabled, .tactile-icon-button:disabled, .tactile-disabled, :where([data-ui="tactile"]) .ui-button:disabled, :where([data-ui="tactile"]) .ui-icon-button:disabled {
6001
6017
  opacity: .55;
6002
6018
  cursor: not-allowed;
6003
6019
  transform: none;
6004
6020
  }
6005
6021
 
6006
- .tactile-card, .tactile-panel {
6022
+ .tactile-card, .tactile-panel, :where([data-ui="tactile"]) .ui-card {
6007
6023
  background: var(--tactile-card-bg);
6008
6024
  }
6009
6025
 
6010
- .tactile-toolbar, .tactile-table-wrap, .tactile-button:not(.tactile-button-primary):not(.tactile-button-secondary):not(.tactile-button-danger):not(.tactile-button-ghost), .tactile-icon-button {
6026
+ .tactile-toolbar, .tactile-table-wrap, .tactile-button:not(.tactile-button-primary):not(.tactile-button-secondary):not(.tactile-button-danger):not(.tactile-button-ghost), .tactile-icon-button, :where([data-ui="tactile"]) .ui-toolbar, :where([data-ui="tactile"]) .ui-table-wrap, :where([data-ui="tactile"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="tactile"]) .ui-icon-button {
6011
6027
  background: var(--tactile-control-bg);
6012
6028
  }
6013
6029
 
6014
- .tactile-button, .tactile-icon-button, .tactile-badge, .tactile-nav-link {
6030
+ .tactile-button, .tactile-icon-button, .tactile-badge, .tactile-nav-link, :where([data-ui="tactile"]) .ui-button, :where([data-ui="tactile"]) .ui-icon-button, :where([data-ui="tactile"]) .ui-badge, :where([data-ui="tactile"]) .ui-nav-link {
6015
6031
  font-family: var(--tactile-font-control);
6016
6032
  }
6017
6033
 
6018
- .tactile-field {
6034
+ .tactile-field, :where([data-ui="tactile"]) .ui-field {
6019
6035
  gap: var(--tactile-space-2);
6020
6036
  flex-direction: column;
6021
6037
  display: flex;
6022
6038
  }
6023
6039
 
6024
- .tactile-label {
6040
+ .tactile-label, :where([data-ui="tactile"]) .ui-label {
6025
6041
  color: var(--tactile-text);
6026
6042
  font-size: .925rem;
6027
6043
  font-weight: 800;
6028
6044
  }
6029
6045
 
6030
- .tactile-input, .tactile-textarea, .tactile-select {
6046
+ .tactile-input, .tactile-textarea, .tactile-select, :where([data-ui="tactile"]) .ui-input, :where([data-ui="tactile"]) .ui-textarea, :where([data-ui="tactile"]) .ui-select {
6031
6047
  background: var(--tactile-surface-soft);
6032
6048
  width: 100%;
6033
6049
  min-height: 2.875rem;
@@ -6040,32 +6056,32 @@
6040
6056
  padding: .75rem 1rem;
6041
6057
  }
6042
6058
 
6043
- .tactile-textarea {
6059
+ .tactile-textarea, :where([data-ui="tactile"]) .ui-textarea {
6044
6060
  resize: vertical;
6045
6061
  min-height: 8rem;
6046
6062
  }
6047
6063
 
6048
- .tactile-input::placeholder, .tactile-textarea::placeholder {
6064
+ .tactile-input::placeholder, .tactile-textarea::placeholder, :where([data-ui="tactile"]) .ui-input::placeholder, :where([data-ui="tactile"]) .ui-textarea::placeholder {
6049
6065
  color: var(--tactile-text-muted);
6050
6066
  opacity: .82;
6051
6067
  }
6052
6068
 
6053
- .tactile-input:hover, .tactile-textarea:hover, .tactile-select:hover {
6069
+ .tactile-input:hover, .tactile-textarea:hover, .tactile-select:hover, :where([data-ui="tactile"]) .ui-input:hover, :where([data-ui="tactile"]) .ui-textarea:hover, :where([data-ui="tactile"]) .ui-select:hover {
6054
6070
  border-color: rgb(var(--tactile-primary-rgb)/.58);
6055
6071
  }
6056
6072
 
6057
- .tactile-input:focus, .tactile-textarea:focus, .tactile-select:focus {
6073
+ .tactile-input:focus, .tactile-textarea:focus, .tactile-select:focus, :where([data-ui="tactile"]) .ui-input:focus, :where([data-ui="tactile"]) .ui-textarea:focus, :where([data-ui="tactile"]) .ui-select:focus {
6058
6074
  border-color: var(--tactile-focus);
6059
6075
  box-shadow: var(--tactile-focus-ring);
6060
6076
  }
6061
6077
 
6062
- .tactile-help-text {
6078
+ .tactile-help-text, :where([data-ui="tactile"]) .ui-help-text {
6063
6079
  color: var(--tactile-text-muted);
6064
6080
  font-size: .875rem;
6065
6081
  line-height: 1.45;
6066
6082
  }
6067
6083
 
6068
- .tactile-check, .tactile-radio {
6084
+ .tactile-check, .tactile-radio, :where([data-ui="tactile"]) .ui-check, :where([data-ui="tactile"]) .ui-radio {
6069
6085
  align-items: center;
6070
6086
  gap: var(--tactile-space-2);
6071
6087
  color: var(--tactile-text);
@@ -6073,13 +6089,13 @@
6073
6089
  display: inline-flex;
6074
6090
  }
6075
6091
 
6076
- .tactile-check input, .tactile-radio input {
6092
+ .tactile-check input, .tactile-radio input, :where([data-ui="tactile"]) .ui-check input, :where([data-ui="tactile"]) .ui-radio input {
6077
6093
  opacity: 0;
6078
6094
  pointer-events: none;
6079
6095
  position: absolute;
6080
6096
  }
6081
6097
 
6082
- .tactile-check-control, .tactile-radio-control {
6098
+ .tactile-check-control, .tactile-radio-control, :where([data-ui="tactile"]) .ui-check-control, :where([data-ui="tactile"]) .ui-radio-control {
6083
6099
  background: var(--tactile-surface-soft);
6084
6100
  border: 1px solid var(--tactile-border);
6085
6101
  width: 1.35rem;
@@ -6089,28 +6105,28 @@
6089
6105
  display: inline-grid;
6090
6106
  }
6091
6107
 
6092
- .tactile-check-control {
6108
+ .tactile-check-control, :where([data-ui="tactile"]) .ui-check-control {
6093
6109
  border-radius: var(--tactile-radius-xs);
6094
6110
  }
6095
6111
 
6096
- .tactile-radio-control {
6112
+ .tactile-radio-control, :where([data-ui="tactile"]) .ui-radio-control {
6097
6113
  border-radius: 50%;
6098
6114
  }
6099
6115
 
6100
- .tactile-check input:checked + .tactile-check-control, .tactile-radio input:checked + .tactile-radio-control {
6116
+ .tactile-check input:checked + .tactile-check-control, .tactile-radio input:checked + .tactile-radio-control, :where([data-ui="tactile"]) .ui-check input:checked+.ui-check-control, :where([data-ui="tactile"]) .ui-radio input:checked+.ui-radio-control {
6101
6117
  background: var(--tactile-primary);
6102
6118
  border-color: var(--tactile-primary);
6103
6119
  box-shadow: var(--tactile-focus-ring);
6104
6120
  }
6105
6121
 
6106
- .tactile-check input:checked + .tactile-check-control:after {
6122
+ .tactile-check input:checked + .tactile-check-control:after, :where([data-ui="tactile"]) .ui-check input:checked+.ui-check-control:after {
6107
6123
  content: "✓";
6108
6124
  color: var(--tactile-on-primary);
6109
6125
  font-size: .9rem;
6110
6126
  font-weight: 900;
6111
6127
  }
6112
6128
 
6113
- .tactile-radio input:checked + .tactile-radio-control:after {
6129
+ .tactile-radio input:checked + .tactile-radio-control:after, :where([data-ui="tactile"]) .ui-radio input:checked+.ui-radio-control:after {
6114
6130
  content: "";
6115
6131
  background: var(--tactile-on-primary);
6116
6132
  border-radius: 50%;
@@ -6118,7 +6134,7 @@
6118
6134
  height: .55rem;
6119
6135
  }
6120
6136
 
6121
- .tactile-switch {
6137
+ .tactile-switch, :where([data-ui="tactile"]) .ui-switch {
6122
6138
  align-items: center;
6123
6139
  gap: var(--tactile-space-3);
6124
6140
  color: var(--tactile-text);
@@ -6126,13 +6142,13 @@
6126
6142
  display: inline-flex;
6127
6143
  }
6128
6144
 
6129
- .tactile-switch input {
6145
+ .tactile-switch input, :where([data-ui="tactile"]) .ui-switch input {
6130
6146
  opacity: 0;
6131
6147
  pointer-events: none;
6132
6148
  position: absolute;
6133
6149
  }
6134
6150
 
6135
- .tactile-switch-track {
6151
+ .tactile-switch-track, :where([data-ui="tactile"]) .ui-switch-track {
6136
6152
  background: var(--tactile-surface-soft);
6137
6153
  border: 1px solid var(--tactile-border);
6138
6154
  border-radius: var(--tactile-radius-pill);
@@ -6142,7 +6158,7 @@
6142
6158
  position: relative;
6143
6159
  }
6144
6160
 
6145
- .tactile-switch-thumb {
6161
+ .tactile-switch-thumb, :where([data-ui="tactile"]) .ui-switch-thumb {
6146
6162
  background: var(--tactile-surface-strong);
6147
6163
  border: 1px solid var(--tactile-border);
6148
6164
  width: 1.34rem;
@@ -6155,17 +6171,17 @@
6155
6171
  left: .22rem;
6156
6172
  }
6157
6173
 
6158
- .tactile-switch input:checked + .tactile-switch-track {
6174
+ .tactile-switch input:checked + .tactile-switch-track, :where([data-ui="tactile"]) .ui-switch input:checked+.ui-switch-track {
6159
6175
  background: var(--tactile-primary);
6160
6176
  border-color: var(--tactile-primary);
6161
6177
  }
6162
6178
 
6163
- .tactile-switch input:checked + .tactile-switch-track .tactile-switch-thumb {
6179
+ .tactile-switch input:checked + .tactile-switch-track .tactile-switch-thumb, :where([data-ui="tactile"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
6164
6180
  background: var(--tactile-on-primary);
6165
6181
  left: calc(100% - 1.56rem);
6166
6182
  }
6167
6183
 
6168
- .tactile-badge {
6184
+ .tactile-badge, :where([data-ui="tactile"]) .ui-badge {
6169
6185
  align-items: center;
6170
6186
  gap: var(--tactile-space-1);
6171
6187
  background: var(--tactile-surface-soft);
@@ -6180,37 +6196,37 @@
6180
6196
  display: inline-flex;
6181
6197
  }
6182
6198
 
6183
- .tactile-badge-primary {
6199
+ .tactile-badge-primary, :where([data-ui="tactile"]) .ui-badge:where([data-ui-variant="primary"]) {
6184
6200
  background: var(--tactile-primary);
6185
6201
  color: var(--tactile-on-primary);
6186
6202
  border-color: var(--tactile-primary);
6187
6203
  }
6188
6204
 
6189
- .tactile-badge-secondary {
6205
+ .tactile-badge-secondary, :where([data-ui="tactile"]) .ui-badge:where([data-ui-variant="secondary"]) {
6190
6206
  background: var(--tactile-secondary);
6191
6207
  color: var(--tactile-on-secondary);
6192
6208
  border-color: var(--tactile-secondary);
6193
6209
  }
6194
6210
 
6195
- .tactile-badge-success {
6211
+ .tactile-badge-success, :where([data-ui="tactile"]) .ui-badge:where([data-ui-variant="success"]) {
6196
6212
  background: var(--tactile-success);
6197
6213
  color: var(--tactile-on-success);
6198
6214
  border-color: var(--tactile-success);
6199
6215
  }
6200
6216
 
6201
- .tactile-badge-warning {
6217
+ .tactile-badge-warning, :where([data-ui="tactile"]) .ui-badge:where([data-ui-variant="warning"]) {
6202
6218
  background: var(--tactile-warning);
6203
6219
  color: var(--tactile-on-warning);
6204
6220
  border-color: var(--tactile-warning);
6205
6221
  }
6206
6222
 
6207
- .tactile-badge-danger {
6223
+ .tactile-badge-danger, :where([data-ui="tactile"]) .ui-badge:where([data-ui-variant="danger"]) {
6208
6224
  background: var(--tactile-danger);
6209
6225
  color: var(--tactile-on-danger);
6210
6226
  border-color: var(--tactile-danger);
6211
6227
  }
6212
6228
 
6213
- .tactile-nav {
6229
+ .tactile-nav, :where([data-ui="tactile"]) .ui-nav {
6214
6230
  align-items: center;
6215
6231
  gap: var(--tactile-space-2);
6216
6232
  padding: var(--tactile-space-2);
@@ -6222,7 +6238,7 @@
6222
6238
  display: flex;
6223
6239
  }
6224
6240
 
6225
- .tactile-nav-link {
6241
+ .tactile-nav-link, :where([data-ui="tactile"]) .ui-nav-link {
6226
6242
  min-height: 2.5rem;
6227
6243
  color: var(--tactile-text-muted);
6228
6244
  border-radius: var(--tactile-radius-pill);
@@ -6235,12 +6251,12 @@
6235
6251
  display: inline-flex;
6236
6252
  }
6237
6253
 
6238
- .tactile-nav-link:hover {
6254
+ .tactile-nav-link:hover, :where([data-ui="tactile"]) .ui-nav-link:hover {
6239
6255
  color: var(--tactile-text);
6240
6256
  background: var(--tactile-surface-soft);
6241
6257
  }
6242
6258
 
6243
- .tactile-nav-link[aria-current="page"], .tactile-nav-link.is-active {
6259
+ .tactile-nav-link[aria-current="page"], .tactile-nav-link.is-active, :where([data-ui="tactile"]) .ui-nav-link[aria-current="page"], :where([data-ui="tactile"]) .ui-nav-link.is-active {
6244
6260
  color: var(--tactile-on-primary);
6245
6261
  background: var(--tactile-primary);
6246
6262
  }
@@ -6271,7 +6287,7 @@
6271
6287
  transform: rotate(45deg);
6272
6288
  }
6273
6289
 
6274
- .tactile-progress {
6290
+ .tactile-progress, :where([data-ui="tactile"]) .ui-progress {
6275
6291
  background: var(--tactile-surface-soft);
6276
6292
  border: 1px solid var(--tactile-border);
6277
6293
  border-radius: var(--tactile-radius-pill);
@@ -6280,14 +6296,14 @@
6280
6296
  overflow: hidden;
6281
6297
  }
6282
6298
 
6283
- .tactile-progress-bar {
6299
+ .tactile-progress-bar, :where([data-ui="tactile"]) .ui-progress-bar {
6284
6300
  height: 100%;
6285
6301
  width: var(--tactile-progress-value, 50%);
6286
6302
  background: linear-gradient(90deg,var(--tactile-primary),var(--tactile-accent));
6287
6303
  border-radius: inherit;
6288
6304
  }
6289
6305
 
6290
- .tactile-alert {
6306
+ .tactile-alert, :where([data-ui="tactile"]) .ui-alert {
6291
6307
  gap: var(--tactile-space-2);
6292
6308
  padding: var(--tactile-space-4);
6293
6309
  background: var(--tactile-surface);
@@ -6298,45 +6314,45 @@
6298
6314
  display: grid;
6299
6315
  }
6300
6316
 
6301
- .tactile-alert-success {
6317
+ .tactile-alert-success, :where([data-ui="tactile"]) .ui-alert:where([data-ui-variant="success"]) {
6302
6318
  border-left-color: var(--tactile-success);
6303
6319
  }
6304
6320
 
6305
- .tactile-alert-warning {
6321
+ .tactile-alert-warning, :where([data-ui="tactile"]) .ui-alert:where([data-ui-variant="warning"]) {
6306
6322
  border-left-color: var(--tactile-warning);
6307
6323
  }
6308
6324
 
6309
- .tactile-alert-danger {
6325
+ .tactile-alert-danger, :where([data-ui="tactile"]) .ui-alert:where([data-ui-variant="danger"]) {
6310
6326
  border-left-color: var(--tactile-danger);
6311
6327
  }
6312
6328
 
6313
- .tactile-alert-title {
6329
+ .tactile-alert-title, :where([data-ui="tactile"]) .ui-alert-title {
6314
6330
  margin: 0;
6315
6331
  font-weight: 900;
6316
6332
  }
6317
6333
 
6318
- .tactile-alert-body {
6334
+ .tactile-alert-body, :where([data-ui="tactile"]) .ui-alert-body {
6319
6335
  color: var(--tactile-text-muted);
6320
6336
  margin: 0;
6321
6337
  line-height: 1.55;
6322
6338
  }
6323
6339
 
6324
- .tactile-table-wrap {
6340
+ .tactile-table-wrap, :where([data-ui="tactile"]) .ui-table-wrap {
6325
6341
  overflow: auto;
6326
6342
  }
6327
6343
 
6328
- .tactile-table {
6344
+ .tactile-table, :where([data-ui="tactile"]) .ui-table {
6329
6345
  border-collapse: collapse;
6330
6346
  width: 100%;
6331
6347
  }
6332
6348
 
6333
- .tactile-table th, .tactile-table td {
6349
+ .tactile-table th, .tactile-table td, :where([data-ui="tactile"]) .ui-table th, :where([data-ui="tactile"]) .ui-table td {
6334
6350
  text-align: left;
6335
6351
  border-bottom: 1px solid var(--tactile-border);
6336
6352
  padding: .95rem 1rem;
6337
6353
  }
6338
6354
 
6339
- .tactile-table th {
6355
+ .tactile-table th, :where([data-ui="tactile"]) .ui-table th {
6340
6356
  color: var(--tactile-text);
6341
6357
  text-transform: uppercase;
6342
6358
  letter-spacing: .08em;
@@ -6345,11 +6361,11 @@
6345
6361
  font-weight: 900;
6346
6362
  }
6347
6363
 
6348
- .tactile-table td {
6364
+ .tactile-table td, :where([data-ui="tactile"]) .ui-table td {
6349
6365
  color: var(--tactile-text-muted);
6350
6366
  }
6351
6367
 
6352
- .tactile-table tr:hover td {
6368
+ .tactile-table tr:hover td, :where([data-ui="tactile"]) .ui-table tr:hover td {
6353
6369
  background: rgb(var(--tactile-primary-rgb)/.045);
6354
6370
  }
6355
6371
 
@@ -6482,12 +6498,12 @@
6482
6498
  inline-size: 3rem;
6483
6499
  }
6484
6500
 
6485
- .tactile-button[aria-busy="true"], .tactile-icon-button[aria-busy="true"], [data-ui="tactile"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
6501
+ .tactile-button[aria-busy="true"], .tactile-icon-button[aria-busy="true"], [data-ui="tactile"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="tactile"]) .ui-button[aria-busy="true"], :where([data-ui="tactile"]) .ui-icon-button[aria-busy="true"] {
6486
6502
  cursor: progress;
6487
6503
  gap: .55rem;
6488
6504
  }
6489
6505
 
6490
- .tactile-button[aria-busy="true"]:after, .tactile-icon-button[aria-busy="true"]:after, [data-ui="tactile"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
6506
+ .tactile-button[aria-busy="true"]:after, .tactile-icon-button[aria-busy="true"]:after, [data-ui="tactile"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="tactile"]) .ui-button[aria-busy="true"]:after, :where([data-ui="tactile"]) .ui-icon-button[aria-busy="true"]:after {
6491
6507
  content: "";
6492
6508
  border: .16em solid rgb(var(--tactile-primary-text-rgb)/.42);
6493
6509
  border-block-start-color: currentColor;
@@ -6713,7 +6729,7 @@
6713
6729
  background-size: var(--neo-theme-bg-size);
6714
6730
  }
6715
6731
 
6716
- .neo-title, .neo-heading, .neo-kicker, .neo-button, .neo-badge, .neo-nav-link {
6732
+ .neo-title, .neo-heading, .neo-kicker, .neo-button, .neo-badge, .neo-nav-link, :where([data-ui="neumorphism"]) .ui-button, :where([data-ui="neumorphism"]) .ui-badge, :where([data-ui="neumorphism"]) .ui-nav-link {
6717
6733
  font-family: var(--neo-font-heading);
6718
6734
  }
6719
6735
 
@@ -6759,7 +6775,7 @@
6759
6775
  height: 1px;
6760
6776
  }
6761
6777
 
6762
- .neo-surface, .neo-card, .neo-panel, .neo-toolbar, .neo-table-wrap {
6778
+ .neo-surface, .neo-card, .neo-panel, .neo-toolbar, .neo-table-wrap, :where([data-ui="neumorphism"]) .ui-card, :where([data-ui="neumorphism"]) .ui-toolbar, :where([data-ui="neumorphism"]) .ui-table-wrap {
6763
6779
  background: linear-gradient(180deg,#ffffff2e,#ffffff08),linear-gradient(135deg,rgb(var(--neo-primary-rgb)/.07),transparent 46%),var(--neo-surface);
6764
6780
  color: var(--neo-text);
6765
6781
  border: 1px solid var(--neo-border);
@@ -6769,11 +6785,11 @@
6769
6785
  position: relative;
6770
6786
  }
6771
6787
 
6772
- .neo-card, .neo-panel {
6788
+ .neo-card, .neo-panel, :where([data-ui="neumorphism"]) .ui-card {
6773
6789
  padding: var(--neo-space-6);
6774
6790
  }
6775
6791
 
6776
- .neo-toolbar {
6792
+ .neo-toolbar, :where([data-ui="neumorphism"]) .ui-toolbar {
6777
6793
  justify-content: space-between;
6778
6794
  align-items: center;
6779
6795
  gap: var(--neo-space-4);
@@ -6806,7 +6822,7 @@
6806
6822
  transform: translateY(-2px);
6807
6823
  }
6808
6824
 
6809
- .neo-button, .neo-icon-button {
6825
+ .neo-button, .neo-icon-button, :where([data-ui="neumorphism"]) .ui-button, :where([data-ui="neumorphism"]) .ui-icon-button {
6810
6826
  appearance: none;
6811
6827
  justify-content: center;
6812
6828
  align-items: center;
@@ -6830,87 +6846,87 @@
6830
6846
  display: inline-flex;
6831
6847
  }
6832
6848
 
6833
- .neo-button:hover, .neo-icon-button:hover {
6849
+ .neo-button:hover, .neo-icon-button:hover, :where([data-ui="neumorphism"]) .ui-button:hover, :where([data-ui="neumorphism"]) .ui-icon-button:hover {
6834
6850
  border-color: var(--neo-primary);
6835
6851
  transform: translateY(-1px);
6836
6852
  }
6837
6853
 
6838
- .neo-button:active, .neo-icon-button:active, .neo-button[aria-pressed="true"], .neo-icon-button[aria-pressed="true"], .neo-button.is-active, .neo-icon-button.is-active {
6854
+ .neo-button:active, .neo-icon-button:active, .neo-button[aria-pressed="true"], .neo-icon-button[aria-pressed="true"], .neo-button.is-active, .neo-icon-button.is-active, :where([data-ui="neumorphism"]) .ui-button:active, :where([data-ui="neumorphism"]) .ui-icon-button:active, :where([data-ui="neumorphism"]) .ui-button[aria-pressed="true"], :where([data-ui="neumorphism"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="neumorphism"]) .ui-button.is-active, :where([data-ui="neumorphism"]) .ui-icon-button.is-active {
6839
6855
  transform: translateY(1px);
6840
6856
  box-shadow: inset 0 3px 10px #0000002e;
6841
6857
  }
6842
6858
 
6843
- .neo-button-primary {
6859
+ .neo-button-primary, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="primary"]) {
6844
6860
  background: var(--neo-primary);
6845
6861
  color: var(--neo-on-primary);
6846
6862
  border-color: var(--neo-primary);
6847
6863
  }
6848
6864
 
6849
- .neo-button-primary:hover {
6865
+ .neo-button-primary:hover, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="primary"]):hover {
6850
6866
  background: var(--neo-primary-hover);
6851
6867
  border-color: var(--neo-primary-hover);
6852
6868
  }
6853
6869
 
6854
- .neo-button-secondary {
6870
+ .neo-button-secondary, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="secondary"]) {
6855
6871
  background: var(--neo-secondary);
6856
6872
  color: var(--neo-on-secondary);
6857
6873
  border-color: var(--neo-secondary);
6858
6874
  }
6859
6875
 
6860
- .neo-button-secondary:hover {
6876
+ .neo-button-secondary:hover, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="secondary"]):hover {
6861
6877
  background: var(--neo-secondary-hover);
6862
6878
  border-color: var(--neo-secondary-hover);
6863
6879
  }
6864
6880
 
6865
- .neo-button-danger {
6881
+ .neo-button-danger, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="danger"]) {
6866
6882
  background: var(--neo-danger);
6867
6883
  color: var(--neo-on-danger);
6868
6884
  border-color: var(--neo-danger);
6869
6885
  }
6870
6886
 
6871
- .neo-button-ghost {
6887
+ .neo-button-ghost, :where([data-ui="neumorphism"]) .ui-button:where([data-ui-variant="ghost"]) {
6872
6888
  color: var(--neo-text);
6873
6889
  box-shadow: none;
6874
6890
  background: none;
6875
6891
  }
6876
6892
 
6877
- .neo-icon-button {
6893
+ .neo-icon-button, :where([data-ui="neumorphism"]) .ui-icon-button {
6878
6894
  border-radius: var(--neo-radius-pill);
6879
6895
  width: 2.75rem;
6880
6896
  padding: 0;
6881
6897
  }
6882
6898
 
6883
- .neo-button:disabled, .neo-icon-button:disabled, .neo-disabled {
6899
+ .neo-button:disabled, .neo-icon-button:disabled, .neo-disabled, :where([data-ui="neumorphism"]) .ui-button:disabled, :where([data-ui="neumorphism"]) .ui-icon-button:disabled {
6884
6900
  opacity: .55;
6885
6901
  cursor: not-allowed;
6886
6902
  transform: none;
6887
6903
  }
6888
6904
 
6889
- .neo-card, .neo-panel {
6905
+ .neo-card, .neo-panel, :where([data-ui="neumorphism"]) .ui-card {
6890
6906
  background: var(--neo-card-bg);
6891
6907
  }
6892
6908
 
6893
- .neo-toolbar, .neo-table-wrap, .neo-button:not(.neo-button-primary):not(.neo-button-secondary):not(.neo-button-danger):not(.neo-button-ghost), .neo-icon-button {
6909
+ .neo-toolbar, .neo-table-wrap, .neo-button:not(.neo-button-primary):not(.neo-button-secondary):not(.neo-button-danger):not(.neo-button-ghost), .neo-icon-button, :where([data-ui="neumorphism"]) .ui-toolbar, :where([data-ui="neumorphism"]) .ui-table-wrap, :where([data-ui="neumorphism"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="neumorphism"]) .ui-icon-button {
6894
6910
  background: var(--neo-control-bg);
6895
6911
  }
6896
6912
 
6897
- .neo-button, .neo-icon-button, .neo-badge, .neo-nav-link {
6913
+ .neo-button, .neo-icon-button, .neo-badge, .neo-nav-link, :where([data-ui="neumorphism"]) .ui-button, :where([data-ui="neumorphism"]) .ui-icon-button, :where([data-ui="neumorphism"]) .ui-badge, :where([data-ui="neumorphism"]) .ui-nav-link {
6898
6914
  font-family: var(--neo-font-control);
6899
6915
  }
6900
6916
 
6901
- .neo-field {
6917
+ .neo-field, :where([data-ui="neumorphism"]) .ui-field {
6902
6918
  gap: var(--neo-space-2);
6903
6919
  flex-direction: column;
6904
6920
  display: flex;
6905
6921
  }
6906
6922
 
6907
- .neo-label {
6923
+ .neo-label, :where([data-ui="neumorphism"]) .ui-label {
6908
6924
  color: var(--neo-text);
6909
6925
  font-size: .925rem;
6910
6926
  font-weight: 800;
6911
6927
  }
6912
6928
 
6913
- .neo-input, .neo-textarea, .neo-select {
6929
+ .neo-input, .neo-textarea, .neo-select, :where([data-ui="neumorphism"]) .ui-input, :where([data-ui="neumorphism"]) .ui-textarea, :where([data-ui="neumorphism"]) .ui-select {
6914
6930
  background: var(--neo-surface-soft);
6915
6931
  width: 100%;
6916
6932
  min-height: 2.875rem;
@@ -6923,32 +6939,32 @@
6923
6939
  padding: .75rem 1rem;
6924
6940
  }
6925
6941
 
6926
- .neo-textarea {
6942
+ .neo-textarea, :where([data-ui="neumorphism"]) .ui-textarea {
6927
6943
  resize: vertical;
6928
6944
  min-height: 8rem;
6929
6945
  }
6930
6946
 
6931
- .neo-input::placeholder, .neo-textarea::placeholder {
6947
+ .neo-input::placeholder, .neo-textarea::placeholder, :where([data-ui="neumorphism"]) .ui-input::placeholder, :where([data-ui="neumorphism"]) .ui-textarea::placeholder {
6932
6948
  color: var(--neo-text-muted);
6933
6949
  opacity: .82;
6934
6950
  }
6935
6951
 
6936
- .neo-input:hover, .neo-textarea:hover, .neo-select:hover {
6952
+ .neo-input:hover, .neo-textarea:hover, .neo-select:hover, :where([data-ui="neumorphism"]) .ui-input:hover, :where([data-ui="neumorphism"]) .ui-textarea:hover, :where([data-ui="neumorphism"]) .ui-select:hover {
6937
6953
  border-color: rgb(var(--neo-primary-rgb)/.58);
6938
6954
  }
6939
6955
 
6940
- .neo-input:focus, .neo-textarea:focus, .neo-select:focus {
6956
+ .neo-input:focus, .neo-textarea:focus, .neo-select:focus, :where([data-ui="neumorphism"]) .ui-input:focus, :where([data-ui="neumorphism"]) .ui-textarea:focus, :where([data-ui="neumorphism"]) .ui-select:focus {
6941
6957
  border-color: var(--neo-focus);
6942
6958
  box-shadow: var(--neo-focus-ring);
6943
6959
  }
6944
6960
 
6945
- .neo-help-text {
6961
+ .neo-help-text, :where([data-ui="neumorphism"]) .ui-help-text {
6946
6962
  color: var(--neo-text-muted);
6947
6963
  font-size: .875rem;
6948
6964
  line-height: 1.45;
6949
6965
  }
6950
6966
 
6951
- .neo-check, .neo-radio {
6967
+ .neo-check, .neo-radio, :where([data-ui="neumorphism"]) .ui-check, :where([data-ui="neumorphism"]) .ui-radio {
6952
6968
  align-items: center;
6953
6969
  gap: var(--neo-space-2);
6954
6970
  color: var(--neo-text);
@@ -6956,13 +6972,13 @@
6956
6972
  display: inline-flex;
6957
6973
  }
6958
6974
 
6959
- .neo-check input, .neo-radio input {
6975
+ .neo-check input, .neo-radio input, :where([data-ui="neumorphism"]) .ui-check input, :where([data-ui="neumorphism"]) .ui-radio input {
6960
6976
  opacity: 0;
6961
6977
  pointer-events: none;
6962
6978
  position: absolute;
6963
6979
  }
6964
6980
 
6965
- .neo-check-control, .neo-radio-control {
6981
+ .neo-check-control, .neo-radio-control, :where([data-ui="neumorphism"]) .ui-check-control, :where([data-ui="neumorphism"]) .ui-radio-control {
6966
6982
  background: var(--neo-surface-soft);
6967
6983
  border: 1px solid var(--neo-border);
6968
6984
  width: 1.35rem;
@@ -6972,28 +6988,28 @@
6972
6988
  display: inline-grid;
6973
6989
  }
6974
6990
 
6975
- .neo-check-control {
6991
+ .neo-check-control, :where([data-ui="neumorphism"]) .ui-check-control {
6976
6992
  border-radius: var(--neo-radius-xs);
6977
6993
  }
6978
6994
 
6979
- .neo-radio-control {
6995
+ .neo-radio-control, :where([data-ui="neumorphism"]) .ui-radio-control {
6980
6996
  border-radius: 50%;
6981
6997
  }
6982
6998
 
6983
- .neo-check input:checked + .neo-check-control, .neo-radio input:checked + .neo-radio-control {
6999
+ .neo-check input:checked + .neo-check-control, .neo-radio input:checked + .neo-radio-control, :where([data-ui="neumorphism"]) .ui-check input:checked+.ui-check-control, :where([data-ui="neumorphism"]) .ui-radio input:checked+.ui-radio-control {
6984
7000
  background: var(--neo-primary);
6985
7001
  border-color: var(--neo-primary);
6986
7002
  box-shadow: var(--neo-focus-ring);
6987
7003
  }
6988
7004
 
6989
- .neo-check input:checked + .neo-check-control:after {
7005
+ .neo-check input:checked + .neo-check-control:after, :where([data-ui="neumorphism"]) .ui-check input:checked+.ui-check-control:after {
6990
7006
  content: "✓";
6991
7007
  color: var(--neo-on-primary);
6992
7008
  font-size: .9rem;
6993
7009
  font-weight: 900;
6994
7010
  }
6995
7011
 
6996
- .neo-radio input:checked + .neo-radio-control:after {
7012
+ .neo-radio input:checked + .neo-radio-control:after, :where([data-ui="neumorphism"]) .ui-radio input:checked+.ui-radio-control:after {
6997
7013
  content: "";
6998
7014
  background: var(--neo-on-primary);
6999
7015
  border-radius: 50%;
@@ -7001,7 +7017,7 @@
7001
7017
  height: .55rem;
7002
7018
  }
7003
7019
 
7004
- .neo-switch {
7020
+ .neo-switch, :where([data-ui="neumorphism"]) .ui-switch {
7005
7021
  align-items: center;
7006
7022
  gap: var(--neo-space-3);
7007
7023
  color: var(--neo-text);
@@ -7009,13 +7025,13 @@
7009
7025
  display: inline-flex;
7010
7026
  }
7011
7027
 
7012
- .neo-switch input {
7028
+ .neo-switch input, :where([data-ui="neumorphism"]) .ui-switch input {
7013
7029
  opacity: 0;
7014
7030
  pointer-events: none;
7015
7031
  position: absolute;
7016
7032
  }
7017
7033
 
7018
- .neo-switch-track {
7034
+ .neo-switch-track, :where([data-ui="neumorphism"]) .ui-switch-track {
7019
7035
  background: var(--neo-surface-soft);
7020
7036
  border: 1px solid var(--neo-border);
7021
7037
  border-radius: var(--neo-radius-pill);
@@ -7025,7 +7041,7 @@
7025
7041
  position: relative;
7026
7042
  }
7027
7043
 
7028
- .neo-switch-thumb {
7044
+ .neo-switch-thumb, :where([data-ui="neumorphism"]) .ui-switch-thumb {
7029
7045
  background: var(--neo-surface-strong);
7030
7046
  border: 1px solid var(--neo-border);
7031
7047
  width: 1.34rem;
@@ -7038,17 +7054,17 @@
7038
7054
  left: .22rem;
7039
7055
  }
7040
7056
 
7041
- .neo-switch input:checked + .neo-switch-track {
7057
+ .neo-switch input:checked + .neo-switch-track, :where([data-ui="neumorphism"]) .ui-switch input:checked+.ui-switch-track {
7042
7058
  background: var(--neo-primary);
7043
7059
  border-color: var(--neo-primary);
7044
7060
  }
7045
7061
 
7046
- .neo-switch input:checked + .neo-switch-track .neo-switch-thumb {
7062
+ .neo-switch input:checked + .neo-switch-track .neo-switch-thumb, :where([data-ui="neumorphism"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
7047
7063
  background: var(--neo-on-primary);
7048
7064
  left: calc(100% - 1.56rem);
7049
7065
  }
7050
7066
 
7051
- .neo-badge {
7067
+ .neo-badge, :where([data-ui="neumorphism"]) .ui-badge {
7052
7068
  align-items: center;
7053
7069
  gap: var(--neo-space-1);
7054
7070
  background: var(--neo-surface-soft);
@@ -7063,37 +7079,37 @@
7063
7079
  display: inline-flex;
7064
7080
  }
7065
7081
 
7066
- .neo-badge-primary {
7082
+ .neo-badge-primary, :where([data-ui="neumorphism"]) .ui-badge:where([data-ui-variant="primary"]) {
7067
7083
  background: var(--neo-primary);
7068
7084
  color: var(--neo-on-primary);
7069
7085
  border-color: var(--neo-primary);
7070
7086
  }
7071
7087
 
7072
- .neo-badge-secondary {
7088
+ .neo-badge-secondary, :where([data-ui="neumorphism"]) .ui-badge:where([data-ui-variant="secondary"]) {
7073
7089
  background: var(--neo-secondary);
7074
7090
  color: var(--neo-on-secondary);
7075
7091
  border-color: var(--neo-secondary);
7076
7092
  }
7077
7093
 
7078
- .neo-badge-success {
7094
+ .neo-badge-success, :where([data-ui="neumorphism"]) .ui-badge:where([data-ui-variant="success"]) {
7079
7095
  background: var(--neo-success);
7080
7096
  color: var(--neo-on-success);
7081
7097
  border-color: var(--neo-success);
7082
7098
  }
7083
7099
 
7084
- .neo-badge-warning {
7100
+ .neo-badge-warning, :where([data-ui="neumorphism"]) .ui-badge:where([data-ui-variant="warning"]) {
7085
7101
  background: var(--neo-warning);
7086
7102
  color: var(--neo-on-warning);
7087
7103
  border-color: var(--neo-warning);
7088
7104
  }
7089
7105
 
7090
- .neo-badge-danger {
7106
+ .neo-badge-danger, :where([data-ui="neumorphism"]) .ui-badge:where([data-ui-variant="danger"]) {
7091
7107
  background: var(--neo-danger);
7092
7108
  color: var(--neo-on-danger);
7093
7109
  border-color: var(--neo-danger);
7094
7110
  }
7095
7111
 
7096
- .neo-nav {
7112
+ .neo-nav, :where([data-ui="neumorphism"]) .ui-nav {
7097
7113
  align-items: center;
7098
7114
  gap: var(--neo-space-2);
7099
7115
  padding: var(--neo-space-2);
@@ -7105,7 +7121,7 @@
7105
7121
  display: flex;
7106
7122
  }
7107
7123
 
7108
- .neo-nav-link {
7124
+ .neo-nav-link, :where([data-ui="neumorphism"]) .ui-nav-link {
7109
7125
  min-height: 2.5rem;
7110
7126
  color: var(--neo-text-muted);
7111
7127
  border-radius: var(--neo-radius-pill);
@@ -7118,12 +7134,12 @@
7118
7134
  display: inline-flex;
7119
7135
  }
7120
7136
 
7121
- .neo-nav-link:hover {
7137
+ .neo-nav-link:hover, :where([data-ui="neumorphism"]) .ui-nav-link:hover {
7122
7138
  color: var(--neo-text);
7123
7139
  background: var(--neo-surface-soft);
7124
7140
  }
7125
7141
 
7126
- .neo-nav-link[aria-current="page"], .neo-nav-link.is-active {
7142
+ .neo-nav-link[aria-current="page"], .neo-nav-link.is-active, :where([data-ui="neumorphism"]) .ui-nav-link[aria-current="page"], :where([data-ui="neumorphism"]) .ui-nav-link.is-active {
7127
7143
  color: var(--neo-on-primary);
7128
7144
  background: var(--neo-primary);
7129
7145
  }
@@ -7153,7 +7169,7 @@
7153
7169
  box-shadow: inset .12rem .12rem .24rem #0000001f;
7154
7170
  }
7155
7171
 
7156
- .neo-progress {
7172
+ .neo-progress, :where([data-ui="neumorphism"]) .ui-progress {
7157
7173
  background: var(--neo-surface-soft);
7158
7174
  border: 1px solid var(--neo-border);
7159
7175
  border-radius: var(--neo-radius-pill);
@@ -7162,14 +7178,14 @@
7162
7178
  overflow: hidden;
7163
7179
  }
7164
7180
 
7165
- .neo-progress-bar {
7181
+ .neo-progress-bar, :where([data-ui="neumorphism"]) .ui-progress-bar {
7166
7182
  height: 100%;
7167
7183
  width: var(--neo-progress-value, 50%);
7168
7184
  background: linear-gradient(90deg,var(--neo-primary),var(--neo-accent));
7169
7185
  border-radius: inherit;
7170
7186
  }
7171
7187
 
7172
- .neo-alert {
7188
+ .neo-alert, :where([data-ui="neumorphism"]) .ui-alert {
7173
7189
  gap: var(--neo-space-2);
7174
7190
  padding: var(--neo-space-4);
7175
7191
  background: var(--neo-surface);
@@ -7180,45 +7196,45 @@
7180
7196
  display: grid;
7181
7197
  }
7182
7198
 
7183
- .neo-alert-success {
7199
+ .neo-alert-success, :where([data-ui="neumorphism"]) .ui-alert:where([data-ui-variant="success"]) {
7184
7200
  border-left-color: var(--neo-success);
7185
7201
  }
7186
7202
 
7187
- .neo-alert-warning {
7203
+ .neo-alert-warning, :where([data-ui="neumorphism"]) .ui-alert:where([data-ui-variant="warning"]) {
7188
7204
  border-left-color: var(--neo-warning);
7189
7205
  }
7190
7206
 
7191
- .neo-alert-danger {
7207
+ .neo-alert-danger, :where([data-ui="neumorphism"]) .ui-alert:where([data-ui-variant="danger"]) {
7192
7208
  border-left-color: var(--neo-danger);
7193
7209
  }
7194
7210
 
7195
- .neo-alert-title {
7211
+ .neo-alert-title, :where([data-ui="neumorphism"]) .ui-alert-title {
7196
7212
  margin: 0;
7197
7213
  font-weight: 900;
7198
7214
  }
7199
7215
 
7200
- .neo-alert-body {
7216
+ .neo-alert-body, :where([data-ui="neumorphism"]) .ui-alert-body {
7201
7217
  color: var(--neo-text-muted);
7202
7218
  margin: 0;
7203
7219
  line-height: 1.55;
7204
7220
  }
7205
7221
 
7206
- .neo-table-wrap {
7222
+ .neo-table-wrap, :where([data-ui="neumorphism"]) .ui-table-wrap {
7207
7223
  overflow: auto;
7208
7224
  }
7209
7225
 
7210
- .neo-table {
7226
+ .neo-table, :where([data-ui="neumorphism"]) .ui-table {
7211
7227
  border-collapse: collapse;
7212
7228
  width: 100%;
7213
7229
  }
7214
7230
 
7215
- .neo-table th, .neo-table td {
7231
+ .neo-table th, .neo-table td, :where([data-ui="neumorphism"]) .ui-table th, :where([data-ui="neumorphism"]) .ui-table td {
7216
7232
  text-align: left;
7217
7233
  border-bottom: 1px solid var(--neo-border);
7218
7234
  padding: .95rem 1rem;
7219
7235
  }
7220
7236
 
7221
- .neo-table th {
7237
+ .neo-table th, :where([data-ui="neumorphism"]) .ui-table th {
7222
7238
  color: var(--neo-text);
7223
7239
  text-transform: uppercase;
7224
7240
  letter-spacing: .08em;
@@ -7227,11 +7243,11 @@
7227
7243
  font-weight: 900;
7228
7244
  }
7229
7245
 
7230
- .neo-table td {
7246
+ .neo-table td, :where([data-ui="neumorphism"]) .ui-table td {
7231
7247
  color: var(--neo-text-muted);
7232
7248
  }
7233
7249
 
7234
- .neo-table tr:hover td {
7250
+ .neo-table tr:hover td, :where([data-ui="neumorphism"]) .ui-table tr:hover td {
7235
7251
  background: rgb(var(--neo-primary-rgb)/.045);
7236
7252
  }
7237
7253
 
@@ -7337,7 +7353,7 @@
7337
7353
  background: var(--neo-bg);
7338
7354
  }
7339
7355
 
7340
- .neo-surface, .neo-card, .neo-panel, .neo-toolbar, .neo-table-wrap {
7356
+ .neo-surface, .neo-card, .neo-panel, .neo-toolbar, .neo-table-wrap, :where([data-ui="neumorphism"]) .ui-card, :where([data-ui="neumorphism"]) .ui-toolbar, :where([data-ui="neumorphism"]) .ui-table-wrap {
7341
7357
  border-color: rgb(var(--neo-border-rgb)/.14);
7342
7358
  box-shadow: 10px 10px 22px var(--neo-nm-dark),-10px -10px 22px var(--neo-nm-light);
7343
7359
  }
@@ -7346,15 +7362,15 @@
7346
7362
  box-shadow: 16px 16px 32px var(--neo-nm-dark),-16px -16px 32px var(--neo-nm-light);
7347
7363
  }
7348
7364
 
7349
- .neo-well, .neo-inset, .neo-input, .neo-textarea, .neo-select, .neo-progress {
7365
+ .neo-well, .neo-inset, .neo-input, .neo-textarea, .neo-select, .neo-progress, :where([data-ui="neumorphism"]) .ui-input, :where([data-ui="neumorphism"]) .ui-textarea, :where([data-ui="neumorphism"]) .ui-select, :where([data-ui="neumorphism"]) .ui-progress {
7350
7366
  box-shadow: inset 5px 5px 11px var(--neo-nm-dark),inset -5px -5px 11px var(--neo-nm-light);
7351
7367
  }
7352
7368
 
7353
- .neo-button, .neo-icon-button, .neo-badge, .neo-nav {
7369
+ .neo-button, .neo-icon-button, .neo-badge, .neo-nav, :where([data-ui="neumorphism"]) .ui-button, :where([data-ui="neumorphism"]) .ui-icon-button, :where([data-ui="neumorphism"]) .ui-badge, :where([data-ui="neumorphism"]) .ui-nav {
7354
7370
  box-shadow: 5px 5px 11px var(--neo-nm-dark),-5px -5px 11px var(--neo-nm-light);
7355
7371
  }
7356
7372
 
7357
- .neo-button:active, .neo-icon-button:active, .neo-button.is-active, .neo-icon-button.is-active, .neo-nav-link.is-active {
7373
+ .neo-button:active, .neo-icon-button:active, .neo-button.is-active, .neo-icon-button.is-active, .neo-nav-link.is-active, :where([data-ui="neumorphism"]) .ui-button:active, :where([data-ui="neumorphism"]) .ui-icon-button:active, :where([data-ui="neumorphism"]) .ui-button.is-active, :where([data-ui="neumorphism"]) .ui-icon-button.is-active, :where([data-ui="neumorphism"]) .ui-nav-link.is-active {
7358
7374
  box-shadow: inset 4px 4px 9px var(--neo-nm-dark),inset -4px -4px 9px var(--neo-nm-light);
7359
7375
  }
7360
7376
 
@@ -7384,12 +7400,12 @@
7384
7400
  inline-size: 3rem;
7385
7401
  }
7386
7402
 
7387
- .neo-button[aria-busy="true"], .neo-icon-button[aria-busy="true"], [data-ui="neumorphism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
7403
+ .neo-button[aria-busy="true"], .neo-icon-button[aria-busy="true"], [data-ui="neumorphism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="neumorphism"]) .ui-button[aria-busy="true"], :where([data-ui="neumorphism"]) .ui-icon-button[aria-busy="true"] {
7388
7404
  cursor: progress;
7389
7405
  gap: .55rem;
7390
7406
  }
7391
7407
 
7392
- .neo-button[aria-busy="true"]:after, .neo-icon-button[aria-busy="true"]:after, [data-ui="neumorphism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
7408
+ .neo-button[aria-busy="true"]:after, .neo-icon-button[aria-busy="true"]:after, [data-ui="neumorphism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="neumorphism"]) .ui-button[aria-busy="true"]:after, :where([data-ui="neumorphism"]) .ui-icon-button[aria-busy="true"]:after {
7393
7409
  content: "";
7394
7410
  border: .16em solid rgb(var(--neo-primary-text-rgb)/.42);
7395
7411
  border-block-start-color: currentColor;
@@ -7615,7 +7631,7 @@
7615
7631
  background-size: var(--retro-theme-bg-size);
7616
7632
  }
7617
7633
 
7618
- .retro-title, .retro-heading, .retro-kicker, .retro-button, .retro-badge, .retro-nav-link {
7634
+ .retro-title, .retro-heading, .retro-kicker, .retro-button, .retro-badge, .retro-nav-link, :where([data-ui="retrofuturism"]) .ui-button, :where([data-ui="retrofuturism"]) .ui-badge, :where([data-ui="retrofuturism"]) .ui-nav-link {
7619
7635
  font-family: var(--retro-font-heading);
7620
7636
  }
7621
7637
 
@@ -7661,7 +7677,7 @@
7661
7677
  height: 1px;
7662
7678
  }
7663
7679
 
7664
- .retro-surface, .retro-card, .retro-panel, .retro-toolbar, .retro-table-wrap {
7680
+ .retro-surface, .retro-card, .retro-panel, .retro-toolbar, .retro-table-wrap, :where([data-ui="retrofuturism"]) .ui-card, :where([data-ui="retrofuturism"]) .ui-toolbar, :where([data-ui="retrofuturism"]) .ui-table-wrap {
7665
7681
  background: linear-gradient(135deg,rgb(var(--retro-primary-rgb)/.08),transparent 36%),linear-gradient(180deg,#ffffff14,#fff0),var(--retro-surface);
7666
7682
  color: var(--retro-text);
7667
7683
  border: 1px solid var(--retro-border);
@@ -7671,11 +7687,11 @@
7671
7687
  position: relative;
7672
7688
  }
7673
7689
 
7674
- .retro-card, .retro-panel {
7690
+ .retro-card, .retro-panel, :where([data-ui="retrofuturism"]) .ui-card {
7675
7691
  padding: var(--retro-space-6);
7676
7692
  }
7677
7693
 
7678
- .retro-toolbar {
7694
+ .retro-toolbar, :where([data-ui="retrofuturism"]) .ui-toolbar {
7679
7695
  justify-content: space-between;
7680
7696
  align-items: center;
7681
7697
  gap: var(--retro-space-4);
@@ -7708,7 +7724,7 @@
7708
7724
  transform: translateY(-3px) scale(1.005);
7709
7725
  }
7710
7726
 
7711
- .retro-button, .retro-icon-button {
7727
+ .retro-button, .retro-icon-button, :where([data-ui="retrofuturism"]) .ui-button, :where([data-ui="retrofuturism"]) .ui-icon-button {
7712
7728
  appearance: none;
7713
7729
  justify-content: center;
7714
7730
  align-items: center;
@@ -7732,87 +7748,87 @@
7732
7748
  display: inline-flex;
7733
7749
  }
7734
7750
 
7735
- .retro-button:hover, .retro-icon-button:hover {
7751
+ .retro-button:hover, .retro-icon-button:hover, :where([data-ui="retrofuturism"]) .ui-button:hover, :where([data-ui="retrofuturism"]) .ui-icon-button:hover {
7736
7752
  border-color: var(--retro-primary);
7737
7753
  transform: translateY(-1px);
7738
7754
  }
7739
7755
 
7740
- .retro-button:active, .retro-icon-button:active, .retro-button[aria-pressed="true"], .retro-icon-button[aria-pressed="true"], .retro-button.is-active, .retro-icon-button.is-active {
7756
+ .retro-button:active, .retro-icon-button:active, .retro-button[aria-pressed="true"], .retro-icon-button[aria-pressed="true"], .retro-button.is-active, .retro-icon-button.is-active, :where([data-ui="retrofuturism"]) .ui-button:active, :where([data-ui="retrofuturism"]) .ui-icon-button:active, :where([data-ui="retrofuturism"]) .ui-button[aria-pressed="true"], :where([data-ui="retrofuturism"]) .ui-icon-button[aria-pressed="true"], :where([data-ui="retrofuturism"]) .ui-button.is-active, :where([data-ui="retrofuturism"]) .ui-icon-button.is-active {
7741
7757
  transform: translateY(1px);
7742
7758
  box-shadow: inset 0 3px 10px #0000002e;
7743
7759
  }
7744
7760
 
7745
- .retro-button-primary {
7761
+ .retro-button-primary, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="primary"]) {
7746
7762
  background: var(--retro-primary);
7747
7763
  color: var(--retro-on-primary);
7748
7764
  border-color: var(--retro-primary);
7749
7765
  }
7750
7766
 
7751
- .retro-button-primary:hover {
7767
+ .retro-button-primary:hover, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="primary"]):hover {
7752
7768
  background: var(--retro-primary-hover);
7753
7769
  border-color: var(--retro-primary-hover);
7754
7770
  }
7755
7771
 
7756
- .retro-button-secondary {
7772
+ .retro-button-secondary, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="secondary"]) {
7757
7773
  background: var(--retro-secondary);
7758
7774
  color: var(--retro-on-secondary);
7759
7775
  border-color: var(--retro-secondary);
7760
7776
  }
7761
7777
 
7762
- .retro-button-secondary:hover {
7778
+ .retro-button-secondary:hover, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="secondary"]):hover {
7763
7779
  background: var(--retro-secondary-hover);
7764
7780
  border-color: var(--retro-secondary-hover);
7765
7781
  }
7766
7782
 
7767
- .retro-button-danger {
7783
+ .retro-button-danger, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="danger"]) {
7768
7784
  background: var(--retro-danger);
7769
7785
  color: var(--retro-on-danger);
7770
7786
  border-color: var(--retro-danger);
7771
7787
  }
7772
7788
 
7773
- .retro-button-ghost {
7789
+ .retro-button-ghost, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="ghost"]) {
7774
7790
  color: var(--retro-text);
7775
7791
  box-shadow: none;
7776
7792
  background: none;
7777
7793
  }
7778
7794
 
7779
- .retro-icon-button {
7795
+ .retro-icon-button, :where([data-ui="retrofuturism"]) .ui-icon-button {
7780
7796
  border-radius: var(--retro-radius-pill);
7781
7797
  width: 2.75rem;
7782
7798
  padding: 0;
7783
7799
  }
7784
7800
 
7785
- .retro-button:disabled, .retro-icon-button:disabled, .retro-disabled {
7801
+ .retro-button:disabled, .retro-icon-button:disabled, .retro-disabled, :where([data-ui="retrofuturism"]) .ui-button:disabled, :where([data-ui="retrofuturism"]) .ui-icon-button:disabled {
7786
7802
  opacity: .55;
7787
7803
  cursor: not-allowed;
7788
7804
  transform: none;
7789
7805
  }
7790
7806
 
7791
- .retro-card, .retro-panel {
7807
+ .retro-card, .retro-panel, :where([data-ui="retrofuturism"]) .ui-card {
7792
7808
  background: var(--retro-card-bg);
7793
7809
  }
7794
7810
 
7795
- .retro-toolbar, .retro-table-wrap, .retro-button:not(.retro-button-primary):not(.retro-button-secondary):not(.retro-button-danger):not(.retro-button-ghost), .retro-icon-button {
7811
+ .retro-toolbar, .retro-table-wrap, .retro-button:not(.retro-button-primary):not(.retro-button-secondary):not(.retro-button-danger):not(.retro-button-ghost), .retro-icon-button, :where([data-ui="retrofuturism"]) .ui-toolbar, :where([data-ui="retrofuturism"]) .ui-table-wrap, :where([data-ui="retrofuturism"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="retrofuturism"]) .ui-icon-button {
7796
7812
  background: var(--retro-control-bg);
7797
7813
  }
7798
7814
 
7799
- .retro-button, .retro-icon-button, .retro-badge, .retro-nav-link {
7815
+ .retro-button, .retro-icon-button, .retro-badge, .retro-nav-link, :where([data-ui="retrofuturism"]) .ui-button, :where([data-ui="retrofuturism"]) .ui-icon-button, :where([data-ui="retrofuturism"]) .ui-badge, :where([data-ui="retrofuturism"]) .ui-nav-link {
7800
7816
  font-family: var(--retro-font-control);
7801
7817
  }
7802
7818
 
7803
- .retro-field {
7819
+ .retro-field, :where([data-ui="retrofuturism"]) .ui-field {
7804
7820
  gap: var(--retro-space-2);
7805
7821
  flex-direction: column;
7806
7822
  display: flex;
7807
7823
  }
7808
7824
 
7809
- .retro-label {
7825
+ .retro-label, :where([data-ui="retrofuturism"]) .ui-label {
7810
7826
  color: var(--retro-text);
7811
7827
  font-size: .925rem;
7812
7828
  font-weight: 800;
7813
7829
  }
7814
7830
 
7815
- .retro-input, .retro-textarea, .retro-select {
7831
+ .retro-input, .retro-textarea, .retro-select, :where([data-ui="retrofuturism"]) .ui-input, :where([data-ui="retrofuturism"]) .ui-textarea, :where([data-ui="retrofuturism"]) .ui-select {
7816
7832
  background: var(--retro-surface-soft);
7817
7833
  width: 100%;
7818
7834
  min-height: 2.875rem;
@@ -7825,32 +7841,32 @@
7825
7841
  padding: .75rem 1rem;
7826
7842
  }
7827
7843
 
7828
- .retro-textarea {
7844
+ .retro-textarea, :where([data-ui="retrofuturism"]) .ui-textarea {
7829
7845
  resize: vertical;
7830
7846
  min-height: 8rem;
7831
7847
  }
7832
7848
 
7833
- .retro-input::placeholder, .retro-textarea::placeholder {
7849
+ .retro-input::placeholder, .retro-textarea::placeholder, :where([data-ui="retrofuturism"]) .ui-input::placeholder, :where([data-ui="retrofuturism"]) .ui-textarea::placeholder {
7834
7850
  color: var(--retro-text-muted);
7835
7851
  opacity: .82;
7836
7852
  }
7837
7853
 
7838
- .retro-input:hover, .retro-textarea:hover, .retro-select:hover {
7854
+ .retro-input:hover, .retro-textarea:hover, .retro-select:hover, :where([data-ui="retrofuturism"]) .ui-input:hover, :where([data-ui="retrofuturism"]) .ui-textarea:hover, :where([data-ui="retrofuturism"]) .ui-select:hover {
7839
7855
  border-color: rgb(var(--retro-primary-rgb)/.58);
7840
7856
  }
7841
7857
 
7842
- .retro-input:focus, .retro-textarea:focus, .retro-select:focus {
7858
+ .retro-input:focus, .retro-textarea:focus, .retro-select:focus, :where([data-ui="retrofuturism"]) .ui-input:focus, :where([data-ui="retrofuturism"]) .ui-textarea:focus, :where([data-ui="retrofuturism"]) .ui-select:focus {
7843
7859
  border-color: var(--retro-focus);
7844
7860
  box-shadow: var(--retro-focus-ring);
7845
7861
  }
7846
7862
 
7847
- .retro-help-text {
7863
+ .retro-help-text, :where([data-ui="retrofuturism"]) .ui-help-text {
7848
7864
  color: var(--retro-text-muted);
7849
7865
  font-size: .875rem;
7850
7866
  line-height: 1.45;
7851
7867
  }
7852
7868
 
7853
- .retro-check, .retro-radio {
7869
+ .retro-check, .retro-radio, :where([data-ui="retrofuturism"]) .ui-check, :where([data-ui="retrofuturism"]) .ui-radio {
7854
7870
  align-items: center;
7855
7871
  gap: var(--retro-space-2);
7856
7872
  color: var(--retro-text);
@@ -7858,13 +7874,13 @@
7858
7874
  display: inline-flex;
7859
7875
  }
7860
7876
 
7861
- .retro-check input, .retro-radio input {
7877
+ .retro-check input, .retro-radio input, :where([data-ui="retrofuturism"]) .ui-check input, :where([data-ui="retrofuturism"]) .ui-radio input {
7862
7878
  opacity: 0;
7863
7879
  pointer-events: none;
7864
7880
  position: absolute;
7865
7881
  }
7866
7882
 
7867
- .retro-check-control, .retro-radio-control {
7883
+ .retro-check-control, .retro-radio-control, :where([data-ui="retrofuturism"]) .ui-check-control, :where([data-ui="retrofuturism"]) .ui-radio-control {
7868
7884
  background: var(--retro-surface-soft);
7869
7885
  border: 1px solid var(--retro-border);
7870
7886
  width: 1.35rem;
@@ -7874,28 +7890,28 @@
7874
7890
  display: inline-grid;
7875
7891
  }
7876
7892
 
7877
- .retro-check-control {
7893
+ .retro-check-control, :where([data-ui="retrofuturism"]) .ui-check-control {
7878
7894
  border-radius: var(--retro-radius-xs);
7879
7895
  }
7880
7896
 
7881
- .retro-radio-control {
7897
+ .retro-radio-control, :where([data-ui="retrofuturism"]) .ui-radio-control {
7882
7898
  border-radius: 50%;
7883
7899
  }
7884
7900
 
7885
- .retro-check input:checked + .retro-check-control, .retro-radio input:checked + .retro-radio-control {
7901
+ .retro-check input:checked + .retro-check-control, .retro-radio input:checked + .retro-radio-control, :where([data-ui="retrofuturism"]) .ui-check input:checked+.ui-check-control, :where([data-ui="retrofuturism"]) .ui-radio input:checked+.ui-radio-control {
7886
7902
  background: var(--retro-primary);
7887
7903
  border-color: var(--retro-primary);
7888
7904
  box-shadow: var(--retro-focus-ring);
7889
7905
  }
7890
7906
 
7891
- .retro-check input:checked + .retro-check-control:after {
7907
+ .retro-check input:checked + .retro-check-control:after, :where([data-ui="retrofuturism"]) .ui-check input:checked+.ui-check-control:after {
7892
7908
  content: "✓";
7893
7909
  color: var(--retro-on-primary);
7894
7910
  font-size: .9rem;
7895
7911
  font-weight: 900;
7896
7912
  }
7897
7913
 
7898
- .retro-radio input:checked + .retro-radio-control:after {
7914
+ .retro-radio input:checked + .retro-radio-control:after, :where([data-ui="retrofuturism"]) .ui-radio input:checked+.ui-radio-control:after {
7899
7915
  content: "";
7900
7916
  background: var(--retro-on-primary);
7901
7917
  border-radius: 50%;
@@ -7903,7 +7919,7 @@
7903
7919
  height: .55rem;
7904
7920
  }
7905
7921
 
7906
- .retro-switch {
7922
+ .retro-switch, :where([data-ui="retrofuturism"]) .ui-switch {
7907
7923
  align-items: center;
7908
7924
  gap: var(--retro-space-3);
7909
7925
  color: var(--retro-text);
@@ -7911,13 +7927,13 @@
7911
7927
  display: inline-flex;
7912
7928
  }
7913
7929
 
7914
- .retro-switch input {
7930
+ .retro-switch input, :where([data-ui="retrofuturism"]) .ui-switch input {
7915
7931
  opacity: 0;
7916
7932
  pointer-events: none;
7917
7933
  position: absolute;
7918
7934
  }
7919
7935
 
7920
- .retro-switch-track {
7936
+ .retro-switch-track, :where([data-ui="retrofuturism"]) .ui-switch-track {
7921
7937
  background: var(--retro-surface-soft);
7922
7938
  border: 1px solid var(--retro-border);
7923
7939
  border-radius: var(--retro-radius-pill);
@@ -7927,7 +7943,7 @@
7927
7943
  position: relative;
7928
7944
  }
7929
7945
 
7930
- .retro-switch-thumb {
7946
+ .retro-switch-thumb, :where([data-ui="retrofuturism"]) .ui-switch-thumb {
7931
7947
  background: var(--retro-surface-strong);
7932
7948
  border: 1px solid var(--retro-border);
7933
7949
  width: 1.34rem;
@@ -7940,17 +7956,17 @@
7940
7956
  left: .22rem;
7941
7957
  }
7942
7958
 
7943
- .retro-switch input:checked + .retro-switch-track {
7959
+ .retro-switch input:checked + .retro-switch-track, :where([data-ui="retrofuturism"]) .ui-switch input:checked+.ui-switch-track {
7944
7960
  background: var(--retro-primary);
7945
7961
  border-color: var(--retro-primary);
7946
7962
  }
7947
7963
 
7948
- .retro-switch input:checked + .retro-switch-track .retro-switch-thumb {
7964
+ .retro-switch input:checked + .retro-switch-track .retro-switch-thumb, :where([data-ui="retrofuturism"]) .ui-switch input:checked+.ui-switch-track .ui-switch-thumb {
7949
7965
  background: var(--retro-on-primary);
7950
7966
  left: calc(100% - 1.56rem);
7951
7967
  }
7952
7968
 
7953
- .retro-badge {
7969
+ .retro-badge, :where([data-ui="retrofuturism"]) .ui-badge {
7954
7970
  align-items: center;
7955
7971
  gap: var(--retro-space-1);
7956
7972
  background: var(--retro-surface-soft);
@@ -7965,37 +7981,37 @@
7965
7981
  display: inline-flex;
7966
7982
  }
7967
7983
 
7968
- .retro-badge-primary {
7984
+ .retro-badge-primary, :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="primary"]) {
7969
7985
  background: var(--retro-primary);
7970
7986
  color: var(--retro-on-primary);
7971
7987
  border-color: var(--retro-primary);
7972
7988
  }
7973
7989
 
7974
- .retro-badge-secondary {
7990
+ .retro-badge-secondary, :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="secondary"]) {
7975
7991
  background: var(--retro-secondary);
7976
7992
  color: var(--retro-on-secondary);
7977
7993
  border-color: var(--retro-secondary);
7978
7994
  }
7979
7995
 
7980
- .retro-badge-success {
7996
+ .retro-badge-success, :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="success"]) {
7981
7997
  background: var(--retro-success);
7982
7998
  color: var(--retro-on-success);
7983
7999
  border-color: var(--retro-success);
7984
8000
  }
7985
8001
 
7986
- .retro-badge-warning {
8002
+ .retro-badge-warning, :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="warning"]) {
7987
8003
  background: var(--retro-warning);
7988
8004
  color: var(--retro-on-warning);
7989
8005
  border-color: var(--retro-warning);
7990
8006
  }
7991
8007
 
7992
- .retro-badge-danger {
8008
+ .retro-badge-danger, :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="danger"]) {
7993
8009
  background: var(--retro-danger);
7994
8010
  color: var(--retro-on-danger);
7995
8011
  border-color: var(--retro-danger);
7996
8012
  }
7997
8013
 
7998
- .retro-nav {
8014
+ .retro-nav, :where([data-ui="retrofuturism"]) .ui-nav {
7999
8015
  align-items: center;
8000
8016
  gap: var(--retro-space-2);
8001
8017
  padding: var(--retro-space-2);
@@ -8007,7 +8023,7 @@
8007
8023
  display: flex;
8008
8024
  }
8009
8025
 
8010
- .retro-nav-link {
8026
+ .retro-nav-link, :where([data-ui="retrofuturism"]) .ui-nav-link {
8011
8027
  min-height: 2.5rem;
8012
8028
  color: var(--retro-text-muted);
8013
8029
  border-radius: var(--retro-radius-pill);
@@ -8020,12 +8036,12 @@
8020
8036
  display: inline-flex;
8021
8037
  }
8022
8038
 
8023
- .retro-nav-link:hover {
8039
+ .retro-nav-link:hover, :where([data-ui="retrofuturism"]) .ui-nav-link:hover {
8024
8040
  color: var(--retro-text);
8025
8041
  background: var(--retro-surface-soft);
8026
8042
  }
8027
8043
 
8028
- .retro-nav-link[aria-current="page"], .retro-nav-link.is-active {
8044
+ .retro-nav-link[aria-current="page"], .retro-nav-link.is-active, :where([data-ui="retrofuturism"]) .ui-nav-link[aria-current="page"], :where([data-ui="retrofuturism"]) .ui-nav-link.is-active {
8029
8045
  color: var(--retro-on-primary);
8030
8046
  background: var(--retro-primary);
8031
8047
  }
@@ -8057,7 +8073,7 @@
8057
8073
  flex: none;
8058
8074
  }
8059
8075
 
8060
- .retro-progress {
8076
+ .retro-progress, :where([data-ui="retrofuturism"]) .ui-progress {
8061
8077
  background: var(--retro-surface-soft);
8062
8078
  border: 1px solid var(--retro-border);
8063
8079
  border-radius: var(--retro-radius-pill);
@@ -8066,14 +8082,14 @@
8066
8082
  overflow: hidden;
8067
8083
  }
8068
8084
 
8069
- .retro-progress-bar {
8085
+ .retro-progress-bar, :where([data-ui="retrofuturism"]) .ui-progress-bar {
8070
8086
  height: 100%;
8071
8087
  width: var(--retro-progress-value, 50%);
8072
8088
  background: linear-gradient(90deg,var(--retro-primary),var(--retro-accent));
8073
8089
  border-radius: inherit;
8074
8090
  }
8075
8091
 
8076
- .retro-alert {
8092
+ .retro-alert, :where([data-ui="retrofuturism"]) .ui-alert {
8077
8093
  gap: var(--retro-space-2);
8078
8094
  padding: var(--retro-space-4);
8079
8095
  background: var(--retro-surface);
@@ -8084,45 +8100,45 @@
8084
8100
  display: grid;
8085
8101
  }
8086
8102
 
8087
- .retro-alert-success {
8103
+ .retro-alert-success, :where([data-ui="retrofuturism"]) .ui-alert:where([data-ui-variant="success"]) {
8088
8104
  border-left-color: var(--retro-success);
8089
8105
  }
8090
8106
 
8091
- .retro-alert-warning {
8107
+ .retro-alert-warning, :where([data-ui="retrofuturism"]) .ui-alert:where([data-ui-variant="warning"]) {
8092
8108
  border-left-color: var(--retro-warning);
8093
8109
  }
8094
8110
 
8095
- .retro-alert-danger {
8111
+ .retro-alert-danger, :where([data-ui="retrofuturism"]) .ui-alert:where([data-ui-variant="danger"]) {
8096
8112
  border-left-color: var(--retro-danger);
8097
8113
  }
8098
8114
 
8099
- .retro-alert-title {
8115
+ .retro-alert-title, :where([data-ui="retrofuturism"]) .ui-alert-title {
8100
8116
  margin: 0;
8101
8117
  font-weight: 900;
8102
8118
  }
8103
8119
 
8104
- .retro-alert-body {
8120
+ .retro-alert-body, :where([data-ui="retrofuturism"]) .ui-alert-body {
8105
8121
  color: var(--retro-text-muted);
8106
8122
  margin: 0;
8107
8123
  line-height: 1.55;
8108
8124
  }
8109
8125
 
8110
- .retro-table-wrap {
8126
+ .retro-table-wrap, :where([data-ui="retrofuturism"]) .ui-table-wrap {
8111
8127
  overflow: auto;
8112
8128
  }
8113
8129
 
8114
- .retro-table {
8130
+ .retro-table, :where([data-ui="retrofuturism"]) .ui-table {
8115
8131
  border-collapse: collapse;
8116
8132
  width: 100%;
8117
8133
  }
8118
8134
 
8119
- .retro-table th, .retro-table td {
8135
+ .retro-table th, .retro-table td, :where([data-ui="retrofuturism"]) .ui-table th, :where([data-ui="retrofuturism"]) .ui-table td {
8120
8136
  text-align: left;
8121
8137
  border-bottom: 1px solid var(--retro-border);
8122
8138
  padding: .95rem 1rem;
8123
8139
  }
8124
8140
 
8125
- .retro-table th {
8141
+ .retro-table th, :where([data-ui="retrofuturism"]) .ui-table th {
8126
8142
  color: var(--retro-text);
8127
8143
  text-transform: uppercase;
8128
8144
  letter-spacing: .08em;
@@ -8131,11 +8147,11 @@
8131
8147
  font-weight: 900;
8132
8148
  }
8133
8149
 
8134
- .retro-table td {
8150
+ .retro-table td, :where([data-ui="retrofuturism"]) .ui-table td {
8135
8151
  color: var(--retro-text-muted);
8136
8152
  }
8137
8153
 
8138
- .retro-table tr:hover td {
8154
+ .retro-table tr:hover td, :where([data-ui="retrofuturism"]) .ui-table tr:hover td {
8139
8155
  background: rgb(var(--retro-primary-rgb)/.045);
8140
8156
  }
8141
8157
 
@@ -8238,12 +8254,12 @@
8238
8254
  text-shadow: 0 0 12px rgb(var(--retro-primary-rgb)/.24),0 0 26px rgb(var(--retro-accent-rgb)/.16);
8239
8255
  }
8240
8256
 
8241
- .retro-surface, .retro-card, .retro-panel, .retro-toolbar, .retro-table-wrap {
8257
+ .retro-surface, .retro-card, .retro-panel, .retro-toolbar, .retro-table-wrap, :where([data-ui="retrofuturism"]) .ui-card, :where([data-ui="retrofuturism"]) .ui-toolbar, :where([data-ui="retrofuturism"]) .ui-table-wrap {
8242
8258
  background: linear-gradient(180deg,#ffffff1a,#ffffff05),linear-gradient(135deg,rgb(var(--retro-primary-rgb)/.08),transparent 46%),var(--retro-surface);
8243
8259
  box-shadow: 0 18px 48px rgb(0 0 0 / var(--retro-shadow-alpha)),0 0 0 1px rgb(var(--retro-border-rgb)/.2),0 0 26px rgb(var(--retro-primary-rgb)/.14);
8244
8260
  }
8245
8261
 
8246
- .retro-button-primary, .retro-badge-primary, .retro-nav-link.is-active {
8262
+ .retro-button-primary, .retro-badge-primary, .retro-nav-link.is-active, :where([data-ui="retrofuturism"]) .ui-button:where([data-ui-variant="primary"]), :where([data-ui="retrofuturism"]) .ui-badge:where([data-ui-variant="primary"]), :where([data-ui="retrofuturism"]) .ui-nav-link.is-active {
8247
8263
  box-shadow: 0 0 0 1px rgb(var(--retro-primary-rgb)/.34),0 0 22px rgb(var(--retro-primary-rgb)/.22);
8248
8264
  }
8249
8265
 
@@ -8273,12 +8289,12 @@
8273
8289
  inline-size: 3rem;
8274
8290
  }
8275
8291
 
8276
- .retro-button[aria-busy="true"], .retro-icon-button[aria-busy="true"], [data-ui="retrofuturism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
8292
+ .retro-button[aria-busy="true"], .retro-icon-button[aria-busy="true"], [data-ui="retrofuturism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="retrofuturism"]) .ui-button[aria-busy="true"], :where([data-ui="retrofuturism"]) .ui-icon-button[aria-busy="true"] {
8277
8293
  cursor: progress;
8278
8294
  gap: .55rem;
8279
8295
  }
8280
8296
 
8281
- .retro-button[aria-busy="true"]:after, .retro-icon-button[aria-busy="true"]:after, [data-ui="retrofuturism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
8297
+ .retro-button[aria-busy="true"]:after, .retro-icon-button[aria-busy="true"]:after, [data-ui="retrofuturism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="retrofuturism"]) .ui-button[aria-busy="true"]:after, :where([data-ui="retrofuturism"]) .ui-icon-button[aria-busy="true"]:after {
8282
8298
  content: "";
8283
8299
  border: .16em solid rgb(var(--retro-primary-text-rgb)/.42);
8284
8300
  border-block-start-color: currentColor;
@@ -8550,12 +8566,12 @@
8550
8566
  inline-size: 3rem;
8551
8567
  }
8552
8568
 
8553
- .brutal-button[aria-busy="true"], .brutal-icon-button[aria-busy="true"], [data-ui="brutalism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
8569
+ .brutal-button[aria-busy="true"], .brutal-icon-button[aria-busy="true"], [data-ui="brutalism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="brutalism"]) .ui-button[aria-busy="true"], :where([data-ui="brutalism"]) .ui-icon-button[aria-busy="true"] {
8554
8570
  cursor: progress;
8555
8571
  gap: .55rem;
8556
8572
  }
8557
8573
 
8558
- .brutal-button[aria-busy="true"]:after, .brutal-icon-button[aria-busy="true"]:after, [data-ui="brutalism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
8574
+ .brutal-button[aria-busy="true"]:after, .brutal-icon-button[aria-busy="true"]:after, [data-ui="brutalism"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="brutalism"]) .ui-button[aria-busy="true"]:after, :where([data-ui="brutalism"]) .ui-icon-button[aria-busy="true"]:after {
8559
8575
  content: "";
8560
8576
  border: .16em solid rgb(var(--brutal-primary-text-rgb)/.42);
8561
8577
  border-block-start-color: currentColor;
@@ -8572,7 +8588,7 @@
8572
8588
  }
8573
8589
  }
8574
8590
 
8575
- .brutal-title, .brutal-heading, .brutal-kicker, .brutal-button, .brutal-badge, .brutal-nav-link {
8591
+ .brutal-title, .brutal-heading, .brutal-kicker, .brutal-button, .brutal-badge, .brutal-nav-link, :where([data-ui="brutalism"]) .ui-button, :where([data-ui="brutalism"]) .ui-badge, :where([data-ui="brutalism"]) .ui-nav-link {
8576
8592
  font-family: var(--brutal-font-heading);
8577
8593
  text-transform: uppercase;
8578
8594
  }
@@ -8611,7 +8627,7 @@
8611
8627
  color: var(--brutal-text-muted);
8612
8628
  }
8613
8629
 
8614
- .brutal-card, .brutal-panel, .brutal-surface, .brutal-toolbar, .brutal-table-wrap {
8630
+ .brutal-card, .brutal-panel, .brutal-surface, .brutal-toolbar, .brutal-table-wrap, :where([data-ui="brutalism"]) .ui-card, :where([data-ui="brutalism"]) .ui-toolbar, :where([data-ui="brutalism"]) .ui-table-wrap {
8615
8631
  background: var(--brutal-surface-strong);
8616
8632
  color: var(--brutal-text);
8617
8633
  border: 3px solid var(--brutal-border);
@@ -8620,11 +8636,11 @@
8620
8636
  transition: transform var(--brutal-transition-fast),box-shadow var(--brutal-transition-fast),background var(--brutal-transition-fast);
8621
8637
  }
8622
8638
 
8623
- .brutal-card, .brutal-panel {
8639
+ .brutal-card, .brutal-panel, :where([data-ui="brutalism"]) .ui-card {
8624
8640
  padding: var(--brutal-space-6);
8625
8641
  }
8626
8642
 
8627
- .brutal-toolbar {
8643
+ .brutal-toolbar, :where([data-ui="brutalism"]) .ui-toolbar {
8628
8644
  justify-content: space-between;
8629
8645
  align-items: center;
8630
8646
  gap: var(--brutal-space-4);
@@ -8655,7 +8671,7 @@
8655
8671
  transform: translate(4px, 4px);
8656
8672
  }
8657
8673
 
8658
- .brutal-button, .brutal-icon-button {
8674
+ .brutal-button, .brutal-icon-button, :where([data-ui="brutalism"]) .ui-button, :where([data-ui="brutalism"]) .ui-icon-button {
8659
8675
  appearance: none;
8660
8676
  justify-content: center;
8661
8677
  align-items: center;
@@ -8678,76 +8694,76 @@
8678
8694
  display: inline-flex;
8679
8695
  }
8680
8696
 
8681
- .brutal-button:hover, .brutal-icon-button:hover {
8697
+ .brutal-button:hover, .brutal-icon-button:hover, :where([data-ui="brutalism"]) .ui-button:hover, :where([data-ui="brutalism"]) .ui-icon-button:hover {
8682
8698
  box-shadow: 8px 8px 0 var(--brutal-primary);
8683
8699
  transform: translate(-2px, -2px);
8684
8700
  }
8685
8701
 
8686
- .brutal-button:active, .brutal-icon-button:active, .brutal-button.is-active, .brutal-button[aria-pressed="true"] {
8702
+ .brutal-button:active, .brutal-icon-button:active, .brutal-button.is-active, .brutal-button[aria-pressed="true"], :where([data-ui="brutalism"]) .ui-button:active, :where([data-ui="brutalism"]) .ui-icon-button:active, :where([data-ui="brutalism"]) .ui-button.is-active, :where([data-ui="brutalism"]) .ui-button[aria-pressed="true"] {
8687
8703
  box-shadow: 2px 2px 0 var(--brutal-secondary);
8688
8704
  transform: translate(4px, 4px);
8689
8705
  }
8690
8706
 
8691
- .brutal-button-primary {
8707
+ .brutal-button-primary, :where([data-ui="brutalism"]) .ui-button:where([data-ui-variant="primary"]) {
8692
8708
  background: var(--brutal-primary);
8693
8709
  color: var(--brutal-on-primary);
8694
8710
  }
8695
8711
 
8696
- .brutal-button-primary:hover {
8712
+ .brutal-button-primary:hover, :where([data-ui="brutalism"]) .ui-button:where([data-ui-variant="primary"]):hover {
8697
8713
  background: var(--brutal-primary-hover);
8698
8714
  }
8699
8715
 
8700
- .brutal-button-secondary {
8716
+ .brutal-button-secondary, :where([data-ui="brutalism"]) .ui-button:where([data-ui-variant="secondary"]) {
8701
8717
  background: var(--brutal-secondary);
8702
8718
  color: var(--brutal-on-secondary);
8703
8719
  box-shadow: 6px 6px 0 var(--brutal-primary);
8704
8720
  }
8705
8721
 
8706
- .brutal-button-secondary:hover {
8722
+ .brutal-button-secondary:hover, :where([data-ui="brutalism"]) .ui-button:where([data-ui-variant="secondary"]):hover {
8707
8723
  background: var(--brutal-secondary-hover);
8708
8724
  }
8709
8725
 
8710
- .brutal-button-danger {
8726
+ .brutal-button-danger, :where([data-ui="brutalism"]) .ui-button:where([data-ui-variant="danger"]) {
8711
8727
  background: var(--brutal-danger);
8712
8728
  color: var(--brutal-on-danger);
8713
8729
  }
8714
8730
 
8715
- .brutal-icon-button {
8731
+ .brutal-icon-button, :where([data-ui="brutalism"]) .ui-icon-button {
8716
8732
  width: 2.85rem;
8717
8733
  padding: 0;
8718
8734
  }
8719
8735
 
8720
- .brutal-button:disabled, .brutal-icon-button:disabled, .brutal-disabled {
8736
+ .brutal-button:disabled, .brutal-icon-button:disabled, .brutal-disabled, :where([data-ui="brutalism"]) .ui-button:disabled, :where([data-ui="brutalism"]) .ui-icon-button:disabled {
8721
8737
  opacity: .55;
8722
8738
  cursor: not-allowed;
8723
8739
  transform: none;
8724
8740
  }
8725
8741
 
8726
- .brutal-card, .brutal-panel {
8742
+ .brutal-card, .brutal-panel, :where([data-ui="brutalism"]) .ui-card {
8727
8743
  background: var(--brutal-card-bg);
8728
8744
  }
8729
8745
 
8730
- .brutal-toolbar, .brutal-table-wrap, .brutal-button:not(.brutal-button-primary):not(.brutal-button-secondary):not(.brutal-button-danger):not(.brutal-button-ghost), .brutal-icon-button {
8746
+ .brutal-toolbar, .brutal-table-wrap, .brutal-button:not(.brutal-button-primary):not(.brutal-button-secondary):not(.brutal-button-danger):not(.brutal-button-ghost), .brutal-icon-button, :where([data-ui="brutalism"]) .ui-toolbar, :where([data-ui="brutalism"]) .ui-table-wrap, :where([data-ui="brutalism"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="brutalism"]) .ui-icon-button {
8731
8747
  background: var(--brutal-control-bg);
8732
8748
  }
8733
8749
 
8734
- .brutal-button, .brutal-icon-button, .brutal-badge, .brutal-nav-link {
8750
+ .brutal-button, .brutal-icon-button, .brutal-badge, .brutal-nav-link, :where([data-ui="brutalism"]) .ui-button, :where([data-ui="brutalism"]) .ui-icon-button, :where([data-ui="brutalism"]) .ui-badge, :where([data-ui="brutalism"]) .ui-nav-link {
8735
8751
  font-family: var(--brutal-font-control);
8736
8752
  }
8737
8753
 
8738
- .brutal-field {
8754
+ .brutal-field, :where([data-ui="brutalism"]) .ui-field {
8739
8755
  gap: var(--brutal-space-2);
8740
8756
  flex-direction: column;
8741
8757
  display: flex;
8742
8758
  }
8743
8759
 
8744
- .brutal-label {
8760
+ .brutal-label, :where([data-ui="brutalism"]) .ui-label {
8745
8761
  text-transform: uppercase;
8746
8762
  letter-spacing: .05em;
8747
8763
  font-weight: 900;
8748
8764
  }
8749
8765
 
8750
- .brutal-input, .brutal-textarea, .brutal-select {
8766
+ .brutal-input, .brutal-textarea, .brutal-select, :where([data-ui="brutalism"]) .ui-input, :where([data-ui="brutalism"]) .ui-textarea, :where([data-ui="brutalism"]) .ui-select {
8751
8767
  background: var(--brutal-surface-strong);
8752
8768
  width: 100%;
8753
8769
  min-height: 2.9rem;
@@ -8760,22 +8776,22 @@
8760
8776
  box-shadow: inset 4px 4px #0000001f;
8761
8777
  }
8762
8778
 
8763
- .brutal-textarea {
8779
+ .brutal-textarea, :where([data-ui="brutalism"]) .ui-textarea {
8764
8780
  resize: vertical;
8765
8781
  min-height: 8rem;
8766
8782
  }
8767
8783
 
8768
- .brutal-input:focus, .brutal-textarea:focus, .brutal-select:focus {
8784
+ .brutal-input:focus, .brutal-textarea:focus, .brutal-select:focus, :where([data-ui="brutalism"]) .ui-input:focus, :where([data-ui="brutalism"]) .ui-textarea:focus, :where([data-ui="brutalism"]) .ui-select:focus {
8769
8785
  border-color: var(--brutal-focus);
8770
8786
  box-shadow: 0 0 0 4px rgb(var(--brutal-focus-rgb)/.28),inset 4px 4px 0 #0000001f;
8771
8787
  }
8772
8788
 
8773
- .brutal-help-text {
8789
+ .brutal-help-text, :where([data-ui="brutalism"]) .ui-help-text {
8774
8790
  color: var(--brutal-text-muted);
8775
8791
  font-size: .9rem;
8776
8792
  }
8777
8793
 
8778
- .brutal-badge {
8794
+ .brutal-badge, :where([data-ui="brutalism"]) .ui-badge {
8779
8795
  background: var(--brutal-surface-strong);
8780
8796
  min-height: 1.8rem;
8781
8797
  color: var(--brutal-text);
@@ -8788,32 +8804,32 @@
8788
8804
  display: inline-flex;
8789
8805
  }
8790
8806
 
8791
- .brutal-badge-primary {
8807
+ .brutal-badge-primary, :where([data-ui="brutalism"]) .ui-badge:where([data-ui-variant="primary"]) {
8792
8808
  background: var(--brutal-primary);
8793
8809
  color: var(--brutal-on-primary);
8794
8810
  }
8795
8811
 
8796
- .brutal-badge-secondary {
8812
+ .brutal-badge-secondary, :where([data-ui="brutalism"]) .ui-badge:where([data-ui-variant="secondary"]) {
8797
8813
  background: var(--brutal-secondary);
8798
8814
  color: var(--brutal-on-secondary);
8799
8815
  }
8800
8816
 
8801
- .brutal-badge-success {
8817
+ .brutal-badge-success, :where([data-ui="brutalism"]) .ui-badge:where([data-ui-variant="success"]) {
8802
8818
  background: var(--brutal-success);
8803
8819
  color: var(--brutal-on-success);
8804
8820
  }
8805
8821
 
8806
- .brutal-badge-warning {
8822
+ .brutal-badge-warning, :where([data-ui="brutalism"]) .ui-badge:where([data-ui-variant="warning"]) {
8807
8823
  background: var(--brutal-warning);
8808
8824
  color: var(--brutal-on-warning);
8809
8825
  }
8810
8826
 
8811
- .brutal-badge-danger {
8827
+ .brutal-badge-danger, :where([data-ui="brutalism"]) .ui-badge:where([data-ui-variant="danger"]) {
8812
8828
  background: var(--brutal-danger);
8813
8829
  color: var(--brutal-on-danger);
8814
8830
  }
8815
8831
 
8816
- .brutal-nav {
8832
+ .brutal-nav, :where([data-ui="brutalism"]) .ui-nav {
8817
8833
  gap: var(--brutal-space-2);
8818
8834
  padding: var(--brutal-space-2);
8819
8835
  background: var(--brutal-surface-strong);
@@ -8823,7 +8839,7 @@
8823
8839
  display: flex;
8824
8840
  }
8825
8841
 
8826
- .brutal-nav-link {
8842
+ .brutal-nav-link, :where([data-ui="brutalism"]) .ui-nav-link {
8827
8843
  min-height: 2.5rem;
8828
8844
  color: var(--brutal-text);
8829
8845
  border: 3px solid #0000;
@@ -8834,12 +8850,12 @@
8834
8850
  display: inline-flex;
8835
8851
  }
8836
8852
 
8837
- .brutal-nav-link:hover {
8853
+ .brutal-nav-link:hover, :where([data-ui="brutalism"]) .ui-nav-link:hover {
8838
8854
  border-color: var(--brutal-border);
8839
8855
  background: var(--brutal-surface-soft);
8840
8856
  }
8841
8857
 
8842
- .brutal-nav-link.is-active, .brutal-nav-link[aria-current="page"] {
8858
+ .brutal-nav-link.is-active, .brutal-nav-link[aria-current="page"], :where([data-ui="brutalism"]) .ui-nav-link.is-active, :where([data-ui="brutalism"]) .ui-nav-link[aria-current="page"] {
8843
8859
  background: var(--brutal-primary);
8844
8860
  color: var(--brutal-on-primary);
8845
8861
  border-color: var(--brutal-border);
@@ -8872,66 +8888,66 @@
8872
8888
  transform: rotate(45deg);
8873
8889
  }
8874
8890
 
8875
- .brutal-progress {
8891
+ .brutal-progress, :where([data-ui="brutalism"]) .ui-progress {
8876
8892
  background: var(--brutal-surface-soft);
8877
8893
  border: 3px solid var(--brutal-border);
8878
8894
  width: 100%;
8879
8895
  height: 1rem;
8880
8896
  }
8881
8897
 
8882
- .brutal-progress-bar {
8898
+ .brutal-progress-bar, :where([data-ui="brutalism"]) .ui-progress-bar {
8883
8899
  height: 100%;
8884
8900
  width: var(--brutal-progress-value, 50%);
8885
8901
  background: var(--brutal-primary);
8886
8902
  }
8887
8903
 
8888
- .brutal-alert {
8904
+ .brutal-alert, :where([data-ui="brutalism"]) .ui-alert {
8889
8905
  padding: var(--brutal-space-4);
8890
8906
  background: var(--brutal-surface-strong);
8891
8907
  border: 3px solid var(--brutal-border);
8892
8908
  box-shadow: 8px 8px 0 var(--brutal-accent);
8893
8909
  }
8894
8910
 
8895
- .brutal-alert-success {
8911
+ .brutal-alert-success, :where([data-ui="brutalism"]) .ui-alert:where([data-ui-variant="success"]) {
8896
8912
  box-shadow: 8px 8px 0 var(--brutal-success);
8897
8913
  }
8898
8914
 
8899
- .brutal-alert-warning {
8915
+ .brutal-alert-warning, :where([data-ui="brutalism"]) .ui-alert:where([data-ui-variant="warning"]) {
8900
8916
  box-shadow: 8px 8px 0 var(--brutal-warning);
8901
8917
  }
8902
8918
 
8903
- .brutal-alert-danger {
8919
+ .brutal-alert-danger, :where([data-ui="brutalism"]) .ui-alert:where([data-ui-variant="danger"]) {
8904
8920
  box-shadow: 8px 8px 0 var(--brutal-danger);
8905
8921
  }
8906
8922
 
8907
- .brutal-alert-title {
8923
+ .brutal-alert-title, :where([data-ui="brutalism"]) .ui-alert-title {
8908
8924
  text-transform: uppercase;
8909
8925
  margin: 0;
8910
8926
  font-weight: 900;
8911
8927
  }
8912
8928
 
8913
- .brutal-alert-body {
8929
+ .brutal-alert-body, :where([data-ui="brutalism"]) .ui-alert-body {
8914
8930
  color: var(--brutal-text-muted);
8915
8931
  margin: .5rem 0 0;
8916
8932
  }
8917
8933
 
8918
- .brutal-table-wrap {
8934
+ .brutal-table-wrap, :where([data-ui="brutalism"]) .ui-table-wrap {
8919
8935
  box-shadow: 8px 8px 0 var(--brutal-primary);
8920
8936
  overflow: auto;
8921
8937
  }
8922
8938
 
8923
- .brutal-table {
8939
+ .brutal-table, :where([data-ui="brutalism"]) .ui-table {
8924
8940
  border-collapse: collapse;
8925
8941
  width: 100%;
8926
8942
  }
8927
8943
 
8928
- .brutal-table th, .brutal-table td {
8944
+ .brutal-table th, .brutal-table td, :where([data-ui="brutalism"]) .ui-table th, :where([data-ui="brutalism"]) .ui-table td {
8929
8945
  border: 2px solid var(--brutal-border);
8930
8946
  text-align: left;
8931
8947
  padding: .9rem 1rem;
8932
8948
  }
8933
8949
 
8934
- .brutal-table th {
8950
+ .brutal-table th, :where([data-ui="brutalism"]) .ui-table th {
8935
8951
  background: var(--brutal-primary);
8936
8952
  color: var(--brutal-on-primary);
8937
8953
  text-transform: uppercase;
@@ -9205,7 +9221,7 @@
9205
9221
  color: var(--cyber-on-primary);
9206
9222
  }
9207
9223
 
9208
- .cyber-title, .cyber-heading, .cyber-kicker, .cyber-button, .cyber-badge, .cyber-nav-link {
9224
+ .cyber-title, .cyber-heading, .cyber-kicker, .cyber-button, .cyber-badge, .cyber-nav-link, :where([data-ui="cyberpunk"]) .ui-button, :where([data-ui="cyberpunk"]) .ui-badge, :where([data-ui="cyberpunk"]) .ui-nav-link {
9209
9225
  font-family: var(--cyber-font-heading);
9210
9226
  text-transform: uppercase;
9211
9227
  }
@@ -9243,7 +9259,7 @@
9243
9259
  color: var(--cyber-text-muted);
9244
9260
  }
9245
9261
 
9246
- .cyber-card, .cyber-panel, .cyber-console, .cyber-toolbar, .cyber-table-wrap {
9262
+ .cyber-card, .cyber-panel, .cyber-console, .cyber-toolbar, .cyber-table-wrap, :where([data-ui="cyberpunk"]) .ui-card, :where([data-ui="cyberpunk"]) .ui-toolbar, :where([data-ui="cyberpunk"]) .ui-table-wrap {
9247
9263
  background: linear-gradient(135deg,#ffffff14,#ffffff05),var(--cyber-surface);
9248
9264
  color: var(--cyber-text);
9249
9265
  border: 1px solid var(--cyber-border);
@@ -9255,7 +9271,7 @@
9255
9271
  overflow: hidden;
9256
9272
  }
9257
9273
 
9258
- .cyber-card:before, .cyber-panel:before, .cyber-console:before, .cyber-toolbar:before {
9274
+ .cyber-card:before, .cyber-panel:before, .cyber-console:before, .cyber-toolbar:before, :where([data-ui="cyberpunk"]) .ui-card:before, :where([data-ui="cyberpunk"]) .ui-toolbar:before {
9259
9275
  content: "";
9260
9276
  pointer-events: none;
9261
9277
  border-top: 2px solid rgb(var(--cyber-primary-rgb)/.5);
@@ -9264,7 +9280,7 @@
9264
9280
  inset: 0;
9265
9281
  }
9266
9282
 
9267
- .cyber-card, .cyber-panel, .cyber-console {
9283
+ .cyber-card, .cyber-panel, .cyber-console, :where([data-ui="cyberpunk"]) .ui-card {
9268
9284
  padding: var(--cyber-space-6);
9269
9285
  }
9270
9286
 
@@ -9272,7 +9288,7 @@
9272
9288
  background: linear-gradient(180deg,rgb(var(--cyber-primary-rgb)/.08),transparent),var(--cyber-surface-strong);
9273
9289
  }
9274
9290
 
9275
- .cyber-toolbar {
9291
+ .cyber-toolbar, :where([data-ui="cyberpunk"]) .ui-toolbar {
9276
9292
  justify-content: space-between;
9277
9293
  align-items: center;
9278
9294
  gap: var(--cyber-space-4);
@@ -9298,7 +9314,7 @@
9298
9314
  padding: var(--cyber-space-5);
9299
9315
  }
9300
9316
 
9301
- .cyber-button, .cyber-icon-button {
9317
+ .cyber-button, .cyber-icon-button, :where([data-ui="cyberpunk"]) .ui-button, :where([data-ui="cyberpunk"]) .ui-icon-button {
9302
9318
  appearance: none;
9303
9319
  justify-content: center;
9304
9320
  align-items: center;
@@ -9321,52 +9337,52 @@
9321
9337
  display: inline-flex;
9322
9338
  }
9323
9339
 
9324
- .cyber-button:hover, .cyber-icon-button:hover {
9340
+ .cyber-button:hover, .cyber-icon-button:hover, :where([data-ui="cyberpunk"]) .ui-button:hover, :where([data-ui="cyberpunk"]) .ui-icon-button:hover {
9325
9341
  box-shadow: var(--cyber-shadow-md),0 0 26px var(--cyber-glow-primary);
9326
9342
  transform: translateY(-1px);
9327
9343
  }
9328
9344
 
9329
- .cyber-button:active, .cyber-icon-button:active, .cyber-button.is-active, .cyber-button[aria-pressed="true"] {
9345
+ .cyber-button:active, .cyber-icon-button:active, .cyber-button.is-active, .cyber-button[aria-pressed="true"], :where([data-ui="cyberpunk"]) .ui-button:active, :where([data-ui="cyberpunk"]) .ui-icon-button:active, :where([data-ui="cyberpunk"]) .ui-button.is-active, :where([data-ui="cyberpunk"]) .ui-button[aria-pressed="true"] {
9330
9346
  box-shadow: inset 0 0 18px #00000038,0 0 18px var(--cyber-glow-primary);
9331
9347
  transform: translateY(1px);
9332
9348
  }
9333
9349
 
9334
- .cyber-button-primary {
9350
+ .cyber-button-primary, :where([data-ui="cyberpunk"]) .ui-button:where([data-ui-variant="primary"]) {
9335
9351
  background: linear-gradient(135deg,#ffffff24,transparent),var(--cyber-primary);
9336
9352
  color: var(--cyber-on-primary);
9337
9353
  }
9338
9354
 
9339
- .cyber-button-primary:hover {
9355
+ .cyber-button-primary:hover, :where([data-ui="cyberpunk"]) .ui-button:where([data-ui-variant="primary"]):hover {
9340
9356
  background: var(--cyber-primary-hover);
9341
9357
  }
9342
9358
 
9343
- .cyber-button-secondary {
9359
+ .cyber-button-secondary, :where([data-ui="cyberpunk"]) .ui-button:where([data-ui-variant="secondary"]) {
9344
9360
  background: linear-gradient(135deg,#ffffff24,transparent),var(--cyber-secondary);
9345
9361
  color: var(--cyber-on-secondary);
9346
9362
  border-color: rgb(var(--cyber-secondary-rgb)/.7);
9347
9363
  }
9348
9364
 
9349
- .cyber-button-secondary:hover {
9365
+ .cyber-button-secondary:hover, :where([data-ui="cyberpunk"]) .ui-button:where([data-ui-variant="secondary"]):hover {
9350
9366
  background: var(--cyber-secondary-hover);
9351
9367
  }
9352
9368
 
9353
- .cyber-button-danger {
9369
+ .cyber-button-danger, :where([data-ui="cyberpunk"]) .ui-button:where([data-ui-variant="danger"]) {
9354
9370
  background: var(--cyber-danger);
9355
9371
  color: var(--cyber-on-danger);
9356
9372
  }
9357
9373
 
9358
- .cyber-icon-button {
9374
+ .cyber-icon-button, :where([data-ui="cyberpunk"]) .ui-icon-button {
9359
9375
  width: 2.85rem;
9360
9376
  padding: 0;
9361
9377
  }
9362
9378
 
9363
- .cyber-field {
9379
+ .cyber-field, :where([data-ui="cyberpunk"]) .ui-field {
9364
9380
  gap: var(--cyber-space-2);
9365
9381
  flex-direction: column;
9366
9382
  display: flex;
9367
9383
  }
9368
9384
 
9369
- .cyber-label {
9385
+ .cyber-label, :where([data-ui="cyberpunk"]) .ui-label {
9370
9386
  font-family: var(--cyber-font-heading);
9371
9387
  text-transform: uppercase;
9372
9388
  letter-spacing: .14em;
@@ -9374,7 +9390,7 @@
9374
9390
  font-weight: 800;
9375
9391
  }
9376
9392
 
9377
- .cyber-input, .cyber-textarea, .cyber-select {
9393
+ .cyber-input, .cyber-textarea, .cyber-select, :where([data-ui="cyberpunk"]) .ui-input, :where([data-ui="cyberpunk"]) .ui-textarea, :where([data-ui="cyberpunk"]) .ui-select {
9378
9394
  background: var(--cyber-surface-soft);
9379
9395
  width: 100%;
9380
9396
  min-height: 2.9rem;
@@ -9387,22 +9403,22 @@
9387
9403
  box-shadow: inset 0 0 18px #0003;
9388
9404
  }
9389
9405
 
9390
- .cyber-textarea {
9406
+ .cyber-textarea, :where([data-ui="cyberpunk"]) .ui-textarea {
9391
9407
  resize: vertical;
9392
9408
  min-height: 8rem;
9393
9409
  }
9394
9410
 
9395
- .cyber-input:focus, .cyber-textarea:focus, .cyber-select:focus {
9411
+ .cyber-input:focus, .cyber-textarea:focus, .cyber-select:focus, :where([data-ui="cyberpunk"]) .ui-input:focus, :where([data-ui="cyberpunk"]) .ui-textarea:focus, :where([data-ui="cyberpunk"]) .ui-select:focus {
9396
9412
  border-color: var(--cyber-focus);
9397
9413
  box-shadow: 0 0 0 2px rgb(var(--cyber-focus-rgb)/.24),0 0 24px rgb(var(--cyber-focus-rgb)/.24),inset 0 0 18px #0003;
9398
9414
  }
9399
9415
 
9400
- .cyber-help-text {
9416
+ .cyber-help-text, :where([data-ui="cyberpunk"]) .ui-help-text {
9401
9417
  color: var(--cyber-text-muted);
9402
9418
  font-size: .9rem;
9403
9419
  }
9404
9420
 
9405
- .cyber-badge {
9421
+ .cyber-badge, :where([data-ui="cyberpunk"]) .ui-badge {
9406
9422
  background: var(--cyber-surface);
9407
9423
  min-height: 1.8rem;
9408
9424
  color: var(--cyber-text);
@@ -9417,32 +9433,32 @@
9417
9433
  display: inline-flex;
9418
9434
  }
9419
9435
 
9420
- .cyber-badge-primary {
9436
+ .cyber-badge-primary, :where([data-ui="cyberpunk"]) .ui-badge:where([data-ui-variant="primary"]) {
9421
9437
  background: var(--cyber-primary);
9422
9438
  color: var(--cyber-on-primary);
9423
9439
  }
9424
9440
 
9425
- .cyber-badge-secondary {
9441
+ .cyber-badge-secondary, :where([data-ui="cyberpunk"]) .ui-badge:where([data-ui-variant="secondary"]) {
9426
9442
  background: var(--cyber-secondary);
9427
9443
  color: var(--cyber-on-secondary);
9428
9444
  }
9429
9445
 
9430
- .cyber-badge-success {
9446
+ .cyber-badge-success, :where([data-ui="cyberpunk"]) .ui-badge:where([data-ui-variant="success"]) {
9431
9447
  background: var(--cyber-success);
9432
9448
  color: var(--cyber-on-success);
9433
9449
  }
9434
9450
 
9435
- .cyber-badge-warning {
9451
+ .cyber-badge-warning, :where([data-ui="cyberpunk"]) .ui-badge:where([data-ui-variant="warning"]) {
9436
9452
  background: var(--cyber-warning);
9437
9453
  color: var(--cyber-on-warning);
9438
9454
  }
9439
9455
 
9440
- .cyber-badge-danger {
9456
+ .cyber-badge-danger, :where([data-ui="cyberpunk"]) .ui-badge:where([data-ui-variant="danger"]) {
9441
9457
  background: var(--cyber-danger);
9442
9458
  color: var(--cyber-on-danger);
9443
9459
  }
9444
9460
 
9445
- .cyber-nav {
9461
+ .cyber-nav, :where([data-ui="cyberpunk"]) .ui-nav {
9446
9462
  gap: var(--cyber-space-2);
9447
9463
  padding: var(--cyber-space-2);
9448
9464
  background: var(--cyber-surface);
@@ -9453,7 +9469,7 @@
9453
9469
  display: flex;
9454
9470
  }
9455
9471
 
9456
- .cyber-nav-link {
9472
+ .cyber-nav-link, :where([data-ui="cyberpunk"]) .ui-nav-link {
9457
9473
  min-height: 2.5rem;
9458
9474
  color: var(--cyber-text-muted);
9459
9475
  border-radius: var(--cyber-radius-xs);
@@ -9466,12 +9482,12 @@
9466
9482
  display: inline-flex;
9467
9483
  }
9468
9484
 
9469
- .cyber-nav-link:hover {
9485
+ .cyber-nav-link:hover, :where([data-ui="cyberpunk"]) .ui-nav-link:hover {
9470
9486
  color: var(--cyber-text);
9471
9487
  border-color: rgb(var(--cyber-primary-rgb)/.48);
9472
9488
  }
9473
9489
 
9474
- .cyber-nav-link.is-active, .cyber-nav-link[aria-current="page"] {
9490
+ .cyber-nav-link.is-active, .cyber-nav-link[aria-current="page"], :where([data-ui="cyberpunk"]) .ui-nav-link.is-active, :where([data-ui="cyberpunk"]) .ui-nav-link[aria-current="page"] {
9475
9491
  background: var(--cyber-primary);
9476
9492
  color: var(--cyber-on-primary);
9477
9493
  border-color: var(--cyber-primary);
@@ -9506,7 +9522,7 @@
9506
9522
  flex: none;
9507
9523
  }
9508
9524
 
9509
- .cyber-progress {
9525
+ .cyber-progress, :where([data-ui="cyberpunk"]) .ui-progress {
9510
9526
  background: var(--cyber-surface-soft);
9511
9527
  border: 1px solid var(--cyber-border);
9512
9528
  width: 100%;
@@ -9514,14 +9530,14 @@
9514
9530
  box-shadow: inset 0 0 18px #0000002e;
9515
9531
  }
9516
9532
 
9517
- .cyber-progress-bar {
9533
+ .cyber-progress-bar, :where([data-ui="cyberpunk"]) .ui-progress-bar {
9518
9534
  height: 100%;
9519
9535
  width: var(--cyber-progress-value, 50%);
9520
9536
  background: linear-gradient(90deg,var(--cyber-primary),var(--cyber-accent));
9521
9537
  box-shadow: 0 0 18px var(--cyber-glow-primary);
9522
9538
  }
9523
9539
 
9524
- .cyber-alert {
9540
+ .cyber-alert, :where([data-ui="cyberpunk"]) .ui-alert {
9525
9541
  padding: var(--cyber-space-4);
9526
9542
  background: var(--cyber-surface);
9527
9543
  border: 1px solid var(--cyber-border);
@@ -9529,56 +9545,56 @@
9529
9545
  box-shadow: var(--cyber-shadow-md),0 0 22px var(--cyber-glow-primary);
9530
9546
  }
9531
9547
 
9532
- .cyber-alert-success {
9548
+ .cyber-alert-success, :where([data-ui="cyberpunk"]) .ui-alert:where([data-ui-variant="success"]) {
9533
9549
  border-left-color: var(--cyber-success);
9534
9550
  }
9535
9551
 
9536
- .cyber-alert-warning {
9552
+ .cyber-alert-warning, :where([data-ui="cyberpunk"]) .ui-alert:where([data-ui-variant="warning"]) {
9537
9553
  border-left-color: var(--cyber-warning);
9538
9554
  }
9539
9555
 
9540
- .cyber-alert-danger {
9556
+ .cyber-alert-danger, :where([data-ui="cyberpunk"]) .ui-alert:where([data-ui-variant="danger"]) {
9541
9557
  border-left-color: var(--cyber-danger);
9542
9558
  }
9543
9559
 
9544
- .cyber-alert-title {
9560
+ .cyber-alert-title, :where([data-ui="cyberpunk"]) .ui-alert-title {
9545
9561
  font-family: var(--cyber-font-heading);
9546
9562
  text-transform: uppercase;
9547
9563
  margin: 0;
9548
9564
  }
9549
9565
 
9550
- .cyber-alert-body {
9566
+ .cyber-alert-body, :where([data-ui="cyberpunk"]) .ui-alert-body {
9551
9567
  color: var(--cyber-text-muted);
9552
9568
  margin: .5rem 0 0;
9553
9569
  }
9554
9570
 
9555
- .cyber-table-wrap {
9571
+ .cyber-table-wrap, :where([data-ui="cyberpunk"]) .ui-table-wrap {
9556
9572
  overflow: auto;
9557
9573
  }
9558
9574
 
9559
- .cyber-table {
9575
+ .cyber-table, :where([data-ui="cyberpunk"]) .ui-table {
9560
9576
  border-collapse: collapse;
9561
9577
  width: 100%;
9562
9578
  }
9563
9579
 
9564
- .cyber-table th, .cyber-table td {
9580
+ .cyber-table th, .cyber-table td, :where([data-ui="cyberpunk"]) .ui-table th, :where([data-ui="cyberpunk"]) .ui-table td {
9565
9581
  border-bottom: 1px solid rgb(var(--cyber-border-rgb)/.38);
9566
9582
  text-align: left;
9567
9583
  padding: .9rem 1rem;
9568
9584
  }
9569
9585
 
9570
- .cyber-table th {
9586
+ .cyber-table th, :where([data-ui="cyberpunk"]) .ui-table th {
9571
9587
  background: rgb(var(--cyber-primary-rgb)/.12);
9572
9588
  font-family: var(--cyber-font-heading);
9573
9589
  text-transform: uppercase;
9574
9590
  letter-spacing: .1em;
9575
9591
  }
9576
9592
 
9577
- .cyber-table td {
9593
+ .cyber-table td, :where([data-ui="cyberpunk"]) .ui-table td {
9578
9594
  color: var(--cyber-text-muted);
9579
9595
  }
9580
9596
 
9581
- .cyber-table tr:hover td {
9597
+ .cyber-table tr:hover td, :where([data-ui="cyberpunk"]) .ui-table tr:hover td {
9582
9598
  background: rgb(var(--cyber-primary-rgb)/.06);
9583
9599
  }
9584
9600
 
@@ -9611,7 +9627,7 @@
9611
9627
  outline-offset: 3px;
9612
9628
  }
9613
9629
 
9614
- .cyber-button:focus-visible, .cyber-icon-button:focus-visible, .cyber-input:focus-visible, .cyber-nav-link:focus-visible {
9630
+ .cyber-button:focus-visible, .cyber-icon-button:focus-visible, .cyber-input:focus-visible, .cyber-nav-link:focus-visible, :where([data-ui="cyberpunk"]) .ui-button:focus-visible, :where([data-ui="cyberpunk"]) .ui-icon-button:focus-visible, :where([data-ui="cyberpunk"]) .ui-input:focus-visible, :where([data-ui="cyberpunk"]) .ui-nav-link:focus-visible {
9615
9631
  box-shadow: 0 0 0 3px rgb(var(--cyber-focus-rgb)/.28),0 0 28px rgb(var(--cyber-focus-rgb)/.28);
9616
9632
  }
9617
9633
 
@@ -9622,15 +9638,15 @@
9622
9638
  }
9623
9639
  }
9624
9640
 
9625
- .cyber-card, .cyber-panel {
9641
+ .cyber-card, .cyber-panel, :where([data-ui="cyberpunk"]) .ui-card {
9626
9642
  background: var(--cyber-card-bg);
9627
9643
  }
9628
9644
 
9629
- .cyber-toolbar, .cyber-table-wrap, .cyber-button:not(.cyber-button-primary):not(.cyber-button-secondary):not(.cyber-button-danger):not(.cyber-button-ghost), .cyber-icon-button {
9645
+ .cyber-toolbar, .cyber-table-wrap, .cyber-button:not(.cyber-button-primary):not(.cyber-button-secondary):not(.cyber-button-danger):not(.cyber-button-ghost), .cyber-icon-button, :where([data-ui="cyberpunk"]) .ui-toolbar, :where([data-ui="cyberpunk"]) .ui-table-wrap, :where([data-ui="cyberpunk"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="cyberpunk"]) .ui-icon-button {
9630
9646
  background: var(--cyber-control-bg);
9631
9647
  }
9632
9648
 
9633
- .cyber-button, .cyber-icon-button, .cyber-badge, .cyber-nav-link {
9649
+ .cyber-button, .cyber-icon-button, .cyber-badge, .cyber-nav-link, :where([data-ui="cyberpunk"]) .ui-button, :where([data-ui="cyberpunk"]) .ui-icon-button, :where([data-ui="cyberpunk"]) .ui-badge, :where([data-ui="cyberpunk"]) .ui-nav-link {
9634
9650
  font-family: var(--cyber-font-control);
9635
9651
  }
9636
9652
 
@@ -9661,12 +9677,12 @@
9661
9677
  inline-size: 3rem;
9662
9678
  }
9663
9679
 
9664
- .cyber-button[aria-busy="true"], .cyber-icon-button[aria-busy="true"], [data-ui="cyberpunk"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
9680
+ .cyber-button[aria-busy="true"], .cyber-icon-button[aria-busy="true"], [data-ui="cyberpunk"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="cyberpunk"]) .ui-button[aria-busy="true"], :where([data-ui="cyberpunk"]) .ui-icon-button[aria-busy="true"] {
9665
9681
  cursor: progress;
9666
9682
  gap: .55rem;
9667
9683
  }
9668
9684
 
9669
- .cyber-button[aria-busy="true"]:after, .cyber-icon-button[aria-busy="true"]:after, [data-ui="cyberpunk"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
9685
+ .cyber-button[aria-busy="true"]:after, .cyber-icon-button[aria-busy="true"]:after, [data-ui="cyberpunk"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="cyberpunk"]) .ui-button[aria-busy="true"]:after, :where([data-ui="cyberpunk"]) .ui-icon-button[aria-busy="true"]:after {
9670
9686
  content: "";
9671
9687
  border: .16em solid rgb(var(--cyber-primary-text-rgb)/.42);
9672
9688
  border-block-start-color: currentColor;
@@ -9911,7 +9927,7 @@
9911
9927
  color: var(--y2k-on-primary);
9912
9928
  }
9913
9929
 
9914
- .y2k-title, .y2k-heading, .y2k-kicker, .y2k-button, .y2k-badge, .y2k-nav-link {
9930
+ .y2k-title, .y2k-heading, .y2k-kicker, .y2k-button, .y2k-badge, .y2k-nav-link, :where([data-ui="y2k"]) .ui-button, :where([data-ui="y2k"]) .ui-badge, :where([data-ui="y2k"]) .ui-nav-link {
9915
9931
  font-family: var(--y2k-font-heading);
9916
9932
  }
9917
9933
 
@@ -9949,7 +9965,7 @@
9949
9965
  color: var(--y2k-text-muted);
9950
9966
  }
9951
9967
 
9952
- .y2k-card, .y2k-panel, .y2k-bubble, .y2k-toolbar, .y2k-table-wrap {
9968
+ .y2k-card, .y2k-panel, .y2k-bubble, .y2k-toolbar, .y2k-table-wrap, :where([data-ui="y2k"]) .ui-card, :where([data-ui="y2k"]) .ui-toolbar, :where([data-ui="y2k"]) .ui-table-wrap {
9953
9969
  background: linear-gradient(145deg,#ffffff6b,#ffffff14),var(--y2k-surface);
9954
9970
  color: var(--y2k-text);
9955
9971
  border: 1px solid #ffffff61;
@@ -9962,7 +9978,7 @@
9962
9978
  overflow: hidden;
9963
9979
  }
9964
9980
 
9965
- .y2k-card:before, .y2k-panel:before, .y2k-bubble:before {
9981
+ .y2k-card:before, .y2k-panel:before, .y2k-bubble:before, :where([data-ui="y2k"]) .ui-card:before {
9966
9982
  content: "";
9967
9983
  pointer-events: none;
9968
9984
  background: radial-gradient(circle at 20% 0%,#ffffff6b,transparent 22%),linear-gradient(120deg,transparent 0 55%,rgb(var(--y2k-accent-rgb)/.12));
@@ -9970,11 +9986,11 @@
9970
9986
  inset: 0;
9971
9987
  }
9972
9988
 
9973
- .y2k-card, .y2k-panel, .y2k-bubble {
9989
+ .y2k-card, .y2k-panel, .y2k-bubble, :where([data-ui="y2k"]) .ui-card {
9974
9990
  padding: var(--y2k-space-6);
9975
9991
  }
9976
9992
 
9977
- .y2k-toolbar {
9993
+ .y2k-toolbar, :where([data-ui="y2k"]) .ui-toolbar {
9978
9994
  justify-content: space-between;
9979
9995
  align-items: center;
9980
9996
  gap: var(--y2k-space-4);
@@ -10000,7 +10016,7 @@
10000
10016
  padding: var(--y2k-space-5);
10001
10017
  }
10002
10018
 
10003
- .y2k-button, .y2k-icon-button {
10019
+ .y2k-button, .y2k-icon-button, :where([data-ui="y2k"]) .ui-button, :where([data-ui="y2k"]) .ui-icon-button {
10004
10020
  appearance: none;
10005
10021
  justify-content: center;
10006
10022
  align-items: center;
@@ -10022,56 +10038,56 @@
10022
10038
  display: inline-flex;
10023
10039
  }
10024
10040
 
10025
- .y2k-button:hover, .y2k-icon-button:hover {
10041
+ .y2k-button:hover, .y2k-icon-button:hover, :where([data-ui="y2k"]) .ui-button:hover, :where([data-ui="y2k"]) .ui-icon-button:hover {
10026
10042
  box-shadow: var(--y2k-shadow-md),0 0 26px var(--y2k-glow-accent);
10027
10043
  transform: translateY(-2px);
10028
10044
  }
10029
10045
 
10030
- .y2k-button:active, .y2k-icon-button:active, .y2k-button.is-active, .y2k-button[aria-pressed="true"] {
10046
+ .y2k-button:active, .y2k-icon-button:active, .y2k-button.is-active, .y2k-button[aria-pressed="true"], :where([data-ui="y2k"]) .ui-button:active, :where([data-ui="y2k"]) .ui-icon-button:active, :where([data-ui="y2k"]) .ui-button.is-active, :where([data-ui="y2k"]) .ui-button[aria-pressed="true"] {
10031
10047
  transform: translateY(1px) scale(.99);
10032
10048
  box-shadow: inset 0 8px 16px #00000024;
10033
10049
  }
10034
10050
 
10035
- .y2k-button-primary {
10051
+ .y2k-button-primary, :where([data-ui="y2k"]) .ui-button:where([data-ui-variant="primary"]) {
10036
10052
  background: linear-gradient(180deg,#ffffff75,#ffffff14),var(--y2k-primary);
10037
10053
  color: var(--y2k-on-primary);
10038
10054
  }
10039
10055
 
10040
- .y2k-button-primary:hover {
10056
+ .y2k-button-primary:hover, :where([data-ui="y2k"]) .ui-button:where([data-ui-variant="primary"]):hover {
10041
10057
  background: linear-gradient(180deg,#ffffff80,#ffffff1a),var(--y2k-primary-hover);
10042
10058
  }
10043
10059
 
10044
- .y2k-button-secondary {
10060
+ .y2k-button-secondary, :where([data-ui="y2k"]) .ui-button:where([data-ui-variant="secondary"]) {
10045
10061
  background: linear-gradient(180deg,#ffffff75,#ffffff14),var(--y2k-secondary);
10046
10062
  color: var(--y2k-on-secondary);
10047
10063
  }
10048
10064
 
10049
- .y2k-button-secondary:hover {
10065
+ .y2k-button-secondary:hover, :where([data-ui="y2k"]) .ui-button:where([data-ui-variant="secondary"]):hover {
10050
10066
  background: var(--y2k-secondary-hover);
10051
10067
  }
10052
10068
 
10053
- .y2k-button-danger {
10069
+ .y2k-button-danger, :where([data-ui="y2k"]) .ui-button:where([data-ui-variant="danger"]) {
10054
10070
  background: var(--y2k-danger);
10055
10071
  color: var(--y2k-on-danger);
10056
10072
  }
10057
10073
 
10058
- .y2k-icon-button {
10074
+ .y2k-icon-button, :where([data-ui="y2k"]) .ui-icon-button {
10059
10075
  width: 2.85rem;
10060
10076
  padding: 0;
10061
10077
  }
10062
10078
 
10063
- .y2k-field {
10079
+ .y2k-field, :where([data-ui="y2k"]) .ui-field {
10064
10080
  gap: var(--y2k-space-2);
10065
10081
  flex-direction: column;
10066
10082
  display: flex;
10067
10083
  }
10068
10084
 
10069
- .y2k-label {
10085
+ .y2k-label, :where([data-ui="y2k"]) .ui-label {
10070
10086
  letter-spacing: .04em;
10071
10087
  font-weight: 900;
10072
10088
  }
10073
10089
 
10074
- .y2k-input, .y2k-textarea, .y2k-select {
10090
+ .y2k-input, .y2k-textarea, .y2k-select, :where([data-ui="y2k"]) .ui-input, :where([data-ui="y2k"]) .ui-textarea, :where([data-ui="y2k"]) .ui-select {
10075
10091
  background: linear-gradient(180deg,#ffffff38,#0000000d),var(--y2k-surface-soft);
10076
10092
  width: 100%;
10077
10093
  min-height: 2.9rem;
@@ -10084,22 +10100,22 @@
10084
10100
  box-shadow: inset 0 6px 14px #0000001f;
10085
10101
  }
10086
10102
 
10087
- .y2k-textarea {
10103
+ .y2k-textarea, :where([data-ui="y2k"]) .ui-textarea {
10088
10104
  resize: vertical;
10089
10105
  min-height: 8rem;
10090
10106
  }
10091
10107
 
10092
- .y2k-input:focus, .y2k-textarea:focus, .y2k-select:focus {
10108
+ .y2k-input:focus, .y2k-textarea:focus, .y2k-select:focus, :where([data-ui="y2k"]) .ui-input:focus, :where([data-ui="y2k"]) .ui-textarea:focus, :where([data-ui="y2k"]) .ui-select:focus {
10093
10109
  border-color: var(--y2k-focus);
10094
10110
  box-shadow: inset 0 6px 14px #0000001f,0 0 0 3px rgb(var(--y2k-focus-rgb)/.25),0 0 24px rgb(var(--y2k-focus-rgb)/.22);
10095
10111
  }
10096
10112
 
10097
- .y2k-help-text {
10113
+ .y2k-help-text, :where([data-ui="y2k"]) .ui-help-text {
10098
10114
  color: var(--y2k-text-muted);
10099
10115
  font-size: .9rem;
10100
10116
  }
10101
10117
 
10102
- .y2k-badge {
10118
+ .y2k-badge, :where([data-ui="y2k"]) .ui-badge {
10103
10119
  background: linear-gradient(180deg,#fff6,#ffffff14),var(--y2k-surface-strong);
10104
10120
  min-height: 1.8rem;
10105
10121
  color: var(--y2k-text);
@@ -10113,32 +10129,32 @@
10113
10129
  display: inline-flex;
10114
10130
  }
10115
10131
 
10116
- .y2k-badge-primary {
10132
+ .y2k-badge-primary, :where([data-ui="y2k"]) .ui-badge:where([data-ui-variant="primary"]) {
10117
10133
  background: var(--y2k-primary);
10118
10134
  color: var(--y2k-on-primary);
10119
10135
  }
10120
10136
 
10121
- .y2k-badge-secondary {
10137
+ .y2k-badge-secondary, :where([data-ui="y2k"]) .ui-badge:where([data-ui-variant="secondary"]) {
10122
10138
  background: var(--y2k-secondary);
10123
10139
  color: var(--y2k-on-secondary);
10124
10140
  }
10125
10141
 
10126
- .y2k-badge-success {
10142
+ .y2k-badge-success, :where([data-ui="y2k"]) .ui-badge:where([data-ui-variant="success"]) {
10127
10143
  background: var(--y2k-success);
10128
10144
  color: var(--y2k-on-success);
10129
10145
  }
10130
10146
 
10131
- .y2k-badge-warning {
10147
+ .y2k-badge-warning, :where([data-ui="y2k"]) .ui-badge:where([data-ui-variant="warning"]) {
10132
10148
  background: var(--y2k-warning);
10133
10149
  color: var(--y2k-on-warning);
10134
10150
  }
10135
10151
 
10136
- .y2k-badge-danger {
10152
+ .y2k-badge-danger, :where([data-ui="y2k"]) .ui-badge:where([data-ui-variant="danger"]) {
10137
10153
  background: var(--y2k-danger);
10138
10154
  color: var(--y2k-on-danger);
10139
10155
  }
10140
10156
 
10141
- .y2k-nav {
10157
+ .y2k-nav, :where([data-ui="y2k"]) .ui-nav {
10142
10158
  gap: var(--y2k-space-2);
10143
10159
  padding: var(--y2k-space-2);
10144
10160
  background: linear-gradient(180deg,#ffffff61,#ffffff14),var(--y2k-surface);
@@ -10149,7 +10165,7 @@
10149
10165
  display: flex;
10150
10166
  }
10151
10167
 
10152
- .y2k-nav-link {
10168
+ .y2k-nav-link, :where([data-ui="y2k"]) .ui-nav-link {
10153
10169
  min-height: 2.5rem;
10154
10170
  color: var(--y2k-text-muted);
10155
10171
  border-radius: var(--y2k-radius-pill);
@@ -10160,12 +10176,12 @@
10160
10176
  display: inline-flex;
10161
10177
  }
10162
10178
 
10163
- .y2k-nav-link:hover {
10179
+ .y2k-nav-link:hover, :where([data-ui="y2k"]) .ui-nav-link:hover {
10164
10180
  color: var(--y2k-text);
10165
10181
  background: #ffffff29;
10166
10182
  }
10167
10183
 
10168
- .y2k-nav-link.is-active, .y2k-nav-link[aria-current="page"] {
10184
+ .y2k-nav-link.is-active, .y2k-nav-link[aria-current="page"], :where([data-ui="y2k"]) .ui-nav-link.is-active, :where([data-ui="y2k"]) .ui-nav-link[aria-current="page"] {
10169
10185
  background: var(--y2k-primary);
10170
10186
  color: var(--y2k-on-primary);
10171
10187
  box-shadow: 0 0 20px var(--y2k-glow-primary);
@@ -10196,7 +10212,7 @@
10196
10212
  flex: none;
10197
10213
  }
10198
10214
 
10199
- .y2k-progress {
10215
+ .y2k-progress, :where([data-ui="y2k"]) .ui-progress {
10200
10216
  background: var(--y2k-surface-soft);
10201
10217
  border-radius: var(--y2k-radius-pill);
10202
10218
  width: 100%;
@@ -10205,14 +10221,14 @@
10205
10221
  box-shadow: inset 0 6px 14px #0000001f;
10206
10222
  }
10207
10223
 
10208
- .y2k-progress-bar {
10224
+ .y2k-progress-bar, :where([data-ui="y2k"]) .ui-progress-bar {
10209
10225
  height: 100%;
10210
10226
  width: var(--y2k-progress-value, 50%);
10211
10227
  background: linear-gradient(90deg,var(--y2k-primary),var(--y2k-accent),var(--y2k-secondary));
10212
10228
  border-radius: inherit;
10213
10229
  }
10214
10230
 
10215
- .y2k-alert {
10231
+ .y2k-alert, :where([data-ui="y2k"]) .ui-alert {
10216
10232
  padding: var(--y2k-space-4);
10217
10233
  background: var(--y2k-surface);
10218
10234
  border-radius: var(--y2k-radius-xl);
@@ -10220,49 +10236,49 @@
10220
10236
  border: 1px solid #ffffff61;
10221
10237
  }
10222
10238
 
10223
- .y2k-alert-title {
10239
+ .y2k-alert-title, :where([data-ui="y2k"]) .ui-alert-title {
10224
10240
  margin: 0;
10225
10241
  font-weight: 900;
10226
10242
  }
10227
10243
 
10228
- .y2k-alert-body {
10244
+ .y2k-alert-body, :where([data-ui="y2k"]) .ui-alert-body {
10229
10245
  color: var(--y2k-text-muted);
10230
10246
  margin: .5rem 0 0;
10231
10247
  }
10232
10248
 
10233
- .y2k-alert-success {
10249
+ .y2k-alert-success, :where([data-ui="y2k"]) .ui-alert:where([data-ui-variant="success"]) {
10234
10250
  box-shadow: var(--y2k-shadow-md),0 0 22px rgb(var(--y2k-success-rgb)/.2);
10235
10251
  }
10236
10252
 
10237
- .y2k-alert-warning {
10253
+ .y2k-alert-warning, :where([data-ui="y2k"]) .ui-alert:where([data-ui-variant="warning"]) {
10238
10254
  box-shadow: var(--y2k-shadow-md),0 0 22px rgb(var(--y2k-warning-rgb)/.2);
10239
10255
  }
10240
10256
 
10241
- .y2k-alert-danger {
10257
+ .y2k-alert-danger, :where([data-ui="y2k"]) .ui-alert:where([data-ui-variant="danger"]) {
10242
10258
  box-shadow: var(--y2k-shadow-md),0 0 22px rgb(var(--y2k-danger-rgb)/.2);
10243
10259
  }
10244
10260
 
10245
- .y2k-table-wrap {
10261
+ .y2k-table-wrap, :where([data-ui="y2k"]) .ui-table-wrap {
10246
10262
  overflow: auto;
10247
10263
  }
10248
10264
 
10249
- .y2k-table {
10265
+ .y2k-table, :where([data-ui="y2k"]) .ui-table {
10250
10266
  border-collapse: collapse;
10251
10267
  width: 100%;
10252
10268
  }
10253
10269
 
10254
- .y2k-table th, .y2k-table td {
10270
+ .y2k-table th, .y2k-table td, :where([data-ui="y2k"]) .ui-table th, :where([data-ui="y2k"]) .ui-table td {
10255
10271
  border-bottom: 1px solid rgb(var(--y2k-border-rgb)/.34);
10256
10272
  text-align: left;
10257
10273
  padding: .9rem 1rem;
10258
10274
  }
10259
10275
 
10260
- .y2k-table th {
10276
+ .y2k-table th, :where([data-ui="y2k"]) .ui-table th {
10261
10277
  background: #ffffff29;
10262
10278
  font-weight: 900;
10263
10279
  }
10264
10280
 
10265
- .y2k-table td {
10281
+ .y2k-table td, :where([data-ui="y2k"]) .ui-table td {
10266
10282
  color: var(--y2k-text-muted);
10267
10283
  }
10268
10284
 
@@ -10302,15 +10318,15 @@
10302
10318
  }
10303
10319
  }
10304
10320
 
10305
- .y2k-card, .y2k-panel {
10321
+ .y2k-card, .y2k-panel, :where([data-ui="y2k"]) .ui-card {
10306
10322
  background: var(--y2k-card-bg);
10307
10323
  }
10308
10324
 
10309
- .y2k-toolbar, .y2k-table-wrap, .y2k-button:not(.y2k-button-primary):not(.y2k-button-secondary):not(.y2k-button-danger):not(.y2k-button-ghost), .y2k-icon-button {
10325
+ .y2k-toolbar, .y2k-table-wrap, .y2k-button:not(.y2k-button-primary):not(.y2k-button-secondary):not(.y2k-button-danger):not(.y2k-button-ghost), .y2k-icon-button, :where([data-ui="y2k"]) .ui-toolbar, :where([data-ui="y2k"]) .ui-table-wrap, :where([data-ui="y2k"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="y2k"]) .ui-icon-button {
10310
10326
  background: var(--y2k-control-bg);
10311
10327
  }
10312
10328
 
10313
- .y2k-button, .y2k-icon-button, .y2k-badge, .y2k-nav-link {
10329
+ .y2k-button, .y2k-icon-button, .y2k-badge, .y2k-nav-link, :where([data-ui="y2k"]) .ui-button, :where([data-ui="y2k"]) .ui-icon-button, :where([data-ui="y2k"]) .ui-badge, :where([data-ui="y2k"]) .ui-nav-link {
10314
10330
  font-family: var(--y2k-font-control);
10315
10331
  }
10316
10332
 
@@ -10340,12 +10356,12 @@
10340
10356
  inline-size: 3rem;
10341
10357
  }
10342
10358
 
10343
- .y2k-button[aria-busy="true"], .y2k-icon-button[aria-busy="true"], [data-ui="y2k"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
10359
+ .y2k-button[aria-busy="true"], .y2k-icon-button[aria-busy="true"], [data-ui="y2k"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="y2k"]) .ui-button[aria-busy="true"], :where([data-ui="y2k"]) .ui-icon-button[aria-busy="true"] {
10344
10360
  cursor: progress;
10345
10361
  gap: .55rem;
10346
10362
  }
10347
10363
 
10348
- .y2k-button[aria-busy="true"]:after, .y2k-icon-button[aria-busy="true"]:after, [data-ui="y2k"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
10364
+ .y2k-button[aria-busy="true"]:after, .y2k-icon-button[aria-busy="true"]:after, [data-ui="y2k"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="y2k"]) .ui-button[aria-busy="true"]:after, :where([data-ui="y2k"]) .ui-icon-button[aria-busy="true"]:after {
10349
10365
  content: "";
10350
10366
  border: .16em solid rgb(var(--y2k-primary-text-rgb)/.42);
10351
10367
  border-block-start-color: currentColor;
@@ -10590,7 +10606,7 @@
10590
10606
  color: var(--rg-on-primary);
10591
10607
  }
10592
10608
 
10593
- .rg-title, .rg-heading, .rg-kicker, .rg-button, .rg-badge, .rg-nav-link {
10609
+ .rg-title, .rg-heading, .rg-kicker, .rg-button, .rg-badge, .rg-nav-link, :where([data-ui="retro-glass"]) .ui-button, :where([data-ui="retro-glass"]) .ui-badge, :where([data-ui="retro-glass"]) .ui-nav-link {
10594
10610
  font-family: var(--rg-font-heading);
10595
10611
  text-transform: uppercase;
10596
10612
  }
@@ -10627,7 +10643,7 @@
10627
10643
  color: var(--rg-text-muted);
10628
10644
  }
10629
10645
 
10630
- .rg-card, .rg-panel, .rg-console, .rg-toolbar, .rg-table-wrap {
10646
+ .rg-card, .rg-panel, .rg-console, .rg-toolbar, .rg-table-wrap, :where([data-ui="retro-glass"]) .ui-card, :where([data-ui="retro-glass"]) .ui-toolbar, :where([data-ui="retro-glass"]) .ui-table-wrap {
10631
10647
  background: linear-gradient(135deg,#ffffff2e,#ffffff0a),linear-gradient(135deg,rgb(var(--rg-primary-rgb)/.06),transparent 52%),var(--rg-surface);
10632
10648
  color: var(--rg-text);
10633
10649
  border: 1px solid var(--rg-border);
@@ -10641,7 +10657,7 @@
10641
10657
  overflow: hidden;
10642
10658
  }
10643
10659
 
10644
- .rg-card:before, .rg-panel:before, .rg-console:before {
10660
+ .rg-card:before, .rg-panel:before, .rg-console:before, :where([data-ui="retro-glass"]) .ui-card:before {
10645
10661
  content: "";
10646
10662
  pointer-events: none;
10647
10663
  background: linear-gradient(180deg,#ffffff1a,transparent 30%),linear-gradient(90deg,transparent,rgb(var(--rg-accent-rgb)/.08),transparent);
@@ -10649,7 +10665,7 @@
10649
10665
  inset: 0;
10650
10666
  }
10651
10667
 
10652
- .rg-card, .rg-panel, .rg-console {
10668
+ .rg-card, .rg-panel, .rg-console, :where([data-ui="retro-glass"]) .ui-card {
10653
10669
  padding: var(--rg-space-6);
10654
10670
  }
10655
10671
 
@@ -10658,7 +10674,7 @@
10658
10674
  box-shadow: var(--rg-shadow-lg),inset 0 0 28px rgb(var(--rg-primary-rgb)/.08),0 0 32px var(--rg-glow-primary);
10659
10675
  }
10660
10676
 
10661
- .rg-toolbar {
10677
+ .rg-toolbar, :where([data-ui="retro-glass"]) .ui-toolbar {
10662
10678
  justify-content: space-between;
10663
10679
  align-items: center;
10664
10680
  gap: var(--rg-space-4);
@@ -10685,7 +10701,7 @@
10685
10701
  padding: var(--rg-space-5);
10686
10702
  }
10687
10703
 
10688
- .rg-button, .rg-icon-button {
10704
+ .rg-button, .rg-icon-button, :where([data-ui="retro-glass"]) .ui-button, :where([data-ui="retro-glass"]) .ui-icon-button {
10689
10705
  appearance: none;
10690
10706
  justify-content: center;
10691
10707
  align-items: center;
@@ -10709,54 +10725,54 @@
10709
10725
  display: inline-flex;
10710
10726
  }
10711
10727
 
10712
- .rg-button:hover, .rg-icon-button:hover {
10728
+ .rg-button:hover, .rg-icon-button:hover, :where([data-ui="retro-glass"]) .ui-button:hover, :where([data-ui="retro-glass"]) .ui-icon-button:hover {
10713
10729
  border-color: rgb(var(--rg-primary-rgb)/.68);
10714
10730
  box-shadow: var(--rg-shadow-md),0 0 24px var(--rg-glow-primary);
10715
10731
  transform: translateY(-2px);
10716
10732
  }
10717
10733
 
10718
- .rg-button:active, .rg-icon-button:active, .rg-button.is-active, .rg-button[aria-pressed="true"] {
10734
+ .rg-button:active, .rg-icon-button:active, .rg-button.is-active, .rg-button[aria-pressed="true"], :where([data-ui="retro-glass"]) .ui-button:active, :where([data-ui="retro-glass"]) .ui-icon-button:active, :where([data-ui="retro-glass"]) .ui-button.is-active, :where([data-ui="retro-glass"]) .ui-button[aria-pressed="true"] {
10719
10735
  box-shadow: inset 0 8px 18px #0000002e,0 0 18px var(--rg-glow-primary);
10720
10736
  transform: translateY(1px);
10721
10737
  }
10722
10738
 
10723
- .rg-button-primary {
10739
+ .rg-button-primary, :where([data-ui="retro-glass"]) .ui-button:where([data-ui-variant="primary"]) {
10724
10740
  background: linear-gradient(135deg,#ffffff38,#ffffff0a),var(--rg-primary);
10725
10741
  color: var(--rg-on-primary);
10726
10742
  border-color: rgb(var(--rg-primary-rgb)/.72);
10727
10743
  }
10728
10744
 
10729
- .rg-button-primary:hover {
10745
+ .rg-button-primary:hover, :where([data-ui="retro-glass"]) .ui-button:where([data-ui-variant="primary"]):hover {
10730
10746
  background: var(--rg-primary-hover);
10731
10747
  }
10732
10748
 
10733
- .rg-button-secondary {
10749
+ .rg-button-secondary, :where([data-ui="retro-glass"]) .ui-button:where([data-ui-variant="secondary"]) {
10734
10750
  background: linear-gradient(135deg,#ffffff38,#ffffff0a),var(--rg-secondary);
10735
10751
  color: var(--rg-on-secondary);
10736
10752
  border-color: rgb(var(--rg-secondary-rgb)/.72);
10737
10753
  }
10738
10754
 
10739
- .rg-button-secondary:hover {
10755
+ .rg-button-secondary:hover, :where([data-ui="retro-glass"]) .ui-button:where([data-ui-variant="secondary"]):hover {
10740
10756
  background: var(--rg-secondary-hover);
10741
10757
  }
10742
10758
 
10743
- .rg-button-danger {
10759
+ .rg-button-danger, :where([data-ui="retro-glass"]) .ui-button:where([data-ui-variant="danger"]) {
10744
10760
  background: var(--rg-danger);
10745
10761
  color: var(--rg-on-danger);
10746
10762
  }
10747
10763
 
10748
- .rg-icon-button {
10764
+ .rg-icon-button, :where([data-ui="retro-glass"]) .ui-icon-button {
10749
10765
  width: 2.85rem;
10750
10766
  padding: 0;
10751
10767
  }
10752
10768
 
10753
- .rg-field {
10769
+ .rg-field, :where([data-ui="retro-glass"]) .ui-field {
10754
10770
  gap: var(--rg-space-2);
10755
10771
  flex-direction: column;
10756
10772
  display: flex;
10757
10773
  }
10758
10774
 
10759
- .rg-label {
10775
+ .rg-label, :where([data-ui="retro-glass"]) .ui-label {
10760
10776
  font-family: var(--rg-font-heading);
10761
10777
  text-transform: uppercase;
10762
10778
  letter-spacing: .12em;
@@ -10764,7 +10780,7 @@
10764
10780
  font-weight: 900;
10765
10781
  }
10766
10782
 
10767
- .rg-input, .rg-textarea, .rg-select {
10783
+ .rg-input, .rg-textarea, .rg-select, :where([data-ui="retro-glass"]) .ui-input, :where([data-ui="retro-glass"]) .ui-textarea, :where([data-ui="retro-glass"]) .ui-select {
10768
10784
  background: linear-gradient(180deg,#ffffff0f,#00000014),var(--rg-surface-soft);
10769
10785
  width: 100%;
10770
10786
  min-height: 2.9rem;
@@ -10778,22 +10794,22 @@
10778
10794
  box-shadow: inset 0 8px 18px #00000024;
10779
10795
  }
10780
10796
 
10781
- .rg-textarea {
10797
+ .rg-textarea, :where([data-ui="retro-glass"]) .ui-textarea {
10782
10798
  resize: vertical;
10783
10799
  min-height: 8rem;
10784
10800
  }
10785
10801
 
10786
- .rg-input:focus, .rg-textarea:focus, .rg-select:focus {
10802
+ .rg-input:focus, .rg-textarea:focus, .rg-select:focus, :where([data-ui="retro-glass"]) .ui-input:focus, :where([data-ui="retro-glass"]) .ui-textarea:focus, :where([data-ui="retro-glass"]) .ui-select:focus {
10787
10803
  border-color: var(--rg-focus);
10788
10804
  box-shadow: inset 0 8px 18px #00000024,0 0 0 3px rgb(var(--rg-focus-rgb)/.24),0 0 26px rgb(var(--rg-focus-rgb)/.22);
10789
10805
  }
10790
10806
 
10791
- .rg-help-text {
10807
+ .rg-help-text, :where([data-ui="retro-glass"]) .ui-help-text {
10792
10808
  color: var(--rg-text-muted);
10793
10809
  font-size: .9rem;
10794
10810
  }
10795
10811
 
10796
- .rg-badge {
10812
+ .rg-badge, :where([data-ui="retro-glass"]) .ui-badge {
10797
10813
  background: linear-gradient(135deg,#fff3,#ffffff0a),var(--rg-surface);
10798
10814
  min-height: 1.8rem;
10799
10815
  color: var(--rg-text);
@@ -10809,32 +10825,32 @@
10809
10825
  display: inline-flex;
10810
10826
  }
10811
10827
 
10812
- .rg-badge-primary {
10828
+ .rg-badge-primary, :where([data-ui="retro-glass"]) .ui-badge:where([data-ui-variant="primary"]) {
10813
10829
  background: var(--rg-primary);
10814
10830
  color: var(--rg-on-primary);
10815
10831
  }
10816
10832
 
10817
- .rg-badge-secondary {
10833
+ .rg-badge-secondary, :where([data-ui="retro-glass"]) .ui-badge:where([data-ui-variant="secondary"]) {
10818
10834
  background: var(--rg-secondary);
10819
10835
  color: var(--rg-on-secondary);
10820
10836
  }
10821
10837
 
10822
- .rg-badge-success {
10838
+ .rg-badge-success, :where([data-ui="retro-glass"]) .ui-badge:where([data-ui-variant="success"]) {
10823
10839
  background: var(--rg-success);
10824
10840
  color: var(--rg-on-success);
10825
10841
  }
10826
10842
 
10827
- .rg-badge-warning {
10843
+ .rg-badge-warning, :where([data-ui="retro-glass"]) .ui-badge:where([data-ui-variant="warning"]) {
10828
10844
  background: var(--rg-warning);
10829
10845
  color: var(--rg-on-warning);
10830
10846
  }
10831
10847
 
10832
- .rg-badge-danger {
10848
+ .rg-badge-danger, :where([data-ui="retro-glass"]) .ui-badge:where([data-ui-variant="danger"]) {
10833
10849
  background: var(--rg-danger);
10834
10850
  color: var(--rg-on-danger);
10835
10851
  }
10836
10852
 
10837
- .rg-nav {
10853
+ .rg-nav, :where([data-ui="retro-glass"]) .ui-nav {
10838
10854
  gap: var(--rg-space-2);
10839
10855
  padding: var(--rg-space-2);
10840
10856
  background: linear-gradient(135deg,#ffffff2e,#ffffff0a),var(--rg-surface);
@@ -10846,7 +10862,7 @@
10846
10862
  display: flex;
10847
10863
  }
10848
10864
 
10849
- .rg-nav-link {
10865
+ .rg-nav-link, :where([data-ui="retro-glass"]) .ui-nav-link {
10850
10866
  min-height: 2.5rem;
10851
10867
  color: var(--rg-text-muted);
10852
10868
  border-radius: var(--rg-radius-pill);
@@ -10859,13 +10875,13 @@
10859
10875
  display: inline-flex;
10860
10876
  }
10861
10877
 
10862
- .rg-nav-link:hover {
10878
+ .rg-nav-link:hover, :where([data-ui="retro-glass"]) .ui-nav-link:hover {
10863
10879
  color: var(--rg-text);
10864
10880
  border-color: rgb(var(--rg-primary-rgb)/.36);
10865
10881
  background: #ffffff1a;
10866
10882
  }
10867
10883
 
10868
- .rg-nav-link.is-active, .rg-nav-link[aria-current="page"] {
10884
+ .rg-nav-link.is-active, .rg-nav-link[aria-current="page"], :where([data-ui="retro-glass"]) .ui-nav-link.is-active, :where([data-ui="retro-glass"]) .ui-nav-link[aria-current="page"] {
10869
10885
  background: var(--rg-primary);
10870
10886
  color: var(--rg-on-primary);
10871
10887
  box-shadow: 0 0 22px var(--rg-glow-primary);
@@ -10899,7 +10915,7 @@
10899
10915
  transform: rotate(45deg);
10900
10916
  }
10901
10917
 
10902
- .rg-progress {
10918
+ .rg-progress, :where([data-ui="retro-glass"]) .ui-progress {
10903
10919
  background: var(--rg-surface-soft);
10904
10920
  border: 1px solid rgb(var(--rg-border-rgb)/.4);
10905
10921
  border-radius: var(--rg-radius-pill);
@@ -10909,7 +10925,7 @@
10909
10925
  box-shadow: inset 0 8px 18px #00000024;
10910
10926
  }
10911
10927
 
10912
- .rg-progress-bar {
10928
+ .rg-progress-bar, :where([data-ui="retro-glass"]) .ui-progress-bar {
10913
10929
  height: 100%;
10914
10930
  width: var(--rg-progress-value, 50%);
10915
10931
  background: linear-gradient(90deg,var(--rg-primary),var(--rg-accent),var(--rg-secondary));
@@ -10917,7 +10933,7 @@
10917
10933
  box-shadow: 0 0 18px var(--rg-glow-primary);
10918
10934
  }
10919
10935
 
10920
- .rg-alert {
10936
+ .rg-alert, :where([data-ui="retro-glass"]) .ui-alert {
10921
10937
  padding: var(--rg-space-4);
10922
10938
  background: var(--rg-surface);
10923
10939
  border: 1px solid var(--rg-border);
@@ -10926,52 +10942,52 @@
10926
10942
  backdrop-filter: blur(16px);
10927
10943
  }
10928
10944
 
10929
- .rg-alert-title {
10945
+ .rg-alert-title, :where([data-ui="retro-glass"]) .ui-alert-title {
10930
10946
  font-family: var(--rg-font-heading);
10931
10947
  text-transform: uppercase;
10932
10948
  margin: 0;
10933
10949
  }
10934
10950
 
10935
- .rg-alert-body {
10951
+ .rg-alert-body, :where([data-ui="retro-glass"]) .ui-alert-body {
10936
10952
  color: var(--rg-text-muted);
10937
10953
  margin: .5rem 0 0;
10938
10954
  }
10939
10955
 
10940
- .rg-alert-success {
10956
+ .rg-alert-success, :where([data-ui="retro-glass"]) .ui-alert:where([data-ui-variant="success"]) {
10941
10957
  border-left: 4px solid var(--rg-success);
10942
10958
  }
10943
10959
 
10944
- .rg-alert-warning {
10960
+ .rg-alert-warning, :where([data-ui="retro-glass"]) .ui-alert:where([data-ui-variant="warning"]) {
10945
10961
  border-left: 4px solid var(--rg-warning);
10946
10962
  }
10947
10963
 
10948
- .rg-alert-danger {
10964
+ .rg-alert-danger, :where([data-ui="retro-glass"]) .ui-alert:where([data-ui-variant="danger"]) {
10949
10965
  border-left: 4px solid var(--rg-danger);
10950
10966
  }
10951
10967
 
10952
- .rg-table-wrap {
10968
+ .rg-table-wrap, :where([data-ui="retro-glass"]) .ui-table-wrap {
10953
10969
  overflow: auto;
10954
10970
  }
10955
10971
 
10956
- .rg-table {
10972
+ .rg-table, :where([data-ui="retro-glass"]) .ui-table {
10957
10973
  border-collapse: collapse;
10958
10974
  width: 100%;
10959
10975
  }
10960
10976
 
10961
- .rg-table th, .rg-table td {
10977
+ .rg-table th, .rg-table td, :where([data-ui="retro-glass"]) .ui-table th, :where([data-ui="retro-glass"]) .ui-table td {
10962
10978
  border-bottom: 1px solid rgb(var(--rg-border-rgb)/.34);
10963
10979
  text-align: left;
10964
10980
  padding: .9rem 1rem;
10965
10981
  }
10966
10982
 
10967
- .rg-table th {
10983
+ .rg-table th, :where([data-ui="retro-glass"]) .ui-table th {
10968
10984
  background: rgb(var(--rg-primary-rgb)/.1);
10969
10985
  font-family: var(--rg-font-heading);
10970
10986
  text-transform: uppercase;
10971
10987
  letter-spacing: .1em;
10972
10988
  }
10973
10989
 
10974
- .rg-table td {
10990
+ .rg-table td, :where([data-ui="retro-glass"]) .ui-table td {
10975
10991
  color: var(--rg-text-muted);
10976
10992
  }
10977
10993
 
@@ -11019,15 +11035,15 @@
11019
11035
  }
11020
11036
  }
11021
11037
 
11022
- .rg-card, .rg-panel {
11038
+ .rg-card, .rg-panel, :where([data-ui="retro-glass"]) .ui-card {
11023
11039
  background: var(--rg-card-bg);
11024
11040
  }
11025
11041
 
11026
- .rg-toolbar, .rg-table-wrap, .rg-button:not(.rg-button-primary):not(.rg-button-secondary):not(.rg-button-danger):not(.rg-button-ghost), .rg-icon-button {
11042
+ .rg-toolbar, .rg-table-wrap, .rg-button:not(.rg-button-primary):not(.rg-button-secondary):not(.rg-button-danger):not(.rg-button-ghost), .rg-icon-button, :where([data-ui="retro-glass"]) .ui-toolbar, :where([data-ui="retro-glass"]) .ui-table-wrap, :where([data-ui="retro-glass"]) .ui-button:not(.ui-button:where([data-ui-variant="primary"])):not(.ui-button:where([data-ui-variant="secondary"])):not(.ui-button:where([data-ui-variant="danger"])):not(.ui-button:where([data-ui-variant="ghost"])), :where([data-ui="retro-glass"]) .ui-icon-button {
11027
11043
  background: var(--rg-control-bg);
11028
11044
  }
11029
11045
 
11030
- .rg-button, .rg-icon-button, .rg-badge, .rg-nav-link {
11046
+ .rg-button, .rg-icon-button, .rg-badge, .rg-nav-link, :where([data-ui="retro-glass"]) .ui-button, :where([data-ui="retro-glass"]) .ui-icon-button, :where([data-ui="retro-glass"]) .ui-badge, :where([data-ui="retro-glass"]) .ui-nav-link {
11031
11047
  font-family: var(--rg-font-control);
11032
11048
  }
11033
11049
 
@@ -11058,12 +11074,12 @@
11058
11074
  inline-size: 3rem;
11059
11075
  }
11060
11076
 
11061
- .rg-button[aria-busy="true"], .rg-icon-button[aria-busy="true"], [data-ui="retro-glass"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]) {
11077
+ .rg-button[aria-busy="true"], .rg-icon-button[aria-busy="true"], [data-ui="retro-glass"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]), :where([data-ui="retro-glass"]) .ui-button[aria-busy="true"], :where([data-ui="retro-glass"]) .ui-icon-button[aria-busy="true"] {
11062
11078
  cursor: progress;
11063
11079
  gap: .55rem;
11064
11080
  }
11065
11081
 
11066
- .rg-button[aria-busy="true"]:after, .rg-icon-button[aria-busy="true"]:after, [data-ui="retro-glass"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after {
11082
+ .rg-button[aria-busy="true"]:after, .rg-icon-button[aria-busy="true"]:after, [data-ui="retro-glass"] :where(button[aria-busy="true"], input[type="button"][aria-busy="true"], input[type="submit"][aria-busy="true"], input[type="reset"][aria-busy="true"]):after, :where([data-ui="retro-glass"]) .ui-button[aria-busy="true"]:after, :where([data-ui="retro-glass"]) .ui-icon-button[aria-busy="true"]:after {
11067
11083
  content: "";
11068
11084
  border: .16em solid rgb(var(--rg-primary-text-rgb)/.42);
11069
11085
  border-block-start-color: currentColor;