@scania/tegel-lite 0.1.0-dev-test-beta.0 → 0.1.0-dropdown-vars-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. package/README.dev.md +1 -5
  2. package/README.md +12 -12
  3. package/dist/assets/fonts/traton/TratonTypeDisplay-Bold.woff +0 -0
  4. package/dist/assets/fonts/traton/TratonTypeDisplay-Bold.woff2 +0 -0
  5. package/dist/assets/fonts/traton/TratonTypeDisplay-Medium.woff +0 -0
  6. package/dist/assets/fonts/traton/TratonTypeDisplay-Medium.woff2 +0 -0
  7. package/dist/assets/fonts/traton/TratonTypeText-Bold.woff +0 -0
  8. package/dist/assets/fonts/traton/TratonTypeText-Bold.woff2 +0 -0
  9. package/dist/assets/fonts/traton/TratonTypeText-BoldItalic.woff +0 -0
  10. package/dist/assets/fonts/traton/TratonTypeText-BoldItalic.woff2 +0 -0
  11. package/dist/assets/fonts/traton/TratonTypeText-Italic.woff +0 -0
  12. package/dist/assets/fonts/traton/TratonTypeText-Italic.woff2 +0 -0
  13. package/dist/assets/fonts/traton/TratonTypeText-Medium.woff +0 -0
  14. package/dist/assets/fonts/traton/TratonTypeText-Medium.woff2 +0 -0
  15. package/dist/assets/fonts/traton/TratonTypeText-MediumItalic.woff +0 -0
  16. package/dist/assets/fonts/traton/TratonTypeText-MediumItalic.woff2 +0 -0
  17. package/dist/assets/fonts/traton/TratonTypeText-Regular.woff +0 -0
  18. package/dist/assets/fonts/traton/TratonTypeText-Regular.woff2 +0 -0
  19. package/dist/assets/fonts/traton/TratonTypeText-SemiBold.woff +0 -0
  20. package/dist/assets/fonts/traton/TratonTypeText-SemiBold.woff2 +0 -0
  21. package/dist/assets/fonts/traton/TratonTypeText-SemiBoldItalic.woff2 +0 -0
  22. package/dist/assets/icons/traton/back.svg +1 -0
  23. package/dist/assets/icons/traton/calendar_inactive.svg +1 -0
  24. package/dist/assets/icons/traton/card.svg +1 -0
  25. package/dist/assets/icons/traton/cart.svg +1 -0
  26. package/dist/assets/icons/traton/clock.svg +1 -0
  27. package/dist/assets/icons/traton/clock_inactive.svg +1 -0
  28. package/dist/assets/icons/traton/contact.svg +1 -0
  29. package/dist/assets/icons/traton/contact_inactive.svg +1 -0
  30. package/dist/assets/icons/traton/copy.svg +1 -0
  31. package/dist/assets/icons/traton/document.svg +1 -0
  32. package/dist/assets/icons/traton/document_check.svg +1 -0
  33. package/dist/assets/icons/traton/document_doc.svg +1 -0
  34. package/dist/assets/icons/traton/document_eye.svg +1 -0
  35. package/dist/assets/icons/traton/document_pdf.svg +1 -0
  36. package/dist/assets/icons/traton/document_tool.svg +1 -0
  37. package/dist/assets/icons/traton/document_word.svg +1 -0
  38. package/dist/assets/icons/traton/document_wrong.svg +1 -0
  39. package/dist/assets/icons/traton/document_xls.svg +1 -0
  40. package/dist/assets/icons/traton/dollar.svg +1 -0
  41. package/dist/assets/icons/traton/doner.svg +1 -0
  42. package/dist/assets/icons/traton/double_kebab.svg +1 -0
  43. package/dist/assets/icons/traton/download.svg +1 -0
  44. package/dist/assets/icons/traton/edit_inactive.svg +1 -1
  45. package/dist/assets/icons/traton/email.svg +1 -0
  46. package/dist/assets/icons/traton/export.svg +1 -0
  47. package/dist/assets/icons/traton/export_inactive.svg +1 -0
  48. package/dist/assets/icons/traton/eye.svg +1 -0
  49. package/dist/assets/icons/traton/eye_inactive.svg +1 -0
  50. package/dist/assets/icons/traton/face_dissatisfied.svg +1 -0
  51. package/dist/assets/icons/traton/face_neutral.svg +1 -0
  52. package/dist/assets/icons/traton/face_satisfied.svg +1 -0
  53. package/dist/assets/icons/traton/filters.svg +1 -0
  54. package/dist/assets/icons/traton/filters_inactive.svg +1 -0
  55. package/dist/assets/icons/traton/folder.svg +1 -0
  56. package/dist/assets/icons/traton/fuel_gauge.svg +1 -0
  57. package/dist/assets/icons/traton/fuel_gauge_inactive.svg +1 -0
  58. package/dist/assets/icons/traton/global.svg +1 -0
  59. package/dist/assets/icons/traton/heart.svg +1 -0
  60. package/dist/assets/icons/traton/heart_inactive.svg +1 -0
  61. package/dist/assets/icons/traton/home.svg +1 -0
  62. package/dist/assets/icons/traton/home_inactive.svg +1 -0
  63. package/dist/assets/icons/traton/image.svg +1 -0
  64. package/dist/assets/icons/traton/image_add.svg +1 -0
  65. package/dist/assets/icons/traton/image_inactive.svg +1 -0
  66. package/dist/assets/icons/traton/image_set.svg +1 -0
  67. package/dist/assets/icons/traton/kebab.svg +1 -0
  68. package/dist/assets/icons/traton/link.svg +1 -0
  69. package/dist/assets/icons/traton/link_broken.svg +1 -0
  70. package/dist/assets/icons/traton/lock.svg +1 -0
  71. package/dist/assets/icons/traton/meatballs.svg +1 -0
  72. package/dist/assets/icons/traton/message.svg +1 -0
  73. package/dist/assets/icons/traton/message_inactive.svg +1 -0
  74. package/dist/assets/icons/traton/mileage.svg +1 -0
  75. package/dist/assets/icons/traton/mileage_inactive.svg +1 -0
  76. package/dist/assets/icons/traton/notification_inactive.svg +1 -0
  77. package/dist/assets/icons/traton/phone.svg +1 -0
  78. package/dist/assets/icons/traton/phone_inactive.svg +1 -0
  79. package/dist/assets/icons/traton/pin.svg +1 -0
  80. package/dist/assets/icons/traton/pin_inactive.svg +1 -0
  81. package/dist/assets/icons/traton/placeholder.svg +1 -0
  82. package/dist/assets/icons/traton/print_inactive.svg +1 -0
  83. package/dist/assets/icons/traton/profile.svg +1 -0
  84. package/dist/assets/icons/traton/profile_inactive.svg +1 -0
  85. package/dist/assets/icons/traton/proportions.svg +1 -0
  86. package/dist/assets/icons/traton/proportions_inactive.svg +1 -0
  87. package/dist/assets/icons/traton/redirect.svg +1 -0
  88. package/dist/assets/icons/traton/report.svg +1 -0
  89. package/dist/assets/icons/traton/report_inactive.svg +1 -0
  90. package/dist/assets/icons/traton/save.svg +1 -0
  91. package/dist/assets/icons/traton/save_inactive.svg +1 -0
  92. package/dist/assets/icons/traton/send.svg +1 -0
  93. package/dist/assets/icons/traton/send_inactive.svg +1 -0
  94. package/dist/assets/icons/traton/settings.svg +1 -0
  95. package/dist/assets/icons/traton/skip_backwards.svg +1 -1
  96. package/dist/assets/icons/traton/skip_forward.svg +1 -1
  97. package/dist/assets/icons/traton/smartphone.svg +1 -0
  98. package/dist/assets/icons/traton/smartphone_inactive.svg +1 -0
  99. package/dist/assets/icons/traton/speedometer.svg +1 -0
  100. package/dist/assets/icons/traton/speedometer_inactive.svg +1 -0
  101. package/dist/assets/icons/traton/support.svg +1 -0
  102. package/dist/assets/icons/traton/timer.svg +1 -0
  103. package/dist/assets/icons/traton/tool.svg +1 -0
  104. package/dist/assets/icons/traton/tool_inactive.svg +1 -0
  105. package/dist/assets/icons/traton/trash.svg +1 -0
  106. package/dist/assets/icons/traton/trash_inactive.svg +1 -0
  107. package/dist/assets/icons/traton/unlock.svg +1 -0
  108. package/dist/assets/icons/traton/upload.svg +1 -0
  109. package/dist/assets/icons/traton/wallet.svg +1 -0
  110. package/dist/assets/icons/traton/warning.svg +1 -1
  111. package/dist/assets/icons/traton/wifi.svg +1 -0
  112. package/dist/assets/icons/traton/wifi_inactive.svg +1 -0
  113. package/dist/components.css +3751 -3642
  114. package/dist/global.css +148 -17
  115. package/dist/scania-variables.css +521 -310
  116. package/dist/tl-accordion.css +92 -36
  117. package/dist/tl-banner.css +88 -13
  118. package/dist/tl-block.css +62 -7
  119. package/dist/tl-breadcrumbs.css +55 -6
  120. package/dist/tl-button.css +181 -156
  121. package/dist/tl-card.css +43 -62
  122. package/dist/tl-checkbox.css +195 -115
  123. package/dist/tl-chip.css +152 -12
  124. package/dist/tl-datetime.css +45 -34
  125. package/dist/tl-divider.css +76 -6
  126. package/dist/tl-dropdown.css +387 -230
  127. package/dist/tl-folder-tabs.css +167 -51
  128. package/dist/tl-footer.css +88 -34
  129. package/dist/tl-header.css +469 -387
  130. package/dist/tl-icon.css +5 -1
  131. package/dist/tl-inline-tabs.css +164 -61
  132. package/dist/tl-link.css +114 -16
  133. package/dist/tl-message.css +128 -14
  134. package/dist/tl-modal.css +111 -16
  135. package/dist/tl-navigation-tabs.css +167 -51
  136. package/dist/tl-popover-canvas.css +112 -9
  137. package/dist/tl-popover-menu.css +134 -28
  138. package/dist/tl-radio-button.css +159 -96
  139. package/dist/tl-side-menu.css +346 -326
  140. package/dist/tl-text-field.css +265 -77
  141. package/dist/tl-textarea.css +282 -76
  142. package/dist/tl-toast.css +119 -10
  143. package/dist/tl-toggle.css +149 -44
  144. package/dist/tl-tooltip.css +63 -15
  145. package/dist/traton-variables.css +361 -30
  146. package/package.json +12 -24
  147. package/dist/tl-badge.css +0 -45
  148. package/dist/tl-checkbox-vars.css +0 -38
  149. package/dist/tl-slider.css +0 -2250
  150. package/dist/tl-spinner.css +0 -78
  151. package/dist/tl-step.css +0 -247
  152. package/dist/tl-stepper.css +0 -91
  153. package/dist/tl-table.css +0 -857
