@aurodesignsystem-dev/auro-formkit 0.0.0-pr1477.1 → 0.0.0-pr1480.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +26498 -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 +2122 -185
  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 +2017 -156
  45. package/components/datepicker/dist/registered.js +2017 -156
  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 +2733 -220
  65. package/components/form/demo/getting-started.min.js +2733 -220
  66. package/components/form/demo/index.min.js +2733 -220
  67. package/components/form/demo/pages.json +1 -1
  68. package/components/form/demo/registerDemoDeps.min.js +2733 -220
  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 +1018 -74
  103. package/package.json +2 -2
@@ -1,6 +1,6 @@
1
1
  import { unsafeStatic, literal, html as html$1 } from 'lit/static-html.js';
2
2
  import { classMap } from 'lit/directives/class-map.js';
3
- import { html, css, LitElement } from 'lit';
3
+ import { html, css, LitElement, nothing } from 'lit';
4
4
  import { property } from 'lit/decorators.js';
5
5
  import { ifDefined } from 'lit/directives/if-defined.js';
6
6
  import { createRef, ref } from 'lit/directives/ref.js';
@@ -1343,7 +1343,6 @@ class UtilitiesCalendarRender {
1343
1343
  .max="${elem.max}"
1344
1344
  ?noRange="${elem.noRange}"
1345
1345
  .monthFirst="${elem.monthFirst}"
1346
- .hoveredDate="${elem.hoveredDate}"
1347
1346
  .dateTo="${elem.dateTo}"
1348
1347
  .dateFrom="${elem.dateFrom}"
1349
1348
  .locale="${elem.locale}"
@@ -1375,43 +1374,6 @@ var snowflakeStyle = css`:host([layout*=snowflake]) [auro-input]{flex:1;text-ali
1375
1374
 
1376
1375
  var snowflakeColors = css`:host([layout=snowflake]) [auro-dropdown]:not(:is([error],.hasFocus)){--ds-auro-dropdown-trigger-border-color: transparent}`;
1377
1376
 
1378
- var styleCss$7 = css`.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:""}`;
1379
-
1380
- var colorCss$7 = css`.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)}}`;
1381
-
1382
- var styleCss$6 = css`: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%}`;
1383
-
1384
- var colorCss$6 = css`: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)}`;
1385
-
1386
- /******************************************************************************
1387
- Copyright (c) Microsoft Corporation.
1388
-
1389
- Permission to use, copy, modify, and/or distribute this software for any
1390
- purpose with or without fee is hereby granted.
1391
-
1392
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1393
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1394
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1395
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1396
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1397
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1398
- PERFORMANCE OF THIS SOFTWARE.
1399
- ***************************************************************************** */
1400
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
1401
-
1402
-
1403
- function __decorate(decorators, target, key, desc) {
1404
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1405
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1406
- 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;
1407
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1408
- }
1409
-
1410
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
1411
- var e = new Error(message);
1412
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
1413
- };
1414
-
1415
1377
  /**
1416
1378
  * @module constants
1417
1379
  * @summary Useful constants
@@ -7166,6 +7128,43 @@ function subYears(date, amount, options) {
7166
7128
  return addYears(date, -1, options);
7167
7129
  }
7168
7130
 
7131
+ var styleCss$7 = css`.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}`;
7132
+
7133
+ var colorCss$7 = css`.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)}}`;
7134
+
7135
+ var styleCss$6 = css`: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%}`;
7136
+
7137
+ var colorCss$6 = css`: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)}`;
7138
+
7139
+ /******************************************************************************
7140
+ Copyright (c) Microsoft Corporation.
7141
+
7142
+ Permission to use, copy, modify, and/or distribute this software for any
7143
+ purpose with or without fee is hereby granted.
7144
+
7145
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
7146
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
7147
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
7148
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
7149
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
7150
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
7151
+ PERFORMANCE OF THIS SOFTWARE.
7152
+ ***************************************************************************** */
7153
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
7154
+
7155
+
7156
+ function __decorate(decorators, target, key, desc) {
7157
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
7158
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
7159
+ 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;
7160
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7161
+ }
7162
+
7163
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
7164
+ var e = new Error(message);
7165
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
7166
+ };
7167
+
7169
7168
  class RangeDatepickerCell extends LitElement {
7170
7169
  constructor() {
7171
7170
  super(...arguments);
@@ -7888,20 +7887,25 @@ __decorate([property({ type: Array })], RangeDatepickerCalendar.prototype, "dayN
7888
7887
  __decorate([property({ type: Array })], RangeDatepickerCalendar.prototype, "daysOfMonth", void 0);
7889
7888
  AuroLibraryRuntimeUtils$5.prototype.registerComponent('wc-range-datepicker-calendar', RangeDatepickerCalendar);
7890
7889
 
7891
- var styleCss$5 = css`.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}}`;
7890
+ var styleCss$5 = css`.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}}`;
7892
7891
 
7893
- var colorCss$5 = css`: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}`;
7892
+ var colorCss$5 = css`: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}`;
7894
7893
 
7895
- 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$1="top",o="bottom",n$1="right",a="left",l$3="auto",c$3=[r$1,o,n$1,a],p$6="start",d$3="end",f$6="viewport",h$3="popper",m$6=c$3.reduce(function(e,t){return e.concat([t+"-"+p$6,t+"-"+d$3])},[]),u$6=[].concat(c$3,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$6,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3(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$3(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$3(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$6(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$6(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$3(e))>=0}function C$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function R$3(e){return "html"===v$3(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$3(i)||"body"===v$3(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$3(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$1].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$3))}(l.padding,i),g=T$3(p),v="y"===h?r$1:a,y="y"===h?o:n$1,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$1,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$1||(l===a||l===n$1)&&c===d$3)z=o,x-=(g&&M===E&&E.visualViewport?E.visualViewport.height:M[T])-s.height,x*=h?1:-1;if(l===a||(l===r$1||l===o)&&c===d$3)k=n$1,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$6(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$3(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$6?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$6(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$3(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$1:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$1: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$6: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$6:u,v=i.elementContext,y=void 0===v?h$3:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,O=I("number"!=typeof _?_:F(_,c$3)),k=y===h$3?"reference":h$3,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$6(e.elements.reference),B=oe({reference:T,element:A,placement:a}),L=ie(Object.assign({},A,B)),H=y===h$3?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$3&&j){var N=j[a];Object.keys(R).forEach(function(e){var t=[n$1,o].indexOf(e)>=0?1:-1,i=[r$1,o].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$6:l,d=q$3(s),f=d?a?m$6:m$6.filter(function(e){return q$3(e)===d}):c$3,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$6,j=[r$1,o].indexOf(C)>=0,N=j?"width":"height",P=ne(t,{placement:H,boundary:g,rootBoundary:v,altBoundary:y,padding:u}),D=j?R?n$1:a:R?o:r$1;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$1,n$1,o,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$6.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$1].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$1].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$1:a,W="y"===E?o:n$1,X="y"===E?"height":"width",V=B[E],G=V+x[U],$=V-x[W],K=y?-H[X]/2:0,Y=A===p$6?L[X]:H[X],J=A===p$6?-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$1:a,me="x"===E?o:n$1,ue=B[M],ge="y"===M?"height":"width",ve=ue+x[he],ye=ue-x[me],we=-1!==[r$1,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$6(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$3(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$6(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=css`::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)}
7894
+ 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$1="top",o="bottom",n$1="right",a="left",l$3="auto",c$3=[r$1,o,n$1,a],p$6="start",d$3="end",f$6="viewport",h$3="popper",u$6=c$3.reduce(function(e,t){return e.concat([t+"-"+p$6,t+"-"+d$3])},[]),m$6=[].concat(c$3,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$6,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3(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$3(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$3(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$6(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$3(e))>=0}function H$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function C$3(e){return "html"===v$3(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$3(i)||"body"===v$3(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$3(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$1].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$3))}(l.padding,i),g=M$6(p),v="y"===h?r$1:a,y="y"===h?o:n$1,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$1,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$1||(l===a||l===n$1)&&c===d$3)T=o,x-=(g&&E===z&&z.visualViewport?z.visualViewport.height:E[M])-s.height,x*=h?1:-1;if(l===a||(l===r$1||l===o)&&c===d$3)O=n$1,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$3(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$6?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$3(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$1:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$1: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$6: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$6:m,v=i.elementContext,y=void 0===v?h$3:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=I("number"!=typeof _?_:q$3(_,c$3)),O=y===h$3?"reference":h$3,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$3?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$3&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n$1,o].indexOf(e)>=0?1:-1,i=[r$1,o].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$6:l,d=U$3(s),f=d?a?u$6:u$6.filter(function(e){return U$3(e)===d}):c$3,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$6,D=[r$1,o].indexOf(H)>=0,N=D?"width":"height",P=ne(t,{placement:R,boundary:g,rootBoundary:v,altBoundary:y,padding:m}),j=D?C?n$1:a:C?o:r$1;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$1,n$1,o,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$6.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$1].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$1].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$1:a,V="y"===z?o:n$1,W="y"===z?"height":"width",X=B[z],$=X+x[F],G=X-x[V],K=y?-R[W]/2:0,Y=k===p$6?L[W]:R[W],J=k===p$6?-R[W]:-L[W],Q=t.elements.arrow,Z=y&&Q?M$6(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$1:a,ue="x"===z?o:n$1,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r$1,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$3(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$6(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=css`::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)}
7896
7895
  `,xe=css`.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:""}
7897
7896
  `,Se=css`: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)}
7898
- `;class _e extends LitElement{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;}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 [css`${xe}`,css`${be}`,css`${Se}`]}static register(e="auro-popover"){s.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 html`
7899
- <div id="popover" class="popover util_insetLg body-default" part="popover">
7897
+ `;class _e extends LitElement{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;}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 [css`${xe}`,css`${be}`,css`${Se}`]}static register(e="auro-popover"){s.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 html`
7898
+ <div
7899
+ id="popover"
7900
+ class="popover util_insetLg body-default"
7901
+ part="popover"
7902
+ role="tooltip"
7903
+ aria-hidden="${this.isPopoverVisible?"false":"true"}">
7900
7904
  <div id="arrow" class="arrow" data-popper-arrow></div>
7901
- <span role="tooltip"><slot></slot></span>
7905
+ <slot></slot>
7902
7906
  </div>
7903
7907
 
7904
- <span>
7908
+ <span role="presentation">
7905
7909
  <slot name="trigger" data-trigger-placement="${this.placement}"></slot>
7906
7910
  </span>
7907
7911
  `}}
@@ -7916,7 +7920,6 @@ class AuroCalendarCell extends LitElement {
7916
7920
 
7917
7921
  this.day = null;
7918
7922
  this.selected = false;
7919
- this.hovered = false;
7920
7923
  this.dateTo = null;
7921
7924
  this.dateFrom = null;
7922
7925
  this.month = null;
@@ -7924,11 +7927,12 @@ class AuroCalendarCell extends LitElement {
7924
7927
  this.max = null;
7925
7928
  this.disabled = false;
7926
7929
  this.disabledDays = [];
7927
- this.hoveredDate = null;
7928
7930
  this.isCurrentDate = false;
7929
7931
  this._locale = null;
7930
7932
  this.dateStr = null;
7931
7933
  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.
7934
+ this.active = false;
7935
+ this.hasPopoverContent = false;
7932
7936
 
7933
7937
  this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
7934
7938
 
@@ -7947,7 +7951,6 @@ class AuroCalendarCell extends LitElement {
7947
7951
  // ...super.properties,
7948
7952
  day: { type: Object },
7949
7953
  selected: { type: Boolean },
7950
- hovered: { type: Boolean },
7951
7954
  dateTo: { type: String },
7952
7955
  dateFrom: { type: String },
7953
7956
  month: { type: String },
@@ -7958,11 +7961,11 @@ class AuroCalendarCell extends LitElement {
7958
7961
  reflect: true
7959
7962
  },
7960
7963
  disabledDays: { type: Array },
7961
- hoveredDate: { type: String },
7962
7964
  isCurrentDate: { type: Boolean },
7963
7965
  locale: { type: Object },
7964
7966
  dateStr: { type: String },
7965
- renderForDateSlot: { type: Boolean }
7967
+ renderForDateSlot: { type: Boolean },
7968
+ hasPopoverContent: { type: Boolean }
7966
7969
  };
7967
7970
  }
7968
7971
 
@@ -7986,17 +7989,17 @@ class AuroCalendarCell extends LitElement {
7986
7989
  }
7987
7990
 
7988
7991
  /**
7989
- * Handles selected and hovered states of the calendar cell when the date changes.
7992
+ * Handles selected state of the calendar cell when the selection changes.
7993
+ * Also clears any imperative range preview classes so classMap is the
7994
+ * sole source of truth after a selection update.
7990
7995
  * @private
7991
7996
  * @param {Number} dateFrom - Depart date.
7992
7997
  * @param {Number} dateTo - Return date.
7993
- * @param {Number} hoveredDate - Hovered date.
7994
7998
  * @param {Object} day - An object containing the dateFrom and day of month values.
7995
7999
  * @returns {void}
7996
8000
  */
7997
- dateChanged(dateFrom, dateTo, hoveredDate, day) {
8001
+ dateChanged(dateFrom, dateTo, day) {
7998
8002
  this.selected = false;
7999
- this.hovered = false;
8000
8003
 
8001
8004
  const parsedDateFrom = parseInt(dateFrom, 10);
8002
8005
  const parsedDateTo = parseInt(dateTo, 10);
@@ -8008,10 +8011,6 @@ class AuroCalendarCell extends LitElement {
8008
8011
  if (day.date === departTimestamp || day.date === returnTimestamp) {
8009
8012
  this.selected = true;
8010
8013
  }
8011
-
8012
- if (((hoveredDate === day.date || day.date < hoveredDate) && day.date > parsedDateFrom && !parsedDateTo && !Number.isNaN(parsedDateFrom) && parsedDateFrom !== undefined && !this.selected) || (day.date > parsedDateFrom && day.date < parsedDateTo)) {
8013
- this.hovered = true;
8014
- }
8015
8014
  }
8016
8015
  }
8017
8016
 
@@ -8021,27 +8020,105 @@ class AuroCalendarCell extends LitElement {
8021
8020
  * @returns {void}
8022
8021
  */
8023
8022
  handleTap() {
8024
- if (!this.disabled) {
8023
+ if (!this.disabled && !this.isBlackout()) {
8025
8024
  this.datepicker.handleCellClick(this.day.date);
8026
8025
  }
8026
+
8027
+ // Set this cell as the active cell regardless of blackout status
8028
+ if (this.day) {
8029
+ this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
8030
+ bubbles: true,
8031
+ composed: true,
8032
+ detail: { date: this.day.date }
8033
+ }));
8034
+ }
8027
8035
  }
8028
8036
 
8029
8037
  /**
8030
8038
  * Handles user hover events and dispatches a custom event.
8039
+ * Does NOT set any reactive properties — the range preview is handled
8040
+ * imperatively by the calendar component to avoid O(N) re-renders.
8031
8041
  * @private
8032
8042
  * @returns {void}
8033
8043
  */
8034
8044
  handleHover() {
8035
- this.hovered = true;
8036
-
8037
- let _a;
8038
8045
  this.dispatchEvent(new CustomEvent('date-is-hovered', {
8039
- detail: { date: (_a = this.day) === null || _a === void 0 ? void 0 : _a.date },
8046
+ detail: { date: this.day?.date },
8047
+ }));
8048
+ }
8049
+
8050
+ /**
8051
+ * Handles focus events on the cell button.
8052
+ * Dispatches a lightweight event for the calendar to handle SR
8053
+ * announcements and range preview updates without triggering
8054
+ * any Lit lifecycle updates.
8055
+ * @private
8056
+ * @returns {void}
8057
+ */
8058
+ handleFocus() {
8059
+ this.dispatchEvent(new CustomEvent('calendar-cell-focused', {
8060
+ bubbles: true,
8061
+ composed: true,
8062
+ detail: { date: this.day?.date },
8040
8063
  }));
8041
8064
  }
8042
8065
 
8043
8066
  /**
8044
- * Checks if the current date is a valid date depending on the min and max values.
8067
+ * Checks if the current date is outside the valid min/max range.
8068
+ * Out-of-range cells are not focusable and are hidden from screen readers.
8069
+ * @private
8070
+ * @param {Object} day - An object containing the dateFrom and day of month values.
8071
+ * @param {Number} min - The minimum date value.
8072
+ * @param {Number} max - The maximum date value.
8073
+ * @returns {Boolean} - True if the date is out of range.
8074
+ */
8075
+ isOutOfRange(day, min, max) {
8076
+ if (day && day.date != null) {
8077
+ return day.date < min || day.date > max;
8078
+ }
8079
+ return false;
8080
+ }
8081
+
8082
+ /**
8083
+ * Checks if the current date is a blackout date (in disabledDays but within range).
8084
+ * Blackout cells are focusable but not selectable.
8085
+ * @private
8086
+ * @returns {Boolean} - True if the date is a blackout date.
8087
+ */
8088
+ isBlackout() {
8089
+ if (!this.day || this.day.date == null || this.isOutOfRange(this.day, this.min, this.max)) {
8090
+ return false;
8091
+ }
8092
+
8093
+ // Check against disabledDays timestamps (legacy path)
8094
+ if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
8095
+ if (this.disabledDays.findIndex(d => parseInt(d, 10) === this.day.date) !== -1) {
8096
+ return true;
8097
+ }
8098
+ }
8099
+
8100
+ // Check against blackoutDates (ISO format YYYY-MM-DD) on the datepicker
8101
+ const blackoutDates = this.datepicker?.blackoutDates;
8102
+
8103
+ if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
8104
+ const date = new Date(this.day.date * 1000);
8105
+ const yyyy = date.getFullYear();
8106
+ const mm = String(date.getMonth() + 1).padStart(2, '0');
8107
+ const dd = String(date.getDate()).padStart(2, '0');
8108
+ const cellDate = `${yyyy}-${mm}-${dd}`;
8109
+ if (blackoutDates.includes(cellDate)) {
8110
+ return true;
8111
+ }
8112
+ }
8113
+
8114
+ return false;
8115
+ }
8116
+
8117
+ /**
8118
+ * Checks if the current date is disabled based on min/max range or the
8119
+ * legacy disabledDays timestamp list. Sets the `disabled` attribute on the
8120
+ * host when the date falls outside the allowed range or appears in
8121
+ * disabledDays. Note: blackout dates are handled separately by `isBlackout()`.
8045
8122
  * @private
8046
8123
  * @param {Object} day - An object containing the dateFrom and day of month values.
8047
8124
  * @param {Number} min - The minimum date value.
@@ -8061,6 +8138,105 @@ class AuroCalendarCell extends LitElement {
8061
8138
  return false;
8062
8139
  }
8063
8140
 
8141
+ /**
8142
+ * Generates a unique cell ID in the format cell-YYYY-MM-DD.
8143
+ * @private
8144
+ * @returns {String} The unique cell ID.
8145
+ */
8146
+ getCellId() {
8147
+ if (!this.day || !this.day.date) return '';
8148
+ const date = new Date(this.day.date * 1000);
8149
+ const year = date.getFullYear();
8150
+ const month = String(date.getMonth() + 1).padStart(2, '0');
8151
+ const day = String(date.getDate()).padStart(2, '0');
8152
+ return `cell-${year}-${month}-${day}`;
8153
+ }
8154
+
8155
+ /**
8156
+ * Generates a localized aria-label for the cell button using Intl.DateTimeFormat.
8157
+ * Includes range position and blackout status.
8158
+ * @private
8159
+ * @returns {String} The aria-label string.
8160
+ */
8161
+ getAriaLabel() {
8162
+ if (!this.day || this.day.date === undefined) return '';
8163
+
8164
+ const date = new Date(this.day.date * 1000);
8165
+
8166
+ // Generate localized full date string using the configured locale
8167
+ const localeCode = this.locale?.code || undefined;
8168
+ const dateFormatter = new Intl.DateTimeFormat(localeCode, {
8169
+ weekday: 'long',
8170
+ year: 'numeric',
8171
+ month: 'long',
8172
+ day: 'numeric'
8173
+ });
8174
+
8175
+ let label = dateFormatter.format(date);
8176
+
8177
+ // Append date slot content (e.g. prices) so it is announced with the date.
8178
+ if (this.renderForDateSlot) {
8179
+ const dateSlotEl = this.querySelector(`[slot="date_${this.dateStr}"]`);
8180
+ if (dateSlotEl) {
8181
+ const text = dateSlotEl.innerText?.trim();
8182
+ if (text) {
8183
+ label += `, ${text}`;
8184
+ }
8185
+ }
8186
+ }
8187
+
8188
+ // appending popover content here so that it gets read in a logical order with the other date content.
8189
+ if (this.hasPopoverContent) {
8190
+ const popoverEl = this.querySelector(`[slot="popover_${this.dateStr}"]`);
8191
+ if (popoverEl) {
8192
+ label += `, ${popoverEl.innerText.trim()}`;
8193
+ }
8194
+ }
8195
+
8196
+ // Append range position label for range datepickers
8197
+ const rangePosition = this.getRangePosition();
8198
+ if (rangePosition) {
8199
+ label += `, ${rangePosition}`;
8200
+ }
8201
+
8202
+ // Append blackout label for blackout cells
8203
+ if (this.isBlackout()) {
8204
+ label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
8205
+ }
8206
+
8207
+ return label;
8208
+ }
8209
+
8210
+ /**
8211
+ * Determines the range position of this cell relative to the current selection.
8212
+ * @private
8213
+ * @returns {String|null} Range position label or null if not in range mode.
8214
+ */
8215
+ getRangePosition() {
8216
+ if (!this.datepicker || !this.datepicker.hasAttribute('range')) return null;
8217
+
8218
+ const parsedDateFrom = Number.parseInt(this.dateFrom, 10);
8219
+ if (!Number.isFinite(parsedDateFrom)) return null;
8220
+
8221
+ const departTimestamp = startOfDay(parsedDateFrom * 1000) / 1000;
8222
+ const dayDate = this.day.date;
8223
+
8224
+ const parsedDateTo = Number.parseInt(this.dateTo, 10);
8225
+ const hasDateTo = Number.isFinite(parsedDateTo);
8226
+ const returnTimestamp = hasDateTo ? startOfDay(parsedDateTo * 1000) / 1000 : null;
8227
+
8228
+ if (dayDate === departTimestamp) return this.datepicker.rangeLabelStart || 'range start';
8229
+
8230
+ if (hasDateTo && dayDate === returnTimestamp) return this.datepicker.rangeLabelEnd || 'range end';
8231
+
8232
+ if (dayDate < departTimestamp) return this.datepicker.rangeLabelBeforeRange || 'before range';
8233
+
8234
+ if (hasDateTo && dayDate > departTimestamp && dayDate < returnTimestamp) return this.datepicker.rangeLabelInRange || 'in range';
8235
+
8236
+ // After start date, no end date yet, or after end date
8237
+ return this.datepicker.rangeLabelAfterRange || 'after range';
8238
+ }
8239
+
8064
8240
  /**
8065
8241
  * Checks if the current date is the depart date.
8066
8242
  * @private
@@ -8222,9 +8398,9 @@ class AuroCalendarCell extends LitElement {
8222
8398
 
8223
8399
  if (popoverSlotContent) {
8224
8400
  this.appendChild(popoverSlotContent.cloneNode(true));
8225
- this.auroPopover.removeAttribute('disabled');
8401
+ this.hasPopoverContent = true;
8226
8402
  } else {
8227
- this.auroPopover.setAttribute('disabled', true);
8403
+ this.hasPopoverContent = false;
8228
8404
  }
8229
8405
  } catch (err) { // eslint-disable-line no-unused-vars
8230
8406
  // Error handling goes here
@@ -8240,67 +8416,251 @@ class AuroCalendarCell extends LitElement {
8240
8416
  return;
8241
8417
  }
8242
8418
  this.datepicker = calendar.datepicker;
8243
- this.datepicker.addEventListener('auroDatePicker-newSlotContent', () => {
8419
+ this._slotContentHandler = () => {
8244
8420
  this.handleSlotContent();
8421
+ // Force re-render so isBlackout()/aria-disabled reflect updated blackoutDates.
8422
+ this.requestUpdate();
8423
+ };
8424
+ this.datepicker.addEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
8425
+
8426
+ // Cache button reference for imperative class manipulation.
8427
+ this.updateComplete.then(() => {
8428
+ this._cachedButton = this.shadowRoot.querySelector('button.day');
8245
8429
  });
8246
8430
 
8431
+ // Trigger an initial update now that `this.datepicker` is assigned so
8432
+ // cells reflect blackout/slot state that was configured before first render.
8433
+ this.requestUpdate();
8434
+
8435
+ this.calendarMonth = calendarMonth;
8436
+ this.configurePopover();
8437
+ }
8438
+
8439
+ disconnectedCallback() {
8440
+ super.disconnectedCallback();
8441
+ if (this.datepicker && this._slotContentHandler) {
8442
+ this.datepicker.removeEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
8443
+ }
8444
+ }
8445
+
8446
+ /**
8447
+ * Configures the popover instance with the calendar month boundary.
8448
+ * Called from firstUpdated and updated because the popover element is only
8449
+ * rendered after hasPopoverContent becomes true (set by handleSlotContent).
8450
+ * @private
8451
+ * @returns {void}
8452
+ */
8453
+ configurePopover() {
8247
8454
  this.auroPopover = this.shadowRoot.querySelector(this.popoverTag._$litStatic$);
8248
8455
 
8249
- this.auroPopover.boundary = calendarMonth;
8456
+ if (this.auroPopover && this.calendarMonth) {
8457
+ this.auroPopover.boundary = this.calendarMonth;
8458
+ }
8250
8459
  }
8251
8460
 
8252
8461
  updated(properties) {
8253
- if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('hoveredDate') || properties.has('day')) {
8254
- this.dateChanged(this.dateFrom, this.dateTo, this.hoveredDate, this.day);
8462
+ if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('day')) {
8463
+ this.dateChanged(this.dateFrom, this.dateTo, this.day);
8464
+ }
8465
+
8466
+ if (properties.has('day') && this.day) {
8467
+ this.setDateSlotName();
8468
+ this.handleSlotContent();
8469
+
8470
+ // Re-cache button reference when the day changes (cell may have re-rendered).
8471
+ this.updateComplete.then(() => {
8472
+ this._cachedButton = this.shadowRoot.querySelector('button.day');
8473
+ });
8474
+
8475
+ // Update host-level aria attributes for ariaActiveDescendantElement.
8476
+ this.updateHostAria();
8477
+ }
8478
+
8479
+ // Update host aria when selection changes (aria-selected, range labels)
8480
+ if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('selected')) {
8481
+ this.updateHostAria();
8255
8482
  }
