@tangible/ui 0.0.5 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -66,6 +66,7 @@
66
66
  /* @tui-tokens
67
67
  --tui-card-bg
68
68
  --tui-card-border
69
+ --tui-card-border-width
69
70
  --tui-card-border-interact
70
71
  --tui-card-radius
71
72
  --tui-card-shadow
@@ -97,6 +98,7 @@
97
98
  --tui-combobox-content-border
98
99
  --tui-combobox-content-shadow
99
100
  --tui-combobox-content-radius
101
+ --tui-combobox-option-radius
100
102
  --tui-combobox-option-bg-hover
101
103
  --tui-combobox-option-bg-selected
102
104
  */
@@ -132,6 +134,7 @@
132
134
  --tui-multiselect-content-border
133
135
  --tui-multiselect-content-shadow
134
136
  --tui-multiselect-content-radius
137
+ --tui-multiselect-option-radius
135
138
  --tui-multiselect-option-bg-hover
136
139
  --tui-multiselect-option-bg-selected
137
140
  --tui-multiselect-chip-bg
@@ -147,6 +150,7 @@
147
150
  --tui-select-content-border
148
151
  --tui-select-content-shadow
149
152
  --tui-select-content-radius
153
+ --tui-select-option-radius
150
154
  --tui-select-option-bg-hover
151
155
  --tui-select-option-bg-selected
152
156
  */
@@ -169,6 +173,11 @@
169
173
  /* @tui-tokens
170
174
  --tui-modal-z
171
175
  --tui-modal-max
176
+ --tui-modal-spacing
177
+ --tui-modal-offset-top
178
+ --tui-modal-offset-bottom
179
+ --tui-modal-offset-start
180
+ --tui-modal-offset-end
172
181
  --tui-modal-backdrop
173
182
  --tui-modal-bg
174
183
  --tui-modal-border
@@ -203,6 +212,14 @@
203
212
  */
204
213
  /* @tui-tokens
205
214
  --tui-radio-accent
215
+ --tui-radio-size
216
+ --tui-radio-border
217
+ --tui-radio-bg
218
+ --tui-radio-gap
219
+ --tui-radio-font-size
220
+ --tui-radio-label-color
221
+ --tui-radio-description-color
222
+ --tui-radio-group-gap
206
223
  */
207
224
  /* @tui-tokens
208
225
  --tui-rating-active
@@ -234,7 +251,14 @@
234
251
  */
235
252
  /* @tui-tokens
236
253
  --tui-switch-accent
237
- --tui-switch-track-off
254
+ --tui-switch-bg
255
+ --tui-switch-border
256
+ --tui-switch-thumb-bg
257
+ --tui-switch-track-height
258
+ --tui-switch-size
259
+ --tui-switch-label-color
260
+ --tui-switch-font-size
261
+ --tui-switch-gap
238
262
  */
