@scania/tegel-lite 0.1.0 → 1.0.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 (68) 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/scania/configurator.svg +1 -0
  23. package/dist/assets/icons/traton/edit_inactive.svg +1 -0
  24. package/dist/assets/icons/traton/placeholder.svg +3 -0
  25. package/dist/assets/icons/traton/skip_backwards.svg +1 -0
  26. package/dist/assets/icons/traton/skip_forward.svg +1 -0
  27. package/dist/components.css +3997 -6847
  28. package/dist/global.css +627 -5641
  29. package/dist/scania-variables.css +661 -565
  30. package/dist/tl-accordion.css +92 -36
  31. package/dist/tl-banner.css +87 -12
  32. package/dist/tl-block.css +62 -7
  33. package/dist/tl-breadcrumbs.css +55 -6
  34. package/dist/tl-button.css +498 -87
  35. package/dist/tl-card.css +80 -54
  36. package/dist/tl-checkbox.css +195 -115
  37. package/dist/tl-datetime.css +7 -4
  38. package/dist/tl-divider.css +61 -3
  39. package/dist/tl-footer.css +116 -18
  40. package/dist/tl-icon.css +6 -2
  41. package/dist/tl-link.css +114 -16
  42. package/dist/tl-message.css +128 -14
  43. package/dist/tl-modal.css +165 -16
  44. package/dist/tl-radio-button.css +159 -96
  45. package/dist/tl-text-field.css +272 -140
  46. package/dist/tl-textarea.css +274 -76
  47. package/dist/tl-toast.css +119 -10
  48. package/dist/tl-toggle.css +150 -45
  49. package/dist/tl-tooltip.css +17 -15
  50. package/dist/traton-variables.css +682 -447
  51. package/package.json +6 -27
  52. package/dist/tl-badge.css +0 -44
  53. package/dist/tl-checkbox-vars.css +0 -38
  54. package/dist/tl-chip.css +0 -149
  55. package/dist/tl-dropdown.css +0 -857
  56. package/dist/tl-folder-tabs.css +0 -139
  57. package/dist/tl-header.css +0 -859
  58. package/dist/tl-inline-tabs.css +0 -173
  59. package/dist/tl-navigation-tabs.css +0 -171
  60. package/dist/tl-popover-canvas.css +0 -70
  61. package/dist/tl-popover-menu.css +0 -123
  62. package/dist/tl-side-menu.css +0 -540
  63. package/dist/tl-slider.css +0 -1854
  64. package/dist/tl-spinner.css +0 -78
  65. package/dist/tl-step.css +0 -213
  66. package/dist/tl-stepper.css +0 -57
  67. package/dist/tl-table.css +0 -827
  68. /package/dist/assets/icons/scania/{gift inactive.svg → gift_inactive.svg} +0 -0
