@scania/tegel-lite 0.0.1-beta.0 → 0.0.1-beta.10

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.
@@ -1287,7 +1287,7 @@
1287
1287
  .tl-text-field--sm {
1288
1288
  height: 40px;
1289
1289
  }
1290
- .tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon)::before {
1290
+ .tl-text-field:has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon)::before {
1291
1291
  content: "";
1292
1292
  position: absolute;
1293
1293
  top: 50%;
@@ -1302,16 +1302,16 @@
1302
1302
  transform: translateY(-50%);
1303
1303
  z-index: 1;
1304
1304
  }
1305
- .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside).tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon)::before {
1305
+ .tl-text-field:not(.tl-text-field--label-inside):has(.tl-text-field__label):has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon)::before {
1306
1306
  top: calc(50% + 24px);
1307
1307
  }
1308
- .tl-text-field--disabled {
1309
- pointer-events: none;
1308
+ .tl-text-field:has(.tl-text-field__input:disabled) {
1309
+ cursor: not-allowed;
1310
1310
  }
1311
1311
  .tl-text-field .tl-icon {
1312
1312
  background-color: var(--text-field-affix);
1313
1313
  }
1314
- .tl-text-field--disabled .tl-text-field .tl-icon {
1314
+ :has(.tl-text-field__input:disabled) .tl-text-field .tl-icon {
1315
1315
  background-color: var(--text-field-affix-disabled);
1316
1316
  }
1317
1317
 
@@ -1355,7 +1355,7 @@
1355
1355
  .tl-text-field__input:focus {
1356
1356
  box-shadow: inset var(--text-field-box-shadow-focus);
1357
1357
  }
1358
- .tl-text-field:hover .tl-text-field__input:not(:focus) {
1358
+ .tl-text-field:hover .tl-text-field__input:not(:focus):not(:disabled) {
1359
1359
  box-shadow: inset var(--text-field-box-shadow-hover);
1360
1360
  }
1361
1361
  .tl-text-field--error .tl-text-field__input {
@@ -1364,33 +1364,35 @@
1364
1364
  .tl-text-field--error .tl-text-field__input:focus {
1365
1365
  box-shadow: inset var(--text-field-box-shadow-error-focus);
1366
1366
  }
1367
- .tl-text-field--error:hover .tl-text-field__input:not(:focus) {
1367
+ .tl-text-field--error:hover .tl-text-field__input:not(:focus):not(:disabled) {
1368
1368
  box-shadow: inset var(--text-field-box-shadow-error-hover);
1369
1369
  }
1370
- .tl-text-field--success:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__input:not(:focus) {
1370
+ .tl-text-field--success:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input:not(:focus) {
1371
1371
  box-shadow: inset var(--text-field-box-shadow-success);
1372
1372
  }
1373
- .tl-text-field--readonly .tl-text-field__input {
1373
+ .tl-text-field__input:disabled {
1374
+ box-shadow: none;
1375
+ background-color: var(--text-field-background-disabled);
1376
+ color: var(--text-field-text-disabled);
1377
+ cursor: not-allowed;
1378
+ pointer-events: none;
1379
+ }
1380
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input {
1374
1381
  box-shadow: inset var(--text-field-box-shadow);
1375
1382
  }
1376
- .tl-text-field--readonly .tl-text-field__input:focus {
1383
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input:focus {
1377
1384
  box-shadow: inset var(--text-field-box-shadow-focus);
1378
1385
  }
1379
- .tl-text-field--readonly:hover .tl-text-field__input:not(:focus) {
1386
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):hover .tl-text-field__input:not(:focus) {
1380
1387
  box-shadow: inset var(--text-field-box-shadow-hover);
1381
1388
  }
1382
- .tl-text-field--disabled .tl-text-field__input {
1383
- box-shadow: none;
1384
- background-color: var(--text-field-background-disabled);
1385
- color: var(--text-field-text-disabled);
1386
- }
1387
- .tl-text-field--readonly .tl-text-field__input {
1389
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input {
1388
1390
  user-select: auto;
1389
1391
  caret-color: transparent;
1390
1392
  cursor: default;
1391
1393
  pointer-events: none;
1392
1394
  }
1393
- .tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon) .tl-text-field__input {
1395
+ .tl-text-field:has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon) .tl-text-field__input {
1394
1396
  padding-right: 54px;
1395
1397
  }
1396
1398
  .tl-text-field--lg .tl-text-field__input {
@@ -1488,10 +1490,10 @@
1488
1490
  opacity: 0;
1489
1491
  visibility: hidden;
1490
1492
  }
1491
- .tl-text-field--label-inside.tl-text-field--disabled .tl-text-field__label {
1493
+ .tl-text-field--label-inside:has(.tl-text-field__input:disabled) .tl-text-field__label {
1492
1494
  color: var(--text-field-label-disabled);
1493
1495
  }
1494
- .tl-text-field:not(.tl-text-field--label-inside).tl-text-field--disabled .tl-text-field__label {
1496
+ .tl-text-field:not(.tl-text-field--label-inside):has(.tl-text-field__input:disabled) .tl-text-field__label {
1495
1497
  color: var(--text-field-label-disabled);
1496
1498
  }
1497
1499
 
@@ -1511,7 +1513,7 @@
1511
1513
  color: var(--text-field-helper);
1512
1514
  position: relative;
1513
1515
  }
1514
- .tl-text-field--disabled .tl-text-field__helper {
1516
+ :has(.tl-text-field__input:disabled) .tl-text-field__helper {
1515
1517
  color: var(--color-foreground-text-disabled);
1516
1518
  }
1517
1519
  .tl-text-field--error .tl-text-field__helper {
@@ -1530,16 +1532,16 @@
1530
1532
  mask-repeat: no-repeat;
1531
1533
  mask-position: center;
1532
1534
  }
1533
- .tl-text-field--error.tl-text-field--readonly .tl-text-field__helper {
1535
+ .tl-text-field--error:has(.tl-text-field__input[readonly]) .tl-text-field__helper {
1534
1536
  padding-left: 0;
1535
1537
  }
1536
- .tl-text-field--error.tl-text-field--readonly .tl-text-field__helper::before {
1538
+ .tl-text-field--error:has(.tl-text-field__input[readonly]) .tl-text-field__helper::before {
1537
1539
  display: none;
1538
1540
  }
1539
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__helper {
1541
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__helper {
1540
1542
  color: var(--text-field-error);
1541
1543
  }
1542
- .tl-text-field--error.tl-text-field--disabled .tl-text-field__helper::before {
1544
+ .tl-text-field--error:has(.tl-text-field__input:disabled) .tl-text-field__helper::before {
1543
1545
  background-color: var(--color-foreground-text-disabled);
1544
1546
  }
1545
1547
 
@@ -1553,13 +1555,13 @@
1553
1555
  margin-left: auto;
1554
1556
  color: var(--text-field-textcounter);
1555
1557
  }
1556
- .tl-text-field--disabled .tl-text-field__charcounter {
1558
+ :has(.tl-text-field__input:disabled) .tl-text-field__charcounter {
1557
1559
  color: var(--color-foreground-text-disabled);
1558
1560
  }
1559
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__charcounter {
1561
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__charcounter {
1560
1562
  color: var(--text-field-error);
1561
1563
  }
1562
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__charcounter .tl-text-field__charcounter-divider {
1564
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__charcounter .tl-text-field__charcounter-divider {
1563
1565
  color: var(--text-field-error);
1564
1566
  }
1565
1567
 
@@ -1591,16 +1593,16 @@
1591
1593
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__prefix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__prefix--icon {
1592
1594
  transform: translateY(calc(-50% + 24px));
1593
1595
  }
1594
- .tl-text-field--disabled .tl-text-field__prefix--text, .tl-text-field--disabled .tl-text-field__prefix--icon {
1596
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon {
1595
1597
  color: var(--text-field-affix-disabled);
1596
1598
  }
1597
- .tl-text-field--disabled .tl-text-field__prefix--text > *, .tl-text-field--disabled .tl-text-field__prefix--icon > * {
1599
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon > * {
1598
1600
  color: var(--text-field-affix-disabled);
1599
1601
  }
1600
- .tl-text-field--disabled .tl-text-field__prefix--text .tl-icon, .tl-text-field--disabled .tl-text-field__prefix--icon .tl-icon {
1602
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon .tl-icon {
1601
1603
  background-color: var(--text-field-affix-disabled);
1602
1604
  }
1603
- .tl-text-field--disabled .tl-text-field__prefix--icon.tl-icon {
1605
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon.tl-icon {
1604
1606
  background-color: var(--text-field-affix-disabled);
1605
1607
  }
1606
1608
 
@@ -1628,15 +1630,15 @@
1628
1630
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--icon {
1629
1631
  transform: translateY(calc(-50% + 24px));
1630
1632
  }
1631
- .tl-text-field--disabled .tl-text-field__suffix--text, .tl-text-field--disabled .tl-text-field__suffix--icon {
1633
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon {
1632
1634
  color: var(--text-field-affix-disabled);
1633
1635
  }
1634
- .tl-text-field--disabled .tl-text-field__suffix--text > *, .tl-text-field--disabled .tl-text-field__suffix--icon > * {
1636
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > * {
1635
1637
  color: var(--text-field-affix-disabled);
1636
1638
  }
1637
- .tl-text-field--disabled .tl-text-field__suffix--text .tl-icon,
1638
- .tl-text-field--disabled .tl-text-field__suffix--text > .tl-icon, .tl-text-field--disabled .tl-text-field__suffix--icon .tl-icon,
1639
- .tl-text-field--disabled .tl-text-field__suffix--icon > .tl-icon {
1639
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text .tl-icon,
1640
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon .tl-icon,
1641
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > .tl-icon {
1640
1642
  background-color: var(--text-field-affix-disabled) !important;
1641
1643
  }
1642
1644
 
@@ -1660,18 +1662,18 @@
1660
1662
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--icon {
1661
1663
  transform: translateY(calc(-50% + 24px));
1662
1664
  }
1663
- .tl-text-field--disabled .tl-text-field__suffix--text, .tl-text-field--disabled .tl-text-field__suffix--icon {
1665
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon {
1664
1666
  color: var(--text-field-affix-disabled);
1665
1667
  }
1666
- .tl-text-field--disabled .tl-text-field__suffix--text > *, .tl-text-field--disabled .tl-text-field__suffix--icon > * {
1668
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > * {
1667
1669
  color: var(--text-field-affix-disabled);
1668
1670
  }
1669
- .tl-text-field--disabled .tl-text-field__suffix--text .tl-icon,
1670
- .tl-text-field--disabled .tl-text-field__suffix--text > .tl-icon, .tl-text-field--disabled .tl-text-field__suffix--icon .tl-icon,
1671
- .tl-text-field--disabled .tl-text-field__suffix--icon > .tl-icon {
1671
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text .tl-icon,
1672
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon .tl-icon,
1673
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > .tl-icon {
1672
1674
  background-color: var(--text-field-affix-disabled);
1673
1675
  }
1674
- .tl-text-field--disabled .tl-text-field__suffix--icon.tl-icon {
1676
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon.tl-icon {
1675
1677
  background-color: var(--text-field-affix-disabled);
1676
1678
  }
1677
1679
 
@@ -1988,11 +1990,7 @@
1988
1990
  .tl-slider {
1989
1991
  width: 100%;
1990
1992
  }
1991
- .tl-slider--disabled {
1992
- cursor: not-allowed;
1993
- pointer-events: none;
1994
- }
1995
- .tl-slider--read-only {
1993
+ .tl-slider:has(input[type=range][readonly]):not(:has(input[type=range]:disabled)) {
1996
1994
  pointer-events: none;
1997
1995
  }
1998
1996
 
@@ -2026,7 +2024,7 @@
2026
2024
  margin-bottom: 2px;
2027
2025
  margin-left: 0;
2028
2026
  }
2029
- .tl-slider--disabled .tl-slider__label {
2027
+ :has(input[type=range]:disabled) .tl-slider__label {
2030
2028
  color: var(--slider-disabled-text);
2031
2029
  }
2032
2030
 
@@ -2045,7 +2043,7 @@
2045
2043
  .tl-slider__control-minus,
2046
2044
  .tl-slider__control-plus {
2047
2045
  flex-shrink: 0;
2048
- border: none !important;
2046
+ border: none;
2049
2047
  }
2050
2048
 
2051
2049
  .tl-slider__track {
@@ -2086,11 +2084,11 @@
2086
2084
  outline-offset: 1px;
2087
2085
  z-index: 1;
2088
2086
  }
2089
- .tl-slider--disabled .tl-slider__track {
2087
+ .tl-slider__track:disabled {
2090
2088
  cursor: not-allowed;
2091
2089
  background-color: var(--slider-disabled);
2092
2090
  }
2093
- .tl-slider--disabled .tl-slider__track::after {
2091
+ .tl-slider__track:disabled::after {
2094
2092
  cursor: not-allowed;
2095
2093
  }
2096
2094
 
@@ -2106,7 +2104,7 @@
2106
2104
  flex-shrink: 0;
2107
2105
  align-self: center;
2108
2106
  }
2109
- .tl-slider--disabled .tl-slider__value {
2107
+ :has(input[type=range]:disabled) .tl-slider__value {
2110
2108
  color: var(--slider-disabled-text);
2111
2109
  }
2112
2110
 
@@ -2118,11 +2116,12 @@
2118
2116
  margin-left: 0;
2119
2117
  align-self: center;
2120
2118
  }
2121
- .tl-slider__input-wrapper.tl-text-field--readonly:not(.tl-text-field--disabled)::before {
2119
+ .tl-slider__input-wrapper.tl-text-field:not(.tl-text-field--label-inside):has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled))::before {
2122
2120
  width: 16px;
2123
2121
  height: 16px;
2124
2122
  right: 16px;
2125
2123
  top: 50%;
2124
+ transform: translateY(-50%);
2126
2125
  }
2127
2126
 
2128
2127
  .tl-slider__input-wrapper .tl-slider__input-field {
@@ -2139,7 +2138,7 @@
2139
2138
  margin: 0;
2140
2139
  }
2141
2140
 
2142
- .tl-slider__input-wrapper.tl-text-field--readonly:not(.tl-text-field--disabled) .tl-slider__input-field[readonly] {
2141
+ .tl-slider__input-wrapper:has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-slider__input-field[readonly] {
2143
2142
  width: 74px;
2144
2143
  padding-right: 39px;
2145
2144
  }
@@ -2180,7 +2179,7 @@
2180
2179
  .tl-slider__thumb:hover .tl-slider__value-tooltip {
2181
2180
  display: block;
2182
2181
  }
2183
- .tl-slider--disabled .tl-slider__value-tooltip {
2182
+ :has(input[type=range]:disabled) .tl-slider__value-tooltip {
2184
2183
  display: none;
2185
2184
  }
2186
2185
 
@@ -2237,11 +2236,11 @@
2237
2236
  width: 20px;
2238
2237
  height: 20px;
2239
2238
  }
2240
- .tl-slider--disabled .tl-slider__thumb-inner {
2239
+ :has(input[type=range]:disabled) .tl-slider__thumb-inner {
2241
2240
  background-color: var(--slider-disabled);
2242
- cursor: default;
2241
+ cursor: not-allowed;
2243
2242
  }
2244
- .tl-slider--disabled .tl-slider__thumb-inner::before {
2243
+ :has(input[type=range]:disabled) .tl-slider__thumb-inner::before {
2245
2244
  display: none;
2246
2245
  }
2247
2246
 
@@ -2272,7 +2271,7 @@
2272
2271
  left: 50%;
2273
2272
  transform: translate(-50%, -50%);
2274
2273
  }
2275
- .tl-slider--disabled .tl-slider__value-divider-line {
2274
+ :has(input[type=range]:disabled) .tl-slider__value-divider-line {
2276
2275
  background-color: var(--slider-disabled);
2277
2276
  }
2278
2277
 
@@ -2294,7 +2293,7 @@
2294
2293
  user-select: none;
2295
2294
  color: var(--slider-divider-values);
2296
2295
  }
2297
- .tl-slider--disabled .tl-slider__value-divider-label {
2296
+ :has(input[type=range]:disabled) .tl-slider__value-divider-label {
2298
2297
  color: var(--slider-disabled-text);
2299
2298
  }
2300
2299
 
@@ -2307,7 +2306,7 @@
2307
2306
  top: -1px;
2308
2307
  z-index: 1;
2309
2308
  }
2310
- .tl-slider--disabled .tl-slider__track-fill {
2309
+ :has(input[type=range]:disabled) .tl-slider__track-fill {
2311
2310
  background-color: var(--slider-disabled);
2312
2311
  }
2313
2312
 
@@ -1263,7 +1263,7 @@
1263
1263
  .tl-text-field--sm {
1264
1264
  height: 40px;
1265
1265
  }
1266
- .tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon)::before {
1266
+ .tl-text-field:has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon)::before {
1267
1267
  content: "";
1268
1268
  position: absolute;
1269
1269
  top: 50%;
@@ -1278,16 +1278,16 @@
1278
1278
  transform: translateY(-50%);
1279
1279
  z-index: 1;
1280
1280
  }
1281
- .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside).tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon)::before {
1281
+ .tl-text-field:not(.tl-text-field--label-inside):has(.tl-text-field__label):has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon)::before {
1282
1282
  top: calc(50% + 24px);
1283
1283
  }
1284
- .tl-text-field--disabled {
1285
- pointer-events: none;
1284
+ .tl-text-field:has(.tl-text-field__input:disabled) {
1285
+ cursor: not-allowed;
1286
1286
  }
1287
1287
  .tl-text-field .tl-icon {
1288
1288
  background-color: var(--text-field-affix);
1289
1289
  }
1290
- .tl-text-field--disabled .tl-text-field .tl-icon {
1290
+ :has(.tl-text-field__input:disabled) .tl-text-field .tl-icon {
1291
1291
  background-color: var(--text-field-affix-disabled);
1292
1292
  }
1293
1293
 
@@ -1331,7 +1331,7 @@
1331
1331
  .tl-text-field__input:focus {
1332
1332
  box-shadow: inset var(--text-field-box-shadow-focus);
1333
1333
  }
1334
- .tl-text-field:hover .tl-text-field__input:not(:focus) {
1334
+ .tl-text-field:hover .tl-text-field__input:not(:focus):not(:disabled) {
1335
1335
  box-shadow: inset var(--text-field-box-shadow-hover);
1336
1336
  }
1337
1337
  .tl-text-field--error .tl-text-field__input {
@@ -1340,33 +1340,35 @@
1340
1340
  .tl-text-field--error .tl-text-field__input:focus {
1341
1341
  box-shadow: inset var(--text-field-box-shadow-error-focus);
1342
1342
  }
1343
- .tl-text-field--error:hover .tl-text-field__input:not(:focus) {
1343
+ .tl-text-field--error:hover .tl-text-field__input:not(:focus):not(:disabled) {
1344
1344
  box-shadow: inset var(--text-field-box-shadow-error-hover);
1345
1345
  }
1346
- .tl-text-field--success:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__input:not(:focus) {
1346
+ .tl-text-field--success:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input:not(:focus) {
1347
1347
  box-shadow: inset var(--text-field-box-shadow-success);
1348
1348
  }
1349
- .tl-text-field--readonly .tl-text-field__input {
1349
+ .tl-text-field__input:disabled {
1350
+ box-shadow: none;
1351
+ background-color: var(--text-field-background-disabled);
1352
+ color: var(--text-field-text-disabled);
1353
+ cursor: not-allowed;
1354
+ pointer-events: none;
1355
+ }
1356
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input {
1350
1357
  box-shadow: inset var(--text-field-box-shadow);
1351
1358
  }
1352
- .tl-text-field--readonly .tl-text-field__input:focus {
1359
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input:focus {
1353
1360
  box-shadow: inset var(--text-field-box-shadow-focus);
1354
1361
  }
1355
- .tl-text-field--readonly:hover .tl-text-field__input:not(:focus) {
1362
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):hover .tl-text-field__input:not(:focus) {
1356
1363
  box-shadow: inset var(--text-field-box-shadow-hover);
1357
1364
  }
1358
- .tl-text-field--disabled .tl-text-field__input {
1359
- box-shadow: none;
1360
- background-color: var(--text-field-background-disabled);
1361
- color: var(--text-field-text-disabled);
1362
- }
1363
- .tl-text-field--readonly .tl-text-field__input {
1365
+ :has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)) .tl-text-field__input {
1364
1366
  user-select: auto;
1365
1367
  caret-color: transparent;
1366
1368
  cursor: default;
1367
1369
  pointer-events: none;
1368
1370
  }
1369
- .tl-text-field--readonly:not(.tl-text-field--disabled):not(.tl-text-field--hide-readonly-icon) .tl-text-field__input {
1371
+ .tl-text-field:has(.tl-text-field__input[readonly]):not(:has(.tl-text-field__input:disabled)):not(.tl-text-field--hide-readonly-icon) .tl-text-field__input {
1370
1372
  padding-right: 54px;
1371
1373
  }
1372
1374
  .tl-text-field--lg .tl-text-field__input {
@@ -1464,10 +1466,10 @@
1464
1466
  opacity: 0;
1465
1467
  visibility: hidden;
1466
1468
  }
1467
- .tl-text-field--label-inside.tl-text-field--disabled .tl-text-field__label {
1469
+ .tl-text-field--label-inside:has(.tl-text-field__input:disabled) .tl-text-field__label {
1468
1470
  color: var(--text-field-label-disabled);
1469
1471
  }
1470
- .tl-text-field:not(.tl-text-field--label-inside).tl-text-field--disabled .tl-text-field__label {
1472
+ .tl-text-field:not(.tl-text-field--label-inside):has(.tl-text-field__input:disabled) .tl-text-field__label {
1471
1473
  color: var(--text-field-label-disabled);
1472
1474
  }
1473
1475
 
@@ -1487,7 +1489,7 @@
1487
1489
  color: var(--text-field-helper);
1488
1490
  position: relative;
1489
1491
  }
1490
- .tl-text-field--disabled .tl-text-field__helper {
1492
+ :has(.tl-text-field__input:disabled) .tl-text-field__helper {
1491
1493
  color: var(--color-foreground-text-disabled);
1492
1494
  }
1493
1495
  .tl-text-field--error .tl-text-field__helper {
@@ -1506,16 +1508,16 @@
1506
1508
  mask-repeat: no-repeat;
1507
1509
  mask-position: center;
1508
1510
  }
1509
- .tl-text-field--error.tl-text-field--readonly .tl-text-field__helper {
1511
+ .tl-text-field--error:has(.tl-text-field__input[readonly]) .tl-text-field__helper {
1510
1512
  padding-left: 0;
1511
1513
  }
1512
- .tl-text-field--error.tl-text-field--readonly .tl-text-field__helper::before {
1514
+ .tl-text-field--error:has(.tl-text-field__input[readonly]) .tl-text-field__helper::before {
1513
1515
  display: none;
1514
1516
  }
1515
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__helper {
1517
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__helper {
1516
1518
  color: var(--text-field-error);
1517
1519
  }
1518
- .tl-text-field--error.tl-text-field--disabled .tl-text-field__helper::before {
1520
+ .tl-text-field--error:has(.tl-text-field__input:disabled) .tl-text-field__helper::before {
1519
1521
  background-color: var(--color-foreground-text-disabled);
1520
1522
  }
1521
1523
 
@@ -1529,13 +1531,13 @@
1529
1531
  margin-left: auto;
1530
1532
  color: var(--text-field-textcounter);
1531
1533
  }
1532
- .tl-text-field--disabled .tl-text-field__charcounter {
1534
+ :has(.tl-text-field__input:disabled) .tl-text-field__charcounter {
1533
1535
  color: var(--color-foreground-text-disabled);
1534
1536
  }
1535
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__charcounter {
1537
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__charcounter {
1536
1538
  color: var(--text-field-error);
1537
1539
  }
1538
- .tl-text-field--error:not(.tl-text-field--readonly):not(.tl-text-field--disabled) .tl-text-field__charcounter .tl-text-field__charcounter-divider {
1540
+ .tl-text-field--error:not(:has(.tl-text-field__input[readonly])):not(:has(.tl-text-field__input:disabled)) .tl-text-field__charcounter .tl-text-field__charcounter-divider {
1539
1541
  color: var(--text-field-error);
1540
1542
  }
1541
1543
 
@@ -1567,16 +1569,16 @@
1567
1569
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__prefix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__prefix--icon {
1568
1570
  transform: translateY(calc(-50% + 24px));
1569
1571
  }
1570
- .tl-text-field--disabled .tl-text-field__prefix--text, .tl-text-field--disabled .tl-text-field__prefix--icon {
1572
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon {
1571
1573
  color: var(--text-field-affix-disabled);
1572
1574
  }
1573
- .tl-text-field--disabled .tl-text-field__prefix--text > *, .tl-text-field--disabled .tl-text-field__prefix--icon > * {
1575
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon > * {
1574
1576
  color: var(--text-field-affix-disabled);
1575
1577
  }
1576
- .tl-text-field--disabled .tl-text-field__prefix--text .tl-icon, .tl-text-field--disabled .tl-text-field__prefix--icon .tl-icon {
1578
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--text .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon .tl-icon {
1577
1579
  background-color: var(--text-field-affix-disabled);
1578
1580
  }
1579
- .tl-text-field--disabled .tl-text-field__prefix--icon.tl-icon {
1581
+ :has(.tl-text-field__input:disabled) .tl-text-field__prefix--icon.tl-icon {
1580
1582
  background-color: var(--text-field-affix-disabled);
1581
1583
  }
1582
1584
 
@@ -1604,15 +1606,15 @@
1604
1606
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--icon {
1605
1607
  transform: translateY(calc(-50% + 24px));
1606
1608
  }
1607
- .tl-text-field--disabled .tl-text-field__suffix--text, .tl-text-field--disabled .tl-text-field__suffix--icon {
1609
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon {
1608
1610
  color: var(--text-field-affix-disabled);
1609
1611
  }
1610
- .tl-text-field--disabled .tl-text-field__suffix--text > *, .tl-text-field--disabled .tl-text-field__suffix--icon > * {
1612
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > * {
1611
1613
  color: var(--text-field-affix-disabled);
1612
1614
  }
1613
- .tl-text-field--disabled .tl-text-field__suffix--text .tl-icon,
1614
- .tl-text-field--disabled .tl-text-field__suffix--text > .tl-icon, .tl-text-field--disabled .tl-text-field__suffix--icon .tl-icon,
1615
- .tl-text-field--disabled .tl-text-field__suffix--icon > .tl-icon {
1615
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text .tl-icon,
1616
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon .tl-icon,
1617
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > .tl-icon {
1616
1618
  background-color: var(--text-field-affix-disabled) !important;
1617
1619
  }
1618
1620
 
@@ -1636,18 +1638,18 @@
1636
1638
  .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--text, .tl-text-field:has(.tl-text-field__label):not(.tl-text-field--label-inside) .tl-text-field__suffix--icon {
1637
1639
  transform: translateY(calc(-50% + 24px));
1638
1640
  }
1639
- .tl-text-field--disabled .tl-text-field__suffix--text, .tl-text-field--disabled .tl-text-field__suffix--icon {
1641
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon {
1640
1642
  color: var(--text-field-affix-disabled);
1641
1643
  }
1642
- .tl-text-field--disabled .tl-text-field__suffix--text > *, .tl-text-field--disabled .tl-text-field__suffix--icon > * {
1644
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > *, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > * {
1643
1645
  color: var(--text-field-affix-disabled);
1644
1646
  }
1645
- .tl-text-field--disabled .tl-text-field__suffix--text .tl-icon,
1646
- .tl-text-field--disabled .tl-text-field__suffix--text > .tl-icon, .tl-text-field--disabled .tl-text-field__suffix--icon .tl-icon,
1647
- .tl-text-field--disabled .tl-text-field__suffix--icon > .tl-icon {
1647
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text .tl-icon,
1648
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--text > .tl-icon, :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon .tl-icon,
1649
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon > .tl-icon {
1648
1650
  background-color: var(--text-field-affix-disabled);
1649
1651
  }
1650
- .tl-text-field--disabled .tl-text-field__suffix--icon.tl-icon {
1652
+ :has(.tl-text-field__input:disabled) .tl-text-field__suffix--icon.tl-icon {
1651
1653
  background-color: var(--text-field-affix-disabled);
1652
1654
  }
1653
1655