@scania/tegel-lite 0.0.3-rules-beta.9 → 0.1.0-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +0 -29
  2. package/dist/assets/icons/scania/configurator.svg +1 -0
  3. package/dist/assets/icons/scania/microphone.svg +4 -0
  4. package/dist/assets/icons/scania/microphone_inactive.svg +7 -0
  5. package/dist/assets/icons/scania/notification_snooze.svg +6 -0
  6. package/dist/assets/icons/scania/paperclip.svg +3 -0
  7. package/dist/components.css +2443 -2023
  8. package/dist/global.css +3128 -4749
  9. package/dist/scania-variables.css +16 -4
  10. package/dist/tl-accordion.css +8 -8
  11. package/dist/tl-badge.css +15 -0
  12. package/dist/tl-banner.css +2 -2
  13. package/dist/tl-button.css +20 -0
  14. package/dist/tl-card.css +16 -6
  15. package/dist/tl-checkbox-vars.css +1 -1
  16. package/dist/tl-checkbox.css +1 -1
  17. package/dist/tl-chip.css +6 -6
  18. package/dist/tl-datetime.css +7 -4
  19. package/dist/tl-dropdown.css +55 -3
  20. package/dist/tl-folder-tabs.css +64 -0
  21. package/dist/tl-footer.css +64 -0
  22. package/dist/tl-header.css +214 -60
  23. package/dist/tl-icon.css +18 -2
  24. package/dist/tl-inline-tabs.css +81 -0
  25. package/dist/tl-modal.css +35 -0
  26. package/dist/tl-navigation-tabs.css +81 -0
  27. package/dist/tl-radio-button.css +1 -1
  28. package/dist/tl-side-menu.css +74 -0
  29. package/dist/tl-slider.css +565 -1016
  30. package/dist/tl-spinner.css +8 -0
  31. package/dist/tl-step.css +8 -0
  32. package/dist/tl-stepper.css +8 -0
  33. package/dist/tl-table.css +18 -21
  34. package/dist/tl-text-field.css +34 -63
  35. package/dist/tl-toggle.css +1 -1
  36. package/dist/traton-variables.css +4 -2
  37. package/package.json +4 -15
  38. package/.ai/rules/01-design-tokens.mdc +0 -318
  39. package/.ai/rules/02-components-forms.mdc +0 -396
  40. package/.ai/rules/03-components-display.mdc +0 -474
  41. package/.ai/rules/04-components-navigation.mdc +0 -358
  42. package/.ai/rules/05-guidelines.mdc +0 -144
  43. package/.ai/rules/06-patterns.mdc +0 -352
  44. package/.cursor/rules/tegel-lite/01-design-tokens.mdc +0 -317
  45. package/.cursor/rules/tegel-lite/02-components-forms.mdc +0 -395
  46. package/.cursor/rules/tegel-lite/03-components-display.mdc +0 -473
  47. package/.cursor/rules/tegel-lite/04-components-navigation.mdc +0 -357
  48. package/.cursor/rules/tegel-lite/05-guidelines.mdc +0 -143
  49. package/.cursor/rules/tegel-lite/06-patterns.mdc +0 -351
  50. package/.github/copilot-instructions.md +0 -2045
  51. package/AGENTS.md +0 -2045
  52. package/CLAUDE.md +0 -2045
  53. package/bin/setup-ai-rules.js +0 -368
  54. package/dist/tl-folder-tab.css +0 -87
  55. package/dist/tl-inline-tab.css +0 -80
  56. package/dist/tl-navigation-tab.css +0 -114
  57. package/dist/tl-textarea-mixins.css +0 -0
  58. /package/dist/assets/icons/scania/{gift inactive.svg → gift_inactive.svg} +0 -0
@@ -116,7 +116,9 @@
116
116
  */
117
117
  :root,
118
118
  .tds-mode-light,