239
263
  /* @tui-tokens
240
264
  --tui-sidebar-width
@@ -630,6 +654,8 @@
630
654
  --tui-radius-lg: 12px;
631
655
  --tui-font-size-base: 16px;
632
656
  --tui-line: 1.5;
657
+ --tui-typography-weight-normal: 400;
658
+ --tui-typography-weight-bold: 700;
633
659
  --tui-typography-size: var(--tui-font-size-base);
634
660
  --tui-typography-line-height: 1.4;
635
661
  --tui-typography-font-family: inherit;
@@ -671,6 +697,13 @@
671
697
  text-transform: none;
672
698
  letter-spacing: normal;
673
699
  }
700
+ .tui-interface input:focus, .tui-interface input:focus-visible,
701
+ .tui-interface textarea:focus,
702
+ .tui-interface textarea:focus-visible,
703
+ .tui-interface select:focus,
704
+ .tui-interface select:focus-visible {
705
+ box-shadow: none;
706
+ }
674
707
 
675
708
 
676
709
  :where(.tui-interface) .tui-accordion {
@@ -680,7 +713,7 @@
680
713
  }
681
714
  :where(.tui-interface) .tui-accordion__item {
682
715
  --_bg: var(--tui-accordion-bg, var(--tui-color-bg-surface));
683
- --_bg-open: var(--tui-accordion-bg-open, var(--_bg));
716
+ --_bg-open: var(--tui-accordion-bg-open, var(--tui-color-bg-surface));
684
717
  --_border: var(--tui-accordion-border, var(--tui-color-border));
685
718
  --_divider: var(--tui-accordion-divider, var(--_border));
686
719
  --_radius: var(--tui-accordion-radius, var(--tui-radius-md));
@@ -1046,7 +1079,6 @@
1046
1079
  font-weight: var(--tui-button-font-weight, normal);
1047
1080
  line-height: var(--tui-button-line-height, 1.4);
1048
1081
  display: inline-flex;
1049
- align-self: center;
1050
1082
  text-align: center;
1051
1083
  justify-content: center;
1052
1084
  align-items: center;
@@ -1065,7 +1097,7 @@
1065
1097
  border-width: var(--tui-border-width);
1066
1098
  }
1067
1099
  .tui-interface .tui-button .tui-icon {
1068
- font-size: inherit;
1100
+ font-size: 1.25em;
1069
1101
  }
1070
1102
  .tui-interface .tui-button:hover {
1071
1103
  --_bg: var(--_bg-interact);
@@ -1267,7 +1299,6 @@
1267
1299
  font-weight: var(--tui-button-font-weight, normal);
1268
1300
  line-height: var(--tui-button-line-height, 1.4);
1269
1301
  display: inline-flex;
1270
- align-self: center;
1271
1302
  text-align: center;
1272
1303
  justify-content: center;
1273
1304
  align-items: center;
@@ -1303,6 +1334,7 @@
1303
1334
  :where(.tui-interface) .tui-card {
1304
1335
  --_bg: var(--tui-card-bg, var(--tui-color-bg-surface));
1305
1336
  --_border: var(--tui-card-border, var(--tui-color-border));
1337
+ --_border-width: var(--tui-card-border-width, var(--tui-border-width));
1306
1338
  --_border-interact: var(--tui-card-border-interact, var(--tui-theme-primary-base));
1307
1339
  --_radius: var(--tui-card-radius, var(--tui-radius-md));
1308
1340
  --_shadow: var(--tui-card-shadow, var(--tui-shadow-sm));
@@ -1314,7 +1346,7 @@
1314
1346
  position: relative;
1315
1347
  width: 100%;
1316
1348
  border-style: solid;
1317
- border-width: var(--tui-border-width);
1349
+ border-width: var(--_border-width);
1318
1350
  border-color: var(--_border);
1319
1351
  border-radius: var(--_radius);
1320
1352
  background-color: var(--_bg);
@@ -1370,40 +1402,40 @@
1370
1402
  border-end-start-radius: calc(var(--_radius) - 1px);
1371
1403
  }
1372
1404
  @container tuiCard (width >= 400px) {
1373
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner {
1405
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner {
1374
1406
  display: flex;
1375
1407
  flex-direction: row;
1376
1408
  align-items: center;
1377
1409
  gap: var(--_padding);
1378
1410
  }
1379
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__media.is-flush {
1411
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__media.is-flush {
1380
1412
  object-fit: cover;
1381
1413
  object-position: center;
1382
1414
  margin-block: calc(var(--_padding) * -1);
1383
1415
  height: calc(100% + 2 * var(--_padding));
1384
1416
  }
1385
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner *:has(.tui-card__media.is-flush) {
1417
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner *:has(.tui-card__media.is-flush) {
1386
1418
  align-self: stretch;
1387
1419
  }
1388
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__head {
1420
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__head {
1389
1421
  padding-inline-start: var(--_padding);
1390
1422
  padding-block: var(--_padding);
1391
1423
  flex: 0 1 auto;
1392
1424
  }
1393
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__head:has(.tui-icon:only-child) {
1425
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__head:has(.tui-icon:only-child) {
1394
1426
  flex: 0 0 max-content;
1395
1427
  }
1396
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__head .tui-card__media.is-flush:first-child {
1428
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__head .tui-card__media.is-flush:first-child {
1397
1429
  margin-inline-end: var(--_padding);
1398
1430
  max-width: calc(100% + var(--_padding));
1399
1431
  border-start-end-radius: 0;
1400
1432
  border-end-start-radius: calc(var(--_radius) - 1px);
1401
1433
  }
1402
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__body {
1434
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__body {
1403
1435
  flex: 2 1 auto;
1404
1436
  padding-block: var(--_padding);
1405
1437
  }
1406
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__foot {
1438
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__foot {
1407
1439
  width: unset;
1408
1440
  flex: 0 1 var(--_foot-basis);
1409
1441
  padding-block: var(--_padding);
@@ -1411,20 +1443,20 @@
1411
1443
  margin-inline-start: auto;
1412
1444
  justify-content: flex-end;
1413
1445
  }
1414
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__foot .tui-card__media.is-flush:last-child {
1446
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__foot .tui-card__media.is-flush:last-child {
1415
1447
  margin-inline-start: var(--_padding);
1416
1448
  max-width: calc(100% + var(--_padding));
1417
1449
  border-end-start-radius: 0;
1418
1450
  border-start-end-radius: calc(var(--_radius) - 1px);
1419
1451
  }
1420
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__head:not(:first-child),
1421
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__body:not(:first-child),
1422
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__foot:not(:first-child) {
1452
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__head:not(:first-child),
1453
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__body:not(:first-child),
1454
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__foot:not(:first-child) {
1423
1455
  padding-inline-start: 0;
1424
1456
  }
1425
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__head:not(:last-child),
1426
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__body:not(:last-child),
1427
- :where(.tui-interface) .tui-card.is-layout-inline .tui-card__inner .tui-card__foot:not(:last-child) {
1457
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__head:not(:last-child),
1458
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__body:not(:last-child),
1459
+ :where(:where(.tui-interface) .tui-card.is-layout-inline) .tui-card__inner .tui-card__foot:not(:last-child) {
1428
1460
  padding-inline-end: 0;
1429
1461
  }
1430
1462
  }
@@ -1791,7 +1823,7 @@
1791
1823
  align-items: center;
1792
1824
  }
1793
1825
  .tui-interface .tui-combobox__input {
1794
- --_bg: var(--tui-combobox-input-bg, var(--tui-select-trigger-bg, var(--tui-color-bg)));
1826
+ --_bg: var(--tui-combobox-input-bg, var(--tui-select-trigger-bg, var(--tui-color-bg-surface)));
1795
1827
  --_fg: var(--tui-combobox-input-fg, var(--tui-select-trigger-fg, var(--tui-color-fg)));
1796
1828
  --_border: var(--tui-combobox-input-border, var(--tui-select-trigger-border, var(--tui-color-border)));
1797
1829
  --_border-focus: var(--tui-combobox-input-border-focus, var(--tui-select-trigger-border-focus, var(--tui-theme-primary-base)));
@@ -1799,7 +1831,7 @@
1799
1831
  appearance: none;
1800
1832
  font: inherit;
1801
1833
  margin: 0;
1802
- --_fs: var(--tui-typography-size-md);
1834
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
1803
1835
  --_py: var(--tui-spacing-xxs);
1804
1836
  --_height: calc(2em + 2 * var(--_py));
1805
1837
  font-size: var(--_fs);
@@ -1807,11 +1839,11 @@
1807
1839
  min-height: var(--tui-control-height-md, var(--_height));
1808
1840
  }
1809
1841
  .tui-interface .tui-combobox__input.is-size-sm {
1810
- --_fs: var(--tui-typography-size-sm);
1842
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
1811
1843
  min-height: var(--tui-control-height-sm, var(--_height));
1812
1844
  }
1813
1845
  .tui-interface .tui-combobox__input.is-size-lg {
1814
- --_fs: var(--tui-typography-size-lg);
1846
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
1815
1847
  min-height: var(--tui-control-height-lg, var(--_height));
1816
1848
  }
1817
1849
  .tui-interface .tui-combobox__input {
@@ -1914,6 +1946,7 @@
1914
1946
  animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing);
1915
1947
  }
1916
1948
  :where(.tui-interface) .tui-combobox__option {
1949
+ --_option-radius: var(--tui-combobox-option-radius, var(--tui-select-option-radius, var(--tui-radius-sm)));
1917
1950
  --_bg-hover: var(--tui-combobox-option-bg-hover, var(--tui-select-option-bg-hover, var(--tui-theme-secondary-subtlest)));
1918
1951
  --_bg-selected: var(--tui-combobox-option-bg-selected, var(--tui-select-option-bg-selected, var(--tui-theme-primary-subtlest)));
1919
1952
  display: flex;
@@ -1921,7 +1954,7 @@
1921
1954
  justify-content: space-between;
1922
1955
  gap: var(--tui-spacing-xs);
1923
1956
  padding: var(--tui-spacing-xs) var(--tui-spacing-sm);
1924
- border-radius: var(--tui-radius-sm);
1957
+ border-radius: var(--_option-radius);
1925
1958
  cursor: pointer;
1926
1959
  font-size: var(--tui-typography-size-sm);
1927
1960
  line-height: 1.4;
@@ -2200,7 +2233,7 @@
2200
2233
  pointer-events: none;
2201
2234
  }
2202
2235
  .tui-interface .tui-multiselect__trigger {
2203
- --_bg: var(--tui-multiselect-trigger-bg, var(--tui-color-bg));
2236
+ --_bg: var(--tui-multiselect-trigger-bg, var(--tui-color-bg-surface));
2204
2237
  --_fg: var(--tui-multiselect-trigger-fg, var(--tui-color-fg));
2205
2238
  --_border: var(--tui-multiselect-trigger-border, var(--tui-color-border));
2206
2239
  --_border-focus: var(--tui-multiselect-trigger-border-focus, var(--tui-theme-primary-base));
@@ -2209,7 +2242,7 @@
2209
2242
  border: none;
2210
2243
  font: inherit;
2211
2244
  margin: 0;
2212
- --_fs: var(--tui-typography-size-md);
2245
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
2213
2246
  --_py: var(--tui-spacing-xxs);
2214
2247
  --_height: calc(2em + 2 * var(--_py));
2215
2248
  font-size: var(--_fs);
@@ -2217,11 +2250,11 @@
2217
2250
  min-height: var(--tui-control-height-md, var(--_height));
2218
2251
  }
2219
2252
  .tui-interface .tui-multiselect__trigger.is-size-sm {
2220
- --_fs: var(--tui-typography-size-sm);
2253
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
2221
2254
  min-height: var(--tui-control-height-sm, var(--_height));
2222
2255
  }
2223
2256
  .tui-interface .tui-multiselect__trigger.is-size-lg {
2224
- --_fs: var(--tui-typography-size-lg);
2257
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
2225
2258
  min-height: var(--tui-control-height-lg, var(--_height));
2226
2259
  }
2227
2260
  .tui-interface .tui-multiselect__trigger {
@@ -2368,13 +2401,14 @@
2368
2401
  animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing);
2369
2402
  }
2370
2403
  :where(.tui-interface) .tui-multiselect__option {
2404
+ --_option-radius: var(--tui-multiselect-option-radius, var(--tui-radius-sm));
2371
2405
  --_bg-hover: var(--tui-multiselect-option-bg-hover, var(--tui-theme-secondary-subtlest));
2372
2406
  --_bg-selected: var(--tui-multiselect-option-bg-selected, var(--tui-theme-primary-subtlest));
2373
2407
  display: flex;
2374
2408
  align-items: center;
2375
2409
  gap: var(--tui-spacing-xs);
2376
2410
  padding: var(--tui-spacing-xs) var(--tui-spacing-sm);
2377
- border-radius: var(--tui-radius-sm);
2411
+ border-radius: var(--_option-radius);
2378
2412
  cursor: pointer;
2379
2413
  font-size: var(--tui-typography-size-sm);
2380
2414
  line-height: 1.4;
@@ -2468,7 +2502,7 @@
2468
2502
  }
2469
2503
  }
2470
2504
  .tui-interface .tui-select__trigger {
2471
- --_bg: var(--tui-select-trigger-bg, var(--tui-color-bg));
2505
+ --_bg: var(--tui-select-trigger-bg, var(--tui-color-bg-surface));
2472
2506
  --_fg: var(--tui-select-trigger-fg, var(--tui-color-fg));
2473
2507
  --_border: var(--tui-select-trigger-border, var(--tui-color-border));
2474
2508
  --_border-focus: var(--tui-select-trigger-border-focus, var(--tui-theme-primary-base));
@@ -2477,7 +2511,7 @@
2477
2511
  border: none;
2478
2512
  font: inherit;
2479
2513
  margin: 0;
2480
- --_fs: var(--tui-typography-size-md);
2514
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
2481
2515
  --_py: var(--tui-spacing-xxs);
2482
2516
  --_height: calc(2em + 2 * var(--_py));
2483
2517
  font-size: var(--_fs);
@@ -2485,11 +2519,11 @@
2485
2519
  min-height: var(--tui-control-height-md, var(--_height));
2486
2520
  }
2487
2521
  .tui-interface .tui-select__trigger.is-size-sm {
2488
- --_fs: var(--tui-typography-size-sm);
2522
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
2489
2523
  min-height: var(--tui-control-height-sm, var(--_height));
2490
2524
  }
2491
2525
  .tui-interface .tui-select__trigger.is-size-lg {
2492
- --_fs: var(--tui-typography-size-lg);
2526
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
2493
2527
  min-height: var(--tui-control-height-lg, var(--_height));
2494
2528
  }
2495
2529
  .tui-interface .tui-select__trigger {
@@ -2601,13 +2635,14 @@
2601
2635
  animation: tui-fadeFromTransparent var(--tui-motion-duration) var(--tui-motion-timing);
2602
2636
  }
2603
2637
  :where(.tui-interface) .tui-select__option {
2638
+ --_option-radius: var(--tui-select-option-radius, var(--tui-radius-sm));
2604
2639
  --_bg-hover: var(--tui-select-option-bg-hover, var(--tui-theme-secondary-subtlest));
2605
2640
  --_bg-selected: var(--tui-select-option-bg-selected, var(--tui-theme-primary-subtlest));
2606
2641
  display: flex;
2607
2642
  align-items: center;
2608
2643
  gap: var(--tui-spacing-xs);
2609
2644
  padding: var(--tui-spacing-xs) var(--tui-spacing-sm);
2610
- border-radius: var(--tui-radius-sm);
2645
+ border-radius: var(--_option-radius);
2611
2646
  cursor: pointer;
2612
2647
  font-size: var(--tui-typography-size-sm);
2613
2648
  line-height: 1.4;
@@ -2694,13 +2729,13 @@
2694
2729
  input[type=color],
2695
2730
  textarea,
2696
2731
  select) {
2697
- --_bg: var(--tui-input-bg, var(--tui-color-bg));
2732
+ --_bg: var(--tui-input-bg, var(--tui-color-bg-surface));
2698
2733
  --_fg: var(--tui-input-fg, var(--tui-color-fg-muted));
2699
2734
  --_border: var(--tui-input-border, var(--tui-color-border));
2700
2735
  --_border-focus: var(--tui-input-border-focus, var(--tui-theme-primary-base));
2701
2736
  --_border-invalid: var(--tui-input-border-invalid, var(--tui-theme-danger-base));
2702
2737
  --_radius: var(--tui-input-radius, var(--tui-radius-md));
2703
- --_fs: var(--tui-typography-size-md);
2738
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
2704
2739
  --_py: var(--tui-spacing-xxs);
2705
2740
  --_height: calc(2em + 2 * var(--_py));
2706
2741
  font-size: var(--_fs);
@@ -2725,7 +2760,7 @@
2725
2760
  input[type=color],
2726
2761
  textarea,
2727
2762
  select).is-size-sm {
2728
- --_fs: var(--tui-typography-size-sm);
2763
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
2729
2764
  min-height: var(--tui-control-height-sm, var(--_height));
2730
2765
  }
2731
2766
  :where(.tui-interface) :is(.tui-input,
@@ -2746,7 +2781,7 @@
2746
2781
  input[type=color],
2747
2782
  textarea,
2748
2783
  select).is-size-lg {
2749
- --_fs: var(--tui-typography-size-lg);
2784
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
2750
2785
  min-height: var(--tui-control-height-lg, var(--_height));
2751
2786
  }
2752
2787
  :where(.tui-interface) :is(.tui-input,
@@ -2943,7 +2978,7 @@
2943
2978
  padding-inline-end: 0.25em;
2944
2979
  }
2945
2980
  :where(.tui-interface) input[type=file] {
2946
- --_bg: var(--tui-input-bg, var(--tui-color-bg));
2981
+ --_bg: var(--tui-input-bg, var(--tui-color-bg-surface));
2947
2982
  --_fg: var(--tui-input-fg, var(--tui-color-fg-muted));
2948
2983
  --_border: var(--tui-input-border, var(--tui-color-border));
2949
2984
  --_radius: var(--tui-input-radius, var(--tui-radius-md));
@@ -3017,7 +3052,7 @@
3017
3052
  transition-property: background-color, color, border-color;
3018
3053
  }
3019
3054
  .tui-interface .tui-icon-button .tui-icon {
3020
- font-size: calc(var(--_size) * 0.5);
3055
+ font-size: calc(var(--_size) * 0.75);
3021
3056
  }
3022
3057
  .tui-interface .tui-icon-button:hover {
3023
3058
  --_bg: var(--_bg-interact);
@@ -3159,6 +3194,11 @@
3159
3194
  .tui-modal {
3160
3195
  --_z: var(--tui-modal-z, var(--tui-layer-modal, 1000));
3161
3196
  --_backdrop: var(--tui-modal-backdrop, var(--tui-color-bg-overlay));
3197
+ --_spacing: var(--tui-modal-spacing, var(--tui-spacing-md));
3198
+ --_offset-top: var(--tui-modal-offset-top, env(safe-area-inset-top, 0px));
3199
+ --_offset-bottom: var(--tui-modal-offset-bottom, env(safe-area-inset-bottom, 0px));
3200
+ --_offset-start: var(--tui-modal-offset-start, env(safe-area-inset-left, 0px));
3201
+ --_offset-end: var(--tui-modal-offset-end, env(safe-area-inset-right, 0px));
3162
3202
  position: fixed;
3163
3203
  inset: 0;
3164
3204
  z-index: var(--_z);
@@ -3167,7 +3207,10 @@
3167
3207
  justify-content: center;
3168
3208
  align-items: flex-start;
3169
3209
  overflow: auto;
3170
- padding-block: 1rem;
3210
+ padding-block-start: calc(var(--_spacing) + var(--_offset-top));
3211
+ padding-block-end: calc(var(--_spacing) + var(--_offset-bottom));
3212
+ padding-inline-start: calc(var(--_spacing) + var(--_offset-start));
3213
+ padding-inline-end: calc(var(--_spacing) + var(--_offset-end));
3171
3214
  }
3172
3215
  .tui-modal__backdrop {
3173
3216
  position: fixed;
@@ -3194,8 +3237,8 @@
3194
3237
  --_shadow: var(--tui-modal-shadow, var(--tui-shadow-lg));
3195
3238
  position: relative;
3196
3239
  width: 100%;
3197
- max-inline-size: min(100vw - 2rem, var(--_max));
3198
- max-block-size: calc(100dvh - 2rem);
3240
+ max-inline-size: var(--_max);
3241
+ max-block-size: calc(100dvh - var(--_spacing) * 2 - var(--_offset-top) - var(--_offset-bottom));
3199
3242
  margin-block: auto;
3200
3243
  overflow: hidden;
3201
3244
  display: flex;
@@ -3264,6 +3307,9 @@
3264
3307
  align-items: flex-start;
3265
3308
  gap: var(--tui-spacing-sm);
3266
3309
  }
3310
+ .tui-modal__dialog .tui-modal__head :is(h1, h2, h3, h4, h5, h6) {
3311
+ margin-block: 0;
3312
+ }
3267
3313
  .tui-modal__dialog .tui-modal__head-icon {
3268
3314
  flex-shrink: 0;
3269
3315
  display: flex;
@@ -3657,26 +3703,26 @@
3657
3703
  display: flex;
3658
3704
  align-items: center;
3659
3705
  }
3660
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner {
3706
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner {
3661
3707
  display: flex;
3662
3708
  flex-direction: row;
3663
3709
  align-items: center;
3664
3710
  gap: var(--_padding);
3665
3711
  flex: 1 1 auto;
3666
3712
  }
3667
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__head {
3713
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__head {
3668
3714
  padding-inline-start: var(--_padding);
3669
3715
  padding-block: var(--_padding);
3670
3716
  flex: 0 1 auto;
3671
3717
  }
3672
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__head:has(.tui-icon:only-child) {
3718
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__head:has(.tui-icon:only-child) {
3673
3719
  flex: 0 0 max-content;
3674
3720
  }
3675
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__body {
3721
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__body {
3676
3722
  flex: 2 1 auto;
3677
3723
  padding-block: var(--_padding);
3678
3724
  }
3679
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__foot {
3725
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__foot {
3680
3726
  width: unset;
3681
3727
  flex: 0 1 var(--_foot-basis);
3682
3728
  padding-block: var(--_padding);
@@ -3684,14 +3730,14 @@
3684
3730
  margin-inline-start: auto;
3685
3731
  justify-content: flex-end;
3686
3732
  }
3687
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__head:not(:first-child),
3688
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__body:not(:first-child),
3689
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__foot:not(:first-child) {
3733
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__head:not(:first-child),
3734
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__body:not(:first-child),
3735
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__foot:not(:first-child) {
3690
3736
  padding-inline-start: 0;
3691
3737
  }
3692
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__head:not(:last-child),
3693
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__body:not(:last-child),
3694
- :where(.tui-interface) .tui-notice.is-layout-inline .tui-notice__inner .tui-notice__foot:not(:last-child) {
3738
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__head:not(:last-child),
3739
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__body:not(:last-child),
3740
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline) .tui-notice__inner .tui-notice__foot:not(:last-child) {
3695
3741
  padding-inline-end: 0;
3696
3742
  }
3697
3743
  }
@@ -3699,18 +3745,27 @@
3699
3745
  padding-inline-end: calc(var(--_padding) + var(--tui-control-height-sm));
3700
3746
  }
3701
3747
  @container tuiNotice (width >= 400px) {
3702
- :where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible .tui-notice__inner {
3748
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible) .tui-notice__inner {
3703
3749
  padding-inline-end: 0;
3704
3750
  }
3705
- :where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible .tui-notice__inner .tui-notice__head:last-child,
3706
- :where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible .tui-notice__inner .tui-notice__body:last-child,
3707
- :where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible .tui-notice__inner .tui-notice__foot:last-child {
3751
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible) .tui-notice__inner .tui-notice__head:last-child,
3752
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible) .tui-notice__inner .tui-notice__body:last-child,
3753
+ :where(:where(.tui-interface) .tui-notice.is-layout-inline.is-dismissible) .tui-notice__inner .tui-notice__foot:last-child {
3708
3754
  padding-inline-end: 0;
3709
3755
  }
3710
3756
  }
3711
3757
  :where(.tui-interface) .tui-notice.has-stripe {
3712
- border-inline-start-width: var(--tui-notice-stripe-width, 4px);
3713
- border-inline-start-color: var(--_stripe);
3758
+ overflow: hidden;
3759
+ padding-inline-start: var(--tui-notice-stripe-width, 4px);
3760
+ }
3761
+ :where(.tui-interface) .tui-notice.has-stripe::before {
3762
+ content: "";
3763
+ position: absolute;
3764
+ inset-block: 0;
3765
+ inset-inline-start: 0;
3766
+ width: var(--tui-notice-stripe-width, 4px);
3767
+ background-color: var(--_stripe);
3768
+ z-index: 1;
3714
3769
  }
3715
3770
  :where(.tui-interface) .tui-notice.is-theme-info {
3716
3771
  --_bg: var(--tui-notice-bg, var(--tui-theme-primary-subtlest));
@@ -3906,61 +3961,79 @@
3906
3961
  gap: var(--tui-spacing-xs);
3907
3962
  }
3908
3963
  :where(.tui-interface) .tui-radio-group {
3964
+ --_group-gap: var(--tui-radio-group-gap, var(--tui-spacing-xs));
3909
3965
  display: flex;
3910
3966
  flex-direction: column;
3911
- gap: var(--tui-spacing-xs);
3967
+ gap: var(--_group-gap);
3912
3968
  }
3913
3969
  :where(.tui-interface) .tui-radio-group.is-horizontal {
3914
3970
  flex-direction: row;
3915
3971
  flex-wrap: wrap;
3916
- gap: var(--tui-spacing-sm);
3972
+ gap: var(--_group-gap);
3917
3973
  }
3918
3974
  :where(.tui-interface) .tui-radio-group[aria-disabled=true] {
3919
3975
  opacity: var(--tui-opacity-disabled);
3920
3976
  }
3921
3977
  :where(.tui-interface) .tui-radio {
3922
3978
  --_accent: var(--tui-radio-accent, var(--tui-input-accent, var(--tui-theme-primary-base)));
3923
- --_border: var(--tui-input-border, var(--tui-color-border));
3979
+ --_border: var(--tui-radio-border, var(--tui-input-border, var(--tui-color-border)));
3980
+ --_bg: var(--tui-radio-bg, var(--tui-color-bg));
3981
+ --_size: var(--tui-radio-size, 1.15em);
3982
+ --_gap: var(--tui-radio-gap, var(--tui-spacing-xs));
3983
+ --_fs: var(--tui-radio-font-size, var(--tui-typography-size-sm));
3984
+ --_label-color: var(--tui-radio-label-color, var(--tui-color-fg));
3985
+ --_desc-color: var(--tui-radio-description-color, var(--tui-color-fg-muted));
3986
+ display: flex;
3987
+ flex-direction: column;
3988
+ }
3989
+ :where(.tui-interface) .tui-radio:has(.tui-radio__control[aria-checked=true]) .tui-radio__indicator {
3990
+ border-color: var(--_accent);
3991
+ }
3992
+ :where(.tui-interface) .tui-radio:has(.tui-radio__control[aria-checked=true]) .tui-radio__indicator::after {
3993
+ transform: scale(1);
3994
+ background-color: var(--_accent);
3995
+ }
3996
+ :where(.tui-interface) .tui-radio__control {
3924
3997
  display: inline-flex;
3925
3998
  align-items: center;
3926
- gap: var(--tui-spacing-xs);
3999
+ gap: var(--_gap);
3927
4000
  padding: 0;
3928
4001
  border: none;
3929
4002
  background: none;
3930
4003
  font: inherit;
3931
- font-size: var(--tui-typography-size-sm);
3932
- color: var(--tui-color-fg);
4004
+ font-size: var(--_fs);
4005
+ color: var(--_label-color);
3933
4006
  cursor: pointer;
3934
4007
  appearance: none;
3935
4008
  }
3936
- :where(.tui-interface) .tui-radio:focus-visible {
4009
+ :where(.tui-interface) .tui-radio__control:hover:not(:disabled):not([aria-disabled=true]) .tui-radio__indicator {
4010
+ border-color: var(--_accent);
4011
+ }
4012
+ :where(.tui-interface) .tui-radio__control:focus-visible {
3937
4013
  outline: none;
3938
4014
  }
3939
- :where(.tui-interface) .tui-radio:focus-visible .tui-radio__indicator {
4015
+ :where(.tui-interface) .tui-radio__control:focus-visible .tui-radio__indicator {
3940
4016
  outline: var(--tui-focus-ring-width) solid var(--tui-focus-ring-color);
3941
4017
  outline-offset: var(--tui-focus-ring-offset);
3942
4018
  }
3943
- :where(.tui-interface) .tui-radio:disabled {
4019
+ :where(.tui-interface) .tui-radio__control:disabled {
3944
4020
  cursor: not-allowed;
3945
4021
  opacity: var(--tui-opacity-disabled);
4022
+ pointer-events: none;
3946
4023
  }
3947
- :where(.tui-interface) .tui-radio[aria-checked=true] .tui-radio__indicator {
3948
- border-color: var(--_accent);
3949
- }
3950
- :where(.tui-interface) .tui-radio[aria-checked=true] .tui-radio__indicator::after {
3951
- transform: scale(1);
3952
- background-color: var(--_accent);
4024
+ :where(.tui-interface) .tui-radio__control[aria-disabled=true] {
4025
+ cursor: not-allowed;
3953
4026
  }
3954
4027
  :where(.tui-interface) .tui-radio__indicator {
3955
4028
  display: inline-flex;
3956
4029
  align-items: center;
3957
4030
  justify-content: center;
3958
4031
  flex-shrink: 0;
3959
- width: 1.15em;
3960
- height: 1.15em;
4032
+ width: var(--_size);
4033
+ height: var(--_size);
3961
4034
  border-radius: 50%;
3962
4035
  border: var(--tui-border-width) solid var(--_border);
3963
- background-color: var(--tui-color-bg);
4036
+ background-color: var(--_bg);
3964
4037
  transition-duration: var(--tui-motion-duration);
3965
4038
  transition-timing-function: var(--tui-motion-timing);
3966
4039
  transition-property: border-color;
@@ -3968,8 +4041,8 @@
3968
4041
  :where(.tui-interface) .tui-radio__indicator::after {
3969
4042
  content: "";
3970
4043
  display: block;
3971
- width: 0.5em;
3972
- height: 0.5em;
4044
+ width: calc(var(--_size) * 0.435);
4045
+ height: calc(var(--_size) * 0.435);
3973
4046
  border-radius: 50%;
3974
4047
  background-color: transparent;
3975
4048
  transform: scale(0);
@@ -3982,6 +4055,22 @@
3982
4055
  line-height: 1.25em;
3983
4056
  user-select: none;
3984
4057
  }
4058
+ :where(.tui-interface) .tui-radio__body {
4059
+ padding-inline-start: calc(var(--_size) + var(--_gap));
4060
+ }
4061
+ :where(.tui-interface) .tui-radio__description {
4062
+ display: block;
4063
+ margin: 0;
4064
+ font-size: var(--_fs);
4065
+ color: var(--_desc-color);
4066
+ line-height: var(--tui-typography-line-height);
4067
+ }
4068
+ @media (prefers-reduced-motion: reduce) {
4069
+ :where(.tui-interface) .tui-radio__indicator,
4070
+ :where(.tui-interface) .tui-radio__indicator::after {
4071
+ transition: none;
4072
+ }
4073
+ }
3985
4074
  @media (forced-colors: active) {
3986
4075
  :where(.tui-interface) .tui-radio__indicator {
3987
4076
  forced-color-adjust: none;
@@ -3991,10 +4080,10 @@
3991
4080
  :where(.tui-interface) .tui-radio__indicator::after {
3992
4081
  background-color: CanvasText;
3993
4082
  }
3994
- :where(.tui-interface) .tui-radio[aria-checked=true] .tui-radio__indicator {
4083
+ :where(.tui-interface) .tui-radio:has(.tui-radio__control[aria-checked=true]) .tui-radio__indicator {
3995
4084
  border-color: Highlight;
3996
4085
  }
3997
- :where(.tui-interface) .tui-radio[aria-checked=true] .tui-radio__indicator::after {
4086
+ :where(.tui-interface) .tui-radio:has(.tui-radio__control[aria-checked=true]) .tui-radio__indicator::after {
3998
4087
  background-color: Highlight;
3999
4088
  }
4000
4089
  }
@@ -4450,8 +4539,8 @@
4450
4539
  :where(.tui-interface) .tui-switch {
4451
4540
  display: inline-flex;
4452
4541
  align-items: center;
4453
- gap: var(--tui-spacing-xs);
4454
- font-size: var(--tui-typography-size-md);
4542
+ gap: var(--tui-switch-gap, var(--tui-spacing-xs));
4543
+ font-size: var(--tui-switch-font-size, var(--tui-typography-size-md));
4455
4544
  cursor: pointer;
4456
4545
  user-select: none;
4457
4546
  }
@@ -4469,12 +4558,17 @@
4469
4558
  font-weight: unset;
4470
4559
  line-height: 1.25em;
4471
4560
  font-size: var(--tui-typography-size-sm);
4561
+ color: var(--tui-switch-label-color, inherit);
4472
4562
  user-select: none;
4473
4563
  }
4474
4564
  :where(.tui-interface) .tui-switch__track {
4475
4565
  --_accent: var(--tui-switch-accent, var(--tui-input-accent, var(--tui-theme-primary-base)));
4476
- --_track-off: var(--tui-switch-track-off, var(--tui-theme-secondary-soft));
4477
- font-size: var(--tui-typography-size-md);
4566
+ --_bg: var(--tui-switch-bg, var(--tui-theme-secondary-soft));
4567
+ --_border: var(--tui-switch-border, var(--_bg));
4568
+ --_thumb-bg: var(--tui-switch-thumb-bg, var(--tui-color-bg));
4569
+ --_track-height: var(--tui-switch-track-height, 1.4285em);
4570
+ --_thumb-size: calc(var(--_track-height) - 4px);
4571
+ font-size: var(--tui-switch-size, var(--tui-typography-size-md));
4478
4572
  }
4479
4573
  :where(.tui-interface) .tui-switch__track.is-size-sm {
4480
4574
  font-size: var(--tui-typography-size-sm);
@@ -4488,10 +4582,10 @@
4488
4582
  align-items: center;
4489
4583
  flex-shrink: 0;
4490
4584
  width: 2.8575em;
4491
- height: 1.4285em;
4585
+ height: var(--_track-height);
4492
4586
  border-radius: 9999px;
4493
- border: var(--tui-border-width) solid var(--_track-off);
4494
- background-color: var(--_track-off);
4587
+ border: var(--tui-border-width) solid var(--_border);
4588
+ background-color: var(--_bg);
4495
4589
  padding: 0;
4496
4590
  cursor: pointer;
4497
4591
  appearance: none;
@@ -4507,24 +4601,30 @@
4507
4601
  :where(.tui-interface) .tui-switch__track:disabled {
4508
4602
  cursor: not-allowed;
4509
4603
  }
4510
- :where(.tui-interface) .tui-switch__track.is-checked {
4604
+ :where(.tui-interface) .tui-switch__track[aria-checked=true] {
4511
4605
  background-color: var(--_accent);
4512
4606
  border-color: var(--_accent);
4513
4607
  }
4608
+ :where(.tui-interface) .tui-switch__track[aria-invalid=true] {
4609
+ --_border: var(--tui-theme-danger-base);
4610
+ }
4611
+ :where(.tui-interface) .tui-switch__track[aria-invalid=true][aria-checked=true] {
4612
+ border-color: var(--tui-theme-danger-base);
4613
+ }
4514
4614
  :where(.tui-interface) .tui-switch__thumb {
4515
4615
  display: block;
4516
- width: calc(1.4285em - 4px);
4517
- height: calc(1.4285em - 4px);
4616
+ width: var(--_thumb-size);
4617
+ height: var(--_thumb-size);
4518
4618
  border-radius: 50%;
4519
- background-color: var(--tui-color-bg);
4619
+ background-color: var(--_thumb-bg);
4520
4620
  transform: translateX(2px);
4521
4621
  transition-duration: var(--tui-motion-duration);
4522
4622
  transition-timing-function: var(--tui-motion-timing);
4523
4623
  transition-property: transform;
4524
4624
  pointer-events: none;
4525
4625
  }
4526
- :where(.tui-interface) .tui-switch__track.is-checked .tui-switch__thumb {
4527
- transform: translateX(calc(2.8575em - calc(1.4285em - 4px) - 2px - 2 * var(--tui-border-width)));
4626
+ :where(.tui-interface) .tui-switch__track[aria-checked=true] .tui-switch__thumb {
4627
+ transform: translateX(calc(2.8575em - var(--_thumb-size) - 2px - 2 * var(--tui-border-width)));
4528
4628
  }
4529
4629
  @media (forced-colors: active) {
4530
4630
  :where(.tui-interface) .tui-switch__track {
@@ -4532,20 +4632,27 @@
4532
4632
  border: 2px solid CanvasText;
4533
4633
  background-color: Canvas;
4534
4634
  }
4535
- :where(.tui-interface) .tui-switch__track.is-checked {
4635
+ :where(.tui-interface) .tui-switch__track[aria-checked=true] {
4536
4636
  background-color: Highlight;
4537
4637
  border-color: Highlight;
4538
4638
  }
4539
4639
  :where(.tui-interface) .tui-switch__track:focus-visible {
4540
- outline-color: Highlight;
4640
+ outline-color: ButtonText;
4641
+ outline-offset: 3px;
4541
4642
  }
4542
4643
  :where(.tui-interface) .tui-switch__thumb {
4543
4644
  background-color: CanvasText;
4544
4645
  }
4545
- :where(.tui-interface) .tui-switch__track.is-checked .tui-switch__thumb {
4646
+ :where(.tui-interface) .tui-switch__track[aria-checked=true] .tui-switch__thumb {
4546
4647
  background-color: HighlightText;
4547
4648
  }
4548
4649
  }
4650
+ @media (prefers-reduced-motion: reduce) {
4651
+ :where(.tui-interface) .tui-switch__track,
4652
+ :where(.tui-interface) .tui-switch__thumb {
4653
+ transition: none;
4654
+ }
4655
+ }
4549
4656
  :where(.tui-interface) .tui-sidebar {
4550
4657
  --_width: var(--tui-sidebar-width, 320px);
4551
4658
  --_bg: var(--tui-sidebar-bg, var(--tui-color-bg-surface));
@@ -5048,7 +5155,7 @@
5048
5155
  }
5049
5156
  }
5050
5157
  :where(.tui-interface) .tui-textarea {
5051
- --_fs: var(--tui-typography-size-md);
5158
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
5052
5159
  --_py: var(--tui-spacing-xxs);
5053
5160
  --_height: calc(2em + 2 * var(--_py));
5054
5161
  font-size: var(--_fs);
@@ -5056,11 +5163,11 @@
5056
5163
  min-height: var(--tui-control-height-md, var(--_height));
5057
5164
  }
5058
5165
  :where(.tui-interface) .tui-textarea.is-size-sm {
5059
- --_fs: var(--tui-typography-size-sm);
5166
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
5060
5167
  min-height: var(--tui-control-height-sm, var(--_height));
5061
5168
  }
5062
5169
  :where(.tui-interface) .tui-textarea.is-size-lg {
5063
- --_fs: var(--tui-typography-size-lg);
5170
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
5064
5171
  min-height: var(--tui-control-height-lg, var(--_height));
5065
5172
  }
5066
5173
  :where(.tui-interface) .tui-textarea {
@@ -5075,11 +5182,11 @@
5075
5182
  }
5076
5183
  :where(.tui-interface) .tui-input-group {
5077
5184
  --_gap: var(--tui-input-group-gap, var(--tui-spacing-xs));
5078
- --_bg: var(--tui-input-bg, var(--tui-color-bg));
5185
+ --_bg: var(--tui-input-bg, var(--tui-color-bg-surface));
5079
5186
  --_border: var(--tui-input-border, var(--tui-color-border));
5080
5187
  --_border-focus: var(--tui-input-border-focus, var(--tui-theme-primary-base));
5081
5188
  --_radius: var(--tui-input-radius, var(--tui-radius-md));
5082
- --_fs: var(--tui-typography-size-md);
5189
+ --_fs: var(--tui-control-font-size-md, var(--tui-typography-size-md));
5083
5190
  --_py: var(--tui-spacing-xxs);
5084
5191
  --_height: calc(2em + 2 * var(--_py));
5085
5192
  font-size: var(--_fs);
@@ -5087,11 +5194,11 @@
5087
5194
  min-height: var(--tui-control-height-md, var(--_height));
5088
5195
  }
5089
5196
  :where(.tui-interface) .tui-input-group.is-size-sm {
5090
- --_fs: var(--tui-typography-size-sm);
5197
+ --_fs: var(--tui-control-font-size-sm, var(--tui-typography-size-sm));
5091
5198
  min-height: var(--tui-control-height-sm, var(--_height));
5092
5199
  }
5093
5200
  :where(.tui-interface) .tui-input-group.is-size-lg {
5094
- --_fs: var(--tui-typography-size-lg);
5201
+ --_fs: var(--tui-control-font-size-lg, var(--tui-typography-size-lg));
5095
5202
  min-height: var(--tui-control-height-lg, var(--_height));
5096
5203
  }
5097
5204
  :where(.tui-interface) .tui-input-group {
@@ -5878,8 +5985,7 @@
5878
5985
  .tui-interface ul.tui-inline-flex,
5879
5986
  .tui-interface ul.tui-flex {
5880
5987
  list-style: none !important;
5881
- padding: 0 !important;
5882
- margin: 0 !important;
5988
+ padding-inline-start: 0 !important;
5883
5989
  }
5884
5990
  .tui-interface ul.tui-grid > li,
5885
5991
  .tui-interface ul.tui-stack > li,
@@ -5887,6 +5993,14 @@
5887
5993
  .tui-interface ul.tui-flex > li {
5888
5994
  list-style: none !important;
5889
5995
  }
5996
+ .tui-interface .tui-list-reset {
5997
+ list-style: none !important;
5998
+ padding: 0 !important;
5999
+ margin: 0 !important;
6000
+ }
6001
+ .tui-interface .tui-list-reset > li {
6002
+ list-style: none !important;
6003
+ }
5890
6004
  .tui-interface .is-density-none {
5891
6005
  --tui-gap-inline: 0;
5892
6006
  --tui-gap-block: 0;