@@ -7,28 +7,36 @@
7
7
  .scania.tds-mode-light,
8
8
  .scania .tl-mode-light,
9
9
  .scania.tl-mode-light {
10
- --component-dropdown-hover: #edeff3;
11
- --component-dropdown-focus: #edeff3;
12
- --component-dropdown-secondary-hover: #edeff3;
13
- --component-dropdown-secondary-focus: #edeff3;
14
- --component-dropdown-list-item-hover: #edeff3;
15
- --component-dropdown-list-item-focus: #edeff3;
16
- --component-dropdown-list-item-secondary-hover: #edeff3;
17
- --component-dropdown-list-item-secondary-focus: #edeff3;
10
+ --component-dropdown-background-primary: var(--color-background-layer-01);
11
+ --component-dropdown-background-secondary: var(--color-background-layer-02);
12
+ --component-dropdown-background-item-default: var(--color-background-none);
13
+ --component-dropdown-background-item-hover: var(--scania-color-grey-100);
14
+ --component-dropdown-background-item-selected-default: var(--scania-color-grey-150);
15
+ --component-dropdown-border-radius-default: var(--scania-unit-4);
16
+ --component-dropdown-border-item-divider-default: var(--color-border-discrete);
17
+ --component-dropdown-icon-default: var(--color-icon-strong);
18
+ --component-dropdown-icon-item-selected-default: var(--color-icon-strong);
19
+ --component-dropdown-text-item-default: var(--color-text-strong);
20
+ --component-dropdown-text-item-selected-default: var(--color-text-strong);
21
+ --component-dropdown-opacity-disabled: var(--scania-opacity-25);
18
22
  }
19
23
 
20
24
  .traton .tds-mode-light,
21
25
  .traton.tds-mode-light,
22
26
  .traton .tl-mode-light,
23
27
  .traton.tl-mode-light {
24
- --component-dropdown-hover: #ebe7dd;
25
- --component-dropdown-focus: var(--color-background-layer-01);
26
- --component-dropdown-secondary-hover: #ebe7dd;
27
- --component-dropdown-secondary-focus: var(--color-background-layer-02);
28
- --component-dropdown-list-item-hover: #ebe7dd;
29
- --component-dropdown-list-item-focus: var(--color-background-layer-01);
30
- --component-dropdown-list-item-secondary-hover: #ebe7dd;
31
- --component-dropdown-list-item-secondary-focus: var(--color-background-layer-02);
28
+ --component-dropdown-background-primary: var(--color-background-layer-01);
29
+ --component-dropdown-background-secondary: var(--color-background-layer-02);
30
+ --component-dropdown-background-item-default: var(--color-background-none);
31
+ --component-dropdown-background-item-hover: var(--traton-color-grey-150);
32
+ --component-dropdown-background-item-selected-default: var(--color-background-layer-01);
33
+ --component-dropdown-border-radius-default: var(--traton-unit-4);
34
+ --component-dropdown-border-item-divider-default: var(--color-border-discrete);
35
+ --component-dropdown-icon-default: var(--color-icon-strong);
36
+ --component-dropdown-icon-item-selected-default: var(--color-icon-strong);
37
+ --component-dropdown-text-item-default: var(--color-text-strong);
38
+ --component-dropdown-text-item-selected-default: var(--color-text-strong);
39
+ --component-dropdown-opacity-disabled: var(--traton-opacity-25);
32
40
  }
33
41
 
34
42
  .tds-mode-dark,
@@ -36,106 +44,230 @@
36
44
  .scania.tds-mode-dark,
37
45
  .scania .tl-mode-dark,
38
46
  .scania.tl-mode-dark {
39
- --component-dropdown-hover: var(--color-background-layer-02);
40
- --component-dropdown-focus: var(--color-background-layer-02);
41
- --component-dropdown-secondary-hover: var(--color-background-layer-03);
42
- --component-dropdown-secondary-focus: var(--color-background-layer-03);
43
- --component-dropdown-list-item-hover: var(--color-background-layer-02);
44
- --component-dropdown-list-item-focus: var(--color-background-layer-02);
45
- --component-dropdown-list-item-secondary-hover: var(--color-background-layer-03);
46
- --component-dropdown-list-item-secondary-focus: var(--color-background-layer-03);
47
+ --component-dropdown-background-primary: var(--color-background-layer-01);
48
+ --component-dropdown-background-secondary: var(--color-background-layer-02);
49
+ --component-dropdown-background-item-default: var(--color-background-none);
50
+ --component-dropdown-background-item-hover: var(--color-background-layer-02);
51
+ --component-dropdown-background-item-selected-default: var(--scania-color-grey-800);
52
+ --component-dropdown-border-radius-default: var(--scania-unit-4);
53
+ --component-dropdown-border-item-divider-default: var(--color-border-discrete);
54
+ --component-dropdown-icon-default: var(--color-icon-strong);
55
+ --component-dropdown-icon-item-selected-default: var(--color-icon-strong);
56
+ --component-dropdown-text-item-default: var(--color-text-strong);
57
+ --component-dropdown-text-item-selected-default: var(--color-text-strong);
58
+ --component-dropdown-opacity-disabled: var(--scania-opacity-25);
47
59
  }
48
60
 
49
61
  .traton .tds-mode-dark,
50
62
  .traton.tds-mode-dark,
51
63
  .traton .tl-mode-dark,