119
- .scania .tds-mode-light {
119
+ .scania .tds-mode-light,
120
+ .tl-mode-light,
121
+ .scania .tl-mode-light {
120
122
  --color-background-base: var(--scania-color-grey-00);
121
123
  --color-background-accent-primary-default: var(--scania-color-blue-600);
122
124
  --color-background-accent-primary-disabled: var(--scania-color-grey-50);
@@ -248,7 +250,9 @@
248
250
  * Do not edit directly, this file was auto-generated.
249
251
  */
250
252
  .tds-mode-dark,
251
- .scania .tds-mode-dark {
253
+ .scania .tds-mode-dark,
254
+ .tl-mode-dark,
255
+ .scania .tl-mode-dark {
252
256
  --color-background-base: var(--scania-color-grey-950);
253
257
  --color-background-accent-primary-default: var(--scania-color-blue-400);
254
258
  --color-background-accent-primary-disabled: var(--scania-color-grey-850);
@@ -1301,7 +1305,7 @@ h6 {
1301
1305
  --scania-icon-fuel_gauge-svg: url(./assets/icons/scania/fuel_gauge.svg);
1302
1306
  --scania-icon-fuel_inactive-svg: url(./assets/icons/scania/fuel_inactive.svg);
1303
1307
  --scania-icon-fuel-svg: url(./assets/icons/scania/fuel.svg);
1304
- --scania-icon-gift-inactive-svg: url(./assets/icons/scania/gift%20inactive.svg);
1308
+ --scania-icon-gift_inactive-svg: url(./assets/icons/scania/gift_inactive.svg);
1305
1309
  --scania-icon-gift-svg: url(./assets/icons/scania/gift.svg);
1306
1310
  --scania-icon-global-svg: url(./assets/icons/scania/global.svg);
1307
1311
  --scania-icon-guided_tour_inactive-svg: url(./assets/icons/scania/guided_tour_inactive.svg);
@@ -1345,6 +1349,8 @@ h6 {
1345
1349
  --scania-icon-merge-svg: url(./assets/icons/scania/merge.svg);
1346
1350
  --scania-icon-message_inactive-svg: url(./assets/icons/scania/message_inactive.svg);
1347
1351
  --scania-icon-message-svg: url(./assets/icons/scania/message.svg);
1352
+ --scania-icon-microphone_inactive-svg: url(./assets/icons/scania/microphone_inactive.svg);
1353
+ --scania-icon-microphone-svg: url(./assets/icons/scania/microphone.svg);
1348
1354
  --scania-icon-mileage_inactive-svg: url(./assets/icons/scania/mileage_inactive.svg);
1349
1355
  --scania-icon-mileage-svg: url(./assets/icons/scania/mileage.svg);
1350
1356
  --scania-icon-minimize_fullscreen-svg: url(./assets/icons/scania/minimize_fullscreen.svg);
@@ -1352,9 +1358,11 @@ h6 {
1352
1358
  --scania-icon-navigate_inactive-svg: url(./assets/icons/scania/navigate_inactive.svg);
1353
1359
  --scania-icon-navigate-svg: url(./assets/icons/scania/navigate.svg);
1354
1360
  --scania-icon-notification_inactive-svg: url(./assets/icons/scania/notification_inactive.svg);
1361
+ --scania-icon-notification_snooze-svg: url(./assets/icons/scania/notification_snooze.svg);
1355
1362
  --scania-icon-notification-svg: url(./assets/icons/scania/notification.svg);
1356
1363
  --scania-icon-oil_level_inactive-svg: url(./assets/icons/scania/oil_level_inactive.svg);
1357
1364
  --scania-icon-oil_level-svg: url(./assets/icons/scania/oil_level.svg);
1365
+ --scania-icon-paperclip-svg: url(./assets/icons/scania/paperclip.svg);
1358
1366
  --scania-icon-pause_inactive-svg: url(./assets/icons/scania/pause_inactive.svg);
1359
1367
  --scania-icon-pause-svg: url(./assets/icons/scania/pause.svg);
1360
1368
  --scania-icon-phone_inactive-svg: url(./assets/icons/scania/phone_inactive.svg);
@@ -1557,7 +1565,7 @@ h6 {
1557
1565
  --icon-fuel_gauge-svg: var(--scania-icon-fuel_gauge-svg);
1558
1566
  --icon-fuel_inactive-svg: var(--scania-icon-fuel_inactive-svg);
1559
1567
  --icon-fuel-svg: var(--scania-icon-fuel-svg);
1560
- --icon-gift-inactive-svg: var(--scania-icon-gift-inactive-svg);
1568
+ --icon-gift_inactive-svg: var(--scania-icon-gift_inactive-svg);
1561
1569
  --icon-gift-svg: var(--scania-icon-gift-svg);
1562
1570
  --icon-global-svg: var(--scania-icon-global-svg);
1563
1571
  --icon-guided_tour_inactive-svg: var(--scania-icon-guided_tour_inactive-svg);
@@ -1601,6 +1609,8 @@ h6 {
1601
1609
  --icon-merge-svg: var(--scania-icon-merge-svg);
1602
1610
  --icon-message_inactive-svg: var(--scania-icon-message_inactive-svg);
1603
1611
  --icon-message-svg: var(--scania-icon-message-svg);
1612
+ --icon-microphone_inactive-svg: var(--scania-icon-microphone_inactive-svg);
1613
+ --icon-microphone-svg: var(--scania-icon-microphone-svg);
1604
1614
  --icon-mileage_inactive-svg: var(--scania-icon-mileage_inactive-svg);
1605
1615
  --icon-mileage-svg: var(--scania-icon-mileage-svg);
1606
1616
  --icon-minimize_fullscreen-svg: var(--scania-icon-minimize_fullscreen-svg);
@@ -1608,9 +1618,11 @@ h6 {
1608
1618
  --icon-navigate_inactive-svg: var(--scania-icon-navigate_inactive-svg);
1609
1619
  --icon-navigate-svg: var(--scania-icon-navigate-svg);
1610
1620
  --icon-notification_inactive-svg: var(--scania-icon-notification_inactive-svg);
1621
+ --icon-notification_snooze-svg: var(--scania-icon-notification_snooze-svg);
1611
1622
  --icon-notification-svg: var(--scania-icon-notification-svg);
1612
1623
  --icon-oil_level_inactive-svg: var(--scania-icon-oil_level_inactive-svg);
1613
1624
  --icon-oil_level-svg: var(--scania-icon-oil_level-svg);
1625
+ --icon-paperclip-svg: var(--scania-icon-paperclip-svg);
1614
1626
  --icon-pause_inactive-svg: var(--scania-icon-pause_inactive-svg);
1615
1627
  --icon-pause-svg: var(--scania-icon-pause-svg);
1616
1628
  --icon-phone_inactive-svg: var(--scania-icon-phone_inactive-svg);
@@ -18,26 +18,26 @@
18
18
  }
19
19
 
20
20
  /* Mode variants */
21
- .tds-mode-light .tl-accordion--primary,
22
- .tds-mode-light .tl-accordion .tl-accordion--primary {
21
+ .tl-mode-light .tl-accordion--primary,
22
+ .tl-mode-light .tl-accordion .tl-accordion--primary {
23
23
  background-color: var(--accordion-background-hover-secondary);
24
24
  --accordion-background-hover: var(--accordion-background-hover-primary);
25
25
  }
26
26
 
27
- .tds-mode-light .tl-accordion--secondary,
28
- .tds-mode-light .tl-accordion .tl-accordion--secondary {
27
+ .tl-mode-light .tl-accordion--secondary,
28
+ .tl-mode-light .tl-accordion .tl-accordion--secondary {
29
29
  background-color: var(--accordion-background-hover-primary);
30
30
  --accordion-background-hover: var(--accordion-background-hover-secondary);
31
31
  }
32
32
 
33
- .tds-mode-dark .tl-accordion--primary,
34
- .tds-mode-dark .tl-accordion .tl-accordion--primary {
33
+ .tl-mode-dark .tl-accordion--primary,
34
+ .tl-mode-dark .tl-accordion .tl-accordion--primary {
35
35
  background-color: var(--accordion-background-hover-secondary);
36
36
  --accordion-background-hover: var(--accordion-background-hover-primary);
37
37
  }
38
38
 
39
- .tds-mode-dark .tl-accordion--secondary,
40
- .tds-mode-dark .tl-accordion .tl-accordion--secondary {
39
+ .tl-mode-dark .tl-accordion--secondary,
40
+ .tl-mode-dark .tl-accordion .tl-accordion--secondary {
41
41
  background-color: var(--accordion-background-hover-primary);
42
42
  --accordion-background-hover: var(--accordion-background-hover-secondary);
43
43
  }
package/dist/tl-badge.css CHANGED
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Do not edit directly, this file was auto-generated.
3
+ */
4
+ .tl-badge,
5
+ tds-badge {
6
+ --component-badge-text: var(--color-brand-neutral-white);
7
+ --component-badge-background: var(--color-system-danger-subtle);
8
+ }
9
+
10
+ .traton .tl-badge,
11
+ .traton tds-badge {
12
+ --component-badge-text: var(--color-brand-neutral-black);
13
+ --component-badge-background: var(--color-system-warning-subtle);
14
+ }
15
+
1
16
  .tl-badge {
2
17
  --badge-background-color: var(--component-badge-background);
3
18
  --badge-color-text: var(--component-badge-text);
@@ -1,6 +1,6 @@
1
1
  :root,
2
- .tds-mode-light,
3
- .tds-mode-dark {
2
+ .tl-mode-light,
3
+ .tl-mode-dark {
4
4
  --banner-text: var(--color-foreground-text-strong);
5
5
  --banner-close-icon: var(--color-foreground-icon-strong);
6
6
  --banner-background-default: var(--color-background-layer-01);
@@ -1,3 +1,23 @@
1
+ /**
2
+ * Do not edit directly, this file was auto-generated.
3
+ */
4
+ .tl-button,
5
+ tds-button,
6
+ .tl-mode-light .tl-button,
7
+ .tds-mode-light tds-button {
8
+ --component-button-primary-text: var(--color-brand-neutral-white);
9
+ }
10
+
11
+ .scania .tds-mode-dark tds-button,
12
+ .scania .tl-mode-dark .tl-button {
13
+ --component-button-primary-text: var(--color-brand-neutral-white);
14
+ }
15
+
16
+ .tds-mode-dark tds-button,
17
+ .tl-mode-dark .tl-button {
18
+ --component-button-primary-text: var(--color-brand-neutral-black);
19
+ }
20
+
1
21
  .tl-button {
2
22
  --button-transparent: transparent;
3
23
  --button-white: var(--color-brand-neutral-white);
package/dist/tl-card.css CHANGED
@@ -1,3 +1,13 @@
1
+ /**
2
+ * Do not edit directly, this file was auto-generated.
3
+ */
4
+ .tl-card,
5
+ tds-card {
6
+ --component-card-secondary: var(--color-background-layer-02);
7
+ --component-card-primary: var(--color-background-layer-01);
8
+ --component-card-padding-padding: var(--scania-unit-16);
9
+ }
10
+
1
11
  .tl-card {
2
12
  --card-background: var(--tds-white);
3
13
  --card-background-primary: var(--component-card-primary);
@@ -60,26 +70,26 @@
60
70
  }
61
71
 
62
72
  /* Dark mode */
63
- .tds-mode-dark {
73
+ .tl-mode-dark {
64
74
  --card-background-primary: var(--tds-grey-900);
65
75
  --card-background-secondary: var(--tds-grey-850);
66
76
  }
67
- .tds-mode-dark .tl-card {
77
+ .tl-mode-dark .tl-card {
68
78
  --card-background: var(--card-background-primary);
69
79
  }
70
- .tds-mode-dark .tl-card--primary {
80
+ .tl-mode-dark .tl-card--primary {
71
81
  --card-box: var(--card-box-primary);
72
82
  --card-background: var(--card-background-primary);
73
83
  }
74
- .tds-mode-dark .tl-card--secondary {
84
+ .tl-mode-dark .tl-card--secondary {
75
85
  --card-box: var(--card-box-primary);
76
86
  --card-background: var(--card-background-secondary);
77
87
  }
78
88
 
79
- .traton .tds-mode-dark .tl-card--primary {
89
+ .traton .tl-mode-dark .tl-card--primary {
80
90
  --card-background: transparent;
81
91
  }
82
- .traton .tds-mode-dark .tl-card--secondary {
92
+ .traton .tl-mode-dark .tl-card--secondary {
83
93
  --card-background: transparent;
84
94
  }
85
95
 
@@ -16,7 +16,7 @@
16
16
  --checkbox-background-img-indeterminate-disabled: url("data:image/svg+xml;utf8,<svg width='8' height='2' viewBox='0 0 8 2' fill='none' xmlns='http://www.w3.org/2000/svg'><rect y='0.5' width='8' height='1' rx='0.5' fill='%23b0b7c4'/></svg>");
17
17
  }
18
18
 
19
- .tds-mode-dark .tl-checkbox {
19
+ .tl-mode-dark .tl-checkbox {
20
20
  --checkbox-background-img: url("data:image/svg+xml;utf8,<svg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'> <path d='M1 2.33333L3.4 5C4.80589 3.4379 5.59411 2.5621 7 1' stroke='%230D0F13' stroke-linecap='round' stroke-linejoin='round'/></svg>");
21
21
  --checkbox-background-img-indeterminate: url("data:image/svg+xml;utf8,<svg width='8' height='2' viewBox='0 0 8 2' fill='none' xmlns='http://www.w3.org/2000/svg'><rect y='0.5' width='8' height='1' rx='0.5' fill='%230D0F13'/></svg>");
22
22
  --checkbox-background-img-disabled: url("data:image/svg+xml;utf8,<svg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'> <path d='M1 2.33333L3.4 5C4.80589 3.4379 5.59411 2.5621 7 1' stroke='%2356657A' stroke-linecap='round' stroke-linejoin='round'/></svg>");
@@ -17,7 +17,7 @@
17
17
  --checkbox-background-img-indeterminate-disabled: url("data:image/svg+xml;utf8,<svg width='8' height='2' viewBox='0 0 8 2' fill='none' xmlns='http://www.w3.org/2000/svg'><rect y='0.5' width='8' height='1' rx='0.5' fill='%23b0b7c4'/></svg>");
18
18
  }
19
19
 
20
- .tds-mode-dark .tl-checkbox {
20
+ .tl-mode-dark .tl-checkbox {
21
21
  --checkbox-background-img: url("data:image/svg+xml;utf8,<svg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'> <path d='M1 2.33333L3.4 5C4.80589 3.4379 5.59411 2.5621 7 1' stroke='%230D0F13' stroke-linecap='round' stroke-linejoin='round'/></svg>");
22
22
  --checkbox-background-img-indeterminate: url("data:image/svg+xml;utf8,<svg width='8' height='2' viewBox='0 0 8 2' fill='none' xmlns='http://www.w3.org/2000/svg'><rect y='0.5' width='8' height='1' rx='0.5' fill='%230D0F13'/></svg>");
23
23
  --checkbox-background-img-disabled: url("data:image/svg+xml;utf8,<svg width='8' height='6' viewBox='0 0 8 6' fill='none' xmlns='http://www.w3.org/2000/svg'> <path d='M1 2.33333L3.4 5C4.80589 3.4379 5.59411 2.5621 7 1' stroke='%2356657A' stroke-linecap='round' stroke-linejoin='round'/></svg>");
package/dist/tl-chip.css CHANGED
@@ -31,15 +31,15 @@
31
31
  .scania .tl-chip {
32
32
  --component-chip-border-radius: 16px;
33
33
  }
34
- :root .tds-mode-light .tl-chip,
35
- .scania .tds-mode-light .tl-chip {
34
+ :root .tl-mode-light .tl-chip,
35
+ .scania .tl-mode-light .tl-chip {
36
36
  --component-chip-color-hover: var(--color-background-surface-300);
37
37
  --component-chip-foreground-foreground-disabled-selected: var(
38
38
  --color-foreground-text-inverse-subtle
39
39
  );
40
40
  }
41
- :root .tds-mode-dark .tl-chip,
42
- .scania .tds-mode-dark .tl-chip {
41
+ :root .tl-mode-dark .tl-chip,
42
+ .scania .tl-mode-dark .tl-chip {
43
43
  --component-chip-color-default: var(--color-background-surface-400);
44
44
  --component-chip-color-focused-on-selected: var(--color-system-info-discrete);
45
45
  --component-chip-color-hover-on-selected: var(--color-system-info-default);
@@ -50,7 +50,7 @@
50
50
  .traton .tl-chip {
51
51
  --component-chip-border-radius: 2px;
52
52
  }
53
- .traton .tds-mode-light .tl-chip {
53
+ .traton .tl-mode-light .tl-chip {
54
54
  --component-chip-color-default: var(--color-background-surface-200);
55
55
  --component-chip-color-selected: var(--color-background-surface-300);
56
56
  --component-chip-color-hover-on-selected: var(--color-background-surface-400);
@@ -58,7 +58,7 @@
58
58
  --component-chip-color-focused-on-selected: var(--component-chip-color-focused);
59
59
  --component-chip-foreground-foreground-disabled-selected: var(--color-background-surface-200);
60
60
  }
61
- .traton .tds-mode-dark .tl-chip {
61
+ .traton .tl-mode-dark .tl-chip {
62
62
  --component-chip-color-default: var(--color-background-surface-300);
63
63
  --component-chip-color-disabled: var(--color-background-surface-200);
64
64
  --component-chip-foreground-inverse: var(--color-foreground-text-inverse-strong);
@@ -213,9 +213,9 @@
213
213
  background-color: var(--datetime-icon-error);
214
214
  }
215
215
  .tl-datetime__wrapper {
216
- /* Disabled state (should not override error state) */
216
+ /* Disabled state */
217
217
  }
218
- .tl-datetime:has(input:disabled):not(.tl-datetime--error) .tl-datetime__wrapper::after {
218
+ .tl-datetime:has(input:disabled) .tl-datetime__wrapper::after {
219
219
  background-color: var(--datetime-icon-disabled);
220
220
  }
221
221
 
@@ -248,7 +248,7 @@
248
248
  .tl-datetime__input:focus {
249
249
  box-shadow: inset var(--datetime-box-shadow-focus);
250
250
  }
251
- .tl-datetime:hover .tl-datetime__input:not(:focus) {
251
+ .tl-datetime:hover .tl-datetime__input:not(:focus):not(:disabled) {
252
252
  box-shadow: inset var(--datetime-box-shadow-hover);
253
253
  }
254
254
  .tl-datetime--error .tl-datetime__input {
@@ -257,9 +257,12 @@
257
257
  .tl-datetime--error .tl-datetime__input:focus {
258
258
  box-shadow: inset var(--datetime-box-shadow-error-focus);
259
259
  }
260
- .tl-datetime--error:hover .tl-datetime__input:not(:focus) {
260
+ .tl-datetime--error:hover .tl-datetime__input:not(:focus):not(:disabled) {
261
261
  box-shadow: inset var(--datetime-box-shadow-error-hover);
262
262
  }
263
+ .tl-datetime--error .tl-datetime__input:disabled {
264
+ box-shadow: inset var(--datetime-box-shadow-error);
265
+ }
263
266
  .tl-datetime__input::placeholder {
264
267
  opacity: 1;
265
268
  color: var(--datetime-placeholder);
@@ -1,3 +1,18 @@
1
+ /**
2
+ * Do not edit directly, this file was auto-generated.
3
+ */
4
+ .tl-dropdown,
5
+ tds-dropdown {
6
+ --component-dropdown-list-item-secondary-hover: var(--color-background-layer-03);
7
+ --component-dropdown-list-item-secondary-focus: var(--color-background-layer-03);
8
+ --component-dropdown-list-item-focus: var(--color-background-layer-02);
9
+ --component-dropdown-list-item-hover: var(--color-background-layer-02);
10
+ --component-dropdown-secondary-hover: var(--color-background-layer-03);
11
+ --component-dropdown-secondary-focus: var(--color-background-layer-03);
12
+ --component-dropdown-focus: var(--color-background-surface-300);
13
+ --component-dropdown-hover: var(--color-background-surface-100);
14
+ }
15
+
1
16
  .tl-dropdown-option {
2
17
  --dropdown-option-background: var(--color-background-layer-01);
3
18
  --dropdown-option-background-hover: var(--component-dropdown-hover);
@@ -6,6 +21,9 @@
6
21
  --dropdown-option-border: var(--color-foreground-border-discrete);
7
22
  }
8
23
 
24
+ .tl-dropdown {
25
+ --dropdown-background: var(--color-background-layer-01);
26
+ }
9
27
  .tl-dropdown--primary {
10
28
  --dropdown-background: var(--color-background-layer-01);
11
29
  }
@@ -13,7 +31,6 @@
13
31
  --dropdown-background: var(--color-background-layer-02);
14
32
  }
15
33
  .tl-dropdown {
16
- --dropdown-background: var(--color-background-layer-01);
17
34
  --dropdown-text: var(--color-foreground-text-strong);
18
35
  --dropdown-helper-text: var(--color-foreground-text-defined);
19
36
  --dropdown-placeholder: var(--color-foreground-text-subtle);
@@ -166,7 +183,6 @@ body {
166
183
 
167
184
  .tl-dropdown__select {
168
185
  padding-top: 2px;
169
- padding-left: calc(var(--tds-spacing-element-16) - 1px);
170
186
  cursor: pointer;
171
187
  display: block;
172
188
  }
@@ -286,6 +302,10 @@ body {
286
302
  transition: transform 0.2s;
287
303
  }
288
304
 
305
+ .tl-dropdown--lg:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
306
+ background-color: var(--dropdown-disabled);
307
+ }
308
+
289
309
  .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
290
310
  content: "";
291
311
  position: absolute;
@@ -303,6 +323,10 @@ body {
303
323
  transition: transform 0.2s;
304
324
  }
305
325
 
326
+ .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
327
+ background-color: var(--dropdown-disabled);
328
+ }
329
+
306
330
  .tl-dropdown--sm:not(.tl-dropdown--label-inside):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
307
331
  content: "";
308
332
  position: absolute;
@@ -320,6 +344,10 @@ body {
320
344
  transition: transform 0.2s;
321
345
  }
322
346
 
347
+ .tl-dropdown--sm:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
348
+ background-color: var(--dropdown-disabled);
349
+ }
350
+
323
351
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(:is(.tl-dropdown__button, .tl-dropdown__input)) .tl-dropdown__button::after,
324
352
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(:is(.tl-dropdown__button, .tl-dropdown__input)) .tl-dropdown__input-wrapper::after {
325
353
  top: calc(50% + 1px);
@@ -342,6 +370,10 @@ body {
342
370
  transition: transform 0.2s;
343
371
  }
344
372
 
373
+ .tl-dropdown--label-inside:has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
374
+ background-color: var(--dropdown-disabled);
375
+ }
376
+
345
377
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
346
378
  content: "";
347
379
  position: absolute;
@@ -359,6 +391,10 @@ body {
359
391
  transition: transform 0.2s;
360
392
  }
361
393
 
394
+ .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
395
+ background-color: var(--dropdown-disabled);
396
+ }
397
+
362
398
  .tl-dropdown--label-inside:has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
363
399
  content: "";
364
400
  position: absolute;
@@ -376,6 +412,10 @@ body {
376
412
  transition: transform 0.2s;
377
413
  }
378
414
 
415
+ .tl-dropdown--label-inside:has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
416
+ background-color: var(--dropdown-disabled);
417
+ }
418
+
379
419
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
380
420
  content: "";
381
421
  position: absolute;
@@ -393,6 +433,10 @@ body {
393
433
  transition: transform 0.2s;
394
434
  }
395
435
 
436
+ .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
437
+ background-color: var(--dropdown-disabled);
438
+ }
439
+
396
440
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
397
441
  content: "";
398
442
  position: absolute;
@@ -410,6 +454,10 @@ body {
410
454
  transition: transform 0.2s;
411
455
  }
412
456
 
457
+ .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
458
+ background-color: var(--dropdown-disabled);
459
+ }
460
+
413
461
  .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
414
462
  top: calc(50% + 1px);
415
463
  }
@@ -574,7 +622,7 @@ body {
574
622
  scrollbar-width: var(--tl-scrollbar-width-standard);
575
623
  }
576
624
  }
577
- .tds-mode-dark .tl-dropdown__list {
625
+ .tl-mode-dark .tl-dropdown__list {
578
626
  box-shadow: none;
579
627
  }
580
628
  .tl-dropdown--dropup .tl-dropdown__list {
@@ -763,6 +811,10 @@ body {
763
811
  transition: box-shadow 0.2s;
764
812
  }
765
813
 
814
+ .tl-dropdown:has(.tl-dropdown__select option[value=""]:checked) .tl-dropdown__select {
815
+ padding-top: 3px;
816
+ }
817
+
766
818
  .tl-dropdown:has(.tl-dropdown__select option[value=""]:checked) .tl-dropdown__select:disabled {
767
819
  color: var(--dropdown-disabled);
768
820
  cursor: not-allowed;
@@ -24,6 +24,70 @@
24
24
  --folder-tab-surface-selected: var(--color-background-layer-02);
25
25
  }
26
26
 
27
+ /* tl-folder-tabs.scss (overlay buttons, no JS) */
28
+ /* Typography Usage mixins */
29
+ .tl-folder-tabs__tab {
30
+ all: unset;
31
+ font-family: var(--headline-07-font-family);
32
+ font-size: var(--headline-07-font-size);
33
+ line-height: var(--headline-07-line-height);
34
+ font-weight: var(--headline-07-font-weight);
35
+ letter-spacing: var(--headline-07-letter-spacing);
36
+ text-transform: var(--headline-07-text-transform);
37
+ box-sizing: border-box;
38
+ position: relative;
39
+ display: inline-flex;
40
+ align-items: center;
41
+ min-inline-size: 142px;
42
+ inline-size: auto;
43
+ flex: 0 0 auto;
44
+ white-space: nowrap;
45
+ padding: 16px;
46
+ text-align: left;
47
+ cursor: pointer;
48
+ border-left: 1px solid transparent;
49
+ border-top: 2px solid var(--folder-tab-surface);
50
+ background-color: var(--folder-tab-surface);
51
+ color: var(--folder-tab-text);
52
+ }
53
+ .tl-folder-tabs__tab + .tl-folder-tabs__tab {
54
+ border-left-color: var(--folder-tab-divider);
55
+ }
56
+ .tl-folder-tabs__tab:focus-visible {
57
+ outline: 2px solid currentcolor;
58
+ outline-offset: -4px;
59
+ box-shadow: none;
60
+ }
61
+ .tl-folder-tabs__tab:hover:not(.tl-folder-tabs__tab--disabled):not(.tl-folder-tabs__tab--selected) {
62
+ background-color: var(--folder-tab-surface-hover);
63
+ border-top-color: var(--folder-tab-surface-hover);
64
+ color: var(--folder-tab-text);
65
+ }
66
+ .tl-folder-tabs__tab--selected {
67
+ background-color: var(--folder-tab-surface-selected);
68
+ border-top-color: var(--folder-tab-border-selected);
69
+ color: var(--folder-tab-text);
70
+ }
71
+ .tl-folder-tabs__tab--selected::after {
72
+ content: "";
73
+ position: absolute;
74
+ top: 0;
75
+ right: -1px;
76
+ bottom: 0;
77
+ width: 1px;
78
+ background-color: var(--folder-tab-surface-selected);
79
+ z-index: 1;
80
+ }
81
+ .tl-folder-tabs__tab--disabled {
82
+ color: var(--folder-tab-text-disabled);
83
+ cursor: not-allowed;
84
+ user-select: none;
85
+ }
86
+ .tl-folder-tabs__tab--disabled:focus-visible {
87
+ outline: none;
88
+ box-shadow: none;
89
+ }
90
+
27
91
  .tl-folder-tabs {
28
92
  box-sizing: border-box;
29
93
  }
@@ -1,4 +1,68 @@
1
1
  /* Typography Usage mixins */
2
+ /**
3
+ * Do not edit directly, this file was auto-generated.
4
+ */
5
+ .tl-footer,
6
+ tds-footer {
7
+ --component-footer-text-color-copyright: var(--color-foreground-text-soft);
8
+ --component-footer-text-color-link-text: var(--color-brand-primary-50);
9
+ --component-footer-primary: var(--scania-color-blue-900);
10
+ --component-footer-border: var(--scania-color-blue-800);
11
+ }
12
+
13
+ :root .tl-footer,
14
+ :root tds-footer,
15
+ .scania .tl-footer,
16
+ .scania tds-footer {
17
+ --component-footer-primary: var(--scania-color-blue-900);
18
+ --component-footer-border: var(--scania-color-blue-700);
19
+ --component-footer-text-color-copyright: var(--color-foreground-text-inverse-soft);
20
+ --component-footer-text-color-link-text: var(--color-foreground-text-brand);
21
+ --component-footer-logotype-cdn: var(--tds-background-image-scania-wordmark-white-svg);
22
+ --component-footer-logotype-local: var(--tds-background-image-scania-wordmark-white-svg-local);
23
+ }
24
+ :root .tds-mode-light tds-footer,
25
+ :root .tds-mode-light .tl-footer,
26
+ .scania .tds-mode-light tds-footer,
27
+ .scania .tds-mode-light .tl-footer {
28
+ --component-footer-text-color-copyright: var(--color-foreground-text-inverse-soft);
29
+ --component-footer-text-color-link-text: var(--color-foreground-text-brand);
30
+ --component-footer-logotype-cdn: var(--tds-background-image-scania-wordmark-white-svg);
31
+ --component-footer-logotype-local: var(--tds-background-image-scania-wordmark-white-svg-local);
32
+ }
33
+ :root .tds-mode-dark tds-footer,
34
+ :root .tds-mode-dark .tl-footer,
35
+ .scania .tds-mode-dark tds-footer,
36
+ .scania .tds-mode-dark .tl-footer {
37
+ --component-footer-text-color-copyright: var(--color-foreground-text-soft);
38
+ --component-footer-text-color-link-text: var(--color-brand-primary-50);
39
+ --component-footer-logotype-cdn: var(--tds-background-image-scania-wordmark-white-svg);
40
+ --component-footer-logotype-local: var(--tds-background-image-scania-wordmark-white-svg-local);
41
+ }
42
+
43
+ .traton tds-footer,
44
+ .traton .tl-footer {
45
+ --component-footer-primary: var(--traton-color-grey-50);
46
+ --component-footer-border: var(--traton-color-transparent-invisible-light);
47
+ --component-footer-text-color-copyright: var(--traton-color-transparent-600);
48
+ --component-footer-text-color-link-text: var(--color-foreground-text-strong);
49
+ --component-footer-logotype-cdn: var(--traton-logotype-black-svg);
50
+ --component-footer-logotype-local: var(--traton-logotype-black-svg-local);
51
+ }
52
+ .traton .tds-mode-light tds-footer,
53
+ .traton .tds-mode-light .tl-footer {
54
+ --component-footer-text-color-copyright: var(--traton-color-transparent-600);
55
+ --component-footer-logotype-cdn: var(--traton-logotype-black-svg);
56
+ --component-footer-logotype-local: var(--traton-logotype-black-svg-local);
57
+ }
58
+ .traton .tds-mode-dark tds-footer,
59
+ .traton .tds-mode-dark .tl-footer {
60
+ --component-footer-text-color-copyright: var(--traton-color-transparent-inverse-600);
61
+ --component-footer-primary: var(--traton-color-blue-1000);
62
+ --component-footer-logotype-cdn: var(--traton-logotype-white-svg);
63
+ --component-footer-logotype-local: var(--traton-logotype-white-svg-local);
64
+ }
65
+
2
66
  .tl-footer {
3
67
  --footer-top-background-primary: var(--color-background-layer-01);
4
68
  --footer-top-background-secondary: var(--color-background-base);