8256
8483
 
8257
- this.setDateSlotName();
8258
- this.handleSlotContent();
8484
+ // Configure popover when it first becomes rendered
8485
+ if (properties.has('hasPopoverContent') && this.hasPopoverContent) {
8486
+ this.updateComplete.then(() => this.configurePopover());
8487
+ }
8259
8488
  }
8260
8489
 
8261
- render() {
8490
+ /**
8491
+ * Updates ARIA attributes on the host element so that
8492
+ * ariaActiveDescendantElement can expose cell info to the SR.
8493
+ * @private
8494
+ * @returns {void}
8495
+ */
8496
+ updateHostAria() {
8497
+ if (!this.day || this.day.date === undefined) return;
8498
+
8499
+ const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
8500
+ if (outOfRange) {
8501
+ this.removeAttribute('role');
8502
+ this.removeAttribute('aria-label');
8503
+ return;
8504
+ }
8505
+
8506
+ // The host acts as the gridcell for ariaActiveDescendantElement.
8507
+ this.setAttribute('role', 'gridcell');
8508
+ this.setAttribute('aria-label', this.getAriaLabel());
8509
+ this.setAttribute('aria-selected', this.selected ? 'true' : 'false');
8510
+
8511
+ if (this.isBlackout()) {
8512
+ this.setAttribute('aria-disabled', 'true');
8513
+ } else {
8514
+ this.removeAttribute('aria-disabled');
8515
+ }
8516
+ }
8517
+
8518
+ /**
8519
+ * Programmatically focuses the cell's interactive button element.
8520
+ * Uses focusVisible: true so the :focus-visible ring appears even when
8521
+ * the bib was opened via mouse click (which sets mouse input modality).
8522
+ * @returns {void}
8523
+ */
8524
+ focusButton() {
8525
+ const button = this._cachedButton || this.shadowRoot.querySelector('button:not([aria-hidden])');
8526
+ if (button) {
8527
+ button.focus({ focusVisible: true });
8528
+ }
8529
+ }
8530
+
8531
+ /**
8532
+ * Imperatively marks this cell as active (tabindex="0") without
8533
+ * triggering a Lit re-render.
8534
+ * @returns {void}
8535
+ */
8536
+ setActive() {
8537
+ this.active = true;
8538
+ const btn = this._cachedButton;
8539
+ if (btn) {
8540
+ btn.setAttribute('tabindex', '0');
8541
+ btn.classList.add('visualFocus');
8542
+ }
8543
+ }
8544
+
8545
+ /**
8546
+ * Imperatively marks this cell as inactive (tabindex="-1") without
8547
+ * triggering a Lit re-render.
8548
+ * @returns {void}
8549
+ */
8550
+ clearActive() {
8551
+ this.active = false;
8552
+ const btn = this._cachedButton;
8553
+ if (btn) {
8554
+ btn.setAttribute('tabindex', '-1');
8555
+ btn.classList.remove('visualFocus');
8556
+ }
8557
+ }
8558
+
8559
+ /**
8560
+ * Updates range preview classes imperatively (no Lit re-render).
8561
+ * Called by the calendar component when the hovered date changes
8562
+ * during range selection (dateFrom set, dateTo not yet set).
8563
+ * @param {Number} hoveredDate - Unix timestamp of the currently hovered/focused date.
8564
+ * @param {Number} dateFrom - Unix timestamp of the selected departure date.
8565
+ * @returns {void}
8566
+ */
8567
+ updateRangePreviewClasses(hoveredDate, dateFrom) {
8568
+ const btn = this._cachedButton;
8569
+ if (!btn || !this.day) return;
8570
+
8571
+ const dayDate = this.day.date;
8572
+ const departTimestamp = startOfDay(dateFrom * 1000) / 1000;
8573
+ const isInRange = dayDate > departTimestamp && dayDate < hoveredDate;
8574
+ const isLastHovered = dayDate === hoveredDate && hoveredDate > departTimestamp;
8575
+ const isDepartWithPreview = dayDate === departTimestamp && hoveredDate > departTimestamp;
8576
+
8577
+ btn.classList.toggle('inRange', isInRange);
8578
+ btn.classList.toggle('lastHoveredDate', isLastHovered);
8579
+ btn.classList.toggle('rangeDepartDate', isDepartWithPreview);
8580
+ }
8581
+
8582
+ /**
8583
+ * Clears all imperative range preview classes from the cell button.
8584
+ * Called when a selection occurs so classMap becomes the sole source of truth.
8585
+ * @returns {void}
8586
+ */
8587
+ clearRangePreviewClasses() {
8588
+ const btn = this._cachedButton;
8589
+ if (!btn) return;
8590
+
8591
+ btn.classList.remove('inRange', 'lastHoveredDate', 'rangeDepartDate');
8592
+ }
8593
+
8594
+ renderCellButton() {
8595
+ const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
8596
+ const role = outOfRange ? 'presentation' : 'gridcell';
8597
+ const blackout = this.isBlackout();
8598
+
8599
+ // Static and selection-driven classes only. Hover-driven classes
8600
+ // (inRange, lastHoveredDate, rangeDepartDate during preview) are
8601
+ // managed imperatively via updateRangePreviewClasses() to avoid
8602
+ // O(N) Lit re-renders on every focus/hover event.
8262
8603
  const buttonClasses = {
8263
8604
  'day': true,
8264
8605
  'body-lg': true,
8265
- 'currentDate': this.currentDate,
8606
+ 'currentDate': this.isCurrentDate,
8266
8607
  'selected': this.selected,
8267
- 'inRange': this.hovered && this.isInRange(this.day, this.dateFrom, this.dateTo),
8268
- 'lastHoveredDate': this.isLastHoveredDate(this.day, this.dateFrom, this.dateTo, this.hoveredDate) && this.datepicker && this.datepicker.hasAttribute('range'),
8269
- 'disabled': this.isEnabled(this.day, this.min, this.max, this.disabledDays),
8270
- 'rangeDepartDate': this.isDepartDate(this.day, this.dateFrom) && (this.hoveredDate > this.dateFrom || this.dateTo),
8271
- 'rangeReturnDate': this.isReturnDate(this.day, this.dateFrom, this.dateTo),
8608
+ 'inRange': this.datepicker?.hasAttribute('range') && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo),
8609
+ 'disabled': outOfRange,
8610
+ 'blackout': blackout,
8611
+ 'rangeDepartDate': this.datepicker?.hasAttribute('range') && this.isDepartDate(this.day, this.dateFrom) && this.dateTo,
8612
+ 'rangeReturnDate': this.datepicker?.hasAttribute('range') && this.isReturnDate(this.day, this.dateFrom, this.dateTo),
8272
8613
  'reference': this.isReferenceDate(this.dateStr),
8273
- 'sameDateTrip': this.dateFrom === this.dateTo
8614
+ 'sameDateTrip': this.datepicker?.hasAttribute('range') && this.dateFrom === this.dateTo
8274
8615
  };
8275
8616
 
8276
- let _a, _b;
8277
8617
  return html$1`
8278
- <${this.popoverTag}>
8279
- <slot name="popover_${this.dateStr}"></slot>
8280
- <button
8281
- slot="trigger"
8282
- @click="${this.handleTap}"
8283
- @mouseover="${this.handleHover}"
8284
- @focus="${this.handleHover}"
8285
- class="${classMap(buttonClasses)}"
8286
- ?disabled="${this.disabled}"
8287
- title="${this.getTitle((_a = this.day) === null || _a === void 0 ? void 0 : _a.date)}"
8288
- tabindex="-1">
8289
- <div class="buttonWrapper">
8290
- <div class="currentDayMarker">${(_b = this.day) === null || _b === void 0 ? void 0 : _b.title}</div>
8291
- <div class="dateSlot body-2xs" part="dateSlot">
8292
- <slot name="date_${this.dateStr}"></slot>
8293
- </div>
8294
- </div>
8295
- </button>
8296
- </${this.popoverTag}>
8618
+ <button
8619
+ slot="trigger"
8620
+ id="${this.getCellId()}"
8621
+ role="${role}"
8622
+ @click="${outOfRange ? undefined : this.handleTap}"
8623
+ @mouseover="${outOfRange ? undefined : this.handleHover}"
8624
+ @focus="${outOfRange ? undefined : this.handleFocus}"
8625
+ class="${classMap(buttonClasses)}"
8626
+ ?disabled="${outOfRange}"
8627
+ aria-label="${this.getAriaLabel()}"
8628
+ aria-disabled="${blackout ? 'true' : nothing}"
8629
+ aria-hidden="${outOfRange ? 'true' : nothing}"
8630
+ aria-selected="${this.selected ? 'true' : 'false'}"
8631
+ aria-current="${this.isCurrentDate ? 'date' : nothing}"
8632
+ tabindex="${this.active ? '0' : '-1'}">
8633
+ <div class="buttonWrapper" aria-hidden="true">
8634
+ <div class="currentDayMarker">${this.day?.title || nothing}</div>
8635
+ </div>
8636
+ <div class="dateSlot body-2xs" part="dateSlot" aria-hidden="true" ?hidden="${!this.renderForDateSlot}">
8637
+ <slot name="date_${this.dateStr}"></slot>
8638
+ </div>
8639
+ </button>
8297
8640
  `;
8298
8641
  }