52
64
  .traton.tl-mode-dark {
53
- --component-dropdown-hover: var(--color-background-layer-02);
54
- --component-dropdown-focus: var(--color-background-layer-01);
55
- --component-dropdown-secondary-hover: var(--color-background-layer-03);
56
- --component-dropdown-secondary-focus: var(--color-background-layer-02);
57
- --component-dropdown-list-item-hover: var(--color-background-layer-02);
58
- --component-dropdown-list-item-focus: var(--color-background-layer-01);
59
- --component-dropdown-list-item-secondary-hover: var(--color-background-layer-03);
60
- --component-dropdown-list-item-secondary-focus: var(--color-background-layer-02);
65
+ --component-dropdown-background-primary: var(--color-background-layer-01);
66
+ --component-dropdown-background-secondary: var(--color-background-layer-02);
67
+ --component-dropdown-background-item-default: var(--color-background-none);
68
+ --component-dropdown-background-item-hover: var(--color-background-layer-02);
69
+ --component-dropdown-background-item-selected-default: var(--color-background-layer-01);
70
+ --component-dropdown-border-radius-default: var(--traton-unit-4);
71
+ --component-dropdown-border-item-divider-default: var(--color-border-discrete);
72
+ --component-dropdown-icon-default: var(--color-icon-strong);
73
+ --component-dropdown-icon-item-selected-default: var(--color-icon-strong);
74
+ --component-dropdown-text-item-default: var(--color-text-strong);
75
+ --component-dropdown-text-item-selected-default: var(--color-text-strong);
76
+ --component-dropdown-opacity-disabled: var(--traton-opacity-25);
61
77
  }
62
78
 
