@aurodesignsystem-dev/auro-formkit 0.0.0-pr1477.2 → 0.0.0-pr1480.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 (103) hide show
  1. package/components/bibtemplate/dist/auro-bibtemplate.d.ts +7 -0
  2. package/components/bibtemplate/dist/index.js +9 -1
  3. package/components/bibtemplate/dist/registered.js +9 -1
  4. package/components/checkbox/demo/customize.min.js +1 -1
  5. package/components/checkbox/demo/getting-started.min.js +1 -1
  6. package/components/checkbox/demo/index.min.js +1 -1
  7. package/components/checkbox/demo/pages.json +1 -1
  8. package/components/checkbox/demo/why-checkbox.html +57 -0
  9. package/components/checkbox/demo/why-checkbox.md +86 -0
  10. package/components/checkbox/dist/index.js +1 -1
  11. package/components/checkbox/dist/registered.js +1 -1
  12. package/components/combobox/demo/customize.min.js +236 -18
  13. package/components/combobox/demo/getting-started.min.js +236 -18
  14. package/components/combobox/demo/index.min.js +236 -18
  15. package/components/combobox/demo/keyboard-behavior.md +8 -68
  16. package/components/combobox/demo/pages.json +1 -1
  17. package/components/combobox/demo/why-combobox.html +57 -0
  18. package/components/combobox/demo/why-combobox.md +113 -0
  19. package/components/combobox/dist/index.js +236 -18
  20. package/components/combobox/dist/registered.js +236 -18
  21. package/components/counter/demo/customize.min.js +233 -15
  22. package/components/counter/demo/index.min.js +233 -15
  23. package/components/counter/demo/keyboard-behavior.md +1 -0
  24. package/components/counter/demo/pages.json +1 -1
  25. package/components/counter/demo/why-counter.html +57 -0
  26. package/components/counter/demo/why-counter.md +108 -0
  27. package/components/counter/dist/index.js +10 -2
  28. package/components/counter/dist/registered.js +10 -2
  29. package/components/datepicker/demo/accessibility.md +54 -3
  30. package/components/datepicker/demo/api.md +11 -2
  31. package/components/datepicker/demo/customize.html +2 -0
  32. package/components/datepicker/demo/customize.js +19 -0
  33. package/components/datepicker/demo/customize.md +72 -8
  34. package/components/datepicker/demo/customize.min.js +26492 -0
  35. package/components/datepicker/demo/design.md +3 -1
  36. package/components/datepicker/demo/index.js +5 -1
  37. package/components/datepicker/demo/index.md +85 -2
  38. package/components/datepicker/demo/index.min.js +2115 -184
  39. package/components/datepicker/demo/keyboard-behavior.md +201 -2
  40. package/components/datepicker/demo/pages.json +1 -1
  41. package/components/datepicker/demo/voiceover.md +21 -12
  42. package/components/datepicker/demo/why-datepicker.html +57 -0
  43. package/components/datepicker/demo/why-datepicker.md +133 -0
  44. package/components/datepicker/dist/index.js +2010 -155
  45. package/components/datepicker/dist/registered.js +2010 -155
  46. package/components/datepicker/dist/src/auro-calendar-cell.d.ts +112 -11
  47. package/components/datepicker/dist/src/auro-calendar-month.d.ts +37 -0
  48. package/components/datepicker/dist/src/auro-calendar.d.ts +177 -0
  49. package/components/datepicker/dist/src/auro-datepicker.d.ts +88 -0
  50. package/components/datepicker/dist/src/datepickerKeyboardStrategy.d.ts +5 -3
  51. package/components/dropdown/demo/accessibility.md +11 -0
  52. package/components/dropdown/demo/api.md +1 -0
  53. package/components/dropdown/demo/customize.md +3 -0
  54. package/components/dropdown/demo/customize.min.js +223 -13
  55. package/components/dropdown/demo/getting-started.min.js +223 -13
  56. package/components/dropdown/demo/index.min.js +223 -13
  57. package/components/dropdown/demo/keyboard-behavior.md +1 -0
  58. package/components/dropdown/demo/pages.json +1 -1
  59. package/components/dropdown/demo/why-dropdown.html +57 -0
  60. package/components/dropdown/demo/why-dropdown.md +97 -0
  61. package/components/dropdown/dist/auro-dropdown.d.ts +33 -1
  62. package/components/dropdown/dist/index.js +223 -13
  63. package/components/dropdown/dist/registered.js +223 -13
  64. package/components/form/demo/customize.min.js +2726 -219
  65. package/components/form/demo/getting-started.min.js +2726 -219
  66. package/components/form/demo/index.min.js +2726 -219
  67. package/components/form/demo/pages.json +1 -1
  68. package/components/form/demo/registerDemoDeps.min.js +2726 -219
  69. package/components/form/demo/why-form.html +57 -0
  70. package/components/form/demo/why-form.md +101 -0
  71. package/components/input/demo/customize.min.js +1 -1
  72. package/components/input/demo/getting-started.min.js +1 -1
  73. package/components/input/demo/index.min.js +1 -1
  74. package/components/input/demo/pages.json +1 -1
  75. package/components/input/demo/why-input.html +57 -0
  76. package/components/input/demo/why-input.md +121 -0
  77. package/components/input/dist/index.js +1 -1
  78. package/components/input/dist/registered.js +1 -1
  79. package/components/menu/demo/pages.json +1 -1
  80. package/components/menu/demo/why-menu.html +57 -0
  81. package/components/menu/demo/why-menu.md +104 -0
  82. package/components/radio/demo/customize.min.js +2186 -0
  83. package/components/radio/demo/demo-support.min.js +55807 -0
  84. package/components/radio/demo/getting-started.js +1 -1
  85. package/components/radio/demo/getting-started.md +1 -1
  86. package/components/radio/demo/getting-started.min.js +2205 -0
  87. package/components/radio/demo/index.min.js +1 -1
  88. package/components/radio/demo/pages.json +1 -1
  89. package/components/radio/demo/why-radio.html +57 -0
  90. package/components/radio/demo/why-radio.md +92 -0
  91. package/components/radio/dist/index.js +1 -1
  92. package/components/radio/dist/registered.js +1 -1
  93. package/components/select/demo/customize.min.js +249 -33
  94. package/components/select/demo/getting-started.min.js +249 -33
  95. package/components/select/demo/index.min.js +249 -33
  96. package/components/select/demo/keyboard-behavior.md +9 -54
  97. package/components/select/demo/pages.json +1 -1
  98. package/components/select/demo/why-select.html +57 -0
  99. package/components/select/demo/why-select.md +128 -0
  100. package/components/select/dist/index.js +249 -33
  101. package/components/select/dist/registered.js +249 -33
  102. package/custom-elements.json +2446 -1502
  103. package/package.json +2 -2