8299
- }
8300
8642
 
8301
- if (!customElements.get('auro-formkit-calendar-cell')) {
8302
- customElements.define('auro-formkit-calendar-cell', AuroCalendarCell);
8303
- }
8643
+ render() {
8644
+ const hasPopoverContent = this.hasPopoverContent;
8645
+
8646
+ if (hasPopoverContent) {
8647
+ return html$1`
8648
+ <${this.popoverTag}>
8649
+ <span aria-hidden="true"><slot name="popover_${this.dateStr}"></slot></span>
8650
+ ${this.renderCellButton()}
8651
+ </${this.popoverTag}>
8652
+ `;
8653
+ }
8654
+
8655
+ return html$1`
8656
+ ${this.renderCellButton()}
8657
+ `;
8658
+ }
8659
+ }
8660
+
8661
+ if (!customElements.get('auro-formkit-calendar-cell')) {
8662
+ customElements.define('auro-formkit-calendar-cell', AuroCalendarCell);
8663
+ }
8304
8664
 
8305
8665
  // See https://git.io/JJ6SJ for "How to document your components using JSDoc"
8306
8666
 
@@ -8361,16 +8721,28 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8361
8721
  return this.monthNames[month - 1];
8362
8722
  }
8363
8723
 
8724
+ /**
8725
+ * Returns the unique heading ID for this month, used by aria-labelledby.
8726
+ * @private
8727
+ * @returns {String} The heading ID.
8728
+ */
8729
+ getHeadingId() {
8730
+ return `month-heading-${this.month}-${this.year}`;
8731
+ }
8732
+
8364
8733
  /**
8365
8734
  * Determines the current month name based on locale.
8735
+ * Also builds parallel arrays of full day names for abbr attributes.
8366
8736
  * This is a rewrite of the function used in the class RangeDatepickerCalendar and should not be removed from here.
8367
8737
  * @private
8368
8738
  * @returns {void}
8369
8739
  */
8370
8740
  localeChanged() {
8371
8741
  const dayNamesOfTheWeek = [];
8742
+ const dayFullNames = [];
8372
8743
  for (let int = 0; int < 7; int += 1) {
8373
8744
  dayNamesOfTheWeek.push(this.locale.localize.day(int, { width: 'narrow' }));
8745
+ dayFullNames.push(this.locale.localize.day(int, { width: 'long' }));
8374
8746
  }
8375
8747
  const firstDayOfWeek = this.locale.options.weekStartsOn
8376
8748
  ? this.locale.options.weekStartsOn
@@ -8381,6 +8753,139 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8381
8753
  .splice(firstDayOfWeek, dayNamesOfTheWeek.length)
8382
8754
  .concat(tmp);
8383
8755
  this.dayNamesOfTheWeek = newDayNamesOfTheWeek;
8756
+
8757
+ const tmpFull = dayFullNames.slice().splice(0, firstDayOfWeek);
8758
+ const newDayFullNames = dayFullNames
8759
+ .slice()
8760
+ .splice(firstDayOfWeek, dayFullNames.length)
8761
+ .concat(tmpFull);
8762
+ this.dayFullNames = newDayFullNames;
8763
+ }
8764
+
8765
+ /**
8766
+ * Renders a day-of-week header with abbr attribute for the full day name.
8767
+ * @private
8768
+ * @param {String} dayOfWeek - The short day name.
8769
+ * @param {Number} index - The index in the dayNamesOfTheWeek array.
8770
+ * @returns {Object} The header HTML.
8771
+ */
8772
+ renderDayOfWeek(dayOfWeek, index) {
8773
+ const fullName = this.dayFullNames ? this.dayFullNames[index] : dayOfWeek;
8774
+ return html`<div class="th body-default" role="columnheader"><abbr title="${fullName}">${dayOfWeek}</abbr></div>`;
8775
+ }
8776
+
8777
+ /**
8778
+ * Returns all focusable cell elements (enabled + blackout, not out-of-range) in this month.
8779
+ * @returns {Array} Array of auro-formkit-calendar-cell elements.
8780
+ */
8781
+ getFocusableCells() {
8782
+ const cells = Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-cell'));
8783
+ return cells.filter(cell => {
8784
+ if (!cell.day) return false;
8785
+ return !cell.isOutOfRange(cell.day, cell.min, cell.max);
8786
+ });
8787
+ }
8788
+
8789
+ /**
8790
+ * Overrides the base class handler to prevent setting `this.hoveredDate`
8791
+ * as a reactive property. Instead, just dispatches the event upward so
8792
+ * the calendar can handle range preview imperatively.
8793
+ * @private
8794
+ * @param {CustomEvent} event - The date-is-hovered event from a cell.
8795
+ * @returns {void}
8796
+ */
8797
+ handleDateHovered(event) {
8798
+ this.dispatchEvent(new CustomEvent('hovered-date-changed', {
8799
+ detail: { value: event.detail.date },
8800
+ }));
8801
+ }
8802
+
8803
+ /**
8804
+ * Handles arrow key navigation within the month grid.
8805
+ * Dispatches a cross-month navigation event when the boundary is reached.
8806
+ * @private
8807
+ * @param {KeyboardEvent} event - The keyboard event.
8808
+ * @returns {void}
8809
+ */
8810
+ handleGridKeyDown(event) {
8811
+ const { key } = event;
8812
+ const arrowKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp'];
8813
+
8814
+ if (!arrowKeys.includes(key)) return;
8815
+
8816
+ event.preventDefault();
8817
+
8818
+ const focusableCells = this.getFocusableCells();
8819
+ if (focusableCells.length === 0) return;
8820
+
8821
+ // Find the currently active cell within this month
8822
+ const activeCell = focusableCells.find(cell => cell.active);
8823
+ if (!activeCell) return;
8824
+
8825
+ const activeIndex = focusableCells.indexOf(activeCell);
8826
+ let targetCell = null;
8827
+
8828
+ if (key === 'ArrowRight') {
8829
+ if (activeIndex < focusableCells.length - 1) {
8830
+ targetCell = focusableCells[activeIndex + 1];
8831
+ } else {
8832
+ // At end of month, request cross-month navigation
8833
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8834
+ bubbles: true,
8835
+ composed: true,
8836
+ detail: { direction: 'next', fromDate: activeCell.day.date, key }
8837
+ }));
8838
+ return;
8839
+ }
8840
+ } else if (key === 'ArrowLeft') {
8841
+ if (activeIndex > 0) {
8842
+ targetCell = focusableCells[activeIndex - 1];
8843
+ } else {
8844
+ // At start of month, request cross-month navigation
8845
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8846
+ bubbles: true,
8847
+ composed: true,
8848
+ detail: { direction: 'prev', fromDate: activeCell.day.date, key }
8849
+ }));
8850
+ return;
8851
+ }
8852
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
8853
+ // Find the target day (same day-of-week, +/- 7 days)
8854
+ // Use Date arithmetic instead of fixed seconds to handle DST correctly
8855
+ const increment = key === 'ArrowDown' ? 7 : -7;
8856
+ const currentDate = new Date(activeCell.day.date * 1000);
8857
+ currentDate.setDate(currentDate.getDate() + increment);
8858
+ currentDate.setHours(0, 0, 0, 0);
8859
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
8860
+
8861
+ // Look for the target date in this month's focusable cells
8862
+ targetCell = focusableCells.find(cell => cell.day.date === targetDate);
8863
+
8864
+ if (!targetCell) {
8865
+ // Target is in another month or all cells in that direction are disabled
8866
+ const direction = key === 'ArrowDown' ? 'next' : 'prev';
8867
+ this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
8868
+ bubbles: true,
8869
+ composed: true,
8870
+ detail: { direction, fromDate: activeCell.day.date, key }
8871
+ }));
8872
+ return;
8873
+ }
8874
+ }
8875
+
8876
+ if (targetCell) {
8877
+ this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
8878
+ bubbles: true,
8879
+ composed: true,
8880
+ detail: { date: targetCell.day.date }
8881
+ }));
8882
+ }
8883
+ }
8884
+
8885
+ renderWeek(week) {
8886
+ return html`
8887
+ <div class="tr" role="row">${week.map((day) => this.renderDay(day))}</div>
8888
+ `;
8384
8889
  }
8385
8890
 
8386
8891
  renderDay(day) {
@@ -8393,7 +8898,6 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8393
8898
  .min="${this.min}"
8394
8899
  .max="${this.max}"
8395
8900
  .month="${this.month}"
8396
- .hoveredDate="${this.hoveredDate}"
8397
8901
  .dateTo="${this.dateTo}"
8398
8902
  .dateFrom="${this.dateFrom}"
8399
8903
  .locale="${this.locale}"
@@ -8404,7 +8908,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8404
8908
  >
8405
8909
  </auro-formkit-calendar-cell>
8406
8910
  `
8407
- : null}
8911
+ : html`<div aria-hidden="true" inert></div>`}
8408
8912
  </div>
8409
8913
  `;
8410
8914
  }
@@ -8415,10 +8919,10 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8415
8919
  var _a, _b;
8416
8920
 
8417
8921
  return html `
8418
- <div>
8922
+ <div aria-labelledby="${this.getHeadingId()}">
8419
8923
  <div class="header">
8420
8924
  ${this.renderPrevButton()}
8421
- <div class="headerTitle heading-xs">
8925
+ <div class="headerTitle heading-xs" id="${this.getHeadingId()}" aria-live="polite" aria-atomic="true">
8422
8926
  ${this.monthFirst ? html`
8423
8927
  <div>${this.computeCurrentMonthName(this.month)}</div>
8424
8928
  <div>${this.renderYear()}</div>
@@ -8430,13 +8934,13 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
8430
8934
  ${this.renderNextButton()}
8431
8935
  </div>
8432
8936
 
8433
- <div class="table">
8434
- <div class="thead">
8435
- <div class="tr">
8436
- ${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(dayNameOfWeek => this.renderDayOfWeek(dayNameOfWeek))}
8937
+ <div class="table" role="grid" aria-labelledby="${this.getHeadingId()}" @keydown="${this.handleGridKeyDown}">
8938
+ <div class="thead" role="rowgroup">
8939
+ <div class="tr" role="row">
8940
+ ${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map((dayNameOfWeek, index) => this.renderDayOfWeek(dayNameOfWeek, index))}
8437
8941
  </div>
8438
8942
  </div>