63
- .tl-dropdown-option {
64
- --dropdown-option-background: var(--color-background-layer-01);
65
- --dropdown-option-background-hover: var(--component-dropdown-hover);
66
- --dropdown-option-background-selected: var(--component-dropdown-focus);
67
- --dropdown-option-disabled: var(--color-foreground-text-disabled);
68
- --dropdown-option-border: var(--color-foreground-border-discrete);
79
+ /**
80
+ * Do not edit directly, this file was auto-generated.
81
+ */
82
+ :root,
83
+ .tds-mode-light,
84
+ .scania .tds-mode-light,
85
+ .scania.tds-mode-light,
86
+ .scania .tl-mode-light,
87
+ .scania.tl-mode-light {
88
+ --component--input-background-primary: var(--color-background-layer-01);
89
+ --component--input-background-secondary: var(--color-background-layer-02);
90
+ --component--input-border-default: var(--color-border-soft);
91
+ --component--input-border-hover: var(--color-border-strong);
92
+ --component--input-border-success-default: var(--color-border-strong);
93
+ --component--input-border-error-default: var(--color-system-danger-default);
94
+ --component--input-border-radius-default: var(--scania-unit-4);
95
+ --component--input-border-radius-none: var(--scania-unit-0);
96
+ --component--input-border-radius-top-left: var(--component--input-border-radius-default);
97
+ --component--input-border-radius-top-right: var(--component--input-border-radius-default);
98
+ --component--input-border-radius-bottom-left: var(--component--input-border-radius-none);
99
+ --component--input-border-radius-bottom-right: var(--component--input-border-radius-none);
100
+ --component--input-border-width-default: var(--scania-unit-1);
101
+ --component--input-border-width-none: var(--scania-unit-0);
102
+ --component--input-border-width-top: var(--component--input-border-width-none);
103
+ --component--input-border-width-right: var(--component--input-border-width-none);
104
+ --component--input-border-width-bottom: var(--component--input-border-width-default);
105
+ --component--input-border-width-left: var(--component--input-border-width-none);
106
+ --component--input-icon-prefix-default: var(--color-text-defined);
107
+ --component--input-icon-suffix-default: var(--color-text-defined);
108
+ --component--input-icon-error-default: var(--color-system-danger-default);
109
+ --component--input-icon-control-default: var(--color-icon-strong);
110
+ --component--input-icon-control-hover: var(--component--input-icon-control-default);
111
+ --component--input-opacity-disabled: var(--scania-opacity-25);
112
+ --component--input-text-counter-default: var(--color-text-defined);
113
+ --component--input-text-label-default: var(--color-text-strong);
114
+ --component--input-text-helper-default: var(--color-text-defined);
115
+ --component--input-text-placeholder-default: var(--color-text-soft);
116
+ --component--input-text-value-default: var(--color-text-strong);
117
+ --component--input-text-error-default: var(--color-system-danger-default);
118
+ }
119
+
120
+ .traton .tds-mode-light,
121
+ .traton.tds-mode-light,
122
+ .traton .tl-mode-light,
123
+ .traton.tl-mode-light {
124
+ --component--input-background-primary: var(--color-background-layer-01);
125
+ --component--input-background-secondary: var(--color-background-layer-02);
126
+ --component--input-border-default: var(--color-border-soft);
127
+ --component--input-border-hover: var(--color-border-strong);
128
+ --component--input-border-success-default: var(--color-border-strong);
129
+ --component--input-border-error-default: var(--color-system-danger-default);
130
+ --component--input-border-radius-default: var(--traton-unit-4);
131
+ --component--input-border-radius-none: var(--traton-unit-0);
132
+ --component--input-border-radius-top-left: var(--component--input-border-radius-default);
133
+ --component--input-border-radius-top-right: var(--component--input-border-radius-default);
134
+ --component--input-border-radius-bottom-left: var(--component--input-border-radius-default);
135
+ --component--input-border-radius-bottom-right: var(--component--input-border-radius-default);
136
+ --component--input-border-width-default: var(--traton-unit-1);
137
+ --component--input-border-width-none: var(--traton-unit-0);
138
+ --component--input-border-width-top: var(--component--input-border-width-default);
139
+ --component--input-border-width-right: var(--component--input-border-width-default);
140
+ --component--input-border-width-bottom: var(--component--input-border-width-default);
141
+ --component--input-border-width-left: var(--component--input-border-width-default);
142
+ --component--input-icon-prefix-default: var(--color-text-defined);
143
+ --component--input-icon-suffix-default: var(--color-text-defined);
144
+ --component--input-icon-error-default: var(--color-system-danger-default);
145
+ --component--input-icon-control-default: var(--color-icon-subtle);
146
+ --component--input-icon-control-hover: var(--component--input-icon-control-default);
147
+ --component--input-opacity-disabled: var(--traton-opacity-25);
148
+ --component--input-text-counter-default: var(--color-text-defined);
149
+ --component--input-text-label-default: var(--color-text-strong);
150
+ --component--input-text-helper-default: var(--color-text-defined);
151
+ --component--input-text-placeholder-default: var(--color-text-subtle);
152
+ --component--input-text-value-default: var(--color-text-strong);
153
+ --component--input-text-error-default: var(--color-system-danger-default);
154
+ }
155
+
156
+ .tds-mode-dark,
157
+ .scania .tds-mode-dark,
158
+ .scania.tds-mode-dark,
159
+ .scania .tl-mode-dark,
160
+ .scania.tl-mode-dark {
161
+ --component--input-background-primary: var(--color-background-layer-01);
162
+ --component--input-background-secondary: var(--color-background-layer-02);
163
+ --component--input-border-default: var(--color-border-soft);
164
+ --component--input-border-hover: var(--color-border-strong);
165
+ --component--input-border-success-default: var(--color-border-strong);
166
+ --component--input-border-error-default: var(--color-system-danger-default);
167
+ --component--input-border-radius-default: var(--scania-unit-4);
168
+ --component--input-border-radius-none: var(--scania-unit-0);
169
+ --component--input-border-radius-top-left: var(--component--input-border-radius-default);
170
+ --component--input-border-radius-top-right: var(--component--input-border-radius-default);
171
+ --component--input-border-radius-bottom-left: var(--component--input-border-radius-none);
172
+ --component--input-border-radius-bottom-right: var(--component--input-border-radius-none);
173
+ --component--input-border-width-default: var(--scania-unit-1);
174
+ --component--input-border-width-none: var(--scania-unit-0);
175
+ --component--input-border-width-top: var(--component--input-border-width-none);
176
+ --component--input-border-width-right: var(--component--input-border-width-none);
177
+ --component--input-border-width-bottom: var(--component--input-border-width-default);
178
+ --component--input-border-width-left: var(--component--input-border-width-none);
179
+ --component--input-icon-prefix-default: var(--color-text-defined);
180
+ --component--input-icon-suffix-default: var(--color-text-defined);
181
+ --component--input-icon-error-default: var(--color-system-danger-default);
182
+ --component--input-icon-control-default: var(--color-icon-strong);
183
+ --component--input-icon-control-hover: var(--component--input-icon-control-default);
184
+ --component--input-opacity-disabled: var(--scania-opacity-25);
185
+ --component--input-text-counter-default: var(--color-text-defined);
186
+ --component--input-text-label-default: var(--color-text-strong);
187
+ --component--input-text-helper-default: var(--color-text-defined);
188
+ --component--input-text-placeholder-default: var(--color-text-soft);
189
+ --component--input-text-value-default: var(--color-text-strong);
190
+ --component--input-text-error-default: var(--color-system-danger-default);
191
+ }
192
+
193
+ .traton .tds-mode-dark,
194
+ .traton.tds-mode-dark,
195
+ .traton .tl-mode-dark,
196
+ .traton.tl-mode-dark {
197
+ --component--input-background-primary: var(--color-background-layer-01);
198
+ --component--input-background-secondary: var(--color-background-layer-02);
199
+ --component--input-border-default: var(--color-border-soft);
200
+ --component--input-border-hover: var(--color-border-strong);
201
+ --component--input-border-success-default: var(--color-border-strong);
202
+ --component--input-border-error-default: var(--color-system-danger-default);
203
+ --component--input-border-radius-default: var(--traton-unit-4);
204
+ --component--input-border-radius-none: var(--traton-unit-0);
205
+ --component--input-border-radius-top-left: var(--component--input-border-radius-default);
206
+ --component--input-border-radius-top-right: var(--component--input-border-radius-default);
207
+ --component--input-border-radius-bottom-left: var(--component--input-border-radius-default);
208
+ --component--input-border-radius-bottom-right: var(--component--input-border-radius-default);
209
+ --component--input-border-width-default: var(--traton-unit-1);
210
+ --component--input-border-width-none: var(--traton-unit-0);
211
+ --component--input-border-width-top: var(--component--input-border-width-default);
212
+ --component--input-border-width-right: var(--component--input-border-width-default);
213
+ --component--input-border-width-bottom: var(--component--input-border-width-default);
214
+ --component--input-border-width-left: var(--component--input-border-width-default);
215
+ --component--input-icon-prefix-default: var(--color-text-defined);
216
+ --component--input-icon-suffix-default: var(--color-text-defined);
217
+ --component--input-icon-error-default: var(--color-system-danger-default);
218
+ --component--input-icon-control-default: var(--color-icon-subtle);
219
+ --component--input-icon-control-hover: var(--component--input-icon-control-default);
220
+ --component--input-opacity-disabled: var(--traton-opacity-25);
221
+ --component--input-text-counter-default: var(--color-text-defined);
222
+ --component--input-text-label-default: var(--color-text-strong);
223
+ --component--input-text-helper-default: var(--color-text-defined);
224
+ --component--input-text-placeholder-default: var(--color-text-subtle);
225
+ --component--input-text-value-default: var(--color-text-strong);
226
+ --component--input-text-error-default: var(--color-system-danger-default);
69
227
  }
70
228
 
71
229
  .tl-dropdown {
72
- --dropdown-background: var(--color-background-layer-01);
230
+ --dropdown-background: var(--component-dropdown-background-primary);
231
+ --dropdown-text: var(--component--input-text-value-default);
232
+ --dropdown-helper-text: var(--component--input-text-helper-default);
233
+ --dropdown-placeholder: var(--component--input-text-placeholder-default);
234
+ --dropdown-label: var(--component--input-text-label-default);
235
+ --dropdown-label-inside: var(--component--input-text-label-default);
236
+ --dropdown-opacity-disabled: calc(var(--component-dropdown-opacity-disabled) / 100);
237
+ --dropdown-icon: var(--component-dropdown-icon-default);
238
+ --dropdown-clear-icon: var(--component--input-icon-control-default);
239
+ --dropdown-error: var(--component--input-text-error-default);
240
+ --dropdown-border-bottom-width: calc(var(--component--input-border-width-bottom) * 1px);
241
+ --dropdown-border-left-width: calc(var(--component--input-border-width-left) * 1px);
242
+ --dropdown-border-right-width: calc(var(--component--input-border-width-right) * 1px);
243
+ --dropdown-border-top-width: calc(var(--component--input-border-width-top) * 1px);
244
+ --dropdown-border: var(--component--input-border-default);
245
+ --dropdown-border-hover: var(--component--input-border-hover);
246
+ --dropdown-border-radius: calc(var(--component--input-border-radius-top-left) * 1px)
247
+ calc(var(--component--input-border-radius-top-right) * 1px)
248
+ calc(var(--component--input-border-radius-bottom-right) * 1px)
249
+ calc(var(--component--input-border-radius-bottom-left) * 1px);
250
+ --dropdown-list-border-radius: calc(var(--component-dropdown-border-radius-default) * 1px);
251
+ --dropdown-list-box-shadow: 0 2px 3px 0 rgb(0, 0, 0, 0.1);
252
+ --dropdown-option-background: var(--component-dropdown-background-item-default);
253
+ --dropdown-option-background-hover: var(--component-dropdown-background-item-hover);
254
+ --dropdown-option-background-selected: var(--component-dropdown-background-item-selected-default);
255
+ --dropdown-option-opacity-disabled: calc(var(--component-dropdown-opacity-disabled) / 100);
256
+ --dropdown-option-border: var(--component-dropdown-border-item-divider-default);
73
257
  }
74
258
  .tl-dropdown--primary {
75
- --dropdown-background: var(--color-background-layer-01);
259
+ --dropdown-background: var(--component-dropdown-background-primary);
76
260
  }
77
261
  .tl-dropdown--secondary {
78
- --dropdown-background: var(--color-background-layer-02);
79
- }
80
- .tl-dropdown {
81
- --dropdown-text: var(--color-foreground-text-strong);
82
- --dropdown-helper-text: var(--color-foreground-text-defined);
83
- --dropdown-placeholder: var(--color-foreground-text-subtle);
84
- --dropdown-disabled: var(--color-foreground-text-disabled);
85
- --dropdown-icon: var(--color-foreground-icon-strong);
86
- --dropdown-clear-icon: var(--color-foreground-icon-subtle);
87
- --dropdown-error: var(--color-system-danger-default);
88
- --dropdown-error-focus: var(--color-system-danger-subtle);
262
+ --dropdown-background: var(--component-dropdown-background-secondary);
89
263
  }
90
264
 
91
- .tl-dropdown,
92
265
  .scania .tl-dropdown {
93
- /* Changed box shadow variables to work with bottom inside border design. Remove comments when a11y changes are applied */
94
- /* Changed box shadow variables to work with bottom inside border design. Can be removed when a11y changes are applied */
95
- --dropdown-border: 0 -1px 0 0 var(--color-foreground-border-soft);
96
- --dropdown-border-hover: 0 -1px 0 0 var(--color-foreground-border-strong);
97
- --dropdown-border-focus: 0 -2px 0 0 var(--color-foreground-border-accent-focus);
98
- --dropdown-border-active: 0 -1px 0 0 var(--color-foreground-border-strong);
99
- --dropdown-border-error: 0 -1px 0 0 var(--dropdown-error);
100
- --dropdown-border-error-hover: 0 -1px 0 0 var(--dropdown-error);
101
- --dropdown-border-error-focus: 0 -2px 0 0 var(--dropdown-error-focus);
102
- --dropdown-spacing-4: 4px;
103
- --dropdown-border-radius: var(--dropdown-spacing-4) var(--dropdown-spacing-4) 0 0;
104
- --dropdown-list-border-radius-down: 0 0 var(--dropdown-spacing-4) var(--dropdown-spacing-4);
105
- --dropdown-list-border-radius-up: var(--dropdown-spacing-4) var(--dropdown-spacing-4) 0 0;
106
- --dropdown-text: var(--color-foreground-text-strong);
107
- --dropdown-option-disabled: var(--color-foreground-text-disabled);
108
- --dropdown-option-background: var(--color-background-layer-01);
109
- --dropdown-option-background-hover: var(--component-dropdown-hover);
110
- --dropdown-option-background-selected: var(--component-dropdown-focus);
111
- --dropdown-option-border: var(--color-foreground-border-discrete);
112
- --dropdown-helper-text: var(--color-foreground-text-defined);
113
- --dropdown-placeholder: var(--color-foreground-text-subtle);
266
+ --dropdown-list-box-shadow: 0 2px 3px 0 rgb(0, 0, 0, 0.1);
114
267
  }
115
268
 
116
269
  .traton .tl-dropdown {
117
- --dropdown-border: 0 0 0 1px var(--color-foreground-border-soft);
118
- --dropdown-border-hover: 0 0 0 1px var(--color-foreground-border-strong);
119
- --dropdown-border-focus: 0 0 0 2px var(--color-foreground-border-accent-focus);
120
- --dropdown-border-active: 0 0 0 1px var(--color-foreground-border-strong);
121
- --dropdown-border-error: 0 0 0 1px var(--dropdown-error);
122
- --dropdown-border-error-hover: 0 0 0 1px var(--dropdown-error);
123
- --dropdown-border-error-focus: 0 0 0 1px var(--dropdown-error-focus);
124
- --dropdown-spacing-4: 4px;
125
- --dropdown-border-radius: var(--dropdown-spacing-4) var(--dropdown-spacing-4)
126
- var(--dropdown-spacing-4) var(--dropdown-spacing-4);
127
- }
128
- .traton .tl-dropdown--primary {
129
- --dropdown-background: var(--color-background-layer-01);
130
- }
131
- .traton .tl-dropdown--primary .tl-dropdown-option {
132
- --dropdown-option-background: var(--color-background-layer-01);
133
- }
134
- .traton .tl-dropdown--secondary {
135
- --dropdown-background: var(--color-background-layer-02);
136
- }
137
- .traton .tl-dropdown--secondary .tl-dropdown-option {
138
- --dropdown-option-background: var(--color-background-layer-02);
270
+ --dropdown-list-box-shadow: none;
139
271
  }
140
272
 
141
273
  /* Typography Usage mixins */
@@ -177,18 +309,21 @@ body {
177
309
  height: 40px;
178
310
  }
179
311
  :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input) {
180
- font-family: var(--detail-02-font-family);
181
- font-size: var(--detail-02-font-size);
182
- line-height: var(--detail-02-line-height);
183
- font-weight: var(--detail-02-font-weight);
184
- letter-spacing: var(--detail-02-letter-spacing);
185
- text-transform: var(--detail-02-text-transform);
312
+ font-family: var(--type-system-body-01-font-family);
313
+ font-size: calc(var(--type-system-body-01-font-size) * 1px);
314
+ line-height: calc(var(--type-system-body-01-line-height) * 1px);
315
+ font-weight: var(--type-system-body-01-font-weight);
316
+ letter-spacing: calc(var(--type-system-body-01-letter-spacing) * 1px);
317
+ text-transform: var(--type-system-body-01-text-transform);
318
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-border);
319
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-border);
320
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-border);
321
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-border);
322
+ border-radius: var(--dropdown-border-radius);
186
323
  width: 100%;
