@taprootio/espalier 4.3.0 → 4.5.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.
Files changed (61) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/css/fonts/font-fallback-profiles.json +1 -0
  3. package/custom-elements.json +2338 -1491
  4. package/dist/action-menu/esp-action-menu-item.js +7 -4
  5. package/dist/avatar/esp-avatar.js +14 -8
  6. package/dist/avatar/esp-profile-chip.js +4 -1
  7. package/dist/badge/esp-badge.js +7 -4
  8. package/dist/box/esp-box.d.ts +1 -1
  9. package/dist/checkbox/esp-checkbox.js +6 -3
  10. package/dist/color-picker/esp-color-picker.js +1 -1
  11. package/dist/data-cell/esp-data-cell.js +6 -3
  12. package/dist/date-picker/helpers/styles.js +10 -4
  13. package/dist/details/esp-details.d.ts +4 -4
  14. package/dist/details/esp-details.js +11 -5
  15. package/dist/empty-state/esp-empty-state.js +16 -7
  16. package/dist/flyout/esp-flyout.js +5 -2
  17. package/dist/font-picker/esp-font-picker.d.ts +1 -0
  18. package/dist/font-picker/esp-font-picker.js +4 -4
  19. package/dist/footer/esp-footer-link-group.js +12 -6
  20. package/dist/footer/esp-footer.js +21 -6
  21. package/dist/form-item/esp-form-item.js +4 -1
  22. package/dist/header/esp-header.d.ts +2 -1
  23. package/dist/header/esp-header.js +24 -6
  24. package/dist/help/esp-help-button.d.ts +1 -1
  25. package/dist/help/help-document.js +4 -4
  26. package/dist/index.d.ts +2 -1
  27. package/dist/index.js +1 -1
  28. package/dist/lightbox/esp-lightbox.d.ts +1 -1
  29. package/dist/page/esp-page.d.ts +1 -0
  30. package/dist/page/esp-page.js +40 -783
  31. package/dist/page/esp-page.styles.js +748 -0
  32. package/dist/page/workspace-geometry.js +1 -0
  33. package/dist/page/workspace-resize-session.js +1 -0
  34. package/dist/page/workspace-width.js +1 -1
  35. package/dist/pickers/esp-picker-menu.js +6 -6
  36. package/dist/progress/esp-progress.js +11 -5
  37. package/dist/radio-button/esp-radio-button.js +6 -3
  38. package/dist/root/esp-root.d.ts +8 -0
  39. package/dist/root/esp-root.js +13 -7
  40. package/dist/root/helpers/compute-theme-properties.js +1 -1
  41. package/dist/search/esp-search.js +10 -4
  42. package/dist/shared/esp-element-base.js +20 -4
  43. package/dist/shared/font-helpers.d.ts +26 -0
  44. package/dist/shared/font-helpers.js +1 -1
  45. package/dist/shared/font-plan.d.ts +90 -0
  46. package/dist/shared/font-plan.js +5 -0
  47. package/dist/shared/scale-engine.js +1 -1
  48. package/dist/shared/theme.d.ts +28 -4
  49. package/dist/shared/theme.js +1 -1
  50. package/dist/slider/esp-slider.js +8 -5
  51. package/dist/status-indicator/esp-status-indicator.d.ts +1 -1
  52. package/dist/switch/esp-switch.js +11 -5
  53. package/dist/tabs/esp-tab-group.js +6 -3
  54. package/dist/tabs/esp-tab.js +6 -3
  55. package/dist/tree/esp-tree.js +4 -1
  56. package/espalier.css-data.json +9 -5
  57. package/espalier.token-manifest.json +13 -5
  58. package/licenses/ASSET_PROVENANCE.md +2 -1
  59. package/licenses/THIRD_PARTY_NOTICES.md +35 -0
  60. package/licenses/asset-provenance.json +26 -2
  61. package/package.json +16 -2