8439
- <div class="tbody">
8943
+ <div class="tbody" role="rowgroup">
8440
8944
  ${(_b = this.daysOfMonth) === null || _b === void 0 ? void 0 : _b.map(week => this.renderWeek(week))}
8441
8945
  </div>
8442
8946
  </div>
@@ -9129,6 +9633,14 @@ class AuroBibtemplate extends LitElement {
9129
9633
  large: {
9130
9634
  type: Boolean,
9131
9635
  reflect: true
9636
+ },
9637
+
9638
+ /**
9639
+ * If declared, the footer slot will be rendered even when not in fullscreen mode.
9640
+ */
9641
+ showFooter: {
9642
+ type: Boolean,
9643
+ reflect: true
9132
9644
  }
9133
9645
  };
9134
9646
  }
@@ -9231,7 +9743,7 @@ class AuroBibtemplate extends LitElement {
9231
9743
  <slot></slot>
9232
9744
  </div>
9233
9745
 
9234
- ${this.isFullscreen ? html$1`
9746
+ ${this.isFullscreen || this.showFooter ? html$1`
9235
9747
  <div id="footerContainer">
9236
9748
  <slot name="footer"></slot>
9237
9749
  </div>` : null}
@@ -9240,7 +9752,7 @@ class AuroBibtemplate extends LitElement {
9240
9752
  }
9241
9753
  }
9242
9754
 
9243
- var formkitVersion$2 = '202605201634';
9755
+ var formkitVersion$2 = '202605210248';
9244
9756
 
9245
9757
  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=literal`${unsafeStatic(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$1 = 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$1=css`: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}
9246
9758
  `,u$4=css`.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}}
@@ -9338,6 +9850,13 @@ class AuroCalendar extends RangeDatepicker {
9338
9850
  this.largeFullscreenHeadline = false;
9339
9851
  this.isFullscreen = false;
9340
9852
 
9853
+ /**
9854
+ * The date of the currently active cell (Unix timestamp).
9855
+ * Only one cell across the entire calendar has tabindex="0" at a time.
9856
+ * @private
9857
+ */
9858
+ this.activeCellDate = null;
9859
+
9341
9860
  /**
9342
9861
  * @private
9343
9862
  */
@@ -9503,6 +10022,8 @@ class AuroCalendar extends RangeDatepicker {
9503
10022
  */
9504
10023
  handlePrevMonth() {
9505
10024
  this.utilCal.handleMonthChange(this, 'prev');
10025
+ this.updateActiveCellForVisibleMonth();
10026
+ this.announceMonthChange();
9506
10027
  }
9507
10028
 
9508
10029
  /**
@@ -9512,6 +10033,38 @@ class AuroCalendar extends RangeDatepicker {
9512
10033
  */
9513
10034
  handleNextMonth() {
9514
10035
  this.utilCal.handleMonthChange(this, 'next');
10036
+ this.updateActiveCellForVisibleMonth();
10037
+ this.announceMonthChange();
10038
+ }
10039
+
10040
+ /**
10041
+ * Announces the current month and year via the live region after navigation.
10042
+ * @private
10043
+ * @returns {void}
10044
+ */
10045
+ announceMonthChange() {
10046
+ const date = new Date(this.centralDate);
10047
+ const localeCode = this.locale?.code || undefined;
10048
+ const formatter = new Intl.DateTimeFormat(localeCode, { month: 'long', year: 'numeric' });
10049
+ this.announceSelection(formatter.format(date));
10050
+ }
10051
+
10052
+ /**
10053
+ * Recomputes and sets the active cell for the newly visible month after
10054
+ * month navigation. Without this, activeCellDate can point at a date in
10055
+ * the old month, leaving no tabindex="0" cell in the grid.
10056
+ * @private
10057
+ * @returns {void}
10058
+ */
10059
+ updateActiveCellForVisibleMonth() {
10060
+ // Skip the dateFrom shortcut so the active cell lands in the newly
10061
+ // visible month rather than jumping back to the selected date's month.
10062
+ this.activeCellDate = this.computeActiveDate({ skipDateFrom: true });
10063
+ this.updateComplete.then(() => {
10064
+ if (this.activeCellDate != null) {
10065
+ this.setActiveCell(this.activeCellDate);
10066
+ }
10067
+ });
9515
10068
  }
9516
10069
 
9517
10070
  /**
@@ -9619,6 +10172,778 @@ class AuroCalendar extends RangeDatepicker {
9619
10172
  this.utilCal.scrollMonthIntoView(this, date, this.format);
9620
10173
  }
9621
10174
 
10175
+ /**
10176
+ * Gets all rendered month components.
10177
+ * @private
10178
+ * @returns {Array} Array of auro-formkit-calendar-month elements.
10179
+ */
10180
+ getMonthComponents() {
10181
+ return Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-month'));
10182
+ }
10183
+
10184
+ /**
10185
+ * Gets all focusable cells across all rendered months.
10186
+ * @private
10187
+ * @returns {Array} Array of auro-formkit-calendar-cell elements.
10188
+ */
10189
+ getAllFocusableCells() {
10190
+ const months = this.getMonthComponents();
10191
+ let cells = [];
10192
+ months.forEach(month => {
10193
+ cells = cells.concat(month.getFocusableCells());
10194
+ });
10195
+ return cells;
10196
+ }
10197
+
10198
+ /**
10199
+ * Sets the active cell across all months. Only one cell has tabindex="0" at a time.
10200
+ * Uses imperative DOM manipulation — no Lit re-render triggered.
10201
+ * Also updates ariaActiveDescendantElement on the grid wrapper so
10202
+ * screen readers announce the active cell without moving DOM focus.
10203
+ * @param {Number} date - Unix timestamp of the cell to activate.
10204
+ * @returns {void}
10205
+ */
10206
+ setActiveCell(date) {
10207
+ const allCells = this.getAllFocusableCells();
10208
+
10209
+ let newActiveCell = null;
10210
+ allCells.forEach(cell => {
10211
+ if (cell.day && cell.day.date === date) {
10212
+ cell.setActive();
10213
+ newActiveCell = cell;
10214
+ } else if (cell.active) {
10215
+ cell.clearActive();
10216
+ }
10217
+ });
10218
+
10219
+ this.activeCellDate = date;
10220
+
10221
+ // Update the proxy element that aria-activedescendant references.
10222
+ // The proxy lives in the same shadow root as the grid wrapper, so
10223
+ // string-based aria-activedescendant works reliably with all SRs.
10224
+ if (newActiveCell) {
10225
+ const proxy = this.shadowRoot.querySelector('#activeDescendantProxy');
10226
+ if (proxy) {
10227
+ proxy.setAttribute('aria-label', newActiveCell.getAriaLabel());
10228
+ proxy.setAttribute('aria-selected', newActiveCell.selected ? 'true' : 'false');
10229
+ if (newActiveCell.isCurrentDate) {
10230
+ proxy.setAttribute('aria-current', 'date');
10231
+ } else {
10232
+ proxy.removeAttribute('aria-current');
10233
+ }
10234
+ if (newActiveCell.isBlackout()) {
10235
+ proxy.setAttribute('aria-disabled', 'true');
10236
+ } else {
10237
+ proxy.removeAttribute('aria-disabled');
10238
+ }
10239
+ }
10240
+ }
10241
+ }
10242
+
10243
+ /**
10244
+ * Focuses the calendar grid wrapper and sets the active cell.
10245
+ * DOM focus stays on the grid wrapper; ariaActiveDescendantElement
10246
+ * tells the screen reader which cell is "active".
10247
+ * @returns {void}
10248
+ */
10249
+ focusActiveCell() {
10250
+ if (this.activeCellDate != null) {
10251
+ this.setActiveCell(this.activeCellDate);
10252
+ }
10253
+
10254
+ const gridWrapper = this.shadowRoot.querySelector('#calendarGrid');
10255
+ if (gridWrapper) {
10256
+ gridWrapper.focus({ focusVisible: true });
10257
+ }
10258
+ }
10259
+
10260
+ /**
10261
+ * Computes the initial active date from data properties alone — no DOM required.
10262
+ * Priority:
10263
+ * 1. Selected date (dateFrom) if within range
10264
+ * 2. Today's date if not disabled (in-range and not blackout)
10265
+ * 3. First future non-disabled date (scans day-by-day from today up to 1 year)
10266
+ * 4. First previous non-disabled date (scans day-by-day from today up to 1 year)
10267
+ * 5. First enabled date in finite [min, max] range
10268
+ * 5b. First enabled date scanning forward from finite min (unbounded max)
10269
+ * 5c. First enabled date scanning backward from finite max (unbounded min)
10270
+ * 6. First in-range date (even if blackout) so focus can land somewhere
10271
+ * 7. undefined — no valid target
10272
+ *
10273
+ * @private
10274
+ * @param {Object} [options] - Optional settings.
10275
+ * @param {boolean} [options.skipDateFrom=false] - When true, skip the selected-date
10276
+ * shortcut (step 1). Used after month navigation so the active cell lands in the
10277
+ * newly visible month instead of jumping back to the selected date's month.
10278
+ * @returns {Number|undefined} Unix timestamp (seconds) of the date to activate, or undefined.
10279
+ */
10280
+ computeActiveDate(options = {}) {
10281
+ const MAX_SCAN_DAYS = 366; // scan at most ~1 year in each direction
10282
+
10283
+ /**
10284
+ * Adds days to a timestamp using Date arithmetic to handle DST correctly.
10285
+ * Returns a local-midnight-aligned timestamp in seconds.
10286
+ */
10287
+ const addDays = (ts, days) => {
10288
+ const d = new Date(ts * 1000);
10289
+ d.setDate(d.getDate() + days);
10290
+ d.setHours(0, 0, 0, 0);
10291
+ return Math.floor(d.getTime() / 1000);
10292
+ };
10293
+
10294
+ const rawMin = Number(this.min);
10295
+ const rawMax = Number(this.max);
10296
+
10297
+ // When min/max are NaN (no minDate/maxDate configured), treat as unbounded.
10298
+ const minTs = Number.isFinite(rawMin) ? rawMin : -Infinity;
10299
+ const maxTs = Number.isFinite(rawMax) ? rawMax : Infinity;
10300
+
10301
+ // Build a Set of blackout timestamps for O(1) lookup.
10302
+ const blackoutSet = new Set(
10303
+ (this.disabledDays || []).map(d => parseInt(d, 10))
10304
+ );
10305
+
10306
+ // Also include ISO-format blackoutDates from the datepicker if available.
10307
+ // Parse YYYY-MM-DD as local date to avoid UTC shift issues.
10308
+ const isoBlackouts = this.datepicker?.blackoutDates;
10309
+ if (Array.isArray(isoBlackouts)) {
10310
+ for (const isoStr of isoBlackouts) {
10311
+ const parts = isoStr.split('-');
10312
+ const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
10313
+ if (Number.isFinite(ts)) blackoutSet.add(ts);
10314
+ }
10315
+ }
10316
+
10317
+ /**
10318
+ * A date (unix timestamp in seconds, midnight-aligned) is "enabled" when
10319
+ * it is within [min, max] AND not a blackout day.
10320
+ */
10321
+ const isEnabled = (ts) => ts >= minTs && ts <= maxTs && !blackoutSet.has(ts);
10322
+
10323
+ /**
10324
+ * A date is "in range" (focusable in the grid) when it is within [min, max].
10325
+ * Blackout dates are focusable but not selectable.
10326
+ */
10327
+ const isInRange = (ts) => ts >= minTs && ts <= maxTs;
10328
+
10329
+ // 1. Selected date — always valid target if within range (user chose it).
10330
+ // Skipped when called from month navigation so the active cell lands in
10331
+ // the newly visible month rather than the (possibly off-screen) selection.
10332
+ if (!options.skipDateFrom && this.dateFrom) {
10333
+ const parsedFrom = parseInt(this.dateFrom, 10);
10334
+ if (Number.isFinite(parsedFrom) && isInRange(parsedFrom)) return parsedFrom;
10335
+ }
10336
+
10337
+ // 2. Today's date (midnight-aligned) if enabled.
10338
+ const now = Math.floor(new Date().setHours(0, 0, 0, 0) / 1000);
10339
+
10340
+ // When centralDate is configured, prefer a date within the month(s) that
10341
+ // will actually be rendered. If today falls outside the visible range, an
10342
+ // active cell set to today would have no matching DOM element and keyboard
10343
+ // focus could not enter the calendar.
10344
+ const centralDateValue = this.centralDate ? new Date(this.centralDate) : null;
10345
+
10346
+ if (centralDateValue && !isNaN(centralDateValue.getTime())) {
10347
+ const centralMonth = centralDateValue.getMonth();
10348
+ const centralYear = centralDateValue.getFullYear();
10349
+ const todayDate = new Date(now * 1000);
10350
+ const todayMonth = todayDate.getMonth();
10351
+ const todayYear = todayDate.getFullYear();
10352
+
10353
+ // Today is outside the centralDate's month — scan for an enabled date
10354
+ // within the visible month instead.
10355
+ if (todayMonth !== centralMonth || todayYear !== centralYear) {
10356
+ const visibleStart = new Date(centralYear, centralMonth, 1);
10357
+ visibleStart.setHours(0, 0, 0, 0);
10358
+ const visibleEnd = new Date(centralYear, centralMonth + 1, 0); // last day of month
10359
+ visibleEnd.setHours(0, 0, 0, 0);
10360
+ const startTs = Math.floor(visibleStart.getTime() / 1000);
10361
+ const endTs = Math.floor(visibleEnd.getTime() / 1000);
10362
+ const daysInMonth = visibleEnd.getDate();
10363
+
10364
+ for (let idx = 0; idx < daysInMonth; idx++) {
10365
+ const ts = addDays(startTs, idx);
10366
+ if (ts > endTs) break;
10367
+ if (isEnabled(ts)) return ts;
10368
+ }
10369
+
10370
+ // No enabled date in the visible month — fall back to first in-range
10371
+ // date in the month so focus still lands on a focusable cell.
10372
+ for (let idx = 0; idx < daysInMonth; idx++) {
10373
+ const ts = addDays(startTs, idx);
10374
+ if (ts > endTs) break;
10375
+ if (isInRange(ts)) return ts;
10376
+ }
10377
+ }
10378
+ }
10379
+
10380
+ if (isEnabled(now)) return now;
10381
+
10382
+ // When a centralDate is configured (or inferred), constrain the scan to the
10383
+ // rendered month(s) first so a single-month calendar does not pick a date
10384
+ // that has no DOM cell. Determine the visible range based on centralDate and
10385
+ // the number of rendered months.
10386
+ const renderedMonths = this.numCalendars || 1;
10387
+ const visibleAnchor = centralDateValue && !isNaN(centralDateValue.getTime())
10388
+ ? centralDateValue
10389
+ : new Date(now * 1000);
10390
+ const visMonthStart = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth(), 1);
10391
+ visMonthStart.setHours(0, 0, 0, 0);
10392
+ const visMonthEnd = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth() + renderedMonths, 0);
10393
+ visMonthEnd.setHours(0, 0, 0, 0);
10394
+ const visStartTs = Math.floor(visMonthStart.getTime() / 1000);
10395
+ const visEndTs = Math.floor(visMonthEnd.getTime() / 1000);
10396
+ const visDays = Math.round((visEndTs - visStartTs) / 86400) + 1;
10397
+
10398
+ // Scan visible months for an enabled date.
10399
+ for (let idx = 0; idx < visDays; idx++) {
10400
+ const ts = addDays(visStartTs, idx);
10401
+ if (ts > visEndTs) break;
10402
+ if (isEnabled(ts)) return ts;
10403
+ }
10404
+
10405
+ // No enabled date in visible months — try an in-range (focusable) date so
10406
+ // keyboard focus still has a tabindex="0" target.
10407
+ for (let idx = 0; idx < visDays; idx++) {
10408
+ const ts = addDays(visStartTs, idx);
10409
+ if (ts > visEndTs) break;
10410
+ if (isInRange(ts)) return ts;
10411
+ }
10412
+
10413
+ // 3. First future enabled date (scan forward from tomorrow, capped by max and MAX_SCAN_DAYS).
10414
+ for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
10415
+ const ts = addDays(now, idx);
10416
+ if (Number.isFinite(maxTs) && ts > maxTs) break;
10417
+ if (isEnabled(ts)) return ts;
10418
+ }
10419
+
10420
+ // 4. First previous enabled date (scan backward from yesterday, capped by min and MAX_SCAN_DAYS).
10421
+ for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
10422
+ const ts = addDays(now, -idx);
10423
+ if (Number.isFinite(minTs) && ts < minTs) break;
10424
+ if (isEnabled(ts)) return ts;
10425
+ }
10426
+
10427
+ // 5. If scans missed (e.g. min/max range is far from today), fall back to
10428
+ // the first enabled date in the [min, max] range.
10429
+ if (Number.isFinite(minTs) && Number.isFinite(maxTs)) {
10430
+ let ts = minTs;
10431
+ for (let idx = 0; ts <= maxTs; idx++) {
10432
+ if (isEnabled(ts)) return ts;
10433
+ ts = addDays(minTs, idx + 1);
10434
+ }
10435
+ }
10436
+
10437
+ // 5b. Finite min with unbounded max (e.g. minDate far in the future):
10438
+ // scan forward from min for up to MAX_SCAN_DAYS.
10439
+ if (Number.isFinite(minTs) && !Number.isFinite(maxTs)) {
10440
+ for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
10441
+ const ts = addDays(minTs, idx);
10442
+ if (isEnabled(ts)) return ts;
10443
+ }
10444
+ }
10445
+
10446
+ // 5c. Unbounded min with a finite max far in the past (e.g. birth-date picker):
10447
+ // scan backward from max for up to MAX_SCAN_DAYS.
10448
+ if (!Number.isFinite(minTs) && Number.isFinite(maxTs)) {
10449
+ for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
10450
+ const ts = addDays(maxTs, -idx);
10451
+ if (isEnabled(ts)) return ts;
10452
+ }
10453
+ }
10454
+
10455
+ // 6. All dates are blackout — fall back to the first in-range date so focus
10456
+ // still lands on a focusable (but not selectable) cell.
10457
+ if (Number.isFinite(minTs) && isInRange(minTs)) return minTs;
10458
+ if (isInRange(now)) return now;
10459
+
10460
+ return undefined;
10461
+ }
10462
+
10463
+ /**
10464
+ * Handles arrow key navigation on the calendar grid wrapper.
10465
+ * Focus stays on the grid wrapper; only ariaActiveDescendantElement
10466
+ * and the visual active-cell indicator change.
10467
+ * @private
10468
+ * @param {KeyboardEvent} event - The keyboard event.
10469
+ * @returns {void}
10470
+ */
10471
+ handleGridKeyDown(event) {
10472
+ const { key } = event;
10473
+ const actionKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp', 'Enter', ' '];
10474
+
10475
+ if (!actionKeys.includes(key)) return;
10476
+
10477
+ event.preventDefault();
10478
+
10479
+ const allCells = this.getAllFocusableCells();
10480
+ if (allCells.length === 0) return;
10481
+
10482
+ const activeCell = allCells.find(cell => cell.active);
10483
+ if (!activeCell) return;
10484
+
10485
+ // Handle Enter/Space to select the active cell
10486
+ if (key === 'Enter' || key === ' ') {
10487
+ activeCell.handleTap();
10488
+ return;
10489
+ }
10490
+
10491
+ const activeIndex = allCells.indexOf(activeCell);
10492
+
10493
+ if (key === 'ArrowRight' || key === 'ArrowLeft') {
10494
+ const direction = key === 'ArrowRight' ? 1 : -1;
10495
+ const targetIndex = activeIndex + direction;
10496
+
10497
+ if (targetIndex >= 0 && targetIndex < allCells.length) {
10498
+ // Target cell exists in rendered months
10499
+ this.setActiveCell(allCells[targetIndex].day.date);
10500
+ this.scrollToActiveCell();
10501
+ // Dispatch focus event for the cell so live region + range preview update
10502
+ this.handleCellFocused({ detail: { date: allCells[targetIndex].day.date } });
10503
+ } else {
10504
+ // At boundary — need to navigate to next/prev month
10505
+ const navDir = direction === 1 ? 'next' : 'prev';
10506
+ if ((navDir === 'next' && this.showNextMonthBtn) || (navDir === 'prev' && this.showPrevMonthBtn)) {
10507
+ const targetDate = new Date(activeCell.day.date * 1000);
10508
+ targetDate.setDate(targetDate.getDate() + direction);
10509
+ targetDate.setHours(0, 0, 0, 0);
10510
+ const targetTs = Math.floor(targetDate.getTime() / 1000);
10511
+
10512
+ if (navDir === 'next') {
10513
+ this.handleNextMonth();
10514
+ } else {
10515
+ this.handlePrevMonth();
10516
+ }
10517
+ requestAnimationFrame(() => {
10518
+ requestAnimationFrame(() => {
10519
+ const cells = this.getAllFocusableCells();
10520
+ const target = cells.find(cell => cell.day && cell.day.date === targetTs);
10521
+ if (target) {
10522
+ this.setActiveCell(target.day.date);
10523
+ this.handleCellFocused({ detail: { date: target.day.date } });
10524
+ } else if (cells.length > 0) {
10525
+ const fallback = navDir === 'next' ? cells[cells.length - 1] : cells[0];
10526
+ this.setActiveCell(fallback.day.date);
10527
+ this.handleCellFocused({ detail: { date: fallback.day.date } });
10528
+ }
10529
+ // Re-focus grid wrapper after month change re-render
10530
+ this.focusActiveCell();
10531
+ });
10532
+ });
10533
+ }
10534
+ }
10535
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
10536
+ const increment = key === 'ArrowDown' ? 7 : -7;
10537
+ const currentDate = new Date(activeCell.day.date * 1000);
10538
+ currentDate.setDate(currentDate.getDate() + increment);
10539
+ currentDate.setHours(0, 0, 0, 0);
10540
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
10541
+
10542
+ const targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
10543
+
10544
+ if (targetCell) {
10545
+ this.setActiveCell(targetCell.day.date);
10546
+ this.scrollToActiveCell();
10547
+ this.handleCellFocused({ detail: { date: targetCell.day.date } });
10548
+ } else {
10549
+ // Target might be in an unrendered month
10550
+ const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
10551
+ if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
10552
+ if (navDirection === 'next') {
10553
+ this.handleNextMonth();
10554
+ } else {
10555
+ this.handlePrevMonth();
10556
+ }
10557
+ requestAnimationFrame(() => {
10558
+ requestAnimationFrame(() => {
10559
+ const cells = this.getAllFocusableCells();
10560
+ const target = cells.find(cell => cell.day && cell.day.date === targetDate);
10561
+ if (target) {
10562
+ this.setActiveCell(target.day.date);
10563
+ this.handleCellFocused({ detail: { date: target.day.date } });
10564
+ } else if (cells.length > 0) {
10565
+ const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
10566
+ this.setActiveCell(nearest.day.date);
10567
+ this.handleCellFocused({ detail: { date: nearest.day.date } });
10568
+ }
10569
+ this.focusActiveCell();
10570
+ });
10571
+ });
10572
+ }
10573
+ }
10574
+ }
10575
+ }
10576
+
10577
+ /**
10578
+ * Handles cross-month boundary navigation events from month components.
10579
+ * @private
10580
+ * @param {CustomEvent} event - The boundary event with direction and source date info.
10581
+ * @returns {void}
10582
+ */
10583
+ handleMonthBoundary(event) {
10584
+ const { direction, fromDate, key } = event.detail;
10585
+
10586
+ if (key === 'ArrowRight' || key === 'ArrowLeft') {
10587
+ // Linear navigation: find adjacent focusable cell across months
10588
+ const allCells = this.getAllFocusableCells();
10589
+ const currentIndex = allCells.findIndex(cell => cell.day && cell.day.date === fromDate);
10590
+
10591
+ if (currentIndex === -1) return;
10592
+
10593
+ let targetIndex;
10594
+ if (direction === 'next') {
10595
+ targetIndex = currentIndex + 1;
10596
+ } else {
10597
+ targetIndex = currentIndex - 1;
10598
+ }
10599
+
10600
+ if (targetIndex >= 0 && targetIndex < allCells.length) {
10601
+ const targetCell = allCells[targetIndex];
10602
+ this.setActiveCell(targetCell.day.date);
10603
+ this.scrollToActiveCell();
10604
+ this.focusActiveCell();
10605
+ } else if (direction === 'next' && this.showNextMonthBtn) {
10606
+ // Navigate to next month and focus the computed next date.
10607
+ // Using the target date (fromDate + 1 day) instead of cells[0]
10608
+ // avoids jumping backward in range datepickers where cells[0]
10609
+ // belongs to the previous (still-rendered) month.
10610
+ const nextDate = new Date(fromDate * 1000);
10611
+ nextDate.setDate(nextDate.getDate() + 1);
10612
+ nextDate.setHours(0, 0, 0, 0);
10613
+ const nextTs = Math.floor(nextDate.getTime() / 1000);
10614
+
10615
+ this.handleNextMonth();
10616
+ requestAnimationFrame(() => {
10617
+ requestAnimationFrame(() => {
10618
+ const cells = this.getAllFocusableCells();
10619
+ const target = cells.find(cell => cell.day && cell.day.date === nextTs);
10620
+ if (target) {
10621
+ this.setActiveCell(target.day.date);
10622
+ this.focusActiveCell();
10623
+ } else if (cells.length > 0) {
10624
+ // Fallback: first cell of the last rendered month
10625
+ this.setActiveCell(cells[cells.length - 1].day.date);
10626
+ this.focusActiveCell();
10627
+ }
10628
+ });
10629
+ });
10630
+ } else if (direction === 'prev' && this.showPrevMonthBtn) {
10631
+ // Navigate to previous month and focus the computed previous date.
10632
+ const prevDate = new Date(fromDate * 1000);
10633
+ prevDate.setDate(prevDate.getDate() - 1);
10634
+ prevDate.setHours(0, 0, 0, 0);
10635
+ const prevTs = Math.floor(prevDate.getTime() / 1000);
10636
+
10637
+ this.handlePrevMonth();
10638
+ requestAnimationFrame(() => {
10639
+ requestAnimationFrame(() => {
10640
+ const cells = this.getAllFocusableCells();
10641
+ const target = cells.find(cell => cell.day && cell.day.date === prevTs);
10642
+ if (target) {
10643
+ this.setActiveCell(target.day.date);
10644
+ this.focusActiveCell();
10645
+ } else if (cells.length > 0) {
10646
+ // Fallback: last cell of the first rendered month
10647
+ this.setActiveCell(cells[0].day.date);
10648
+ this.focusActiveCell();
10649
+ }
10650
+ });
10651
+ });
10652
+ }
10653
+ } else if (key === 'ArrowDown' || key === 'ArrowUp') {
10654
+ // Vertical navigation: find same day-of-week +/- 7 days
10655
+ // Use Date arithmetic instead of fixed seconds to handle DST correctly
10656
+ const increment = key === 'ArrowDown' ? 7 : -7;
10657
+ const currentDate = new Date(fromDate * 1000);
10658
+ currentDate.setDate(currentDate.getDate() + increment);
10659
+ currentDate.setHours(0, 0, 0, 0);
10660
+ const targetDate = Math.floor(currentDate.getTime() / 1000);
10661
+
10662
+ const allCells = this.getAllFocusableCells();
10663
+ let targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
10664
+
10665
+ if (targetCell) {
10666
+ this.setActiveCell(targetCell.day.date);
10667
+ this.scrollToActiveCell();
10668
+ this.focusActiveCell();
10669
+ } else {
10670
+ // Target might be in an unrendered month, navigate there
10671
+ const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
10672
+ if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
10673
+ if (navDirection === 'next') {
10674
+ this.handleNextMonth();
10675
+ } else {
10676
+ this.handlePrevMonth();
10677
+ }
10678
+ requestAnimationFrame(() => {
10679
+ requestAnimationFrame(() => {
10680
+ const cells = this.getAllFocusableCells();
10681
+ const target = cells.find(cell => cell.day && cell.day.date === targetDate);
10682
+ if (target) {
10683
+ this.setActiveCell(target.day.date);
10684
+ this.focusActiveCell();
10685
+ } else if (cells.length > 0) {
10686
+ // Clamp to nearest focusable cell
10687
+ const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
10688
+ this.setActiveCell(nearest.day.date);
10689
+ this.focusActiveCell();
10690
+ }
10691
+ });
10692
+ });
10693
+ }
10694
+ }
10695
+ }
10696
+ }
10697
+
10698
+ /**
10699
+ * Handles cell activation events from month components.
10700
+ * @private
10701
+ * @param {CustomEvent} event - The activation event with target date.
10702
+ * @returns {void}
10703
+ */
10704
+ handleCellActivate(event) {
10705
+ const { date } = event.detail;
10706
+ this.setActiveCell(date);
10707
+ this.focusActiveCell();
10708
+ }
10709
+
10710
+ /**
10711
+ * Handles focus events from calendar cells.
10712
+ * Updates the live region with an SR announcement and triggers
10713
+ * the imperative range preview if applicable.
10714
+ * @private
10715
+ * @param {CustomEvent} event - The calendar-cell-focused event.
10716
+ * @returns {void}
10717
+ */
10718
+ handleCellFocused(event) {
10719
+ const { date } = event.detail;
10720
+ if (date == null) return;
10721
+
10722
+ // With aria-activedescendant, the button no longer receives native focus,
10723
+ // so we use the debounced live region for the full context announcement.
10724
+ const announcement = this.buildFocusAnnouncement(date);
10725
+ this.announceFocusDebounced(announcement);
10726
+
10727
+ // Update the range preview imperatively if in range-preview mode.
10728
+ this.updateRangePreview(date);
10729
+ }
10730
+
10731
+ /**
10732
+ * Builds a full SR announcement string for a focused cell date.
10733
+ * Includes the localized date, range position, popover content,
10734
+ * and blackout status.
10735
+ * @private
10736
+ * @param {Number} date - Unix timestamp (seconds) of the focused cell.
10737
+ * @returns {String} The announcement string.
10738
+ */
10739
+ buildFocusAnnouncement(date) {
10740
+ let label = this.formatAnnouncementDate(date);
10741
+
10742
+ // Append date slot content (e.g. prices) if present.
10743
+ const dateObj = new Date(date * 1000);
10744
+ const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
10745
+ const dd = String(dateObj.getDate()).padStart(2, '0');
10746
+ const yyyy = dateObj.getFullYear();
10747
+ const dateStr = `${mm}_${dd}_${yyyy}`;
10748
+ const dateSlotEl = this.datepicker?.querySelector(`[slot="date_${dateStr}"]`);
10749
+ if (dateSlotEl) {
10750
+ const text = dateSlotEl.innerText?.trim();
10751
+ if (text) {
10752
+ label += `, ${text}`;
10753
+ }
10754
+ }
10755
+
10756
+ // Append popover content if present.
10757
+ const popoverEl = this.datepicker?.querySelector(`[slot="popover_${dateStr}"]`);
10758
+ if (popoverEl) {
10759
+ const text = popoverEl.innerText?.trim();
10760
+ if (text) {
10761
+ label += `, ${text}`;
10762
+ }
10763
+ }
10764
+
10765
+ // Append range position context.
10766
+ if (this.datepicker?.hasAttribute('range')) {
10767
+ const rangeLabel = this.getRangePositionLabel(date);
10768
+ if (rangeLabel) {
10769
+ label += `, ${rangeLabel}`;
10770
+ }
10771
+ }
10772
+
10773
+ // Append blackout label.
10774
+ if (this.isDateBlackout(date)) {
10775
+ label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
10776
+ }
10777
+
10778
+ return label;
10779
+ }
10780
+
10781
+ /**
10782
+ * Determines the range position label for a given date.
10783
+ * @private
10784
+ * @param {Number} date - Unix timestamp (seconds).
10785
+ * @returns {String|null} The range position label, or null.
10786
+ */
10787
+ getRangePositionLabel(date) {
10788
+ const parsedFrom = Number.parseInt(this.dateFrom, 10);
10789
+ if (!Number.isFinite(parsedFrom)) return null;
10790
+
10791
+ const departTs = startOfDay(parsedFrom * 1000) / 1000;
10792
+ const parsedTo = Number.parseInt(this.dateTo, 10);
10793
+ const hasTo = Number.isFinite(parsedTo);
10794
+ const returnTs = hasTo ? startOfDay(parsedTo * 1000) / 1000 : null;
10795
+
10796
+ if (date === departTs) return this.datepicker.rangeLabelStart || 'range start';
10797
+ if (hasTo && date === returnTs) return this.datepicker.rangeLabelEnd || 'range end';
10798
+ if (date < departTs) return this.datepicker.rangeLabelBeforeRange || 'before range';
10799
+ if (hasTo && date > departTs && date < returnTs) return this.datepicker.rangeLabelInRange || 'in range';
10800
+ return this.datepicker.rangeLabelAfterRange || 'after range';
10801
+ }
10802
+
10803
+ /**
10804
+ * Checks whether a given date is a blackout date.
10805
+ * @private
10806
+ * @param {Number} dateTs - Unix timestamp (seconds).
10807
+ * @returns {Boolean} True if the date is blacked out.
10808
+ */
10809
+ isDateBlackout(dateTs) {
10810
+ // Check legacy disabledDays.
10811
+ if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
10812
+ if (this.disabledDays.findIndex(d => parseInt(d, 10) === dateTs) !== -1) {
10813
+ return true;
10814
+ }
10815
+ }
10816
+
10817
+ // Check ISO blackoutDates.
10818
+ const blackoutDates = this.datepicker?.blackoutDates;
10819
+ if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
10820
+ const date = new Date(dateTs * 1000);
10821
+ const yyyy = date.getFullYear();
10822
+ const mm = String(date.getMonth() + 1).padStart(2, '0');
10823
+ const dd = String(date.getDate()).padStart(2, '0');
10824
+ if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
10825
+ return true;
10826
+ }
10827
+ }
10828
+
10829
+ return false;
10830
+ }
10831
+
10832
+ /**
10833
+ * Updates the range preview classes imperatively across all cells.
10834
+ * Only active when in range mode with dateFrom set and dateTo not yet set.
10835
+ * @private
10836
+ * @param {Number} hoveredDate - Unix timestamp of the hovered/focused date.
10837
+ * @returns {void}
10838
+ */
10839
+ updateRangePreview(hoveredDate) {
10840
+ if (this.noRange || !this.dateFrom || this.dateTo) {
10841
+ return;
10842
+ }
10843
+
10844
+ const parsedDateFrom = parseInt(this.dateFrom, 10);
10845
+ const allCells = this.getAllFocusableCells();
10846
+
10847
+ allCells.forEach(cell => {
10848
+ cell.updateRangePreviewClasses(hoveredDate, parsedDateFrom);
10849
+ });
10850
+ }
10851
+
10852
+ /**
10853
+ * Clears range preview classes from all cells.
10854
+ * @private
10855
+ * @returns {void}
10856
+ */
10857
+ clearRangePreview() {
10858
+ const allCells = this.getAllFocusableCells();
10859
+ allCells.forEach(cell => {
10860
+ cell.clearRangePreviewClasses();
10861
+ });
10862
+ }
10863
+
10864
+ /**
10865
+ * Overrides the base class handler to prevent setting `this.hoveredDate`
10866
+ * as a reactive property. Instead, handles the range preview imperatively.
10867
+ * @private
10868
+ * @param {CustomEvent} event - The hovered-date-changed event from a month.
10869
+ * @returns {void}
10870
+ */
10871
+ hoveredDateChanged(event) {
10872
+ const hoveredDate = event.detail.value;
10873
+ this.updateRangePreview(hoveredDate);
10874
+ }
10875
+
10876
+ /**
10877
+ * Scrolls the calendar to ensure the month containing the active cell is visible.
10878
+ * @private
10879
+ * @returns {void}
10880
+ */
10881
+ scrollToActiveCell() {
10882
+ if (this.activeCellDate == null) return;
10883
+
10884
+ const date = new Date(this.activeCellDate * 1000);
10885
+ const month = date.getMonth() + 1;
10886
+ const year = date.getFullYear();
10887
+ const selector = `#month-${month}-${year}`;
10888
+ const monthElem = this.shadowRoot.querySelector(selector);
10889
+
10890
+ if (monthElem) {
10891
+ const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
10892
+ monthElem.scrollIntoView({ block: 'nearest', behavior: prefersReducedMotion ? 'instant' : 'smooth' });
10893
+ }
10894
+ }
10895
+
10896
+ /**
10897
+ * Announces a date selection or focus change via the live region.
10898
+ * @private
10899
+ * @param {String} dateStr - The localized date string to announce.
10900
+ * @returns {void}
10901
+ */
10902
+ announceSelection(dateStr) {
10903
+ const liveRegion = this.shadowRoot.querySelector('#calendar-live-region');
10904
+ if (liveRegion) {
10905
+ liveRegion.textContent = '';
10906
+ // Use microtask to ensure SR picks up the change
10907
+ Promise.resolve().then(() => {
10908
+ liveRegion.textContent = dateStr;
10909
+ });
10910
+ }
10911
+ }
10912
+
10913
+ /**
10914
+ * Debounced version of announceSelection for focus navigation.
10915
+ * Only announces the last focused date after rapid navigation pauses,
10916
+ * preventing the screen reader from queueing up stale announcements
10917
+ * that can't keep pace with arrow-key traversal.
10918
+ * @private
10919
+ * @param {String} dateStr - The localized date string to announce.
10920
+ * @returns {void}
10921
+ */
10922
+ announceFocusDebounced(dateStr) {
10923
+ if (this._focusAnnounceTimer) {
10924
+ clearTimeout(this._focusAnnounceTimer);
10925
+ }
10926
+ this._focusAnnounceTimer = setTimeout(() => {
10927
+ this.announceSelection(dateStr);
10928
+ this._focusAnnounceTimer = null;
10929
+ }, 150);
10930
+ }
10931
+
10932
+ /**
10933
+ * Formats a Unix timestamp (seconds) as a localized date string for SR announcements.
10934
+ * @private
10935
+ * @param {String|Number} timestamp - Unix timestamp in seconds.
10936
+ * @returns {String} Localized date string.
10937
+ */
10938
+ formatAnnouncementDate(timestamp) {
10939
+ const date = new Date(parseInt(timestamp, 10) * 1000);
10940
+ const localeCode = this.locale?.code || undefined;
10941
+ const formatter = new Intl.DateTimeFormat(localeCode, {
10942
+ weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'
10943
+ });
10944
+ return formatter.format(date);
10945
+ }
10946
+
9622
10947
  firstUpdated() {
9623
10948
  this.addEventListener('date-from-changed', () => {
9624
10949
  this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
@@ -9638,6 +10963,21 @@ class AuroCalendar extends RangeDatepicker {
9638
10963
  composed: true,
9639
10964
  }));
9640
10965
  });
10966
+
10967
+ // Listen for cross-month boundary navigation events
10968
+ this.addEventListener('calendar-month-boundary', (event) => {
10969
+ this.handleMonthBoundary(event);
10970
+ });
10971
+
10972
+ // Listen for cell activation events
10973
+ this.addEventListener('calendar-cell-activate', (event) => {
10974
+ this.handleCellActivate(event);
10975
+ });
10976
+
10977
+ // Listen for cell focus events (SR announcements + range preview)
10978
+ this.addEventListener('calendar-cell-focused', (event) => {
10979
+ this.handleCellFocused(event);
10980
+ });
9641
10981
  }
9642
10982
 
9643
10983
  injectSlot(slotName, nodes) {
@@ -9662,7 +11002,37 @@ class AuroCalendar extends RangeDatepicker {
9662
11002
  }
9663
11003
 
9664
11004
  if (changedProperties.has('visible')) {
9665
- setTimeout(() => this.requestUpdate());
11005
+ if (this.visible) {
11006
+ // Compute the active date eagerly from data — no DOM needed.
11007
+ if (this.activeCellDate == null) {
11008
+ this.activeCellDate = this.computeActiveDate();
11009
+ }
11010
+
11011
+ this.requestUpdate();
11012
+ } else {
11013
+ this.requestUpdate();
11014
+ }
11015
+ }
11016
+
11017
+ // Announce date selection to screen readers when user clicks/selects a cell
11018
+ const isCellClick = this.datepicker?.wasCellClick || this.datepicker?.cellClickActive;
11019
+
11020
+ if (changedProperties.has('dateFrom') && this.dateFrom && isCellClick) {
11021
+ const dateStr = this.formatAnnouncementDate(this.dateFrom);
11022
+ const isRange = !this.noRange;
11023
+
11024
+ if (isRange) {
11025
+ const rangeLabel = this.datepicker.rangeLabelStart || 'range start';
11026
+ this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
11027
+ } else {
11028
+ this.announceSelection(`${dateStr}, selected`);
11029
+ }
11030
+ }
11031
+
11032
+ if (changedProperties.has('dateTo') && this.dateTo && isCellClick) {
11033
+ const dateStr = this.formatAnnouncementDate(this.dateTo);
11034
+ const rangeLabel = this.datepicker.rangeLabelEnd || 'range end';
11035
+ this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
9666
11036
  }
9667
11037
  }
9668
11038
 
@@ -9671,6 +11041,7 @@ class AuroCalendar extends RangeDatepicker {
9671
11041
  <${this.bibtemplateTag}
9672
11042
  ?large="${this.largeFullscreenHeadline}"
9673
11043
  ?isFullscreen="${this.isFullscreen}"
11044
+ ?showFooter="${!this.isFullscreen && this.dropdown?.desktopModal}"
9674
11045
  @close-click="${this.utilCal.requestDismiss}">
9675
11046
  <span slot="ariaLabel.close">${this.slots["ariaLabel.bib.close"]}</span>
9676
11047
 
@@ -9688,24 +11059,27 @@ class AuroCalendar extends RangeDatepicker {
9688
11059
  </div>
9689
11060
  </div>
9690
11061
 
9691
- <div class="calendarWrapper">
9692
- <div class="calendars">
9693
- ${this.renderAllCalendars()}
9694
- </div>
11062
+ <div class="calendarWrapper ${!this.isFullscreen && this.dropdown?.desktopModal ? 'hasFooter' : ''}">
9695
11063
  <div class="calendarNavButtons">
9696
11064
  ${this.showPrevMonthBtn ? html$1`
9697
- <button tabIndex="-1" class="calendarNavBtn prevMonth" @click="${this.handlePrevMonth}">
11065
+ <button tabIndex="0" class="calendarNavBtn prevMonth" aria-label="${this.datepicker?.navLabelPrevMonth || 'Previous month'}" @click="${this.handlePrevMonth}">
9698
11066
  ${this.util.generateIconHtml(chevronLeft)}
9699
11067
  </button>
9700
11068
  ` : undefined}
9701
11069
  ${this.showNextMonthBtn ? html$1`
9702
- <button tabIndex="-1" class="calendarNavBtn nextMonth" @click="${this.handleNextMonth}">
11070
+ <button tabIndex="0" class="calendarNavBtn nextMonth" aria-label="${this.datepicker?.navLabelNextMonth || 'Next month'}" @click="${this.handleNextMonth}">
9703
11071
  ${this.util.generateIconHtml(chevronRight)}
9704
11072
  </button>
9705
11073
  ` : undefined}
9706
11074
  </div>
11075
+ <div id="calendarGrid" class="calendars" role="group" tabindex="-1" aria-activedescendant="activeDescendantProxy" @keydown="${this.handleGridKeyDown}">
11076
+ <span id="activeDescendantProxy" role="gridcell" aria-label="" class="sr-only"></span>
11077
+ ${this.renderAllCalendars()}
11078
+ </div>
9707
11079
  </div>
9708
11080
 
11081
+ <div id="calendar-live-region" aria-live="assertive" aria-atomic="true" class="sr-only"></div>
11082
+
9709
11083
  <${this.buttonTag} slot="footer" fluid @click="${this.utilCal.requestDismiss}">Done</${this.buttonTag}>
9710
11084
  </${this.bibtemplateTag}>
9711
11085
  `;
@@ -12953,7 +14327,7 @@ function applyKeyboardStrategy$1(component, strategy, options = {}) {
12953
14327
  });
12954
14328
  }
12955
14329
 
12956
- var styleCss$2$1 = css`: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}`;
14330
+ var styleCss$2$1 = css`: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}`;
12957
14331
 
12958
14332
  var colorCss$2 = css`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
12959
14333
 
@@ -13584,7 +14958,7 @@ let AuroHelpText$2 = class AuroHelpText extends LitElement {
13584
14958
  }
13585
14959
  };