187
- border: none;
188
324
  appearance: none;
189
325
  background: var(--dropdown-background);
190
326
  color: var(--dropdown-text);
191
- box-shadow: inset var(--dropdown-border);
192
327
  border-radius: var(--dropdown-border-radius);
193
328
  position: relative;
194
329
  outline: none;
@@ -201,32 +336,43 @@ body {
201
336
  justify-content: flex-start;
202
337
  }
203
338
  :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input):hover {
204
- box-shadow: inset var(--dropdown-border-hover);
339
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-border-hover);
340
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-border-hover);
341
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-border-hover);
342
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-border-hover);
343
+ border-radius: var(--dropdown-border-radius);
205
344
  }
206
- :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input):focus-visible {
207
- box-shadow: inset var(--dropdown-border-focus);
345
+ :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input):focus {
346
+ outline: 2px solid var(--component--focus-ring-color-strong);
347
+ box-shadow: 0 0 0 1px var(--component--focus-ring-color-discrete);
348
+ outline-offset: 1px;
349
+ z-index: 1;
208
350
  }
209
351
  .tl-dropdown--error :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input) {
210
- box-shadow: inset var(--dropdown-border-error);
211
- }
212
- .tl-dropdown--error :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input):focus-visible {
213
- box-shadow: inset var(--dropdown-border-error-focus);
352
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-error);
353
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-error);
354
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-error);
355
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-error);
356
+ border-radius: var(--dropdown-border-radius);
214
357
  }
215
358
  :is(.tl-dropdown__button, .tl-dropdown__select, .tl-dropdown__input):disabled {
216
- color: var(--dropdown-disabled);
217
- background: var(--dropdown-background-disabled, var(--dropdown-background));
359
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-border);
360
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-border);
361
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-border);
362
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-border);
363
+ border-radius: var(--dropdown-border-radius);
364
+ opacity: var(--dropdown-opacity-disabled);
218
365
  box-shadow: none;
219
366
  cursor: not-allowed;
220
367
  pointer-events: none;
221
368
  }
222
369
 
223
- .tl-dropdown:has([aria-expanded=true]) .tl-dropdown__button {
224
- box-shadow: inset var(--dropdown-border-active);
225
- }
226
-
227
370
  .tl-dropdown__input {
228
371
  cursor: text;
229
372
  }
373
+ .tl-dropdown.tl-dropdown--label-inside:has(.tl-dropdown__input[aria-expanded=false]) .tl-dropdown__input::placeholder {
374
+ color: transparent;
375
+ }
230
376
 
231
377
  .tl-dropdown__select {
232
378
  padding-top: 2px;
@@ -246,6 +392,10 @@ body {
246
392
  text-overflow: ellipsis;
247
393
  white-space: nowrap;
248
394
  }
395
+ .tl-dropdown__input[aria-expanded=true],
396
+ .tl-dropdown__select[aria-expanded=true] {
397
+ padding-right: 68px;
398
+ }
249
399
  .tl-dropdown__input:focus,
250
400
  .tl-dropdown__select:focus {
251
401
  padding-right: 69px;
@@ -280,8 +430,10 @@ body {
280
430
  display: block;
281
431
  }
282
432
  .tl-dropdown__input-clear:focus, .tl-dropdown__input-clear:focus-visible {
283
- outline: 2px solid var(--color-foreground-border-accent-focus);
284
- outline-offset: 2px;
433
+ outline: 2px solid var(--component--focus-ring-color-strong);
434
+ box-shadow: 0 0 0 1px var(--component--focus-ring-color-discrete);
435
+ outline-offset: 1px;
436
+ z-index: 1;
285
437
  }
286
438
 
287
439
  .tl-dropdown__input-wrapper:has(.tl-dropdown__input[aria-expanded=true]:not(:placeholder-shown)) .tl-dropdown__input-clear {
@@ -319,17 +471,24 @@ body {
319
471
  height: var(--tds-spacing-element-16);
320
472
  background-color: var(--dropdown-icon);
321
473
  mask-image: var(--icon-chevron_down-svg);
474
+ z-index: 2;
322
475
  mask-size: contain;
323
476
  mask-repeat: no-repeat;
324
477
  mask-position: center;
325
478
  pointer-events: none;
326
- transition: transform 0.2s;
479
+ transition: transform 0.2s ease;
480
+ }
481
+ .tl-dropdown:has(.tl-dropdown__button[aria-expanded=true],
482
+ .tl-dropdown__input[aria-expanded=true]) .tl-dropdown__button::after,
483
+ .tl-dropdown:has(.tl-dropdown__button[aria-expanded=true],
484
+ .tl-dropdown__input[aria-expanded=true]) .tl-dropdown__input-wrapper::after {
485
+ transform: rotate(180deg) translateY(50%);
327
486
  }
328
487
  .tl-dropdown:has(.tl-dropdown__select:disabled) .tl-dropdown__button::after, .tl-dropdown:has(.tl-dropdown__button:disabled) .tl-dropdown__button::after, .tl-dropdown:has(.tl-dropdown__input:disabled) .tl-dropdown__button::after,
329
488
  .tl-dropdown:has(.tl-dropdown__select:disabled) .tl-dropdown__input-wrapper::after,
330
489
  .tl-dropdown:has(.tl-dropdown__button:disabled) .tl-dropdown__input-wrapper::after,
331
490
  .tl-dropdown:has(.tl-dropdown__input:disabled) .tl-dropdown__input-wrapper::after {
332
- background-color: var(--dropdown-disabled);
491
+ opacity: var(--dropdown-opacity-disabled);
333
492
  }
334
493
 
335
494
  .tl-dropdown--lg:not(.tl-dropdown--label-inside):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
@@ -350,7 +509,7 @@ body {
350
509
  }
351
510
 
352
511
  .tl-dropdown--lg:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
353
- background-color: var(--dropdown-disabled);
512
+ opacity: var(--dropdown-opacity-disabled);
354
513
  }
355
514
 
356
515
  .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
@@ -371,7 +530,7 @@ body {
371
530
  }
372
531
 
373
532
  .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
374
- background-color: var(--dropdown-disabled);
533
+ opacity: var(--dropdown-opacity-disabled);
375
534
  }
376
535
 
377
536
  .tl-dropdown--sm:not(.tl-dropdown--label-inside):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
@@ -392,7 +551,7 @@ body {
392
551
  }
393
552
 
394
553
  .tl-dropdown--sm:not(.tl-dropdown--label-inside):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
395
- background-color: var(--dropdown-disabled);
554
+ opacity: var(--dropdown-opacity-disabled);
396
555
  }
