@planningcenter/tapestry 2.6.0-rc.1 → 2.6.0

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.
@@ -1,427 +1,156 @@
1
1
  @layer t-critical, t-component;
2
2
 
3
- @layer t-critical{
4
- tds-page-header:not(.hydrated){
5
- display:none;
6
- }
3
+
4
+ @media (prefers-reduced-motion: no-preference){
5
+
6
+ :root{
7
+ interpolate-size:allow-keywords;
7
8
  }
9
+ }
8
10
 
9
- @layer t-component{
10
- .tds-page-header{
11
- --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
12
- --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
13
- --tds-page-header-color:var(--t-text-color-default-primary);
14
- --tds-page-header-headline-color:var(--t-text-color-default-headline);
15
- --tds-page-header-headline-font-size:var(--t-font-size-2xl);
16
- --tds-page-header-padding-x:var(--t-spacing-2);
17
- --tds-page-header-padding-y:var(--t-spacing-2);
18
- --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
19
- --tds-page-header-nav-gap:var(--t-spacing-1);
20
- --tds-page-header-nav-background:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .1) 100%);
21
- --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
22
- --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
23
- --tds-page-header-nav-item-color:var(--t-text-color-default-secondary);
24
- --tds-page-header-nav-item-background-color:var(--t-fill-color-transparency-light-060);
25
- --tds-page-header-nav-item-border-width:1px;
11
+ @layer tds-component{
12
+ tds-sidenav, .tds-sidenav{
13
+ --tds-sidenav-indent:12px;
14
+ --tds-sidenav-item-depth:0;
26
15
 
27
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
28
- --tds-page-header-nav-item-border-bottom-color:var(--t-border-color-default-base);
16
+ --tds-sidenav-item-transition:background-color .2s cubic-bezier(.19, .91, .38, 1);
29
17
 
30
- --tds-page-header-nav-item-color-hover:var(--t-text-color-default-primary);
31
- --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-080);
32
- --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
18
+ --tds-sidenav-item-icon-size:var(--t-element-size-md);
19
+ --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
20
+ --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
21
+ --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
33
22
 
34
- --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-060);
35
- --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-hover);
23
+ --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
24
+ --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
25
+ --tds-sidenav-item-nested-background-selected:transparent;
36
26
 
37
- --tds-page-header-nav-item-color-disabled:var(--t-text-color-default-disabled);
38
- --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
39
- --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
27
+ --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
28
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
29
+ --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
40
30
 
41
- --tds-page-header-nav-item-color-selected:var(--t-text-color-default-primary);
42
- --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
43
- --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
44
- --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
45
- --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning-primary);
31
+ --tds-sidenav-item-icon-color:var(--t-icon-color-default-secondary);
32
+ --tds-sidenav-item-icon-color-selected:var(--t-icon-color-default-primary);
46
33
  }
47
34
 
48
- .tds-page-header--profile{
49
- --tds-page-header-padding-y:20px;
50
- }
51
- @media (min-width: 600px){
52
- .tds-page-header{
53
- --tds-page-header-background-color:var(--t-surface-color-canvas);
54
- --tds-page-header-color:var(--t-text-color-default-secondary);
55
- --tds-page-header-padding-x:var(--t-spacing-3);
56
- --tds-page-header-headline-font-size:var(--t-font-size-3xl);
57
- --tds-page-header-nav-gap:var(--t-spacing-half);
58
- --tds-page-header-nav-background:transparent;
59
- --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
60
- --tds-page-header-nav-item-border-width:1px;
61
- --tds-page-header-nav-item-color:var(--t-text-color-default-primary);
62
- --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
63
- --tds-page-header-nav-item-border-color-selected:var(--t-border-color-default-base);
64
- }
35
+ .tds-sidenav--theme-gray{
36
+ --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
37
+ --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
38
+ --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
39
+ --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
40
+ --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
65
41
  }
66
42
  }
67
43
 
68
- .tds-page-header{
69
- display:flex;
70
- flex-direction:column;
71
- padding-top:var(--tds-page-header-padding-y);
72
- color:var(--tds-page-header-color);
73
- background:var(--tds-page-header-background-color);
74
- border-bottom:1px solid var(--t-border-color-default-base);
75
- }
44
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section){
45
+ display:flex;
46
+ }
76
47
 