13586
14960
 
13587
- var formkitVersion$1 = '202605201634';
14961
+ var formkitVersion$1 = '202605210248';
13588
14962
 
13589
14963
  let AuroElement$2 = class AuroElement extends LitElement {
13590
14964
  static get properties() {
@@ -13764,6 +15138,7 @@ class AuroDropdown extends AuroElement$2 {
13764
15138
  _intializeDefaults() {
13765
15139
  this.appearance = 'default';
13766
15140
  this.chevron = false;
15141
+ this.desktopModal = false;
13767
15142
  this.disabled = false;
13768
15143
  this.disableKeyboardHandling = false;
13769
15144
  this.error = false;
@@ -13944,6 +15319,14 @@ class AuroDropdown extends AuroElement$2 {
13944
15319
  reflect: true
13945
15320
  },
13946
15321
 
15322
+ /**
15323
+ * If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
15324
+ */
15325
+ desktopModal: {
15326
+ type: Boolean,
15327
+ reflect: true
15328
+ },
15329
+
13947
15330
  /**
13948
15331
  * If declared, the dropdown will only show by calling the API .show() public method.
13949
15332
  */
@@ -14231,6 +15614,15 @@ class AuroDropdown extends AuroElement$2 {
14231
15614
 
14232
15615
  disconnectedCallback() {
14233
15616
  super.disconnectedCallback();
15617
+ this._clearPageInert();
15618
+ if (this._bibTabHandler) {
15619
+ this.removeEventListener('keydown', this._bibTabHandler);
15620
+ this._bibTabHandler = undefined;
15621
+ }
15622
+ if (this.focusTrap) {
15623
+ this.focusTrap.disconnect();
15624
+ this.focusTrap = undefined;
15625
+ }
14234
15626
  if (this.floater) {
14235
15627
  this.floater.hideBib('disconnect');
14236
15628
  this.floater.disconnect();
@@ -14258,19 +15650,45 @@ class AuroDropdown extends AuroElement$2 {
14258
15650
  if (this.isPopoverVisible) {
14259
15651
  // Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
14260
15652
  // Desktop: use show() for Floating UI positioning + FocusTrap for focus management
14261
- const useModal = this.isBibFullscreen;
14262
- this.bibElement.value.open(useModal);
15653
+ this.bibElement.value.open(this.isBibFullscreen);
15654
+ this.updateFocusTrap();
15655
+
15656
+ // Desktop modal: make siblings inert so content outside is not interactive
15657
+ if (this.desktopModal && !this.isBibFullscreen) {
15658
+ this._setPageInert();
15659
+ }
14263
15660
  } else {
14264
15661
  this.bibElement.value.close();
15662
+ this._clearPageInert();
14265
15663
  }
14266
15664
  }
14267
15665
 
14268
15666
  // When fullscreen strategy changes while open, re-open dialog with correct mode
14269
15667
  // (e.g. resizing from desktop → mobile while dropdown is open)
14270
15668
  if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
14271
- const useModal = this.isBibFullscreen;
14272
15669
  this.bibElement.value.close();
14273
- this.bibElement.value.open(useModal);
15670
+ this.bibElement.value.open(this.isBibFullscreen);
15671
+
15672
+ // Re-initialize focus management for the new strategy
15673
+ this.updateFocusTrap();
15674
+
15675
+ // Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
15676
+ if (this.desktopModal && !this.isBibFullscreen) {
15677
+ this._setPageInert();
15678
+ } else {
15679
+ this._clearPageInert();
15680
+ }
15681
+ }
15682
+
15683
+ // Handle desktopModal toggled while the dropdown is already open.
15684
+ // Re-initialize focus trapping and page inert state to match the new mode.
15685
+ if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
15686
+ this.updateFocusTrap();
15687
+ if (this.desktopModal) {
15688
+ this._setPageInert();
15689
+ } else {
15690
+ this._clearPageInert();
15691
+ }
14274
15692
  }
14275
15693
  }
14276
15694
 
@@ -14280,8 +15698,14 @@ class AuroDropdown extends AuroElement$2 {
14280
15698
  * @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
14281
15699
  */
14282
15700
  handleDropdownToggle(event) {
14283
- this.updateFocusTrap();
14284
15701
  this.isPopoverVisible = event.detail.expanded;
15702
+
15703
+ // Tear down FocusTrap when closing. Creation happens in updated()
15704
+ // after the dialog is open so getFocusableElements can find content.
15705
+ if (!this.isPopoverVisible) {
15706
+ this.updateFocusTrap();
15707
+ }
15708
+
14285
15709
  const eventType = event.detail.eventType || "unknown";
14286
15710
  if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
14287
15711
  this.trigger.focus();
@@ -14380,19 +15804,178 @@ class AuroDropdown extends AuroElement$2 {
14380
15804
  * @private
14381
15805
  */
14382
15806
  updateFocusTrap() {
15807
+ // Always clean up existing handlers/traps before setting up new ones
15808
+ // to prevent duplicate listeners on repeated calls.
15809
+ if (this._bibTabHandler) {
15810
+ this.removeEventListener('keydown', this._bibTabHandler);
15811
+ this._bibTabHandler = undefined;
15812
+ }
15813
+
15814
+ if (this.focusTrap) {
15815
+ this.focusTrap.disconnect();
15816
+ this.focusTrap = undefined;
15817
+ }
15818
+
14383
15819
  if (this.isPopoverVisible) {
14384
15820
  if (!this.isBibFullscreen) {
14385
- // Desktop: show() doesn't trap focus, so use FocusTrap
14386
- this.focusTrap = new FocusTrap(this.bibContent);
14387
- this.focusTrap.focusFirstElement();
15821
+ if (this.desktopModal) {
15822
+ // Desktop modal: trap focus only within the bib content.
15823
+ // Can't use FocusTrap on the bib element because keydown events
15824
+ // from slotted content bubble through the dropdown host (light DOM),
15825
+ // not through the bib (shadow projection target). Using FocusTrap
15826
+ // on the dropdown would include the trigger in the tab cycle.
15827
+ // Instead, listen for Tab on the dropdown and manually wrap focus
15828
+ // within the bib's focusable elements.
15829
+ this._bibTabHandler = (event) => {
15830
+ if (event.key !== 'Tab') {
15831
+ return;
15832
+ }
15833
+
15834
+ // Collect focusable elements from the bib content.
15835
+ const focusables = getFocusableElements(this.bibContent);
15836
+
15837
+ // Fallback: try from slotted content directly
15838
+ if (!focusables.length) {
15839
+ const slot = this.shadowRoot.querySelector('.slotContent slot');
15840
+ const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
15841
+
15842
+ for (const node of assignedNodes) {
15843
+ if (node.nodeType === Node.ELEMENT_NODE) {
15844
+ focusables.push(...getFocusableElements(node));
15845
+ }
15846
+ }
15847
+ }
15848
+
15849
+ if (!focusables.length) {
15850
+ return;
15851
+ }
15852
+
15853
+ event.preventDefault();
15854
+
15855
+ const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
15856
+
15857
+ // Walk the active element chain through shadow roots
15858
+ const actives = this._getActiveElements();
15859
+
15860
+ let idx = focusables.findIndex((el) => actives.includes(el));
15861
+
15862
+ if (idx === -1) { // eslint-disable-line no-magic-numbers
15863
+ // Focus is not on a known element — move to first/last
15864
+ idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
15865
+ }
15866
+
15867
+ // Try each element in order, skipping any that can't receive focus
15868
+ // (e.g. hidden elements, elements in collapsed sections)
15869
+ for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
15870
+ let nextIdx = idx + direction;
15871
+
15872
+ // Wrap around
15873
+ if (nextIdx < 0) {
15874
+ nextIdx = focusables.length - 1;
15875
+ } else if (nextIdx >= focusables.length) {
15876
+ nextIdx = 0;
15877
+ }
15878
+
15879
+ focusables[nextIdx].focus();
15880
+
15881
+ // Verify focus actually moved to the target
15882
+ const newActives = this._getActiveElements();
15883
+
15884
+ if (newActives.includes(focusables[nextIdx])) {
15885
+ return;
15886
+ }
15887
+
15888
+ // Focus didn't stick — skip this element and try the next
15889
+ idx = nextIdx;
15890
+ }
15891
+ };
15892
+ this.addEventListener('keydown', this._bibTabHandler);
15893
+
15894
+ // Move initial focus into the bib content, matching FocusTrap behavior
15895
+ requestAnimationFrame(() => {
15896
+ const focusables = getFocusableElements(this.bibContent);
15897
+ if (focusables.length) {
15898
+ focusables[0].focus();
15899
+ }
15900
+ });
15901
+ } else {
15902
+ // Normal desktop: use FocusTrap on the bib element
15903
+ this.focusTrap = new FocusTrap(this.bibContent);
15904
+ this.focusTrap.focusFirstElement();
15905
+ }
14388
15906
  }
14389
15907
  // Fullscreen: showModal() provides native focus trapping
15908
+ }
15909
+ }
15910
+
15911
+ /**
15912
+ * Returns the chain of active (focused) elements through shadow roots.
15913
+ * @private
15914
+ * @returns {Array<HTMLElement>}
15915
+ */
15916
+ _getActiveElements() {
15917
+ let { activeElement } = document;
15918
+ const actives = [activeElement];
15919
+
15920
+ while (activeElement?.shadowRoot?.activeElement) {
15921
+ activeElement = activeElement.shadowRoot.activeElement;
15922
+ actives.push(activeElement);
15923
+ }
15924
+
15925
+ return actives;
15926
+ }
15927
+
15928
+ /**
15929
+ * Sets `inert` on sibling elements of the dropdown's top-level host
15930
+ * so that content outside the dropdown is not interactive while the modal is open.
15931
+ * Walks up through shadow DOM boundaries to find the outermost host element
15932
+ * in the light DOM, then sets `inert` on siblings at each ancestor level
15933
+ * to ensure all page content outside the host subtree is inert.
15934
+ * @private
15935
+ */
15936
+ _setPageInert() {
15937
+ if (this._inertSiblings) {
14390
15938
  return;
14391
15939
  }
14392
15940
 
14393
- if (this.focusTrap) {
14394
- this.focusTrap.disconnect();
14395
- this.focusTrap = undefined;
15941
+ this._inertSiblings = [];
15942
+
15943
+ // Walk up through shadow DOM boundaries to find the topmost host
15944
+ // element in the light DOM. For example, if this dropdown is inside
15945
+ // auro-datepicker's shadow DOM, we walk up to the datepicker element
15946
+ // so we set inert on its siblings — not on the datepicker itself.
15947
+ let host = this;
15948
+ while (host.getRootNode() instanceof ShadowRoot) {
15949
+ host = host.getRootNode().host;
15950
+ }
15951
+
15952
+ // Walk up the ancestor chain, inerting siblings at each level
15953
+ // to ensure the entire page outside the host subtree is inert.
15954
+ let current = host;
15955
+ while (current.parentElement) {
15956
+ const parent = current.parentElement;
15957
+ for (const sibling of parent.children) {
15958
+ if (sibling !== current) {
15959
+ this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
15960
+ sibling.inert = true;
15961
+ }
15962
+ }
15963
+ current = parent;
15964
+ }
15965
+ }
15966
+
15967
+ /**
15968
+ * Restores `inert` state on siblings that were tracked by `_setPageInert`.
15969
+ * Preserves the previous inert state so externally-inerted elements are
15970
+ * not inadvertently re-enabled.
15971
+ * @private
15972
+ */
15973
+ _clearPageInert() {
15974
+ if (this._inertSiblings) {
15975
+ for (const entry of this._inertSiblings) {
15976
+ entry.element.inert = entry.wasInert;
15977
+ }
15978
+ this._inertSiblings = undefined;
14396
15979
  }
14397
15980
  }
14398
15981
 
@@ -14631,6 +16214,7 @@ class AuroDropdown extends AuroElement$2 {
14631
16214
  shape="${this.shape}"
14632
16215
  ?data-show="${this.isPopoverVisible}"
14633
16216
  ?isfullscreen="${this.isBibFullscreen}"
16217
+ ?desktopmodal="${this.desktopModal}"
14634
16218
  .dialogLabel="${this.bibDialogLabel}"
14635
16219
  ${ref(this.bibElement)}
14636
16220
  >
@@ -21329,7 +22913,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
21329
22913
  }
21330
22914
  };
21331
22915
 
21332
- var formkitVersion = '202605201634';
22916
+ var formkitVersion = '202605210248';
21333
22917
 
21334
22918
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
21335
22919
  // See LICENSE in the project root for license information.
@@ -22584,26 +24168,62 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
22584
24168
  // components/datepicker/docs/partials/keyboardBehavior.md
22585
24169
  //
22586
24170
  // Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
22587
- // - The bib opens and closes via pointer/touch interaction only.
22588
24171
  // - Escape closes the bib and prevents the event from reaching parent containers.
24172
+ // - Enter opens the bib when it is closed (trigger input only, not clear button).
24173
+ // - Space opens the bib when it is closed (trigger input only, not clear button).
22589
24174
  // - Tab uses the browser's default tabindex sequence across trigger controls.
22590
- // - Enter and Space do not open or close the bib.
22591
24175
  //
22592
24176
  // This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
22593
24177
  // added, handlers should go here following the same strategy pattern used by
22594
24178
  // auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
22595
24179
  const datepickerKeyboardStrategy = {
22596
- Escape(component, evt) {
22597
- if (!component.dropdown || !component.dropdown.isPopoverVisible) {
24180
+ Escape(component, evt, ctx) {
24181
+ if (!ctx.isExpanded) {
22598
24182
  return;
22599
24183
  }
22600
24184
 
22601
- // Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
22602
- // Because stopPropagation prevents the document-level floatingUI keydown handler from
22603
- // seeing this event, we must also close the dropdown explicitly.
24185
+ // Stop propagation so parent containers (auro-dialog, auro-drawer)
24186
+ // don't also react to Escape.
22604
24187
  evt.stopPropagation();
24188
+ evt.preventDefault();
24189
+
24190
+ component.hideBib();
24191
+ },
24192
+
24193
+ Enter(component, evt, ctx) {
24194
+ if (ctx.isExpanded) {
24195
+ return;
24196
+ }
24197
+
24198
+ // Only open from the trigger input, not the clear button or other internal elements.
24199
+ // evt.target is retargeted to the host in shadow DOM, so use composedPath()
24200
+ // to find the real origin. The clear button is rendered with class "clearBtn".
24201
+ const path = evt.composedPath();
24202
+ if (path.some(el => el.classList?.contains('clearBtn'))) {
24203
+ return;
24204
+ }
24205
+
24206
+ evt.preventDefault();
22605
24207
 
22606
- component.dropdown.hide();
24208
+ component.dropdown.show();
24209
+ },
24210
+
24211
+ ' '(component, evt, ctx) {
24212
+ if (ctx.isExpanded) {
24213
+ return;
24214
+ }
24215
+
24216
+ // Only open from the trigger input, not the clear button or other internal elements.
24217
+ // evt.target is retargeted to the host in shadow DOM, so use composedPath()
24218
+ // to find the real origin. The clear button is rendered with class "clearBtn".
24219
+ const path = evt.composedPath();
24220
+ if (path.some(el => el.classList?.contains('clearBtn'))) {
24221
+ return;
24222
+ }
24223
+
24224
+ evt.preventDefault();
24225
+
24226
+ component.dropdown.show();
22607
24227
  },
22608
24228
  };
22609
24229
 
@@ -22677,6 +24297,15 @@ class AuroDatePicker extends AuroElement {
22677
24297
  this.required = false;
22678
24298
  this.onDark = false;
22679
24299
  this.range = false;
24300
+ this.rangeLabelStart = 'range start';
24301
+ this.rangeLabelEnd = 'range end';
24302
+ this.rangeLabelBeforeRange = 'before range';
24303
+ this.rangeLabelInRange = 'in range';
24304
+ this.rangeLabelAfterRange = 'after range';
24305
+ this.blackoutDates = [];
24306
+ this.blackoutLabel = 'unavailable';
24307
+ this.navLabelPrevMonth = 'Previous month';
24308
+ this.navLabelNextMonth = 'Next month';
22680
24309
  this.stacked = false;
22681
24310
  this.noValidate = false;
22682
24311
  this.validity = undefined;
@@ -23055,6 +24684,78 @@ class AuroDatePicker extends AuroElement {
23055
24684
  reflect: true
23056
24685
  },
23057
24686
 
24687
+ /**
24688
+ * Label announced for the range start date cell.
24689
+ */
24690
+ rangeLabelStart: {
24691
+ type: String,
24692
+ reflect: true
24693
+ },
24694
+
24695
+ /**
24696
+ * Label announced for the range end date cell.
24697
+ */
24698
+ rangeLabelEnd: {
24699
+ type: String,
24700
+ reflect: true
24701
+ },
24702
+
24703
+ /**
24704
+ * Label announced for cells before the range start.
24705
+ */
24706
+ rangeLabelBeforeRange: {
24707
+ type: String,
24708
+ reflect: true
24709
+ },
24710
+
24711
+ /**
24712
+ * Label announced for cells within the selected range.
24713
+ */
24714
+ rangeLabelInRange: {
24715
+ type: String,
24716
+ reflect: true
24717
+ },
24718
+
24719
+ /**
24720
+ * Label announced for cells after the range (or after start when no end is selected).
24721
+ */
24722
+ rangeLabelAfterRange: {
24723
+ type: String,
24724
+ reflect: true
24725
+ },
24726
+
24727
+ /**
24728
+ * Array of dates that cannot be selected. Dates should be in ISO format (YYYY-MM-DD).
24729
+ */
24730
+ blackoutDates: {
24731
+ type: Array,
24732
+ reflect: true
24733
+ },
24734
+
24735
+ /**
24736
+ * Label announced for blackout (disabled but in-range) date cells.
24737
+ */
24738
+ blackoutLabel: {
24739
+ type: String,
24740
+ reflect: true
24741
+ },
24742
+
24743
+ /**
24744
+ * Accessible label for the previous month navigation button.
24745
+ */
24746
+ navLabelPrevMonth: {
24747
+ type: String,
24748
+ reflect: true
24749
+ },
24750
+
24751
+ /**
24752
+ * Accessible label for the next month navigation button.
24753
+ */
24754
+ navLabelNextMonth: {
24755
+ type: String,
24756
+ reflect: true
24757
+ },
24758
+
23058
24759
  /**
23059
24760
  * Dates that the user should have for reference as part of their decision making when selecting a date.
23060
24761
  * This should be a JSON string array of dates in the format of `MM/DD/YYYY`.
@@ -23081,6 +24782,7 @@ class AuroDatePicker extends AuroElement {
23081
24782
 
23082
24783
  /**
23083
24784
  * Custom help text message to display when validity = `customError`.
24785
+ * Also used as the validation message when a blackout date is typed into the input.
23084
24786
  */
23085
24787
  setCustomValidityCustomError: {
23086
24788
  type: String
@@ -23402,6 +25104,61 @@ class AuroDatePicker extends AuroElement {
23402
25104
  }));
23403
25105
  }
23404
25106
 
25107
+ /**
25108
+ * Attempts to focus the active calendar cell using a rAF retry loop.
25109
+ * Shared by both fullscreen and desktop open paths.
25110
+ * @private
25111
+ * @returns {void}
25112
+ */
25113
+ focusActiveCellWhenReady() {
25114
+ const MAX_ATTEMPTS = 20;
25115
+ let attempts = 0;
25116
+
25117
+ const tryFocus = () => {
25118
+ attempts += 1;
25119
+ const allCells = this.calendar.getAllFocusableCells();
25120
+
25121
+ if (!allCells.length && attempts < MAX_ATTEMPTS) {
25122
+ requestAnimationFrame(tryFocus);
25123
+ return;
25124
+ }
25125
+
25126
+ // Compute and mark the active cell
25127
+ if (this.calendar.activeCellDate == null) {
25128
+ this.calendar.activeCellDate = this.calendar.computeActiveDate();
25129
+ }
25130
+ if (this.calendar.activeCellDate !== undefined) {
25131
+ this.calendar.setActiveCell(this.calendar.activeCellDate);
25132
+ }
25133
+
25134
+ // If no cell matched (e.g. centralDate month differs from the rendered
25135
+ // range on mobile), fall back to the first rendered enabled cell.
25136
+ let activeCell = allCells.find(cell => cell.active);
25137
+ if (!activeCell && allCells.length) {
25138
+ const fallback = allCells[0];
25139
+ if (fallback.day) {
25140
+ this.calendar.activeCellDate = fallback.day.date;
25141
+ this.calendar.setActiveCell(this.calendar.activeCellDate);
25142
+ activeCell = allCells.find(cell => cell.active);
25143
+ }
25144
+ }
25145
+
25146
+ // Focus the calendar grid wrapper (aria-activedescendant handles
25147
+ // the SR announcement for the active cell).
25148
+ if (activeCell) {
25149
+ // Announce the initial active cell via the live region
25150
+ const announcement = this.calendar.buildFocusAnnouncement(activeCell.day.date);
25151
+ this.calendar.announceSelection(announcement);
25152
+
25153
+ this.calendar.focusActiveCell();
25154
+ } else if (attempts < MAX_ATTEMPTS) {
25155
+ requestAnimationFrame(tryFocus);
25156
+ }
25157
+ };
25158
+
25159
+ requestAnimationFrame(tryFocus);
25160
+ }
25161
+
23405
25162
  /**
23406
25163
  * Binds all behavior needed to the dropdown after rendering.
23407
25164
  * @private
@@ -23410,6 +25167,12 @@ class AuroDatePicker extends AuroElement {
23410
25167
  configureDropdown() {
23411
25168
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
23412
25169
 
25170
+ // The datepicker manages its own open/close lifecycle (Space/Escape/date-select/done).
25171
+ // Prevent the floater's document-level focusin handler from closing the bib
25172
+ // when focus moves from the trigger into the calendar cells (which live inside
25173
+ // a top-layer popover where :focus-within on the dropdown host returns false).
25174
+ this.dropdown.noHideOnThisFocusLoss = true;
25175
+
23413
25176
  // Pass label text to the dropdown bib for accessible dialog naming.
23414
25177
  // Without this, the fullscreen <dialog> has no accessible name and
23415
25178
  // screen readers announce it as just "dialog" with no context.
@@ -23427,6 +25190,23 @@ class AuroDatePicker extends AuroElement {
23427
25190
  this.dropdown.addEventListener('auroDropdown-toggled', () => {
23428
25191
  this.notifyDatepickerToggled();
23429
25192
 
25193
+ if (this.dropdown.isPopoverVisible) {
25194
+ // Reset calendar focus state so it recomputes from the current selection.
25195
+ // Without this, reopening after navigating to a month without a selected
25196
+ // date leaves activeCellDate pointing at a cell in a different month than
25197
+ // what centralDate renders, causing all cells to have tabindex="-1".
25198
+ this.calendar.activeCellDate = null;
25199
+
25200
+ // Show the month containing the selected date (or today) instead of
25201
+ // whichever month the user last navigated to.
25202
+ // Respect consumer-provided centralDate/calendarStartDate if no value is set.
25203
+ if (this.value && this.util.validDateStr(this.value, this.format)) {
25204
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25205
+ } else if (!this.centralDate && !this.calendarStartDate && !this.minDate) {
25206
+ this.calendarRenderUtil.updateCentralDate(this, new Date());
25207
+ }
25208
+ }
25209
+
23430
25210
  // This forces the calendar to render when the dropdown is opened.
23431
25211
  // It is not rendered by default
23432
25212
  this.calendar.visible = this.dropdown.isPopoverVisible;
@@ -23459,12 +25239,23 @@ class AuroDatePicker extends AuroElement {
23459
25239
  bibEl.open(true);
23460
25240
 
23461
25241
  doubleRaf(() => {
23462
- this.calendar.focusCloseButton();
25242
+ this.focusActiveCellWhenReady();
23463
25243
  });
23464
25244
  }
23465
25245
  });
23466
25246
 
23467
25247
  guardTouchPassthrough(this.shadowRoot.querySelector('.calendarWrapper'));
25248
+ } else {
25249
+ // Desktop (non-fullscreen) modal: make the trigger inert so users
25250
+ // cannot interact with the input while the modal bib is open.
25251
+ if (this.dropdown.desktopModal) {
25252
+ this.dropdown.trigger.inert = true;
25253
+ }
25254
+
25255
+ // Desktop (non-fullscreen): focus the active calendar cell.
25256
+ this.dropdown.updateComplete.then(() => {
25257
+ this.focusActiveCellWhenReady();
25258
+ });
23468
25259
  }
23469
25260
  } else {
23470
25261
  // Always clear the inert flag. Only restore focus to the input when the datepicker
@@ -23510,7 +25301,7 @@ class AuroDatePicker extends AuroElement {
23510
25301
  bibEl.close();
23511
25302
  bibEl.open(true);
23512
25303
  doubleRaf(() => {
23513
- this.calendar.focusCloseButton();
25304
+ this.focusActiveCellWhenReady();
23514
25305
  });
23515
25306
  }
23516
25307
  });
@@ -23705,14 +25496,8 @@ class AuroDatePicker extends AuroElement {
23705
25496
 
23706
25497
  if (onEndValue) {
23707
25498
  this.valueEnd = newDate;
23708
- if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
23709
- this.focus('startDate');
23710
- }
23711
25499
  } else {
23712
25500
  this.value = newDate;
23713
- if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
23714
- this.focus('endDate');
23715
- }
23716
25501
  }
23717
25502
  }
23718
25503
  }
@@ -23752,6 +25537,27 @@ class AuroDatePicker extends AuroElement {
23752
25537
  this.resetInputs();
23753
25538
  }
23754
25539
 
25540
+ /**
25541
+ * Checks whether a formatted date string matches a blackout date.
25542
+ * @private
25543
+ * @param {string} dateStr - A date string in the component's configured format.
25544
+ * @returns {boolean} True if the date is in the blackoutDates list.
25545
+ */
25546
+ isBlackoutDate(dateStr) {
25547
+ if (!Array.isArray(this.blackoutDates) || this.blackoutDates.length === 0 || !dateStr) {
25548
+ return false;
25549
+ }
25550
+
25551
+ const formatted = this.util.toNorthAmericanFormat(dateStr, this.format);
25552
+ if (!this.util.validDateStr(dateStr, this.format)) return false;
25553
+
25554
+ const d = new Date(formatted);
25555
+ const yyyy = d.getFullYear();
25556
+ const mm = String(d.getMonth() + 1).padStart(2, '0');
25557
+ const dd = String(d.getDate()).padStart(2, '0');
25558
+ return this.blackoutDates.includes(`${yyyy}-${mm}-${dd}`);
25559
+ }
25560
+
23755
25561
  /**
23756
25562
  * Validates value.
23757
25563
  * @param {boolean} [force=false] - Whether to force validation.
@@ -23763,6 +25569,24 @@ class AuroDatePicker extends AuroElement {
23763
25569
  }
23764
25570
 
23765
25571
  this.validation.validate(this, force);
25572
+
25573
+ // After standard validation, check blackout dates for typed input
25574
+ if (this.validity !== 'customError') {
25575
+ if (this.isBlackoutDate(this.value) || (this.range && this.isBlackoutDate(this.valueEnd))) {
25576
+ const msg = this.setCustomValidityCustomError || 'Selected date is unavailable';
25577
+ this.validity = 'customError';
25578
+ this.errorMessage = msg;
25579
+
25580
+ this.dispatchEvent(new CustomEvent('auroFormElement-validated', {
25581
+ bubbles: true,
25582
+ composed: true,
25583
+ detail: {
25584
+ validity: this.validity,
25585
+ message: this.errorMessage
25586
+ }
25587
+ }));
25588
+ }
25589
+ }
23766
25590
  }
23767
25591
 
23768
25592
  /**
@@ -23843,6 +25667,9 @@ class AuroDatePicker extends AuroElement {
23843
25667
 
23844
25668
  if (this.cellClickActive) {
23845
25669
  this.cellClickActive = false;
25670
+ this.wasCellClick = true;
25671
+ } else {
25672
+ this.wasCellClick = false;
23846
25673
  }
23847
25674
 
23848
25675
  if (this.value && this.util.validDateStr(this.value, this.format)) {
@@ -23873,16 +25700,44 @@ class AuroDatePicker extends AuroElement {
23873
25700
  }
23874
25701
 
23875
25702
  if (this.value && this.value.length === this.inputList[0].lengthForType) {
23876
- this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25703
+ // Skip centralDate update when user clicked a cell in range mode
25704
+ // to prevent the displayed months from shifting
25705
+ if (!(this.wasCellClick && this.range)) {
25706
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
25707
+ }
23877
25708
  }
23878
25709
 
23879
25710
  this.setHasValue();
23880
25711
  }
23881
25712
 
25713
+ if (changedProperties.has('blackoutDates')) {
25714
+ // Force calendar cells to re-render with updated blackout state.
25715
+ // requestUpdate on the calendar alone is insufficient because cells
25716
+ // don't receive blackoutDates as a bound property. Dispatching the
25717
+ // slot content event triggers handleSlotContent → requestUpdate on each cell.
25718
+ if (this.calendar) {
25719
+ this.calendar.requestUpdate();
25720
+ this.dispatchEvent(new CustomEvent('auroDatePicker-newSlotContent'));
25721
+ }
25722
+
25723
+ // Re-run validation so that a previously valid value that now falls on
25724
+ // a blackout date is flagged, and vice versa.
25725
+ if (this.value || this.valueEnd) {
25726
+ this.validate();
25727
+ }
25728
+ }
25729
+
23882
25730
  if (changedProperties.has('valueEnd') && this.inputList[1]) {
23883
25731
 
23884
25732
  this.formattedValueEnd = this.util.toNorthAmericanFormat(this.valueEnd, this.format);
23885
25733
 
25734
+ if (this.cellClickActive) {
25735
+ this.cellClickActive = false;
25736
+ this.wasCellClick = true;
25737
+ } else {
25738
+ this.wasCellClick = false;
25739
+ }
25740
+
23886
25741
  // update the calendar
23887
25742
  if (this.valueEnd && this.util.validDateStr(this.valueEnd, this.format)) {
23888
25743
  this.calendar.dateTo = this.convertToWcValidTime(this.formattedValueEnd);
@@ -23910,7 +25765,11 @@ class AuroDatePicker extends AuroElement {
23910
25765
  }
23911
25766
 
23912
25767
  if (this.valueEnd && this.valueEnd.length === this.inputList[1].lengthForType) {
23913
- this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
25768
+ // Skip centralDate update when user clicked a cell in range mode
25769
+ // to prevent the displayed months from shifting
25770
+ if (!this.wasCellClick) {
25771
+ this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
25772
+ }
23914
25773
  }
23915
25774
 
23916
25775
  this.validate();
@@ -24067,6 +25926,7 @@ class AuroDatePicker extends AuroElement {
24067
25926
  }
24068
25927
 
24069
25928
  firstUpdated() {
25929
+
24070
25930
  // Add the tag name as an attribute if it is different than the component name
24071
25931
  this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
24072
25932
 
@@ -24496,7 +26356,7 @@ class AuroDatePicker extends AuroElement {
24496
26356
  // Base HTML render() handles dropdown and calendar bib
24497
26357
  return html$1`
24498
26358
  <!-- Hidden slot for clear button aria-label -->
24499
- <slot name="ariaLabel.input.clear" hidden @slotchange=${this.requestUpdate}></slot>
26359
+ <slot name="ariaLabel.input.clear" hidden @slotchange=${() => this.requestUpdate()}></slot>
24500
26360
 
24501
26361
  <${this.dropdownTag}
24502
26362
  appearance="${this.onDark ? 'inverse' : this.appearance}"
@@ -24513,6 +26373,7 @@ class AuroDatePicker extends AuroElement {
24513
26373
  .shape="${this.shape}"
24514
26374
  .size="${this.size}"
24515
26375
  class="${classMap(dropdownElementClassMap)}"
26376
+ desktopModal
24516
26377
  disableEventShow
24517
26378
  for="dropdownMenu"
24518
26379
  part="dropdown"