@@ -1,859 +0,0 @@
1
- @charset "UTF-8";
2
- /**
3
- * Do not edit directly, this file was auto-generated.
4
- */
5
- .scania tds-header,
6
- .scania .tl-header {
7
- /* State & interaction colors */
8
- --component-header-color-background-open: var(--color-foreground-border-accent-focus);
9
- --component-header-color-foreground-selected: var(--color-foreground-icon-strong);
10
- --component-header-dropdown-item-background: var(--color-background-layer-02);
11
- --component-header-avatar-item-background: var(--color-background-layer-02);
12
- --component-header-app-launcher-meny-background: var(--color-background-layer-02);
13
- /* Sizing & spacing */
14
- --component-header-brand-logo-size: 30px;
15
- --component-header-space-profile-padding: 16px;
16
- --component-header-item-image-size: 34px;
17
- --component-header-item-image-left: 10px;
18
- --component-header-item-width: none;
19
- --component-header-item-border-right: 1px solid var(--header-basic-element-border);
20
- /* Borders */
21
- --component-header-border: none;
22
- /* Typography */
23
- --component-header-font-family-headline: var(--scania-font-family-display);
24
- --component-header-font-weight: var(--scania-font-weight-regular);
25
- --component-header-text-transform: none;
26
- }
27
- .scania {
28
- /* ── Light-mode overrides ───────────────────── */
29
- }
30
- .scania .tds-mode-light tds-header,
31
- .scania .tds-mode-light .tl-header {
32
- --component-header-color-background: var(--color-brand-primary-800);
33
- --component-header-color-foreground-strong: var(--color-foreground-icon-inverse-strong);
34
- --component-header-color-background-hover: var(--color-brand-primary-700);
35
- --component-header-color-background-border: var(--color-brand-primary-700);
36
- --component-header-color-background-pressed: var(--color-brand-neutral-white);
37
- --component-header-color-background-selected: var(--color-brand-primary-700);
38
- }
39
- .scania {
40
- /* ── Dark-mode overrides ───────────────────── */
41
- }
42
- .scania .tds-mode-dark tds-header,
43
- .scania .tds-mode-dark .tl-header {
44
- --component-header-color-background: var(--color-brand-primary-900);
45
- --component-header-color-foreground-strong: var(--color-foreground-icon-strong);
46
- --component-header-color-background-hover: var(--color-brand-primary-800);
47
- --component-header-color-background-border: var(--color-brand-primary-800);
48
- --component-header-color-background-pressed: var(--color-brand-primary-800);
49
- --component-header-color-background-selected: var(--color-brand-primary-800);
50
- }
51
-
52
- .traton tds-header,
53
- .traton .tl-header {
54
- /* Base colors */
55
- --component-header-color-background: var(--color-background-base);
56
- --component-header-color-background-hover: var(--color-background-layer-01);
57
- --component-header-color-background-open: transparent;
58
- --component-header-color-foreground-strong: var(--color-foreground-icon-strong);
59
- --component-header-color-background-border: var(--traton-color-transparent-invisible-light);
60
- --component-header-color-background-pressed: var(--color-background-base);
61
- --component-header-color-foreground-selected: var(--color-foreground-icon-strong);
62
- /* Dropdown & launcher */
63
- --component-header-dropdown-item-background: var(--color-background-layer-01);
64
- --component-header-avatar-item-background: var(--color-background-layer-01);
65
- --component-header-app-launcher-meny-background: var(--color-background-layer-01);
66
- /* Sizing & spacing */
67
- --component-header-brand-logo-size: 106px;
68
- --component-header-space-profile-padding: 20px;
69
- --component-header-item-image-size: 24px;
70
- --component-header-item-image-left: 15px;
71
- --component-header-item-width: 122px;
72
- --component-header-item-border-right: none;
73
- /* Borders */
74
- --component-header-border: 2px solid var(--header-nav-item-border-active);
75
- /* Typography */
76
- --component-header-font-family-headline: var(--traton-font-family-display);
77
- --component-header-font-weight: var(--traton-font-weight-medium);
78
- --component-header-text-transform: uppercase;
79
- }
80
- .traton {
81
- /* ── Light-mode overrides ───────────────────── */
82
- }
83
- .traton .tds-mode-light tds-header,
84
- .traton .tds-mode-light .tl-header {
85
- --component-header-color-background-selected: var(--color-background-layer-01);
86
- }
87
- .traton {
88
- /* ── Dark-mode overrides ───────────────────── */
89
- }
90
- .traton .tds-mode-dark tds-header,
91
- .traton .tds-mode-dark .tl-header {
92
- --component-header-color-background-selected: var(--color-background-surface-100);
93
- }
94
-
95
- /*
96
- Tegel Lite specific overrides
97
- Keep this in last to ensure it has the highest specificity for Tegel Lite
98
- */
99
- .scania .tl-header {
100
- --component-header-item-width: 30px;
101
- --component-header-dropdown-box-shadow: 0 3px 3px rgb(0 0 0 / 15%), 0 -1px 1px rgb(0 0 0 / 1%);
102
- }
103
-
104
- .traton .tl-header {
105
- --component-header-dropdown-box-shadow: none;
106
- }
107
-
108
- .tl-header {
109
- /* Base text */
110
- --header-nav-item: var(--component-header-color-foreground-strong);
111
- /* Nav-item states */
112
- --header-nav-item-background-hover: var(--color-background-surface-100);
113
- --header-nav-item-background-selected: var(--component-header-dropdown-item-background);
114
- --header-nav-item-border-pressed: var(--color-foreground-border-accent-focus);
115
- --header-item-hover: var(--component-header-color-background-hover);
116
- /* Dropdown menu items */
117
- --header-nav-dropdown-item-background: var(--component-header-dropdown-item-background);
118
- --header-nav-dropdown-item-border: var(--color-foreground-border-discrete);
119
- /* Dropdown “opened” state */
120
- --tds-header-nav-item-dropdown-opened-background: var(--tds-white);
121
- --tds-header-nav-item-dropdown-opened-background-hover: var(--tds-grey-100);
122
- --tds-header-nav-item-dropdown-opened-background-selected: var(--tds-grey-100);
123
- --tds-header-nav-item-dropdown-opened-background-pressed: var(--tds-grey-300);
124
- --header-nav-item-dropdown-opened: var(--component-header-color-foreground-selected);
125
- /* Basic element ("Bento") separators & backgrounds */
126
- --header-basic-element-border: var(--component-header-color-background-border);
127
- --header-basic-element-border-open: var(--component-header-color-background-open);
128
- --header-basic-element-background-pressed: var(--component-header-dropdown-item-background);
129
- --header-basic-element-background-selected: var(--component-header-dropdown-item-background);
130
- /* Avatar dropdown */
131
- --header-avatar-item-background: var(--component-header-avatar-item-background);
132
- --header-avatar-item: var(--color-foreground-text-soft);
133
- /* App launcher (list) */
134
- --header-app-launcher-menu-background: var(--component-header-app-launcher-meny-background);
135
- --header-app-launcher-category-title: var(--color-foreground-text-soft);
136
- --header-app-launcher-item: var(--color-foreground-text-defined);
137
- /* App launcher (grid) */
138
- --header-app-launcher-grid-category-title: var(--color-foreground-text-soft);
139
- --header-app-launcher-grid-hover-background: var(--color-background-surface-200);
140
- /* Brand symbol */
141
- --header-brand-item-width: var(--component-header-item-width);
142
- /* Brand logo */
143
- --header-brand-logo-size: var(--component-header-brand-logo-size);
144
- /* Header item */
145
- --header-item-image-left: var(--component-header-item-image-left);
146
- --header-item-image-size: var(--component-header-item-image-size);
147
- --header-item-border-right: var(--component-header-item-border-right);
148
- /* Header title */
149
- --header-font-weight: var(--component-header-font-weight);
150
- --header-font-family-headline: var(--component-header-font-family-headline);
151
- --header-text-transform: var(--component-header-text-transform);
152
- --header-dropdown-box-shadow: var(--component-header-dropdown-box-shadow);
153
- }
154
-
155
- .scania {
156
- /* Light mode - explicit light mode class */
157
- }
158
- .scania .tds-mode-light .tl-header {
159
- --header-background: var(--color-brand-primary-800);
160
- --header-nav-item: var(--color-foreground-icon-inverse-strong);
161
- --header-item-hover: var(--color-brand-primary-700);
162
- --header-basic-element-border: var(--color-brand-primary-700);
163
- --header-basic-element-background-pressed: var(--color-brand-neutral-white);
164
- --header-basic-element-background-selected: var(--color-brand-primary-700);
165
- }
166
- .scania {
167
- /* Dark mode - override with dark colors */
168
- }
169
- .scania .tds-mode-dark .tl-header {
170
- --header-background: var(--color-brand-primary-900);
171
- --header-nav-item: var(--color-foreground-icon-strong);
172
- --header-item-hover: var(--color-brand-primary-800);
173
- --header-basic-element-border: var(--color-brand-primary-800);
174
- --header-basic-element-background-pressed: var(--color-brand-primary-800);
175
- --header-basic-element-background-selected: var(--color-brand-primary-800);
176
- }
177
- .scania {
178
- /* Default .tl-header (works for no mode specified - defaults to light) */
179
- }
180
- .scania .tl-header {
181
- /* Brand logo */
182
- --header-logotype-local: var(--tds-background-image-scania-symbol-svg-local);
183
- --header-logotype-cdn: var(--tds-background-image-scania-symbol-svg);
184
- --component-header-space-profile-padding: 16px;
185
- /* Background defaults to light mode */
186
- --header-background: var(--color-brand-primary-800);
187
- --header-nav-item: var(--color-foreground-icon-inverse-strong);
188
- --header-item-hover: var(--color-brand-primary-700);
189
- --header-basic-element-border: var(--color-brand-primary-700);
190
- --header-basic-element-background-pressed: var(--color-brand-neutral-white);
191
- --header-basic-element-background-selected: var(--color-brand-primary-700);
192
- }
193
-
194
- .traton .tds-mode-dark .tl-header {
195
- /* Brand logo - White for dark mode */
196
- --header-logotype-local: var(--traton-logotype-white-svg-local);
197
- --header-logotype-cdn: var(--traton-logotype-white-svg);
198
- /* Background - uses base from traton tokens */
199
- --header-background: var(--color-background-base);
200
- --header-nav-item: var(--color-foreground-icon-strong);
201
- --header-item-hover: var(--color-background-layer-01);
202
- --header-basic-element-border: var(--traton-color-transparent-invisible-light);
203
- --header-basic-element-background-pressed: var(--color-background-base);
204
- --header-basic-element-background-selected: var(--color-background-surface-100);
205
- }
206
- .traton .tds-mode-light .tl-header {
207
- /* Brand logo - Black for light mode */
208
- --header-logotype-local: var(--traton-logotype-black-svg-local);
209
- --header-logotype-cdn: var(--traton-logotype-black-svg);
210
- /* Background - uses base from traton tokens */
211
- --header-background: var(--color-background-base);
212
- --header-nav-item: var(--color-foreground-icon-strong);
213
- --header-item-hover: var(--color-background-layer-01);
214
- --header-basic-element-border: var(--traton-color-transparent-invisible-light);
215
- --header-basic-element-background-pressed: var(--color-background-base);
216
- --header-basic-element-background-selected: var(--color-background-layer-01);
217
- }
218
- .traton .tl-header {
219
- /* Brand logo - Black as default (for no mode specified) */
220
- --header-logotype-local: var(--traton-logotype-black-svg-local);
221
- --header-logotype-cdn: var(--traton-logotype-black-svg);
222
- --component-header-space-profile-padding: 20px;
223
- --header-background: transparent;
224
- }
225
-
226
- /* Typography Usage mixins */
227
- /* Header Elements */
228
- .tl-header__item-wrapper {
229
- all: unset;
230
- box-sizing: border-box;
231
- }
232
- .tl-header__item-wrapper * {
233
- box-sizing: border-box;
234
- }
235
- .tl-header__item-wrapper {
236
- font-family: var(--headline-07-font-family);
237
- font-size: var(--headline-07-font-size);
238
- line-height: var(--headline-07-line-height);
239
- font-weight: var(--headline-07-font-weight);
240
- letter-spacing: var(--headline-07-letter-spacing);
241
- text-transform: var(--headline-07-text-transform);
242
- background-color: var(--header-background);
243
- border-right: 1px solid var(--header-basic-element-border);
244
- color: var(--header-nav-item);
245
- width: 100%;
246
- height: 100%;
247
- cursor: pointer;
248
- padding: 0 24px;
249
- display: flex;
250
- align-items: center;
251
- gap: 8px;
252
- }
253
- .tl-header__item-wrapper:has(.tl-header__brand) {
254
- padding: 0 19px;
255
- }
256
- .tl-header__item-wrapper:hover {
257
- background-color: var(--header-item-hover);
258
- }
259
- .tl-header__item-wrapper:focus-visible {
260
- outline: none;
261
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
262
- }
263
- .tl-header__item-wrapper:active {
264
- padding-top: 2px;
265
- padding-bottom: 2px;
266
- background-color: var(--component-header-color-background-pressed);
267
- box-shadow: inset 0 0 0 2px var(--header-nav-item-border-pressed);
268
- }
269
-
270
- .tl-header__item-wrapper .tl-link__icon {
271
- position: relative;
272
- margin-left: -6px;
273
- left: 3px;
274
- transition: background 0.2s ease-in-out, color 0.2s ease-in-out;
275
- }
276
-
277
- :host,
278
- :root {
279
- --tl-scrollbar-width-standard: thin;
280
- --tl-scrollbar-width: 10px;
281
- --tl-scrollbar-height: 10px;
282
- --tl-scrollbar-thumb-border-width: 3px;
283
- --tl-scrollbar-thumb-border-hover-width: 2px;
284
- }
285
-
286
- body {
287
- scrollbar-width: thin;
288
- }
289
-
290
- /** The breakpoint at which the layout changes from fixed size to full-width. */
291
- .tl-header__dropdown-wrapper {
292
- all: unset;
293
- box-sizing: border-box;
294
- }
295
- .tl-header__dropdown-wrapper * {
296
- box-sizing: border-box;
297
- }
298
- .tl-header__dropdown-wrapper {
299
- background-color: var(--header-background);
300
- border-right: 1px solid var(--header-basic-element-border);
301
- color: var(--header-nav-item);
302
- width: 100%;
303
- height: 100%;
304
- cursor: pointer;
305
- padding: 0 24px;
306
- display: flex;
307
- align-items: center;
308
- gap: 8px;
309
- }
310
- .tl-header__dropdown-wrapper:hover {
311
- background-color: var(--header-item-hover);
312
- }
313
- .tl-header__dropdown-wrapper:focus-visible {
314
- outline: none;
315
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
316
- }
317
- .tl-header__dropdown-wrapper:active {
318
- background-color: var(--component-header-color-background-pressed);
319
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
320
- }
321
- .tl-header__dropdown-wrapper--open {
322
- background-color: var(--component-header-color-background-pressed);
323
- color: var(--header-nav-item-dropdown-opened);
324
- position: relative;
325
- z-index: calc(var(--tds-z-index-header) + 1);
326
- }
327
- .tl-header__dropdown-wrapper--open:hover {
328
- background-color: var(--component-header-color-background-pressed);
329
- }
330
- .tl-header__dropdown-wrapper--open:active {
331
- background-color: var(--component-header-color-background-pressed);
332
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
333
- }
334
- .tl-header__dropdown-wrapper--selected {
335
- border-bottom: 4px solid var(--header-nav-item-border-pressed);
336
- }
337
-
338
- .tl-header__dropdown-wrapper-user {
339
- all: unset;
340
- box-sizing: border-box;
341
- }
342
- .tl-header__dropdown-wrapper-user * {
343
- box-sizing: border-box;
344
- }
345
- .tl-header__dropdown-wrapper-user {
346
- background-color: var(--header-background);
347
- border-right: 1px solid var(--header-basic-element-border);
348
- color: var(--header-nav-item);
349
- width: 100%;
350
- height: 100%;
351
- cursor: pointer;
352
- padding: var(--component-header-space-profile-padding);
353
- display: flex;
354
- align-items: center;
355
- gap: 8px;
356
- }
357
- .tl-header__dropdown-wrapper-user:hover {
358
- background-color: var(--header-item-hover);
359
- }
360
- .tl-header__dropdown-wrapper-user:focus-visible {
361
- outline: none;
362
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
363
- }
364
- .tl-header__dropdown-wrapper-user:active {
365
- background-color: var(--component-header-color-background-pressed);
366
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
367
- }
368
- .tl-header__dropdown-wrapper-user--open {
369
- background-color: var(--component-header-color-background-pressed);
370
- color: var(--header-nav-item-dropdown-opened);
371
- position: relative;
372
- z-index: calc(var(--tds-z-index-header) + 1);
373
- }
374
- .tl-header__dropdown-wrapper-user--open:hover {
375
- background-color: var(--component-header-color-background-pressed);
376
- }
377
- .tl-header__dropdown-wrapper-user--open:active {
378
- background-color: var(--component-header-color-background-pressed);
379
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
380
- }
381
- .tl-header__dropdown-wrapper-user--selected {
382
- border-bottom: 4px solid var(--header-nav-item-border-pressed);
383
- }
384
-
385
- .tl-header__dropdown-icon {
386
- display: flex;
387
- align-items: center;
388
- justify-content: center;
389
- transition: transform 0.2s ease;
390
- transform-origin: center center;
391
- }
392
- .tl-header__dropdown-icon--rotated {
393
- transform: rotate(180deg);
394
- }
395
-
396
- .tl-header__dropdown-menu {
397
- all: unset;
398
- display: none;
399
- position: absolute;
400
- top: 100%;
401
- left: 0;
402
- background: var(--tds-header-app-launcher-menu-background);
403
- box-shadow: var(--header-dropdown-box-shadow);
404
- min-width: 190px;
405
- max-height: calc(100vh - var(--tds-header-height));
406
- overflow-y: auto;
407
- z-index: var(--tds-z-index-header);
408
- }
409
- .tl-header__dropdown-menu::-webkit-scrollbar {
410
- width: var(--tl-scrollbar-width);
411
- }
412
- .tl-header__dropdown-menu::-webkit-scrollbar-track {
413
- background: var(--tl-scrollbar-track-color);
414
- }
415
- .tl-header__dropdown-menu::-webkit-scrollbar-thumb {
416
- border-radius: 40px;
417
- background: var(--tl-scrollbar-thumb-color);
418
- border-width: var(--tl-scrollbar-thumb-border-width);
419
- border-style: solid;
420
- border-color: transparent;
421
- background-clip: padding-box;
422
- }
423
- .tl-header__dropdown-menu::-webkit-scrollbar-thumb:hover {
424
- border-width: var(--tl-scrollbar-thumb-border-hover-width);
425
- }
426
- .tl-header__dropdown-menu::-webkit-scrollbar-button {
427
- height: 0;
428
- width: 0;
429
- }
430
- @supports not selector(::-webkit-scrollbar) {
431
- .tl-header__dropdown-menu {
432
- scrollbar-color: var(--tl-scrollbar-thumb-color) var(--tl-scrollbar-track-color);
433
- scrollbar-width: var(--tl-scrollbar-width-standard);
434
- }
435
- }
436
- @media all and (max-width: 384px) {
437
- .tl-header__dropdown-menu {
438
- width: 100vw;
439
- }
440
- }
441
- .tl-header__dropdown-menu--open {
442
- display: block;
443
- }
444
-
445
- .tl-header__user-menu {
446
- all: unset;
447
- display: none;
448
- position: fixed;
449
- top: var(--tds-header-height);
450
- right: 0;
451
- left: auto;
452
- background: var(--tds-header-app-launcher-menu-background);
453
- box-shadow: var(--header-dropdown-box-shadow);
454
- min-width: 290px;
455
- max-height: calc(100vh - var(--tds-header-height));
456
- overflow-y: auto;
457
- z-index: var(--tds-z-index-header);
458
- border-radius: 4px;
459
- }
460
- .tl-header__user-menu::-webkit-scrollbar {
461
- width: var(--tl-scrollbar-width);
462
- }
463
- .tl-header__user-menu::-webkit-scrollbar-track {
464
- background: var(--tl-scrollbar-track-color);
465
- }
466
- .tl-header__user-menu::-webkit-scrollbar-thumb {
467
- border-radius: 40px;
468
- background: var(--tl-scrollbar-thumb-color);
469
- border-width: var(--tl-scrollbar-thumb-border-width);
470
- border-style: solid;
471
- border-color: transparent;
472
- background-clip: padding-box;
473
- }
474
- .tl-header__user-menu::-webkit-scrollbar-thumb:hover {
475
- border-width: var(--tl-scrollbar-thumb-border-hover-width);
476
- }
477
- .tl-header__user-menu::-webkit-scrollbar-button {
478
- height: 0;
479
- width: 0;
480
- }
481
- @supports not selector(::-webkit-scrollbar) {
482
- .tl-header__user-menu {
483
- scrollbar-color: var(--tl-scrollbar-thumb-color) var(--tl-scrollbar-track-color);
484
- scrollbar-width: var(--tl-scrollbar-width-standard);
485
- }
486
- }
487
- .tl-header__user-menu--open {
488
- display: block;
489
- }
490
-
491
- .tl-header__launcher-menu {
492
- all: unset;
493
- display: none;
494
- position: fixed;
495
- top: var(--tds-header-height);
496
- right: 0;
497
- left: auto;
498
- background: var(--tds-header-app-launcher-menu-background);
499
- box-shadow: var(--header-dropdown-box-shadow);
500
- min-width: 320px;
501
- max-height: calc(100vh - var(--tds-header-height));
502
- overflow-y: auto;
503
- z-index: var(--tds-z-index-header);
504
- }
505
- .tl-header__launcher-menu::-webkit-scrollbar {
506
- width: var(--tl-scrollbar-width);
507
- }
508
- .tl-header__launcher-menu::-webkit-scrollbar-track {
509
- background: var(--tl-scrollbar-track-color);
510
- }
511
- .tl-header__launcher-menu::-webkit-scrollbar-thumb {
512
- border-radius: 40px;
513
- background: var(--tl-scrollbar-thumb-color);
514
- border-width: var(--tl-scrollbar-thumb-border-width);
515
- border-style: solid;
516
- border-color: transparent;
517
- background-clip: padding-box;
518
- }
519
- .tl-header__launcher-menu::-webkit-scrollbar-thumb:hover {
520
- border-width: var(--tl-scrollbar-thumb-border-hover-width);
521
- }
522
- .tl-header__launcher-menu::-webkit-scrollbar-button {
523
- height: 0;
524
- width: 0;
525
- }
526
- @supports not selector(::-webkit-scrollbar) {
527
- .tl-header__launcher-menu {
528
- scrollbar-color: var(--tl-scrollbar-thumb-color) var(--tl-scrollbar-track-color);
529
- scrollbar-width: var(--tl-scrollbar-width-standard);
530
- }
531
- }
532
- .tl-header__launcher-menu--open {
533
- display: block;
534
- }
535
-
536
- .tl-header__launcher-menu-grid {
537
- all: unset;
538
- display: none;
539
- position: fixed;
540
- top: var(--tds-header-height);
541
- right: 0;
542
- left: auto;
543
- background: var(--tds-header-app-launcher-menu-background);
544
- box-shadow: var(--header-dropdown-box-shadow);
545
- min-width: 320px;
546
- max-height: calc(100vh - var(--tds-header-height));
547
- overflow-y: auto;
548
- z-index: var(--tds-z-index-header);
549
- border-radius: 4px;
550
- }
551
- .tl-header__launcher-menu-grid::-webkit-scrollbar {
552
- width: var(--tl-scrollbar-width);
553
- }
554
- .tl-header__launcher-menu-grid::-webkit-scrollbar-track {
555
- background: var(--tl-scrollbar-track-color);
556
- }
557
- .tl-header__launcher-menu-grid::-webkit-scrollbar-thumb {
558
- border-radius: 40px;
559
- background: var(--tl-scrollbar-thumb-color);
560
- border-width: var(--tl-scrollbar-thumb-border-width);
561
- border-style: solid;
562
- border-color: transparent;
563
- background-clip: padding-box;
564
- }
565
- .tl-header__launcher-menu-grid::-webkit-scrollbar-thumb:hover {
566
- border-width: var(--tl-scrollbar-thumb-border-hover-width);
567
- }
568
- .tl-header__launcher-menu-grid::-webkit-scrollbar-button {
569
- height: 0;
570
- width: 0;
571
- }
572
- @supports not selector(::-webkit-scrollbar) {
573
- .tl-header__launcher-menu-grid {
574
- scrollbar-color: var(--tl-scrollbar-thumb-color) var(--tl-scrollbar-track-color);
575
- scrollbar-width: var(--tl-scrollbar-width-standard);
576
- }
577
- }
578
- .tl-header__launcher-menu-grid--open {
579
- display: block;
580
- }
581
-
582
- .tl-header__dropdown-menu-item {
583
- display: block;
584
- box-sizing: border-box;
585
- height: var(--tds-header-list-item-md-height);
586
- width: 100%;
587
- }
588
- .tl-header__dropdown-menu-item:not(:last-child) {
589
- border-bottom: 1px solid var(--header-nav-dropdown-item-border);
590
- }
591
- .tl-header__dropdown-menu-item--selected {
592
- background-color: var(--header-nav-item-background-selected);
593
- padding-right: 4px;
594
- border-left: 4px solid var(--header-nav-item-border-pressed);
595
- }
596
-
597
- .tl-header__user-menu-item {
598
- background-color: var(--header-avatar-item-background);
599
- display: flex;
600
- height: 84px;
601
- }
602
-
603
- .tl-header__user-menu-box {
604
- gap: 16px;
605
- width: 100%;
606
- padding: 0 16px;
607
- display: flex;
608
- align-items: center;
609
- border-bottom: 1px solid var(--header-nav-dropdown-item-border);
610
- }
611
-
612
- .tl-header__user-menu-image {
613
- width: var(--header-item-image-size);
614
- height: var(--header-item-image-size);
615
- border-radius: 50%;
616
- overflow: hidden;
617
- }
618
-
619
- .tl-header__user-menu-content {
620
- display: flex;
621
- flex-direction: column;
622
- gap: 4px;
623
- }
624
-
625
- .tl-header__user-menu-header {
626
- font-family: var(--detail-06-font-family);
627
- font-size: var(--detail-06-font-size);
628
- line-height: var(--detail-06-line-height);
629
- font-weight: var(--detail-06-font-weight);
630
- letter-spacing: var(--detail-06-letter-spacing);
631
- text-transform: var(--detail-06-text-transform);
632
- color: var(--color-foreground-text-defined);
633
- }
634
-
635
- .tl-header__user-menu-subheader {
636
- font-family: var(--headline-07-font-family);
637
- font-size: var(--headline-07-font-size);
638
- line-height: var(--headline-07-line-height);
639
- font-weight: var(--headline-07-font-weight);
640
- letter-spacing: var(--headline-07-letter-spacing);
641
- text-transform: var(--headline-07-text-transform);
642
- color: var(--header-avatar-item);
643
- }
644
-
645
- .tl-header__launcher-menu-list {
646
- box-sizing: border-box;
647
- padding: 12px;
648
- margin: 0;
649
- list-style: none;
650
- width: 100%;
651
- display: grid;
652
- grid-template-columns: 1fr 1fr 1fr;
653
- gap: 4px;
654
- background-color: var(--header-nav-dropdown-item-background);
655
- }
656
-
657
- .tl-header__launcher-menu-item {
658
- display: block;
659
- width: 96px;
660
- height: 96px;
661
- }
662
-
663
- .tl-header__launcher-menu-title {
664
- all: unset;
665
- box-sizing: border-box;
666
- font-family: var(--text-component-title-02-font-family);
667
- font-size: var(--text-component-title-02-font-size);
668
- line-height: var(--text-component-title-02-line-height);
669
- font-weight: var(--text-component-title-02-font-weight);
670
- letter-spacing: var(--text-component-title-02-letter-spacing);
671
- text-transform: var(--text-component-title-02-text-transform);
672
- background-color: var(--header-nav-dropdown-item-background);
673
- color: var(--header-app-launcher-grid-category-title);
674
- height: 48px;
675
- padding: 0 16px;
676
- display: flex;
677
- align-items: center;
678
- border-bottom: 1px solid var(--header-nav-dropdown-item-border);
679
- margin: 0;
680
- }
681
-
682
- .tl-header__dropdown-menu-item a,
683
- .tl-header__dropdown-menu-item button {
684
- all: unset;
685
- box-sizing: border-box;
686
- display: flex;
687
- align-items: center;
688
- height: 100%;
689
- padding: 0 24px;
690
- width: 100%;
691
- font-family: var(--detail-02-font-family);
692
- font-size: var(--detail-02-font-size);
693
- line-height: var(--detail-02-line-height);
694
- font-weight: var(--detail-02-font-weight);
695
- letter-spacing: var(--detail-02-letter-spacing);
696
- text-transform: var(--detail-02-text-transform);
697
- background-color: var(--header-nav-dropdown-item-background);
698
- color: var(--color-foreground-text-defined);
699
- }
700
- .tl-header__dropdown-menu-item a:hover,
701
- .tl-header__dropdown-menu-item button:hover {
702
- background-color: var(--header-nav-item-background-hover);
703
- cursor: pointer;
704
- }
705
- .tl-header__dropdown-menu-item a:focus-visible,
706
- .tl-header__dropdown-menu-item button:focus-visible {
707
- outline: none;
708
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
709
- }
710
- .tl-header__dropdown-menu-item--selected a,
711
- .tl-header__dropdown-menu-item--selected button {
712
- background-color: var(--header-nav-item-background-selected);
713
- }
714
- .tl-header__launcher-menu-item a,
715
- .tl-header__launcher-menu-item button {
716
- all: unset;
717
- box-sizing: border-box;
718
- width: 100%;
719
- height: 100%;
720
- padding: 0 12px;
721
- display: flex;
722
- text-align: center;
723
- justify-content: center;
724
- align-items: center;
725
- flex-direction: column;
726
- gap: 8px;
727
- font-family: var(--detail-05-font-family);
728
- font-size: var(--detail-05-font-size);
729
- line-height: var(--detail-05-line-height);
730
- font-weight: var(--detail-05-font-weight);
731
- letter-spacing: var(--detail-05-letter-spacing);
732
- text-transform: var(--detail-05-text-transform);
733
- background-color: var(--header-nav-dropdown-item-background);
734
- color: var(--color-foreground-text-defined);
735
- border-radius: 4px;
736
- transition: background-color 150ms ease;
737
- }
738
- .tl-header__launcher-menu-item a:hover,
739
- .tl-header__launcher-menu-item button:hover {
740
- background-color: var(--header-app-launcher-grid-hover-background);
741
- cursor: pointer;
742
- }
743
- .tl-header__launcher-menu-item a:focus-visible,
744
- .tl-header__launcher-menu-item button:focus-visible {
745
- outline: none;
746
- box-shadow: inset 0 0 0 2px var(--color-foreground-border-accent-focus);
747
- }
748
-
749
- .tl-header__user-menu-image img {
750
- width: 100%;
751
- height: 100%;
752
- object-fit: cover;
753
- }
754
-
755
- .tl-header__title {
756
- all: unset;
757
- box-sizing: border-box;
758
- }
759
- .tl-header__title * {
760
- box-sizing: border-box;
761
- }
762
- .tl-header__title {
763
- border-right: 1px solid var(--header-basic-element-border);
764
- height: 100%;
765
- }
766
-
767
- .tl-header__title-text {
768
- font-size: 14px;
769
- padding: 4px 32px 0 16px;
770
- color: var(--header-nav-item);
771
- font-weight: var(--header-font-weight);
772
- font-family: var(--header-font-family-headline);
773
- text-transform: var(--header-text-transform);
774
- letter-spacing: normal;
775
- position: relative;
776
- white-space: nowrap;
777
- text-overflow: ellipsis;
778
- overflow: hidden;
779
- }
780
-
781
- .tl-header__brand {
782
- display: block;
783
- width: var(--header-brand-item-width);
784
- height: 30px;
785
- background-image: var(--header-logotype-local), var(--header-logotype-cdn);
786
- background-size: var(--header-brand-logo-size) auto;
787
- background-position: center;
788
- background-repeat: no-repeat;
789
- }
790
-
791
- .tl-header {
792
- display: block;
793
- height: var(--tds-header-height);
794
- background-color: var(--header-background);
795
- width: 100%;
796
- z-index: var(--tds-z-index-header);
797
- }
798
-
799
- .tl-header__nav {
800
- box-sizing: border-box;
801
- }
802
- .tl-header__nav * {
803
- box-sizing: border-box;
804
- }
805
- .tl-header__nav {
806
- background-color: var(--header-background);
807
- width: 100%;
808
- display: block;
809
- }
810
-
811
- .tl-header__list {
812
- display: flex;
813
- justify-content: center;
814
- align-items: center;
815
- height: var(--tds-header-height);
816
- list-style: none;
817
- padding: 0;
818
- margin: 0;
819
- }
820
-
821
- .tl-header__item {
822
- display: none;
823
- height: 100%;
824
- }
825
- @media (min-width: 992px) {
826
- .tl-header__item {
827
- display: block;
828
- }
829
- }
830
- .tl-header__item:has(.tl-icon--burger), .tl-header__item:has(.tl-header__brand) {
831
- display: block;
832
- }
833
-
834
- .tl-header__dropdown {
835
- display: none;
836
- font-family: var(--headline-07-font-family);
837
- font-size: var(--headline-07-font-size);
838
- line-height: var(--headline-07-line-height);
839
- font-weight: var(--headline-07-font-weight);
840
- letter-spacing: var(--headline-07-letter-spacing);
841
- text-transform: var(--headline-07-text-transform);
842
- height: 100%;
843
- position: relative;
844
- }
845
- @media (min-width: 992px) {
846
- .tl-header__dropdown {
847
- display: block;
848
- }
849
- }
850
- .tl-header__dropdown:has(.tl-icon--bento) {
851
- display: block;
852
- }
853
-
854
- .tl-header__middle-spacer {
855
- display: block;
856
- flex-grow: 1;
857
- height: var(--tds-header-height);
858
- border-right: 1px solid var(--header-basic-element-border);
859
- }