77
- .tds-page-header:not(.has-nav){
78
- padding-bottom:var(--tds-page-header-padding-y);
79
- }
48
+ .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
49
+ flex-direction:column;
50
+ gap:var(--t-spacing-half);
51
+ width:100%;
52
+ }
80
53
 
81
- .tds-page-header.inactive{
82
- background:var(--tds-page-header-background-color-inactive);
54
+ .tds-sidenav-section-list{
55
+ width:100%;
56
+ padding:0;
57
+ margin:0;
58
+ list-style:none;
83
59
  }
84
60
 
85
- .tds-page-header__title-bar{
61
+ .tds-sidenav-section-header{
86
62
  display:flex;
87
- flex-direction:column;
88
- gap:var(--t-spacing-2) var(--t-spacing-1);
89
- align-items:flex-start;
63
+ align-items:baseline;
90
64
  justify-content:space-between;
91
- padding:0 var(--tds-page-header-padding-x);
65
+ padding-top:var(--t-spacing-2);
92
66
  }
93
67
 
94
- .tds-page-header--profile > .tds-page-header__title-bar{
68
+ .tds-sidenav-section-header h2{
69
+ margin:0;
70
+ font-size:var(--t-font-size-sm);
71
+ font-weight:var(--t-font-weight-semibold);
72
+ line-height:1.35;
73
+ color:var(--t-text-color-default-secondary);
74
+ text-transform:uppercase;
75
+ }
76
+
77
+ .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
78
+ padding-top:0;
79
+ }
80
+
81
+ .tds-sidenav-section-header [slot="label-actions"]{
82
+ display:flex;
83
+ gap:var(--t-spacing-half);
84
+ align-items:center;
85
+ }
86
+
87
+ .tds-sidenav-section [slot="section-actions"]{
88
+ display:flex;
89
+ gap:12px;
95
90
  align-items:center;
91
+ min-height:42px;
92
+ padding:var(--t-spacing-1) 0;
96
93
  }
97
94
 
98
- .tds-page-header__primary{
95
+ .tds-sidenav-section-list,
96
+ .tds-sidenav-item{
99
97
  width:100%;
100
- }
101
-
102
- .tds-page-header__primary h1{
98
+ padding:0;
103
99
  margin:0;
104
- font-size:var(--tds-page-header-headline-font-size);
105
- font-weight:var(--t-font-weight-normal);
106
- line-height:32px;
107
- color:var(--tds-page-header-headline-color);
108
- overflow-wrap:break-word;
109
100
  }
110
101
 
111
- .tds-page-header [slot="actions"]{
112
- width:100%;
113
- }
102
+ .tds-sidenav-item :is(a,button){
103
+ position:relative;
104
+ display:flex;
105
+ gap:12px;
106
+ align-items:center;
107
+ width:100%;
108
+ padding:12px;
109
+ overflow:hidden;
110
+ font-size:var(--t-font-size-sm);
111
+ line-height:18px;
112
+ color:var(--t-text-color-default-headline);
113
+ white-space:nowrap;
114
+ text-decoration:none;
115
+ -webkit-appearance:none;
116
+ -moz-appearance:none;
117
+ appearance:none;
118
+ cursor:pointer;
119
+ background-color:var(--tds-sidenav-item-background, transparent);
120
+ border:0;
121
+ border-radius:var(--t-border-radius-default);
122
+ transition:var(--tds-sidenav-item-transition);
123
+ }
114
124
 
115
- .has-multi-actions.tds-page-header [slot="actions"],
116
- .has-multi-actions.tds-page-header .tds-page-header__actions{
117
- display:flex;
118
- flex-flow:row wrap;
119
- gap:var(--t-spacing-half) var(--t-spacing-1);
120
- align-items:flex-start;
121
- justify-content:flex-start;
122
- min-width:0;
123
- }
125
+ :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
126
+ display:block;
127
+ flex:1;
128
+ overflow:hidden;
129
+ text-overflow:ellipsis;
130
+ text-align:left;
131
+ white-space:nowrap;
132
+ }
124
133
 
125
- .tds-page-header nav[slot="navigation"]:not(:has(ul)),
126
- .tds-page-header nav.tds-page-header__nav:not(:has(ul)),
127
- .tds-page-header nav[slot="navigation"] ul,
128
- .tds-page-header nav.tds-page-header__nav ul{
129
- display:flex;
130
- gap:var(--tds-page-header-nav-gap);
131
- padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
132
- margin:0 0 -1px;
133
- overflow:auto;
134
- list-style:none;
135
- background:var(--tds-page-header-nav-background);
136
- }
134
+ :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
135
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
136
+ color:var(--t-text-color-default-headline);
137
+ text-decoration:none;
138
+ }
137
139
 
138
- .tds-page-header nav[slot="navigation"] a,
139
- .tds-page-header nav[slot="navigation"] button,
140
- .tds-page-header nav.tds-page-header__nav a,
141
- .tds-page-header nav.tds-page-header__nav button{
142
- position:relative;
143
- display:inline-flex;
144
- padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
145
- font-size:var(--t-font-size-sm);
146
- line-height:22px;
147
- color:var(--tds-page-header-nav-item-color);
148
- white-space:nowrap;
149
- text-decoration:none;
150
- -webkit-appearance:none;
151
- -moz-appearance:none;
152
- appearance:none;
153
- cursor:pointer;
154
- outline-offset:-2px;
155
- background-color:var(--tds-page-header-nav-item-background-color);
156
- background-clip:padding-box;
157
- border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
158
- border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
159
- border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
160
- }
140
+ :is(.tds-sidenav-item :is(a,button)):active{
141
+ --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
142
+ }
161
143
 
162
- .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator){
163
- position:relative;
164
- }
144
+ :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
145
+ overflow:hidden;
146
+ color:var(--tds-sidenav-item-icon-color);
147
+ }
165
148
 