397
556
 
398
557
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(:is(.tl-dropdown__button, .tl-dropdown__input)) .tl-dropdown__button::after,
@@ -418,7 +577,7 @@ body {
418
577
  }
419
578
 
420
579
  .tl-dropdown--label-inside:has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
421
- background-color: var(--dropdown-disabled);
580
+ opacity: var(--dropdown-opacity-disabled);
422
581
  }
423
582
 
424
583
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select):not(:has(.tl-dropdown__helper))::after {
@@ -439,7 +598,7 @@ body {
439
598
  }
440
599
 
441
600
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select:disabled):not(:has(.tl-dropdown__helper))::after {
442
- background-color: var(--dropdown-disabled);
601
+ opacity: var(--dropdown-opacity-disabled);
443
602
  }
444
603
 
445
604
  .tl-dropdown--label-inside:has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
@@ -460,7 +619,7 @@ body {
460
619
  }
461
620
 
462
621
  .tl-dropdown--label-inside:has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
463
- background-color: var(--dropdown-disabled);
622
+ opacity: var(--dropdown-opacity-disabled);
464
623
  }
465
624
 
466
625
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
@@ -481,7 +640,7 @@ body {
481
640
  }
482
641
 
483
642
  .tl-dropdown:not(:has(.tl-dropdown__label)):has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
484
- background-color: var(--dropdown-disabled);
643
+ opacity: var(--dropdown-opacity-disabled);
485
644
  }
486
645
 
487
646
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
@@ -502,7 +661,7 @@ body {
502
661
  }
503
662
 
504
663
  .tl-dropdown:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select:disabled):has(.tl-dropdown__helper)::after {
505
- background-color: var(--dropdown-disabled);
664
+ opacity: var(--dropdown-opacity-disabled);
506
665
  }
507
666
 