@@ -1379,7 +1379,6 @@ class UtilitiesCalendarRender {
1379
1379
  .max="${elem.max}"
1380
1380
  ?noRange="${elem.noRange}"
1381
1381
  .monthFirst="${elem.monthFirst}"
1382
- .hoveredDate="${elem.hoveredDate}"
1383
1382
  .dateTo="${elem.dateTo}"
1384
1383
  .dateFrom="${elem.dateFrom}"
1385
1384
  .locale="${elem.locale}"
@@ -1411,49 +1410,6 @@ var snowflakeStyle = i$3`:host([layout*=snowflake]) [auro-input]{flex:1;text-ali
1411
1410
 
1412
1411
  var snowflakeColors = i$3`:host([layout=snowflake]) [auro-dropdown]:not(:is([error],.hasFocus)){--ds-auro-dropdown-trigger-border-color: transparent}`;
1413
1412
 
1414
- var styleCss$7 = i$3`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{--calendar-width: 336px;--mobile-footer-height: 150px;--mobile-header-height: 68px;height:100vh;height:100dvh}.calendars{display:flex;flex-direction:row}.calendarNavButtons{position:absolute;top:var(--ds-size-200, 1rem);right:var(--ds-size-50, 0.25rem);left:var(--ds-size-50, 0.25rem)}.calendarNavBtn{display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.prevMonth,.nextMonth{position:absolute;top:0}.prevMonth{left:0}.nextMonth{right:0}.headerActions{padding:0 var(--ds-size-200, 1rem)}.mobileHeader{width:100%;height:var(--mobile-header-height);z-index:1;align-items:center;flex-direction:row}.headerDateFrom,.headerDateTo{display:flex;height:var(--mobile-header-height);flex:1;flex-direction:column;justify-content:center;padding:0 var(--ds-size-150, 0.75rem) 0 var(--ds-size-200, 1rem)}.mobileDateLabel{padding:var(--ds-size-25, 0.125rem) 0}.mobileFooter{display:none;width:100%;align-items:flex-end;flex-direction:column;justify-content:flex-end}.mobileFooterActions{position:relative;bottom:0;left:50%;display:none;width:calc(100% - var(--ds-size-200, 1rem)*2);align-items:flex-end;flex-direction:column;justify-content:flex-end;padding:var(--ds-size-150) calc(var(--ds-size-200, 1rem));transform:translateX(-50%)}.mobileFooterActions auro-button{width:100%}:host([isfullscreen]){width:100%;max-height:100dvh;overflow:hidden}:host([isfullscreen]) .prevMonth,:host([isfullscreen]) .nextMonth{display:none}:host([isfullscreen]) .mobileHeader,:host([isfullscreen]) .mobileFooter,:host([isfullscreen]) .mobileFooterActions{display:flex}:host([isfullscreen]) .calendarWrapper{display:flex;flex-direction:column}:host([isfullscreen]) .calendars{display:flex;flex-direction:column;flex:1;align-items:center;width:100%;overscroll-behavior:contain}:host([isfullscreen]) .calendars:after{display:block;width:100%;height:var(--mobile-footer-height);content:""}`;
1415
-
1416
- var colorCss$7 = i$3`.calendarNavBtn{border-color:var(--ds-auro-calendar-nav-btn-border-color);background-color:var(--ds-auro-calendar-nav-btn-container-color);color:var(--ds-auro-calendar-nav-btn-chevron-color)}.calendarNavBtn:hover{--ds-auro-calendar-nav-btn-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:focus{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:active{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a);box-shadow:inset 0 0 0 1px var(--ds-auro-calendar-nav-btn-border-color)}.mobileHeader{background-color:var(--ds-auro-calendar-mobile-header-container-color)}.mobileDateLabel{color:var(--ds-auro-calendar-mobile-header-text-color)}:host(:not([noRange])) .headerDateTo:after{background-color:var(--ds-auro-calendar-mobile-header-divider-color)}::slotted([slot="bib.fullscreen.fromStr"]),::slotted([slot=mobileDateToStr]){color:var(--ds-auro-datepicker-placeholder-color)}@media screen and (max-width: 576px){.calendarNavBtn{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}}`;
1417
-
1418
- var styleCss$6 = i$3`:focus:not(:focus-visible){outline:3px solid transparent}.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{position:relative;display:block;width:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));margin:0 var(--ds-size-200, 1rem)}@media screen and (min-width: 576px){:host{width:336px;padding:var(--ds-size-200, 1rem)}}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{position:absolute;top:var(--ds-size-200, 1rem);right:calc(-1*var(--ds-size-200, 1rem));height:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));display:block;width:1px;content:""}}.header{display:flex;height:var(--ds-size-500, 2.5rem);margin-bottom:var(--ds-size-150, 0.75rem);align-items:center;flex-direction:row;text-align:center}.headerTitle{display:flex;align-items:center;flex:1;flex-direction:row;justify-content:center}.headerTitle div:first-child{margin-right:var(--ds-size-100, 0.5rem)}.calendarNavBtn{position:relative;display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.table{width:100%;border-collapse:collapse}.thead{margin-bottom:var(--ds-size-100, 0.5rem)}.th{display:flex;flex:1;align-items:center;justify-content:center}.tbody{width:100%;transition:all 0ms;transform:translateX(0)}@media screen and (min-width: 576px){.tbody{height:384px}}.td{flex:1;margin:0;padding:0}.tr{display:flex;flex-direction:row;width:100%}`;
1419
-
1420
- var colorCss$6 = i$3`:focus:not(:focus-visible){outline:3px solid transparent}:host{background-color:var(--ds-auro-calendar-month-container-color)}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{background-color:var(--ds-auro-calendar-month-divider-color)}}.header{color:var(--ds-auro-calendar-month-header-color)}`;
1421
-
1422
- /******************************************************************************
1423
- Copyright (c) Microsoft Corporation.
1424
-
1425
- Permission to use, copy, modify, and/or distribute this software for any
1426
- purpose with or without fee is hereby granted.
1427
-
1428
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1429
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1430
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1431
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1432
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1433
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1434
- PERFORMANCE OF THIS SOFTWARE.
1435
- ***************************************************************************** */
1436
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
1437
-
1438
-
1439
- function __decorate(decorators, target, key, desc) {
1440
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1441
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1442
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
1443
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1444
- }
1445
-
1446
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1447
- var e = new Error(message);
1448
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1449
- };
1450
-
1451
- /**
1452
- * @license
1453
- * Copyright 2017 Google LLC
1454
- * SPDX-License-Identifier: BSD-3-Clause
1455
- */const o$4={attribute:true,type:String,converter:u$9,reflect:false,hasChanged:f$8},r$4=(t=o$4,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),"setter"===n&&((t=Object.create(t)).wrapped=true),s.set(r.name,t),"accessor"===n){const{name:o}=r;return {set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t,true,r);},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if("setter"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t,true,r);}}throw Error("Unsupported decorator location: "+n)};function n$4(t){return (e,o)=>"object"==typeof o?r$4(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}
1456
-
1457
1413
  /**
1458
1414
  * @module constants
1459
1415
  * @summary Useful constants
@@ -7208,6 +7164,49 @@ function subYears(date, amount, options) {
7208
7164
  return addYears(date, -1, options);
7209
7165
  }
7210
7166
 
7167
+ var styleCss$7 = i$3`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{--calendar-width: 336px;--mobile-footer-height: 150px;--mobile-header-height: 68px;--desktop-footer-height: 80px;height:100vh;height:100dvh}.calendars{display:flex;flex-direction:row}.calendars:focus{outline:none}.calendarNavButtons{position:absolute;z-index:1;top:var(--ds-size-200, 1rem);right:var(--ds-size-50, 0.25rem);left:var(--ds-size-50, 0.25rem)}.calendarNavBtn{display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.prevMonth,.nextMonth{position:absolute;top:0}.prevMonth{left:0}.nextMonth{right:0}.headerActions{padding:0 var(--ds-size-200, 1rem)}.mobileHeader{width:100%;height:var(--mobile-header-height);z-index:1;align-items:center;flex-direction:row}.headerDateFrom,.headerDateTo{display:flex;height:var(--mobile-header-height);flex:1;flex-direction:column;justify-content:center;padding:0 var(--ds-size-150, 0.75rem) 0 var(--ds-size-200, 1rem)}.mobileDateLabel{padding:var(--ds-size-25, 0.125rem) 0}.mobileFooter{display:none;width:100%;align-items:flex-end;flex-direction:column;justify-content:flex-end}.mobileFooterActions{position:relative;bottom:0;left:50%;display:none;width:calc(100% - var(--ds-size-200, 1rem)*2);align-items:flex-end;flex-direction:column;justify-content:flex-end;padding:var(--ds-size-150) calc(var(--ds-size-200, 1rem));transform:translateX(-50%)}.mobileFooterActions auro-button{width:100%}.calendarWrapper.hasFooter{padding-bottom:var(--desktop-footer-height)}:host([isfullscreen]){width:100%;max-height:100dvh;overflow:hidden}:host([isfullscreen]) .prevMonth,:host([isfullscreen]) .nextMonth{display:none}:host([isfullscreen]) .mobileHeader,:host([isfullscreen]) .mobileFooter,:host([isfullscreen]) .mobileFooterActions{display:flex}:host([isfullscreen]) .calendarWrapper{display:flex;flex-direction:column}:host([isfullscreen]) .calendars{display:flex;flex-direction:column;flex:1;align-items:center;width:100%;overscroll-behavior:contain}:host([isfullscreen]) .calendars:after{display:block;width:100%;height:var(--mobile-footer-height);content:""}.sr-only{position:absolute;overflow:hidden;clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;padding:0;border:0;white-space:nowrap}`;
7168
+
7169
+ var colorCss$7 = i$3`.calendarNavBtn{border-color:var(--ds-auro-calendar-nav-btn-border-color);background-color:var(--ds-auro-calendar-nav-btn-container-color);color:var(--ds-auro-calendar-nav-btn-chevron-color)}.calendarNavBtn:hover{--ds-auro-calendar-nav-btn-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:focus{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:active{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a);box-shadow:inset 0 0 0 1px var(--ds-auro-calendar-nav-btn-border-color)}.mobileHeader{background-color:var(--ds-auro-calendar-mobile-header-container-color)}.mobileDateLabel{color:var(--ds-auro-calendar-mobile-header-text-color)}:host(:not([noRange])) .headerDateTo:after{background-color:var(--ds-auro-calendar-mobile-header-divider-color)}::slotted([slot="bib.fullscreen.fromStr"]),::slotted([slot=mobileDateToStr]){color:var(--ds-auro-datepicker-placeholder-color)}@media screen and (max-width: 576px){.calendarNavBtn{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}}`;
7170
+
7171
+ var styleCss$6 = i$3`:focus:not(:focus-visible){outline:3px solid transparent}.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{position:relative;display:block;width:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));margin:0 var(--ds-size-200, 1rem)}@media screen and (min-width: 576px){:host{width:336px;padding:var(--ds-size-200, 1rem)}}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{position:absolute;top:var(--ds-size-200, 1rem);right:calc(-1*var(--ds-size-200, 1rem));height:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));display:block;width:1px;content:""}}.header{display:flex;height:var(--ds-size-500, 2.5rem);margin-bottom:var(--ds-size-150, 0.75rem);align-items:center;flex-direction:row;text-align:center}.headerTitle{display:flex;align-items:center;flex:1;flex-direction:row;justify-content:center}.headerTitle div:first-child{margin-right:var(--ds-size-100, 0.5rem)}.calendarNavBtn{position:relative;display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.table{width:100%;border-collapse:collapse}.thead{margin-bottom:var(--ds-size-100, 0.5rem)}.th{display:flex;flex:1;align-items:center;justify-content:center}.th abbr{text-decoration:none}.tbody{width:100%;transition:all 0ms;transform:translateX(0)}@media screen and (min-width: 576px){.tbody{height:384px}}.td{flex:1;margin:0;padding:0}.tr{display:flex;flex-direction:row;width:100%}`;
7172
+
7173
+ var colorCss$6 = i$3`:focus:not(:focus-visible){outline:3px solid transparent}:host{background-color:var(--ds-auro-calendar-month-container-color)}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{background-color:var(--ds-auro-calendar-month-divider-color)}}.header{color:var(--ds-auro-calendar-month-header-color)}`;
7174
+
7175
+ /******************************************************************************
7176
+ Copyright (c) Microsoft Corporation.
7177
+
7178
+ Permission to use, copy, modify, and/or distribute this software for any
7179
+ purpose with or without fee is hereby granted.
7180
+
7181
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
7182
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
7183
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
7184
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
7185
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
7186
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
7187
+ PERFORMANCE OF THIS SOFTWARE.
7188
+ ***************************************************************************** */
7189
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
7190
+
7191
+
7192
+ function __decorate(decorators, target, key, desc) {
7193
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
7194
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
7195
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
7196
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7197
+ }
7198
+
7199
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
7200
+ var e = new Error(message);
7201
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
7202
+ };
7203
+
7204
+ /**
7205
+ * @license
7206
+ * Copyright 2017 Google LLC
7207
+ * SPDX-License-Identifier: BSD-3-Clause
7208
+ */const o$4={attribute:true,type:String,converter:u$9,reflect:false,hasChanged:f$8},r$4=(t=o$4,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),"setter"===n&&((t=Object.create(t)).wrapped=true),s.set(r.name,t),"accessor"===n){const{name:o}=r;return {set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t,true,r);},init(e){return void 0!==e&&this.C(o,void 0,t,e),e}}}if("setter"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t,true,r);}}throw Error("Unsupported decorator location: "+n)};function n$4(t){return (e,o)=>"object"==typeof o?r$4(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}
7209
+
7211
7210
  class RangeDatepickerCell extends i$1 {
7212
7211
  constructor() {
7213
7212
  super(...arguments);
@@ -7930,20 +7929,25 @@ __decorate([n$4({ type: Array })], RangeDatepickerCalendar.prototype, "dayNamesO
7930
7929
  __decorate([n$4({ type: Array })], RangeDatepickerCalendar.prototype, "daysOfMonth", void 0);
7931
7930
  AuroLibraryRuntimeUtils$5.prototype.registerComponent('wc-range-datepicker-calendar', RangeDatepickerCalendar);
7932
7931
 
7933
- var styleCss$5 = i$3`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}@media screen and (max-width: 576px){:host{display:flex;justify-content:center}}.day{position:relative;width:var(--ds-size-500, 2.5rem);height:calc(var(--ds-size-700, 3.5rem) - 2px);padding:0;border-width:1px;border-style:solid;border-radius:var(--ds-size-300, 1.5rem);cursor:pointer;user-select:none}.day.disabled{cursor:default !important;pointer-events:none}.day.reference{box-shadow:inset 0 0 0 2px var(--ds-advanced-color-shared-background, #ffffff)}.day.inRange::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%)}@media screen and (min-width: 576px){.day.inRange::before{width:var(--ds-size-600, 3rem)}}.day.rangeDepartDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(0%, -50%)}@media screen and (min-width: 576px){.day.rangeDepartDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.day.rangeReturnDate::before,.day.lastHoveredDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(-100%, -50%)}@media screen and (min-width: 576px){.day.rangeReturnDate::before,.day.lastHoveredDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.dateSlot{display:flex;flex-direction:column}::slotted([slot^=date_]){position:absolute;top:80%;left:50%;width:100%;white-space:nowrap;transform:translate(-50%, -50%)}::slotted(auro-icon){max-height:24px;max-width:24px}:host([renderForDateSlot]) .buttonWrapper{position:relative;width:100%;top:5px}:host([renderForDateSlot]) .currentDayMarker{position:relative;padding-bottom:5px;top:-8px}@media screen and (min-width: 576px){.day{width:var(--ds-size-600, 3rem);height:var(--ds-size-800, 4rem)}.day:hover{cursor:pointer}}`;
7932
+ var styleCss$5 = i$3`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}@media screen and (max-width: 576px){:host{display:flex;justify-content:center}}.day{position:relative;width:var(--ds-size-500, 2.5rem);height:calc(var(--ds-size-700, 3.5rem) - 2px);padding:0;border-width:1px;border-style:solid;border-radius:var(--ds-size-300, 1.5rem);cursor:pointer;user-select:none}.day:focus-visible,.day.visualFocus{outline:2px solid var(--ds-basic-color-border-default, #959595);outline-offset:2px}.day.disabled{cursor:default !important;pointer-events:none}.day.blackout{cursor:default}.day.reference{box-shadow:inset 0 0 0 2px var(--ds-advanced-color-shared-background, #ffffff)}.day.inRange::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%)}@media screen and (min-width: 576px){.day.inRange::before{width:var(--ds-size-600, 3rem)}}.day.rangeDepartDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(0%, -50%)}@media screen and (min-width: 576px){.day.rangeDepartDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.day.rangeReturnDate::before,.day.lastHoveredDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(-100%, -50%)}@media screen and (min-width: 576px){.day.rangeReturnDate::before,.day.lastHoveredDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.dateSlot{display:flex;flex-direction:column}.srOnly{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;clip:rect(0, 0, 0, 0);white-space:nowrap}::slotted([slot^=date_]){position:absolute;top:80%;left:50%;width:100%;white-space:nowrap;transform:translate(-50%, -50%)}::slotted(auro-icon){max-height:24px;max-width:24px}:host([renderForDateSlot]) .buttonWrapper{position:relative;width:100%;top:5px}:host([renderForDateSlot]) .currentDayMarker{position:relative;padding-bottom:5px;top:-8px}@media screen and (min-width: 576px){.day{width:var(--ds-size-600, 3rem);height:var(--ds-size-800, 4rem)}.day:hover{cursor:pointer}}`;
7934
7933
 
7935
- var colorCss$5 = i$3`:host ::slotted([slot^=date_]){color:var(--ds-auro-calendar-cell-price-text-color)}:host ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success, #447a1f)}:host .day{border-color:var(--ds-auro-calendar-cell-border-color);background-color:var(--ds-auro-calendar-cell-container-color);color:var(--ds-auro-calendar-cell-text-color)}:host .day.selected{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected, #01426a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.selected ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success-subtle, #d6eac7)}:host .day.selected:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected-hover, #00274a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.reference{--ds-auro-calendar-cell-border-color: var(--ds-basic-color-border-default, #959595)}:host .day.reference:not(.selected):not(.disabled){--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-muted, #676767)}:host .day.reference.selected{--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host .day.disabled{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.inRange:before,:host .day.rangeDepartDate:before,:host .day.rangeReturnDate:before,:host .day.lastHoveredDate:before{background-color:var(--ds-auro-calendar-cell-in-range-color)}:host .day.sameDateTrip:before{--ds-auro-calendar-cell-in-range-color: transparent}`;
7934
+ var colorCss$5 = i$3`:host ::slotted([slot^=date_]){color:var(--ds-auro-calendar-cell-price-text-color)}:host ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success, #447a1f)}:host .day{border-color:var(--ds-auro-calendar-cell-border-color);background-color:var(--ds-auro-calendar-cell-container-color);color:var(--ds-auro-calendar-cell-text-color)}:host .day:focus-visible:not(.selected),:host .day.visualFocus:not(.selected){--ds-auro-calendar-cell-container-color: var(--ds-auro-calendar-cell-in-range-color)}:host .day.selected{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected, #01426a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.selected ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success-subtle, #d6eac7)}:host .day.selected:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected-hover, #00274a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.reference{--ds-auro-calendar-cell-border-color: var(--ds-basic-color-border-default, #959595)}:host .day.reference:not(.selected):not(.disabled){--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-muted, #676767)}:host .day.reference.selected{--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host .day.disabled{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.blackout{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.inRange:before,:host .day.rangeDepartDate:before,:host .day.rangeReturnDate:before,:host .day.lastHoveredDate:before{background-color:var(--ds-auro-calendar-cell-in-range-color)}:host .day.sameDateTrip:before{--ds-auro-calendar-cell-in-range-color: transparent}`;
7936
7935
 
7937
- let s$2 = class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{});}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,true);}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return (i?.assignedNodes({flatten:true})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}};var r$3="top",o$3="bottom",n$3="right",a="left",l$3="auto",c$5=[r$3,o$3,n$3,a],p$7="start",d$3="end",f$7="viewport",h$6="popper",m$7=c$5.reduce(function(e,t){return e.concat([t+"-"+p$7,t+"-"+d$3])},[]),u$8=[].concat(c$5,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$7,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$4(e){return e?(e.nodeName||"").toLowerCase():null}function y$6(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w$6(e){return e instanceof y$6(e).Element||e instanceof Element}function b$3(e){return e instanceof y$6(e).HTMLElement||e instanceof HTMLElement}function x$3(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6(e).ShadowRoot||e instanceof ShadowRoot)}var S$3={name:"applyStyles",enabled:true,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b$3(r)&&v$4(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];false===t?r.removeAttribute(e):r.setAttribute(e,true===t?"":t);}));});},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b$3(s)&&v$4(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4(e){return e.split("-")[0]}var O=Math.max,k$6=Math.min,A$3=Math.round;function z$6(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function E(){return !/^((?!chrome|android).)*safari/i.test(z$6())}function M$7(e,t,i){ void 0===t&&(t=false),void 0===i&&(i=false);var s=e.getBoundingClientRect(),r=1,o=1;t&&b$3(e)&&(r=e.offsetWidth>0&&A$3(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&A$3(s.height)/e.offsetHeight||1);var n=(w$6(e)?y$6(e):window).visualViewport,a=!E()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return {width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function T$3(e){var t=M$7(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B$3(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3(i)){var s=t;do{if(s&&e.isSameNode(s))return true;s=s.parentNode||s.host;}while(s)}return false}function L(e){return y$6(e).getComputedStyle(e)}function H$3(e){return ["table","td","th"].indexOf(v$4(e))>=0}function C$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function R$3(e){return "html"===v$4(e)?e:e.assignedSlot||e.parentNode||(x$3(e)?e.host:null)||C$3(e)}function j(e){return b$3(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3(e){for(var t=y$6(e),i=j(e);i&&H$3(i)&&"static"===L(i).position;)i=j(i);return i&&("html"===v$4(i)||"body"===v$4(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(z$6());if(/Trident/i.test(z$6())&&b$3(e)&&"fixed"===L(e).position)return null;var i=R$3(e);for(x$3(i)&&(i=i.host);b$3(i)&&["html","body"].indexOf(v$4(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode;}return null}(e)||t}function P(e){return ["top","bottom"].indexOf(e)>=0?"x":"y"}function D(e,t,i){return O(e,k$6(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function F(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var U$3={name:"arrow",enabled:true,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_$4(i.placement),h=P(f),m=[a,n$3].indexOf(f)>=0?"height":"width";if(p&&d){var u=function(e,t){return I("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:F(e,c$5))}(l.padding,i),g=T$3(p),v="y"===h?r$3:a,y="y"===h?o$3:n$3,w=i.rects.reference[m]+i.rects.reference[h]-d[h]-i.rects.popper[m],b=d[h]-i.rects.reference[h],x=N$3(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,O=w/2-b/2,k=u[v],A=S-g[m]-u[y],z=S/2-g[m]/2+O,E=D(k,z,A),M=h;i.modifiersData[s]=((t={})[M]=E,t.centerOffset=E-z,t);}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B$3(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function q$3(e){return e.split("-")[1]}var W={top:"auto",right:"auto",bottom:"auto",left:"auto"};function X(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,m=e.adaptive,u=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof u?u({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),O=p.hasOwnProperty("y"),k=a,z=r$3,E=window;if(m){var M=N$3(i),T="clientHeight",B="clientWidth";if(M===y$6(i)&&"static"!==L(M=C$3(i)).position&&"absolute"===f&&(T="scrollHeight",B="scrollWidth"),l===r$3||(l===a||l===n$3)&&c===d$3)z=o$3,x-=(g&&M===E&&E.visualViewport?E.visualViewport.height:M[T])-s.height,x*=h?1:-1;if(l===a||(l===r$3||l===o$3)&&c===d$3)k=n$3,w-=(g&&M===E&&E.visualViewport?E.visualViewport.width:M[B])-s.width,w*=h?1:-1;}var H,R=Object.assign({position:f},m&&W),j=true===u?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return {x:A$3(i*r)/r||0,y:A$3(s*r)/r||0}}({x:w,y:x},y$6(i)):{x:w,y:x};return w=j.x,x=j.y,h?Object.assign({},R,((H={})[z]=O?"0":"",H[k]=_?"0":"",H.transform=(E.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",H)):Object.assign({},R,((t={})[z]=O?x+"px":"",t[k]=_?w+"px":"",t.transform="",t))}var V={passive:true};var G={left:"right",right:"left",bottom:"top",top:"bottom"};function $(e){return e.replace(/left|right|bottom|top/g,function(e){return G[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y$6(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return M$7(C$3(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return /auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return ["html","body","#document"].indexOf(v$4(e))>=0?e.ownerDocument.body:b$3(e)&&Z(e)?e:ee(R$3(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y$6(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(R$3(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f$7?ie(function(e,t){var i=y$6(e),s=C$3(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=E();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop);}return {width:o,height:n,x:a+Q(e),y:l}}(e,i)):w$6(t)?function(e,t){var i=M$7(e,false,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=C$3(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=O(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=O(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return "rtl"===L(r||i).direction&&(a+=O(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(C$3(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(R$3(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3(e)?N$3(e):e;return w$6(i)?t.filter(function(e){return w$6(e)&&B$3(e,i)&&"body"!==v$4(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=O(r.top,t.top),t.right=k$6(r.right,t.right),t.bottom=k$6(r.bottom,t.bottom),t.left=O(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_$4(l):null,f=l?q$3(l):null,h=i.x+i.width/2-s.width/2,m=i.y+i.height/2-s.height/2;switch(c){case r$3:t={x:h,y:i.y-s.height};break;case o$3:t={x:h,y:i.y+i.height};break;case n$3:t={x:i.x+i.width,y:m};break;case a:t={x:i.x-s.width,y:m};break;default:t={x:i.x,y:i.y};}var u=c?P(c):null;if(null!=u){var g="y"===u?"height":"width";switch(f){case p$7:t[u]=t[u]-(i[g]/2-s[g]/2);break;case d$3:t[u]=t[u]+(i[g]/2-s[g]/2);}}return t}function ne(e,t){ void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,m=void 0===d?"clippingParents":d,u=i.rootBoundary,g=void 0===u?f$7:u,v=i.elementContext,y=void 0===v?h$6:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,O=I("number"!=typeof _?_:F(_,c$5)),k=y===h$6?"reference":h$6,A=e.rects.popper,z=e.elements[x?k:y],E=re(w$6(z)?z:z.contextElement||C$3(e.elements.popper),m,g,p),T=M$7(e.elements.reference),B=oe({reference:T,element:A,placement:a}),L=ie(Object.assign({},A,B)),H=y===h$6?L:T,R={top:E.top-H.top+O.top,bottom:H.bottom-E.bottom+O.bottom,left:E.left-H.left+O.left,right:H.right-E.right+O.right},j=e.modifiersData.offset;if(y===h$6&&j){var N=j[a];Object.keys(R).forEach(function(e){var t=[n$3,o$3].indexOf(e)>=0?1:-1,i=[r$3,o$3].indexOf(e)>=0?"y":"x";R[e]+=N[i]*t;});}return R}function ae(e,t){ void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?u$8:l,d=q$3(s),f=d?a?m$7:m$7.filter(function(e){return q$3(e)===d}):c$5,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_$4(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,m=i.fallbackPlacements,u=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,O=_$4(S),k=m||(O===S||!b?[$(S)]:function(e){if(_$4(e)===l$3)return [];var t=$(e);return [Y(e),t,Y(t)]}(S)),A=[S].concat(k).reduce(function(e,i){return e.concat(_$4(i)===l$3?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:u,flipVariations:b,allowedAutoPlacements:x}):i)},[]),z=t.rects.reference,E=t.rects.popper,M=new Map,T=true,B=A[0],L=0;L<A.length;L++){var H=A[L],C=_$4(H),R=q$3(H)===p$7,j=[r$3,o$3].indexOf(C)>=0,N=j?"width":"height",P=ne(t,{placement:H,boundary:g,rootBoundary:v,altBoundary:y,padding:u}),D=j?R?n$3:a:R?o$3:r$3;z[N]>E[N]&&(D=$(D));var I=$(D),F=[];if(d&&F.push(P[C]<=0),h&&F.push(P[D]<=0,P[I]<=0),F.every(function(e){return e})){B=H,T=false;break}M.set(H,F);}if(T)for(var U=function(e){var t=A.find(function(t){var i=M.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},W=b?3:1;W>0;W--){if("break"===U(W))break}t.placement!==B&&(t.modifiersData[s]._skip=true,t.placement=B,t.reset=true);}},requiresIfExists:["offset"],data:{_skip:false}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return [r$3,n$3,o$3,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=u$8.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$3].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n$3].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c;}};var fe={name:"preventOverflow",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,m=i.rootBoundary,u=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:m,padding:g,altBoundary:u}),S=_$4(t.placement),A=q$3(t.placement),z=!A,E=P(S),M="x"===E?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,H=t.rects.popper,C="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,R="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),j=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,I={x:0,y:0};if(B){if(c){var F,U="y"===E?r$3:a,W="y"===E?o$3:n$3,X="y"===E?"height":"width",V=B[E],G=V+x[U],$=V-x[W],K=y?-H[X]/2:0,Y=A===p$7?L[X]:H[X],J=A===p$7?-H[X]:-L[X],Q=t.elements.arrow,Z=y&&Q?T$3(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[U],ie=ee[W],se=D(0,L[X],Z[X]),re=z?L[X]/2-K-se-te-R.mainAxis:Y-se-te-R.mainAxis,oe=z?-L[X]/2+K+se+ie+R.mainAxis:J+se+ie+R.mainAxis,ae=t.elements.arrow&&N$3(t.elements.arrow),le=ae?"y"===E?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(F=null==j?void 0:j[E])?F:0,pe=V+oe-ce,de=D(y?k$6(G,V+re-ce-le):G,V,y?O($,pe):$);B[E]=de,I[E]=de-V;}if(f){var fe,he="x"===E?r$3:a,me="x"===E?o$3:n$3,ue=B[M],ge="y"===M?"height":"width",ve=ue+x[he],ye=ue-x[me],we=-1!==[r$3,a].indexOf(S),be=null!=(fe=null==j?void 0:j[M])?fe:0,xe=we?ve:ue-L[ge]-H[ge]-be+R.altAxis,Se=we?ue+L[ge]+H[ge]-be-R.altAxis:ye,_e=y&&we?function(e,t,i){var s=D(e,t,i);return s>i?i:s}(xe,ue,Se):D(y?xe:ve,ue,y?Se:ye);B[M]=_e,I[M]=_e-ue;}t.modifiersData[s]=I;}},requiresIfExists:["offset"]};function he(e,t,i){ void 0===i&&(i=false);var s,r,o=b$3(t),n=b$3(t)&&function(e){var t=e.getBoundingClientRect(),i=A$3(t.width)/e.offsetWidth||1,s=A$3(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=C$3(t),l=M$7(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$4(t)||Z(a))&&(c=(s=t)!==y$6(s)&&b$3(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3(t)?((p=M$7(t,true)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function me(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s);}}),s.push(e);}return e.forEach(function(e){t.set(e.name,e);}),e.forEach(function(e){i.has(e.name)||r(e);}),s}var ue={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return !t.some(function(e){return !(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){ void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?ue:r;return function(e,t,i){ void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},ue,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=false,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w$6(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=me(e);return g$6.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n);}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N$3(i),"fixed"===a.options.strategy),popper:T$3(i)},a.reset=false,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(true!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a);}else a.reset=false,s=-1;}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a);})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r());});})),n}),destroy:function(){d(),c=true;}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[];}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e);}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:true,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y$6(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,V);}),a&&l.addEventListener("resize",i.update,V),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,V);}),a&&l.removeEventListener("resize",i.update,V);}},data:{}},{name:"popperOffsets",enabled:true,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement});},data:{}},{name:"computeStyles",enabled:true,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_$4(t.placement),variation:q$3(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,X(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,X(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement});},data:{}},S$3,de,le,fe,U$3,{name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:true}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d});}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass);}setBoundary(e){return "string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:true,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]});}triggerUpdate(){this.popper.update();}hide(){this.popover.classList.remove(this.options.visibleClass);}}var be=i$3`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
7936
+ let s$2 = class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{});}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,true);}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return (i?.assignedNodes({flatten:true})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}};var r$3="top",o$3="bottom",n$3="right",a="left",l$3="auto",c$5=[r$3,o$3,n$3,a],p$7="start",d$3="end",f$7="viewport",h$6="popper",u$8=c$5.reduce(function(e,t){return e.concat([t+"-"+p$7,t+"-"+d$3])},[]),m$7=[].concat(c$5,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$7,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$4(e){return e?(e.nodeName||"").toLowerCase():null}function y$6(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w$6(e){return e instanceof y$6(e).Element||e instanceof Element}function b$3(e){return e instanceof y$6(e).HTMLElement||e instanceof HTMLElement}function x$3(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6(e).ShadowRoot||e instanceof ShadowRoot)}var S$3={name:"applyStyles",enabled:true,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b$3(r)&&v$4(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];false===t?r.removeAttribute(e):r.setAttribute(e,true===t?"":t);}));});},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b$3(s)&&v$4(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4(e){return e.split("-")[0]}var A$3=Math.max,O=Math.min,k$6=Math.round;function T$3(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function z$6(){return !/^((?!chrome|android).)*safari/i.test(T$3())}function E(e,t,i){ void 0===t&&(t=false),void 0===i&&(i=false);var s=e.getBoundingClientRect(),r=1,o=1;t&&b$3(e)&&(r=e.offsetWidth>0&&k$6(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&k$6(s.height)/e.offsetHeight||1);var n=(w$6(e)?y$6(e):window).visualViewport,a=!z$6()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return {width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function M$7(e){var t=E(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B$3(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3(i)){var s=t;do{if(s&&e.isSameNode(s))return true;s=s.parentNode||s.host;}while(s)}return false}function L(e){return y$6(e).getComputedStyle(e)}function R$3(e){return ["table","td","th"].indexOf(v$4(e))>=0}function H$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function C$3(e){return "html"===v$4(e)?e:e.assignedSlot||e.parentNode||(x$3(e)?e.host:null)||H$3(e)}function D(e){return b$3(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3(e){for(var t=y$6(e),i=D(e);i&&R$3(i)&&"static"===L(i).position;)i=D(i);return i&&("html"===v$4(i)||"body"===v$4(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(T$3());if(/Trident/i.test(T$3())&&b$3(e)&&"fixed"===L(e).position)return null;var i=C$3(e);for(x$3(i)&&(i=i.host);b$3(i)&&["html","body"].indexOf(v$4(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode;}return null}(e)||t}function P(e){return ["top","bottom"].indexOf(e)>=0?"x":"y"}function j(e,t,i){return A$3(e,O(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function q$3(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var F={name:"arrow",enabled:true,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_$4(i.placement),h=P(f),u=[a,n$3].indexOf(f)>=0?"height":"width";if(p&&d){var m=function(e,t){return I("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:q$3(e,c$5))}(l.padding,i),g=M$7(p),v="y"===h?r$3:a,y="y"===h?o$3:n$3,w=i.rects.reference[u]+i.rects.reference[h]-d[h]-i.rects.popper[u],b=d[h]-i.rects.reference[h],x=N$3(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,A=w/2-b/2,O=m[v],k=S-g[u]-m[y],T=S/2-g[u]/2+A,z=j(O,T,k),E=h;i.modifiersData[s]=((t={})[E]=z,t.centerOffset=z-T,t);}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B$3(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U$3(e){return e.split("-")[1]}var V={top:"auto",right:"auto",bottom:"auto",left:"auto"};function W(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,u=e.adaptive,m=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof m?m({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),A=p.hasOwnProperty("y"),O=a,T=r$3,z=window;if(u){var E=N$3(i),M="clientHeight",B="clientWidth";if(E===y$6(i)&&"static"!==L(E=H$3(i)).position&&"absolute"===f&&(M="scrollHeight",B="scrollWidth"),l===r$3||(l===a||l===n$3)&&c===d$3)T=o$3,x-=(g&&E===z&&z.visualViewport?z.visualViewport.height:E[M])-s.height,x*=h?1:-1;if(l===a||(l===r$3||l===o$3)&&c===d$3)O=n$3,w-=(g&&E===z&&z.visualViewport?z.visualViewport.width:E[B])-s.width,w*=h?1:-1;}var R,C=Object.assign({position:f},u&&V),D=true===m?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return {x:k$6(i*r)/r||0,y:k$6(s*r)/r||0}}({x:w,y:x},y$6(i)):{x:w,y:x};return w=D.x,x=D.y,h?Object.assign({},C,((R={})[T]=A?"0":"",R[O]=_?"0":"",R.transform=(z.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",R)):Object.assign({},C,((t={})[T]=A?x+"px":"",t[O]=_?w+"px":"",t.transform="",t))}var X={passive:true};var $={left:"right",right:"left",bottom:"top",top:"bottom"};function G(e){return e.replace(/left|right|bottom|top/g,function(e){return $[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y$6(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return E(H$3(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return /auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return ["html","body","#document"].indexOf(v$4(e))>=0?e.ownerDocument.body:b$3(e)&&Z(e)?e:ee(C$3(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y$6(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(C$3(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f$7?ie(function(e,t){var i=y$6(e),s=H$3(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=z$6();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop);}return {width:o,height:n,x:a+Q(e),y:l}}(e,i)):w$6(t)?function(e,t){var i=E(e,false,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=H$3(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=A$3(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=A$3(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return "rtl"===L(r||i).direction&&(a+=A$3(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(H$3(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(C$3(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3(e)?N$3(e):e;return w$6(i)?t.filter(function(e){return w$6(e)&&B$3(e,i)&&"body"!==v$4(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=A$3(r.top,t.top),t.right=O(r.right,t.right),t.bottom=O(r.bottom,t.bottom),t.left=A$3(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_$4(l):null,f=l?U$3(l):null,h=i.x+i.width/2-s.width/2,u=i.y+i.height/2-s.height/2;switch(c){case r$3:t={x:h,y:i.y-s.height};break;case o$3:t={x:h,y:i.y+i.height};break;case n$3:t={x:i.x+i.width,y:u};break;case a:t={x:i.x-s.width,y:u};break;default:t={x:i.x,y:i.y};}var m=c?P(c):null;if(null!=m){var g="y"===m?"height":"width";switch(f){case p$7:t[m]=t[m]-(i[g]/2-s[g]/2);break;case d$3:t[m]=t[m]+(i[g]/2-s[g]/2);}}return t}function ne(e,t){ void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,u=void 0===d?"clippingParents":d,m=i.rootBoundary,g=void 0===m?f$7:m,v=i.elementContext,y=void 0===v?h$6:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=I("number"!=typeof _?_:q$3(_,c$5)),O=y===h$6?"reference":h$6,k=e.rects.popper,T=e.elements[x?O:y],z=re(w$6(T)?T:T.contextElement||H$3(e.elements.popper),u,g,p),M=E(e.elements.reference),B=oe({reference:M,element:k,placement:a}),L=ie(Object.assign({},k,B)),R=y===h$6?L:M,C={top:z.top-R.top+A.top,bottom:R.bottom-z.bottom+A.bottom,left:z.left-R.left+A.left,right:R.right-z.right+A.right},D=e.modifiersData.offset;if(y===h$6&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n$3,o$3].indexOf(e)>=0?1:-1,i=[r$3,o$3].indexOf(e)>=0?"y":"x";C[e]+=N[i]*t;});}return C}function ae(e,t){ void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?m$7:l,d=U$3(s),f=d?a?u$8:u$8.filter(function(e){return U$3(e)===d}):c$5,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_$4(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,u=i.fallbackPlacements,m=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,A=_$4(S),O=u||(A===S||!b?[G(S)]:function(e){if(_$4(e)===l$3)return [];var t=G(e);return [Y(e),t,Y(t)]}(S)),k=[S].concat(O).reduce(function(e,i){return e.concat(_$4(i)===l$3?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:m,flipVariations:b,allowedAutoPlacements:x}):i)},[]),T=t.rects.reference,z=t.rects.popper,E=new Map,M=true,B=k[0],L=0;L<k.length;L++){var R=k[L],H=_$4(R),C=U$3(R)===p$7,D=[r$3,o$3].indexOf(H)>=0,N=D?"width":"height",P=ne(t,{placement:R,boundary:g,rootBoundary:v,altBoundary:y,padding:m}),j=D?C?n$3:a:C?o$3:r$3;T[N]>z[N]&&(j=G(j));var I=G(j),q=[];if(d&&q.push(P[H]<=0),h&&q.push(P[j]<=0,P[I]<=0),q.every(function(e){return e})){B=R,M=false;break}E.set(R,q);}if(M)for(var F=function(e){var t=k.find(function(t){var i=E.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},V=b?3:1;V>0;V--){if("break"===F(V))break}t.placement!==B&&(t.modifiersData[s]._skip=true,t.placement=B,t.reset=true);}},requiresIfExists:["offset"],data:{_skip:false}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return [r$3,n$3,o$3,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=m$7.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$3].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n$3].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c;}};var fe={name:"preventOverflow",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,u=i.rootBoundary,m=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:u,padding:g,altBoundary:m}),S=_$4(t.placement),k=U$3(t.placement),T=!k,z=P(S),E="x"===z?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,R=t.rects.popper,H="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,C="number"==typeof H?{mainAxis:H,altAxis:H}:Object.assign({mainAxis:0,altAxis:0},H),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,I={x:0,y:0};if(B){if(c){var q,F="y"===z?r$3:a,V="y"===z?o$3:n$3,W="y"===z?"height":"width",X=B[z],$=X+x[F],G=X-x[V],K=y?-R[W]/2:0,Y=k===p$7?L[W]:R[W],J=k===p$7?-R[W]:-L[W],Q=t.elements.arrow,Z=y&&Q?M$7(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[F],ie=ee[V],se=j(0,L[W],Z[W]),re=T?L[W]/2-K-se-te-C.mainAxis:Y-se-te-C.mainAxis,oe=T?-L[W]/2+K+se+ie+C.mainAxis:J+se+ie+C.mainAxis,ae=t.elements.arrow&&N$3(t.elements.arrow),le=ae?"y"===z?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(q=null==D?void 0:D[z])?q:0,pe=X+oe-ce,de=j(y?O($,X+re-ce-le):$,X,y?A$3(G,pe):G);B[z]=de,I[z]=de-X;}if(f){var fe,he="x"===z?r$3:a,ue="x"===z?o$3:n$3,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r$3,a].indexOf(S),be=null!=(fe=null==D?void 0:D[E])?fe:0,xe=we?ve:me-L[ge]-R[ge]-be+C.altAxis,Se=we?me+L[ge]+R[ge]-be-C.altAxis:ye,_e=y&&we?function(e,t,i){var s=j(e,t,i);return s>i?i:s}(xe,me,Se):j(y?xe:ve,me,y?Se:ye);B[E]=_e,I[E]=_e-me;}t.modifiersData[s]=I;}},requiresIfExists:["offset"]};function he(e,t,i){ void 0===i&&(i=false);var s,r,o=b$3(t),n=b$3(t)&&function(e){var t=e.getBoundingClientRect(),i=k$6(t.width)/e.offsetWidth||1,s=k$6(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=H$3(t),l=E(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$4(t)||Z(a))&&(c=(s=t)!==y$6(s)&&b$3(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3(t)?((p=E(t,true)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function ue(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s);}}),s.push(e);}return e.forEach(function(e){t.set(e.name,e);}),e.forEach(function(e){i.has(e.name)||r(e);}),s}var me={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return !t.some(function(e){return !(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){ void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?me:r;return function(e,t,i){ void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},me,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=false,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w$6(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=ue(e);return g$6.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n);}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N$3(i),"fixed"===a.options.strategy),popper:M$7(i)},a.reset=false,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(true!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a);}else a.reset=false,s=-1;}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a);})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r());});})),n}),destroy:function(){d(),c=true;}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[];}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e);}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:true,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y$6(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,X);}),a&&l.addEventListener("resize",i.update,X),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,X);}),a&&l.removeEventListener("resize",i.update,X);}},data:{}},{name:"popperOffsets",enabled:true,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement});},data:{}},{name:"computeStyles",enabled:true,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_$4(t.placement),variation:U$3(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,W(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,W(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement});},data:{}},S$3,de,le,fe,F,{name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:true}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d});}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass);}setBoundary(e){return "string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:true,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]});}triggerUpdate(){this.popper.update();}hide(){this.popover.classList.remove(this.options.visibleClass);}}var be=i$3`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
7938
7937
  `,xe=i$3`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host(:not([data-show])) .popover,:host([disabled]) .popover,:host([addSpace]) :host(:not([data-show])) .popover{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;padding:0;border:0}.util_insetNone{padding:0}.util_insetXxxs{padding:.125rem}.util_insetXxxs--stretch{padding:.25rem .125rem}.util_insetXxxs--squish{padding:0 .125rem}.util_insetXxs{padding:.25rem}.util_insetXxs--stretch{padding:.375rem .25rem}.util_insetXxs--squish{padding:.125rem .25rem}.util_insetXs{padding:.5rem}.util_insetXs--stretch{padding:.75rem .5rem}.util_insetXs--squish{padding:.25rem .5rem}.util_insetSm{padding:.75rem}.util_insetSm--stretch{padding:1.125rem .75rem}.util_insetSm--squish{padding:.375rem .75rem}.util_insetMd{padding:1rem}.util_insetMd--stretch{padding:1.5rem 1rem}.util_insetMd--squish{padding:.5rem 1rem}.util_insetLg{padding:1.5rem}.util_insetLg--stretch{padding:2.25rem 1.5rem}.util_insetLg--squish{padding:.75rem 1.5rem}.util_insetXl{padding:2rem}.util_insetXl--stretch{padding:3rem 2rem}.util_insetXl--squish{padding:1rem 2rem}.util_insetXxl{padding:3rem}.util_insetXxl--stretch{padding:4.5rem 3rem}.util_insetXxl--squish{padding:1.5rem 3rem}.util_insetXxxl{padding:4rem}.util_insetXxxl--stretch{padding:6rem 4rem}.util_insetXxxl--squish{padding:2rem 4rem}::slotted(*){white-space:normal}::slotted(*:hover){cursor:pointer}[data-trigger-placement]::slotted(*:hover){position:relative}[data-trigger-placement]::slotted(*:hover):before{position:absolute;left:0;display:block;width:100%;height:calc(var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem));content:""}[data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}[data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}:host([data-show]) .popover{z-index:var(--ds-depth-tooltip, 400)}:host([removeSpace]) .popover{margin:calc(-1 * (var(--ds-size-50, .25rem) + 1px)) 0!important}:host([addSpace]) .popover{margin:var(--ds-size-200, 1rem) 0!important}:host([addSpace]) [data-trigger-placement]::slotted(*:hover):before{height:var(--ds-size-500, 2.5rem)}:host([addSpace]) [data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * var(--ds-size-500, 2.5rem))}:host([addSpace]) [data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * var(--ds-size-500, 2.5rem))}.popover{display:inline-block;max-width:calc(100% - var(--ds-size-400, 2rem));border-radius:var(--ds-border-radius, .375rem)}@media screen and (min-width:576px){.popover{max-width:50%}}@media screen and (min-width:768px){.popover{max-width:40%}}@media screen and (min-width:1024px){.popover{max-width:27rem}}[data-popper-placement^=top]>.arrow{bottom:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=top]>.arrow:before{top:calc(-1 * var(--ds-size-200, 1rem));left:calc(-1 * var(--ds-size-75, .375rem));transform:rotate(45deg)}[data-popper-placement^=bottom]>.arrow{top:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=bottom]>.arrow:before{top:var(--ds-size-50, .25rem);right:calc(-1 * var(--ds-size-200, 1rem));transform:rotate(-135deg)}.arrow{position:relative;margin-top:-var(--ds-size-100,.5rem)}.arrow:before{position:absolute;width:var(--ds-size-150, .75rem);height:var(--ds-size-150, .75rem);content:""}
7939
7938
  `,Se=i$3`:host{--ds-auro-popover-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, .15));--ds-auro-popover-container-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-popover-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}
7940
- `;class _e extends i$1{constructor(){super(),this.placement="top",this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=false;}_initializeDefaults(){this.isPopoverVisible=false,this.runtimeUtils=new s$2;}static get properties(){return {addSpace:{type:Boolean,reflect:true},boundary:{type:String},disabled:{type:Boolean,reflect:true},for:{type:String,reflect:true},placement:{type:String},removeSpace:{type:Boolean,reflect:true}}}static get styles(){return [i$3`${xe}`,i$3`${be}`,i$3`${Se}`]}static register(e="auro-popover"){s$2.prototype.registerComponent(e,_e);}connectedCallback(){super.connectedCallback(),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle();}),this.addEventListener("touchstart",this._onTouchStart);}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("touchstart",this._onTouchStart),this.trigger&&(this._onTriggerMouseEnter&&this._eventTarget.removeEventListener("mouseenter",this._onTriggerMouseEnter),this._onTriggerMouseLeave&&this._eventTarget.removeEventListener("mouseleave",this._onTriggerMouseLeave),this._onTriggerFocus&&this.trigger.removeEventListener("focus",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("blur",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange),this.trigger.removeAttribute("aria-description"),this._addedTabIndex&&"0"===this.trigger.getAttribute("tabindex")&&this.trigger.removeAttribute("tabindex")),this._onHidePopover&&this.removeEventListener("hidePopover",this._onHidePopover),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper?.popper&&"function"==typeof this.popper.popper.destroy&&(this.popper.popper.destroy(),this.popper.popper=null);}firstUpdated(){if(this.runtimeUtils.handleComponentTagRename(this,"auro-popover"),this.for&&(this.trigger=document.querySelector(`#${this.for}`)||this.getRootNode().querySelector(`#${this.for}`)),this.trigger||([this.trigger]=this.shadowRoot.querySelector('slot[name="trigger"]').assignedElements()),!this.trigger)return;const e=this.trigger.tabIndex>=0,t=!!this.trigger.shadowRoot&&Boolean(this.trigger.shadowRoot.querySelector('button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])'));e||t||this.trigger.hasAttribute("tabindex")||(this.trigger.setAttribute("tabindex","0"),this._addedTabIndex=true);const i=this.shadowRoot.querySelector("slot:not([name])"),s=()=>i.assignedNodes({flatten:true}).map(e=>e.textContent??"").join(" ").replace(/\s+/g," ").trim();this.trigger.setAttribute("aria-description",s()),this._onSlotChange=()=>{this.trigger?.setAttribute("aria-description",s());},i.addEventListener("slotchange",this._onSlotChange),this.auroPopover=this.shadowRoot.querySelector("#popover"),this.popper=new we(this.trigger,this.auroPopover,this.placement,this.boundary),this._onBodyMouseover=e=>this.handleMouseoverEvent(e),this._onTriggerMouseEnter=()=>{this.toggleShow();},this._onTriggerMouseLeave=()=>{this.toggleHide();},this._onTriggerFocus=()=>{this.toggleShow();},this._onTriggerBlur=()=>{this.toggleHide();},this._onTriggerKeydown=e=>{const t=e.key.toLowerCase();this.isPopoverVisible&&("tab"!==t&&"escape"!==t||this.toggleHide())," "!==t&&"enter"!==t||(" "===t&&this._addedTabIndex&&e.preventDefault(),this.toggle());},this._onHidePopover=()=>{this.toggleHide();},this._eventTarget=this.trigger.parentElement.localName===this.localName?this:this.trigger,this._eventTarget.addEventListener("mouseenter",this._onTriggerMouseEnter),this._eventTarget.addEventListener("mouseleave",this._onTriggerMouseLeave),this.trigger.addEventListener("keydown",this._onTriggerKeydown),this.trigger.addEventListener("focus",this._onTriggerFocus),this.trigger.addEventListener("blur",this._onTriggerBlur),this.addEventListener("hidePopover",this._onHidePopover);}toggle(){this.popper&&(this.isPopoverVisible?this.toggleHide():this.toggleShow());}toggleHide(){this.isPopoverVisible=false,this.removeAttribute("data-show"),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper&&this.popper.hide();}toggleShow(){this.popper&&(this.popper.show(),this.isPopoverVisible=true,this.setAttribute("data-show","true"),document.body.addEventListener("mouseover",this._onBodyMouseover));}handleMouseoverEvent(e){this.isPopoverVisible&&!e.composedPath().includes(this)&&this.toggleHide();}updated(e){e.has("boundary")&&this.popper&&(this.popper.boundaryElement=this.popper.setBoundary(this.boundary));}render(){return b$5`
7941
- <div id="popover" class="popover util_insetLg body-default" part="popover">
7939
+ `;class _e extends i$1{constructor(){super(),this.placement="top",this.isPopoverVisible=false,this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=false;}_initializeDefaults(){this.runtimeUtils=new s$2;}static get properties(){return {addSpace:{type:Boolean,reflect:true},boundary:{type:String},disabled:{type:Boolean,reflect:true},for:{type:String,reflect:true},placement:{type:String},removeSpace:{type:Boolean,reflect:true},isPopoverVisible:{type:Boolean,reflect:true,attribute:"data-show",converter:{fromAttribute:e=>null!==e,toAttribute:e=>e?"true":null}}}}static get styles(){return [i$3`${xe}`,i$3`${be}`,i$3`${Se}`]}static register(e="auro-popover"){s$2.prototype.registerComponent(e,_e);}connectedCallback(){super.connectedCallback(),this.hasAttribute("role")||this.setAttribute("role","none"),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle();}),this.addEventListener("touchstart",this._onTouchStart);}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("touchstart",this._onTouchStart),this.trigger){this._onTriggerMouseEnter&&this._eventTarget.removeEventListener("mouseenter",this._onTriggerMouseEnter),this._onTriggerMouseLeave&&this._eventTarget.removeEventListener("mouseleave",this._onTriggerMouseLeave),this._onTriggerFocus&&this.trigger.removeEventListener("focusin",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("focusout",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange);for(const e of this._ariaDescriptionTargets||[this.trigger])e.removeAttribute("aria-description");this._addedTabIndex&&"0"===this.trigger.getAttribute("tabindex")&&this.trigger.removeAttribute("tabindex");}this._onHidePopover&&this.removeEventListener("hidePopover",this._onHidePopover),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper?.popper&&"function"==typeof this.popper.popper.destroy&&(this.popper.popper.destroy(),this.popper.popper=null);}firstUpdated(){this.runtimeUtils.handleComponentTagRename(this,"auro-popover"),this.for&&(this.trigger=document.querySelector(`#${this.for}`)||this.getRootNode().querySelector(`#${this.for}`)),this.trigger||([this.trigger]=this.shadowRoot.querySelector('slot[name="trigger"]').assignedElements()),this.trigger&&(this._setupAccessibility(),this._setupEventListeners(),this.isPopoverVisible&&this.popper&&(this.disabled?this.isPopoverVisible=false:(this.popper.show(),document.body.addEventListener("mouseover",this._onBodyMouseover))));}_setupEventListeners(){this.auroPopover=this.shadowRoot.querySelector("#popover"),this.popper=new we(this.trigger,this.auroPopover,this.placement,this.boundary),this._onBodyMouseover=e=>this.handleMouseoverEvent(e),this._onTriggerMouseEnter=()=>{this.toggleShow();},this._onTriggerMouseLeave=()=>{this.toggleHide();},this._onTriggerFocus=()=>{this.toggleShow();},this._onTriggerBlur=e=>{let t=e.relatedTarget,i=false;for(;t;){if(this.trigger.contains(t)||this.contains(t)){i=true;break}const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null;}i||this.toggleHide();},this._onTriggerKeydown=e=>{const t=e.key.toLowerCase();if(this.isPopoverVisible&&("tab"!==t&&"escape"!==t||this.toggleHide())," "===t||"enter"===t){if(e.target!==this.trigger&&!this._addedTabIndex)return;" "===t&&this._addedTabIndex&&e.preventDefault(),this.toggle();}},this._onHidePopover=()=>{this.toggleHide();},this._eventTarget=this.trigger.parentElement.localName===this.localName?this:this.trigger,this._eventTarget.addEventListener("mouseenter",this._onTriggerMouseEnter),this._eventTarget.addEventListener("mouseleave",this._onTriggerMouseLeave),this.trigger.addEventListener("keydown",this._onTriggerKeydown),this.trigger.addEventListener("focusin",this._onTriggerFocus),this.trigger.addEventListener("focusout",this._onTriggerBlur),this.addEventListener("hidePopover",this._onHidePopover);}_setupAccessibility(){const e=this.trigger.tabIndex>=0,t='button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"]), [contenteditable]:not([contenteditable="false"]), summary, iframe, audio[controls], video[controls]',i=e=>{if(e.tabIndex<0)return false;let t=e;for(;t;){if(t.closest("[hidden], [inert]"))return false;const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null;}return true};let s=[...this.trigger.querySelectorAll(t)].some(i);if(!s){const e=this.trigger.querySelectorAll("*");for(const r of e)if(r.localName.includes("-")&&(r.tabIndex>=0||r.shadowRoot&&[...r.shadowRoot.querySelectorAll(t)].some(i))){s=true;break}}!s&&this.trigger.localName.includes("-")&&this.trigger.shadowRoot&&(s=[...this.trigger.shadowRoot.querySelectorAll(t)].some(i)),e||s||this.trigger.hasAttribute("tabindex")||(this.trigger.setAttribute("tabindex","0"),this._addedTabIndex=true);const r=this.shadowRoot.querySelector("slot:not([name])"),o=()=>r.assignedNodes({flatten:true}).map(e=>e.textContent??"").join(" ").replace(/\s+/g," ").trim();if(this._ariaDescriptionTargets=[],!e&&s){const e=[...this.trigger.querySelectorAll(t)].filter(i);this._ariaDescriptionTargets.push(...e);const s=this.trigger.querySelectorAll("*");for(const r of s)if(r.localName.includes("-")&&!e.includes(r))if(r.tabIndex>=0)this._ariaDescriptionTargets.push(r);else if(r.shadowRoot){const e=[...r.shadowRoot.querySelectorAll(t)].filter(i);for(const t of e)this._ariaDescriptionTargets.push(t);}if(0===this._ariaDescriptionTargets.length){if(this.trigger.localName.includes("-")&&this.trigger.shadowRoot){const e=[...this.trigger.shadowRoot.querySelectorAll(t)].filter(i);this._ariaDescriptionTargets.push(...e);}0===this._ariaDescriptionTargets.length&&this._ariaDescriptionTargets.push(this.trigger);}}else this._ariaDescriptionTargets.push(this.trigger);const n=o();for(const e of this._ariaDescriptionTargets)e.setAttribute("aria-description",n);this._onSlotChange=()=>{const e=o();for(const t of this._ariaDescriptionTargets)t?.setAttribute("aria-description",e);},r.addEventListener("slotchange",this._onSlotChange);}toggle(){this.popper&&(this.isPopoverVisible?this.toggleHide():this.toggleShow());}toggleHide(){this.isPopoverVisible=false;}toggleShow(){this.popper&&!this.disabled&&(this.isPopoverVisible=true);}handleMouseoverEvent(e){this.isPopoverVisible&&!e.composedPath().includes(this)&&this.toggleHide();}updated(e){if(e.has("boundary")&&this.popper&&(this.popper.boundaryElement=this.popper.setBoundary(this.boundary)),e.has("isPopoverVisible")&&this.popper)if(this.isPopoverVisible){if(this.disabled)return void(this.isPopoverVisible=false);this.popper.show(),document.body.addEventListener("mouseover",this._onBodyMouseover);}else this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper.hide();e.has("disabled")&&this.disabled&&this.isPopoverVisible&&(this.isPopoverVisible=false);}render(){return b$5`
7940
+ <div
7941
+ id="popover"
7942
+ class="popover util_insetLg body-default"
7943
+ part="popover"
7944
+ role="tooltip"
7945
+ aria-hidden="${this.isPopoverVisible?"false":"true"}">
7942
7946
  <div id="arrow" class="arrow" data-popper-arrow></div>
7943
- <span role="tooltip"><slot></slot></span>
7947
+ <slot></slot>
7944
7948
  </div>
7945
7949
 
7946
- <span>
7950
+ <span role="presentation">
7947
7951
  <slot name="trigger" data-trigger-placement="${this.placement}"></slot>
7948
7952
  </span>
7949
7953
  `}}
@@ -7958,7 +7962,6 @@ class AuroCalendarCell extends i$1 {
7958
7962
 
7959
7963
  this.day = null;
7960
7964
  this.selected = false;
7961
- this.hovered = false;
7962
7965
  this.dateTo = null;
7963
7966
  this.dateFrom = null;
7964
7967
  this.month = null;
@@ -7966,11 +7969,12 @@ class AuroCalendarCell extends i$1 {
7966
7969
  this.max = null;
7967
7970
  this.disabled = false;
7968
7971
  this.disabledDays = [];
7969
- this.hoveredDate = null;
7970
7972
  this.isCurrentDate = false;
7971
7973
  this._locale = null;
7972
7974
  this.dateStr = null;
7973
7975
  this.renderForDateSlot = false; // When false, the numerical date will render vertically centered. When true, the date will render off-center to the top and leave room below for the slot content.
7976
+ this.active = false;
7977
+ this.hasPopoverContent = false;
7974
7978
 
7975
7979
  this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
7976
7980
 
@@ -7989,7 +7993,6 @@ class AuroCalendarCell extends i$1 {
7989
7993
  // ...super.properties,
7990
7994
  day: { type: Object },
7991
7995
  selected: { type: Boolean },
7992
- hovered: { type: Boolean },
7993
7996
  dateTo: { type: String },
7994
7997
  dateFrom: { type: String },
7995
7998
  month: { type: String },
@@ -8000,11 +8003,11 @@ class AuroCalendarCell extends i$1 {
8000
8003
  reflect: true
8001
8004
  },
8002
8005
  disabledDays: { type: Array },
8003
- hoveredDate: { type: String },
8004
8006
  isCurrentDate: { type: Boolean },
8005
8007
  locale: { type: Object },
8006
8008
  dateStr: { type: String },
8007
- renderForDateSlot: { type: Boolean }
8009
+ renderForDateSlot: { type: Boolean },
8010
+ hasPopoverContent: { type: Boolean }
8008
8011
  };
8009
8012
  }
8010
8013
 
@@ -8028,17 +8031,17 @@ class AuroCalendarCell extends i$1 {
8028
8031
  }
8029
8032
 
8030
8033
  /**
8031
- * Handles selected and hovered states of the calendar cell when the date changes.
8034
+ * Handles selected state of the calendar cell when the selection changes.
8035
+ * Also clears any imperative range preview classes so classMap is the
8036
+ * sole source of truth after a selection update.
8032
8037
  * @private
8033
8038
  * @param {Number} dateFrom - Depart date.
8034
8039
  * @param {Number} dateTo - Return date.
8035
- * @param {Number} hoveredDate - Hovered date.
8036
8040
  * @param {Object} day - An object containing the dateFrom and day of month values.
8037
8041
  * @returns {void}
8038
8042
  */
8039
- dateChanged(dateFrom, dateTo, hoveredDate, day) {
8043
+ dateChanged(dateFrom, dateTo, day) {
8040
8044
  this.selected = false;
8041
- this.hovered = false;
8042
8045
 
8043
8046
  const parsedDateFrom = parseInt(dateFrom, 10);
8044
8047
  const parsedDateTo = parseInt(dateTo, 10);
@@ -8050,10 +8053,6 @@ class AuroCalendarCell extends i$1 {
8050
8053
  if (day.date === departTimestamp || day.date === returnTimestamp) {
8051
8054
  this.selected = true;
8052
8055
  }
8053
-
8054
- if (((hoveredDate === day.date || day.date < hoveredDate) && day.date > parsedDateFrom && !parsedDateTo && !Number.isNaN(parsedDateFrom) && parsedDateFrom !== undefined && !this.selected) || (day.date > parsedDateFrom && day.date < parsedDateTo)) {
8055
- this.hovered = true;
8056
- }
8057
8056
  }
8058
8057
  }
8059
8058
 
@@ -8063,27 +8062,105 @@ class AuroCalendarCell extends i$1 {
8063
8062
  * @returns {void}
8064
8063
  */
8065
8064
  handleTap() {
8066
- if (!this.disabled) {
8065
+ if (!this.disabled && !this.isBlackout()) {
8067
8066
  this.datepicker.handleCellClick(this.day.date);
8068
8067
  }
8068
+
8069
+ // Set this cell as the active cell regardless of blackout status
8070
+ if (this.day) {
8071
+ this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
8072
+ bubbles: true,
8073
+ composed: true,
8074
+ detail: { date: this.day.date }
8075
+ }));
8076
+ }
8069
8077
  }
8070
8078
 
8071
8079
  /**
8072
8080
  * Handles user hover events and dispatches a custom event.
8081
+ * Does NOT set any reactive properties — the range preview is handled
8082
+ * imperatively by the calendar component to avoid O(N) re-renders.
8073
8083
  * @private
8074
8084
  * @returns {void}
8075
8085
  */
8076
8086
  handleHover() {
8077
- this.hovered = true;
8078
-
8079
- let _a;
8080
8087
  this.dispatchEvent(new CustomEvent('date-is-hovered', {
8081
- detail: { date: (_a = this.day) === null || _a === void 0 ? void 0 : _a.date },
8088
+ detail: { date: this.day?.date },
8089
+ }));
8090
+ }
8091
+
8092
+ /**
8093
+ * Handles focus events on the cell button.
8094
+ * Dispatches a lightweight event for the calendar to handle SR
8095
+ * announcements and range preview updates without triggering
8096
+ * any Lit lifecycle updates.
8097
+ * @private
8098
+ * @returns {void}
8099
+ */
8100
+ handleFocus() {
8101
+ this.dispatchEvent(new CustomEvent('calendar-cell-focused', {
8102
+ bubbles: true,
8103
+ composed: true,
8104
+ detail: { date: this.day?.date },
8082
8105
  }));
8083
8106
  }
8084
8107
 
8085
8108
  /**
8086
- * Checks if the current date is a valid date depending on the min and max values.
8109
+ * Checks if the current date is outside the valid min/max range.
8110
+ * Out-of-range cells are not focusable and are hidden from screen readers.
8111
+ * @private
8112
+ * @param {Object} day - An object containing the dateFrom and day of month values.
8113
+ * @param {Number} min - The minimum date value.
8114
+ * @param {Number} max - The maximum date value.
8115
+ * @returns {Boolean} - True if the date is out of range.
8116
+ */
8117
+ isOutOfRange(day, min, max) {
8118
+ if (day && day.date != null) {
8119
+ return day.date < min || day.date > max;
8120
+ }
8121
+ return false;
8122
+ }
8123
+
8124
+ /**
8125
+ * Checks if the current date is a blackout date (in disabledDays but within range).
8126
+ * Blackout cells are focusable but not selectable.
8127
+ * @private
8128
+ * @returns {Boolean} - True if the date is a blackout date.
8129
+ */
8130
+ isBlackout() {
8131
+ if (!this.day || this.day.date == null || this.isOutOfRange(this.day, this.min, this.max)) {
8132
+ return false;
8133
+ }
8134
+
8135
+ // Check against disabledDays timestamps (legacy path)
8136
+ if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
8137
+ if (this.disabledDays.findIndex(d => parseInt(d, 10) === this.day.date) !== -1) {
8138
+ return true;
8139
+ }
8140
+ }
8141
+
8142
+ // Check against blackoutDates (ISO format YYYY-MM-DD) on the datepicker
8143
+ const blackoutDates = this.datepicker?.blackoutDates;
8144
+
8145
+ if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
8146
+ const date = new Date(this.day.date * 1000);
8147
+ const yyyy = date.getFullYear();
8148
+ const mm = String(date.getMonth() + 1).padStart(2, '0');
8149
+ const dd = String(date.getDate()).padStart(2, '0');
8150
+ const cellDate = `${yyyy}-${mm}-${dd}`;
8151
+ if (blackoutDates.includes(cellDate)) {
8152
+ return true;
8153
+ }
8154
+ }
8155
+
8156
+ return false;
8157
+ }
8158
+
8159
+ /**
8160
+ * Checks if the current date is disabled based on min/max range or the
8161
+ * legacy disabledDays timestamp list. Sets the `disabled` attribute on the
8162
+ * host when the date falls outside the allowed range or appears in
8163
+ * disabledDays. Note: blackout dates are handled separately by `isBlackout()`.
8087
8164
  * @private
8088
8165
  * @param {Object} day - An object containing the dateFrom and day of month values.
8089
8166
  * @param {Number} min - The minimum date value.
@@ -8103,6 +8180,105 @@ class AuroCalendarCell extends i$1 {
8103
8180
  return false;
8104
8181
  }
8105
8182
 
8183
+ /**
8184
+ * Generates a unique cell ID in the format cell-YYYY-MM-DD.
8185
+ * @private
8186
+ * @returns {String} The unique cell ID.
8187
+ */
8188
+ getCellId() {
8189
+ if (!this.day || !this.day.date) return '';
8190
+ const date = new Date(this.day.date * 1000);
8191
+ const year = date.getFullYear();
8192
+ const month = String(date.getMonth() + 1).padStart(2, '0');
8193
+ const day = String(date.getDate()).padStart(2, '0');
8194
+ return `cell-${year}-${month}-${day}`;
8195
+ }
8196
+
8197
+ /**
8198
+ * Generates a localized aria-label for the cell button using Intl.DateTimeFormat.
8199
+ * Includes range position and blackout status.
8200
+ * @private
8201
+ * @returns {String} The aria-label string.
8202
+ */
8203
+ getAriaLabel() {
8204
+ if (!this.day || this.day.date === undefined) return '';
8205
+
8206
+ const date = new Date(this.day.date * 1000);
8207
+
8208
+ // Generate localized full date string using the configured locale
8209
+ const localeCode = this.locale?.code || undefined;
8210
+ const dateFormatter = new Intl.DateTimeFormat(localeCode, {
8211
+ weekday: 'long',
8212
+ year: 'numeric',
8213
+ month: 'long',
8214
+ day: 'numeric'
8215
+ });
8216
+
8217
+ let label = dateFormatter.format(date);
8218
+
8219
+ // Append date slot content (e.g. prices) so it is announced with the date.
8220
+ if (this.renderForDateSlot) {
8221
+ const dateSlotEl = this.querySelector(`[slot="date_${this.dateStr}"]`);
8222
+ if (dateSlotEl) {
8223
+ const text = dateSlotEl.innerText?.trim();
8224
+ if (text) {
8225
+ label += `, ${text}`;
8226
+ }
8227
+ }
8228
+ }
8229
+
8230
+ // appending popover content here so that it gets read in a logical order with the other date content.
8231
+ if (this.hasPopoverContent) {
8232
+ const popoverEl = this.querySelector(`[slot="popover_${this.dateStr}"]`);
8233
+ if (popoverEl) {
8234
+ label += `, ${popoverEl.innerText.trim()}`;
8235
+ }
8236
+ }
8237
+
8238
+ // Append range position label for range datepickers
8239
+ const rangePosition = this.getRangePosition();
8240
+ if (rangePosition) {
8241
+ label += `, ${rangePosition}`;
8242
+ }
8243
+
8244
+ // Append blackout label for blackout cells
8245
+ if (this.isBlackout()) {
8246
+ label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
8247
+ }
8248
+
8249
+ return label;
8250
+ }
8251
+
8252
+ /**
8253
+ * Determines the range position of this cell relative to the current selection.
8254
+ * @private
8255
+ * @returns {String|null} Range position label or null if not in range mode.
8256
+ */
8257
+ getRangePosition() {
8258
+ if (!this.datepicker || !this.datepicker.hasAttribute('range')) return null;
8259
+
8260
+ const parsedDateFrom = Number.parseInt(this.dateFrom, 10);
8261
+ if (!Number.isFinite(parsedDateFrom)) return null;
8262
+
8263
+ const departTimestamp = startOfDay(parsedDateFrom * 1000) / 1000;
8264
+ const dayDate = this.day.date;
8265
+
8266
+ const parsedDateTo = Number.parseInt(this.dateTo, 10);
8267
+ const hasDateTo = Number.isFinite(parsedDateTo);
8268
+ const returnTimestamp = hasDateTo ? startOfDay(parsedDateTo * 1000) / 1000 : null;
8269
+
8270
+ if (dayDate === departTimestamp) return this.datepicker.rangeLabelStart || 'range start';
8271
+
8272
+ if (hasDateTo && dayDate === returnTimestamp) return this.datepicker.rangeLabelEnd || 'range end';
8273
+
8274
+ if (dayDate < departTimestamp) return this.datepicker.rangeLabelBeforeRange || 'before range';
8275
+
8276
+ if (hasDateTo && dayDate > departTimestamp && dayDate < returnTimestamp) return this.datepicker.rangeLabelInRange || 'in range';
8277
+
8278
+ // After start date, no end date yet, or after end date
8279
+ return this.datepicker.rangeLabelAfterRange || 'after range';
8280
+ }
8281
+
8106
8282
  /**
8107
8283
  * Checks if the current date is the depart date.
8108
8284
  * @private
@@ -8264,9 +8440,9 @@ class AuroCalendarCell extends i$1 {
8264
8440
 
8265
8441
  if (popoverSlotContent) {
8266
8442
  this.appendChild(popoverSlotContent.cloneNode(true));
8267
- this.auroPopover.removeAttribute('disabled');
8443
+ this.hasPopoverContent = true;
8268
8444
  } else {
8269
- this.auroPopover.setAttribute('disabled', true);
8445
+ this.hasPopoverContent = false;
8270
8446
  }
8271
8447
  } catch (err) { // eslint-disable-line no-unused-vars
8272
8448
  // Error handling goes here
@@ -8282,88 +8458,266 @@ class AuroCalendarCell extends i$1 {
8282
8458
  return;
8283
8459
  }
8284
8460
  this.datepicker = calendar.datepicker;
8285
- this.datepicker.addEventListener('auroDatePicker-newSlotContent', () => {
8461
+ this._slotContentHandler = () => {
8286
8462
  this.handleSlotContent();
8463
+ // Force re-render so isBlackout()/aria-disabled reflect updated blackoutDates.
8464
+ this.requestUpdate();
8465
+ };
8466
+ this.datepicker.addEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
8467
+
8468
+ // Cache button reference for imperative class manipulation.
8469
+ this.updateComplete.then(() => {
8470
+ this._cachedButton = this.shadowRoot.querySelector('button.day');
8287
8471
  });
8288
8472
 
8473
+ // Trigger an initial update now that `this.datepicker` is assigned so
8474
+ // cells reflect blackout/slot state that was configured before first render.
8475
+ this.requestUpdate();
8476
+
8477
+ this.calendarMonth = calendarMonth;
8478
+ this.configurePopover();
8479
+ }
8480
+
8481
+ disconnectedCallback() {
8482
+ super.disconnectedCallback();
8483
+ if (this.datepicker && this._slotContentHandler) {
8484
+ this.datepicker.removeEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
8485
+ }
8486
+ }
8487
+
8488
+ /**
8489
+ * Configures the popover instance with the calendar month boundary.
8490
+ * Called from firstUpdated and updated because the popover element is only
8491
+ * rendered after hasPopoverContent becomes true (set by handleSlotContent).
8492
+ * @private
8493
+ * @returns {void}
8494
+ */
8495
+ configurePopover() {
8289
8496
  this.auroPopover = this.shadowRoot.querySelector(this.popoverTag._$litStatic$);
8290
8497
 
8291
- this.auroPopover.boundary = calendarMonth;
8498
+ if (this.auroPopover && this.calendarMonth) {
8499
+ this.auroPopover.boundary = this.calendarMonth;
8500
+ }
8292
8501
  }
8293
8502
 
8294
8503
  updated(properties) {
8295
- if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('hoveredDate') || properties.has('day')) {
8296
- this.dateChanged(this.dateFrom, this.dateTo, this.hoveredDate, this.day);
8504
+ if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('day')) {
8505
+ this.dateChanged(this.dateFrom, this.dateTo, this.day);
8297
8506
  }
8298
8507
 
8299
- this.setDateSlotName();
8300
- this.handleSlotContent();
8301
- }
8508
+ if (properties.has('day') && this.day) {
8509
+ this.setDateSlotName();
8510
+ this.handleSlotContent();
8302
8511
 
8303
- render() {
8304
- const buttonClasses = {
8305
- 'day': true,
8306
- 'body-lg': true,
8307
- 'currentDate': this.currentDate,
8308
- 'selected': this.selected,
8309
- 'inRange': this.hovered && this.isInRange(this.day, this.dateFrom, this.dateTo),
8310
- 'lastHoveredDate': this.isLastHoveredDate(this.day, this.dateFrom, this.dateTo, this.hoveredDate) && this.datepicker && this.datepicker.hasAttribute('range'),
8311
- 'disabled': this.isEnabled(this.day, this.min, this.max, this.disabledDays),
8312
- 'rangeDepartDate': this.isDepartDate(this.day, this.dateFrom) && (this.hoveredDate > this.dateFrom || this.dateTo),
8313
- 'rangeReturnDate': this.isReturnDate(this.day, this.dateFrom, this.dateTo),
8314
- 'reference': this.isReferenceDate(this.dateStr),
8315
- 'sameDateTrip': this.dateFrom === this.dateTo
8316
- };
8512
+ // Re-cache button reference when the day changes (cell may have re-rendered).
8513
+ this.updateComplete.then(() => {
8514
+ this._cachedButton = this.shadowRoot.querySelector('button.day');
8515
+ });
8317
8516
 
8318
- let _a, _b;
8319
- return u$a`
8320
- <${this.popoverTag}>
8321
- <slot name="popover_${this.dateStr}"></slot>
8322
- <button
8323
- slot="trigger"
8324
- @click="${this.handleTap}"
8325
- @mouseover="${this.handleHover}"
8326
- @focus="${this.handleHover}"
8327
- class="${e$4(buttonClasses)}"
8328
- ?disabled="${this.disabled}"
8329
- title="${this.getTitle((_a = this.day) === null || _a === void 0 ? void 0 : _a.date)}"
8330
- tabindex="-1">
8331
- <div class="buttonWrapper">
8332
- <div class="currentDayMarker">${(_b = this.day) === null || _b === void 0 ? void 0 : _b.title}</div>
8333
- <div class="dateSlot body-2xs" part="dateSlot">
8334
- <slot name="date_${this.dateStr}"></slot>
8335
- </div>
8336
- </div>
8337
- </button>
8338
- </${this.popoverTag}>
8339
- `;
8517
+ // Update host-level aria attributes for ariaActiveDescendantElement.
8518
+ this.updateHostAria();
8519
+ }
8520
+
8521
+ // Update host aria when selection changes (aria-selected, range labels)
8522
+ if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('selected')) {
8523
+ this.updateHostAria();
8524
+ }
8525
+
8526
+ // Configure popover when it first becomes rendered
8527
+ if (properties.has('hasPopoverContent') && this.hasPopoverContent) {
8528
+ this.updateComplete.then(() => this.configurePopover());
8529
+ }
8340
8530
  }
8341
- }
8342
8531
 
8343
- if (!customElements.get('auro-formkit-calendar-cell')) {
8344
- customElements.define('auro-formkit-calendar-cell', AuroCalendarCell);
8345
- }
8532
+ /**
8533
+ * Updates ARIA attributes on the host element so that
8534
+ * ariaActiveDescendantElement can expose cell info to the SR.
8535
+ * @private
8536
+ * @returns {void}
8537
+ */
8538
+ updateHostAria() {
8539
+ if (!this.day || this.day.date === undefined) return;
8346
8540
 
8347
- // See https://git.io/JJ6SJ for "How to document your components using JSDoc"
8541
+ const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
8542
+ if (outOfRange) {
8543
+ this.removeAttribute('role');
8544
+ this.removeAttribute('aria-label');
8545
+ return;
8546
+ }
8348
8547
 
8349
- /* eslint-disable no-magic-numbers, dot-location */
8548
+ // The host acts as the gridcell for ariaActiveDescendantElement.
8549
+ this.setAttribute('role', 'gridcell');
8550
+ this.setAttribute('aria-label', this.getAriaLabel());
8551
+ this.setAttribute('aria-selected', this.selected ? 'true' : 'false');
8350
8552
 
8351
- class AuroCalendarMonth extends RangeDatepickerCalendar {
8352
- static get styles() {
8353
- return [
8354
- // ...super.styles,
8355
- styleCss$6,
8356
- colorCss$6,
8357
- tokensCss$4
8358
- ];
8553
+ if (this.isBlackout()) {
8554
+ this.setAttribute('aria-disabled', 'true');
8555
+ } else {
8556
+ this.removeAttribute('aria-disabled');
8557
+ }
8359
8558
  }
8360
8559
 
8361
- static get properties() {
8362
- return {
8560
+ /**
8561
+ * Programmatically focuses the cell's interactive button element.
8562
+ * Uses focusVisible: true so the :focus-visible ring appears even when
8563
+ * the bib was opened via mouse click (which sets mouse input modality).
8564
+ * @returns {void}
8565
+ */
8566
+ focusButton() {
8567
+ const button = this._cachedButton || this.shadowRoot.querySelector('button:not([aria-hidden])');
8568
+ if (button) {
8569
+ button.focus({ focusVisible: true });
8570
+ }
8571
+ }
8363
8572
 
8364
- /**
8365
- * @private
8366
- */
8573
+ /**
8574
+ * Imperatively marks this cell as active (tabindex="0") without
8575
+ * triggering a Lit re-render.
8576
+ * @returns {void}
8577
+ */
8578
+ setActive() {
8579
+ this.active = true;
8580
+ const btn = this._cachedButton;
8581
+ if (btn) {
8582
+ btn.setAttribute('tabindex', '0');
8583
+ btn.classList.add('visualFocus');
8584
+ }
8585
+ }
8586
+
8587
+ /**
8588
+ * Imperatively marks this cell as inactive (tabindex="-1") without
8589
+ * triggering a Lit re-render.
8590
+ * @returns {void}
8591
+ */
8592
+ clearActive() {
8593
+ this.active = false;
8594
+ const btn = this._cachedButton;
8595
+ if (btn) {
8596
+ btn.setAttribute('tabindex', '-1');
8597
+ btn.classList.remove('visualFocus');
8598
+ }
8599
+ }
8600
+
8601
+ /**
8602
+ * Updates range preview classes imperatively (no Lit re-render).
8603
+ * Called by the calendar component when the hovered date changes
8604
+ * during range selection (dateFrom set, dateTo not yet set).
8605
+ * @param {Number} hoveredDate - Unix timestamp of the currently hovered/focused date.
8606
+ * @param {Number} dateFrom - Unix timestamp of the selected departure date.
8607
+ * @returns {void}
8608
+ */
8609
+ updateRangePreviewClasses(hoveredDate, dateFrom) {
8610
+ const btn = this._cachedButton;
8611
+ if (!btn || !this.day) return;
8612
+
8613
+ const dayDate = this.day.date;
8614
+ const departTimestamp = startOfDay(dateFrom * 1000) / 1000;
8615
+ const isInRange = dayDate > departTimestamp && dayDate < hoveredDate;
8616
+ const isLastHovered = dayDate === hoveredDate && hoveredDate > departTimestamp;
8617
+ const isDepartWithPreview = dayDate === departTimestamp && hoveredDate > departTimestamp;
8618
+
8619
+ btn.classList.toggle('inRange', isInRange);
8620
+ btn.classList.toggle('lastHoveredDate', isLastHovered);
8621
+ btn.classList.toggle('rangeDepartDate', isDepartWithPreview);
8622
+ }
8623
+
8624
+ /**
8625
+ * Clears all imperative range preview classes from the cell button.
8626
+ * Called when a selection occurs so classMap becomes the sole source of truth.
8627
+ * @returns {void}
8628
+ */
8629
+ clearRangePreviewClasses() {
8630
+ const btn = this._cachedButton;
8631
+ if (!btn) return;
8632
+
8633
+ btn.classList.remove('inRange', 'lastHoveredDate', 'rangeDepartDate');
8634
+ }
8635
+
8636
+ renderCellButton() {
8637
+ const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
8638
+ const blackout = this.isBlackout();
8639
+
8640
+ // Static and selection-driven classes only. Hover-driven classes
8641
+ // (inRange, lastHoveredDate, rangeDepartDate during preview) are
8642
+ // managed imperatively via updateRangePreviewClasses() to avoid
8643
+ // O(N) Lit re-renders on every focus/hover event.
8644
+ const buttonClasses = {
8645
+ 'day': true,
8646
+ 'body-lg': true,
8647
+ 'currentDate': this.isCurrentDate,
8648
+ 'selected': this.selected,
8649
+ 'inRange': this.datepicker?.hasAttribute('range') && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo),
8650
+ 'disabled': outOfRange,
8651
+ 'blackout': blackout,
8652
+ 'rangeDepartDate': this.datepicker?.hasAttribute('range') && this.isDepartDate(this.day, this.dateFrom) && this.dateTo,
8653
+ 'rangeReturnDate': this.datepicker?.hasAttribute('range') && this.isReturnDate(this.day, this.dateFrom, this.dateTo),
8654
+ 'reference': this.isReferenceDate(this.dateStr),
8655
+ 'sameDateTrip': this.datepicker?.hasAttribute('range') && this.dateFrom === this.dateTo
8656
+ };
8657
+
8658
+ return u$a`
8659
+ <button
8660
+ slot="trigger"
8661
+ id="${this.getCellId()}"
8662
+ @click="${outOfRange ? undefined : this.handleTap}"
8663
+ @mouseover="${outOfRange ? undefined : this.handleHover}"
8664
+ @focus="${outOfRange ? undefined : this.handleFocus}"
8665
+ class="${e$4(buttonClasses)}"
8666
+ ?disabled="${outOfRange}"
8667
+ aria-hidden="${outOfRange ? 'true' : A$4}"
8668
+ tabindex="${this.active ? '0' : '-1'}">
8669
+ <div class="buttonWrapper" aria-hidden="true">
8670
+ <div class="currentDayMarker">${this.day?.title || A$4}</div>
8671
+ </div>
8672
+ <div class="dateSlot body-2xs" part="dateSlot" aria-hidden="true" ?hidden="${!this.renderForDateSlot}">
8673
+ <slot name="date_${this.dateStr}"></slot>
8674
+ </div>
8675
+ </button>
8676
+ `;
8677
+ }
8678
+
8679
+ render() {
8680
+ const hasPopoverContent = this.hasPopoverContent;
8681
+
8682
+ if (hasPopoverContent) {
8683
+ return u$a`
8684
+ <${this.popoverTag}>
8685
+ <span aria-hidden="true"><slot name="popover_${this.dateStr}"></slot></span>
8686
+ ${this.renderCellButton()}
8687
+ </${this.popoverTag}>
8688
+ `;
8689
+ }
8690
+
8691
+ return u$a`
8692
+ ${this.renderCellButton()}
8693
+ `;
8694
+ }
8695
+ }
8696
+
8697
+ if (!customElements.get('auro-formkit-calendar-cell')) {
8698
+ customElements.define('auro-formkit-calendar-cell', AuroCalendarCell);
8699
+ }
8700
+
8701
+ // See https://git.io/JJ6SJ for "How to document your components using JSDoc"
8702
+
8703
+ /* eslint-disable no-magic-numbers, dot-location */
8704
+
8705
+ class AuroCalendarMonth extends RangeDatepickerCalendar {
8706
+ static get styles() {
8707
+ return [
8708
+ // ...super.styles,
8709
+ styleCss$6,
8710
+ colorCss$6,
8711
+ tokensCss$4
8712
+ ];
8713
+ }
8714
+
8715
+ static get properties() {
8716
+ return {
8717
+
8718
+ /**
8719
+ * @private
8720
+ */
8367
8721
  monthFirst: {
8368
8722
  type: Boolean,
8369
8723
  reflect: true
@@ -8403,16 +8757,28 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8403
8757
  return this.monthNames[month - 1];
8404
8758
  }
8405
8759
 
8760
+ /**
8761
+ * Returns the unique heading ID for this month, used by aria-labelledby.
8762
+ * @private
8763
+ * @returns {String} The heading ID.
8764
+ */
8765
+ getHeadingId() {
8766
+ return `month-heading-${this.month}-${this.year}`;
8767
+ }
8768
+
8406
8769
  /**
8407
8770
  * Determines the current month name based on locale.
8771
+ * Also builds parallel arrays of full day names for abbr attributes.
8408
8772
  * This is a rewrite of the function used in the class RangeDatepickerCalendar and should not be removed from here.
8409
8773
  * @private
8410
8774
  * @returns {void}
8411
8775
  */
8412
8776
  localeChanged() {
8413
8777
  const dayNamesOfTheWeek = [];
8778
+ const dayFullNames = [];
8414
8779
  for (let int = 0; int < 7; int += 1) {
8415
8780
  dayNamesOfTheWeek.push(this.locale.localize.day(int, { width: 'narrow' }));
8781
+ dayFullNames.push(this.locale.localize.day(int, { width: 'long' }));
8416
8782
  }
8417
8783
  const firstDayOfWeek = this.locale.options.weekStartsOn
8418
8784
  ? this.locale.options.weekStartsOn
@@ -8423,6 +8789,139 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8423
8789
  .splice(firstDayOfWeek, dayNamesOfTheWeek.length)
8424
8790
  .concat(tmp);
8425
8791
  this.dayNamesOfTheWeek = newDayNamesOfTheWeek;
8792
+
8793
+ const tmpFull = dayFullNames.slice().splice(0, firstDayOfWeek);
8794
+ const newDayFullNames = dayFullNames
8795
+ .slice()
8796
+ .splice(firstDayOfWeek, dayFullNames.length)
8797
+ .concat(tmpFull);
8798
+ this.dayFullNames = newDayFullNames;
8799
+ }
8800
+
8801
+ /**
8802
+ * Renders a day-of-week header with abbr attribute for the full day name.
8803
+ * @private
8804
+ * @param {String} dayOfWeek - The short day name.
8805
+ * @param {Number} index - The index in the dayNamesOfTheWeek array.
8806
+ * @returns {Object} The header HTML.
8807
+ */
8808
+ renderDayOfWeek(dayOfWeek, index) {
8809
+ const fullName = this.dayFullNames ? this.dayFullNames[index] : dayOfWeek;
8810
+ return b$5`<div class="th body-default"><abbr title="${fullName}">${dayOfWeek}</abbr></div>`;
8811
+ }
8812
+
8813
+ /**
8814
+ * Returns all focusable cell elements (enabled + blackout, not out-of-range) in this month.
8815
+ * @returns {Array} Array of auro-formkit-calendar-cell elements.
8816
+ */
8817
+ getFocusableCells() {
8818
+ const cells = Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-cell'));
8819
+ return cells.filter(cell => {
8820
+ if (!cell.day) return false;
8821
+ return !cell.isOutOfRange(cell.day, cell.min, cell.max);
8822
+ });
8823
+ }
8824
+
8825
+ /**
8826
+ * Overrides the base class handler to prevent setting `this.hoveredDate`
8827
+ * as a reactive property. Instead, just dispatches the event upward so
8828
+ * the calendar can handle range preview imperatively.
8829
+ * @private
8830
+ * @param {CustomEvent} event - The date-is-hovered event from a cell.
8831
+ * @returns {void}
8832
+ */
8833
+ handleDateHovered(event) {
8834
+ this.dispatchEvent(new CustomEvent('hovered-date-changed', {
8835
+ detail: { value: event.detail.date },
8836
+ }));
8837
+ }
8838
+
8839
+ /**
8840
+ * Handles arrow key navigation within the month grid.
8841
+ * Dispatches a cross-month navigation event when the boundary is reached.
8842
+ * @private
8843
+ * @param {KeyboardEvent} event - The keyboard event.
8844
+ * @returns {void}
8845
+ */
8846
+ handleGridKeyDown(event) {
8847
+ const { key } = event;
8848
+ const arrowKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp'];
8849
+
8850
+ if (!arrowKeys.includes(key)) return;
8851
+
8852
+ event.preventDefault();
8853
+
8854
+ const focusableCells = this.getFocusableCells();
8855
+ if (focusableCells.length === 0) return;
8856
+
8857
+ // Find the currently active cell within this month
8858
+ const activeCell = focusableCells.find(cell => cell.active);
8859
+ if (!activeCell) return;
8860
+
8861
+ const activeIndex = focusableCells.indexOf(activeCell);
8862
+ let targetCell = null;
8863
+
8864
+ if (key === 'ArrowRight') {
8865
+ if (activeIndex < focusableCells.length - 1) {
8866
+ targetCell = focusableCells[activeIndex + 1];
8867
+ } else {
8868
+ // At end of month, request cross-month navigation
8869
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8870
+ bubbles: true,
8871
+ composed: true,
8872
+ detail: { direction: 'next', fromDate: activeCell.day.date, key }
8873
+ }));
8874
+ return;
8875
+ }
8876
+ } else if (key === 'ArrowLeft') {
8877
+ if (activeIndex > 0) {
8878
+ targetCell = focusableCells[activeIndex - 1];
8879
+ } else {
8880
+ // At start of month, request cross-month navigation
8881
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8882
+ bubbles: true,
8883
+ composed: true,
8884
+ detail: { direction: 'prev', fromDate: activeCell.day.date, key }
8885
+ }));
8886
+ return;
8887
+ }
8888
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
8889
+ // Find the target day (same day-of-week, +/- 7 days)
8890
+ // Use Date arithmetic instead of fixed seconds to handle DST correctly
8891
+ const increment = key === 'ArrowDown' ? 7 : -7;
8892
+ const currentDate = new Date(activeCell.day.date * 1000);
8893
+ currentDate.setDate(currentDate.getDate() + increment);
8894
+ currentDate.setHours(0, 0, 0, 0);
8895
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
8896
+
8897
+ // Look for the target date in this month's focusable cells
8898
+ targetCell = focusableCells.find(cell => cell.day.date === targetDate);
8899
+
8900
+ if (!targetCell) {
8901
+ // Target is in another month or all cells in that direction are disabled
8902
+ const direction = key === 'ArrowDown' ? 'next' : 'prev';
8903
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8904
+ bubbles: true,
8905
+ composed: true,
8906
+ detail: { direction, fromDate: activeCell.day.date, key }
8907
+ }));
8908
+ return;
8909
+ }
8910
+ }
8911
+
8912
+ if (targetCell) {
8913
+ this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
8914
+ bubbles: true,
8915
+ composed: true,
8916
+ detail: { date: targetCell.day.date }
8917
+ }));
8918
+ }
8919
+ }
8920
+
8921
+ renderWeek(week) {
8922
+ return b$5`
8923
+ <div class="tr" role="row">${week.map((day) => this.renderDay(day))}</div>
8924
+ `;
8426
8925
  }
8427
8926
 
8428
8927
  renderDay(day) {
@@ -8435,7 +8934,6 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8435
8934
  .min="${this.min}"
8436
8935
  .max="${this.max}"
8437
8936
  .month="${this.month}"
8438
- .hoveredDate="${this.hoveredDate}"
8439
8937
  .dateTo="${this.dateTo}"
8440
8938
  .dateFrom="${this.dateFrom}"
8441
8939
  .locale="${this.locale}"
@@ -8446,7 +8944,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8446
8944
  >
8447
8945
  </auro-formkit-calendar-cell>
8448
8946
  `
8449
- : null}
8947
+ : b$5`<div aria-hidden="true" inert></div>`}
8450
8948
  </div>
8451
8949
  `;
8452
8950
  }
@@ -8457,10 +8955,10 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8457
8955
  var _a, _b;
8458
8956
 
8459
8957
  return b$5 `
8460
- <div>
8958
+ <div aria-labelledby="${this.getHeadingId()}">
8461
8959
  <div class="header">
8462
8960
  ${this.renderPrevButton()}
8463
- <div class="headerTitle heading-xs">
8961
+ <div class="headerTitle heading-xs" id="${this.getHeadingId()}" aria-live="polite" aria-atomic="true">
8464
8962
  ${this.monthFirst ? b$5`
8465
8963
  <div>${this.computeCurrentMonthName(this.month)}</div>
8466
8964
  <div>${this.renderYear()}</div>
@@ -8472,13 +8970,13 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8472
8970
  ${this.renderNextButton()}
8473
8971
  </div>
8474
8972
 
8475
- <div class="table">
8476
- <div class="thead">
8973
+ <div class="table" role="grid" aria-labelledby="${this.getHeadingId()}" @keydown="${this.handleGridKeyDown}">
8974
+ <div class="thead" aria-hidden="true">
8477
8975
  <div class="tr">
8478
- ${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(dayNameOfWeek => this.renderDayOfWeek(dayNameOfWeek))}
8976
+ ${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map((dayNameOfWeek, index) => this.renderDayOfWeek(dayNameOfWeek, index))}
8479
8977
  </div>
8480
8978
  </div>
8481
- <div class="tbody">
8979
+ <div class="tbody" role="rowgroup">
8482
8980
  ${(_b = this.daysOfMonth) === null || _b === void 0 ? void 0 : _b.map(week => this.renderWeek(week))}
8483
8981
  </div>
8484
8982
  </div>
@@ -9177,6 +9675,14 @@ class AuroBibtemplate extends i$1 {
9177
9675
  large: {
9178
9676
  type: Boolean,
9179
9677
  reflect: true
9678
+ },
9679
+
9680
+ /**
9681
+ * If declared, the footer slot will be rendered even when not in fullscreen mode.
9682
+ */
9683
+ showFooter: {
9684
+ type: Boolean,
9685
+ reflect: true
9180
9686
  }
9181
9687
  };
9182
9688
  }
@@ -9279,7 +9785,7 @@ class AuroBibtemplate extends i$1 {
9279
9785
  <slot></slot>
9280
9786
  </div>
9281
9787
 
9282
- ${this.isFullscreen ? u$a`
9788
+ ${this.isFullscreen || this.showFooter ? u$a`
9283
9789
  <div id="footerContainer">
9284
9790
  <slot name="footer"></slot>
9285
9791
  </div>` : null}
@@ -9288,7 +9794,7 @@ class AuroBibtemplate extends i$1 {
9288
9794
  }
9289
9795
  }
9290
9796
 
9291
- var formkitVersion$2 = '202605201646';
9797
+ var formkitVersion$2 = '202605210326';
9292
9798
 
9293
9799
  let l$1 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[.]/g,"_"),o}generateTag(o,s,a){const r=this.generateElementName(o,s),i=i$5`${s$5(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1 = class d{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}getSlotText(t,e){const o=t.shadowRoot?.querySelector(`slot[name="${e}"]`),s=(o?.assignedNodes({flatten:true})||[]).map(t=>t.textContent?.trim()).join(" ").trim();return s||null}};let h$4 = class h{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}};var c$3=i$3`:host{color:var(--ds-auro-loader-color)}:host>span{background-color:var(--ds-auro-loader-background-color);border-color:var(--ds-auro-loader-border-color)}:host([onlight]),:host([appearance=brand]){--ds-auro-loader-color: var(--ds-basic-color-brand-primary, #01426a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-loader-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([orbit])>span{--ds-auro-loader-background-color: transparent}:host([orbit])>span:nth-child(1){--ds-auro-loader-border-color: currentcolor;opacity:.25}:host([orbit])>span:nth-child(2){--ds-auro-loader-border-color: currentcolor;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
9294
9800
  `,u$6=i$3`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}:host,:host>span{position:relative}:host{width:2rem;height:2rem;display:inline-block;font-size:0}:host>span{position:absolute;display:inline-block;float:none;top:0;left:0;width:2rem;height:2rem;border-radius:100%;border-style:solid;border-width:0;box-sizing:border-box}:host([xs]),:host([xs])>span{width:1.2rem;height:1.2rem}:host([sm]),:host([sm])>span{width:3rem;height:3rem}:host([md]),:host([md])>span{width:5rem;height:5rem}:host([lg]),:host([lg])>span{width:8rem;height:8rem}:host{--margin: .375rem;--margin-xs: .2rem;--margin-sm: .5rem;--margin-md: .75rem;--margin-lg: 1rem}:host([pulse]),:host([pulse])>span{position:relative}:host([pulse]){width:calc(3rem + var(--margin) * 6);height:calc(1rem + var(--margin) * 2)}:host([pulse])>span{width:1rem;height:1rem;margin:var(--margin);animation:pulse 1.5s ease infinite}:host([pulse][xs]){width:calc(1.95rem + var(--margin-xs) * 6);height:calc(.65rem + var(--margin-xs) * 2)}:host([pulse][xs])>span{margin:var(--margin-xs);width:.65rem;height:.65rem}:host([pulse][sm]){width:calc(6rem + var(--margin-sm) * 6);height:calc(2rem + var(--margin-sm) * 2)}:host([pulse][sm])>span{margin:var(--margin-sm);width:2rem;height:2rem}:host([pulse][md]){width:calc(9rem + var(--margin-md) * 6);height:calc(3rem + var(--margin-md) * 2)}:host([pulse][md])>span{margin:var(--margin-md);width:3rem;height:3rem}:host([pulse][lg]){width:calc(15rem + var(--margin-lg) * 6);height:calc(5rem + var(--margin-lg) * 2)}:host([pulse][lg])>span{margin:var(--margin-lg);width:5rem;height:5rem}:host([pulse])>span:nth-child(1){animation-delay:-.4s}:host([pulse])>span:nth-child(2){animation-delay:-.2s}:host([pulse])>span:nth-child(3){animation-delay:0ms}@keyframes pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}:host([orbit]),:host([orbit])>span{opacity:1}:host([orbit])>span{border-width:5px}:host([orbit])>span:nth-child(2){animation:orbit 2s linear infinite}:host([orbit][sm])>span{border-width:8px}:host([orbit][md])>span{border-width:13px}:host([orbit][lg])>span{border-width:21px}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host([ringworm])>svg{animation:rotate 2s linear infinite;height:100%;width:100%;stroke:currentcolor;stroke-width:8}:host([ringworm]) .path{stroke-dashoffset:0;animation:ringworm 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes ringworm{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}:host([laser]){position:static;width:100%;display:block;height:0;overflow:hidden;font-size:unset}:host([laser])>span{position:fixed;width:100%;height:.25rem;border-radius:0;z-index:100}:host([laser])>span:nth-child(1){border-color:currentcolor;opacity:.25}:host([laser])>span:nth-child(2){border-color:currentcolor;animation:laser 2s linear infinite;opacity:1;width:50%}:host([laser][sm])>span:nth-child(2){width:20%}:host([laser][md])>span:nth-child(2){width:30%}:host([laser][lg])>span:nth-child(2){width:50%;animation-duration:1.5s}:host([laser][xl])>span:nth-child(2){width:80%;animation-duration:1.5s}@keyframes laser{0%{left:-100%}to{left:110%}}:host>.no-animation{display:none}@media (prefers-reduced-motion: reduce){:host{display:flex;align-items:center;justify-content:center}:host>span{opacity:1}:host>.loader{display:none}:host>svg{display:none}:host>.no-animation{display:block}}
@@ -9386,6 +9892,13 @@ class AuroCalendar extends RangeDatepicker {
9386
9892
  this.largeFullscreenHeadline = false;
9387
9893
  this.isFullscreen = false;
9388
9894
 
9895
+ /**
9896
+ * The date of the currently active cell (Unix timestamp).
9897
+ * Only one cell across the entire calendar has tabindex="0" at a time.
9898
+ * @private
9899
+ */
9900
+ this.activeCellDate = null;
9901
+
9389
9902
  /**
9390
9903
  * @private
9391
9904
  */
@@ -9551,6 +10064,8 @@ class AuroCalendar extends RangeDatepicker {
9551
10064
  */
9552
10065
  handlePrevMonth() {
9553
10066
  this.utilCal.handleMonthChange(this, 'prev');
10067
+ this.updateActiveCellForVisibleMonth();
10068
+ this.announceMonthChange();
9554
10069
  }
9555
10070
 
9556
10071
  /**
@@ -9560,6 +10075,38 @@ class AuroCalendar extends RangeDatepicker {
9560
10075
  */
9561
10076
  handleNextMonth() {
9562
10077
  this.utilCal.handleMonthChange(this, 'next');
10078
+ this.updateActiveCellForVisibleMonth();
10079
+ this.announceMonthChange();
10080
+ }
10081
+
10082
+ /**
10083
+ * Announces the current month and year via the live region after navigation.
10084
+ * @private
10085
+ * @returns {void}
10086
+ */
10087
+ announceMonthChange() {
10088
+ const date = new Date(this.centralDate);
10089
+ const localeCode = this.locale?.code || undefined;
10090
+ const formatter = new Intl.DateTimeFormat(localeCode, { month: 'long', year: 'numeric' });
10091
+ this.announceSelection(formatter.format(date));
10092
+ }
10093
+
10094
+ /**
10095
+ * Recomputes and sets the active cell for the newly visible month after
10096
+ * month navigation. Without this, activeCellDate can point at a date in
10097
+ * the old month, leaving no tabindex="0" cell in the grid.
10098
+ * @private
10099
+ * @returns {void}
10100
+ */
10101
+ updateActiveCellForVisibleMonth() {
10102
+ // Skip the dateFrom shortcut so the active cell lands in the newly
10103
+ // visible month rather than jumping back to the selected date's month.
10104
+ this.activeCellDate = this.computeActiveDate({ skipDateFrom: true });
10105
+ this.updateComplete.then(() => {
10106
+ if (this.activeCellDate != null) {
10107
+ this.setActiveCell(this.activeCellDate);
10108
+ }
10109
+ });
9563
10110
  }
9564
10111
 
9565
10112
  /**
@@ -9667,6 +10214,778 @@ class AuroCalendar extends RangeDatepicker {
9667
10214
  this.utilCal.scrollMonthIntoView(this, date, this.format);
9668
10215
  }
9669
10216
 
10217
+ /**
10218
+ * Gets all rendered month components.
10219
+ * @private
10220
+ * @returns {Array} Array of auro-formkit-calendar-month elements.
10221
+ */
10222
+ getMonthComponents() {
10223
+ return Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-month'));
10224
+ }
10225
+
10226
+ /**
10227
+ * Gets all focusable cells across all rendered months.
10228
+ * @private
10229
+ * @returns {Array} Array of auro-formkit-calendar-cell elements.
10230
+ */
10231
+ getAllFocusableCells() {
10232
+ const months = this.getMonthComponents();
10233
+ let cells = [];
10234
+ months.forEach(month => {
10235
+ cells = cells.concat(month.getFocusableCells());
10236
+ });
10237
+ return cells;
10238
+ }
10239
+
10240
+ /**
10241
+ * Sets the active cell across all months. Only one cell has tabindex="0" at a time.
10242
+ * Uses imperative DOM manipulation — no Lit re-render triggered.
10243
+ * Also updates ariaActiveDescendantElement on the grid wrapper so
10244
+ * screen readers announce the active cell without moving DOM focus.
10245
+ * @param {Number} date - Unix timestamp of the cell to activate.
10246
+ * @returns {void}
10247
+ */
10248
+ setActiveCell(date) {
10249
+ const allCells = this.getAllFocusableCells();
10250
+
10251
+ let newActiveCell = null;
10252
+ allCells.forEach(cell => {
10253
+ if (cell.day && cell.day.date === date) {
10254
+ cell.setActive();
10255
+ newActiveCell = cell;
10256
+ } else if (cell.active) {
10257
+ cell.clearActive();
10258
+ }
10259
+ });
10260
+
10261
+ this.activeCellDate = date;
10262
+
10263
+ // Update the proxy element that aria-activedescendant references.
10264
+ // The proxy lives in the same shadow root as the grid wrapper, so
10265
+ // string-based aria-activedescendant works reliably with all SRs.
10266
+ if (newActiveCell) {
10267
+ const proxy = this.shadowRoot.querySelector('#activeDescendantProxy');
10268
+ if (proxy) {
10269
+ proxy.setAttribute('aria-label', newActiveCell.getAriaLabel());
10270
+ proxy.setAttribute('aria-selected', newActiveCell.selected ? 'true' : 'false');
10271
+ if (newActiveCell.isCurrentDate) {
10272
+ proxy.setAttribute('aria-current', 'date');
10273
+ } else {
10274
+ proxy.removeAttribute('aria-current');
10275
+ }
10276
+ if (newActiveCell.isBlackout()) {
10277
+ proxy.setAttribute('aria-disabled', 'true');
10278
+ } else {
10279
+ proxy.removeAttribute('aria-disabled');
10280
+ }
10281
+ }
10282
+ }
10283
+ }
10284
+
10285
+ /**
10286
+ * Focuses the calendar grid wrapper and sets the active cell.
10287
+ * DOM focus stays on the grid wrapper; ariaActiveDescendantElement
10288
+ * tells the screen reader which cell is "active".
10289
+ * @returns {void}
10290
+ */
10291
+ focusActiveCell() {
10292
+ if (this.activeCellDate != null) {
10293
+ this.setActiveCell(this.activeCellDate);
10294
+ }
10295
+
10296
+ const gridWrapper = this.shadowRoot.querySelector('#calendarGrid');
10297
+ if (gridWrapper) {
10298
+ gridWrapper.focus({ focusVisible: true });
10299
+ }
10300
+ }
10301
+
10302
+ /**
10303
+ * Computes the initial active date from data properties alone — no DOM required.
10304
+ * Priority:
10305
+ * 1. Selected date (dateFrom) if within range
10306
+ * 2. Today's date if not disabled (in-range and not blackout)
10307
+ * 3. First future non-disabled date (scans day-by-day from today up to 1 year)
10308
+ * 4. First previous non-disabled date (scans day-by-day from today up to 1 year)
10309
+ * 5. First enabled date in finite [min, max] range
10310
+ * 5b. First enabled date scanning forward from finite min (unbounded max)
10311
+ * 5c. First enabled date scanning backward from finite max (unbounded min)
10312
+ * 6. First in-range date (even if blackout) so focus can land somewhere
10313
+ * 7. undefined — no valid target
10314
+ *
10315
+ * @private
10316
+ * @param {Object} [options] - Optional settings.
10317
+ * @param {boolean} [options.skipDateFrom=false] - When true, skip the selected-date
10318
+ * shortcut (step 1). Used after month navigation so the active cell lands in the
10319
+ * newly visible month instead of jumping back to the selected date's month.
10320
+ * @returns {Number|undefined} Unix timestamp (seconds) of the date to activate, or undefined.
10321
+ */
10322
+ computeActiveDate(options = {}) {
10323
+ const MAX_SCAN_DAYS = 366; // scan at most ~1 year in each direction
10324
+
10325
+ /**
10326
+ * Adds days to a timestamp using Date arithmetic to handle DST correctly.
10327
+ * Returns a local-midnight-aligned timestamp in seconds.
10328
+ */
10329
+ const addDays = (ts, days) => {
10330
+ const d = new Date(ts * 1000);
10331
+ d.setDate(d.getDate() + days);
10332
+ d.setHours(0, 0, 0, 0);
10333
+ return Math.floor(d.getTime() / 1000);
10334
+ };
10335
+
10336
+ const rawMin = Number(this.min);
10337
+ const rawMax = Number(this.max);
10338
+
10339
+ // When min/max are NaN (no minDate/maxDate configured), treat as unbounded.
10340
+ const minTs = Number.isFinite(rawMin) ? rawMin : -Infinity;
10341
+ const maxTs = Number.isFinite(rawMax) ? rawMax : Infinity;
10342
+
10343
+ // Build a Set of blackout timestamps for O(1) lookup.
10344
+ const blackoutSet = new Set(
10345
+ (this.disabledDays || []).map(d => parseInt(d, 10))
10346
+ );
10347
+
10348
+ // Also include ISO-format blackoutDates from the datepicker if available.
10349
+ // Parse YYYY-MM-DD as local date to avoid UTC shift issues.
10350
+ const isoBlackouts = this.datepicker?.blackoutDates;
10351
+ if (Array.isArray(isoBlackouts)) {
10352
+ for (const isoStr of isoBlackouts) {
10353
+ const parts = isoStr.split('-');
10354
+ const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
10355
+ if (Number.isFinite(ts)) blackoutSet.add(ts);
10356
+ }
10357
+ }
10358
+
10359
+ /**
10360
+ * A date (unix timestamp in seconds, midnight-aligned) is "enabled" when
10361
+ * it is within [min, max] AND not a blackout day.
10362
+ */
10363
+ const isEnabled = (ts) => ts >= minTs && ts <= maxTs && !blackoutSet.has(ts);
10364
+
10365
+ /**
10366
+ * A date is "in range" (focusable in the grid) when it is within [min, max].
10367
+ * Blackout dates are focusable but not selectable.
10368
+ */
10369
+ const isInRange = (ts) => ts >= minTs && ts <= maxTs;
10370
+
10371
+ // 1. Selected date — always valid target if within range (user chose it).
10372
+ // Skipped when called from month navigation so the active cell lands in
10373
+ // the newly visible month rather than the (possibly off-screen) selection.
10374
+ if (!options.skipDateFrom && this.dateFrom) {
10375
+ const parsedFrom = parseInt(this.dateFrom, 10);
10376
+ if (Number.isFinite(parsedFrom) && isInRange(parsedFrom)) return parsedFrom;
10377
+ }
10378
+
10379
+ // 2. Today's date (midnight-aligned) if enabled.
10380
+ const now = Math.floor(new Date().setHours(0, 0, 0, 0) / 1000);
10381
+
10382
+ // When centralDate is configured, prefer a date within the month(s) that
10383
+ // will actually be rendered. If today falls outside the visible range, an
10384
+ // active cell set to today would have no matching DOM element and keyboard
10385
+ // focus could not enter the calendar.
10386
+ const centralDateValue = this.centralDate ? new Date(this.centralDate) : null;
10387
+
10388
+ if (centralDateValue && !isNaN(centralDateValue.getTime())) {
10389
+ const centralMonth = centralDateValue.getMonth();
10390
+ const centralYear = centralDateValue.getFullYear();
10391
+ const todayDate = new Date(now * 1000);
10392
+ const todayMonth = todayDate.getMonth();
10393
+ const todayYear = todayDate.getFullYear();
10394
+
10395
+ // Today is outside the centralDate's month — scan for an enabled date
10396
+ // within the visible month instead.
10397
+ if (todayMonth !== centralMonth || todayYear !== centralYear) {
10398
+ const visibleStart = new Date(centralYear, centralMonth, 1);
10399
+ visibleStart.setHours(0, 0, 0, 0);
10400
+ const visibleEnd = new Date(centralYear, centralMonth + 1, 0); // last day of month
10401
+ visibleEnd.setHours(0, 0, 0, 0);
10402
+ const startTs = Math.floor(visibleStart.getTime() / 1000);
10403
+ const endTs = Math.floor(visibleEnd.getTime() / 1000);
10404
+ const daysInMonth = visibleEnd.getDate();
10405
+
10406
+ for (let idx = 0; idx < daysInMonth; idx++) {
10407
+ const ts = addDays(startTs, idx);
10408
+ if (ts > endTs) break;
10409
+ if (isEnabled(ts)) return ts;
10410
+ }
10411
+
10412
+ // No enabled date in the visible month — fall back to first in-range
10413
+ // date in the month so focus still lands on a focusable cell.
10414
+ for (let idx = 0; idx < daysInMonth; idx++) {
10415
+ const ts = addDays(startTs, idx);
10416
+ if (ts > endTs) break;
10417
+ if (isInRange(ts)) return ts;
10418
+ }
10419
+ }
10420
+ }
10421
+
10422
+ if (isEnabled(now)) return now;
10423
+
10424
+ // When a centralDate is configured (or inferred), constrain the scan to the
10425
+ // rendered month(s) first so a single-month calendar does not pick a date
10426
+ // that has no DOM cell. Determine the visible range based on centralDate and
10427
+ // the number of rendered months.
10428
+ const renderedMonths = this.numCalendars || 1;
10429
+ const visibleAnchor = centralDateValue && !isNaN(centralDateValue.getTime())
10430
+ ? centralDateValue
10431
+ : new Date(now * 1000);
10432
+ const visMonthStart = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth(), 1);
10433
+ visMonthStart.setHours(0, 0, 0, 0);
10434
+ const visMonthEnd = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth() + renderedMonths, 0);
10435
+ visMonthEnd.setHours(0, 0, 0, 0);
10436
+ const visStartTs = Math.floor(visMonthStart.getTime() / 1000);
10437
+ const visEndTs = Math.floor(visMonthEnd.getTime() / 1000);
10438
+ const visDays = Math.round((visEndTs - visStartTs) / 86400) + 1;
10439
+
10440
+ // Scan visible months for an enabled date.
10441
+ for (let idx = 0; idx < visDays; idx++) {
10442
+ const ts = addDays(visStartTs, idx);
10443
+ if (ts > visEndTs) break;
10444
+ if (isEnabled(ts)) return ts;
10445
+ }
10446
+
10447
+ // No enabled date in visible months — try an in-range (focusable) date so
10448
+ // keyboard focus still has a tabindex="0" target.
10449
+ for (let idx = 0; idx < visDays; idx++) {
10450
+ const ts = addDays(visStartTs, idx);
10451
+ if (ts > visEndTs) break;
10452
+ if (isInRange(ts)) return ts;
10453
+ }
10454
+
10455
+ // 3. First future enabled date (scan forward from tomorrow, capped by max and MAX_SCAN_DAYS).
10456
+ for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
10457
+ const ts = addDays(now, idx);
10458
+ if (Number.isFinite(maxTs) && ts > maxTs) break;
10459
+ if (isEnabled(ts)) return ts;
10460
+ }
10461
+
10462
+ // 4. First previous enabled date (scan backward from yesterday, capped by min and MAX_SCAN_DAYS).
10463
+ for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
10464
+ const ts = addDays(now, -idx);
10465
+ if (Number.isFinite(minTs) && ts < minTs) break;
10466
+ if (isEnabled(ts)) return ts;
10467
+ }
10468
+
10469
+ // 5. If scans missed (e.g. min/max range is far from today), fall back to
10470
+ // the first enabled date in the [min, max] range.
10471
+ if (Number.isFinite(minTs) && Number.isFinite(maxTs)) {
10472
+ let ts = minTs;
10473
+ for (let idx = 0; ts <= maxTs; idx++) {
10474
+ if (isEnabled(ts)) return ts;
10475
+ ts = addDays(minTs, idx + 1);
10476
+ }
10477
+ }
10478
+
10479
+ // 5b. Finite min with unbounded max (e.g. minDate far in the future):
10480
+ // scan forward from min for up to MAX_SCAN_DAYS.
10481
+ if (Number.isFinite(minTs) && !Number.isFinite(maxTs)) {
10482
+ for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
10483
+ const ts = addDays(minTs, idx);
10484
+ if (isEnabled(ts)) return ts;
10485
+ }
10486
+ }
10487
+
10488
+ // 5c. Unbounded min with a finite max far in the past (e.g. birth-date picker):
10489
+ // scan backward from max for up to MAX_SCAN_DAYS.
10490
+ if (!Number.isFinite(minTs) && Number.isFinite(maxTs)) {
10491
+ for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
10492
+ const ts = addDays(maxTs, -idx);
10493
+ if (isEnabled(ts)) return ts;
10494
+ }
10495
+ }
10496
+
10497
+ // 6. All dates are blackout — fall back to the first in-range date so focus
10498
+ // still lands on a focusable (but not selectable) cell.
10499
+ if (Number.isFinite(minTs) && isInRange(minTs)) return minTs;
10500
+ if (isInRange(now)) return now;
10501
+
10502
+ return undefined;
10503
+ }
10504
+
10505
+ /**
10506
+ * Handles arrow key navigation on the calendar grid wrapper.
10507
+ * Focus stays on the grid wrapper; only ariaActiveDescendantElement
10508
+ * and the visual active-cell indicator change.
10509
+ * @private
10510
+ * @param {KeyboardEvent} event - The keyboard event.
10511
+ * @returns {void}
10512
+ */
10513
+ handleGridKeyDown(event) {
10514
+ const { key } = event;
10515
+ const actionKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp', 'Enter', ' '];
10516
+
10517
+ if (!actionKeys.includes(key)) return;
10518
+
10519
+ event.preventDefault();
10520
+
10521
+ const allCells = this.getAllFocusableCells();
10522
+ if (allCells.length === 0) return;
10523
+
10524
+ const activeCell = allCells.find(cell => cell.active);
10525
+ if (!activeCell) return;
10526
+
10527
+ // Handle Enter/Space to select the active cell
10528
+ if (key === 'Enter' || key === ' ') {
10529
+ activeCell.handleTap();
10530
+ return;
10531
+ }
10532
+
10533
+ const activeIndex = allCells.indexOf(activeCell);
10534
+
10535
+ if (key === 'ArrowRight' || key === 'ArrowLeft') {
10536
+ const direction = key === 'ArrowRight' ? 1 : -1;
10537
+ const targetIndex = activeIndex + direction;
10538
+
10539
+ if (targetIndex >= 0 && targetIndex < allCells.length) {
10540
+ // Target cell exists in rendered months
10541
+ this.setActiveCell(allCells[targetIndex].day.date);
10542
+ this.scrollToActiveCell();
10543
+ // Dispatch focus event for the cell so live region + range preview update
10544
+ this.handleCellFocused({ detail: { date: allCells[targetIndex].day.date } });
10545
+ } else {
10546
+ // At boundary — need to navigate to next/prev month
10547
+ const navDir = direction === 1 ? 'next' : 'prev';
10548
+ if ((navDir === 'next' && this.showNextMonthBtn) || (navDir === 'prev' && this.showPrevMonthBtn)) {
10549
+ const targetDate = new Date(activeCell.day.date * 1000);
10550
+ targetDate.setDate(targetDate.getDate() + direction);
10551
+ targetDate.setHours(0, 0, 0, 0);
10552
+ const targetTs = Math.floor(targetDate.getTime() / 1000);
10553
+
10554
+ if (navDir === 'next') {
10555
+ this.handleNextMonth();
10556
+ } else {
10557
+ this.handlePrevMonth();
10558
+ }
10559
+ requestAnimationFrame(() => {
10560
+ requestAnimationFrame(() => {
10561
+ const cells = this.getAllFocusableCells();
10562
+ const target = cells.find(cell => cell.day && cell.day.date === targetTs);
10563
+ if (target) {
10564
+ this.setActiveCell(target.day.date);
10565
+ this.handleCellFocused({ detail: { date: target.day.date } });
10566
+ } else if (cells.length > 0) {
10567
+ const fallback = navDir === 'next' ? cells[cells.length - 1] : cells[0];
10568
+ this.setActiveCell(fallback.day.date);
10569
+ this.handleCellFocused({ detail: { date: fallback.day.date } });
10570
+ }
10571
+ // Re-focus grid wrapper after month change re-render
10572
+ this.focusActiveCell();
10573
+ });
10574
+ });
10575
+ }
10576
+ }
10577
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
10578
+ const increment = key === 'ArrowDown' ? 7 : -7;
10579
+ const currentDate = new Date(activeCell.day.date * 1000);
10580
+ currentDate.setDate(currentDate.getDate() + increment);
10581
+ currentDate.setHours(0, 0, 0, 0);
10582
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
10583
+
10584
+ const targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
10585
+
10586
+ if (targetCell) {
10587
+ this.setActiveCell(targetCell.day.date);
10588
+ this.scrollToActiveCell();
10589
+ this.handleCellFocused({ detail: { date: targetCell.day.date } });
10590
+ } else {
10591
+ // Target might be in an unrendered month
10592
+ const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
10593
+ if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
10594
+ if (navDirection === 'next') {
10595
+ this.handleNextMonth();
10596
+ } else {
10597
+ this.handlePrevMonth();
10598
+ }
10599
+ requestAnimationFrame(() => {
10600
+ requestAnimationFrame(() => {
10601
+ const cells = this.getAllFocusableCells();
10602
+ const target = cells.find(cell => cell.day && cell.day.date === targetDate);
10603
+ if (target) {
10604
+ this.setActiveCell(target.day.date);
10605
+ this.handleCellFocused({ detail: { date: target.day.date } });
10606
+ } else if (cells.length > 0) {
10607
+ const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
10608
+ this.setActiveCell(nearest.day.date);
10609
+ this.handleCellFocused({ detail: { date: nearest.day.date } });
10610
+ }
10611
+ this.focusActiveCell();
10612
+ });
10613
+ });
10614
+ }
10615
+ }
10616
+ }
10617
+ }
10618
+
10619
+ /**
10620
+ * Handles cross-month boundary navigation events from month components.
10621
+ * @private
10622
+ * @param {CustomEvent} event - The boundary event with direction and source date info.
10623
+ * @returns {void}
10624
+ */
10625
+ handleMonthBoundary(event) {
10626
+ const { direction, fromDate, key } = event.detail;
10627
+
10628
+ if (key === 'ArrowRight' || key === 'ArrowLeft') {
10629
+ // Linear navigation: find adjacent focusable cell across months
10630
+ const allCells = this.getAllFocusableCells();
10631
+ const currentIndex = allCells.findIndex(cell => cell.day && cell.day.date === fromDate);
10632
+
10633
+ if (currentIndex === -1) return;
10634
+
10635
+ let targetIndex;
10636
+ if (direction === 'next') {
10637
+ targetIndex = currentIndex + 1;
10638
+ } else {
10639
+ targetIndex = currentIndex - 1;
10640
+ }
10641
+
10642
+ if (targetIndex >= 0 && targetIndex < allCells.length) {
10643
+ const targetCell = allCells[targetIndex];
10644
+ this.setActiveCell(targetCell.day.date);
10645
+ this.scrollToActiveCell();
10646
+ this.focusActiveCell();
10647
+ } else if (direction === 'next' && this.showNextMonthBtn) {
10648
+ // Navigate to next month and focus the computed next date.
10649
+ // Using the target date (fromDate + 1 day) instead of cells[0]
10650
+ // avoids jumping backward in range datepickers where cells[0]
10651
+ // belongs to the previous (still-rendered) month.
10652
+ const nextDate = new Date(fromDate * 1000);
10653
+ nextDate.setDate(nextDate.getDate() + 1);
10654
+ nextDate.setHours(0, 0, 0, 0);
10655
+ const nextTs = Math.floor(nextDate.getTime() / 1000);
10656
+
10657
+ this.handleNextMonth();
10658
+ requestAnimationFrame(() => {
10659
+ requestAnimationFrame(() => {
10660
+ const cells = this.getAllFocusableCells();
10661
+ const target = cells.find(cell => cell.day && cell.day.date === nextTs);
10662
+ if (target) {
10663
+ this.setActiveCell(target.day.date);
10664
+ this.focusActiveCell();
10665
+ } else if (cells.length > 0) {
10666
+ // Fallback: first cell of the last rendered month
10667
+ this.setActiveCell(cells[cells.length - 1].day.date);
10668
+ this.focusActiveCell();
10669
+ }
10670
+ });
10671
+ });
10672
+ } else if (direction === 'prev' && this.showPrevMonthBtn) {
10673
+ // Navigate to previous month and focus the computed previous date.
10674
+ const prevDate = new Date(fromDate * 1000);
10675
+ prevDate.setDate(prevDate.getDate() - 1);
10676
+ prevDate.setHours(0, 0, 0, 0);
10677
+ const prevTs = Math.floor(prevDate.getTime() / 1000);
10678
+
10679
+ this.handlePrevMonth();
10680
+ requestAnimationFrame(() => {
10681
+ requestAnimationFrame(() => {
10682
+ const cells = this.getAllFocusableCells();
10683
+ const target = cells.find(cell => cell.day && cell.day.date === prevTs);
10684
+ if (target) {
10685
+ this.setActiveCell(target.day.date);
10686
+ this.focusActiveCell();
10687
+ } else if (cells.length > 0) {
10688
+ // Fallback: last cell of the first rendered month
10689
+ this.setActiveCell(cells[0].day.date);
10690
+ this.focusActiveCell();
10691
+ }
10692
+ });
10693
+ });
10694
+ }
10695
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
10696
+ // Vertical navigation: find same day-of-week +/- 7 days
10697
+ // Use Date arithmetic instead of fixed seconds to handle DST correctly
10698
+ const increment = key === 'ArrowDown' ? 7 : -7;
10699
+ const currentDate = new Date(fromDate * 1000);
10700
+ currentDate.setDate(currentDate.getDate() + increment);
10701
+ currentDate.setHours(0, 0, 0, 0);
10702
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
10703
+
10704
+ const allCells = this.getAllFocusableCells();
10705
+ let targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
10706
+
10707
+ if (targetCell) {
10708
+ this.setActiveCell(targetCell.day.date);
10709
+ this.scrollToActiveCell();
10710
+ this.focusActiveCell();
10711
+ } else {
10712
+ // Target might be in an unrendered month, navigate there
10713
+ const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
10714
+ if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
10715
+ if (navDirection === 'next') {
10716
+ this.handleNextMonth();
10717
+ } else {
10718
+ this.handlePrevMonth();
10719
+ }
10720
+ requestAnimationFrame(() => {
10721
+ requestAnimationFrame(() => {
10722
+ const cells = this.getAllFocusableCells();
10723
+ const target = cells.find(cell => cell.day && cell.day.date === targetDate);
10724
+ if (target) {
10725
+ this.setActiveCell(target.day.date);
10726
+ this.focusActiveCell();
10727
+ } else if (cells.length > 0) {
10728
+ // Clamp to nearest focusable cell
10729
+ const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
10730
+ this.setActiveCell(nearest.day.date);
10731
+ this.focusActiveCell();
10732
+ }
10733
+ });
10734
+ });
10735
+ }
10736
+ }
10737
+ }
10738
+ }
10739
+
10740
+ /**
10741
+ * Handles cell activation events from month components.
10742
+ * @private
10743
+ * @param {CustomEvent} event - The activation event with target date.
10744
+ * @returns {void}
10745
+ */
10746
+ handleCellActivate(event) {
10747
+ const { date } = event.detail;
10748
+ this.setActiveCell(date);
10749
+ this.focusActiveCell();
10750
+ }
10751
+
10752
+ /**
10753
+ * Handles focus events from calendar cells.
10754
+ * Updates the live region with an SR announcement and triggers
10755
+ * the imperative range preview if applicable.
10756
+ * @private
10757
+ * @param {CustomEvent} event - The calendar-cell-focused event.
10758
+ * @returns {void}
10759
+ */
10760
+ handleCellFocused(event) {
10761
+ const { date } = event.detail;
10762
+ if (date == null) return;
10763
+
10764
+ // With aria-activedescendant, the button no longer receives native focus,
10765
+ // so we use the debounced live region for the full context announcement.
10766
+ const announcement = this.buildFocusAnnouncement(date);
10767
+ this.announceFocusDebounced(announcement);
10768
+
10769
+ // Update the range preview imperatively if in range-preview mode.
10770
+ this.updateRangePreview(date);
10771
+ }
10772
+
10773
+ /**
10774
+ * Builds a full SR announcement string for a focused cell date.
10775
+ * Includes the localized date, range position, popover content,
10776
+ * and blackout status.
10777
+ * @private
10778
+ * @param {Number} date - Unix timestamp (seconds) of the focused cell.
10779
+ * @returns {String} The announcement string.
10780
+ */
10781
+ buildFocusAnnouncement(date) {
10782
+ let label = this.formatAnnouncementDate(date);
10783
+
10784
+ // Append date slot content (e.g. prices) if present.
10785
+ const dateObj = new Date(date * 1000);
10786
+ const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
10787
+ const dd = String(dateObj.getDate()).padStart(2, '0');
10788
+ const yyyy = dateObj.getFullYear();
10789
+ const dateStr = `${mm}_${dd}_${yyyy}`;
10790
+ const dateSlotEl = this.datepicker?.querySelector(`[slot="date_${dateStr}"]`);
10791
+ if (dateSlotEl) {
10792
+ const text = dateSlotEl.innerText?.trim();
10793
+ if (text) {
10794
+ label += `, ${text}`;
10795
+ }
10796
+ }
10797
+
10798
+ // Append popover content if present.
10799
+ const popoverEl = this.datepicker?.querySelector(`[slot="popover_${dateStr}"]`);
10800
+ if (popoverEl) {
10801
+ const text = popoverEl.innerText?.trim();
10802
+ if (text) {
10803
+ label += `, ${text}`;
10804
+ }
10805
+ }
10806
+
10807
+ // Append range position context.
10808
+ if (this.datepicker?.hasAttribute('range')) {
10809
+ const rangeLabel = this.getRangePositionLabel(date);
10810
+ if (rangeLabel) {
10811
+ label += `, ${rangeLabel}`;
10812
+ }
10813
+ }
10814
+
10815
+ // Append blackout label.
10816
+ if (this.isDateBlackout(date)) {
10817
+ label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
10818
+ }
10819
+
10820
+ return label;
10821
+ }
10822
+
10823
+ /**
10824
+ * Determines the range position label for a given date.
10825
+ * @private
10826
+ * @param {Number} date - Unix timestamp (seconds).
10827
+ * @returns {String|null} The range position label, or null.
10828
+ */
10829
+ getRangePositionLabel(date) {
10830
+ const parsedFrom = Number.parseInt(this.dateFrom, 10);
10831
+ if (!Number.isFinite(parsedFrom)) return null;
10832
+
10833
+ const departTs = startOfDay(parsedFrom * 1000) / 1000;
10834
+ const parsedTo = Number.parseInt(this.dateTo, 10);
10835
+ const hasTo = Number.isFinite(parsedTo);
10836
+ const returnTs = hasTo ? startOfDay(parsedTo * 1000) / 1000 : null;
10837
+
10838
+ if (date === departTs) return this.datepicker.rangeLabelStart || 'range start';
10839
+ if (hasTo && date === returnTs) return this.datepicker.rangeLabelEnd || 'range end';
10840
+ if (date < departTs) return this.datepicker.rangeLabelBeforeRange || 'before range';
10841
+ if (hasTo && date > departTs && date < returnTs) return this.datepicker.rangeLabelInRange || 'in range';
10842
+ return this.datepicker.rangeLabelAfterRange || 'after range';
10843
+ }
10844
+
10845
+ /**
10846
+ * Checks whether a given date is a blackout date.
10847
+ * @private
10848
+ * @param {Number} dateTs - Unix timestamp (seconds).
10849
+ * @returns {Boolean} True if the date is blacked out.
10850
+ */
10851
+ isDateBlackout(dateTs) {
10852
+ // Check legacy disabledDays.
10853
+ if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
10854
+ if (this.disabledDays.findIndex(d => parseInt(d, 10) === dateTs) !== -1) {
10855
+ return true;
10856
+ }
10857
+ }
10858
+
10859
+ // Check ISO blackoutDates.
10860
+ const blackoutDates = this.datepicker?.blackoutDates;
10861
+ if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
10862
+ const date = new Date(dateTs * 1000);
10863
+ const yyyy = date.getFullYear();
10864
+ const mm = String(date.getMonth() + 1).padStart(2, '0');
10865
+ const dd = String(date.getDate()).padStart(2, '0');
10866
+ if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
10867
+ return true;
10868
+ }
10869
+ }
10870
+
10871
+ return false;
10872
+ }
10873
+
10874
+ /**
10875
+ * Updates the range preview classes imperatively across all cells.
10876
+ * Only active when in range mode with dateFrom set and dateTo not yet set.
10877
+ * @private
10878
+ * @param {Number} hoveredDate - Unix timestamp of the hovered/focused date.
10879
+ * @returns {void}
10880
+ */
10881
+ updateRangePreview(hoveredDate) {
10882
+ if (this.noRange || !this.dateFrom || this.dateTo) {
10883
+ return;
10884
+ }
10885
+
10886
+ const parsedDateFrom = parseInt(this.dateFrom, 10);
10887
+ const allCells = this.getAllFocusableCells();
10888
+
10889
+ allCells.forEach(cell => {
10890
+ cell.updateRangePreviewClasses(hoveredDate, parsedDateFrom);
10891
+ });
10892
+ }
10893
+
10894
+ /**
10895
+ * Clears range preview classes from all cells.
10896
+ * @private
10897
+ * @returns {void}
10898
+ */
10899
+ clearRangePreview() {
10900
+ const allCells = this.getAllFocusableCells();
10901
+ allCells.forEach(cell => {
10902
+ cell.clearRangePreviewClasses();
10903
+ });
10904
+ }
10905
+
10906
+ /**
10907
+ * Overrides the base class handler to prevent setting `this.hoveredDate`
10908
+ * as a reactive property. Instead, handles the range preview imperatively.
10909
+ * @private
10910
+ * @param {CustomEvent} event - The hovered-date-changed event from a month.
10911
+ * @returns {void}
10912
+ */
10913
+ hoveredDateChanged(event) {
10914
+ const hoveredDate = event.detail.value;
10915
+ this.updateRangePreview(hoveredDate);
10916
+ }
10917
+
10918
+ /**
10919
+ * Scrolls the calendar to ensure the month containing the active cell is visible.
10920
+ * @private
10921
+ * @returns {void}
10922
+ */
10923
+ scrollToActiveCell() {
10924
+ if (this.activeCellDate == null) return;
10925
+
10926
+ const date = new Date(this.activeCellDate * 1000);
10927
+ const month = date.getMonth() + 1;
10928
+ const year = date.getFullYear();
10929
+ const selector = `#month-${month}-${year}`;
10930
+ const monthElem = this.shadowRoot.querySelector(selector);
10931
+
10932
+ if (monthElem) {
10933
+ const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
10934
+ monthElem.scrollIntoView({ block: 'nearest', behavior: prefersReducedMotion ? 'instant' : 'smooth' });
10935
+ }
10936
+ }
10937
+
10938
+ /**
10939
+ * Announces a date selection or focus change via the live region.
10940
+ * @private
10941
+ * @param {String} dateStr - The localized date string to announce.
10942
+ * @returns {void}
10943
+ */
10944
+ announceSelection(dateStr) {
10945
+ const liveRegion = this.shadowRoot.querySelector('#calendar-live-region');
10946
+ if (liveRegion) {
10947
+ liveRegion.textContent = '';
10948
+ // Use microtask to ensure SR picks up the change
10949
+ Promise.resolve().then(() => {
10950
+ liveRegion.textContent = dateStr;
10951
+ });
10952
+ }
10953
+ }
10954
+
10955
+ /**
10956
+ * Debounced version of announceSelection for focus navigation.
10957
+ * Only announces the last focused date after rapid navigation pauses,
10958
+ * preventing the screen reader from queueing up stale announcements
10959
+ * that can't keep pace with arrow-key traversal.
10960
+ * @private
10961
+ * @param {String} dateStr - The localized date string to announce.
10962
+ * @returns {void}
10963
+ */
10964
+ announceFocusDebounced(dateStr) {
10965
+ if (this._focusAnnounceTimer) {
10966
+ clearTimeout(this._focusAnnounceTimer);
10967
+ }
10968
+ this._focusAnnounceTimer = setTimeout(() => {
10969
+ this.announceSelection(dateStr);
10970
+ this._focusAnnounceTimer = null;
10971
+ }, 150);
10972
+ }
10973
+
10974
+ /**
10975
+ * Formats a Unix timestamp (seconds) as a localized date string for SR announcements.
10976
+ * @private
10977
+ * @param {String|Number} timestamp - Unix timestamp in seconds.
10978
+ * @returns {String} Localized date string.
10979
+ */
10980
+ formatAnnouncementDate(timestamp) {
10981
+ const date = new Date(parseInt(timestamp, 10) * 1000);
10982
+ const localeCode = this.locale?.code || undefined;
10983
+ const formatter = new Intl.DateTimeFormat(localeCode, {
10984
+ weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'
10985
+ });
10986
+ return formatter.format(date);
10987
+ }
10988
+
9670
10989
  firstUpdated() {
9671
10990
  this.addEventListener('date-from-changed', () => {
9672
10991
  this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
@@ -9686,6 +11005,21 @@ class AuroCalendar extends RangeDatepicker {
9686
11005
  composed: true,
9687
11006
  }));
9688
11007
  });
11008
+
11009
+ // Listen for cross-month boundary navigation events
11010
+ this.addEventListener('calendar-month-boundary', (event) => {
11011
+ this.handleMonthBoundary(event);
11012
+ });
11013
+
11014
+ // Listen for cell activation events
11015
+ this.addEventListener('calendar-cell-activate', (event) => {
11016
+ this.handleCellActivate(event);
11017
+ });
11018
+
11019
+ // Listen for cell focus events (SR announcements + range preview)
11020
+ this.addEventListener('calendar-cell-focused', (event) => {
11021
+ this.handleCellFocused(event);
11022
+ });
9689
11023
  }
9690
11024
 
9691
11025
  injectSlot(slotName, nodes) {
@@ -9710,7 +11044,37 @@ class AuroCalendar extends RangeDatepicker {
9710
11044
  }
9711
11045
 
9712
11046
  if (changedProperties.has('visible')) {
9713
- setTimeout(() => this.requestUpdate());
11047
+ if (this.visible) {
11048
+ // Compute the active date eagerly from data — no DOM needed.
11049
+ if (this.activeCellDate == null) {
11050
+ this.activeCellDate = this.computeActiveDate();
11051
+ }
11052
+
11053
+ this.requestUpdate();
11054
+ } else {
11055
+ this.requestUpdate();
11056
+ }
11057
+ }
11058
+
11059
+ // Announce date selection to screen readers when user clicks/selects a cell
11060
+ const isCellClick = this.datepicker?.wasCellClick || this.datepicker?.cellClickActive;
11061
+
11062
+ if (changedProperties.has('dateFrom') && this.dateFrom && isCellClick) {
11063
+ const dateStr = this.formatAnnouncementDate(this.dateFrom);
11064
+ const isRange = !this.noRange;
11065
+
11066
+ if (isRange) {
11067
+ const rangeLabel = this.datepicker.rangeLabelStart || 'range start';
11068
+ this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
11069
+ } else {
11070
+ this.announceSelection(`${dateStr}, selected`);
11071
+ }
11072
+ }
11073
+
11074
+ if (changedProperties.has('dateTo') && this.dateTo && isCellClick) {
11075
+ const dateStr = this.formatAnnouncementDate(this.dateTo);
11076
+ const rangeLabel = this.datepicker.rangeLabelEnd || 'range end';
11077
+ this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
9714
11078
  }
9715
11079
  }
9716
11080
 
@@ -9719,6 +11083,7 @@ class AuroCalendar extends RangeDatepicker {
9719
11083
  <${this.bibtemplateTag}
9720
11084
  ?large="${this.largeFullscreenHeadline}"
9721
11085
  ?isFullscreen="${this.isFullscreen}"
11086
+ ?showFooter="${!this.isFullscreen && this.dropdown?.desktopModal}"
9722
11087
  @close-click="${this.utilCal.requestDismiss}">
9723
11088
  <span slot="ariaLabel.close">${this.slots["ariaLabel.bib.close"]}</span>
9724
11089
 
@@ -9736,24 +11101,27 @@ class AuroCalendar extends RangeDatepicker {
9736
11101
  </div>
9737
11102
  </div>
9738
11103
 
9739
- <div class="calendarWrapper">
9740
- <div class="calendars">
9741
- ${this.renderAllCalendars()}
9742
- </div>
11104
+ <div class="calendarWrapper ${!this.isFullscreen && this.dropdown?.desktopModal ? 'hasFooter' : ''}">
9743
11105
  <div class="calendarNavButtons">
9744
11106
  ${this.showPrevMonthBtn ? u$a`
9745
- <button tabIndex="-1" class="calendarNavBtn prevMonth" @click="${this.handlePrevMonth}">
11107
+ <button tabIndex="0" class="calendarNavBtn prevMonth" aria-label="${this.datepicker?.navLabelPrevMonth || 'Previous month'}" @click="${this.handlePrevMonth}">
9746
11108
  ${this.util.generateIconHtml(chevronLeft)}
9747
11109
  </button>
9748
11110
  ` : undefined}
9749
11111
  ${this.showNextMonthBtn ? u$a`
9750
- <button tabIndex="-1" class="calendarNavBtn nextMonth" @click="${this.handleNextMonth}">
11112
+ <button tabIndex="0" class="calendarNavBtn nextMonth" aria-label="${this.datepicker?.navLabelNextMonth || 'Next month'}" @click="${this.handleNextMonth}">
9751
11113
  ${this.util.generateIconHtml(chevronRight)}
9752
11114
  </button>
9753
11115
  ` : undefined}
9754
11116
  </div>
11117
+ <div id="calendarGrid" class="calendars" role="group" tabindex="-1" aria-activedescendant="activeDescendantProxy" @keydown="${this.handleGridKeyDown}">
11118
+ <span id="activeDescendantProxy" role="gridcell" aria-label="" class="sr-only"></span>
11119
+ ${this.renderAllCalendars()}
11120
+ </div>
9755
11121
  </div>
9756
11122
 
11123
+ <div id="calendar-live-region" aria-live="assertive" aria-atomic="true" class="sr-only"></div>
11124
+
9757
11125
  <${this.buttonTag} slot="footer" fluid @click="${this.utilCal.requestDismiss}">Done</${this.buttonTag}>
9758
11126
  </${this.bibtemplateTag}>
9759
11127
  `;
@@ -13025,7 +14393,7 @@ function applyKeyboardStrategy$1(component, strategy, options = {}) {
13025
14393
  });
13026
14394
  }
13027
14395
 
13028
- var styleCss$2$1 = i$3`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
14396
+ var styleCss$2$1 = i$3`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
13029
14397
 
13030
14398
  var colorCss$2 = i$3`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
13031
14399
 
@@ -13656,7 +15024,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$1 {
13656
15024
  }
13657
15025
  };
13658
15026
 
13659
- var formkitVersion$1 = '202605201646';
15027
+ var formkitVersion$1 = '202605210326';
13660
15028
 
13661
15029
  let AuroElement$2 = class AuroElement extends i$1 {
13662
15030
  static get properties() {
@@ -13836,6 +15204,7 @@ class AuroDropdown extends AuroElement$2 {
13836
15204
  _intializeDefaults() {
13837
15205
  this.appearance = 'default';
13838
15206
  this.chevron = false;
15207
+ this.desktopModal = false;
13839
15208
  this.disabled = false;
13840
15209
  this.disableKeyboardHandling = false;
13841
15210
  this.error = false;
@@ -14016,6 +15385,14 @@ class AuroDropdown extends AuroElement$2 {
14016
15385
  reflect: true
14017
15386
  },
14018
15387
 
15388
+ /**
15389
+ * If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
15390
+ */
15391
+ desktopModal: {
15392
+ type: Boolean,
15393
+ reflect: true
15394
+ },
15395
+
14019
15396
  /**
14020
15397
  * If declared, the dropdown will only show by calling the API .show() public method.
14021
15398
  */
@@ -14303,6 +15680,15 @@ class AuroDropdown extends AuroElement$2 {
14303
15680
 
14304
15681
  disconnectedCallback() {
14305
15682
  super.disconnectedCallback();
15683
+ this._clearPageInert();
15684
+ if (this._bibTabHandler) {
15685
+ this.removeEventListener('keydown', this._bibTabHandler);
15686
+ this._bibTabHandler = undefined;
15687
+ }
15688
+ if (this.focusTrap) {
15689
+ this.focusTrap.disconnect();
15690
+ this.focusTrap = undefined;
15691
+ }
14306
15692
  if (this.floater) {
14307
15693
  this.floater.hideBib('disconnect');
14308
15694
  this.floater.disconnect();
@@ -14330,19 +15716,45 @@ class AuroDropdown extends AuroElement$2 {
14330
15716
  if (this.isPopoverVisible) {
14331
15717
  // Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
14332
15718
  // Desktop: use show() for Floating UI positioning + FocusTrap for focus management
14333
- const useModal = this.isBibFullscreen;
14334
- this.bibElement.value.open(useModal);
15719
+ this.bibElement.value.open(this.isBibFullscreen);
15720
+ this.updateFocusTrap();
15721
+
15722
+ // Desktop modal: make siblings inert so content outside is not interactive
15723
+ if (this.desktopModal && !this.isBibFullscreen) {
15724
+ this._setPageInert();
15725
+ }
14335
15726
  } else {
14336
15727
  this.bibElement.value.close();
15728
+ this._clearPageInert();
14337
15729
  }
14338
15730
  }
14339
15731
 
14340
15732
  // When fullscreen strategy changes while open, re-open dialog with correct mode
14341
15733
  // (e.g. resizing from desktop → mobile while dropdown is open)
14342
15734
  if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
14343
- const useModal = this.isBibFullscreen;
14344
15735
  this.bibElement.value.close();
14345
- this.bibElement.value.open(useModal);
15736
+ this.bibElement.value.open(this.isBibFullscreen);
15737
+
15738
+ // Re-initialize focus management for the new strategy
15739
+ this.updateFocusTrap();
15740
+
15741
+ // Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
15742
+ if (this.desktopModal && !this.isBibFullscreen) {
15743
+ this._setPageInert();
15744
+ } else {
15745
+ this._clearPageInert();
15746
+ }
15747
+ }
15748
+
15749
+ // Handle desktopModal toggled while the dropdown is already open.
15750
+ // Re-initialize focus trapping and page inert state to match the new mode.
15751
+ if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
15752
+ this.updateFocusTrap();
15753
+ if (this.desktopModal) {
15754
+ this._setPageInert();
15755
+ } else {
15756
+ this._clearPageInert();
15757
+ }
14346
15758
  }
14347
15759
  }
14348
15760
 
@@ -14352,8 +15764,14 @@ class AuroDropdown extends AuroElement$2 {
14352
15764
  * @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
14353
15765
  */
14354
15766
  handleDropdownToggle(event) {
14355
- this.updateFocusTrap();
14356
15767
  this.isPopoverVisible = event.detail.expanded;
15768
+
15769
+ // Tear down FocusTrap when closing. Creation happens in updated()
15770
+ // after the dialog is open so getFocusableElements can find content.
15771
+ if (!this.isPopoverVisible) {
15772
+ this.updateFocusTrap();
15773
+ }
15774
+
14357
15775
  const eventType = event.detail.eventType || "unknown";
14358
15776
  if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
14359
15777
  this.trigger.focus();
@@ -14452,19 +15870,178 @@ class AuroDropdown extends AuroElement$2 {
14452
15870
  * @private
14453
15871
  */
14454
15872
  updateFocusTrap() {
15873
+ // Always clean up existing handlers/traps before setting up new ones
15874
+ // to prevent duplicate listeners on repeated calls.
15875
+ if (this._bibTabHandler) {
15876
+ this.removeEventListener('keydown', this._bibTabHandler);
15877
+ this._bibTabHandler = undefined;
15878
+ }
15879
+
15880
+ if (this.focusTrap) {
15881
+ this.focusTrap.disconnect();
15882
+ this.focusTrap = undefined;
15883
+ }
15884
+
14455
15885
  if (this.isPopoverVisible) {
14456
15886
  if (!this.isBibFullscreen) {
14457
- // Desktop: show() doesn't trap focus, so use FocusTrap
14458
- this.focusTrap = new FocusTrap(this.bibContent);
14459
- this.focusTrap.focusFirstElement();
15887
+ if (this.desktopModal) {
15888
+ // Desktop modal: trap focus only within the bib content.
15889
+ // Can't use FocusTrap on the bib element because keydown events
15890
+ // from slotted content bubble through the dropdown host (light DOM),
15891
+ // not through the bib (shadow projection target). Using FocusTrap
15892
+ // on the dropdown would include the trigger in the tab cycle.
15893
+ // Instead, listen for Tab on the dropdown and manually wrap focus
15894
+ // within the bib's focusable elements.
15895
+ this._bibTabHandler = (event) => {
15896
+ if (event.key !== 'Tab') {
15897
+ return;
15898
+ }
15899
+
15900
+ // Collect focusable elements from the bib content.
15901
+ const focusables = getFocusableElements(this.bibContent);
15902
+
15903
+ // Fallback: try from slotted content directly
15904
+ if (!focusables.length) {
15905
+ const slot = this.shadowRoot.querySelector('.slotContent slot');
15906
+ const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
15907
+
15908
+ for (const node of assignedNodes) {
15909
+ if (node.nodeType === Node.ELEMENT_NODE) {
15910
+ focusables.push(...getFocusableElements(node));
15911
+ }
15912
+ }
15913
+ }
15914
+
15915
+ if (!focusables.length) {
15916
+ return;
15917
+ }
15918
+
15919
+ event.preventDefault();
15920
+
15921
+ const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
15922
+
15923
+ // Walk the active element chain through shadow roots
15924
+ const actives = this._getActiveElements();
15925
+
15926
+ let idx = focusables.findIndex((el) => actives.includes(el));
15927
+
15928
+ if (idx === -1) { // eslint-disable-line no-magic-numbers
15929
+ // Focus is not on a known element — move to first/last
15930
+ idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
15931
+ }
15932
+
15933
+ // Try each element in order, skipping any that can't receive focus
15934
+ // (e.g. hidden elements, elements in collapsed sections)
15935
+ for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
15936
+ let nextIdx = idx + direction;
15937
+
15938
+ // Wrap around
15939
+ if (nextIdx < 0) {
15940
+ nextIdx = focusables.length - 1;
15941
+ } else if (nextIdx >= focusables.length) {
15942
+ nextIdx = 0;
15943
+ }
15944
+
15945
+ focusables[nextIdx].focus();
15946
+
15947
+ // Verify focus actually moved to the target
15948
+ const newActives = this._getActiveElements();
15949
+
15950
+ if (newActives.includes(focusables[nextIdx])) {
15951
+ return;
15952
+ }
15953
+
15954
+ // Focus didn't stick — skip this element and try the next
15955
+ idx = nextIdx;
15956
+ }
15957
+ };
15958
+ this.addEventListener('keydown', this._bibTabHandler);
15959
+
15960
+ // Move initial focus into the bib content, matching FocusTrap behavior
15961
+ requestAnimationFrame(() => {
15962
+ const focusables = getFocusableElements(this.bibContent);
15963
+ if (focusables.length) {
15964
+ focusables[0].focus();
15965
+ }
15966
+ });
15967
+ } else {
15968
+ // Normal desktop: use FocusTrap on the bib element
15969
+ this.focusTrap = new FocusTrap(this.bibContent);
15970
+ this.focusTrap.focusFirstElement();
15971
+ }
14460
15972
  }
14461
15973
  // Fullscreen: showModal() provides native focus trapping
15974
+ }
15975
+ }
15976
+
15977
+ /**
15978
+ * Returns the chain of active (focused) elements through shadow roots.
15979
+ * @private
15980
+ * @returns {Array<HTMLElement>}
15981
+ */
15982
+ _getActiveElements() {
15983
+ let { activeElement } = document;
15984
+ const actives = [activeElement];
15985
+
15986
+ while (activeElement?.shadowRoot?.activeElement) {
15987
+ activeElement = activeElement.shadowRoot.activeElement;
15988
+ actives.push(activeElement);
15989
+ }
15990
+
15991
+ return actives;
15992
+ }
15993
+
15994
+ /**
15995
+ * Sets `inert` on sibling elements of the dropdown's top-level host
15996
+ * so that content outside the dropdown is not interactive while the modal is open.
15997
+ * Walks up through shadow DOM boundaries to find the outermost host element
15998
+ * in the light DOM, then sets `inert` on siblings at each ancestor level
15999
+ * to ensure all page content outside the host subtree is inert.
16000
+ * @private
16001
+ */
16002
+ _setPageInert() {
16003
+ if (this._inertSiblings) {
14462
16004
  return;
14463
16005
  }
14464
16006
 
14465
- if (this.focusTrap) {
14466
- this.focusTrap.disconnect();
14467
- this.focusTrap = undefined;
16007
+ this._inertSiblings = [];
16008
+
16009
+ // Walk up through shadow DOM boundaries to find the topmost host
16010
+ // element in the light DOM. For example, if this dropdown is inside
16011
+ // auro-datepicker's shadow DOM, we walk up to the datepicker element
16012
+ // so we set inert on its siblings — not on the datepicker itself.
16013
+ let host = this;
16014
+ while (host.getRootNode() instanceof ShadowRoot) {
16015
+ host = host.getRootNode().host;
16016
+ }
16017
+
16018
+ // Walk up the ancestor chain, inerting siblings at each level
16019
+ // to ensure the entire page outside the host subtree is inert.
16020
+ let current = host;
16021
+ while (current.parentElement) {
16022
+ const parent = current.parentElement;
16023
+ for (const sibling of parent.children) {
16024
+ if (sibling !== current) {
16025
+ this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
16026
+ sibling.inert = true;
16027
+ }
16028
+ }
16029
+ current = parent;
16030
+ }
16031
+ }
16032
+
16033
+ /**
16034
+ * Restores `inert` state on siblings that were tracked by `_setPageInert`.
16035
+ * Preserves the previous inert state so externally-inerted elements are
16036
+ * not inadvertently re-enabled.
16037
+ * @private
16038
+ */
16039
+ _clearPageInert() {
16040
+ if (this._inertSiblings) {
16041
+ for (const entry of this._inertSiblings) {
16042
+ entry.element.inert = entry.wasInert;
16043
+ }
16044
+ this._inertSiblings = undefined;
14468
16045
  }
14469
16046
  }
14470
16047
 
@@ -14703,6 +16280,7 @@ class AuroDropdown extends AuroElement$2 {
14703
16280
  shape="${this.shape}"
14704
16281
  ?data-show="${this.isPopoverVisible}"
14705
16282
  ?isfullscreen="${this.isBibFullscreen}"
16283
+ ?desktopmodal="${this.desktopModal}"
14706
16284
  .dialogLabel="${this.bibDialogLabel}"
14707
16285
  ${n(this.bibElement)}
14708
16286
  >
@@ -21408,7 +22986,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$1 {
21408
22986
  }
21409
22987
  };
21410
22988
 
21411
- var formkitVersion = '202605201646';
22989
+ var formkitVersion = '202605210326';
21412
22990
 
21413
22991
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
21414
22992
  // See LICENSE in the project root for license information.
@@ -22663,26 +24241,62 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
22663
24241
  // components/datepicker/docs/partials/keyboardBehavior.md
22664
24242
  //
22665
24243
  // Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
22666
- // - The bib opens and closes via pointer/touch interaction only.
22667
24244
  // - Escape closes the bib and prevents the event from reaching parent containers.
24245
+ // - Enter opens the bib when it is closed (trigger input only, not clear button).
24246
+ // - Space opens the bib when it is closed (trigger input only, not clear button).
22668
24247
  // - Tab uses the browser's default tabindex sequence across trigger controls.
22669
- // - Enter and Space do not open or close the bib.
22670
24248
  //
22671
24249
  // This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
22672
24250
  // added, handlers should go here following the same strategy pattern used by
22673
24251
  // auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
22674
24252
  const datepickerKeyboardStrategy = {
22675
- Escape(component, evt) {
22676
- if (!component.dropdown || !component.dropdown.isPopoverVisible) {
24253
+ Escape(component, evt, ctx) {
24254
+ if (!ctx.isExpanded) {
22677
24255
  return;
22678
24256
  }
22679
24257
 
22680
- // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
22681
- // Because stopPropagation prevents the document-level floatingUI keydown handler from
22682
- // seeing this event, we must also close the dropdown explicitly.
24258
+ // Stop propagation so parent containers (auro-dialog, auro-drawer)
24259
+ // don't also react to Escape.
22683
24260
  evt.stopPropagation();
24261
+ evt.preventDefault();
24262
+
24263
+ component.hideBib();
24264
+ },
24265
+
24266
+ Enter(component, evt, ctx) {
24267
+ if (ctx.isExpanded) {
24268
+ return;
24269
+ }
24270
+
24271
+ // Only open from the trigger input, not the clear button or other internal elements.
24272
+ // evt.target is retargeted to the host in shadow DOM, so use composedPath()
24273
+ // to find the real origin. The clear button is rendered with class "clearBtn".
24274
+ const path = evt.composedPath();
24275
+ if (path.some(el => el.classList?.contains('clearBtn'))) {
24276
+ return;
24277
+ }
24278
+
24279
+ evt.preventDefault();
24280
+
24281
+ component.dropdown.show();
24282
+ },
24283
+
24284
+ ' '(component, evt, ctx) {
24285
+ if (ctx.isExpanded) {
24286
+ return;
24287
+ }
24288
+
24289
+ // Only open from the trigger input, not the clear button or other internal elements.
24290
+ // evt.target is retargeted to the host in shadow DOM, so use composedPath()
24291
+ // to find the real origin. The clear button is rendered with class "clearBtn".
24292
+ const path = evt.composedPath();
24293
+ if (path.some(el => el.classList?.contains('clearBtn'))) {
24294
+ return;
24295
+ }
24296
+
24297
+ evt.preventDefault();
22684
24298
 
22685
- component.dropdown.hide();
24299
+ component.dropdown.show();
22686
24300
  },
22687
24301
  };
22688
24302
 
@@ -22756,6 +24370,15 @@ class AuroDatePicker extends AuroElement {
22756
24370
  this.required = false;
22757
24371
  this.onDark = false;
22758
24372
  this.range = false;
24373
+ this.rangeLabelStart = 'range start';
24374
+ this.rangeLabelEnd = 'range end';
24375
+ this.rangeLabelBeforeRange = 'before range';
24376
+ this.rangeLabelInRange = 'in range';
24377
+ this.rangeLabelAfterRange = 'after range';
24378
+ this.blackoutDates = [];
24379
+ this.blackoutLabel = 'unavailable';
24380
+ this.navLabelPrevMonth = 'Previous month';
24381
+ this.navLabelNextMonth = 'Next month';
22759
24382
  this.stacked = false;
22760
24383
  this.noValidate = false;
22761
24384
  this.validity = undefined;
@@ -23134,6 +24757,78 @@ class AuroDatePicker extends AuroElement {
23134
24757
  reflect: true
23135
24758
  },
23136
24759
 
24760
+ /**
24761
+ * Label announced for the range start date cell.
24762
+ */
24763
+ rangeLabelStart: {
24764
+ type: String,
24765
+ reflect: true
24766
+ },
24767
+
24768
+ /**
24769
+ * Label announced for the range end date cell.
24770
+ */
24771
+ rangeLabelEnd: {
24772
+ type: String,
24773
+ reflect: true
24774
+ },
24775
+
24776
+ /**
24777
+ * Label announced for cells before the range start.
24778
+ */
24779
+ rangeLabelBeforeRange: {
24780
+ type: String,
24781
+ reflect: true
24782
+ },
24783
+
24784
+ /**
24785
+ * Label announced for cells within the selected range.
24786
+ */
24787
+ rangeLabelInRange: {
24788
+ type: String,
24789
+ reflect: true
24790
+ },
24791
+
24792
+ /**
24793
+ * Label announced for cells after the range (or after start when no end is selected).
24794
+ */
24795
+ rangeLabelAfterRange: {
24796
+ type: String,
24797
+ reflect: true
24798
+ },
24799
+
24800
+ /**
24801
+ * Array of dates that cannot be selected. Dates should be in ISO format (YYYY-MM-DD).
24802
+ */
24803
+ blackoutDates: {
24804
+ type: Array,
24805
+ reflect: true
24806
+ },
24807
+
24808
+ /**
24809
+ * Label announced for blackout (disabled but in-range) date cells.
24810
+ */
24811
+ blackoutLabel: {
24812
+ type: String,
24813
+ reflect: true
24814
+ },
24815
+
24816
+ /**
24817
+ * Accessible label for the previous month navigation button.
24818
+ */
24819
+ navLabelPrevMonth: {
24820
+ type: String,
24821
+ reflect: true
24822
+ },
24823
+
24824
+ /**
24825
+ * Accessible label for the next month navigation button.
24826
+ */
24827
+ navLabelNextMonth: {
24828
+ type: String,
24829
+ reflect: true
24830
+ },
24831
+
23137
24832
  /**
23138
24833
  * Dates that the user should have for reference as part of their decision making when selecting a date.
23139
24834
  * This should be a JSON string array of dates in the format of `MM/DD/YYYY`.
@@ -23160,6 +24855,7 @@ class AuroDatePicker extends AuroElement {
23160
24855
 
23161
24856
  /**
23162
24857
  * Custom help text message to display when validity = `customError`.
24858
+ * Also used as the validation message when a blackout date is typed into the input.
23163
24859
  */
23164
24860
  setCustomValidityCustomError: {
23165
24861
  type: String
@@ -23481,6 +25177,61 @@ class AuroDatePicker extends AuroElement {
23481
25177
  }));
23482
25178
  }
23483
25179
 
25180
+ /**
25181
+ * Attempts to focus the active calendar cell using a rAF retry loop.
25182
+ * Shared by both fullscreen and desktop open paths.
25183
+ * @private
25184
+ * @returns {void}
25185
+ */
25186
+ focusActiveCellWhenReady() {
25187
+ const MAX_ATTEMPTS = 20;
25188
+ let attempts = 0;
25189
+
25190
+ const tryFocus = () => {
25191
+ attempts += 1;
25192
+ const allCells = this.calendar.getAllFocusableCells();
25193
+
25194
+ if (!allCells.length && attempts < MAX_ATTEMPTS) {
25195
+ requestAnimationFrame(tryFocus);
25196
+ return;
25197
+ }
25198
+
25199
+ // Compute and mark the active cell
25200
+ if (this.calendar.activeCellDate == null) {
25201
+ this.calendar.activeCellDate = this.calendar.computeActiveDate();
25202
+ }
25203
+ if (this.calendar.activeCellDate !== undefined) {
25204
+ this.calendar.setActiveCell(this.calendar.activeCellDate);
25205
+ }
25206
+
25207
+ // If no cell matched (e.g. centralDate month differs from the rendered
25208
+ // range on mobile), fall back to the first rendered enabled cell.
25209
+ let activeCell = allCells.find(cell => cell.active);
25210
+ if (!activeCell && allCells.length) {
25211
+ const fallback = allCells[0];
25212
+ if (fallback.day) {
25213
+ this.calendar.activeCellDate = fallback.day.date;
25214
+ this.calendar.setActiveCell(this.calendar.activeCellDate);
25215
+ activeCell = allCells.find(cell => cell.active);
25216
+ }
25217
+ }
25218
+
25219
+ // Focus the calendar grid wrapper (aria-activedescendant handles
25220
+ // the SR announcement for the active cell).
25221
+ if (activeCell) {
25222
+ // Announce the initial active cell via the live region
25223
+ const announcement = this.calendar.buildFocusAnnouncement(activeCell.day.date);
25224
+ this.calendar.announceSelection(announcement);
25225
+
25226
+ this.calendar.focusActiveCell();
25227
+ } else if (attempts < MAX_ATTEMPTS) {
25228
+ requestAnimationFrame(tryFocus);
25229
+ }
25230
+ };
25231
+
25232
+ requestAnimationFrame(tryFocus);
25233
+ }
25234
+
23484
25235
  /**
23485
25236
  * Binds all behavior needed to the dropdown after rendering.
23486
25237
  * @private
@@ -23489,6 +25240,12 @@ class AuroDatePicker extends AuroElement {
23489
25240
  configureDropdown() {
23490
25241
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
23491
25242
 
25243
+ // The datepicker manages its own open/close lifecycle (Space/Escape/date-select/done).
25244
+ // Prevent the floater's document-level focusin handler from closing the bib
25245
+ // when focus moves from the trigger into the calendar cells (which live inside
25246
+ // a top-layer popover where :focus-within on the dropdown host returns false).
25247
+ this.dropdown.noHideOnThisFocusLoss = true;
25248
+
23492
25249
  // Pass label text to the dropdown bib for accessible dialog naming.
23493
25250
  // Without this, the fullscreen <dialog> has no accessible name and
23494
25251
  // screen readers announce it as just "dialog" with no context.
@@ -23506,6 +25263,23 @@ class AuroDatePicker extends AuroElement {
23506
25263
  this.dropdown.addEventListener('auroDropdown-toggled', () => {
23507
25264
  this.notifyDatepickerToggled();
23508
25265
 
25266
+ if (this.dropdown.isPopoverVisible) {
25267
+ // Reset calendar focus state so it recomputes from the current selection.
25268
+ // Without this, reopening after navigating to a month without a selected
25269
+ // date leaves activeCellDate pointing at a cell in a different month than
25270
+ // what centralDate renders, causing all cells to have tabindex="-1".
25271
+ this.calendar.activeCellDate = null;
25272
+
25273
+ // Show the month containing the selected date (or today) instead of
25274
+ // whichever month the user last navigated to.
25275
+ // Respect consumer-provided centralDate/calendarStartDate if no value is set.
25276
+ if (this.value && this.util.validDateStr(this.value, this.format)) {
25277
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25278
+ } else if (!this.centralDate && !this.calendarStartDate && !this.minDate) {
25279
+ this.calendarRenderUtil.updateCentralDate(this, new Date());
25280
+ }
25281
+ }
25282
+
23509
25283
  // This forces the calendar to render when the dropdown is opened.
23510
25284
  // It is not rendered by default
23511
25285
  this.calendar.visible = this.dropdown.isPopoverVisible;
@@ -23538,12 +25312,23 @@ class AuroDatePicker extends AuroElement {
23538
25312
  bibEl.open(true);
23539
25313
 
23540
25314
  doubleRaf(() => {
23541
- this.calendar.focusCloseButton();
25315
+ this.focusActiveCellWhenReady();
23542
25316
  });
23543
25317
  }
23544
25318
  });
23545
25319
 
23546
25320
  guardTouchPassthrough(this.shadowRoot.querySelector('.calendarWrapper'));
25321
+ } else {
25322
+ // Desktop (non-fullscreen) modal: make the trigger inert so users
25323
+ // cannot interact with the input while the modal bib is open.
25324
+ if (this.dropdown.desktopModal) {
25325
+ this.dropdown.trigger.inert = true;
25326
+ }
25327
+
25328
+ // Desktop (non-fullscreen): focus the active calendar cell.
25329
+ this.dropdown.updateComplete.then(() => {
25330
+ this.focusActiveCellWhenReady();
25331
+ });
23547
25332
  }
23548
25333
  } else {
23549
25334
  // Always clear the inert flag. Only restore focus to the input when the datepicker
@@ -23589,7 +25374,7 @@ class AuroDatePicker extends AuroElement {
23589
25374
  bibEl.close();
23590
25375
  bibEl.open(true);
23591
25376
  doubleRaf(() => {
23592
- this.calendar.focusCloseButton();
25377
+ this.focusActiveCellWhenReady();
23593
25378
  });
23594
25379
  }
23595
25380
  });
@@ -23784,14 +25569,8 @@ class AuroDatePicker extends AuroElement {
23784
25569
 
23785
25570
  if (onEndValue) {
23786
25571
  this.valueEnd = newDate;
23787
- if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
23788
- this.focus('startDate');
23789
- }
23790
25572
  } else {
23791
25573
  this.value = newDate;
23792
- if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
23793
- this.focus('endDate');
23794
- }
23795
25574
  }
23796
25575
  }
23797
25576
  }
@@ -23831,6 +25610,27 @@ class AuroDatePicker extends AuroElement {
23831
25610
  this.resetInputs();
23832
25611
  }
23833
25612
 
25613
+ /**
25614
+ * Checks whether a formatted date string matches a blackout date.
25615
+ * @private
25616
+ * @param {string} dateStr - A date string in the component's configured format.
25617
+ * @returns {boolean} True if the date is in the blackoutDates list.
25618
+ */
25619
+ isBlackoutDate(dateStr) {
25620
+ if (!Array.isArray(this.blackoutDates) || this.blackoutDates.length === 0 || !dateStr) {
25621
+ return false;
25622
+ }
25623
+
25624
+ const formatted = this.util.toNorthAmericanFormat(dateStr, this.format);
25625
+ if (!this.util.validDateStr(dateStr, this.format)) return false;
25626
+
25627
+ const d = new Date(formatted);
25628
+ const yyyy = d.getFullYear();
25629
+ const mm = String(d.getMonth() + 1).padStart(2, '0');
25630
+ const dd = String(d.getDate()).padStart(2, '0');
25631
+ return this.blackoutDates.includes(`${yyyy}-${mm}-${dd}`);
25632
+ }
25633
+
23834
25634
  /**
23835
25635
  * Validates value.
23836
25636
  * @param {boolean} [force=false] - Whether to force validation.
@@ -23842,6 +25642,24 @@ class AuroDatePicker extends AuroElement {
23842
25642
  }
23843
25643
 
23844
25644
  this.validation.validate(this, force);
25645
+
25646
+ // After standard validation, check blackout dates for typed input
25647
+ if (this.validity !== 'customError') {
25648
+ if (this.isBlackoutDate(this.value) || (this.range && this.isBlackoutDate(this.valueEnd))) {
25649
+ const msg = this.setCustomValidityCustomError || 'Selected date is unavailable';
25650
+ this.validity = 'customError';
25651
+ this.errorMessage = msg;
25652
+
25653
+ this.dispatchEvent(new CustomEvent('auroFormElement-validated', {
25654
+ bubbles: true,
25655
+ composed: true,
25656
+ detail: {
25657
+ validity: this.validity,
25658
+ message: this.errorMessage
25659
+ }
25660
+ }));
25661
+ }
25662
+ }
23845
25663
  }
23846
25664
 
23847
25665
  /**
@@ -23922,6 +25740,9 @@ class AuroDatePicker extends AuroElement {
23922
25740
 
23923
25741
  if (this.cellClickActive) {
23924
25742
  this.cellClickActive = false;
25743
+ this.wasCellClick = true;
25744
+ } else {
25745
+ this.wasCellClick = false;
23925
25746
  }
23926
25747
 
23927
25748
  if (this.value && this.util.validDateStr(this.value, this.format)) {
@@ -23952,16 +25773,44 @@ class AuroDatePicker extends AuroElement {
23952
25773
  }
23953
25774
 
23954
25775
  if (this.value && this.value.length === this.inputList[0].lengthForType) {
23955
- this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25776
+ // Skip centralDate update when user clicked a cell in range mode
25777
+ // to prevent the displayed months from shifting
25778
+ if (!(this.wasCellClick && this.range)) {
25779
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25780
+ }
23956
25781
  }
23957
25782
 
23958
25783
  this.setHasValue();
23959
25784
  }
23960
25785
 
25786
+ if (changedProperties.has('blackoutDates')) {
25787
+ // Force calendar cells to re-render with updated blackout state.
25788
+ // requestUpdate on the calendar alone is insufficient because cells
25789
+ // don't receive blackoutDates as a bound property. Dispatching the
25790
+ // slot content event triggers handleSlotContent → requestUpdate on each cell.
25791
+ if (this.calendar) {
25792
+ this.calendar.requestUpdate();
25793
+ this.dispatchEvent(new CustomEvent('auroDatePicker-newSlotContent'));
25794
+ }
25795
+
25796
+ // Re-run validation so that a previously valid value that now falls on
25797
+ // a blackout date is flagged, and vice versa.
25798
+ if (this.value || this.valueEnd) {
25799
+ this.validate();
25800
+ }
25801
+ }
25802
+
23961
25803
  if (changedProperties.has('valueEnd') && this.inputList[1]) {
23962
25804
 
23963
25805
  this.formattedValueEnd = this.util.toNorthAmericanFormat(this.valueEnd, this.format);
23964
25806
 
25807
+ if (this.cellClickActive) {
25808
+ this.cellClickActive = false;
25809
+ this.wasCellClick = true;
25810
+ } else {
25811
+ this.wasCellClick = false;
25812
+ }
25813
+
23965
25814
  // update the calendar
23966
25815
  if (this.valueEnd && this.util.validDateStr(this.valueEnd, this.format)) {
23967
25816
  this.calendar.dateTo = this.convertToWcValidTime(this.formattedValueEnd);
@@ -23989,7 +25838,11 @@ class AuroDatePicker extends AuroElement {
23989
25838
  }
23990
25839
 
23991
25840
  if (this.valueEnd && this.valueEnd.length === this.inputList[1].lengthForType) {
23992
- this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
25841
+ // Skip centralDate update when user clicked a cell in range mode
25842
+ // to prevent the displayed months from shifting
25843
+ if (!this.wasCellClick) {
25844
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
25845
+ }
23993
25846
  }
23994
25847
 
23995
25848
  this.validate();
@@ -24146,6 +25999,7 @@ class AuroDatePicker extends AuroElement {
24146
25999
  }
24147
26000
 
24148
26001
  firstUpdated() {
26002
+
24149
26003
  // Add the tag name as an attribute if it is different than the component name
24150
26004
  this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
24151
26005
 
@@ -24575,7 +26429,7 @@ class AuroDatePicker extends AuroElement {
24575
26429
  // Base HTML render() handles dropdown and calendar bib
24576
26430
  return u$a`
24577
26431
  <!-- Hidden slot for clear button aria-label -->
24578
- <slot name="ariaLabel.input.clear" hidden @slotchange=${this.requestUpdate}></slot>
26432
+ <slot name="ariaLabel.input.clear" hidden @slotchange=${() => this.requestUpdate()}></slot>
24579
26433
 
24580
26434
  <${this.dropdownTag}
24581
26435
  appearance="${this.onDark ? 'inverse' : this.appearance}"
@@ -24592,6 +26446,7 @@ class AuroDatePicker extends AuroElement {
24592
26446
  .shape="${this.shape}"
24593
26447
  .size="${this.size}"
24594
26448
  class="${e$4(dropdownElementClassMap)}"
26449
+ desktopModal
24595
26450
  disableEventShow
24596
26451
  for="dropdownMenu"
24597
26452
  part="dropdown"
@@ -24611,10 +26466,86 @@ class AuroDatePicker extends AuroElement {
24611
26466
  }
24612
26467
  }
24613
26468
 
26469
+ function blackoutLabelExample() {
26470
+ const blackoutDP = document.querySelector('#blackoutLabelExample');
26471
+
26472
+ function formatMMDDYYYY(date) {
26473
+ const mm = String(date.getMonth() + 1).padStart(2, '0');
26474
+ const dd = String(date.getDate()).padStart(2, '0');
26475
+ return `${mm}/${dd}/${date.getFullYear()}`;
26476
+ }
26477
+
26478
+ function setup() {
26479
+ const today = new Date();
26480
+ today.setHours(0, 0, 0, 0);
26481
+
26482
+ // Set min to 1 week before today, max to 1 week after today
26483
+ const minDate = new Date(today);
26484
+ minDate.setDate(today.getDate() - 7);
26485
+
26486
+ const maxDate = new Date(today);
26487
+ maxDate.setDate(today.getDate() + 7);
26488
+
26489
+ blackoutDP.setAttribute('minDate', formatMMDDYYYY(minDate));
26490
+ blackoutDP.setAttribute('maxDate', formatMMDDYYYY(maxDate));
26491
+
26492
+ // Generate all dates within the min/max range
26493
+ const blackoutDates = [];
26494
+
26495
+ for (let d = new Date(minDate); d <= maxDate; d.setDate(d.getDate() + 1)) {
26496
+ const current = new Date(d);
26497
+ const mm = String(current.getMonth() + 1).padStart(2, '0');
26498
+ const dd = String(current.getDate()).padStart(2, '0');
26499
+ const yyyy = current.getFullYear();
26500
+ const slotDateStr = `${mm}_${dd}_${yyyy}`;
26501
+
26502
+ // Mark every 3rd date as blackout (deterministic pattern)
26503
+ const dayOfMonth = current.getDate();
26504
+ const isSoldOut = dayOfMonth % 3 === 0;
26505
+
26506
+ if (isSoldOut) {
26507
+ blackoutDates.push(`${yyyy}-${mm}-${dd}`);
26508
+
26509
+ const popover = document.createElement('span');
26510
+ popover.setAttribute('slot', `popover_${slotDateStr}`);
26511
+ popover.textContent = 'There are no tickets available for this date.';
26512
+ blackoutDP.appendChild(popover);
26513
+ } else {
26514
+ // Use a fixed price based on day of month for deterministic output
26515
+ const price = 150 + (dayOfMonth * 17) % 400;
26516
+
26517
+ const dateSlot = document.createElement('span');
26518
+ dateSlot.setAttribute('slot', `date_${slotDateStr}`);
26519
+ dateSlot.textContent = `$${price}`;
26520
+ blackoutDP.appendChild(dateSlot);
26521
+ }
26522
+ }
26523
+
26524
+ blackoutDP.blackoutDates = blackoutDates;
26525
+ }
26526
+
26527
+ setup();
26528
+ }
26529
+
24614
26530
  AuroDatePicker.register(); // registering to auro-datepicker
24615
26531
  AuroDatePicker.register('custom-datepicker');
24616
26532
 
24617
26533
  function initExamples(initCount) {
26534
+ initCount = initCount || 0;
26535
+
26536
+ try {
26537
+ // Only run when the demo element exists on the current page
26538
+ if (document.querySelector('#blackoutLabelExample')) {
26539
+ blackoutLabelExample();
26540
+ }
26541
+ } catch {
26542
+ if (initCount <= 20) {
26543
+ // setTimeout handles issue where content is sometimes loaded after the functions get called
26544
+ setTimeout(() => {
26545
+ initExamples(initCount + 1);
26546
+ }, 100);
26547
+ }
26548
+ }
24618
26549
  }
24619
26550
 
24620
26551
  export { initExamples };