166
- .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator) :is(a, button){
167
- -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
168
- mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
169
- }
170
-
171
- .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::before,
172
- .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::after{
173
- position:absolute;
174
- top:-5px;
175
- right:-2px;
176
- width:10px;
177
- height:10px;
178
- content:"";
179
- background:var(--tds-page-header-nav-item-indicator-color);
180
- border-radius:50%;
181
- }
182
-
183
- @media (prefers-reduced-motion: no-preference){
184
- .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::after{
185
- animation:indicator-pulse 1.25s ease infinite;
186
- }
187
- }
188
-
189
- .tds-page-header nav[slot="navigation"] a.selected,
190
- .tds-page-header nav[slot="navigation"] button.selected,
191
- .tds-page-header nav.tds-page-header__nav a.selected,
192
- .tds-page-header nav.tds-page-header__nav button.selected{
193
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
194
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
195
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
196
- --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
197
- }
198
-
199
- .tds-page-header nav[slot="navigation"] a:not(.selected):hover,
200
- .tds-page-header nav[slot="navigation"] button:not(.selected):hover,
201
- .tds-page-header nav.tds-page-header__nav a:not(.selected):hover,
202
- .tds-page-header nav.tds-page-header__nav button:not(.selected):hover{
203
- --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
204
- --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
205
- --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
206
- }
207
-
208
- .tds-page-header nav[slot="navigation"] a:not(.selected):active,
209
- .tds-page-header nav[slot="navigation"] button:not(.selected):active,
210
- .tds-page-header nav.tds-page-header__nav a:not(.selected):active,
211
- .tds-page-header nav.tds-page-header__nav button:not(.selected):active{
212
- background-color:var(--tds-page-header-nav-item-background-color-active);
213
- }
214
-
215
- .tds-page-header nav[slot="navigation"] a:not(.selected):disabled,
216
- .tds-page-header nav[slot="navigation"] button:not(.selected):disabled,
217
- .tds-page-header nav.tds-page-header__nav a:not(.selected):disabled,
218
- .tds-page-header nav.tds-page-header__nav button:not(.selected):disabled{
219
- color:var(--tds-page-header-nav-item-color-disabled);
220
- cursor:not-allowed;
221
- background-color:var(--tds-page-header-nav-item-background-color-disabled);
222
- opacity:1;
223
- }
224
-
225
- @media (min-width: 960px){
226
- .tds-page-header__primary{
227
- flex:1 1 max-content;
228
- width:auto;
229
- min-width:0;
230
- max-width:100%;
231
- }
232
-
233
- .tds-page-header__title-bar,
234
- .tds-page-header--profile .tds-page-header__title-bar{
235
- flex-flow:row nowrap;
236
- row-gap:12px;
237
- align-items:flex-start;
238
- }
239
-
240
- .tds-page-header [slot="actions"]{
241
- width:auto;
242
- }
243
-
244
- .has-multi-actions.tds-page-header [slot="actions"],
245
- .has-multi-actions.tds-page-header .tds-page-header__actions{
246
- justify-content:flex-end;
247
- }
248
- }
249
-
250
- .tds-page-header-phone,
251
- .tds-page-header-email{
252
- color:var(--tds-page-header-color);
253
- white-space:nowrap;
254
- }
255
-
256
- .tds-page-header-email{
257
- max-width:100%;
258
- overflow:hidden;
259
- text-overflow:ellipsis;
260
- }
261
-
262
- @keyframes indicator-pulse{
263
- 0%{
264
- opacity:.3;
265
- transform:scale(.9);
266
- }
267
-
268
- 100%{
269
- opacity:0;
270
- transform:scale(1.75);
271
- }
272
- }
273
-
274
-
275
- @media (prefers-reduced-motion: no-preference){
276
-
277
- :root{
278
- interpolate-size:allow-keywords;
279
- }
280
- }
281
-
282
- @layer tds-component{
283
- tds-sidenav, .tds-sidenav{
284
- --tds-sidenav-indent:12px;
285
- --tds-sidenav-item-depth:0;
286
-
287
- --tds-sidenav-item-transition:background-color .2s cubic-bezier(.19, .91, .38, 1);
288
-
289
- --tds-sidenav-item-icon-size:var(--t-element-size-md);
290
- --tds-sidenav-item-background-hover:var(--t-fill-color-button-interaction-ghost-hover);
291
- --tds-sidenav-item-background-active:var(--t-fill-color-button-interaction-ghost-active);
292
- --tds-sidenav-item-background-selected:var(--t-fill-color-button-interaction-ghost-active);
293
-
294
- --tds-sidenav-item-nested-background-hover:var(--tds-sidenav-item-background-hover);
295
- --tds-sidenav-item-nested-background-active:var(--tds-sidenav-item-background-hover);
296
- --tds-sidenav-item-nested-background-selected:transparent;
297
-
298
- --tds-sidenav-item-nested-border-color:var(--t-fill-color-neutral-050);
299
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
300
- --tds-sidenav-item-nested-border-color-selected:var(--t-border-color-status-info);
301
-
302
- --tds-sidenav-item-icon-color:var(--t-icon-color-default-secondary);
303
- --tds-sidenav-item-icon-color-selected:var(--t-icon-color-default-primary);
304
- }
305
-
306
- .tds-sidenav--theme-gray{
307
- --tds-sidenav-item-background-hover:var(--t-fill-color-neutral-080);
308
- --tds-sidenav-item-background-active:var(--t-fill-color-neutral-070);
309
- --tds-sidenav-item-background-selected:var(--t-fill-color-neutral-050);
310
- --tds-sidenav-item-nested-border-color-hover:var(--t-fill-color-neutral-050);
311
- --tds-sidenav-item-nested-border-color-selected:var(--t-fill-color-neutral-010);
312
- }
313
- }
314
-
315
- .tds-sidenav :where(nav,ul,.tds-sidenav-section){
316
- display:flex;
317
- }
318
-
319
- .tds-sidenav :where(nav,ul,.tds-sidenav-section,.tds-sidenav-collapse){
320
- flex-direction:column;
321
- gap:var(--t-spacing-half);
322
- width:100%;
323
- }
324
-
325
- .tds-sidenav-section-list{
326
- width:100%;
327
- padding:0;
328
- margin:0;
329
- list-style:none;
330
- }
331
-
332
- .tds-sidenav-section-header{
333
- display:flex;
334
- align-items:baseline;
335
- justify-content:space-between;
336
- padding-top:var(--t-spacing-2);
337
- }
338
-
339
- .tds-sidenav-section-header h2{
340
- margin:0;
341
- font-size:var(--t-font-size-sm);
342
- font-weight:var(--t-font-weight-semibold);
343
- line-height:1.35;
344
- color:var(--t-text-color-default-secondary);
345
- text-transform:uppercase;
346
- }
347
-
348
- .tds-sidenav-section:first-of-type .tds-sidenav-section-header{
349
- padding-top:0;
350
- }
351
-
352
- .tds-sidenav-section-header [slot="label-actions"]{
353
- display:flex;
354
- gap:var(--t-spacing-half);
355
- align-items:center;
356
- }
357
-
358
- .tds-sidenav-section [slot="section-actions"]{
359
- display:flex;
360
- gap:12px;
361
- align-items:center;
362
- min-height:42px;
363
- padding:var(--t-spacing-1) 0;
364
- }
365
-
366
- .tds-sidenav-section-list,
367
- .tds-sidenav-item{
368
- width:100%;
369
- padding:0;
370
- margin:0;
371
- }
372
-
373
- .tds-sidenav-item :is(a,button){
374
- position:relative;
375
- display:flex;
376
- gap:12px;
377
- align-items:center;
378
- width:100%;
379
- padding:12px;
380
- overflow:hidden;
381
- font-size:var(--t-font-size-sm);
382
- line-height:18px;
383
- color:var(--t-text-color-default-headline);
384
- white-space:nowrap;
385
- text-decoration:none;
386
- -webkit-appearance:none;
387
- -moz-appearance:none;
388
- appearance:none;
389
- cursor:pointer;
390
- background-color:var(--tds-sidenav-item-background, transparent);
391
- border:0;
392
- border-radius:var(--t-border-radius-default);
393
- transition:var(--tds-sidenav-item-transition);
394
- }
395
-
396
- :is(.tds-sidenav-item :is(a,button)):not(:has(.prefix,.suffix)),:is(.tds-sidenav-item :is(a,button)) :is(:not(.prefix,.suffix)){
397
- display:block;
398
- flex:1;
399
- overflow:hidden;
400
- text-overflow:ellipsis;
401
- text-align:left;
402
- white-space:nowrap;
403
- }
404
-
405
- :is(.tds-sidenav-item :is(a,button)):hover,:is(.tds-sidenav-item :is(a,button)):focus-visible{
406
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-hover);
407
- color:var(--t-text-color-default-headline);
408
- text-decoration:none;
409
- }
410
-
411
- :is(.tds-sidenav-item :is(a,button)):active{
412
- --tds-sidenav-item-background:var(--tds-sidenav-item-background-active);
413
- }
414
-
415
- :is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"]){
416
- overflow:hidden;
417
- color:var(--tds-sidenav-item-icon-color);
418
- }
419
-
420
- :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
421
- display:block;
422
- width:var(--tds-sidenav-item-icon-size);
423
- height:var(--tds-sidenav-item-icon-size);
424
- }
149
+ :is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])),:is(:is(.tds-sidenav-item :is(a,button)) :is(.prefix,[slot="prefix"])) svg{
150
+ display:block;
151
+ width:var(--tds-sidenav-item-icon-size);
152
+ height:var(--tds-sidenav-item-icon-size);
153
+ }
425
154
 