508
667
  .tl-dropdown--md:not(.tl-dropdown--label-inside):has(.tl-dropdown__label):has(.tl-dropdown__select):has(.tl-dropdown__helper)::after {
@@ -519,32 +678,31 @@ body {
519
678
  }
520
679
 
521
680
  .tl-dropdown:has(.tl-dropdown__select:disabled) .tl-dropdown__label, .tl-dropdown:has(.tl-dropdown__button:disabled) .tl-dropdown__label, .tl-dropdown:has(.tl-dropdown__input:disabled) .tl-dropdown__label {
522
- color: var(--color-foreground-text-disabled);
681
+ opacity: var(--dropdown-opacity-disabled);
523
682
  }
524
683
  .tl-dropdown:not(.tl-dropdown--label-inside) .tl-dropdown__label {
525
- font-family: var(--detail-05-font-family);
526
- font-size: var(--detail-05-font-size);
527
- line-height: var(--detail-05-line-height);
528
- font-weight: var(--detail-05-font-weight);
529
- letter-spacing: var(--detail-05-letter-spacing);
530
- text-transform: var(--detail-05-text-transform);
684
+ font-family: var(--type-system-label-01-font-family);
685
+ font-size: calc(var(--type-system-label-01-font-size) * 1px);
686
+ line-height: calc(var(--type-system-label-01-line-height) * 1px);
687
+ font-weight: var(--type-system-label-01-font-weight);
688
+ letter-spacing: calc(var(--type-system-label-01-letter-spacing) * 1px);
531
689
  color: var(--dropdown-text);
532
690
  display: block;
533
691
  margin-bottom: var(--tds-spacing-element-4);
534
692
  }
535
693
  .tl-dropdown--label-inside .tl-dropdown__label {
536
- font-family: var(--detail-02-font-family);
537
- font-size: var(--detail-02-font-size);
538
- line-height: var(--detail-02-line-height);
539
- font-weight: var(--detail-02-font-weight);
540
- letter-spacing: var(--detail-02-letter-spacing);
541
- text-transform: var(--detail-02-text-transform);
694
+ font-family: var(--type-system-body-01-font-family);
695
+ font-size: calc(var(--type-system-body-01-font-size) * 1px);
696
+ line-height: calc(var(--type-system-body-01-line-height) * 1px);
697
+ font-weight: var(--type-system-body-01-font-weight);
698
+ letter-spacing: calc(var(--type-system-body-01-letter-spacing) * 1px);
699
+ text-transform: var(--type-system-body-01-text-transform);
542
700
  position: absolute;
543
701
  left: var(--tds-spacing-element-16);
544
702
  width: auto;
545
703
  pointer-events: none;
546
704
  background: transparent;
547
- z-index: 1;
705
+ z-index: 2;
548
706
  transition: transform 0.15s, font-size 0.15s, color 0.15s, top 0.15s;
549
707
  transform-origin: top left;
550
708
  color: var(--dropdown-label-inside);
@@ -552,48 +710,49 @@ body {
552
710
  transform: translateY(-50%);
553
711
  }
554
712
 
555
- .tl-dropdown--label-inside:has(:is(.tl-dropdown__input:focus,
713
+ .tl-dropdown--label-inside:has(:is(.tl-dropdown__input[aria-expanded=true],
556
714
  .tl-dropdown__input:not(:placeholder-shown),
557
715
  .tl-dropdown__text:not(:empty))) .tl-dropdown__label,
558
- .tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label {
559
- font-family: var(--detail-07-font-family);
560
- font-size: var(--detail-07-font-size);
561
- line-height: var(--detail-07-line-height);
562
- font-weight: var(--detail-07-font-weight);
563
- letter-spacing: var(--detail-07-letter-spacing);
564
- text-transform: var(--detail-07-text-transform);
565
- color: var(--dropdown-label-inside-active, var(--dropdown-label-inside));
716
+ .tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label,
717
+ .tl-dropdown--label-inside:has(.tl-dropdown__button[aria-expanded=true]) .tl-dropdown__label {
718
+ font-family: var(--type-system-label-02-font-family);
719
+ font-size: calc(var(--type-system-label-02-font-size) * 1px);
720
+ line-height: calc(var(--type-system-label-02-line-height) * 1px);
721
+ font-weight: var(--type-system-label-02-font-weight);
722
+ letter-spacing: calc(var(--type-system-label-02-letter-spacing) * 1px);
566
723
  top: 7.5px;
567
724
  transform: none;
568
725
  }
569
726
 
570
- .tl-dropdown--lg.tl-dropdown--label-inside:has(:is(.tl-dropdown__input:focus,
727
+ .tl-dropdown--lg.tl-dropdown--label-inside:has(:is(.tl-dropdown__input[aria-expanded=true],
571
728
  .tl-dropdown__input:not(:placeholder-shown),
572
729
  .tl-dropdown__text:not(:empty))) .tl-dropdown__label,
573
- .tl-dropdown--lg.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label {
730
+ .tl-dropdown--lg.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label,
731
+ .tl-dropdown--lg.tl-dropdown--label-inside:has(.tl-dropdown__button[aria-expanded=true]) .tl-dropdown__label {
574
732
  top: 12.5px;
575
733
  }
576
734
 
577
- .tl-dropdown--md.tl-dropdown--label-inside:has(:is(.tl-dropdown__input:focus,
735
+ .tl-dropdown--md.tl-dropdown--label-inside:has(:is(.tl-dropdown__input[aria-expanded=true],
578
736
  .tl-dropdown__input:not(:placeholder-shown),
579
737
  .tl-dropdown__text:not(:empty))) .tl-dropdown__label,
580
- .tl-dropdown--md.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label {
738
+ .tl-dropdown--md.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label,
739
+ .tl-dropdown--md.tl-dropdown--label-inside:has(.tl-dropdown__button[aria-expanded=true]) .tl-dropdown__label {
581
740
  top: 8.5px;
582
741
  }
583
742
 
584
- .tl-dropdown--sm.tl-dropdown--label-inside:has(:is(.tl-dropdown__input:focus,
743
+ .tl-dropdown--sm.tl-dropdown--label-inside:has(:is(.tl-dropdown__input[aria-expanded=true],
585
744
  .tl-dropdown__input:not(:placeholder-shown),
586
745
  .tl-dropdown__text:not(:empty))) .tl-dropdown__label,
587
- .tl-dropdown--sm.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label {
746
+ .tl-dropdown--sm.tl-dropdown--label-inside:has(.tl-dropdown__select option:not([value=""]):checked) .tl-dropdown__label,
747
+ .tl-dropdown--sm.tl-dropdown--label-inside:has(.tl-dropdown__button[aria-expanded=true]) .tl-dropdown__label {
588
748
  display: none;
589
749
  }
590
750
 
591
- .tl-dropdown--label-inside:not(:has(.tl-dropdown__text:not(:empty))):not(:has(.tl-dropdown__input:focus)):not(:has(.tl-dropdown__input:not(:placeholder-shown))):not(:has(.tl-dropdown__select option:not([value=""]):checked)) .tl-dropdown__label {
592
- top: 50%;
593
- transform: translateY(-50%);
594
- }
595
-
596
- .tl-dropdown--label-inside:has(.tl-dropdown__helper):not(:has(.tl-dropdown__text:not(:empty))):not(:has(.tl-dropdown__input:focus)):not(:has(.tl-dropdown__input:not(:placeholder-shown))):not(:has(.tl-dropdown__select option:not([value=""]):checked)) .tl-dropdown__label {
751
+ .tl-dropdown--label-inside:has(.tl-dropdown__helper):not(:has(.tl-dropdown__text:not(:empty)),
752
+ :has(.tl-dropdown__input[aria-expanded=true]),
753
+ :has(.tl-dropdown__input:not(:placeholder-shown)),
754
+ :has(.tl-dropdown__select option:not([value=""]):checked),
755
+ :has(.tl-dropdown__button[aria-expanded=true])) .tl-dropdown__label {
597
756
  top: calc(50% - 9.5px);
598
757
  }
599
758
 
@@ -617,10 +776,6 @@ body {
617
776
  padding-top: 2px;
618
777
  }
619
778
 
620
- .tl-dropdown--label-inside .tl-dropdown__input::placeholder {
621
- color: transparent;
622
- }
623
-
624
779
  .tl-dropdown__list {
625
780
  position: absolute;
626
781
  left: 0;
@@ -629,8 +784,8 @@ body {
629
784
  z-index: 500;
630
785
  width: 100%;
631
786
  background: var(--dropdown-background);
632
- box-shadow: 0 2px 3px 0 var(--dropdown-option-border);
633
- border-radius: var(--dropdown-list-border-radius-down, var(--dropdown-border-radius-up));
787
+ box-shadow: var(--dropdown-list-box-shadow);
788
+ border-radius: var(--dropdown-list-border-radius);
634
789
  margin: 0;
635
790
  padding: 0;
636
791
  list-style: none;
@@ -649,7 +804,7 @@ body {
649
804
  background: var(--tl-scrollbar-track-color);
650
805
  }
651
806
  .tl-dropdown__list::-webkit-scrollbar-thumb {
652
- border-radius: 40px;
807
+ border-radius: var(--tl-scrollbar-thumb-border-radius);
653
808
  background: var(--tl-scrollbar-thumb-color);
654
809
  border-width: var(--tl-scrollbar-thumb-border-width);
655
810
  border-style: solid;
@@ -658,6 +813,7 @@ body {
658
813
  }
659
814
  .tl-dropdown__list::-webkit-scrollbar-thumb:hover {
660
815
  border-width: var(--tl-scrollbar-thumb-border-hover-width);
816
+ border-radius: var(--tl-scrollbar-hover-thumb-border-radius);
661
817
  }
662
818
  .tl-dropdown__list::-webkit-scrollbar-button {
663
819
  height: 0;
@@ -669,13 +825,10 @@ body {
669
825
  scrollbar-width: var(--tl-scrollbar-width-standard);
670
826
  }
671
827
  }
672
- .tl-mode-dark .tl-dropdown__list {
673
- box-shadow: none;
674
- }
675
828
  .tl-dropdown--dropup .tl-dropdown__list {
676
829
  top: auto;
677
830
  bottom: 100%;
678
- border-radius: var(--dropdown-list-border-radius-up, var(--dropdown-border-radius-up));
831
+ border-radius: var(--dropdown-list-border-radius);
679
832
  transform-origin: bottom;
680
833
  }
681
834
 
@@ -715,16 +868,24 @@ body {
715
868
  }
716
869
 
717
870
  .tl-dropdown__option {
718
- font-family: var(--detail-02-font-family);
719
- font-size: var(--detail-02-font-size);
720
- line-height: var(--detail-02-line-height);
721
- font-weight: var(--detail-02-font-weight);
722
- letter-spacing: var(--detail-02-letter-spacing);
723
- text-transform: var(--detail-02-text-transform);
871
+ font-family: var(--type-system-body-01-font-family);
872
+ font-size: calc(var(--type-system-body-01-font-size) * 1px);
873
+ line-height: calc(var(--type-system-body-01-line-height) * 1px);
874
+ font-weight: var(--type-system-body-01-font-weight);
875
+ letter-spacing: calc(var(--type-system-body-01-letter-spacing) * 1px);
876
+ text-transform: var(--type-system-body-01-text-transform);
724
877
  display: flex;
725
878
  align-items: center;
726
879
  padding-inline: var(--tds-spacing-element-16);
880
+ height: 56px;
881
+ }
882
+ .tl-dropdown--md .tl-dropdown__option {
727
883
  height: 48px;
884
+ }
885
+ .tl-dropdown--sm .tl-dropdown__option {
886
+ height: 40px;
887
+ }
888
+ .tl-dropdown__option {
728
889
  cursor: pointer;
729
890
  color: var(--dropdown-text);
730
891
  box-sizing: border-box;
@@ -737,8 +898,9 @@ body {
737
898
  background: var(--dropdown-option-background-hover);
738
899
  }
739
900
  .tl-dropdown__option:focus-visible {
740
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
741
- z-index: 2;
901
+ outline: 2px solid var(--component--focus-ring-color-strong);
902
+ box-shadow: inset 0 0 0 3px var(--component--focus-ring-color-discrete);
903
+ outline-offset: -2px;
742
904
  }
743
905
  .tl-dropdown__option--selected {
744
906
  background: var(--dropdown-option-background-selected);
@@ -761,19 +923,18 @@ body {
761
923
  .tl-dropdown__option--selected:not(:has(.tl-checkbox))::after {
762
924
  opacity: 1;
763
925
  }
926
+ .tl-dropdown__option--disabled:not(:has(.tl-checkbox)) {
927
+ opacity: var(--dropdown-option-opacity-disabled);
928
+ }
764
929
  .tl-dropdown__option--disabled {
765
- color: var(--dropdown-disabled);
766
930
  cursor: not-allowed;
767
931
  background: var(--dropdown-background);
768
932
  }
769
933
  .tl-dropdown__option--disabled:hover {
770
934
  background: var(--dropdown-background);
771
935
  }
772
- .tl-dropdown__option--disabled .tl-checkbox__label {
773
- color: var(--dropdown-disabled);
774
- }
775
936
  .tl-dropdown__option--no-result {
776
- color: var(--dropdown-disabled);
937
+ opacity: var(--dropdown-option-opacity-disabled);
777
938
  }
778
939
  .tl-dropdown__option .tl-checkbox {
779
940
  pointer-events: none;
@@ -783,20 +944,23 @@ body {
783
944
  }
784
945
 
785
946
  .tl-dropdown__helper {
786
- font-family: var(--detail-05-font-family);
787
- font-size: var(--detail-05-font-size);
788
- line-height: var(--detail-05-line-height);
789
- font-weight: var(--detail-05-font-weight);
790
- letter-spacing: var(--detail-05-letter-spacing);
791
- text-transform: var(--detail-05-text-transform);
947
+ font-family: var(--type-system-label-01-font-family);
948
+ font-size: calc(var(--type-system-label-01-font-size) * 1px);
949
+ line-height: calc(var(--type-system-label-01-line-height) * 1px);
950
+ font-weight: var(--type-system-label-01-font-weight);
951
+ letter-spacing: calc(var(--type-system-label-01-letter-spacing) * 1px);
792
952
  color: var(--dropdown-helper-text);
793
953
  padding-top: 4px;
794
954
  display: flex;
795
955
  gap: 8px;
796
956
  position: relative;
797
957
  }
958
+ .tl-dropdown:has(.tl-dropdown__select:disabled) .tl-dropdown__helper::before, .tl-dropdown:has(.tl-dropdown__button:disabled) .tl-dropdown__helper::before, .tl-dropdown:has(.tl-dropdown__input:disabled) .tl-dropdown__helper::before {
959
+ background-color: var(--dropdown-helper-text);
960
+ }
798
961
  .tl-dropdown:has(.tl-dropdown__select:disabled) .tl-dropdown__helper, .tl-dropdown:has(.tl-dropdown__button:disabled) .tl-dropdown__helper, .tl-dropdown:has(.tl-dropdown__input:disabled) .tl-dropdown__helper {
799
- color: var(--color-foreground-text-disabled);
962
+ color: var(--dropdown-helper-text);
963
+ opacity: var(--dropdown-opacity-disabled);
800
964
  }
801
965
  .tl-dropdown--error .tl-dropdown__helper::before {
802
966
  content: "";
@@ -811,24 +975,16 @@ body {
811
975
  mask-repeat: no-repeat;
812
976
  mask-position: center;
813
977
  }
814
- .tl-dropdown--error:has(.tl-dropdown__select:disabled) .tl-dropdown__helper::before, .tl-dropdown--error:has(.tl-dropdown__button:disabled) .tl-dropdown__helper::before, .tl-dropdown--error:has(.tl-dropdown__input:disabled) .tl-dropdown__helper::before {
815
- background-color: var(--color-foreground-text-disabled);
816
- }
817
978
  .tl-dropdown--error .tl-dropdown__helper {
979
+ color: var(--dropdown-error);
818
980
  padding-left: 24px;
819
981
  }
820
982
 
821
- .tl-dropdown--error:not(:has(:is(.tl-dropdown__select, .tl-dropdown__button, .tl-dropdown__input):disabled)) {
822
- --dropdown-border: var(--dropdown-border-error);
823
- --dropdown-border-hover: var(--dropdown-border-error-hover);
824
- --dropdown-helper-text: var(--dropdown-error);
825
- }
826
-
827
983
  .tl-dropdown__text {
828
984
  overflow: hidden;
829
985
  text-overflow: ellipsis;
830
986
  white-space: nowrap;
831
- max-width: calc(100% - 52px);
987
+ max-width: calc(100% - 24px);
832
988
  position: relative;
833
989
  top: 1px;
834
990
  }
@@ -837,16 +993,22 @@ body {
837
993
  color: var(--dropdown-placeholder);
838
994
  padding-top: 2px;
839
995
  }
996
+ .tl-dropdown:is(.tl-dropdown--lg, .tl-dropdown--md).tl-dropdown--label-inside .tl-dropdown__text:empty {
997
+ top: 6px;
998
+ }
840
999
  .tl-dropdown__text:not(:empty) {
841
1000
  display: inline;
842
1001
  }
1002
+ .tl-dropdown.tl-dropdown--label-inside:has(.tl-dropdown__button[aria-expanded=false]) .tl-dropdown__text:empty::before {
1003
+ content: "";
1004
+ }
843
1005
 
844
1006
  .tl-dropdown--sm.tl-dropdown--label-inside .tl-dropdown__text:not(:empty) {
845
1007
  padding-top: 10px;
846
1008
  }
847
1009
 
848
1010
  :has(:is(.tl-dropdown__select, .tl-dropdown__button, .tl-dropdown__input):disabled) .tl-dropdown__text:empty::before {
849
- color: var(--dropdown-disabled);
1011
+ opacity: var(--dropdown-opacity-disabled);
850
1012
  cursor: not-allowed;
851
1013
  }
852
1014
 
@@ -863,12 +1025,12 @@ body {
863
1025
  }
864
1026
 
865
1027
  .tl-dropdown:has(.tl-dropdown__select option[value=""]:checked) .tl-dropdown__select:disabled {
866
- color: var(--dropdown-disabled);
1028
+ opacity: var(--dropdown-opacity-disabled);
867
1029
  cursor: not-allowed;
868
1030
  }
869
1031
 
870
1032
  .tl-dropdown:not(.tl-dropdown--label-inside) .tl-dropdown__input:disabled::placeholder {
871
- color: var(--dropdown-disabled);
1033
+ opacity: var(--dropdown-opacity-disabled);
872
1034
  cursor: not-allowed;
873
1035
  }
874
1036
 
@@ -881,41 +1043,36 @@ body {
881
1043
  box-shadow: none;
882
1044
  }
883
1045
  :is(.traton, .scania) .tl-dropdown__select:hover:not(:disabled) {
884
- border-color: var(--color-foreground-border-strong);
1046
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-border-hover);
1047
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-border-hover);
1048
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-border-hover);
1049
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-border-hover);
1050
+ border-radius: var(--dropdown-border-radius);
885
1051
  }
886
1052
  :is(.traton, .scania) .tl-dropdown__select:focus-visible {
887
- border-width: 2px;
888
- border-color: var(--color-foreground-border-accent-focus);
889
- }
890
- :is(.traton, .scania) .tl-dropdown__select:active:not(:disabled) {
891
- border-color: var(--color-foreground-border-strong);
1053
+ outline: 2px solid var(--component--focus-ring-color-strong);
1054
+ box-shadow: 0 0 0 1px var(--component--focus-ring-color-discrete);
1055
+ outline-offset: 1px;
1056
+ z-index: 1;
892
1057
  }
893
1058
  :is(.traton, .scania) .tl-dropdown__select:disabled {
894
- border-color: transparent;
895
- -webkit-text-fill-color: var(--dropdown-disabled);
896
- opacity: 1;
897
- }
898
-
899
- .traton .tl-dropdown__select {
900
- border: 1px solid var(--color-foreground-border-soft);
901
- }
902
- .traton .tl-dropdown__select:disabled {
903
- border-color: transparent;
1059
+ opacity: var(--dropdown-opacity-disabled);
904
1060
  }
905
1061
 
906
- .scania .tl-dropdown__select {
907
- border-bottom: 1px solid var(--color-foreground-border-soft);
1062
+ .tl-dropdown__select {
1063
+ border-bottom: var(--dropdown-border-bottom-width) solid var(--dropdown-border);
1064
+ border-left: var(--dropdown-border-left-width) solid var(--dropdown-border);
1065
+ border-right: var(--dropdown-border-right-width) solid var(--dropdown-border);
1066
+ border-top: var(--dropdown-border-top-width) solid var(--dropdown-border);
1067
+ border-radius: var(--dropdown-border-radius);
908
1068
  }
909
- .scania .tl-dropdown__select:disabled {
910
- border-color: transparent;
1069
+ .tl-dropdown__select:disabled {
1070
+ opacity: var(--dropdown-opacity-disabled);
911
1071
  }
912
1072
 
913
1073
  :is(.traton, .scania) .tl-dropdown--error .tl-dropdown__select {
914
1074
  border-color: var(--dropdown-error);
915
1075
  }
916
- :is(.traton, .scania) .tl-dropdown--error .tl-dropdown__select:focus-visible {
917
- border-color: var(--dropdown-error-focus);
918
- }
919
1076
  :is(.traton, .scania) .tl-dropdown--error .tl-dropdown__select:disabled {
920
1077
  border-color: transparent;
921
1078
  }