@@ -0,0 +1,748 @@
1
+ import{css as e}from"lit";import{EspalierElementBase as t}from"../shared/esp-element-base.js";const s=[...t.styles,e`
2
+ :host {
3
+ --_esp-page-resolved-max-width: var(
4
+ --esp-page-main-max-width,
5
+ var(--esp-page-max-width, 1536px)
6
+ );
7
+ --_esp-page-main-min-width: var(
8
+ --esp-page-main-min-width,
9
+ var(--esp-page-preview-min-main-width, 30rem)
10
+ );
11
+ --_esp-page-preview-resolved-min-width: var(
12
+ --esp-page-preview-width,
13
+ var(--esp-page-preview-min-width, 22.5rem)
14
+ );
15
+ --_esp-page-preview-resolved-max-width: var(
16
+ --esp-page-preview-width,
17
+ var(--esp-page-preview-max-width, 48rem)
18
+ );
19
+ --_esp-page-flyout-resolved-min-width: var(
20
+ --esp-page-flyout-width,
21
+ var(--esp-page-flyout-min-width, 20rem)
22
+ );
23
+ --_esp-page-flyout-resolved-max-width: var(
24
+ --esp-page-flyout-width,
25
+ var(--esp-page-flyout-max-width, 30rem)
26
+ );
27
+ --_esp-page-preview-used-width: 0px;
28
+ --_esp-page-flyout-used-width: 0px;
29
+ --_esp-page-workspace-track: minmax(
30
+ calc(var(--_esp-page-flyout-min) + var(--_esp-page-preview-min)),
31
+ calc(var(--_esp-page-preview-used-width) + var(--_esp-page-flyout-used-width))
32
+ );
33
+
34
+ --_esp-page-main-track: minmax(0, var(--_esp-page-resolved-max-width));
35
+
36
+ --_esp-page-gutter-left: 0fr;
37
+ --_esp-page-gutter-right: 1fr;
38
+
39
+ --_esp-page-flyout-min: 0px;
40
+
41
+ --_esp-page-preview-min: 0px;
42
+
43
+ --_esp-page-surface-edge-shadow: 0.75rem 0 1.5rem -0.75rem var(--esp-color-shadow);
44
+
45
+ --_esp-page-surface-shadow: var(
46
+ --esp-page-surface-shadow,
47
+ -0.75rem 0 1.5rem -0.75rem var(--esp-color-shadow),
48
+ var(--_esp-page-surface-edge-shadow)
49
+ );
50
+ --_esp-page-surface-border: var(--esp-page-surface-border, none);
51
+ --_esp-page-fixed-header-offset: var(
52
+ --esp-page-fixed-header-offset,
53
+ var(--esp-header-height, calc(4.5 * var(--esp-size-small)))
54
+ );
55
+
56
+ display: block;
57
+ }
58
+
59
+ :host([kind="narrow"]) {
60
+ --_esp-page-resolved-max-width: var(
61
+ --esp-page-main-max-width,
62
+ var(--esp-page-max-width, 768px)
63
+ );
64
+ }
65
+
66
+ :host([align="center"]) {
67
+ --_esp-page-gutter-left: 1fr;
68
+ --_esp-page-gutter-right: 1fr;
69
+ }
70
+
71
+ :host([align="end"]) {
72
+ --_esp-page-gutter-left: 1fr;
73
+ --_esp-page-gutter-right: 0fr;
74
+ }
75
+
76
+
77
+ :host([kind="full"]) {
78
+ --_esp-page-resolved-max-width: var(
79
+ --esp-page-main-max-width,
80
+ var(--esp-page-max-width, none)
81
+ );
82
+ }
83
+
84
+ :host([kind="full"]:not([data-main-max-configured])) {
85
+ --_esp-page-main-track: 1fr;
86
+ --_esp-page-gutter-left: 0fr;
87
+ --_esp-page-gutter-right: 0fr;
88
+ }
89
+
90
+
91
+ :host([kind="site"]) {
92
+ --_esp-page-resolved-max-width: none;
93
+ --_esp-page-main-track: 1fr;
94
+ --_esp-page-gutter-left: 0fr;
95
+ --_esp-page-gutter-right: 0fr;
96
+ }
97
+
98
+
99
+ :host([flyout-open]) {
100
+ --_esp-page-flyout-min: var(--_esp-page-flyout-resolved-min-width);
101
+ }
102
+
103
+ :host([preview-reclaiming]) {
104
+ --_esp-page-preview-min: var(--_esp-page-preview-resolved-min-width);
105
+ }
106
+
107
+
108
+ :host([flyout-open][data-workspace-targeted]) {
109
+ --_esp-page-flyout-min: var(--_esp-page-flyout-used-width);
110
+ }
111
+
112
+ :host([preview-reclaiming][data-workspace-targeted]) {
113
+ --_esp-page-preview-min: var(--_esp-page-preview-used-width);
114
+ }
115
+
116
+ :host([flyout-open]),
117
+ :host([preview-reclaiming]) {
118
+ --_esp-page-main-track: minmax(
119
+ var(--_esp-page-main-min-width),
120
+ var(--_esp-page-resolved-max-width)
121
+ );
122
+ }
123
+
124
+ :host([kind="full"]:not([data-main-max-configured])[flyout-open]),
125
+ :host([kind="full"]:not([data-main-max-configured])[preview-reclaiming]),
126
+ :host([kind="site"][flyout-open]),
127
+ :host([kind="site"][preview-reclaiming]) {
128
+ --_esp-page-main-track: minmax(var(--_esp-page-main-min-width), 1fr);
129
+ }
130
+
131
+
132
+ @media (max-width: 50em) {
133
+ :host([flyout-open]) {
134
+ --_esp-page-flyout-min: 0px;
135
+ }
136
+
137
+ :host([preview-reclaiming]) {
138
+ --_esp-page-preview-min: 0px;
139
+ }
140
+
141
+ :host([flyout-open]),
142
+ :host([preview-reclaiming]) {
143
+ --_esp-page-main-track: minmax(0, var(--_esp-page-resolved-max-width));
144
+ }
145
+
146
+ :host([kind="full"]:not([data-main-max-configured])[flyout-open]),
147
+ :host([kind="full"]:not([data-main-max-configured])[preview-reclaiming]),
148
+ :host([kind="site"][flyout-open]),
149
+ :host([kind="site"][preview-reclaiming]) {
150
+ --_esp-page-main-track: 1fr;
151
+ }
152
+
153
+ .esp-page > .esp-page-preview-space,
154
+ .esp-page > .esp-page-workspace-resize-handles {
155
+ display: none;
156
+ }
157
+ }
158
+
159
+
160
+ :host([flyout-overlay-open]) .esp-page > div.esp-page-flyout {
161
+ z-index: var(--esp-flyout-z-index, 3000);
162
+ }
163
+
164
+
165
+ :host([descendant-flyout-overlay-open]) .esp-page > div.esp-page-main {
166
+ z-index: var(--esp-flyout-z-index, 3000);
167
+ overflow: visible;
168
+ }
169
+
170
+
171
+ :host([flyout-anchored]:not([flyout-full-height]))
172
+ .esp-page
173
+ > div.esp-page-flyout
174
+ > .sticky-wrapper {
175
+ position: static;
176
+ }
177
+
178
+
179
+ :host([flyout-full-height]) .esp-page > div.esp-page-flyout {
180
+ grid-row: top-start / footer-end;
181
+ z-index: calc(var(--esp-page-header-z-index, 20) + 2);
182
+ }
183
+
184
+
185
+ :host([flyout-anchored][preview-visible]) .esp-page > div.esp-page-flyout {
186
+ z-index: calc(var(--esp-page-header-z-index, 20) + 2);
187
+ }
188
+
189
+ slot[name="flyout"]::slotted(esp-flyout) {
190
+ --_esp-flyout-used-width: var(--_esp-page-flyout-used-width);
191
+ --_esp-flyout-preview-bridge-width: 0px;
192
+ --_esp-flyout-preview-anchor-display: none;
193
+ }
194
+
195
+ :host([preview-visible]) slot[name="flyout"]::slotted(esp-flyout) {
196
+ --_esp-flyout-preview-bridge-width: var(--_esp-page-preview-used-width);
197
+ --_esp-flyout-preview-anchor-display: block;
198
+ }
199
+
200
+
201
+ slot[name="flyout"]::slotted(esp-flyout[match-surface]) {
202
+ --esp-flyout-shadow: var(--_esp-page-surface-edge-shadow);
203
+ }
204
+
205
+
206
+ slot[name="header"]::slotted(esp-header) {
207
+ --esp-header-content-max-width: var(--_esp-page-resolved-max-width);
208
+ --esp-header-content-lead: 0;
209
+ }
210
+
211
+ :host([align="center"]) slot[name="header"]::slotted(esp-header) {
212
+ --esp-header-content-lead: 0.5;
213
+ }
214
+
215
+ :host([align="end"]) slot[name="header"]::slotted(esp-header) {
216
+ --esp-header-content-lead: 1;
217
+ }
218
+
219
+
220
+ :host([kind="full"]:not([data-main-max-configured])) slot[name="header"]::slotted(esp-header) {
221
+ --esp-header-content-max-width: 100%;
222
+ }
223
+
224
+
225
+ slot[name="footer"]::slotted(esp-footer) {
226
+ --esp-footer-content-max-width: var(--_esp-page-resolved-max-width);
227
+ --esp-footer-content-lead: 0;
228
+ }
229
+
230
+ :host([align="center"]) slot[name="footer"]::slotted(esp-footer) {
231
+ --esp-footer-content-lead: 0.5;
232
+ }
233
+
234
+ :host([align="end"]) slot[name="footer"]::slotted(esp-footer) {
235
+ --esp-footer-content-lead: 1;
236
+ }
237
+
238
+ :host([kind="full"]:not([data-main-max-configured])) slot[name="footer"]::slotted(esp-footer) {
239
+ --esp-footer-content-max-width: 100%;
240
+ }
241
+
242
+
243
+ :host([kind="site"]) slot[name="header"]::slotted(esp-header) {
244
+ --esp-header-content-max-width: var(--esp-page-well-max-width, 72rem);
245
+ --esp-header-content-lead: 0.5;
246
+ }
247
+
248
+ :host([kind="site"]) slot[name="footer"]::slotted(esp-footer) {
249
+ --esp-footer-content-max-width: var(--esp-page-well-max-width, 72rem);
250
+ --esp-footer-content-lead: 0.5;
251
+ }
252
+
253
+
254
+ :host([contained]) .esp-page > div.esp-page-top,
255
+ :host([contained]) .esp-page > div.esp-page-footer {
256
+ grid-column: surface;
257
+ }
258
+
259
+
260
+ :host([contained]) slot[name="header"]::slotted(esp-header) {
261
+ --esp-header-shadow: none;
262
+ }
263
+
264
+
265
+ :host([contained]:not([kind="site"])) slot[name="header"]::slotted(esp-header) {
266
+ --esp-header-content-max-width: 100%;
267
+ }
268
+
269
+ :host([contained]:not([kind="site"])) slot[name="footer"]::slotted(esp-footer) {
270
+ --esp-footer-content-max-width: 100%;
271
+ }
272
+
273
+ :host([kind="narrow"]) .esp-page > div.esp-page-main {
274
+
275
+ > ::slotted(*) {
276
+ max-inline-size: var(--esp-measure, 66ch);
277
+ }
278
+ }
279
+
280
+ #dialog-drop-zone {
281
+ z-index: 4000;
282
+ position: absolute;
283
+ }
284
+
285
+ :host([preview-visible]) .esp-page > div.esp-page-preview-space > .esp-page-preview {
286
+ display: block;
287
+ }
288
+
289
+ :host([workspace-resizable][preview-visible]:not([flyout-overlay-open]))
290
+ .esp-page
291
+ > div.esp-page-workspace-resize-handles
292
+ > .esp-page-main-preview-resize-handle,
293
+ :host([workspace-resizable][flyout-open]:not([flyout-overlay-open]))
294
+ .esp-page
295
+ > div.esp-page-workspace-resize-handles
296
+ > .esp-page-preview-flyout-resize-handle {
297
+ display: block;
298
+ }
299
+
300
+ :host([workspace-resizable]:not([data-workspace-resize-ready]))
301
+ .esp-page
302
+ > .esp-page-workspace-resize-handles {
303
+ display: none;
304
+ }
305
+
306
+ :host([workspace-resizable][data-workspace-trailing-edge-exposed]:not([flyout-overlay-open]))
307
+ .esp-page
308
+ > div.esp-page-workspace-resize-handles
309
+ > .esp-page-workspace-end-resize-handle,
310
+ :host([workspace-resizable][data-workspace-position-held]:not([flyout-overlay-open]))
311
+ .esp-page
312
+ > div.esp-page-workspace-resize-handles
313
+ > .esp-page-workspace-end-resize-handle {
314
+ display: block;
315
+ }
316
+
317
+
318
+ :host([data-workspace-position-held]) {
319
+ --_esp-page-gutter-left: var(--_esp-page-resize-leading-gutter-width, 0px);
320
+ --_esp-page-gutter-right: 1fr;
321
+ }
322
+
323
+ :host([data-workspace-resizing]) {
324
+ cursor: col-resize;
325
+ user-select: none;
326
+ }
327
+
328
+
329
+ :host([data-workspace-resizing]) .esp-page,
330
+ :host([data-workspace-keyboard-adjusting]) .esp-page {
331
+ transition: none;
332
+ }
333
+
334
+
335
+ :host([data-preview-navigation-collapsed]) .esp-page > aside.esp-page-left {
336
+ inline-size: 0;
337
+ min-inline-size: 0;
338
+ }
339
+
340
+ :host([data-preview-measuring]) .esp-page {
341
+ transition: none;
342
+ }
343
+
344
+
345
+ :host([data-preview-validating]) .esp-page-preview {
346
+ visibility: hidden;
347
+ }
348
+
349
+ .esp-page {
350
+
351
+ min-height: 100vh;
352
+ min-height: 100dvh;
353
+ display: grid;
354
+ grid-template-columns:
355
+ [full-start canvas-left-start] var(--_esp-page-gutter-left)
356
+ [canvas-left-end surface-start left-start] min-content
357
+ [left-end main-start] var(--_esp-page-main-track)
358
+ [main-end right-start] min-content
359
+ [right-end surface-end canvas-right-start flyout-start]
360
+ var(--_esp-page-workspace-track)
361
+ [flyout-end] var(--_esp-page-gutter-right)
362
+ [canvas-right-end full-end];
363
+
364
+ transition: grid-template-columns 0.25s ease;
365
+ grid-template-rows:
366
+ [top-start] min-content
367
+ [top-end content-start] 1fr
368
+ [content-end footer-start] min-content
369
+ [footer-end];
370
+ overflow-x: clip;
371
+ background: var(--esp-page-background, var(--esp-color-background));
372
+ line-height: 1.5;
373
+ font-family: var(
374
+ --_esp-font-body-effective,
375
+ var(--esp-font-body, var(--_esp-font-body-fallback))
376
+ );
377
+ font-size: var(--esp-type-normal);
378
+ color: var(--esp-color-text);
379
+ position: relative;
380
+
381
+ &:before {
382
+ content: " ";
383
+ display: block;
384
+ position: absolute;
385
+ left: 0;
386
+ top: 0;
387
+ right: 0;
388
+ bottom: 0;
389
+ opacity: var(--esp-page-background-image-opacity, 1);
390
+ background-image: var(--esp-page-background-image, none);
391
+ z-index: 1;
392
+ }
393
+
394
+ > div.esp-page-top {
395
+ z-index: var(--esp-page-header-z-index, 20);
396
+ grid-column: full;
397
+ grid-row: top;
398
+ position: relative;
399
+
400
+ contain: inline-size;
401
+ }
402
+
403
+
404
+ aside.esp-page-left,
405
+ aside.esp-page-right {
406
+ z-index: 5;
407
+ grid-row: content;
408
+ position: relative;
409
+
410
+ }
411
+
412
+ > aside.esp-page-left {
413
+ grid-column: left;
414
+ }
415
+
416
+ > div.esp-page-main {
417
+ z-index: 5;
418
+ grid-column: main;
419
+ grid-row: content;
420
+ position: relative;
421
+ overflow: hidden;
422
+
423
+ background: var(--esp-page-main-background, transparent);
424
+
425
+ contain: inline-size;
426
+ }
427
+
428
+ > aside.esp-page-right {
429
+ grid-column: right;
430
+ }
431
+
432
+
433
+ > div.esp-page-flyout {
434
+
435
+ grid-column: flyout;
436
+ justify-self: start;
437
+ grid-row: content;
438
+ z-index: 5;
439
+ position: relative;
440
+ inline-size: var(--_esp-page-flyout-used-width);
441
+ min-inline-size: 0;
442
+ margin-inline-start: var(--_esp-page-preview-used-width);
443
+
444
+
445
+ @media (max-width: 50em) {
446
+ z-index: var(--esp-flyout-z-index, 3000);
447
+ }
448
+ }
449
+
450
+
451
+ > div.esp-page-preview-space {
452
+ grid-column: flyout;
453
+ grid-row: content;
454
+ z-index: 4;
455
+ position: relative;
456
+ min-inline-size: 0;
457
+
458
+ > .esp-page-preview {
459
+ display: none;
460
+ box-sizing: border-box;
461
+ inline-size: var(--_esp-page-preview-used-width);
462
+ position: relative;
463
+ background: var(
464
+ --esp-page-preview-background,
465
+ var(--esp-page-main-background, var(--esp-page-background, var(--esp-color-background)))
466
+ );
467
+ border-inline-start: var(--esp-page-preview-border, 1px dotted var(--esp-color-border));
468
+ box-shadow: var(--esp-page-preview-shadow, var(--_esp-page-surface-edge-shadow));
469
+ }
470
+ }
471
+
472
+
473
+ > div.esp-page-workspace-resize-handles {
474
+ grid-column: flyout;
475
+ grid-row: top-start / footer-end;
476
+ z-index: calc(var(--esp-page-header-z-index, 20) + 3);
477
+ position: relative;
478
+ min-inline-size: 0;
479
+ pointer-events: none;
480
+ }
481
+
482
+ > div.esp-page-workspace-resize-handles > .esp-page-workspace-resize-handle {
483
+ display: none;
484
+ box-sizing: border-box;
485
+ position: absolute;
486
+ inset-block: 0;
487
+ z-index: 3;
488
+ inline-size: var(--esp-page-resize-handle-hit-size, 2.75rem);
489
+ margin-inline-start: calc(-0.5 * var(--esp-page-resize-handle-hit-size, 2.75rem));
490
+ border: 0;
491
+ outline: 0;
492
+ background: transparent;
493
+ cursor: col-resize;
494
+ pointer-events: auto;
495
+ touch-action: none;
496
+
497
+
498
+ &::after {
499
+ content: "";
500
+ display: block;
501
+ position: sticky;
502
+ inset-block-start: 0;
503
+ box-sizing: border-box;
504
+ inline-size: 0;
505
+ margin-inline: auto;
506
+ block-size: 100dvh;
507
+ max-block-size: 100%;
508
+ pointer-events: none;
509
+ }
510
+
511
+ &:focus-visible::after {
512
+ border-inline-start: var(
513
+ --esp-page-resize-focus-outline,
514
+ 2px dashed var(--esp-color-link)
515
+ );
516
+
517
+ box-shadow: var(--esp-page-resize-focus-shadow, 0 0 0.75rem var(--esp-color-link));
518
+ }
519
+ }
520
+
521
+ > div.esp-page-workspace-resize-handles > .esp-page-main-preview-resize-handle {
522
+ inset-inline-start: 0;
523
+ }
524
+
525
+ > div.esp-page-workspace-resize-handles > .esp-page-preview-flyout-resize-handle {
526
+ inset-inline-start: var(--_esp-page-preview-used-width);
527
+ }
528
+
529
+ > div.esp-page-workspace-resize-handles > .esp-page-workspace-end-resize-handle {
530
+ inset-inline-start: calc(
531
+ var(--_esp-page-preview-used-width) + var(--_esp-page-flyout-used-width)
532
+ );
533
+ }
534
+
535
+
536
+ > .esp-page-preview-min-width-probe,
537
+ > .esp-page-preview-default-width-probe,
538
+ > .esp-page-preview-max-width-probe,
539
+ > .esp-page-flyout-min-width-probe,
540
+ > .esp-page-flyout-default-width-probe,
541
+ > .esp-page-flyout-max-width-probe,
542
+ > .esp-page-main-min-width-probe,
543
+ > .esp-page-main-configured-max-width-probe,
544
+ > .esp-page-main-max-width-probe,
545
+ > .esp-page-resize-step-probe,
546
+ > .esp-page-resize-large-step-probe {
547
+ position: absolute;
548
+ block-size: 0;
549
+ visibility: hidden;
550
+ pointer-events: none;
551
+ contain: strict;
552
+ }
553
+
554
+ > .esp-page-preview-min-width-probe {
555
+ inline-size: var(--_esp-page-preview-resolved-min-width);
556
+ }
557
+
558
+ > .esp-page-preview-max-width-probe {
559
+ inline-size: var(--_esp-page-preview-resolved-max-width);
560
+ }
561
+
562
+ > .esp-page-preview-default-width-probe {
563
+ inline-size: var(--esp-page-preview-default-width, 0px);
564
+ }
565
+
566
+ > .esp-page-flyout-min-width-probe {
567
+ inline-size: var(--_esp-page-flyout-resolved-min-width);
568
+ }
569
+
570
+ > .esp-page-flyout-max-width-probe {
571
+ inline-size: var(--_esp-page-flyout-resolved-max-width);
572
+ }
573
+
574
+ > .esp-page-flyout-default-width-probe {
575
+ inline-size: var(--esp-page-flyout-default-width, 0px);
576
+ }
577
+
578
+ > .esp-page-main-min-width-probe {
579
+ inline-size: var(--_esp-page-main-min-width);
580
+ }
581
+
582
+ > .esp-page-main-configured-max-width-probe {
583
+ inline-size: var(--esp-page-main-max-width, 0px);
584
+ }
585
+
586
+ > .esp-page-main-max-width-probe {
587
+ inline-size: var(--_esp-page-resolved-max-width);
588
+ }
589
+
590
+ > .esp-page-resize-step-probe {
591
+ inline-size: var(--esp-page-resize-step, 1rem);
592
+ }
593
+
594
+ > .esp-page-resize-large-step-probe {
595
+ inline-size: var(--esp-page-resize-large-step, 4rem);
596
+ }
597
+
598
+
599
+ > .esp-page-canvas {
600
+
601
+ grid-row: top-start / footer-end;
602
+ z-index: 1;
603
+ position: relative;
604
+ pointer-events: none;
605
+ background-color: var(--esp-page-canvas-background, transparent);
606
+
607
+
608
+ &::before {
609
+ content: "";
610
+ position: absolute;
611
+ inset: 0;
612
+ background-image: var(--esp-page-canvas-background-image, none);
613
+ opacity: var(--esp-page-canvas-background-image-opacity, 1);
614
+ }
615
+ }
616
+
617
+ > .esp-page-canvas--left {
618
+ grid-column: canvas-left;
619
+ }
620
+
621
+ > .esp-page-canvas--right {
622
+
623
+ grid-column: canvas-right;
624
+ }
625
+
626
+
627
+ > .esp-page-surface {
628
+ grid-column: surface;
629
+
630
+ grid-row: top-start / footer-end;
631
+ z-index: 2;
632
+ pointer-events: none;
633
+ box-shadow: var(--_esp-page-surface-shadow);
634
+ border-inline: var(--_esp-page-surface-border);
635
+ }
636
+
637
+
638
+ .sticky-wrapper {
639
+ will-change: top;
640
+ display: block;
641
+ width: 100%;
642
+ position: sticky;
643
+ top: 0;
644
+ }
645
+
646
+ > div.esp-page-footer {
647
+ grid-column: full;
648
+ grid-row: footer;
649
+ z-index: 10;
650
+ background: var(--esp-page-background, var(--esp-color-background));
651
+
652
+ contain: inline-size;
653
+ }
654
+
655
+ &.sticky-header {
656
+ slot[name="header"]::slotted(esp-header),
657
+ slot[name="sidebar"]::slotted(esp-menu),
658
+ slot[name="right"]::slotted(esp-menu) {
659
+ --esp-menu-top-offset: var(--_esp-page-fixed-header-offset);
660
+ }
661
+
662
+ > div.esp-page-top {
663
+ position: sticky;
664
+ top: var(--esp-page-sticky-header-top, 0);
665
+ }
666
+ }
667
+
668
+ &.fixed-header {
669
+ slot[name="header"]::slotted(esp-header),
670
+ slot[name="sidebar"]::slotted(esp-menu),
671
+ slot[name="right"]::slotted(esp-menu) {
672
+ --esp-menu-top-offset: var(--_esp-page-fixed-header-offset);
673
+ }
674
+
675
+ > div.esp-page-top {
676
+ position: fixed;
677
+ top: 0;
678
+ left: 0;
679
+ right: 0;
680
+ }
681
+
682
+ > div.esp-page-main,
683
+ > aside.esp-page-left,
684
+ > aside.esp-page-right,
685
+ > div.esp-page-flyout,
686
+ > .esp-page-surface,
687
+ > .esp-page-canvas {
688
+ margin-top: var(--_esp-page-fixed-header-offset);
689
+ }
690
+ }
691
+
692
+
693
+ input,
694
+ button,
695
+ textarea,
696
+ select {
697
+ font-family: inherit;
698
+ font-size: inherit;
699
+ }
700
+
701
+
702
+ textarea:not([rows]) {
703
+ min-height: 10em;
704
+ }
705
+
706
+
707
+ :target {
708
+ scroll-margin-block: 5ex;
709
+ }
710
+ }
711
+
712
+ .esp-page:has(esp-dialog[is-open="true"]) {
713
+ overflow: hidden;
714
+ }
715
+
716
+
717
+ :host([preview-visible]) .esp-page > .esp-page-surface {
718
+ box-shadow: none;
719
+ }
720
+
721
+
722
+ .esp-page > div.esp-page-preview-space {
723
+ grid-row: top-start / footer-end;
724
+ z-index: calc(var(--esp-page-header-z-index, 20) + 1);
725
+ pointer-events: none;
726
+
727
+ > .esp-page-preview {
728
+ position: absolute;
729
+ inset-block: 0;
730
+ inset-inline-start: 0;
731
+ pointer-events: auto;
732
+
733
+ > .sticky-wrapper {
734
+ block-size: 100vh;
735
+ block-size: 100dvh;
736
+ overflow-y: auto;
737
+
738
+ overscroll-behavior-y: auto;
739
+ }
740
+ }
741
+ }
742
+
743
+ @media (prefers-reduced-motion: reduce) {
744
+ .esp-page {
745
+ transition: none;
746
+ }
747
+ }
748
+ `];export{s as pageStyles};