426
155
  :is(.tds-sidenav-item :is(a,button)):has(.prefix,[slot="prefix"]) + .tds-sidenav-section{
427
156
  --tds-sidenav-indent:19px;
@@ -595,6 +324,277 @@ tds-sidenav-section:not(.hydrated) > [slot="ssr"]{
595
324
  flex-direction:column;
596
325
  }
597
326
 
327
+ @layer t-critical{
328
+ tds-page-header:not(.hydrated){
329
+ display:none;
330
+ }
331
+ }
332
+
333
+ @layer t-component{
334
+ .tds-page-header{
335
+ --tds-page-header-background-color:var(--t-fill-color-product-current-gradient-tint, var(--t-surface-color-canvas));
336
+ --tds-page-header-background-color-inactive:var(--t-fill-color-neutral-090);
337
+ --tds-page-header-color:var(--t-text-color-default-primary);
338
+ --tds-page-header-headline-color:var(--t-text-color-default-headline);
339
+ --tds-page-header-headline-font-size:var(--t-font-size-2xl);
340
+ --tds-page-header-padding-x:var(--t-spacing-2);
341
+ --tds-page-header-padding-y:var(--t-spacing-2);
342
+ --tds-page-header-nav-padding-x:var(--tds-page-header-padding-x, var(--t-spacing-3));
343
+ --tds-page-header-nav-gap:var(--t-spacing-1);
344
+ --tds-page-header-nav-background:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .1) 100%);
345
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-1);
346
+ --tds-page-header-nav-item-padding-y:var(--t-spacing-1);
347
+ --tds-page-header-nav-item-color:var(--t-text-color-default-secondary);
348
+ --tds-page-header-nav-item-background-color:var(--t-fill-color-transparency-light-060);
349
+ --tds-page-header-nav-item-border-width:1px;
350
+
351
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-background-color);
352
+ --tds-page-header-nav-item-border-bottom-color:var(--t-border-color-default-base);
353
+
354
+ --tds-page-header-nav-item-color-hover:var(--t-text-color-default-primary);
355
+ --tds-page-header-nav-item-background-color-hover:var(--t-fill-color-neutral-080);
356
+ --tds-page-header-nav-item-border-color-hover:var(--tds-page-header-nav-item-background-color-hover);
357
+
358
+ --tds-page-header-nav-item-background-color-active:var(--t-fill-color-neutral-060);
359
+ --tds-page-header-nav-item-border-color-active:var(--tds-page-header-nav-item-background-color-hover);
360
+
361
+ --tds-page-header-nav-item-color-disabled:var(--t-text-color-default-disabled);
362
+ --tds-page-header-nav-item-background-color-disabled:var(--t-fill-color-neutral-080);
363
+ --tds-page-header-nav-item-border-color-disabled:var(--tds-page-header-nav-item-background-color-disabled);
364
+
365
+ --tds-page-header-nav-item-color-selected:var(--t-text-color-default-primary);
366
+ --tds-page-header-nav-item-background-color-selected:var(--t-surface-color-canvas);
367
+ --tds-page-header-nav-item-border-color-selected:var(--tds-page-header-nav-item-background-color-selected);
368
+ --tds-page-header-nav-item-border-bottom-color-selected:var(--tds-page-header-nav-item-background-color-selected);
369
+ --tds-page-header-nav-item-indicator-color:var(--t-icon-color-status-warning-primary);
370
+ }
371
+
372
+ .tds-page-header--profile{
373
+ --tds-page-header-padding-y:20px;
374
+ }
375
+ @media (min-width: 600px){
376
+ .tds-page-header{
377
+ --tds-page-header-background-color:var(--t-surface-color-canvas);
378
+ --tds-page-header-color:var(--t-text-color-default-secondary);
379
+ --tds-page-header-padding-x:var(--t-spacing-3);
380
+ --tds-page-header-headline-font-size:var(--t-font-size-3xl);
381
+ --tds-page-header-nav-gap:var(--t-spacing-half);
382
+ --tds-page-header-nav-background:transparent;
383
+ --tds-page-header-nav-item-padding-x:var(--t-spacing-2);
384
+ --tds-page-header-nav-item-border-width:1px;
385
+ --tds-page-header-nav-item-color:var(--t-text-color-default-primary);
386
+ --tds-page-header-nav-item-background-color:var(--t-fill-color-neutral-070);
387
+ --tds-page-header-nav-item-border-color-selected:var(--t-border-color-default-base);
388
+ }
389
+ }
390
+ }
391
+
392
+ .tds-page-header{
393
+ display:flex;
394
+ flex-direction:column;
395
+ padding-top:var(--tds-page-header-padding-y);
396
+ color:var(--tds-page-header-color);
397
+ background:var(--tds-page-header-background-color);
398
+ border-bottom:1px solid var(--t-border-color-default-base);
399
+ }
400
+
401
+ .tds-page-header:not(.has-nav){
402
+ padding-bottom:var(--tds-page-header-padding-y);
403
+ }
404
+
405
+ .tds-page-header.inactive{
406
+ background:var(--tds-page-header-background-color-inactive);
407
+ }
408
+
409
+ .tds-page-header__title-bar{
410
+ display:flex;
411
+ flex-direction:column;
412
+ gap:var(--t-spacing-2) var(--t-spacing-1);
413
+ align-items:flex-start;
414
+ justify-content:space-between;
415
+ padding:0 var(--tds-page-header-padding-x);
416
+ }
417
+
418
+ .tds-page-header--profile > .tds-page-header__title-bar{
419
+ align-items:center;
420
+ }
421
+
422
+ .tds-page-header__primary{
423
+ width:100%;
424
+ }
425
+
426
+ .tds-page-header__primary h1{
427
+ margin:0;
428
+ font-size:var(--tds-page-header-headline-font-size);
429
+ font-weight:var(--t-font-weight-normal);
430
+ line-height:32px;
431
+ color:var(--tds-page-header-headline-color);
432
+ overflow-wrap:break-word;
433
+ }
434
+
435
+ .tds-page-header [slot="actions"]{
436
+ width:100%;
437
+ }
438
+
439
+ .has-multi-actions.tds-page-header [slot="actions"],
440
+ .has-multi-actions.tds-page-header .tds-page-header__actions{
441
+ display:flex;
442
+ flex-flow:row wrap;
443
+ gap:var(--t-spacing-half) var(--t-spacing-1);
444
+ align-items:flex-start;
445
+ justify-content:flex-start;
446
+ min-width:0;
447
+ }
448
+
449
+ .tds-page-header nav[slot="navigation"]:not(:has(ul)),
450
+ .tds-page-header nav.tds-page-header__nav:not(:has(ul)),
451
+ .tds-page-header nav[slot="navigation"] ul,
452
+ .tds-page-header nav.tds-page-header__nav ul{
453
+ display:flex;
454
+ gap:var(--tds-page-header-nav-gap);
455
+ padding:var(--t-spacing-2) var(--tds-page-header-nav-padding-x) 0;
456
+ margin:0 0 -1px;
457
+ overflow:auto;
458
+ list-style:none;
459
+ background:var(--tds-page-header-nav-background);
460
+ }
461
+
462
+ .tds-page-header nav[slot="navigation"] a,
463
+ .tds-page-header nav[slot="navigation"] button,
464
+ .tds-page-header nav.tds-page-header__nav a,
465
+ .tds-page-header nav.tds-page-header__nav button{
466
+ position:relative;
467
+ display:inline-flex;
468
+ padding:var(--tds-page-header-nav-item-padding-y) var(--tds-page-header-nav-item-padding-x);
469
+ font-size:var(--t-font-size-sm);
470
+ line-height:22px;
471
+ color:var(--tds-page-header-nav-item-color);
472
+ white-space:nowrap;
473
+ text-decoration:none;
474
+ -webkit-appearance:none;
475
+ -moz-appearance:none;
476
+ appearance:none;
477
+ cursor:pointer;
478
+ outline-offset:-2px;
479
+ background-color:var(--tds-page-header-nav-item-background-color);
480
+ background-clip:padding-box;
481
+ border:var(--tds-page-header-nav-item-border-width) solid var(--tds-page-header-nav-item-border-color);
482
+ border-bottom:1px solid var(--tds-page-header-nav-item-border-bottom-color);
483
+ border-radius:var(--t-border-radius-md) var(--t-border-radius-md) 0 0;
484
+ }
485
+
486
+ .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator){
487
+ position:relative;
488
+ }
489
+
490
+ .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator) :is(a, button){
491
+ -webkit-mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
492
+ mask:radial-gradient(8px at calc(100% - 3px) 0, #0000 98%, #000);
493
+ }
494
+
495
+ .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::before,
496
+ .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::after{
497
+ position:absolute;
498
+ top:-5px;
499
+ right:-2px;
500
+ width:10px;
501
+ height:10px;
502
+ content:"";
503
+ background:var(--tds-page-header-nav-item-indicator-color);
504
+ border-radius:50%;
505
+ }
506
+
507
+ @media (prefers-reduced-motion: no-preference){
508
+ .tds-page-header nav:is([slot="navigation"], .tds-page-header__nav) li:has(.indicator)::after{
509
+ animation:indicator-pulse 1.25s ease infinite;
510
+ }
511
+ }
512
+
513
+ .tds-page-header nav[slot="navigation"] a.selected,
514
+ .tds-page-header nav[slot="navigation"] button.selected,
515
+ .tds-page-header nav.tds-page-header__nav a.selected,
516
+ .tds-page-header nav.tds-page-header__nav button.selected{
517
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-selected);
518
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-selected);
519
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-selected);
520
+ --tds-page-header-nav-item-border-bottom-color:var(--tds-page-header-nav-item-background-color-selected);
521
+ }
522
+
523
+ .tds-page-header nav[slot="navigation"] a:not(.selected):hover,
524
+ .tds-page-header nav[slot="navigation"] button:not(.selected):hover,
525
+ .tds-page-header nav.tds-page-header__nav a:not(.selected):hover,
526
+ .tds-page-header nav.tds-page-header__nav button:not(.selected):hover{
527
+ --tds-page-header-nav-item-color:var(--tds-page-header-nav-item-color-hover);
528
+ --tds-page-header-nav-item-background-color:var(--tds-page-header-nav-item-background-color-hover);
529
+ --tds-page-header-nav-item-border-color:var(--tds-page-header-nav-item-border-color-hover);
530
+ }
531
+
532
+ .tds-page-header nav[slot="navigation"] a:not(.selected):active,
533
+ .tds-page-header nav[slot="navigation"] button:not(.selected):active,
534
+ .tds-page-header nav.tds-page-header__nav a:not(.selected):active,
535
+ .tds-page-header nav.tds-page-header__nav button:not(.selected):active{
536
+ background-color:var(--tds-page-header-nav-item-background-color-active);
537
+ }
538
+
539
+ .tds-page-header nav[slot="navigation"] a:not(.selected):disabled,
540
+ .tds-page-header nav[slot="navigation"] button:not(.selected):disabled,
541
+ .tds-page-header nav.tds-page-header__nav a:not(.selected):disabled,
542
+ .tds-page-header nav.tds-page-header__nav button:not(.selected):disabled{
543
+ color:var(--tds-page-header-nav-item-color-disabled);
544
+ cursor:not-allowed;
545
+ background-color:var(--tds-page-header-nav-item-background-color-disabled);
546
+ opacity:1;
547
+ }
548
+
549
+ @media (min-width: 960px){
550
+ .tds-page-header__primary{
551
+ flex:1 1 max-content;
552
+ width:auto;
553
+ min-width:0;
554
+ max-width:100%;
555
+ }
556
+
557
+ .tds-page-header__title-bar,
558
+ .tds-page-header--profile .tds-page-header__title-bar{
559
+ flex-flow:row nowrap;
560
+ row-gap:12px;
561
+ align-items:flex-start;
562
+ }
563
+
564
+ .tds-page-header [slot="actions"]{
565
+ width:auto;
566
+ }
567
+
568
+ .has-multi-actions.tds-page-header [slot="actions"],
569
+ .has-multi-actions.tds-page-header .tds-page-header__actions{
570
+ justify-content:flex-end;
571
+ }
572
+ }
573
+
574
+ .tds-page-header-phone,
575
+ .tds-page-header-email{
576
+ color:var(--tds-page-header-color);
577
+ white-space:nowrap;
578
+ }
579
+
580
+ .tds-page-header-email{
581
+ max-width:100%;
582
+ overflow:hidden;
583
+ text-overflow:ellipsis;
584
+ }
585
+
586
+ @keyframes indicator-pulse{
587
+ 0%{
588
+ opacity:.3;
589
+ transform:scale(.9);
590
+ }
591
+
592
+ 100%{
593
+ opacity:0;
594
+ transform:scale(1.75);
595
+ }
596
+ }
597
+
598
598
  .tds-loading-spinner{
599
599
  --tds-loading-spinner-size:1.25em;
600
600