@ctrliq/quantic-components 1.83.0 → 1.84.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/action-group/action-group.component.d.ts +13 -0
  2. package/dist/action-group/action-group.component.js +63 -0
  3. package/dist/action-group/index.d.ts +1 -0
  4. package/dist/action-group/index.js +1 -0
  5. package/dist/action-group/index.stories.d.ts +25 -0
  6. package/dist/action-group/index.stories.js +59 -0
  7. package/dist/astro.d.ts +4 -1
  8. package/dist/astro.js +4 -1
  9. package/dist/astro.js.map +1 -1
  10. package/dist/badge/badge-group.component.d.ts +13 -0
  11. package/dist/badge/badge-group.component.js +62 -0
  12. package/dist/badge/badge-group.stories.d.ts +41 -0
  13. package/dist/badge/badge-group.stories.js +62 -0
  14. package/dist/badge/index.d.ts +1 -0
  15. package/dist/badge/index.js +1 -0
  16. package/dist/button-bar/button-bar-item.d.ts +3 -0
  17. package/dist/button-bar/button-bar-item.js +12 -1
  18. package/dist/button-bar/button-bar.d.ts +9 -0
  19. package/dist/button-bar/button-bar.js +53 -2
  20. package/dist/button-bar/index.stories.js +2 -2
  21. package/dist/button-bar/index.utils.d.ts +6 -0
  22. package/dist/button-bar/index.utils.js +31 -0
  23. package/dist/button-bar/index.utils.test.d.ts +1 -0
  24. package/dist/button-bar/index.utils.test.js +53 -0
  25. package/dist/button-group/button-group.js +1 -2
  26. package/dist/capacity-bar/index.js +30 -30
  27. package/dist/card/card-carousel.component.js +35 -35
  28. package/dist/card/card-group.component.js +2 -8
  29. package/dist/card/card.component.js +38 -38
  30. package/dist/code-input/index.js +33 -33
  31. package/dist/combobox/index.js +30 -30
  32. package/dist/dialog/dialog-actions.js +11 -10
  33. package/dist/dialog/dialog.js +18 -18
  34. package/dist/dropdown-menu/item.component.js +24 -24
  35. package/dist/field/field-group.component.js +13 -13
  36. package/dist/field/field.component.js +31 -31
  37. package/dist/fieldset/fieldset.component.js +27 -27
  38. package/dist/grid/grid.component.js +31 -31
  39. package/dist/index.d.ts +1 -0
  40. package/dist/index.js +1 -0
  41. package/dist/index.js.map +1 -1
  42. package/dist/layout/layout.component.js +1 -0
  43. package/dist/layout/navbar-menu-item.component.js +1 -0
  44. package/dist/layout/sidebar-menu-item.component.js +1 -0
  45. package/dist/log-output/log-output.component.js +1 -1
  46. package/dist/meta/index.js +6 -0
  47. package/dist/meta/index.js.map +1 -1
  48. package/dist/meta/public-css-variables.test.d.ts +1 -0
  49. package/dist/meta/public-css-variables.test.js +244 -0
  50. package/dist/meta.json +110 -5
  51. package/dist/number-input/index.js +18 -17
  52. package/dist/option-card/option-card.component.js +27 -27
  53. package/dist/panel/panel-group.component.js +10 -7
  54. package/dist/panel/panel.component.js +3 -3
  55. package/dist/progress/index.js +15 -15
  56. package/dist/quantic-components.js +709 -454
  57. package/dist/quantic-components.js.map +1 -1
  58. package/dist/quantic-components.min.js +606 -548
  59. package/dist/quantic-components.min.js.map +1 -1
  60. package/dist/register.js.map +1 -1
  61. package/dist/select/index.js +8 -8
  62. package/dist/spinner/index.js +7 -3
  63. package/dist/table/table-cell.component.js +2 -2
  64. package/dist/table/table-head.component.js +1 -1
  65. package/dist/table/table.component.js +16 -16
  66. package/dist/tag/index.d.ts +1 -0
  67. package/dist/tag/index.js +1 -0
  68. package/dist/tag/tag-group.component.d.ts +13 -0
  69. package/dist/tag/tag-group.component.js +62 -0
  70. package/dist/tag/tag-group.stories.d.ts +34 -0
  71. package/dist/tag/tag-group.stories.js +65 -0
  72. package/dist/text-input/index.js +10 -10
  73. package/dist/textarea/index.js +10 -10
  74. package/dist/tooltip/tooltip.js +0 -1
  75. package/dist/types/action-group/action-group.component.d.ts +13 -0
  76. package/dist/types/action-group/index.d.ts +1 -0
  77. package/dist/types/action-group/index.stories.d.ts +25 -0
  78. package/dist/types/astro.d.ts +4 -1
  79. package/dist/types/badge/badge-group.component.d.ts +13 -0
  80. package/dist/types/badge/badge-group.stories.d.ts +41 -0
  81. package/dist/types/badge/index.d.ts +1 -0
  82. package/dist/types/button-bar/button-bar-item.d.ts +3 -0
  83. package/dist/types/button-bar/button-bar.d.ts +9 -0
  84. package/dist/types/button-bar/index.utils.d.ts +6 -0
  85. package/dist/types/button-bar/index.utils.test.d.ts +1 -0
  86. package/dist/types/index.d.ts +1 -0
  87. package/dist/types/meta/public-css-variables.test.d.ts +1 -0
  88. package/dist/types/tag/index.d.ts +1 -0
  89. package/dist/types/tag/tag-group.component.d.ts +13 -0
  90. package/dist/types/tag/tag-group.stories.d.ts +34 -0
  91. package/package.json +5 -3
@@ -687,8 +687,8 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
687
687
  position: relative;
688
688
  width: 100%;
689
689
 
690
- --quantic-component-combobox-padding-inline: var(--quantic-spacing-3);
691
- --quantic-component-combobox-padding-block: var(--quantic-spacing-md);
690
+ --quantic-internal-combobox-padding-inline: var(--quantic-spacing-3);
691
+ --quantic-internal-combobox-padding-block: var(--quantic-spacing-md);
692
692
  }
693
693
 
694
694
  .main {
@@ -703,8 +703,8 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
703
703
  border-radius: var(--quantic-component-combobox-border-radius, var(--quantic-radius-sm));
704
704
  color: var(--quantic-text-primary);
705
705
  background-color: var(--quantic-bg-primary);
706
- padding: var(--quantic-component-combobox-padding-block)
707
- var(--quantic-component-combobox-padding-inline);
706
+ padding: var(--quantic-component-combobox-padding-block, var(--quantic-internal-combobox-padding-block))
707
+ var(--quantic-component-combobox-padding-inline, var(--quantic-internal-combobox-padding-inline));
708
708
  transition:
709
709
  border-color 0.2s ease-in-out,
710
710
  box-shadow 0.2s ease-in-out;
@@ -724,14 +724,14 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
724
724
 
725
725
  .main.size--xs {
726
726
  font-size: 13px;
727
- --quantic-component-combobox-padding-inline: var(--quantic-spacing-2);
728
- --quantic-component-combobox-padding-block: var(--quantic-spacing-xxs);
727
+ --quantic-internal-combobox-padding-inline: var(--quantic-spacing-2);
728
+ --quantic-internal-combobox-padding-block: var(--quantic-spacing-xxs);
729
729
  }
730
730
 
731
731
  .main.size--sm {
732
732
  font-size: var(--quantic-font-size-body-sm);
733
- --quantic-component-combobox-padding-inline: var(--quantic-spacing-2);
734
- --quantic-component-combobox-padding-block: var(--quantic-spacing-sm);
733
+ --quantic-internal-combobox-padding-inline: var(--quantic-spacing-2);
734
+ --quantic-internal-combobox-padding-block: var(--quantic-spacing-sm);
735
735
  }
736
736
 
737
737
  .main.size--md {
@@ -740,8 +740,8 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
740
740
 
741
741
  .main.size--lg {
742
742
  font-size: var(--quantic-font-size-body-lg);
743
- --quantic-component-combobox-padding-inline: var(--quantic-spacing-4);
744
- --quantic-component-combobox-padding-block: var(--quantic-spacing-3);
743
+ --quantic-internal-combobox-padding-inline: var(--quantic-spacing-4);
744
+ --quantic-internal-combobox-padding-block: var(--quantic-spacing-3);
745
745
  }
746
746
 
747
747
  .main:focus-within::before {
@@ -837,59 +837,59 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
837
837
  }
838
838
 
839
839
  .listbox.size--xs {
840
- --quantic-component-combobox-option-padding-block: var(
840
+ --quantic-internal-combobox-option-padding-block: var(
841
841
  --quantic-spacing-1
842
842
  );
843
- --quantic-component-combobox-option-padding-inline: var(
843
+ --quantic-internal-combobox-option-padding-inline: var(
844
844
  --quantic-spacing-1-5
845
845
  );
846
- --quantic-component-combobox-option-font-size: 13px;
847
- --quantic-component-combobox-option-line-height: var(
846
+ --quantic-internal-combobox-option-font-size: 13px;
847
+ --quantic-internal-combobox-option-line-height: var(
848
848
  --quantic-line-height-body-xs
849
849
  );
850
850
  }
851
851
 
852
852
  .listbox.size--sm {
853
- --quantic-component-combobox-option-padding-block: var(
853
+ --quantic-internal-combobox-option-padding-block: var(
854
854
  --quantic-spacing-1-5
855
855
  );
856
- --quantic-component-combobox-option-padding-inline: var(
856
+ --quantic-internal-combobox-option-padding-inline: var(
857
857
  --quantic-spacing-2
858
858
  );
859
- --quantic-component-combobox-option-font-size: var(
859
+ --quantic-internal-combobox-option-font-size: var(
860
860
  --quantic-font-size-body-sm
861
861
  );
862
- --quantic-component-combobox-option-line-height: var(
862
+ --quantic-internal-combobox-option-line-height: var(
863
863
  --quantic-line-height-body-sm
864
864
  );
865
865
  }
866
866
 
867
867
  .listbox.size--md {
868
- --quantic-component-combobox-option-padding-block: var(
868
+ --quantic-internal-combobox-option-padding-block: var(
869
869
  --quantic-spacing-2
870
870
  );
871
- --quantic-component-combobox-option-padding-inline: var(
871
+ --quantic-internal-combobox-option-padding-inline: var(
872
872
  --quantic-spacing-3
873
873
  );
874
- --quantic-component-combobox-option-font-size: var(
874
+ --quantic-internal-combobox-option-font-size: var(
875
875
  --quantic-font-size-body-md
876
876
  );
877
- --quantic-component-combobox-option-line-height: var(
877
+ --quantic-internal-combobox-option-line-height: var(
878
878
  --quantic-line-height-body-md
879
879
  );
880
880
  }
881
881
 
882
882
  .listbox.size--lg {
883
- --quantic-component-combobox-option-padding-block: var(
883
+ --quantic-internal-combobox-option-padding-block: var(
884
884
  --quantic-spacing-3
885
885
  );
886
- --quantic-component-combobox-option-padding-inline: var(
886
+ --quantic-internal-combobox-option-padding-inline: var(
887
887
  --quantic-spacing-4
888
888
  );
889
- --quantic-component-combobox-option-font-size: var(
889
+ --quantic-internal-combobox-option-font-size: var(
890
890
  --quantic-font-size-body-lg
891
891
  );
892
- --quantic-component-combobox-option-line-height: var(
892
+ --quantic-internal-combobox-option-line-height: var(
893
893
  --quantic-line-height-body-lg
894
894
  );
895
895
  }
@@ -899,20 +899,20 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
899
899
  align-items: center;
900
900
  padding: var(
901
901
  --quantic-component-combobox-option-padding-block,
902
- var(--quantic-spacing-2)
902
+ var(--quantic-internal-combobox-option-padding-block, var(--quantic-spacing-2))
903
903
  )
904
904
  var(
905
905
  --quantic-component-combobox-option-padding-inline,
906
- var(--quantic-spacing-3)
906
+ var(--quantic-internal-combobox-option-padding-inline, var(--quantic-spacing-3))
907
907
  );
908
908
  border-radius: var(--quantic-radius-sm);
909
909
  font-size: var(
910
910
  --quantic-component-combobox-option-font-size,
911
- var(--quantic-font-size-body-md)
911
+ var(--quantic-internal-combobox-option-font-size, var(--quantic-font-size-body-md))
912
912
  );
913
913
  line-height: var(
914
914
  --quantic-component-combobox-option-line-height,
915
- var(--quantic-line-height-body-md)
915
+ var(--quantic-internal-combobox-option-line-height, var(--quantic-line-height-body-md))
916
916
  );
917
917
  color: var(--quantic-text-primary);
918
918
  cursor: pointer;
@@ -1075,7 +1075,25 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
1075
1075
  border-radius: 50%;
1076
1076
  background-color: currentColor;
1077
1077
  }
1078
- `,t([fe({type:"BadgeColor",options:Object.values(Ji),default:Ji.Gray,description:"Semantic color of both the dot and badge background."})],e.StatusBadge.prototype,"color",void 0),t([fe({type:"BadgeSize",options:Object.values(Qi),default:Qi.Medium,description:"Controls padding and font size."})],e.StatusBadge.prototype,"size",void 0),e.StatusBadge=t([Se("quantic-status-badge")],e.StatusBadge);const Yi={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},en=Je;e.CapacityBar=class extends qe{constructor(){super(...arguments),this.total=0,this.used=0,this.size=Yi.Small,this.color=en.Brand,this.label=null,this.ariaLabel=null}get safeTotal(){return Number.isFinite(this.total)?st(Math.trunc(this.total),0,100):0}get clamped(){return Number.isFinite(this.used)?st(Math.trunc(this.used),0,this.safeTotal):0}render(){const{clamped:e,safeTotal:t}=this;return W`
1078
+ `,t([fe({type:"BadgeColor",options:Object.values(Ji),default:Ji.Gray,description:"Semantic color of both the dot and badge background."})],e.StatusBadge.prototype,"color",void 0),t([fe({type:"BadgeSize",options:Object.values(Qi),default:Qi.Medium,description:"Controls padding and font size."})],e.StatusBadge.prototype,"size",void 0),e.StatusBadge=t([Se("quantic-status-badge")],e.StatusBadge),e.BadgeGroup=class extends qe{constructor(){super(...arguments),this.ariaLabel=null}render(){return W`
1079
+ <div class="group" role="group" aria-label=${this.ariaLabel??"Badges"}>
1080
+ <slot></slot>
1081
+ </div>
1082
+ `}},e.BadgeGroup.meta={tag:"quantic-badge-group",description:"A run of quantic-badge or quantic-status-badge sharing one accessible name and a consistent gap. Wraps across lines, and each badge keeps its own size. Gap: --quantic-component-badge-group-gap. Use quantic-tag-group for tags.",category:"display",slots:{"":{description:"quantic-badge or quantic-status-badge elements."}},subComponents:["quantic-badge","quantic-status-badge"],relatedTo:["quantic-badge","quantic-tag-group"]},e.BadgeGroup.styles=d`
1083
+ :host {
1084
+ display: block;
1085
+ }
1086
+
1087
+ .group {
1088
+ display: flex;
1089
+ flex-wrap: wrap;
1090
+ align-items: center;
1091
+ gap: var(
1092
+ --quantic-component-badge-group-gap,
1093
+ var(--quantic-spacing-1)
1094
+ );
1095
+ }
1096
+ `,t([fe({type:"string",attribute:"aria-label",description:"Accessible name for the group."})],e.BadgeGroup.prototype,"ariaLabel",void 0),e.BadgeGroup=t([Se("quantic-badge-group")],e.BadgeGroup);const Yi={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},en=Je;e.CapacityBar=class extends qe{constructor(){super(...arguments),this.total=0,this.used=0,this.size=Yi.Small,this.color=en.Brand,this.label=null,this.ariaLabel=null}get safeTotal(){return Number.isFinite(this.total)?st(Math.trunc(this.total),0,100):0}get clamped(){return Number.isFinite(this.used)?st(Math.trunc(this.used),0,this.safeTotal):0}render(){const{clamped:e,safeTotal:t}=this;return W`
1079
1097
  <div
1080
1098
  class=${Ne({wrapper:!0,[`size--${this.size}`]:!0})}
1081
1099
  >
@@ -1105,77 +1123,77 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
1105
1123
 
1106
1124
  .label {
1107
1125
  color: var(--quantic-text-secondary);
1108
- font-size: var(--quantic-component-capacity-bar-label-font-size);
1109
- line-height: var(--quantic-component-capacity-bar-label-line-height);
1126
+ font-size: var(--quantic-component-capacity-bar-label-font-size, var(--quantic-internal-capacity-bar-label-font-size));
1127
+ line-height: var(--quantic-component-capacity-bar-label-line-height, var(--quantic-internal-capacity-bar-label-line-height));
1110
1128
  white-space: nowrap;
1111
1129
  }
1112
1130
 
1113
1131
  .bar {
1114
1132
  display: flex;
1115
1133
  flex-wrap: nowrap;
1116
- gap: var(--quantic-component-capacity-bar-gap, 3px);
1134
+ gap: var(--quantic-component-capacity-bar-gap, var(--quantic-internal-capacity-bar-gap, 3px));
1117
1135
  }
1118
1136
 
1119
1137
  .size--xs {
1120
- --quantic-component-capacity-bar-gap: 2px;
1121
- --quantic-component-capacity-bar-segment-radius: 2px;
1122
- --quantic-component-capacity-bar-segment-width: 3px;
1123
- --quantic-component-capacity-bar-segment-height: var(--quantic-spacing-5);
1124
- --quantic-component-capacity-bar-label-font-size: var(
1138
+ --quantic-internal-capacity-bar-gap: 2px;
1139
+ --quantic-internal-capacity-bar-segment-radius: 2px;
1140
+ --quantic-internal-capacity-bar-segment-width: 3px;
1141
+ --quantic-internal-capacity-bar-segment-height: var(--quantic-spacing-5);
1142
+ --quantic-internal-capacity-bar-label-font-size: var(
1125
1143
  --quantic-font-size-body-xs
1126
1144
  );
1127
- --quantic-component-capacity-bar-label-line-height: var(
1145
+ --quantic-internal-capacity-bar-label-line-height: var(
1128
1146
  --quantic-line-height-body-xs
1129
1147
  );
1130
1148
  }
1131
1149
 
1132
1150
  .size--sm {
1133
- --quantic-component-capacity-bar-gap: 2px;
1134
- --quantic-component-capacity-bar-segment-radius: 2px;
1135
- --quantic-component-capacity-bar-segment-width: var(--quantic-spacing-1);
1136
- --quantic-component-capacity-bar-segment-height: var(--quantic-spacing-6);
1137
- --quantic-component-capacity-bar-label-font-size: var(
1151
+ --quantic-internal-capacity-bar-gap: 2px;
1152
+ --quantic-internal-capacity-bar-segment-radius: 2px;
1153
+ --quantic-internal-capacity-bar-segment-width: var(--quantic-spacing-1);
1154
+ --quantic-internal-capacity-bar-segment-height: var(--quantic-spacing-6);
1155
+ --quantic-internal-capacity-bar-label-font-size: var(
1138
1156
  --quantic-font-size-body-xs
1139
1157
  );
1140
- --quantic-component-capacity-bar-label-line-height: var(
1158
+ --quantic-internal-capacity-bar-label-line-height: var(
1141
1159
  --quantic-line-height-body-xs
1142
1160
  );
1143
1161
  }
1144
1162
 
1145
1163
  .size--md {
1146
- --quantic-component-capacity-bar-gap: 2px;
1147
- --quantic-component-capacity-bar-segment-radius: 3px;
1148
- --quantic-component-capacity-bar-segment-width: var(
1164
+ --quantic-internal-capacity-bar-gap: 2px;
1165
+ --quantic-internal-capacity-bar-segment-radius: 3px;
1166
+ --quantic-internal-capacity-bar-segment-width: var(
1149
1167
  --quantic-spacing-1-5
1150
1168
  );
1151
- --quantic-component-capacity-bar-segment-height: var(--quantic-spacing-8);
1152
- --quantic-component-capacity-bar-label-font-size: var(
1169
+ --quantic-internal-capacity-bar-segment-height: var(--quantic-spacing-8);
1170
+ --quantic-internal-capacity-bar-label-font-size: var(
1153
1171
  --quantic-font-size-body-sm
1154
1172
  );
1155
- --quantic-component-capacity-bar-label-line-height: var(
1173
+ --quantic-internal-capacity-bar-label-line-height: var(
1156
1174
  --quantic-line-height-body-sm
1157
1175
  );
1158
1176
  }
1159
1177
 
1160
1178
  .size--lg {
1161
- --quantic-component-capacity-bar-gap: 3px;
1162
- --quantic-component-capacity-bar-segment-radius: 4px;
1163
- --quantic-component-capacity-bar-segment-width: var(--quantic-spacing-2);
1164
- --quantic-component-capacity-bar-segment-height: var(
1179
+ --quantic-internal-capacity-bar-gap: 3px;
1180
+ --quantic-internal-capacity-bar-segment-radius: 4px;
1181
+ --quantic-internal-capacity-bar-segment-width: var(--quantic-spacing-2);
1182
+ --quantic-internal-capacity-bar-segment-height: var(
1165
1183
  --quantic-spacing-12
1166
1184
  );
1167
- --quantic-component-capacity-bar-label-font-size: var(
1185
+ --quantic-internal-capacity-bar-label-font-size: var(
1168
1186
  --quantic-font-size-body-md
1169
1187
  );
1170
- --quantic-component-capacity-bar-label-line-height: var(
1188
+ --quantic-internal-capacity-bar-label-line-height: var(
1171
1189
  --quantic-line-height-body-md
1172
1190
  );
1173
1191
  }
1174
1192
 
1175
1193
  .segment {
1176
- width: var(--quantic-component-capacity-bar-segment-width, 6px);
1177
- height: var(--quantic-component-capacity-bar-segment-height, 6px);
1178
- border-radius: var(--quantic-component-capacity-bar-segment-radius, 4px);
1194
+ width: var(--quantic-component-capacity-bar-segment-width, var(--quantic-internal-capacity-bar-segment-width, 6px));
1195
+ height: var(--quantic-component-capacity-bar-segment-height, var(--quantic-internal-capacity-bar-segment-height, 6px));
1196
+ border-radius: var(--quantic-component-capacity-bar-segment-radius, var(--quantic-internal-capacity-bar-segment-radius, 4px));
1179
1197
  }
1180
1198
 
1181
1199
  .segment--empty {
@@ -1190,7 +1208,25 @@ const{I:ut}=de,ht=e=>e,pt=()=>document.createComment(""),gt=(e,t,i)=>{const n=e.
1190
1208
  }
1191
1209
 
1192
1210
  ${l(ct(e=>`--quantic-component-capacity-bar-color: var(--quantic-utility-${e}-500);`))}
1193
- `,t([fe({type:"number",default:"0",description:"Total number of capacity segments (max 100)."})],e.CapacityBar.prototype,"total",void 0),t([fe({type:"number",default:"0",description:"Number of used/filled segments. Clamped to [0, total]."})],e.CapacityBar.prototype,"used",void 0),t([fe({type:"CapacityBarSize",options:Object.values(Yi),default:Yi.Small,description:"Controls segment height and label font size."})],e.CapacityBar.prototype,"size",void 0),t([fe({type:"CapacityBarColor",options:Object.values(en),default:en.Brand,description:"Color of filled segments."})],e.CapacityBar.prototype,"color",void 0),t([fe({type:"string",description:"Optional visible text label rendered next to the bar."})],e.CapacityBar.prototype,"label",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the meter element; falls back to the label prop."})],e.CapacityBar.prototype,"ariaLabel",void 0),e.CapacityBar=t([Se("quantic-capacity-bar")],e.CapacityBar);
1211
+ `,t([fe({type:"number",default:"0",description:"Total number of capacity segments (max 100)."})],e.CapacityBar.prototype,"total",void 0),t([fe({type:"number",default:"0",description:"Number of used/filled segments. Clamped to [0, total]."})],e.CapacityBar.prototype,"used",void 0),t([fe({type:"CapacityBarSize",options:Object.values(Yi),default:Yi.Small,description:"Controls segment height and label font size."})],e.CapacityBar.prototype,"size",void 0),t([fe({type:"CapacityBarColor",options:Object.values(en),default:en.Brand,description:"Color of filled segments."})],e.CapacityBar.prototype,"color",void 0),t([fe({type:"string",description:"Optional visible text label rendered next to the bar."})],e.CapacityBar.prototype,"label",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the meter element; falls back to the label prop."})],e.CapacityBar.prototype,"ariaLabel",void 0),e.CapacityBar=t([Se("quantic-capacity-bar")],e.CapacityBar),e.ActionGroup=class extends qe{constructor(){super(...arguments),this.ariaLabel=null}render(){return W`
1212
+ <div class="group" role="group" aria-label=${this.ariaLabel??"Actions"}>
1213
+ <slot></slot>
1214
+ </div>
1215
+ `}},e.ActionGroup.meta={tag:"quantic-action-group",description:"A row of related actions sharing one accessible name and a consistent gap. Takes quantic-button, and quantic-dropdown-menu or quantic-popover when the trigger is a button. Wraps when the row runs out of width. Gap: --quantic-component-action-group-gap. Use quantic-button-bar when the buttons should read as one joined control.",category:"action",slots:{"":{description:"quantic-button elements, or a quantic-dropdown-menu or quantic-popover triggered by one."}},subComponents:["quantic-button","quantic-dropdown-menu","quantic-popover"],relatedTo:["quantic-button","quantic-button-bar","quantic-dialog-actions"]},e.ActionGroup.styles=d`
1216
+ :host {
1217
+ display: block;
1218
+ }
1219
+
1220
+ .group {
1221
+ display: flex;
1222
+ flex-wrap: wrap;
1223
+ align-items: center;
1224
+ gap: var(
1225
+ --quantic-component-action-group-gap,
1226
+ var(--quantic-spacing-3)
1227
+ );
1228
+ }
1229
+ `,t([fe({type:"string",attribute:"aria-label",description:"Accessible name for the group."})],e.ActionGroup.prototype,"ariaLabel",void 0),e.ActionGroup=t([Se("quantic-action-group")],e.ActionGroup);
1194
1230
  /**
1195
1231
  * @license
1196
1232
  * Copyright 2021 Google LLC
@@ -1228,15 +1264,17 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1228
1264
  * @license
1229
1265
  * Copyright 2022 Google LLC
1230
1266
  * SPDX-License-Identifier: BSD-3-Clause
1231
- */function an({context:e,subscribe:t}){return(i,n)=>{"object"==typeof n?n.addInitializer(function(){new nn(this,{context:e,callback:e=>{i.set.call(this,e)},subscribe:t})}):i.constructor.addInitializer(i=>{new nn(i,{context:e,callback:e=>{i[n]=e},subscribe:t})})}}const ln={Small:"sm",Medium:"md",Large:"lg"},dn="button-bar.size";e.ButtonBar=class extends qe{constructor(){super(...arguments),this.size=ln.Medium,this.ariaLabel=null,this.defaultLabel="Button bar"}render(){return W`
1267
+ */function an({context:e,subscribe:t}){return(i,n)=>{"object"==typeof n?n.addInitializer(function(){new nn(this,{context:e,callback:e=>{i.set.call(this,e)},subscribe:t})}):i.constructor.addInitializer(i=>{new nn(i,{context:e,callback:e=>{i[n]=e},subscribe:t})})}}const ln={Small:"sm",Medium:"md",Large:"lg"},dn="button-bar.size",un={ArrowRight:1,ArrowDown:1,ArrowLeft:-1,ArrowUp:-1,Home:"first",End:"last"};e.ButtonBar=class extends qe{constructor(){super(...arguments),this.size=ln.Medium,this.ariaLabel=null,this.hasSynced=!1,this.defaultLabel="Button bar"}connectedCallback(){super.connectedCallback(),this.disabledObserver=new MutationObserver(()=>this.syncFocusStop()),this.disabledObserver.observe(this,{attributeFilter:["disabled"],subtree:!0})}disconnectedCallback(){super.disconnectedCallback(),this.disabledObserver?.disconnect(),this.disabledObserver=void 0}get items(){return[...this.querySelectorAll("quantic-button-bar-item, quantic-button-group-item")].filter(e=>e.parentElement===this&&!e.disabled)}setFocusStop(e,t){e.forEach((e,i)=>{e.tabbable=i===t})}syncFocusStop(){const e=this.items,t=function(e,t){if(!e.length)return null;if(t){const t=e.findIndex(e=>e.tabbable);if(-1!==t)return t}const i=e.findIndex(e=>e.active);return-1===i?0:i}(e,this.hasSynced);null!==t&&(this.hasSynced=!0,this.setFocusStop(e,t))}handleFocusIn(e){const t=this.items,i=t.findIndex(t=>t.contains(e.target));-1!==i&&this.setFocusStop(t,i)}handleKeydown(e){const t=this.items,i=t.findIndex(t=>t.contains(e.target)),n=function(e,t,i){const n=un[e];return void 0===n||i<2||t<0||t>=i?null:"first"===n?0:"last"===n?i-1:(t+n+i)%i}(e.key,i,t.length);null!==n&&(e.preventDefault(),this.setFocusStop(t,n),t[n].focus())}render(){return W`
1232
1268
  <div
1233
1269
  class="container"
1234
1270
  role="toolbar"
1235
- aria-label=${this.ariaLabel||this.defaultLabel}
1271
+ aria-label=${this.ariaLabel??this.defaultLabel}
1272
+ @keydown=${this.handleKeydown}
1273
+ @focusin=${this.handleFocusIn}
1236
1274
  >
1237
- <slot></slot>
1275
+ <slot @slotchange=${()=>this.syncFocusStop()}></slot>
1238
1276
  </div>
1239
- `}},e.ButtonBar.meta={tag:"quantic-button-bar",description:"Toolbar of related buttons joined into one cohesive control, with shared sizing. Use for switching between views or modes, and for a compact run of icon actions. Items carry aria-pressed via active, so a set can behave as exclusive options or as independent toggles. Prefer quantic-button for a standalone action, and quantic-tabs when each segment reveals a panel.",category:"action",slots:{"":{description:"One or more quantic-button-bar-item elements."}},subComponents:["quantic-button-bar-item"],relatedTo:["quantic-button"]},e.ButtonBar.styles=d`
1277
+ `}},e.ButtonBar.meta={tag:"quantic-button-bar",description:"Toolbar of related buttons joined into one cohesive control, with shared sizing. Use for switching between views or modes, and for a compact run of icon actions. Items carry aria-pressed via active, so a set can behave as exclusive options or as independent toggles. Focus follows the toolbar pattern: one tab stop, arrow keys move between items, Home and End jump to the ends. Prefer quantic-button for a standalone action, and quantic-tabs when each segment reveals a panel.",category:"action",slots:{"":{description:"One or more quantic-button-bar-item elements."}},subComponents:["quantic-button-bar-item"],relatedTo:["quantic-button"]},e.ButtonBar.styles=d`
1240
1278
  :host {
1241
1279
  --quantic-internal-button-bar-item-padding-block: var(--quantic-spacing-2);
1242
1280
  --quantic-internal-button-bar-item-padding-inline: var(--quantic-spacing-3);
@@ -1258,11 +1296,11 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1258
1296
  border: 1px solid var(--quantic-component-button-bar-border-color);
1259
1297
  border-radius: var(--quantic-component-button-bar-border-radius);
1260
1298
  }
1261
- `,t([rn({context:dn}),fe({type:"ButtonBarSize",options:Object.values(ln),default:ln.Medium,description:"Size applied to all child items via context."})],e.ButtonBar.prototype,"size",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the group."})],e.ButtonBar.prototype,"ariaLabel",void 0),e.ButtonBar=t([Se("quantic-button-bar")],e.ButtonBar),e.ButtonGroup=class extends e.ButtonBar{constructor(){super(...arguments),this.defaultLabel="Button group"}},e.ButtonGroup.meta={...e.ButtonBar.meta,tag:"quantic-button-group",description:"Deprecated alias of quantic-button-bar. This element never grouped buttons: it joins borders and gives its items a pressed state. Use quantic-button-bar.",deprecated:{use:"quantic-button-bar",reason:"The name describes a row of buttons, which this is not. Use quantic-action-group for that."},slots:{"":{description:"One or more quantic-button-group-item elements."}},subComponents:["quantic-button-group-item"]},e.ButtonGroup=t([Se("quantic-button-group")],e.ButtonGroup),e.ButtonBarItem=class extends qe{constructor(){super(...arguments),this.disabled=!1,this.active=!1}render(){const e=Ne({main:!0,[`size--${this.size}`]:!!this.size,"is-active":this.active});return W`
1299
+ `,t([rn({context:dn}),fe({type:"ButtonBarSize",options:Object.values(ln),default:ln.Medium,description:"Size applied to all child items via context."})],e.ButtonBar.prototype,"size",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the group."})],e.ButtonBar.prototype,"ariaLabel",void 0),e.ButtonBar=t([Se("quantic-button-bar")],e.ButtonBar),e.ButtonGroup=class extends e.ButtonBar{constructor(){super(...arguments),this.defaultLabel="Button group"}},e.ButtonGroup.meta={...e.ButtonBar.meta,tag:"quantic-button-group",description:"Deprecated alias of quantic-button-bar. Use quantic-button-bar.",deprecated:{use:"quantic-button-bar",reason:"The name describes a row of buttons, which this is not. Use quantic-action-group for that."},slots:{"":{description:"One or more quantic-button-group-item elements."}},subComponents:["quantic-button-group-item"]},e.ButtonGroup=t([Se("quantic-button-group")],e.ButtonGroup),e.ButtonBarItem=class extends qe{constructor(){super(...arguments),this.tabbable=!0,this.disabled=!1,this.active=!1}focus(e){this.innerButton?.focus(e)}render(){const e=Ne({main:!0,[`size--${this.size}`]:!!this.size,"is-active":this.active});return W`
1262
1300
  <button
1263
1301
  type="button"
1264
1302
  class=${e}
1265
- tabindex=${this.disabled?-1:0}
1303
+ tabindex=${this.disabled||!this.tabbable?-1:0}
1266
1304
  ?disabled=${this.disabled}
1267
1305
  aria-pressed=${this.active?"true":"false"}
1268
1306
  >
@@ -1390,7 +1428,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1390
1428
  display: flex;
1391
1429
  align-items: center;
1392
1430
  }
1393
- `,t([an({context:dn,subscribe:!0})],e.ButtonBarItem.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Prevents interaction and reduces opacity.",reflect:!0})],e.ButtonBarItem.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Marks this item as the currently selected/active option.",reflect:!0})],e.ButtonBarItem.prototype,"active",void 0),e.ButtonBarItem=t([Se("quantic-button-bar-item")],e.ButtonBarItem),e.ButtonGroupItem=class extends e.ButtonBarItem{},e.ButtonGroupItem.meta={...e.ButtonBarItem.meta,tag:"quantic-button-group-item",description:"Deprecated alias of quantic-button-bar-item. Use quantic-button-bar-item.",deprecated:{use:"quantic-button-bar-item"},relatedTo:["quantic-button-group"]},e.ButtonGroupItem=t([Se("quantic-button-group-item")],e.ButtonGroupItem);const un=ln;var hn,pn,gn,vn;e.GridDensity=void 0,(hn=e.GridDensity||(e.GridDensity={})).Dense="dense",hn.Compact="compact",hn.Comfortable="comfortable",hn.Sparse="sparse",hn.Custom="custom",e.CardVariant=void 0,(pn=e.CardVariant||(e.CardVariant={})).Solid="solid",pn.Outline="outline",e.CardSize=void 0,(gn=e.CardSize||(e.CardSize={})).ExtraSmall="xs",gn.Small="sm",gn.Medium="md",gn.Large="lg",e.CardTitleVariant=void 0,(vn=e.CardTitleVariant||(e.CardTitleVariant={})).Primary="primary",vn.Secondary="secondary";const wn=e.GridDensity;e.Card=class extends(ze(qe,["header","footer","action-icon"])){constructor(){super(...arguments),this.as="div",this.variant=e.CardVariant.Outline,this.size=e.CardSize.Medium,this.type="button",this.disabled=!1}render(){const e=Ne({main:!0,[`variant--${this.variant}`]:!0,[`size--${this.size}`]:!0,"is-interactive":"button"===this.as||"a"===this.as,"is-disabled":this.disabled}),t=Re`
1431
+ `,t([an({context:dn,subscribe:!0})],e.ButtonBarItem.prototype,"size",void 0),t([ke()],e.ButtonBarItem.prototype,"tabbable",void 0),t([xe("button")],e.ButtonBarItem.prototype,"innerButton",void 0),t([fe({type:"boolean",default:"false",description:"Prevents interaction and reduces opacity.",reflect:!0})],e.ButtonBarItem.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Marks this item as the currently selected/active option.",reflect:!0})],e.ButtonBarItem.prototype,"active",void 0),e.ButtonBarItem=t([Se("quantic-button-bar-item")],e.ButtonBarItem),e.ButtonGroupItem=class extends e.ButtonBarItem{},e.ButtonGroupItem.meta={...e.ButtonBarItem.meta,tag:"quantic-button-group-item",description:"Deprecated alias of quantic-button-bar-item. Use quantic-button-bar-item.",deprecated:{use:"quantic-button-bar-item"},relatedTo:["quantic-button-group"]},e.ButtonGroupItem=t([Se("quantic-button-group-item")],e.ButtonGroupItem);const hn=ln;var pn,gn,vn,wn;e.GridDensity=void 0,(pn=e.GridDensity||(e.GridDensity={})).Dense="dense",pn.Compact="compact",pn.Comfortable="comfortable",pn.Sparse="sparse",pn.Custom="custom",e.CardVariant=void 0,(gn=e.CardVariant||(e.CardVariant={})).Solid="solid",gn.Outline="outline",e.CardSize=void 0,(vn=e.CardSize||(e.CardSize={})).ExtraSmall="xs",vn.Small="sm",vn.Medium="md",vn.Large="lg",e.CardTitleVariant=void 0,(wn=e.CardTitleVariant||(e.CardTitleVariant={})).Primary="primary",wn.Secondary="secondary";const mn=e.GridDensity;e.Card=class extends(ze(qe,["header","footer","action-icon"])){constructor(){super(...arguments),this.as="div",this.variant=e.CardVariant.Outline,this.size=e.CardSize.Medium,this.type="button",this.disabled=!1}render(){const e=Ne({main:!0,[`variant--${this.variant}`]:!0,[`size--${this.size}`]:!0,"is-interactive":"button"===this.as||"a"===this.as,"is-disabled":this.disabled}),t=Re`
1394
1432
  <slot
1395
1433
  name="header"
1396
1434
  class="header"
@@ -1434,13 +1472,13 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1434
1472
  color: var(--quantic-text-secondary);
1435
1473
  position: relative;
1436
1474
 
1437
- --quantic-component-card-font-size: var(--quantic-font-size-body-md);
1438
- --quantic-component-card-line-height: var(
1475
+ --quantic-internal-card-font-size: var(--quantic-font-size-body-md);
1476
+ --quantic-internal-card-line-height: var(
1439
1477
  --quantic-line-height-body-md
1440
1478
  );
1441
- --quantic-component-card-radius: var(--quantic-radius-md);
1442
- --quantic-component-card-spacing: var(--quantic-spacing-4);
1443
- --quantic-component-card-size-padding: var(--quantic-spacing-6);
1479
+ --quantic-internal-card-radius: var(--quantic-radius-md);
1480
+ --quantic-internal-card-spacing: var(--quantic-spacing-4);
1481
+ --quantic-internal-card-size-padding: var(--quantic-spacing-6);
1444
1482
  }
1445
1483
 
1446
1484
  button.main,
@@ -1461,16 +1499,16 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1461
1499
  .main {
1462
1500
  display: flex;
1463
1501
  flex-direction: column;
1464
- gap: var(--quantic-component-card-spacing);
1502
+ gap: var(--quantic-component-card-spacing, var(--quantic-internal-card-spacing));
1465
1503
  padding: var(
1466
1504
  --quantic-component-card-padding,
1467
- var(--quantic-component-card-size-padding)
1505
+ var(--quantic-component-card-size-padding, var(--quantic-internal-card-size-padding))
1468
1506
  );
1469
- border-radius: var(--quantic-component-card-radius);
1507
+ border-radius: var(--quantic-component-card-radius, var(--quantic-internal-card-radius));
1470
1508
  border: 1px solid var(--quantic-border-primary);
1471
1509
  overflow: hidden;
1472
- font-size: var(--quantic-component-card-font-size);
1473
- line-height: var(--quantic-component-card-line-height);
1510
+ font-size: var(--quantic-component-card-font-size, var(--quantic-internal-card-font-size));
1511
+ line-height: var(--quantic-component-card-line-height, var(--quantic-internal-card-line-height));
1474
1512
  flex: 1 1 auto;
1475
1513
  box-sizing: border-box;
1476
1514
  }
@@ -1491,60 +1529,60 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1491
1529
  }
1492
1530
 
1493
1531
  .size--xs {
1494
- --quantic-component-card-size-padding: var(--quantic-spacing-3);
1495
- --quantic-component-card-spacing: var(--quantic-spacing-1);
1496
- --quantic-component-card-radius: var(--quantic-radius-sm);
1497
- --quantic-component-card-font-size: var(--quantic-font-size-body-xs);
1498
- --quantic-component-card-line-height: var(
1532
+ --quantic-internal-card-size-padding: var(--quantic-spacing-3);
1533
+ --quantic-internal-card-spacing: var(--quantic-spacing-1);
1534
+ --quantic-internal-card-radius: var(--quantic-radius-sm);
1535
+ --quantic-internal-card-font-size: var(--quantic-font-size-body-xs);
1536
+ --quantic-internal-card-line-height: var(
1499
1537
  --quantic-line-height-body-sm
1500
1538
  );
1501
1539
  }
1502
1540
 
1503
1541
  .size--sm {
1504
- --quantic-component-card-size-padding: var(--quantic-spacing-4);
1505
- --quantic-component-card-spacing: var(--quantic-spacing-1-5);
1506
- --quantic-component-card-radius: var(--quantic-radius-sm);
1507
- --quantic-component-card-font-size: var(--quantic-font-size-body-sm);
1508
- --quantic-component-card-line-height: var(
1542
+ --quantic-internal-card-size-padding: var(--quantic-spacing-4);
1543
+ --quantic-internal-card-spacing: var(--quantic-spacing-1-5);
1544
+ --quantic-internal-card-radius: var(--quantic-radius-sm);
1545
+ --quantic-internal-card-font-size: var(--quantic-font-size-body-sm);
1546
+ --quantic-internal-card-line-height: var(
1509
1547
  --quantic-line-height-body-sm
1510
1548
  );
1511
1549
  }
1512
1550
 
1513
1551
  .size--md {
1514
- --quantic-component-card-size-padding: var(--quantic-spacing-5);
1515
- --quantic-component-card-spacing: var(--quantic-spacing-2);
1516
- --quantic-component-card-radius: var(--quantic-radius-md);
1517
- --quantic-component-card-font-size: var(--quantic-font-size-body-md);
1518
- --quantic-component-card-line-height: var(
1552
+ --quantic-internal-card-size-padding: var(--quantic-spacing-5);
1553
+ --quantic-internal-card-spacing: var(--quantic-spacing-2);
1554
+ --quantic-internal-card-radius: var(--quantic-radius-md);
1555
+ --quantic-internal-card-font-size: var(--quantic-font-size-body-md);
1556
+ --quantic-internal-card-line-height: var(
1519
1557
  --quantic-line-height-body-md
1520
1558
  );
1521
1559
  }
1522
1560
 
1523
1561
  .size--lg {
1524
- --quantic-component-card-size-padding: var(--quantic-spacing-6);
1525
- --quantic-component-card-spacing: var(--quantic-spacing-3);
1526
- --quantic-component-card-radius: var(--quantic-radius-lg);
1527
- --quantic-component-card-font-size: var(--quantic-font-size-body-lg);
1528
- --quantic-component-card-line-height: var(
1562
+ --quantic-internal-card-size-padding: var(--quantic-spacing-6);
1563
+ --quantic-internal-card-spacing: var(--quantic-spacing-3);
1564
+ --quantic-internal-card-radius: var(--quantic-radius-lg);
1565
+ --quantic-internal-card-font-size: var(--quantic-font-size-body-lg);
1566
+ --quantic-internal-card-line-height: var(
1529
1567
  --quantic-line-height-body-lg
1530
1568
  );
1531
1569
  }
1532
1570
 
1533
1571
  @container (min-width: 40rem) {
1534
1572
  .size--xs {
1535
- --quantic-component-card-size-padding: var(--quantic-spacing-3);
1573
+ --quantic-internal-card-size-padding: var(--quantic-spacing-3);
1536
1574
  }
1537
1575
 
1538
1576
  .size--sm {
1539
- --quantic-component-card-size-padding: var(--quantic-spacing-4);
1577
+ --quantic-internal-card-size-padding: var(--quantic-spacing-4);
1540
1578
  }
1541
1579
 
1542
1580
  .size--md {
1543
- --quantic-component-card-size-padding: var(--quantic-spacing-6);
1581
+ --quantic-internal-card-size-padding: var(--quantic-spacing-6);
1544
1582
  }
1545
1583
 
1546
1584
  .size--lg {
1547
- --quantic-component-card-size-padding: var(--quantic-spacing-8);
1585
+ --quantic-internal-card-size-padding: var(--quantic-spacing-8);
1548
1586
  }
1549
1587
  }
1550
1588
 
@@ -1555,11 +1593,11 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1555
1593
  }
1556
1594
 
1557
1595
  .header {
1558
- padding-bottom: var(--quantic-component-card-spacing);
1596
+ padding-bottom: var(--quantic-component-card-spacing, var(--quantic-internal-card-spacing));
1559
1597
  }
1560
1598
 
1561
1599
  .footer {
1562
- padding-top: var(--quantic-component-card-spacing);
1600
+ padding-top: var(--quantic-component-card-spacing, var(--quantic-internal-card-spacing));
1563
1601
  margin-top: auto;
1564
1602
  }
1565
1603
 
@@ -1568,7 +1606,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1568
1606
  inset: calc(
1569
1607
  var(
1570
1608
  --quantic-component-card-padding,
1571
- var(--quantic-component-card-size-padding)
1609
+ var(--quantic-component-card-size-padding, var(--quantic-internal-card-size-padding))
1572
1610
  ) / 2
1573
1611
  );
1574
1612
  left: auto;
@@ -1620,7 +1658,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1620
1658
  padding-right: calc(
1621
1659
  var(
1622
1660
  --quantic-component-card-padding,
1623
- var(--quantic-component-card-size-padding)
1661
+ var(--quantic-component-card-size-padding, var(--quantic-internal-card-size-padding))
1624
1662
  ) * 2
1625
1663
  );
1626
1664
  }
@@ -1637,9 +1675,9 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1637
1675
 
1638
1676
  .grid {
1639
1677
  display: grid;
1640
- gap: var(--quantic-component-grid-gap, var(--quantic-spacing-4));
1678
+ gap: var(--quantic-component-grid-gap, var(--quantic-internal-grid-gap, var(--quantic-spacing-4)));
1641
1679
  grid-template-columns: repeat(
1642
- var(--quantic-component-grid-columns, 1),
1680
+ var(--quantic-component-grid-columns, var(--quantic-internal-grid-columns, 1)),
1643
1681
  minmax(0, 1fr)
1644
1682
  );
1645
1683
  align-items: stretch;
@@ -1650,109 +1688,109 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1650
1688
  }
1651
1689
 
1652
1690
  .density--dense {
1653
- --quantic-component-grid-columns: 2;
1654
- --quantic-component-grid-gap: var(--quantic-spacing-2);
1691
+ --quantic-internal-grid-columns: 2;
1692
+ --quantic-internal-grid-gap: var(--quantic-spacing-2);
1655
1693
  }
1656
1694
 
1657
1695
  .density--compact {
1658
- --quantic-component-grid-columns: 1;
1659
- --quantic-component-grid-gap: var(--quantic-spacing-2);
1696
+ --quantic-internal-grid-columns: 1;
1697
+ --quantic-internal-grid-gap: var(--quantic-spacing-2);
1660
1698
  }
1661
1699
 
1662
1700
  .density--comfortable {
1663
- --quantic-component-grid-columns: 1;
1664
- --quantic-component-grid-gap: var(--quantic-spacing-4);
1701
+ --quantic-internal-grid-columns: 1;
1702
+ --quantic-internal-grid-gap: var(--quantic-spacing-4);
1665
1703
  }
1666
1704
 
1667
1705
  .density--sparse {
1668
- --quantic-component-grid-columns: 1;
1669
- --quantic-component-grid-gap: var(--quantic-spacing-4);
1706
+ --quantic-internal-grid-columns: 1;
1707
+ --quantic-internal-grid-gap: var(--quantic-spacing-4);
1670
1708
  }
1671
1709
 
1672
1710
  @container (min-width: ${l(Ye)}) {
1673
1711
  .density--dense {
1674
- --quantic-component-grid-columns: 3;
1675
- --quantic-component-grid-gap: var(--quantic-spacing-3);
1712
+ --quantic-internal-grid-columns: 3;
1713
+ --quantic-internal-grid-gap: var(--quantic-spacing-3);
1676
1714
  }
1677
1715
 
1678
1716
  .density--compact {
1679
- --quantic-component-grid-columns: 2;
1680
- --quantic-component-grid-gap: var(--quantic-spacing-3);
1717
+ --quantic-internal-grid-columns: 2;
1718
+ --quantic-internal-grid-gap: var(--quantic-spacing-3);
1681
1719
  }
1682
1720
  }
1683
1721
 
1684
1722
  @container (min-width: ${l(et)}) {
1685
1723
  .density--dense {
1686
- --quantic-component-grid-columns: 4;
1724
+ --quantic-internal-grid-columns: 4;
1687
1725
  }
1688
1726
 
1689
1727
  .density--compact {
1690
- --quantic-component-grid-columns: 3;
1728
+ --quantic-internal-grid-columns: 3;
1691
1729
  }
1692
1730
 
1693
1731
  .density--comfortable {
1694
- --quantic-component-grid-columns: 2;
1732
+ --quantic-internal-grid-columns: 2;
1695
1733
  }
1696
1734
  }
1697
1735
 
1698
1736
  @container (min-width: ${l(tt)}) {
1699
1737
  .density--dense {
1700
- --quantic-component-grid-columns: 5;
1738
+ --quantic-internal-grid-columns: 5;
1701
1739
  }
1702
1740
 
1703
1741
  .density--compact {
1704
- --quantic-component-grid-columns: 3;
1742
+ --quantic-internal-grid-columns: 3;
1705
1743
  }
1706
1744
 
1707
1745
  .density--sparse {
1708
- --quantic-component-grid-columns: 2;
1746
+ --quantic-internal-grid-columns: 2;
1709
1747
  }
1710
1748
  }
1711
1749
 
1712
1750
  @container (min-width: ${l(it)}) {
1713
1751
  .density--dense {
1714
- --quantic-component-grid-columns: 6;
1752
+ --quantic-internal-grid-columns: 6;
1715
1753
  }
1716
1754
 
1717
1755
  .density--compact {
1718
- --quantic-component-grid-columns: 4;
1756
+ --quantic-internal-grid-columns: 4;
1719
1757
  }
1720
1758
 
1721
1759
  .density--comfortable {
1722
- --quantic-component-grid-columns: 3;
1760
+ --quantic-internal-grid-columns: 3;
1723
1761
  }
1724
1762
 
1725
1763
  .density--sparse {
1726
- --quantic-component-grid-gap: var(--quantic-spacing-5);
1764
+ --quantic-internal-grid-gap: var(--quantic-spacing-5);
1727
1765
  }
1728
1766
  }
1729
1767
 
1730
1768
  @container (min-width: ${l(nt)}) {
1731
1769
  .density--dense {
1732
- --quantic-component-grid-columns: 8;
1770
+ --quantic-internal-grid-columns: 8;
1733
1771
  }
1734
1772
 
1735
1773
  .density--compact {
1736
- --quantic-component-grid-columns: 5;
1774
+ --quantic-internal-grid-columns: 5;
1737
1775
  }
1738
1776
 
1739
1777
  .density--comfortable {
1740
- --quantic-component-grid-columns: 3;
1741
- --quantic-component-grid-gap: var(--quantic-spacing-5);
1778
+ --quantic-internal-grid-columns: 3;
1779
+ --quantic-internal-grid-gap: var(--quantic-spacing-5);
1742
1780
  }
1743
1781
  }
1744
1782
 
1745
1783
  @container (min-width: ${l(ot)}) {
1746
1784
  .density--dense {
1747
- --quantic-component-grid-columns: 10;
1785
+ --quantic-internal-grid-columns: 10;
1748
1786
  }
1749
1787
 
1750
1788
  .density--compact {
1751
- --quantic-component-grid-columns: 6;
1789
+ --quantic-internal-grid-columns: 6;
1752
1790
  }
1753
1791
 
1754
1792
  .density--comfortable {
1755
- --quantic-component-grid-columns: 4;
1793
+ --quantic-internal-grid-columns: 4;
1756
1794
  }
1757
1795
  }
1758
1796
  `,t([fe({type:"GridDensity",options:Object.values(e.GridDensity),default:e.GridDensity.Comfortable,description:'Controls column count and gap at each breakpoint. "dense" maximises columns; "comfortable" balances spacing; "sparse" widens gaps; "custom" defers to CSS custom properties.'})],e.Grid.prototype,"density",void 0),e.Grid=t([Se("quantic-grid")],e.Grid),e.Grid.ensureDefined(),e.CardGroup=class extends qe{constructor(){super(...arguments),this.density=e.GridDensity.Comfortable}render(){return Re`<quantic-grid density=${this.density}>
@@ -1763,14 +1801,8 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1763
1801
  }
1764
1802
 
1765
1803
  quantic-grid {
1766
- --quantic-component-grid-columns: var(
1767
- --quantic-component-card-group-columns,
1768
- var(--quantic-component-grid-columns)
1769
- );
1770
- --quantic-component-grid-gap: var(
1771
- --quantic-component-card-group-gap,
1772
- var(--quantic-component-grid-gap)
1773
- );
1804
+ --quantic-component-grid-columns: var(--quantic-component-card-group-columns);
1805
+ --quantic-component-grid-gap: var(--quantic-component-card-group-gap);
1774
1806
  }
1775
1807
  `,t([fe({type:"GridDensity",options:Object.values(e.GridDensity),default:e.GridDensity.Comfortable,description:"Controls the number of columns and gap at each container breakpoint."})],e.CardGroup.prototype,"density",void 0),e.CardGroup=t([Se("quantic-card-group")],e.CardGroup),e.CardCarousel=class extends qe{constructor(){super(...arguments),this.density=e.GridDensity.Comfortable,this.showNavigation=!0,this.showDots=!0,this.canScrollPrev=!1,this.canScrollNext=!1,this.currentPage=0,this.totalPages=0,this.resizeObserver=null,this.scrollTimeout=null,this.updateScrollState=()=>{if(!this.containerNode)return;const{scrollLeft:e,scrollWidth:t,clientWidth:i}=this.containerNode,n=t-i;this.canScrollPrev=e>1,this.canScrollNext=e<n-1;const{slides:o}=this.getSlideMetrics();o.length>0&&(this.currentPage=o.map((t,i)=>({index:i,distance:Math.abs(t.offsetLeft-e)})).reduce((e,t)=>t.distance<e.distance?t:e).index)},this.calculatePages=()=>{this.totalPages=this.getSlideMetrics().totalPages},this.handleScroll=()=>{this.updateScrollState(),this.scrollTimeout&&window.clearTimeout(this.scrollTimeout),this.scrollTimeout=window.setTimeout(this.updateScrollState,100)},this.handlePrevClick=()=>{const{step:e}=this.getSlideMetrics();this.containerNode?.scrollBy({left:-e,behavior:"smooth"})},this.handleNextClick=()=>{const{step:e}=this.getSlideMetrics();this.containerNode?.scrollBy({left:e,behavior:"smooth"})},this.handleDotClick=e=>{this.currentPage=e;const{slides:t}=this.getSlideMetrics(),i=t[e];i&&this.containerNode.scrollTo({left:i.offsetLeft,behavior:"smooth"})},this.handleSlotChange=()=>{this.calculatePages(),this.updateScrollState()},this.handleKeyDown=e=>{switch(e.key){case"ArrowLeft":e.preventDefault(),this.canScrollPrev&&this.handlePrevClick();break;case"ArrowRight":e.preventDefault(),this.canScrollNext&&this.handleNextClick();break;case"Home":e.preventDefault(),this.totalPages>0&&this.handleDotClick(0);break;case"End":e.preventDefault(),this.totalPages>0&&this.handleDotClick(this.totalPages-1)}}}getSlideMetrics(){const e=this.containerNode?.clientWidth??0,t=(this.slotNode?.assignedElements()??[]).filter(e=>e instanceof HTMLElement);if(!e||0===t.length)return{slides:t,containerWidth:e,step:0,visibleSlides:1,totalPages:0};const i=t[0],n=t[1],o=Math.max(1,n?n.offsetLeft-i.offsetLeft:i.offsetWidth),s=Math.max(1,Math.round(e/o));return{slides:t,containerWidth:e,step:o,visibleSlides:s,totalPages:Math.max(1,t.length-s+1)}}updated(e){e.has("density")&&requestAnimationFrame(()=>{this.calculatePages(),this.updateScrollState()})}firstUpdated(){this.containerNode.addEventListener("scroll",this.handleScroll),this.resizeObserver=new ResizeObserver(()=>{this.calculatePages(),this.updateScrollState()}),this.resizeObserver.observe(this.containerNode),requestAnimationFrame(()=>{this.calculatePages(),this.updateScrollState()})}disconnectedCallback(){super.disconnectedCallback(),this.containerNode?.removeEventListener("scroll",this.handleScroll),this.resizeObserver?.disconnect(),this.scrollTimeout&&window.clearTimeout(this.scrollTimeout)}render(){const e=Ne({"carousel-container":!0,[`density--${this.density}`]:!0});return W`
1776
1808
  <div
@@ -1855,8 +1887,8 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1855
1887
  container-type: inline-size;
1856
1888
  position: relative;
1857
1889
 
1858
- --quantic-component-card-carousel-gap: var(--quantic-spacing-4);
1859
- --quantic-component-card-carousel-slides-to-show: 1;
1890
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-4);
1891
+ --quantic-internal-card-carousel-slides-to-show: 1;
1860
1892
  }
1861
1893
 
1862
1894
  .carousel {
@@ -1866,7 +1898,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1866
1898
 
1867
1899
  .carousel-container {
1868
1900
  display: flex;
1869
- gap: var(--quantic-component-card-carousel-gap);
1901
+ gap: var(--quantic-component-card-carousel-gap, var(--quantic-internal-card-carousel-gap));
1870
1902
  overflow-x: auto;
1871
1903
  overflow-y: clip;
1872
1904
  scroll-snap-type: x mandatory;
@@ -1892,10 +1924,10 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1892
1924
  flex: 0 0
1893
1925
  calc(
1894
1926
  (
1895
- 100% - var(--quantic-component-card-carousel-gap) *
1896
- (var(--quantic-component-card-carousel-slides-to-show) - 1)
1927
+ 100% - var(--quantic-component-card-carousel-gap, var(--quantic-internal-card-carousel-gap)) *
1928
+ (var(--quantic-component-card-carousel-slides-to-show, var(--quantic-internal-card-carousel-slides-to-show)) - 1)
1897
1929
  ) /
1898
- var(--quantic-component-card-carousel-slides-to-show)
1930
+ var(--quantic-component-card-carousel-slides-to-show, var(--quantic-internal-card-carousel-slides-to-show))
1899
1931
  );
1900
1932
  min-width: 0;
1901
1933
  scroll-snap-align: start;
@@ -1903,23 +1935,23 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1903
1935
  }
1904
1936
 
1905
1937
  .density--dense {
1906
- --quantic-component-card-carousel-slides-to-show: 2;
1907
- --quantic-component-card-carousel-gap: var(--quantic-spacing-2);
1938
+ --quantic-internal-card-carousel-slides-to-show: 2;
1939
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-2);
1908
1940
  }
1909
1941
 
1910
1942
  .density--compact {
1911
- --quantic-component-card-carousel-slides-to-show: 1;
1912
- --quantic-component-card-carousel-gap: var(--quantic-spacing-2);
1943
+ --quantic-internal-card-carousel-slides-to-show: 1;
1944
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-2);
1913
1945
  }
1914
1946
 
1915
1947
  .density--comfortable {
1916
- --quantic-component-card-carousel-slides-to-show: 1;
1917
- --quantic-component-card-carousel-gap: var(--quantic-spacing-4);
1948
+ --quantic-internal-card-carousel-slides-to-show: 1;
1949
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-4);
1918
1950
  }
1919
1951
 
1920
1952
  .density--sparse {
1921
- --quantic-component-card-carousel-slides-to-show: 1;
1922
- --quantic-component-card-carousel-gap: var(--quantic-spacing-4);
1953
+ --quantic-internal-card-carousel-slides-to-show: 1;
1954
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-4);
1923
1955
  }
1924
1956
 
1925
1957
  .density--custom {
@@ -1928,88 +1960,88 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
1928
1960
 
1929
1961
  @container (min-width: ${l(Ye)}) {
1930
1962
  .density--dense {
1931
- --quantic-component-card-carousel-slides-to-show: 3;
1932
- --quantic-component-card-carousel-gap: var(--quantic-spacing-3);
1963
+ --quantic-internal-card-carousel-slides-to-show: 3;
1964
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-3);
1933
1965
  }
1934
1966
 
1935
1967
  .density--compact {
1936
- --quantic-component-card-carousel-slides-to-show: 2;
1937
- --quantic-component-card-carousel-gap: var(--quantic-spacing-3);
1968
+ --quantic-internal-card-carousel-slides-to-show: 2;
1969
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-3);
1938
1970
  }
1939
1971
  }
1940
1972
 
1941
1973
  @container (min-width: ${l(et)}) {
1942
1974
  .density--dense {
1943
- --quantic-component-card-carousel-slides-to-show: 4;
1975
+ --quantic-internal-card-carousel-slides-to-show: 4;
1944
1976
  }
1945
1977
 
1946
1978
  .density--compact {
1947
- --quantic-component-card-carousel-slides-to-show: 3;
1979
+ --quantic-internal-card-carousel-slides-to-show: 3;
1948
1980
  }
1949
1981
 
1950
1982
  .density--comfortable {
1951
- --quantic-component-card-carousel-slides-to-show: 2;
1983
+ --quantic-internal-card-carousel-slides-to-show: 2;
1952
1984
  }
1953
1985
  }
1954
1986
 
1955
1987
  @container (min-width: ${l(tt)}) {
1956
1988
  .density--dense {
1957
- --quantic-component-card-carousel-slides-to-show: 5;
1989
+ --quantic-internal-card-carousel-slides-to-show: 5;
1958
1990
  }
1959
1991
 
1960
1992
  .density--compact {
1961
- --quantic-component-card-carousel-slides-to-show: 3;
1993
+ --quantic-internal-card-carousel-slides-to-show: 3;
1962
1994
  }
1963
1995
 
1964
1996
  .density--sparse {
1965
- --quantic-component-card-carousel-slides-to-show: 2;
1997
+ --quantic-internal-card-carousel-slides-to-show: 2;
1966
1998
  }
1967
1999
  }
1968
2000
 
1969
2001
  @container (min-width: ${l(it)}) {
1970
2002
  .density--dense {
1971
- --quantic-component-card-carousel-slides-to-show: 6;
2003
+ --quantic-internal-card-carousel-slides-to-show: 6;
1972
2004
  }
1973
2005
 
1974
2006
  .density--compact {
1975
- --quantic-component-card-carousel-slides-to-show: 4;
2007
+ --quantic-internal-card-carousel-slides-to-show: 4;
1976
2008
  }
1977
2009
 
1978
2010
  .density--comfortable {
1979
- --quantic-component-card-carousel-slides-to-show: 3;
2011
+ --quantic-internal-card-carousel-slides-to-show: 3;
1980
2012
  }
1981
2013
 
1982
2014
  .density--sparse {
1983
- --quantic-component-card-carousel-gap: var(--quantic-spacing-5);
2015
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-5);
1984
2016
  }
1985
2017
  }
1986
2018
 
1987
2019
  @container (min-width: ${l(nt)}) {
1988
2020
  .density--dense {
1989
- --quantic-component-card-carousel-slides-to-show: 8;
2021
+ --quantic-internal-card-carousel-slides-to-show: 8;
1990
2022
  }
1991
2023
 
1992
2024
  .density--compact {
1993
- --quantic-component-card-carousel-slides-to-show: 5;
2025
+ --quantic-internal-card-carousel-slides-to-show: 5;
1994
2026
  }
1995
2027
 
1996
2028
  .density--comfortable {
1997
- --quantic-component-card-carousel-slides-to-show: 3;
1998
- --quantic-component-card-carousel-gap: var(--quantic-spacing-5);
2029
+ --quantic-internal-card-carousel-slides-to-show: 3;
2030
+ --quantic-internal-card-carousel-gap: var(--quantic-spacing-5);
1999
2031
  }
2000
2032
  }
2001
2033
 
2002
2034
  @container (min-width: ${l(ot)}) {
2003
2035
  .density--dense {
2004
- --quantic-component-card-carousel-slides-to-show: 10;
2036
+ --quantic-internal-card-carousel-slides-to-show: 10;
2005
2037
  }
2006
2038
 
2007
2039
  .density--compact {
2008
- --quantic-component-card-carousel-slides-to-show: 6;
2040
+ --quantic-internal-card-carousel-slides-to-show: 6;
2009
2041
  }
2010
2042
 
2011
2043
  .density--comfortable {
2012
- --quantic-component-card-carousel-slides-to-show: 4;
2044
+ --quantic-internal-card-carousel-slides-to-show: 4;
2013
2045
  }
2014
2046
  }
2015
2047
 
@@ -2195,7 +2227,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2195
2227
  [hidden] {
2196
2228
  display: none;
2197
2229
  }
2198
- `,t([fe({type:"CardTitleVariant",options:Object.values(e.CardTitleVariant),default:e.CardTitleVariant.Primary,description:"Visual variant of the title."})],e.CardTitle.prototype,"variant",void 0),e.CardTitle=t([Se("quantic-card-title")],e.CardTitle);const mn={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.CodeInput=class extends(Xi(qe)){constructor(){super(),this.value="",this.rows=4,this.name="",this.placeholder="",this.size=mn.Medium,this.disabled=!1,this.readOnly=!1,this.required=!1,this.invalid=!1,this.lineNumbers=!1,this.stretch=!1,this.tabIndent=!1,this.lineCount=1,this.handleKeydown=e=>{!this.tabIndent||"Tab"!==e.key||this.disabled||this.readOnly||(e.preventDefault(),document.execCommand("insertText",!1,"\t")),this.forwardNative(e)},this.internals=this.attachInternals()}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity(),this.lineCount=Math.max(1,this.value.split("\n").length)),at(this,e,this.value)}handleInput(e){this.value=e.target.value}forwardNative(e){const t={bubbles:!0,cancelable:e.cancelable,composed:!0};e instanceof KeyboardEvent?this.dispatchEvent(new KeyboardEvent(e.type,{...t,key:e.key,code:e.code,location:e.location,repeat:e.repeat,isComposing:e.isComposing,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,metaKey:e.metaKey})):e instanceof FocusEvent?this.dispatchEvent(new FocusEvent(e.type,{...t,relatedTarget:e.relatedTarget})):this.dispatchEvent(new Event(e.type,t))}handleScroll(e){const t=e.target;this.lineNumbersEl&&(this.lineNumbersEl.scrollTop=t.scrollTop)}formResetCallback(){this.value="",this.internals.setFormValue(""),this.lineCount=1}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e),this.lineCount=Math.max(1,e.split("\n").length)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("textarea");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}renderLineNumbers(){const e=Math.max(2,String(this.lineCount).length);return Array.from({length:this.lineCount},(t,i)=>W`<span>${String(i+1).padStart(e,"0")}</span>`)}render(){const e=this.getA11yAttributes({invalid:this.invalid}),t=Ne({main:!0,[`size--${this.size}`]:!0,"has-line-numbers":this.lineNumbers,stretch:this.stretch});return W`
2230
+ `,t([fe({type:"CardTitleVariant",options:Object.values(e.CardTitleVariant),default:e.CardTitleVariant.Primary,description:"Visual variant of the title."})],e.CardTitle.prototype,"variant",void 0),e.CardTitle=t([Se("quantic-card-title")],e.CardTitle);const kn={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.CodeInput=class extends(Xi(qe)){constructor(){super(),this.value="",this.rows=4,this.name="",this.placeholder="",this.size=kn.Medium,this.disabled=!1,this.readOnly=!1,this.required=!1,this.invalid=!1,this.lineNumbers=!1,this.stretch=!1,this.tabIndent=!1,this.lineCount=1,this.handleKeydown=e=>{!this.tabIndent||"Tab"!==e.key||this.disabled||this.readOnly||(e.preventDefault(),document.execCommand("insertText",!1,"\t")),this.forwardNative(e)},this.internals=this.attachInternals()}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity(),this.lineCount=Math.max(1,this.value.split("\n").length)),at(this,e,this.value)}handleInput(e){this.value=e.target.value}forwardNative(e){const t={bubbles:!0,cancelable:e.cancelable,composed:!0};e instanceof KeyboardEvent?this.dispatchEvent(new KeyboardEvent(e.type,{...t,key:e.key,code:e.code,location:e.location,repeat:e.repeat,isComposing:e.isComposing,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,altKey:e.altKey,metaKey:e.metaKey})):e instanceof FocusEvent?this.dispatchEvent(new FocusEvent(e.type,{...t,relatedTarget:e.relatedTarget})):this.dispatchEvent(new Event(e.type,t))}handleScroll(e){const t=e.target;this.lineNumbersEl&&(this.lineNumbersEl.scrollTop=t.scrollTop)}formResetCallback(){this.value="",this.internals.setFormValue(""),this.lineCount=1}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e),this.lineCount=Math.max(1,e.split("\n").length)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("textarea");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}renderLineNumbers(){const e=Math.max(2,String(this.lineCount).length);return Array.from({length:this.lineCount},(t,i)=>W`<span>${String(i+1).padStart(e,"0")}</span>`)}render(){const e=this.getA11yAttributes({invalid:this.invalid}),t=Ne({main:!0,[`size--${this.size}`]:!0,"has-line-numbers":this.lineNumbers,stretch:this.stretch});return W`
2199
2231
  <div class=${t}>
2200
2232
  ${this.lineNumbers?W`<div class="line-numbers" aria-hidden="true">
2201
2233
  ${this.renderLineNumbers()}
@@ -2231,15 +2263,15 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2231
2263
  :host {
2232
2264
  display: inline-block;
2233
2265
  width: 100%;
2234
- --quantic-component-code-input-font-size: var(
2266
+ --quantic-internal-code-input-font-size: var(
2235
2267
  --quantic-font-size-body-md
2236
2268
  );
2237
- --quantic-component-code-input-line-height: var(
2269
+ --quantic-internal-code-input-line-height: var(
2238
2270
  --quantic-line-height-body
2239
2271
  );
2240
- --quantic-component-code-input-padding-block: var(--quantic-spacing-md);
2241
- --quantic-component-code-input-padding-inline: var(--quantic-spacing-3);
2242
- --quantic-component-code-input-line-numbers-width: var(
2272
+ --quantic-internal-code-input-padding-block: var(--quantic-spacing-md);
2273
+ --quantic-internal-code-input-padding-inline: var(--quantic-spacing-3);
2274
+ --quantic-internal-code-input-line-numbers-width: var(
2243
2275
  --quantic-spacing-6
2244
2276
  );
2245
2277
  --quantic-component-code-input-border-width: 1px;
@@ -2307,59 +2339,59 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2307
2339
  }
2308
2340
 
2309
2341
  .main.size--xs {
2310
- --quantic-component-code-input-font-size: var(
2342
+ --quantic-internal-code-input-font-size: var(
2311
2343
  --quantic-font-size-body-xs
2312
2344
  );
2313
- --quantic-component-code-input-line-height: var(
2345
+ --quantic-internal-code-input-line-height: var(
2314
2346
  --quantic-line-height-body-xs
2315
2347
  );
2316
- --quantic-component-code-input-line-numbers-width: var(
2348
+ --quantic-internal-code-input-line-numbers-width: var(
2317
2349
  --quantic-spacing-5
2318
2350
  );
2319
- --quantic-component-code-input-padding-block: var(--quantic-spacing-sm);
2320
- --quantic-component-code-input-padding-inline: var(--quantic-spacing-2);
2351
+ --quantic-internal-code-input-padding-block: var(--quantic-spacing-sm);
2352
+ --quantic-internal-code-input-padding-inline: var(--quantic-spacing-2);
2321
2353
  }
2322
2354
 
2323
2355
  .main.size--sm {
2324
- --quantic-component-code-input-font-size: var(
2356
+ --quantic-internal-code-input-font-size: var(
2325
2357
  --quantic-font-size-body-sm
2326
2358
  );
2327
- --quantic-component-code-input-line-height: var(
2359
+ --quantic-internal-code-input-line-height: var(
2328
2360
  --quantic-line-height-body-sm
2329
2361
  );
2330
- --quantic-component-code-input-line-numbers-width: var(
2362
+ --quantic-internal-code-input-line-numbers-width: var(
2331
2363
  --quantic-spacing-6
2332
2364
  );
2333
- --quantic-component-code-input-padding-block: var(--quantic-spacing-sm);
2334
- --quantic-component-code-input-padding-inline: var(--quantic-spacing-2);
2365
+ --quantic-internal-code-input-padding-block: var(--quantic-spacing-sm);
2366
+ --quantic-internal-code-input-padding-inline: var(--quantic-spacing-2);
2335
2367
  }
2336
2368
 
2337
2369
  .main.size--md {
2338
- --quantic-component-code-input-font-size: var(
2370
+ --quantic-internal-code-input-font-size: var(
2339
2371
  --quantic-font-size-body-md
2340
2372
  );
2341
- --quantic-component-code-input-line-height: var(
2373
+ --quantic-internal-code-input-line-height: var(
2342
2374
  --quantic-line-height-body
2343
2375
  );
2344
- --quantic-component-code-input-line-numbers-width: var(
2376
+ --quantic-internal-code-input-line-numbers-width: var(
2345
2377
  --quantic-spacing-8
2346
2378
  );
2347
- --quantic-component-code-input-padding-block: var(--quantic-spacing-md);
2348
- --quantic-component-code-input-padding-inline: var(--quantic-spacing-3);
2379
+ --quantic-internal-code-input-padding-block: var(--quantic-spacing-md);
2380
+ --quantic-internal-code-input-padding-inline: var(--quantic-spacing-3);
2349
2381
  }
2350
2382
 
2351
2383
  .main.size--lg {
2352
- --quantic-component-code-input-font-size: var(
2384
+ --quantic-internal-code-input-font-size: var(
2353
2385
  --quantic-font-size-body-lg
2354
2386
  );
2355
- --quantic-component-code-input-line-height: var(
2387
+ --quantic-internal-code-input-line-height: var(
2356
2388
  --quantic-line-height-body
2357
2389
  );
2358
- --quantic-component-code-input-line-numbers-width: var(
2390
+ --quantic-internal-code-input-line-numbers-width: var(
2359
2391
  --quantic-spacing-10
2360
2392
  );
2361
- --quantic-component-code-input-padding-block: var(--quantic-spacing-3);
2362
- --quantic-component-code-input-padding-inline: var(--quantic-spacing-4);
2393
+ --quantic-internal-code-input-padding-block: var(--quantic-spacing-3);
2394
+ --quantic-internal-code-input-padding-inline: var(--quantic-spacing-4);
2363
2395
  }
2364
2396
 
2365
2397
  .line-numbers {
@@ -2367,7 +2399,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2367
2399
  top: 0;
2368
2400
  left: 0;
2369
2401
  bottom: 0;
2370
- width: var(--quantic-component-code-input-line-numbers-width, 2.5rem);
2402
+ width: var(--quantic-component-code-input-line-numbers-width, var(--quantic-internal-code-input-line-numbers-width, 2.5rem));
2371
2403
  display: flex;
2372
2404
  flex-direction: column;
2373
2405
  align-items: flex-end;
@@ -2376,8 +2408,8 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2376
2408
  background-color: var(--quantic-bg-secondary);
2377
2409
  color: var(--quantic-color-gray-dark-mode-600);
2378
2410
  font-family: var(--quantic-font-family-mono);
2379
- font-size: var(--quantic-component-code-input-font-size);
2380
- line-height: var(--quantic-component-code-input-line-height);
2411
+ font-size: var(--quantic-component-code-input-font-size, var(--quantic-internal-code-input-font-size));
2412
+ line-height: var(--quantic-component-code-input-line-height, var(--quantic-internal-code-input-line-height));
2381
2413
  user-select: none;
2382
2414
  border-right: 1px solid var(--quantic-color-gray-dark-mode-800);
2383
2415
  }
@@ -2394,11 +2426,11 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2394
2426
  background: transparent;
2395
2427
  outline: none;
2396
2428
  color: var(--quantic-text-primary);
2397
- padding: var(--quantic-component-code-input-padding-block)
2398
- var(--quantic-component-code-input-padding-inline);
2429
+ padding: var(--quantic-component-code-input-padding-block, var(--quantic-internal-code-input-padding-block))
2430
+ var(--quantic-component-code-input-padding-inline, var(--quantic-internal-code-input-padding-inline));
2399
2431
  font-family: var(--quantic-font-family-mono);
2400
- font-size: var(--quantic-component-code-input-font-size);
2401
- line-height: var(--quantic-component-code-input-line-height);
2432
+ font-size: var(--quantic-component-code-input-font-size, var(--quantic-internal-code-input-font-size));
2433
+ line-height: var(--quantic-component-code-input-line-height, var(--quantic-internal-code-input-line-height));
2402
2434
  resize: none;
2403
2435
  overflow-y: auto;
2404
2436
  overflow-x: auto;
@@ -2409,7 +2441,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2409
2441
 
2410
2442
  .has-line-numbers .textarea {
2411
2443
  --padding-left: calc(
2412
- var(--quantic-component-code-input-line-numbers-width) + 2em
2444
+ var(--quantic-component-code-input-line-numbers-width, var(--quantic-internal-code-input-line-numbers-width)) + 2em
2413
2445
  );
2414
2446
  padding: var(--quantic-spacing-md) var(--quantic-spacing-3)
2415
2447
  var(--quantic-spacing-md) var(--padding-left);
@@ -2423,8 +2455,8 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2423
2455
  .textarea:read-only {
2424
2456
  cursor: default;
2425
2457
  }
2426
- `,t([fe({type:"string",default:"''",description:"Current value of the editor."})],e.CodeInput.prototype,"value",void 0),t([fe({type:"number",default:"4",description:"Number of visible text rows in the textarea."})],e.CodeInput.prototype,"rows",void 0),t([fe({type:"string",default:"''",description:"Name submitted with form data."})],e.CodeInput.prototype,"name",void 0),t([fe({type:"string",default:"''",description:"Placeholder text shown when the editor is empty."})],e.CodeInput.prototype,"placeholder",void 0),t([fe({type:"CodeInputSize",options:Object.values(mn),default:mn.Medium,description:"Controls font size and padding."})],e.CodeInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and applies disabled styling."})],e.CodeInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Allows text to be read but not edited."})],e.CodeInput.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.CodeInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling when the field fails validation."})],e.CodeInput.prototype,"invalid",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Shows a line-number gutter on the left side of the editor.",attribute:"line-numbers"})],e.CodeInput.prototype,"lineNumbers",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the editor fill the height of its container. Overrides rows."})],e.CodeInput.prototype,"stretch",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Inserts a tab character when pressing Tab instead of moving focus. Disabled by default to preserve keyboard navigation.",attribute:"tab-indent"})],e.CodeInput.prototype,"tabIndent",void 0),t([xe(".line-numbers")],e.CodeInput.prototype,"lineNumbersEl",void 0),t([ke()],e.CodeInput.prototype,"lineCount",void 0),e.CodeInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-code-input")],e.CodeInput);const kn={Small:"sm",Medium:"md",Large:"lg"},yn={Small:"sm",Medium:"md",Large:"lg"},xn={Default:"default",Inline:"inline"};var Ln,In,fn;e.CheckboxGroup=class extends(Xi(qe)){constructor(){super(...arguments),this.disabled=!1,this.required=!1,this.invalid=!1,this.variant=xn.Default,this.gap=yn.Large}updated(e){super.updated(e),(e.has("disabled")||e.has("required"))&&this.syncCheckboxProperties()}syncCheckboxProperties(){this.querySelectorAll("quantic-checkbox").forEach(e=>{e.disabled=this.disabled,e.required=this.required})}firstUpdated(){this.syncCheckboxProperties()}render(){const e=this.getA11yAttributes({invalid:this.invalid});return W`<div
2427
- class=${Ne({group:!0,"group--inline":this.variant===xn.Inline,[`gap--${this.gap}`]:!0})}
2458
+ `,t([fe({type:"string",default:"''",description:"Current value of the editor."})],e.CodeInput.prototype,"value",void 0),t([fe({type:"number",default:"4",description:"Number of visible text rows in the textarea."})],e.CodeInput.prototype,"rows",void 0),t([fe({type:"string",default:"''",description:"Name submitted with form data."})],e.CodeInput.prototype,"name",void 0),t([fe({type:"string",default:"''",description:"Placeholder text shown when the editor is empty."})],e.CodeInput.prototype,"placeholder",void 0),t([fe({type:"CodeInputSize",options:Object.values(kn),default:kn.Medium,description:"Controls font size and padding."})],e.CodeInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and applies disabled styling."})],e.CodeInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Allows text to be read but not edited."})],e.CodeInput.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.CodeInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling when the field fails validation."})],e.CodeInput.prototype,"invalid",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Shows a line-number gutter on the left side of the editor.",attribute:"line-numbers"})],e.CodeInput.prototype,"lineNumbers",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the editor fill the height of its container. Overrides rows."})],e.CodeInput.prototype,"stretch",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Inserts a tab character when pressing Tab instead of moving focus. Disabled by default to preserve keyboard navigation.",attribute:"tab-indent"})],e.CodeInput.prototype,"tabIndent",void 0),t([xe(".line-numbers")],e.CodeInput.prototype,"lineNumbersEl",void 0),t([ke()],e.CodeInput.prototype,"lineCount",void 0),e.CodeInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-code-input")],e.CodeInput);const yn={Small:"sm",Medium:"md",Large:"lg"},xn={Small:"sm",Medium:"md",Large:"lg"},Ln={Default:"default",Inline:"inline"};var In,fn,Cn;e.CheckboxGroup=class extends(Xi(qe)){constructor(){super(...arguments),this.disabled=!1,this.required=!1,this.invalid=!1,this.variant=Ln.Default,this.gap=xn.Large}updated(e){super.updated(e),(e.has("disabled")||e.has("required"))&&this.syncCheckboxProperties()}syncCheckboxProperties(){this.querySelectorAll("quantic-checkbox").forEach(e=>{e.disabled=this.disabled,e.required=this.required})}firstUpdated(){this.syncCheckboxProperties()}render(){const e=this.getA11yAttributes({invalid:this.invalid});return W`<div
2459
+ class=${Ne({group:!0,"group--inline":this.variant===Ln.Inline,[`gap--${this.gap}`]:!0})}
2428
2460
  role="group"
2429
2461
  aria-label=${e.label}
2430
2462
  aria-description=${e.description}
@@ -2457,7 +2489,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2457
2489
  .gap--lg {
2458
2490
  gap: var(--quantic-spacing-4);
2459
2491
  }
2460
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction. Propagated to all child checkboxes."})],e.CheckboxGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks child checkboxes as required. Propagated to all children."})],e.CheckboxGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling to the group. Set alongside an error message in the parent quantic-field."})],e.CheckboxGroup.prototype,"invalid",void 0),t([fe({type:"CheckboxGroupVariant",options:Object.values(xn),reflect:!0,description:"Layout variant for the group."})],e.CheckboxGroup.prototype,"variant",void 0),t([fe({type:"CheckboxGroupGap",options:Object.values(yn),default:yn.Large,reflect:!0,description:"Spacing between checkboxes."})],e.CheckboxGroup.prototype,"gap",void 0),e.CheckboxGroup=t([Se("quantic-checkbox-group")],e.CheckboxGroup),e.Checkbox=class extends(Xi(qe)){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.indeterminate=!1,this.label="",this.name="",this.size=kn.Medium,this.defaultChecked=!1,this.defaultIndeterminate=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked"),this.defaultIndeterminate=this.hasAttribute("indeterminate")}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){super.updated(e);const t=this.renderRoot.querySelector("input");t&&(t.indeterminate=this.indeterminate,e.has("checked")&&(t.checked=this.checked)),e.has("checked")&&this.internals.setFormValue(this.checked?"on":null)}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked,indeterminate:this.indeterminate},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked,this.indeterminate=this.defaultIndeterminate,this.internals.setFormValue(this.defaultChecked?"on":null),e&&(e.checked=this.defaultChecked,e.indeterminate=this.defaultIndeterminate)}formStateRestoreCallback(e){this.checked="on"===e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}get computedLabel(){return this.ariaLabel||this.label}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({label:this.computedLabel,invalid:this.invalid});return W`
2492
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction. Propagated to all child checkboxes."})],e.CheckboxGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks child checkboxes as required. Propagated to all children."})],e.CheckboxGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling to the group. Set alongside an error message in the parent quantic-field."})],e.CheckboxGroup.prototype,"invalid",void 0),t([fe({type:"CheckboxGroupVariant",options:Object.values(Ln),reflect:!0,description:"Layout variant for the group."})],e.CheckboxGroup.prototype,"variant",void 0),t([fe({type:"CheckboxGroupGap",options:Object.values(xn),default:xn.Large,reflect:!0,description:"Spacing between checkboxes."})],e.CheckboxGroup.prototype,"gap",void 0),e.CheckboxGroup=t([Se("quantic-checkbox-group")],e.CheckboxGroup),e.Checkbox=class extends(Xi(qe)){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.indeterminate=!1,this.label="",this.name="",this.size=yn.Medium,this.defaultChecked=!1,this.defaultIndeterminate=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked"),this.defaultIndeterminate=this.hasAttribute("indeterminate")}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){super.updated(e);const t=this.renderRoot.querySelector("input");t&&(t.indeterminate=this.indeterminate,e.has("checked")&&(t.checked=this.checked)),e.has("checked")&&this.internals.setFormValue(this.checked?"on":null)}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked,indeterminate:this.indeterminate},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked,this.indeterminate=this.defaultIndeterminate,this.internals.setFormValue(this.defaultChecked?"on":null),e&&(e.checked=this.defaultChecked,e.indeterminate=this.defaultIndeterminate)}formStateRestoreCallback(e){this.checked="on"===e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}get computedLabel(){return this.ariaLabel||this.label}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({label:this.computedLabel,invalid:this.invalid});return W`
2461
2493
  <label class=${e}>
2462
2494
  <input
2463
2495
  type="checkbox"
@@ -2640,7 +2672,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2640
2672
  input:disabled + .box .dashmark {
2641
2673
  color: var(--quantic-fg-disabled-subtle);
2642
2674
  }
2643
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the checkbox is checked."})],e.Checkbox.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the checkbox as required for form validation."})],e.Checkbox.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and applies disabled styling."})],e.Checkbox.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling when the field fails validation."})],e.Checkbox.prototype,"invalid",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Shows an indeterminate (partial-selection) state."})],e.Checkbox.prototype,"indeterminate",void 0),t([fe({type:"string",default:"''",description:"Visible label text. Overridden by slotted content."})],e.Checkbox.prototype,"label",void 0),t([fe({type:"string",default:"''",description:"Name submitted with form data."})],e.Checkbox.prototype,"name",void 0),t([fe({type:"CheckboxSize",options:Object.values(kn),default:kn.Medium,description:"Controls the size of the checkbox box and label text."})],e.Checkbox.prototype,"size",void 0),e.Checkbox=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean, indeterminate: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-checkbox")],e.Checkbox),e.ClusterAxis=void 0,(Ln=e.ClusterAxis||(e.ClusterAxis={})).Horizontal="horizontal",Ln.Vertical="vertical",e.ClusterGap=void 0,(In=e.ClusterGap||(e.ClusterGap={})).None="none",In.ExtraSmall="xs",In.Small="sm",In.Medium="md",In.Large="lg",In.ExtraLarge="xl",e.ClusterAlign=void 0,(fn=e.ClusterAlign||(e.ClusterAlign={})).Start="start",fn.Center="center",fn.End="end",fn.Stretch="stretch",e.Cluster=class extends qe{constructor(){super(...arguments),this.axis=e.ClusterAxis.Horizontal,this.gap=e.ClusterGap.Medium,this.align=e.ClusterAlign.Start,this.wrap=!0}render(){const t=Ne({cluster:!0,[`axis--${this.axis}`]:!0,[`gap--${this.gap}`]:!0,[`align--${this.align}`]:!0,nowrap:!this.wrap&&this.axis===e.ClusterAxis.Horizontal});return Re`
2675
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the checkbox is checked."})],e.Checkbox.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the checkbox as required for form validation."})],e.Checkbox.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and applies disabled styling."})],e.Checkbox.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling when the field fails validation."})],e.Checkbox.prototype,"invalid",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Shows an indeterminate (partial-selection) state."})],e.Checkbox.prototype,"indeterminate",void 0),t([fe({type:"string",default:"''",description:"Visible label text. Overridden by slotted content."})],e.Checkbox.prototype,"label",void 0),t([fe({type:"string",default:"''",description:"Name submitted with form data."})],e.Checkbox.prototype,"name",void 0),t([fe({type:"CheckboxSize",options:Object.values(yn),default:yn.Medium,description:"Controls the size of the checkbox box and label text."})],e.Checkbox.prototype,"size",void 0),e.Checkbox=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean, indeterminate: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-checkbox")],e.Checkbox),e.ClusterAxis=void 0,(In=e.ClusterAxis||(e.ClusterAxis={})).Horizontal="horizontal",In.Vertical="vertical",e.ClusterGap=void 0,(fn=e.ClusterGap||(e.ClusterGap={})).None="none",fn.ExtraSmall="xs",fn.Small="sm",fn.Medium="md",fn.Large="lg",fn.ExtraLarge="xl",e.ClusterAlign=void 0,(Cn=e.ClusterAlign||(e.ClusterAlign={})).Start="start",Cn.Center="center",Cn.End="end",Cn.Stretch="stretch",e.Cluster=class extends qe{constructor(){super(...arguments),this.axis=e.ClusterAxis.Horizontal,this.gap=e.ClusterGap.Medium,this.align=e.ClusterAlign.Start,this.wrap=!0}render(){const t=Ne({cluster:!0,[`axis--${this.axis}`]:!0,[`gap--${this.gap}`]:!0,[`align--${this.align}`]:!0,nowrap:!this.wrap&&this.axis===e.ClusterAxis.Horizontal});return Re`
2644
2676
  <div class=${t}>
2645
2677
  <slot></slot>
2646
2678
  </div>
@@ -2702,7 +2734,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2702
2734
  .align--stretch {
2703
2735
  align-items: stretch;
2704
2736
  }
2705
- `,t([fe({type:"ClusterAxis",options:Object.values(e.ClusterAxis),default:e.ClusterAxis.Horizontal,description:"Layout direction."})],e.Cluster.prototype,"axis",void 0),t([fe({type:"ClusterGap",options:Object.values(e.ClusterGap),default:e.ClusterGap.Medium,description:"Spacing between items."})],e.Cluster.prototype,"gap",void 0),t([fe({type:"ClusterAlign",options:Object.values(e.ClusterAlign),default:e.ClusterAlign.Start,description:"Cross-axis alignment."})],e.Cluster.prototype,"align",void 0),t([fe({type:"boolean",default:"true",description:"Whether items wrap to the next line (horizontal axis only)."})],e.Cluster.prototype,"wrap",void 0),e.Cluster=t([Se("quantic-cluster")],e.Cluster);const Cn={Small:"sm",Medium:"md",Large:"lg",XLarge:"xl"},bn={None:"none",Subtle:"subtle",Opaque:"opaque"},Mn={Dialog:"dialog",AlertDialog:"alertdialog"};e.DialogBackdropElement=class extends qe{constructor(){super(...arguments),this.visible=!1,this.variant=bn.Opaque}render(){return W`<div class="backdrop backdrop--${this.variant}"></div>`}},e.DialogBackdropElement.meta={tag:"quantic-dialog-backdrop",description:"Semi-transparent overlay rendered behind quantic-dialog. Internal sub-component — do not use directly.",category:"feedback",relatedTo:["quantic-dialog"]},e.DialogBackdropElement.styles=d`
2737
+ `,t([fe({type:"ClusterAxis",options:Object.values(e.ClusterAxis),default:e.ClusterAxis.Horizontal,description:"Layout direction."})],e.Cluster.prototype,"axis",void 0),t([fe({type:"ClusterGap",options:Object.values(e.ClusterGap),default:e.ClusterGap.Medium,description:"Spacing between items."})],e.Cluster.prototype,"gap",void 0),t([fe({type:"ClusterAlign",options:Object.values(e.ClusterAlign),default:e.ClusterAlign.Start,description:"Cross-axis alignment."})],e.Cluster.prototype,"align",void 0),t([fe({type:"boolean",default:"true",description:"Whether items wrap to the next line (horizontal axis only)."})],e.Cluster.prototype,"wrap",void 0),e.Cluster=t([Se("quantic-cluster")],e.Cluster);const bn={Small:"sm",Medium:"md",Large:"lg",XLarge:"xl"},Mn={None:"none",Subtle:"subtle",Opaque:"opaque"},qn={Dialog:"dialog",AlertDialog:"alertdialog"};e.DialogBackdropElement=class extends qe{constructor(){super(...arguments),this.visible=!1,this.variant=Mn.Opaque}render(){return W`<div class="backdrop backdrop--${this.variant}"></div>`}},e.DialogBackdropElement.meta={tag:"quantic-dialog-backdrop",description:"Semi-transparent overlay rendered behind quantic-dialog. Internal sub-component — do not use directly.",category:"feedback",relatedTo:["quantic-dialog"]},e.DialogBackdropElement.styles=d`
2706
2738
  :host {
2707
2739
  position: fixed;
2708
2740
  inset: 0;
@@ -2740,7 +2772,7 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2740
2772
  background-color: transparent;
2741
2773
  pointer-events: none;
2742
2774
  }
2743
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the backdrop is visible."})],e.DialogBackdropElement.prototype,"visible",void 0),t([fe({type:"DialogBackdrop",options:Object.values(bn),default:bn.Opaque,description:"Visual style of the backdrop overlay."})],e.DialogBackdropElement.prototype,"variant",void 0),e.DialogBackdropElement=t([Se("quantic-dialog-backdrop")],e.DialogBackdropElement),e.DialogTitle=class extends(ze(qe,["pretitle","subtitle"])){constructor(){super(...arguments),this.level="2"}render(){return W`
2775
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the backdrop is visible."})],e.DialogBackdropElement.prototype,"visible",void 0),t([fe({type:"DialogBackdrop",options:Object.values(Mn),default:Mn.Opaque,description:"Visual style of the backdrop overlay."})],e.DialogBackdropElement.prototype,"variant",void 0),e.DialogBackdropElement=t([Se("quantic-dialog-backdrop")],e.DialogBackdropElement),e.DialogTitle=class extends(ze(qe,["pretitle","subtitle"])){constructor(){super(...arguments),this.level="2"}render(){return W`
2744
2776
  <div class="main">
2745
2777
  <hgroup>
2746
2778
  <slot name="pretitle" class="pretitle"></slot>
@@ -2792,32 +2824,30 @@ function rn({context:e}){return(t,i)=>{const n=new WeakMap;if("object"==typeof i
2792
2824
  [hidden] {
2793
2825
  display: none;
2794
2826
  }
2795
- `,t([fe({type:'"1" | "2" | "3" | "4" | "5" | "6"',default:'"2"',description:"Heading level for the title element."})],e.DialogTitle.prototype,"level",void 0),e.DialogTitle=t([Se("quantic-dialog-title")],e.DialogTitle),e.DialogActions=class extends qe{render(){return Re`
2796
- <div class="main">
2827
+ `,t([fe({type:'"1" | "2" | "3" | "4" | "5" | "6"',default:'"2"',description:"Heading level for the title element."})],e.DialogTitle.prototype,"level",void 0),e.DialogTitle=t([Se("quantic-dialog-title")],e.DialogTitle),e.ActionGroup.ensureDefined(),e.DialogActions=class extends qe{render(){return Re`
2828
+ <quantic-action-group aria-label="">
2797
2829
  <slot></slot>
2798
- </div>
2799
- `}},e.DialogActions.meta={tag:"quantic-dialog-actions",description:"Footer actions bar sub-component for quantic-dialog. Lays out action buttons (confirm/cancel) flush to the right.",category:"feedback",slots:{"":{description:"Action buttons, typically quantic-button elements."}},relatedTo:["quantic-dialog","quantic-button"]},e.DialogActions.styles=d`
2830
+ </quantic-action-group>
2831
+ `}},e.DialogActions.meta={tag:"quantic-dialog-actions",description:"Footer actions bar for quantic-dialog. Lays action buttons out as a quantic-action-group, flush to the right.",category:"feedback",slots:{"":{description:"Action buttons, typically quantic-button elements."}},subComponents:["quantic-action-group"],relatedTo:["quantic-dialog","quantic-button","quantic-action-group"]},e.DialogActions.styles=d`
2800
2832
  :host {
2801
2833
  display: block;
2802
2834
  }
2803
2835
 
2804
- .main {
2805
- display: flex;
2806
- align-items: center;
2807
- justify-content: flex-end;
2808
- gap: var(--quantic-spacing-3);
2836
+ quantic-action-group {
2837
+ width: fit-content;
2838
+ margin-inline-start: auto;
2809
2839
  }
2810
2840
  `,e.DialogActions=t([Se("quantic-dialog-actions")],e.DialogActions);
2811
2841
  /*!
2812
2842
  * tabbable 6.5.0
2813
2843
  * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
2814
2844
  */
2815
- var qn=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","area[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],Sn=qn.join(","),Bn="undefined"==typeof Element,An=Bn?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Pn=!Bn&&Element.prototype.getRootNode?function(e){var t;return null==e||null===(t=e.getRootNode)||void 0===t?void 0:t.call(e)}:function(e){return null==e?void 0:e.ownerDocument},jn=function(e,t){var i;void 0===t&&(t=!0);var n=null==e||null===(i=e.getAttribute)||void 0===i?void 0:i.call(e,"inert");return""===n||"true"===n||t&&e&&("function"==typeof e.closest?e.closest("[inert]"):jn(e.parentNode))},zn=function(e,t,i){if(jn(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Sn));return t&&An.call(e,Sn)&&n.unshift(e),n=n.filter(i)},Hn=function(e,t,i){for(var n=[],o=Array.from(e);o.length;){var s=o.shift();if(!jn(s,!1))if("SLOT"===s.tagName){var c=s.assignedElements(),r=c.length?c:s.children,a=Hn(r,!0,i);i.flatten?n.push.apply(n,a):n.push({scopeParent:s,candidates:a})}else{An.call(s,Sn)&&i.filter(s)&&(t||!e.includes(s))&&n.push(s);var l=s.shadowRoot||"function"==typeof i.getShadowRoot&&i.getShadowRoot(s),d=!jn(l,!1)&&(!i.shadowRootFilter||i.shadowRootFilter(s));if(l&&d){var u=Hn(!0===l?s.children:l.children,!0,i);i.flatten?n.push.apply(n,u):n.push({scopeParent:s,candidates:u})}else o.unshift.apply(o,s.children)}}return n},Tn=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},Dn=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||function(e){var t,i=null==e||null===(t=e.getAttribute)||void 0===t?void 0:t.call(e,"contenteditable");return""===i||"true"===i}(e))&&!Tn(e)?0:e.tabIndex},Vn=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},Fn=function(e){return"INPUT"===e.tagName},Rn=function(e){return function(e){return Fn(e)&&"radio"===e.type}(e)&&!function(e){if(!e.name)return!0;var t,i=e.form||Pn(e),n=function(e){return i.querySelectorAll('input[type="radio"][name="'+e+'"]')};if("undefined"!=typeof window&&void 0!==window.CSS&&"function"==typeof window.CSS.escape)t=n(window.CSS.escape(e.name));else try{t=n(e.name)}catch(e){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",e.message),!1}var o=function(e,t){for(var i=0;i<e.length;i++)if(e[i].checked&&e[i].form===t)return e[i]}(t,e.form);return!o||o===e}(e)},On=function(e){var t=e.getBoundingClientRect(),i=t.width,n=t.height;return 0===i&&0===n},$n=function(e,t){var i=t.displayCheck,n=t.getShadowRoot;if("full-native"===i&&"checkVisibility"in e)return!e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});var o=getComputedStyle(e).visibility;if("hidden"===o||"collapse"===o)return!0;var s=An.call(e,"details>summary:first-of-type")?e.parentElement:e;if(An.call(s,"details:not([open]) *"))return!0;if(i&&"full"!==i&&"full-native"!==i&&"legacy-full"!==i){if("non-zero-area"===i)return On(e)}else{if("function"==typeof n){for(var c=e;e;){var r=e.parentElement,a=Pn(e);if(r&&!r.shadowRoot&&!0===n(r))return On(e);e=e.assignedSlot?e.assignedSlot:r||a===e.ownerDocument?r:a.host}e=c}if(function(e){var t,i,n,o,s=e&&Pn(e),c=null===(t=s)||void 0===t?void 0:t.host,r=!1;if(s&&s!==e)for(r=!!(null!==(i=c)&&void 0!==i&&null!==(n=i.ownerDocument)&&void 0!==n&&n.contains(c)||null!=e&&null!==(o=e.ownerDocument)&&void 0!==o&&o.contains(e));!r&&c;){var a,l,d;r=!(null===(l=c=null===(a=s=Pn(c))||void 0===a?void 0:a.host)||void 0===l||null===(d=l.ownerDocument)||void 0===d||!d.contains(c))}return r}(e))return!e.getClientRects().length;if("legacy-full"!==i)return!0}return!1},_n=function(e,t){return!(t.disabled||function(e){return Fn(e)&&"hidden"===e.type}(t)||$n(t,e)||function(e){return"DETAILS"===e.tagName&&Array.prototype.slice.apply(e.children).some(function(e){return"SUMMARY"===e.tagName})}(t)||function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(var i=0;i<t.children.length;i++){var n=t.children.item(i);if("LEGEND"===n.tagName)return!!An.call(t,"fieldset[disabled] *")||!n.contains(e)}return!0}t=t.parentElement}return!1}(t))},En=function(e,t){return!(Rn(t)||Dn(t)<0||!_n(e,t))},Un=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},Gn=function(e){var t=[],i=[];return e.forEach(function(e,n){var o=!!e.scopeParent,s=o?e.scopeParent:e,c=function(e,t){var i=Dn(e);return i<0&&t&&!Tn(e)?0:i}(s,o),r=o?Gn(e.candidates):s;0===c?o?t.push.apply(t,r):t.push(s):i.push({documentOrder:n,tabIndex:c,item:e,isScope:o,content:r})}),i.sort(Vn).reduce(function(e,t){return t.isScope?e.push.apply(e,t.content):e.push(t.content),e},[]).concat(t)},Zn=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==An.call(e,Sn)&&En(t,e)},Nn=qn.concat("iframe:not([inert]):not([inert] *)").join(","),Wn=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==An.call(e,Nn)&&_n(t,e)};
2845
+ var Sn=["input:not([inert]):not([inert] *)","select:not([inert]):not([inert] *)","textarea:not([inert]):not([inert] *)","a[href]:not([inert]):not([inert] *)","area[href]:not([inert]):not([inert] *)","button:not([inert]):not([inert] *)","[tabindex]:not(slot):not([inert]):not([inert] *)","audio[controls]:not([inert]):not([inert] *)","video[controls]:not([inert]):not([inert] *)",'[contenteditable]:not([contenteditable="false"]):not([inert]):not([inert] *)',"details>summary:first-of-type:not([inert]):not([inert] *)","details:not([inert]):not([inert] *)"],Bn=Sn.join(","),An="undefined"==typeof Element,Pn=An?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,jn=!An&&Element.prototype.getRootNode?function(e){var t;return null==e||null===(t=e.getRootNode)||void 0===t?void 0:t.call(e)}:function(e){return null==e?void 0:e.ownerDocument},zn=function(e,t){var i;void 0===t&&(t=!0);var n=null==e||null===(i=e.getAttribute)||void 0===i?void 0:i.call(e,"inert");return""===n||"true"===n||t&&e&&("function"==typeof e.closest?e.closest("[inert]"):zn(e.parentNode))},Hn=function(e,t,i){if(zn(e))return[];var n=Array.prototype.slice.apply(e.querySelectorAll(Bn));return t&&Pn.call(e,Bn)&&n.unshift(e),n=n.filter(i)},Tn=function(e,t,i){for(var n=[],o=Array.from(e);o.length;){var s=o.shift();if(!zn(s,!1))if("SLOT"===s.tagName){var c=s.assignedElements(),r=c.length?c:s.children,a=Tn(r,!0,i);i.flatten?n.push.apply(n,a):n.push({scopeParent:s,candidates:a})}else{Pn.call(s,Bn)&&i.filter(s)&&(t||!e.includes(s))&&n.push(s);var l=s.shadowRoot||"function"==typeof i.getShadowRoot&&i.getShadowRoot(s),d=!zn(l,!1)&&(!i.shadowRootFilter||i.shadowRootFilter(s));if(l&&d){var u=Tn(!0===l?s.children:l.children,!0,i);i.flatten?n.push.apply(n,u):n.push({scopeParent:s,candidates:u})}else o.unshift.apply(o,s.children)}}return n},Dn=function(e){return!isNaN(parseInt(e.getAttribute("tabindex"),10))},Vn=function(e){if(!e)throw new Error("No node provided");return e.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(e.tagName)||function(e){var t,i=null==e||null===(t=e.getAttribute)||void 0===t?void 0:t.call(e,"contenteditable");return""===i||"true"===i}(e))&&!Dn(e)?0:e.tabIndex},Fn=function(e,t){return e.tabIndex===t.tabIndex?e.documentOrder-t.documentOrder:e.tabIndex-t.tabIndex},Rn=function(e){return"INPUT"===e.tagName},On=function(e){return function(e){return Rn(e)&&"radio"===e.type}(e)&&!function(e){if(!e.name)return!0;var t,i=e.form||jn(e),n=function(e){return i.querySelectorAll('input[type="radio"][name="'+e+'"]')};if("undefined"!=typeof window&&void 0!==window.CSS&&"function"==typeof window.CSS.escape)t=n(window.CSS.escape(e.name));else try{t=n(e.name)}catch(e){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",e.message),!1}var o=function(e,t){for(var i=0;i<e.length;i++)if(e[i].checked&&e[i].form===t)return e[i]}(t,e.form);return!o||o===e}(e)},$n=function(e){var t=e.getBoundingClientRect(),i=t.width,n=t.height;return 0===i&&0===n},_n=function(e,t){var i=t.displayCheck,n=t.getShadowRoot;if("full-native"===i&&"checkVisibility"in e)return!e.checkVisibility({checkOpacity:!1,opacityProperty:!1,contentVisibilityAuto:!0,visibilityProperty:!0,checkVisibilityCSS:!0});var o=getComputedStyle(e).visibility;if("hidden"===o||"collapse"===o)return!0;var s=Pn.call(e,"details>summary:first-of-type")?e.parentElement:e;if(Pn.call(s,"details:not([open]) *"))return!0;if(i&&"full"!==i&&"full-native"!==i&&"legacy-full"!==i){if("non-zero-area"===i)return $n(e)}else{if("function"==typeof n){for(var c=e;e;){var r=e.parentElement,a=jn(e);if(r&&!r.shadowRoot&&!0===n(r))return $n(e);e=e.assignedSlot?e.assignedSlot:r||a===e.ownerDocument?r:a.host}e=c}if(function(e){var t,i,n,o,s=e&&jn(e),c=null===(t=s)||void 0===t?void 0:t.host,r=!1;if(s&&s!==e)for(r=!!(null!==(i=c)&&void 0!==i&&null!==(n=i.ownerDocument)&&void 0!==n&&n.contains(c)||null!=e&&null!==(o=e.ownerDocument)&&void 0!==o&&o.contains(e));!r&&c;){var a,l,d;r=!(null===(l=c=null===(a=s=jn(c))||void 0===a?void 0:a.host)||void 0===l||null===(d=l.ownerDocument)||void 0===d||!d.contains(c))}return r}(e))return!e.getClientRects().length;if("legacy-full"!==i)return!0}return!1},En=function(e,t){return!(t.disabled||function(e){return Rn(e)&&"hidden"===e.type}(t)||_n(t,e)||function(e){return"DETAILS"===e.tagName&&Array.prototype.slice.apply(e.children).some(function(e){return"SUMMARY"===e.tagName})}(t)||function(e){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(e.tagName))for(var t=e.parentElement;t;){if("FIELDSET"===t.tagName&&t.disabled){for(var i=0;i<t.children.length;i++){var n=t.children.item(i);if("LEGEND"===n.tagName)return!!Pn.call(t,"fieldset[disabled] *")||!n.contains(e)}return!0}t=t.parentElement}return!1}(t))},Un=function(e,t){return!(On(t)||Vn(t)<0||!En(e,t))},Gn=function(e){var t=parseInt(e.getAttribute("tabindex"),10);return!!(isNaN(t)||t>=0)},Zn=function(e){var t=[],i=[];return e.forEach(function(e,n){var o=!!e.scopeParent,s=o?e.scopeParent:e,c=function(e,t){var i=Vn(e);return i<0&&t&&!Dn(e)?0:i}(s,o),r=o?Zn(e.candidates):s;0===c?o?t.push.apply(t,r):t.push(s):i.push({documentOrder:n,tabIndex:c,item:e,isScope:o,content:r})}),i.sort(Fn).reduce(function(e,t){return t.isScope?e.push.apply(e,t.content):e.push(t.content),e},[]).concat(t)},Nn=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==Pn.call(e,Bn)&&Un(t,e)},Wn=Sn.concat("iframe:not([inert]):not([inert] *)").join(","),Xn=function(e,t){if(t=t||{},!e)throw new Error("No node provided");return!1!==Pn.call(e,Wn)&&En(t,e)};
2816
2846
  /*!
2817
2847
  * focus-trap 7.8.0
2818
2848
  * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
2819
2849
  */
2820
- function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;i++)n[i]=e[i];return n}function Kn(e,t){var i="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!i){if(Array.isArray(e)||(i=to(e))||t){i&&(e=i);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,c=!0,r=!1;return{s:function(){i=i.call(e)},n:function(){var e=i.next();return c=e.done,e},e:function(e){r=!0,s=e},f:function(){try{c||null==i.return||i.return()}finally{if(r)throw s}}}}function Jn(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var n=i.call(e,t);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function Qn(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,n)}return i}function Yn(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?Qn(Object(i),!0).forEach(function(t){Jn(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):Qn(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}function eo(e){return function(e){if(Array.isArray(e))return Xn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||to(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function to(e,t){if(e){if("string"==typeof e)return Xn(e,t);var i={}.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?Xn(e,t):void 0}}var io={getActiveTrap:function(e){return(null==e?void 0:e.length)>0?e[e.length-1]:null},activateTrap:function(e,t){t!==io.getActiveTrap(e)&&io.pauseTrap(e);var i=e.indexOf(t);-1===i||e.splice(i,1),e.push(t)},deactivateTrap:function(e,t){var i=e.indexOf(t);-1!==i&&e.splice(i,1),io.unpauseTrap(e)},pauseTrap:function(e){var t=io.getActiveTrap(e);null==t||t._setPausedState(!0)},unpauseTrap:function(e){var t=io.getActiveTrap(e);t&&!t._isManuallyPaused()&&t._setPausedState(!1)}},no=function(e){return"Tab"===(null==e?void 0:e.key)||9===(null==e?void 0:e.keyCode)},oo=function(e){return no(e)&&!e.shiftKey},so=function(e){return no(e)&&e.shiftKey},co=function(e){return setTimeout(e,0)},ro=function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];return"function"==typeof e?e.apply(void 0,i):e},ao=function(e){return e.target.shadowRoot&&"function"==typeof e.composedPath?e.composedPath()[0]:e.target},lo=[],uo=function(e,t){var i,n=(null==t?void 0:t.document)||document,o=(null==t?void 0:t.trapStack)||lo,s=Yn({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isolateSubtrees:!1,isKeyForward:oo,isKeyBackward:so},t),c={containers:[],containerGroups:[],tabbableGroups:[],adjacentElements:new Set,alreadySilent:new Set,nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},r=function(e,t,i){return e&&void 0!==e[t]?e[t]:s[i||t]},a=function(e,t){var i="function"==typeof(null==t?void 0:t.composedPath)?t.composedPath():void 0;return c.containerGroups.findIndex(function(t){var n=t.container,o=t.tabbableNodes;return n.contains(e)||(null==i?void 0:i.includes(n))||o.find(function(t){return t===e})})},l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=t.hasFallback,o=void 0!==i&&i,c=t.params,r=void 0===c?[]:c,a=s[e];if("function"==typeof a&&(a=a.apply(void 0,eo(r))),!0===a&&(a=void 0),!a){if(void 0===a||!1===a)return a;throw new Error("`".concat(e,"` was specified but was not a node, or did not return a node"))}var l=a;if("string"==typeof a){try{l=n.querySelector(a)}catch(t){throw new Error("`".concat(e,'` appears to be an invalid selector; error="').concat(t.message,'"'))}if(!l&&!o)throw new Error("`".concat(e,"` as selector refers to no known node"))}return l},d=function(){var e=l("initialFocus",{hasFallback:!0});if(!1===e)return!1;if(void 0===e||e&&!Wn(e,s.tabbableOptions))if(a(n.activeElement)>=0)e=n.activeElement;else{var t=c.tabbableGroups[0];e=t&&t.firstTabbableNode||l("fallbackFocus")}else null===e&&(e=l("fallbackFocus"));if(!e)throw new Error("Your focus-trap needs to have at least one focusable element");return e},u=function(){if(c.containerGroups=c.containers.map(function(e){var t=function(e,t){var i;return i=(t=t||{}).getShadowRoot?Hn([e],t.includeContainer,{filter:En.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:Un}):zn(e,t.includeContainer,En.bind(null,t)),Gn(i)}(e,s.tabbableOptions),i=function(e,t){return(t=t||{}).getShadowRoot?Hn([e],t.includeContainer,{filter:_n.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):zn(e,t.includeContainer,_n.bind(null,t))}(e,s.tabbableOptions),n=t.length>0?t[0]:void 0,o=t.length>0?t[t.length-1]:void 0,c=i.find(function(e){return Zn(e)}),r=i.slice().reverse().find(function(e){return Zn(e)}),a=!!t.find(function(e){return Dn(e)>0});return{container:e,tabbableNodes:t,focusableNodes:i,posTabIndexesFound:a,firstTabbableNode:n,lastTabbableNode:o,firstDomTabbableNode:c,lastDomTabbableNode:r,nextTabbableNode:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=t.indexOf(e);return o<0?n?i.slice(i.indexOf(e)+1).find(function(e){return Zn(e)}):i.slice(0,i.indexOf(e)).reverse().find(function(e){return Zn(e)}):t[o+(n?1:-1)]}}}),c.tabbableGroups=c.containerGroups.filter(function(e){return e.tabbableNodes.length>0}),c.tabbableGroups.length<=0&&!l("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(c.containerGroups.find(function(e){return e.posTabIndexesFound})&&c.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function(e){var t=e.activeElement;if(t)return t.shadowRoot&&null!==t.shadowRoot.activeElement?h(t.shadowRoot):t},p=function(e){!1!==e&&e!==h(document)&&(e&&e.focus?(e.focus({preventScroll:!!s.preventScroll}),c.mostRecentlyFocusedNode=e,function(e){return e.tagName&&"input"===e.tagName.toLowerCase()&&"function"==typeof e.select}(e)&&e.select()):p(d()))},g=function(e){var t=l("setReturnFocus",{params:[e]});return t||!1!==t&&e},v=function(e){var t=e.target,i=e.event,n=e.isBackward,o=void 0!==n&&n;t=t||ao(i),u();var r=null;if(c.tabbableGroups.length>0){var d=a(t,i),h=d>=0?c.containerGroups[d]:void 0;if(d<0)r=o?c.tabbableGroups[c.tabbableGroups.length-1].lastTabbableNode:c.tabbableGroups[0].firstTabbableNode;else if(o){var p=c.tabbableGroups.findIndex(function(e){var i=e.firstTabbableNode;return t===i});if(p<0&&(h.container===t||Wn(t,s.tabbableOptions)&&!Zn(t,s.tabbableOptions)&&!h.nextTabbableNode(t,!1))&&(p=d),p>=0){var g=0===p?c.tabbableGroups.length-1:p-1,v=c.tabbableGroups[g];r=Dn(t)>=0?v.lastTabbableNode:v.lastDomTabbableNode}else no(i)||(r=h.nextTabbableNode(t,!1))}else{var w=c.tabbableGroups.findIndex(function(e){var i=e.lastTabbableNode;return t===i});if(w<0&&(h.container===t||Wn(t,s.tabbableOptions)&&!Zn(t,s.tabbableOptions)&&!h.nextTabbableNode(t))&&(w=d),w>=0){var m=w===c.tabbableGroups.length-1?0:w+1,k=c.tabbableGroups[m];r=Dn(t)>=0?k.firstTabbableNode:k.firstDomTabbableNode}else no(i)||(r=h.nextTabbableNode(t))}}else r=l("fallbackFocus");return r},w=function(e){var t=ao(e);a(t,e)>=0||(ro(s.clickOutsideDeactivates,e)?i.deactivate({returnFocus:s.returnFocusOnDeactivate}):ro(s.allowOutsideClick,e)||e.preventDefault())},m=function(e){var t=ao(e),i=a(t,e)>=0;if(i||t instanceof Document)i&&(c.mostRecentlyFocusedNode=t);else{var n;e.stopImmediatePropagation();var o=!0;if(c.mostRecentlyFocusedNode)if(Dn(c.mostRecentlyFocusedNode)>0){var r=a(c.mostRecentlyFocusedNode),l=c.containerGroups[r].tabbableNodes;if(l.length>0){var u=l.findIndex(function(e){return e===c.mostRecentlyFocusedNode});u>=0&&(s.isKeyForward(c.recentNavEvent)?u+1<l.length&&(n=l[u+1],o=!1):u-1>=0&&(n=l[u-1],o=!1))}}else c.containerGroups.some(function(e){return e.tabbableNodes.some(function(e){return Dn(e)>0})})||(o=!1);else o=!1;o&&(n=v({target:c.mostRecentlyFocusedNode,isBackward:s.isKeyBackward(c.recentNavEvent)})),p(n||(c.mostRecentlyFocusedNode||d()))}c.recentNavEvent=void 0},k=function(e){(s.isKeyForward(e)||s.isKeyBackward(e))&&function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];c.recentNavEvent=e;var i=v({event:e,isBackward:t});i&&(no(e)&&e.preventDefault(),p(i))}(e,s.isKeyBackward(e))},y=function(e){(function(e){return"Escape"===(null==e?void 0:e.key)||"Esc"===(null==e?void 0:e.key)||27===(null==e?void 0:e.keyCode)})(e)&&!1!==ro(s.escapeDeactivates,e)&&(e.preventDefault(),i.deactivate())},x=function(e){var t=ao(e);a(t,e)>=0||ro(s.clickOutsideDeactivates,e)||ro(s.allowOutsideClick,e)||(e.preventDefault(),e.stopImmediatePropagation())},L=function(){if(c.active)return io.activateTrap(o,i),c.delayInitialFocusTimer=s.delayInitialFocus?co(function(){p(d())}):p(d()),n.addEventListener("focusin",m,!0),n.addEventListener("mousedown",w,{capture:!0,passive:!1}),n.addEventListener("touchstart",w,{capture:!0,passive:!1}),n.addEventListener("click",x,{capture:!0,passive:!1}),n.addEventListener("keydown",k,{capture:!0,passive:!1}),n.addEventListener("keydown",y),i},I=function(){if(c.active)return n.removeEventListener("focusin",m,!0),n.removeEventListener("mousedown",w,!0),n.removeEventListener("touchstart",w,!0),n.removeEventListener("click",x,!0),n.removeEventListener("keydown",k,!0),n.removeEventListener("keydown",y),i},f="undefined"!=typeof window&&"MutationObserver"in window?new MutationObserver(function(e){e.some(function(e){return Array.from(e.removedNodes).some(function(e){return e===c.mostRecentlyFocusedNode})})&&p(d())}):void 0,C=function(){f&&(f.disconnect(),c.active&&!c.paused&&c.containers.map(function(e){f.observe(e,{subtree:!0,childList:!0})}))};return i={get active(){return c.active},get paused(){return c.paused},activate:function(e){if(c.active)return this;var t,a=r(e,"onActivate"),l=r(e,"onPostActivate"),d=r(e,"checkCanFocusTrap"),p=io.getActiveTrap(o),g=!1;p&&!p.paused&&(null===(t=p._setSubtreeIsolation)||void 0===t||t.call(p,!1),g=!0);try{d||u(),c.active=!0,c.paused=!1,c.nodeFocusedBeforeActivation=h(n),null==a||a();var v=function(){d&&u(),L(),C(),s.isolateSubtrees&&i._setSubtreeIsolation(!0),null==l||l()};if(d)return d(c.containers.concat()).then(v,v),this;v()}catch(e){var w;if(p===io.getActiveTrap(o)&&g)null===(w=p._setSubtreeIsolation)||void 0===w||w.call(p,!0);throw e}return this},deactivate:function(e){if(!c.active)return this;var t=Yn({onDeactivate:s.onDeactivate,onPostDeactivate:s.onPostDeactivate,checkCanReturnFocus:s.checkCanReturnFocus},e);clearTimeout(c.delayInitialFocusTimer),c.delayInitialFocusTimer=void 0,c.paused||i._setSubtreeIsolation(!1),c.alreadySilent.clear(),I(),c.active=!1,c.paused=!1,C(),io.deactivateTrap(o,i);var n=r(t,"onDeactivate"),a=r(t,"onPostDeactivate"),l=r(t,"checkCanReturnFocus"),d=r(t,"returnFocus","returnFocusOnDeactivate");null==n||n();var u=function(){co(function(){d&&p(g(c.nodeFocusedBeforeActivation)),null==a||a()})};return d&&l?(l(g(c.nodeFocusedBeforeActivation)).then(u,u),this):(u(),this)},pause:function(e){return c.active?(c.manuallyPaused=!0,this._setPausedState(!0,e)):this},unpause:function(e){return c.active?(c.manuallyPaused=!1,o[o.length-1]!==this?this:this._setPausedState(!1,e)):this},updateContainerElements:function(e){var t=[].concat(e).filter(Boolean);return c.containers=t.map(function(e){return"string"==typeof e?n.querySelector(e):e}),s.isolateSubtrees&&function(e){c.active&&!c.paused&&i._setSubtreeIsolation(!1),c.adjacentElements.clear(),c.alreadySilent.clear();var t,n=new Set,o=new Set,s=Kn(e);try{for(s.s();!(t=s.n()).done;){var r=t.value;n.add(r);for(var a="undefined"!=typeof ShadowRoot&&r.getRootNode()instanceof ShadowRoot,l=r;l;){n.add(l);var d=l.parentElement,u=[];d?u=d.children:!d&&a&&(u=l.getRootNode().children,d=l.getRootNode().host,a="undefined"!=typeof ShadowRoot&&d.getRootNode()instanceof ShadowRoot);var h,p=Kn(u);try{for(p.s();!(h=p.n()).done;){var g=h.value;o.add(g)}}catch(e){p.e(e)}finally{p.f()}l=d}}}catch(e){s.e(e)}finally{s.f()}n.forEach(function(e){o.delete(e)}),c.adjacentElements=o}(c.containers),c.active&&(u(),s.isolateSubtrees&&!c.paused&&i._setSubtreeIsolation(!0)),C(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return c.manuallyPaused}},_setPausedState:{value:function(e,t){if(c.paused===e)return this;if(c.paused=e,e){var n=r(t,"onPause"),o=r(t,"onPostPause");null==n||n(),I(),C(),i._setSubtreeIsolation(!1),null==o||o()}else{var s=r(t,"onUnpause"),a=r(t,"onPostUnpause");null==s||s(),i._setSubtreeIsolation(!0),u(),L(),C(),null==a||a()}return this}},_setSubtreeIsolation:{value:function(e){s.isolateSubtrees&&c.adjacentElements.forEach(function(t){var i;if(e)if("aria-hidden"===s.isolateSubtrees)"true"!==t.ariaHidden&&"true"!==(null===(i=t.getAttribute("aria-hidden"))||void 0===i?void 0:i.toLowerCase())||c.alreadySilent.add(t),t.setAttribute("aria-hidden","true");else(t.inert||t.hasAttribute("inert"))&&c.alreadySilent.add(t),t.setAttribute("inert",!0);else if(c.alreadySilent.has(t));else if("aria-hidden"===s.isolateSubtrees)t.removeAttribute("aria-hidden");else t.removeAttribute("inert")})}}}),i.updateContainerElements(e),i};e.DialogBackdropElement.ensureDefined(),e.Button.ensureDefined(),e.LucideIconX.ensureDefined(),e.Dialog=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.open=!1,this.size=Cn.Medium,this.showCloseButton=!0,this.backdrop=bn.Opaque,this.persistent=!1,this.role=Mn.Dialog,this.ariaLabel=null,this.dialogId=rt("dialog"),this.headerId=rt("dialog-title"),this.originalOverflow="",this.originalPaddingRight="",this.handleTriggerClick=()=>{this.show()},this.handleEscape=e=>{"Escape"===e.key&&this.open&&(e.stopPropagation(),this.persistent||this.hide())},this.handleBackdropClick=e=>{this.persistent||e.target===this.wrapperElement&&this.hide()},this.hide=async()=>{if(!this.open||this.persistent)return;const e=new Event("before-close",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1)}}connectedCallback(){super.connectedCallback(),this.addEventListener("dialog-close",this.hide),this.addEventListener("keydown",this.handleEscape)}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("dialog-close",this.hide),this.removeEventListener("keydown",this.handleEscape),this.unlockBodyScroll(),this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}}updated(e){super.updated(e),e.has("open")&&(this.open?this._activate():e.get("open")&&this._deactivate())}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}get hasHeaderContent(){return this.headerSlot?.assignedNodes({flatten:!0}).some(e=>e.nodeType!==Node.TEXT_NODE||e.textContent?.trim())??!1}handleSlotChange(){const e=this.triggerElement;e&&(e.setAttribute("aria-controls",this.dialogId),e.setAttribute("aria-haspopup","dialog"),e.setAttribute("aria-expanded",this.open?"true":"false"))}lockBodyScroll(){if("undefined"==typeof document)return;const e=window.innerWidth-document.documentElement.clientWidth;this.originalOverflow=document.body.style.overflow,this.originalPaddingRight=document.body.style.paddingRight,document.body.style.overflow="hidden",e>0&&(document.body.style.paddingRight=`${e}px`)}unlockBodyScroll(){"undefined"!=typeof document&&(document.body.style.overflow=this.originalOverflow,document.body.style.paddingRight=this.originalPaddingRight)}updateTriggerAria(){const e=this.triggerElement;e&&e.setAttribute("aria-expanded",this.open?"true":"false")}async waitForDialogRender(){await this.updateComplete,await new Promise(e=>{const t=()=>{this.wrapperElement?.removeEventListener("transitionend",t),e()};this.wrapperElement?.addEventListener("transitionend",t),setTimeout(t,500)})}async show(){if(this.open)return;const e=new Event("before-open",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!0)}async toggle(){this.open?await this.hide():await this.show()}async _activate(){if(this.updateTriggerAria(),this.lockBodyScroll(),this.backdropElement&&(await this.backdropElement.updateComplete,this.backdropElement.visible=!0),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!0},bubbles:!0,composed:!0})),await this.updateComplete,this.mainElement)try{this.focusTrap=uo(this.mainElement,{escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0,returnFocusOnDeactivate:!0,fallbackFocus:this.mainElement,tabbableOptions:{getShadowRoot:!0}}),this.focusTrap.activate()}catch(e){console.error("Failed to activate focus trap:",e),this.focusTrap=null}await this.waitForDialogRender(),this.dispatchEvent(new Event("after-open",{bubbles:!0,composed:!0}))}async _deactivate(){if(this.updateTriggerAria(),this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}this.backdropElement&&(this.backdropElement.visible=!1),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!1},bubbles:!0,composed:!0})),await this.waitForDialogRender(),this.unlockBodyScroll(),this.dispatchEvent(new Event("after-close",{bubbles:!0,composed:!0}))}render(){return W`
2850
+ function Kn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;i++)n[i]=e[i];return n}function Jn(e,t){var i="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!i){if(Array.isArray(e)||(i=io(e))||t){i&&(e=i);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,c=!0,r=!1;return{s:function(){i=i.call(e)},n:function(){var e=i.next();return c=e.done,e},e:function(e){r=!0,s=e},f:function(){try{c||null==i.return||i.return()}finally{if(r)throw s}}}}function Qn(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var n=i.call(e,t);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function Yn(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,n)}return i}function eo(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?Yn(Object(i),!0).forEach(function(t){Qn(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):Yn(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}function to(e){return function(e){if(Array.isArray(e))return Kn(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||io(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function io(e,t){if(e){if("string"==typeof e)return Kn(e,t);var i={}.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?Kn(e,t):void 0}}var no={getActiveTrap:function(e){return(null==e?void 0:e.length)>0?e[e.length-1]:null},activateTrap:function(e,t){t!==no.getActiveTrap(e)&&no.pauseTrap(e);var i=e.indexOf(t);-1===i||e.splice(i,1),e.push(t)},deactivateTrap:function(e,t){var i=e.indexOf(t);-1!==i&&e.splice(i,1),no.unpauseTrap(e)},pauseTrap:function(e){var t=no.getActiveTrap(e);null==t||t._setPausedState(!0)},unpauseTrap:function(e){var t=no.getActiveTrap(e);t&&!t._isManuallyPaused()&&t._setPausedState(!1)}},oo=function(e){return"Tab"===(null==e?void 0:e.key)||9===(null==e?void 0:e.keyCode)},so=function(e){return oo(e)&&!e.shiftKey},co=function(e){return oo(e)&&e.shiftKey},ro=function(e){return setTimeout(e,0)},ao=function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),n=1;n<t;n++)i[n-1]=arguments[n];return"function"==typeof e?e.apply(void 0,i):e},lo=function(e){return e.target.shadowRoot&&"function"==typeof e.composedPath?e.composedPath()[0]:e.target},uo=[],ho=function(e,t){var i,n=(null==t?void 0:t.document)||document,o=(null==t?void 0:t.trapStack)||uo,s=eo({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isolateSubtrees:!1,isKeyForward:so,isKeyBackward:co},t),c={containers:[],containerGroups:[],tabbableGroups:[],adjacentElements:new Set,alreadySilent:new Set,nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},r=function(e,t,i){return e&&void 0!==e[t]?e[t]:s[i||t]},a=function(e,t){var i="function"==typeof(null==t?void 0:t.composedPath)?t.composedPath():void 0;return c.containerGroups.findIndex(function(t){var n=t.container,o=t.tabbableNodes;return n.contains(e)||(null==i?void 0:i.includes(n))||o.find(function(t){return t===e})})},l=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=t.hasFallback,o=void 0!==i&&i,c=t.params,r=void 0===c?[]:c,a=s[e];if("function"==typeof a&&(a=a.apply(void 0,to(r))),!0===a&&(a=void 0),!a){if(void 0===a||!1===a)return a;throw new Error("`".concat(e,"` was specified but was not a node, or did not return a node"))}var l=a;if("string"==typeof a){try{l=n.querySelector(a)}catch(t){throw new Error("`".concat(e,'` appears to be an invalid selector; error="').concat(t.message,'"'))}if(!l&&!o)throw new Error("`".concat(e,"` as selector refers to no known node"))}return l},d=function(){var e=l("initialFocus",{hasFallback:!0});if(!1===e)return!1;if(void 0===e||e&&!Xn(e,s.tabbableOptions))if(a(n.activeElement)>=0)e=n.activeElement;else{var t=c.tabbableGroups[0];e=t&&t.firstTabbableNode||l("fallbackFocus")}else null===e&&(e=l("fallbackFocus"));if(!e)throw new Error("Your focus-trap needs to have at least one focusable element");return e},u=function(){if(c.containerGroups=c.containers.map(function(e){var t=function(e,t){var i;return i=(t=t||{}).getShadowRoot?Tn([e],t.includeContainer,{filter:Un.bind(null,t),flatten:!1,getShadowRoot:t.getShadowRoot,shadowRootFilter:Gn}):Hn(e,t.includeContainer,Un.bind(null,t)),Zn(i)}(e,s.tabbableOptions),i=function(e,t){return(t=t||{}).getShadowRoot?Tn([e],t.includeContainer,{filter:En.bind(null,t),flatten:!0,getShadowRoot:t.getShadowRoot}):Hn(e,t.includeContainer,En.bind(null,t))}(e,s.tabbableOptions),n=t.length>0?t[0]:void 0,o=t.length>0?t[t.length-1]:void 0,c=i.find(function(e){return Nn(e)}),r=i.slice().reverse().find(function(e){return Nn(e)}),a=!!t.find(function(e){return Vn(e)>0});return{container:e,tabbableNodes:t,focusableNodes:i,posTabIndexesFound:a,firstTabbableNode:n,lastTabbableNode:o,firstDomTabbableNode:c,lastDomTabbableNode:r,nextTabbableNode:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],o=t.indexOf(e);return o<0?n?i.slice(i.indexOf(e)+1).find(function(e){return Nn(e)}):i.slice(0,i.indexOf(e)).reverse().find(function(e){return Nn(e)}):t[o+(n?1:-1)]}}}),c.tabbableGroups=c.containerGroups.filter(function(e){return e.tabbableNodes.length>0}),c.tabbableGroups.length<=0&&!l("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(c.containerGroups.find(function(e){return e.posTabIndexesFound})&&c.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},h=function(e){var t=e.activeElement;if(t)return t.shadowRoot&&null!==t.shadowRoot.activeElement?h(t.shadowRoot):t},p=function(e){!1!==e&&e!==h(document)&&(e&&e.focus?(e.focus({preventScroll:!!s.preventScroll}),c.mostRecentlyFocusedNode=e,function(e){return e.tagName&&"input"===e.tagName.toLowerCase()&&"function"==typeof e.select}(e)&&e.select()):p(d()))},g=function(e){var t=l("setReturnFocus",{params:[e]});return t||!1!==t&&e},v=function(e){var t=e.target,i=e.event,n=e.isBackward,o=void 0!==n&&n;t=t||lo(i),u();var r=null;if(c.tabbableGroups.length>0){var d=a(t,i),h=d>=0?c.containerGroups[d]:void 0;if(d<0)r=o?c.tabbableGroups[c.tabbableGroups.length-1].lastTabbableNode:c.tabbableGroups[0].firstTabbableNode;else if(o){var p=c.tabbableGroups.findIndex(function(e){var i=e.firstTabbableNode;return t===i});if(p<0&&(h.container===t||Xn(t,s.tabbableOptions)&&!Nn(t,s.tabbableOptions)&&!h.nextTabbableNode(t,!1))&&(p=d),p>=0){var g=0===p?c.tabbableGroups.length-1:p-1,v=c.tabbableGroups[g];r=Vn(t)>=0?v.lastTabbableNode:v.lastDomTabbableNode}else oo(i)||(r=h.nextTabbableNode(t,!1))}else{var w=c.tabbableGroups.findIndex(function(e){var i=e.lastTabbableNode;return t===i});if(w<0&&(h.container===t||Xn(t,s.tabbableOptions)&&!Nn(t,s.tabbableOptions)&&!h.nextTabbableNode(t))&&(w=d),w>=0){var m=w===c.tabbableGroups.length-1?0:w+1,k=c.tabbableGroups[m];r=Vn(t)>=0?k.firstTabbableNode:k.firstDomTabbableNode}else oo(i)||(r=h.nextTabbableNode(t))}}else r=l("fallbackFocus");return r},w=function(e){var t=lo(e);a(t,e)>=0||(ao(s.clickOutsideDeactivates,e)?i.deactivate({returnFocus:s.returnFocusOnDeactivate}):ao(s.allowOutsideClick,e)||e.preventDefault())},m=function(e){var t=lo(e),i=a(t,e)>=0;if(i||t instanceof Document)i&&(c.mostRecentlyFocusedNode=t);else{var n;e.stopImmediatePropagation();var o=!0;if(c.mostRecentlyFocusedNode)if(Vn(c.mostRecentlyFocusedNode)>0){var r=a(c.mostRecentlyFocusedNode),l=c.containerGroups[r].tabbableNodes;if(l.length>0){var u=l.findIndex(function(e){return e===c.mostRecentlyFocusedNode});u>=0&&(s.isKeyForward(c.recentNavEvent)?u+1<l.length&&(n=l[u+1],o=!1):u-1>=0&&(n=l[u-1],o=!1))}}else c.containerGroups.some(function(e){return e.tabbableNodes.some(function(e){return Vn(e)>0})})||(o=!1);else o=!1;o&&(n=v({target:c.mostRecentlyFocusedNode,isBackward:s.isKeyBackward(c.recentNavEvent)})),p(n||(c.mostRecentlyFocusedNode||d()))}c.recentNavEvent=void 0},k=function(e){(s.isKeyForward(e)||s.isKeyBackward(e))&&function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];c.recentNavEvent=e;var i=v({event:e,isBackward:t});i&&(oo(e)&&e.preventDefault(),p(i))}(e,s.isKeyBackward(e))},y=function(e){(function(e){return"Escape"===(null==e?void 0:e.key)||"Esc"===(null==e?void 0:e.key)||27===(null==e?void 0:e.keyCode)})(e)&&!1!==ao(s.escapeDeactivates,e)&&(e.preventDefault(),i.deactivate())},x=function(e){var t=lo(e);a(t,e)>=0||ao(s.clickOutsideDeactivates,e)||ao(s.allowOutsideClick,e)||(e.preventDefault(),e.stopImmediatePropagation())},L=function(){if(c.active)return no.activateTrap(o,i),c.delayInitialFocusTimer=s.delayInitialFocus?ro(function(){p(d())}):p(d()),n.addEventListener("focusin",m,!0),n.addEventListener("mousedown",w,{capture:!0,passive:!1}),n.addEventListener("touchstart",w,{capture:!0,passive:!1}),n.addEventListener("click",x,{capture:!0,passive:!1}),n.addEventListener("keydown",k,{capture:!0,passive:!1}),n.addEventListener("keydown",y),i},I=function(){if(c.active)return n.removeEventListener("focusin",m,!0),n.removeEventListener("mousedown",w,!0),n.removeEventListener("touchstart",w,!0),n.removeEventListener("click",x,!0),n.removeEventListener("keydown",k,!0),n.removeEventListener("keydown",y),i},f="undefined"!=typeof window&&"MutationObserver"in window?new MutationObserver(function(e){e.some(function(e){return Array.from(e.removedNodes).some(function(e){return e===c.mostRecentlyFocusedNode})})&&p(d())}):void 0,C=function(){f&&(f.disconnect(),c.active&&!c.paused&&c.containers.map(function(e){f.observe(e,{subtree:!0,childList:!0})}))};return i={get active(){return c.active},get paused(){return c.paused},activate:function(e){if(c.active)return this;var t,a=r(e,"onActivate"),l=r(e,"onPostActivate"),d=r(e,"checkCanFocusTrap"),p=no.getActiveTrap(o),g=!1;p&&!p.paused&&(null===(t=p._setSubtreeIsolation)||void 0===t||t.call(p,!1),g=!0);try{d||u(),c.active=!0,c.paused=!1,c.nodeFocusedBeforeActivation=h(n),null==a||a();var v=function(){d&&u(),L(),C(),s.isolateSubtrees&&i._setSubtreeIsolation(!0),null==l||l()};if(d)return d(c.containers.concat()).then(v,v),this;v()}catch(e){var w;if(p===no.getActiveTrap(o)&&g)null===(w=p._setSubtreeIsolation)||void 0===w||w.call(p,!0);throw e}return this},deactivate:function(e){if(!c.active)return this;var t=eo({onDeactivate:s.onDeactivate,onPostDeactivate:s.onPostDeactivate,checkCanReturnFocus:s.checkCanReturnFocus},e);clearTimeout(c.delayInitialFocusTimer),c.delayInitialFocusTimer=void 0,c.paused||i._setSubtreeIsolation(!1),c.alreadySilent.clear(),I(),c.active=!1,c.paused=!1,C(),no.deactivateTrap(o,i);var n=r(t,"onDeactivate"),a=r(t,"onPostDeactivate"),l=r(t,"checkCanReturnFocus"),d=r(t,"returnFocus","returnFocusOnDeactivate");null==n||n();var u=function(){ro(function(){d&&p(g(c.nodeFocusedBeforeActivation)),null==a||a()})};return d&&l?(l(g(c.nodeFocusedBeforeActivation)).then(u,u),this):(u(),this)},pause:function(e){return c.active?(c.manuallyPaused=!0,this._setPausedState(!0,e)):this},unpause:function(e){return c.active?(c.manuallyPaused=!1,o[o.length-1]!==this?this:this._setPausedState(!1,e)):this},updateContainerElements:function(e){var t=[].concat(e).filter(Boolean);return c.containers=t.map(function(e){return"string"==typeof e?n.querySelector(e):e}),s.isolateSubtrees&&function(e){c.active&&!c.paused&&i._setSubtreeIsolation(!1),c.adjacentElements.clear(),c.alreadySilent.clear();var t,n=new Set,o=new Set,s=Jn(e);try{for(s.s();!(t=s.n()).done;){var r=t.value;n.add(r);for(var a="undefined"!=typeof ShadowRoot&&r.getRootNode()instanceof ShadowRoot,l=r;l;){n.add(l);var d=l.parentElement,u=[];d?u=d.children:!d&&a&&(u=l.getRootNode().children,d=l.getRootNode().host,a="undefined"!=typeof ShadowRoot&&d.getRootNode()instanceof ShadowRoot);var h,p=Jn(u);try{for(p.s();!(h=p.n()).done;){var g=h.value;o.add(g)}}catch(e){p.e(e)}finally{p.f()}l=d}}}catch(e){s.e(e)}finally{s.f()}n.forEach(function(e){o.delete(e)}),c.adjacentElements=o}(c.containers),c.active&&(u(),s.isolateSubtrees&&!c.paused&&i._setSubtreeIsolation(!0)),C(),this}},Object.defineProperties(i,{_isManuallyPaused:{value:function(){return c.manuallyPaused}},_setPausedState:{value:function(e,t){if(c.paused===e)return this;if(c.paused=e,e){var n=r(t,"onPause"),o=r(t,"onPostPause");null==n||n(),I(),C(),i._setSubtreeIsolation(!1),null==o||o()}else{var s=r(t,"onUnpause"),a=r(t,"onPostUnpause");null==s||s(),i._setSubtreeIsolation(!0),u(),L(),C(),null==a||a()}return this}},_setSubtreeIsolation:{value:function(e){s.isolateSubtrees&&c.adjacentElements.forEach(function(t){var i;if(e)if("aria-hidden"===s.isolateSubtrees)"true"!==t.ariaHidden&&"true"!==(null===(i=t.getAttribute("aria-hidden"))||void 0===i?void 0:i.toLowerCase())||c.alreadySilent.add(t),t.setAttribute("aria-hidden","true");else(t.inert||t.hasAttribute("inert"))&&c.alreadySilent.add(t),t.setAttribute("inert",!0);else if(c.alreadySilent.has(t));else if("aria-hidden"===s.isolateSubtrees)t.removeAttribute("aria-hidden");else t.removeAttribute("inert")})}}}),i.updateContainerElements(e),i};e.DialogBackdropElement.ensureDefined(),e.Button.ensureDefined(),e.LucideIconX.ensureDefined(),e.Dialog=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.open=!1,this.size=bn.Medium,this.showCloseButton=!0,this.backdrop=Mn.Opaque,this.persistent=!1,this.role=qn.Dialog,this.ariaLabel=null,this.dialogId=rt("dialog"),this.headerId=rt("dialog-title"),this.originalOverflow="",this.originalPaddingRight="",this.handleTriggerClick=()=>{this.show()},this.handleEscape=e=>{"Escape"===e.key&&this.open&&(e.stopPropagation(),this.persistent||this.hide())},this.handleBackdropClick=e=>{this.persistent||e.target===this.wrapperElement&&this.hide()},this.hide=async()=>{if(!this.open||this.persistent)return;const e=new Event("before-close",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1)}}connectedCallback(){super.connectedCallback(),this.addEventListener("dialog-close",this.hide),this.addEventListener("keydown",this.handleEscape)}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("dialog-close",this.hide),this.removeEventListener("keydown",this.handleEscape),this.unlockBodyScroll(),this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}}updated(e){super.updated(e),e.has("open")&&(this.open?this._activate():e.get("open")&&this._deactivate())}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}get hasHeaderContent(){return this.headerSlot?.assignedNodes({flatten:!0}).some(e=>e.nodeType!==Node.TEXT_NODE||e.textContent?.trim())??!1}handleSlotChange(){const e=this.triggerElement;e&&(e.setAttribute("aria-controls",this.dialogId),e.setAttribute("aria-haspopup","dialog"),e.setAttribute("aria-expanded",this.open?"true":"false"))}lockBodyScroll(){if("undefined"==typeof document)return;const e=window.innerWidth-document.documentElement.clientWidth;this.originalOverflow=document.body.style.overflow,this.originalPaddingRight=document.body.style.paddingRight,document.body.style.overflow="hidden",e>0&&(document.body.style.paddingRight=`${e}px`)}unlockBodyScroll(){"undefined"!=typeof document&&(document.body.style.overflow=this.originalOverflow,document.body.style.paddingRight=this.originalPaddingRight)}updateTriggerAria(){const e=this.triggerElement;e&&e.setAttribute("aria-expanded",this.open?"true":"false")}async waitForDialogRender(){await this.updateComplete,await new Promise(e=>{const t=()=>{this.wrapperElement?.removeEventListener("transitionend",t),e()};this.wrapperElement?.addEventListener("transitionend",t),setTimeout(t,500)})}async show(){if(this.open)return;const e=new Event("before-open",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!0)}async toggle(){this.open?await this.hide():await this.show()}async _activate(){if(this.updateTriggerAria(),this.lockBodyScroll(),this.backdropElement&&(await this.backdropElement.updateComplete,this.backdropElement.visible=!0),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!0},bubbles:!0,composed:!0})),await this.updateComplete,this.mainElement)try{this.focusTrap=ho(this.mainElement,{escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0,returnFocusOnDeactivate:!0,fallbackFocus:this.mainElement,tabbableOptions:{getShadowRoot:!0}}),this.focusTrap.activate()}catch(e){console.error("Failed to activate focus trap:",e),this.focusTrap=null}await this.waitForDialogRender(),this.dispatchEvent(new Event("after-open",{bubbles:!0,composed:!0}))}async _deactivate(){if(this.updateTriggerAria(),this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}this.backdropElement&&(this.backdropElement.visible=!1),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!1},bubbles:!0,composed:!0})),await this.waitForDialogRender(),this.unlockBodyScroll(),this.dispatchEvent(new Event("after-close",{bubbles:!0,composed:!0}))}render(){return W`
2821
2851
  <div class="trigger" @click=${this.handleTriggerClick}>
2822
2852
  <slot name="trigger" @slotchange=${this.handleSlotChange}></slot>
2823
2853
  </div>
@@ -2864,9 +2894,9 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2864
2894
  --quantic-component-dialog-bg: var(--quantic-bg-primary);
2865
2895
  --quantic-component-dialog-border-color: var(--quantic-border-secondary);
2866
2896
  --quantic-component-dialog-border-radius: var(--quantic-radius-lg);
2867
- --quantic-component-dialog-padding-inline: var(--quantic-spacing-6);
2868
- --quantic-component-dialog-padding-block: var(--quantic-spacing-6);
2869
- --quantic-component-dialog-gap: var(--quantic-spacing-5);
2897
+ --quantic-internal-dialog-padding-inline: var(--quantic-spacing-6);
2898
+ --quantic-internal-dialog-padding-block: var(--quantic-spacing-6);
2899
+ --quantic-internal-dialog-gap: var(--quantic-spacing-5);
2870
2900
  --quantic-component-dialog-max-width-sm: var(--quantic-width-xs);
2871
2901
  --quantic-component-dialog-max-width-md: var(--quantic-width-md);
2872
2902
  --quantic-component-dialog-max-width-lg: var(--quantic-width-lg);
@@ -2901,7 +2931,7 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2901
2931
  .main {
2902
2932
  position: relative;
2903
2933
  display: flex;
2904
- gap: var(--quantic-component-dialog-gap);
2934
+ gap: var(--quantic-component-dialog-gap, var(--quantic-internal-dialog-gap));
2905
2935
  flex-direction: column;
2906
2936
  container-name: box-container;
2907
2937
  container-type: inline-size;
@@ -2912,7 +2942,7 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2912
2942
  border-radius: var(--quantic-component-dialog-border-radius);
2913
2943
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.07);
2914
2944
  box-sizing: border-box;
2915
- padding-block: var(--quantic-component-dialog-padding-block);
2945
+ padding-block: var(--quantic-component-dialog-padding-block, var(--quantic-internal-dialog-padding-block));
2916
2946
  transform: scale(0.95);
2917
2947
  transition: transform var(--quantic-transition-duration-normal, 0.2s)
2918
2948
  var(--quantic-transition-timing-ease, ease-in-out);
@@ -2924,30 +2954,30 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2924
2954
 
2925
2955
  .size--sm {
2926
2956
  max-width: var(--quantic-component-dialog-max-width-sm);
2927
- --quantic-component-dialog-padding-inline: var(--quantic-spacing-4);
2928
- --quantic-component-dialog-padding-block: var(--quantic-spacing-4);
2929
- --quantic-component-dialog-gap: var(--quantic-spacing-3);
2957
+ --quantic-internal-dialog-padding-inline: var(--quantic-spacing-4);
2958
+ --quantic-internal-dialog-padding-block: var(--quantic-spacing-4);
2959
+ --quantic-internal-dialog-gap: var(--quantic-spacing-3);
2930
2960
  }
2931
2961
 
2932
2962
  .size--md {
2933
2963
  max-width: var(--quantic-component-dialog-max-width-md);
2934
- --quantic-component-dialog-padding-inline: var(--quantic-spacing-6);
2935
- --quantic-component-dialog-padding-block: var(--quantic-spacing-6);
2936
- --quantic-component-dialog-gap: var(--quantic-spacing-4);
2964
+ --quantic-internal-dialog-padding-inline: var(--quantic-spacing-6);
2965
+ --quantic-internal-dialog-padding-block: var(--quantic-spacing-6);
2966
+ --quantic-internal-dialog-gap: var(--quantic-spacing-4);
2937
2967
  }
2938
2968
 
2939
2969
  .size--lg {
2940
2970
  max-width: var(--quantic-component-dialog-max-width-lg);
2941
- --quantic-component-dialog-padding-inline: var(--quantic-spacing-6);
2942
- --quantic-component-dialog-padding-block: var(--quantic-spacing-6);
2943
- --quantic-component-dialog-gap: var(--quantic-spacing-5);
2971
+ --quantic-internal-dialog-padding-inline: var(--quantic-spacing-6);
2972
+ --quantic-internal-dialog-padding-block: var(--quantic-spacing-6);
2973
+ --quantic-internal-dialog-gap: var(--quantic-spacing-5);
2944
2974
  }
2945
2975
 
2946
2976
  .size--xl {
2947
2977
  max-width: var(--quantic-component-dialog-max-width-xl);
2948
- --quantic-component-dialog-padding-inline: var(--quantic-spacing-8);
2949
- --quantic-component-dialog-padding-block: var(--quantic-spacing-8);
2950
- --quantic-component-dialog-gap: var(--quantic-spacing-6);
2978
+ --quantic-internal-dialog-padding-inline: var(--quantic-spacing-8);
2979
+ --quantic-internal-dialog-padding-block: var(--quantic-spacing-8);
2980
+ --quantic-internal-dialog-gap: var(--quantic-spacing-6);
2951
2981
  }
2952
2982
 
2953
2983
  .close-button {
@@ -2970,7 +3000,7 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2970
3000
  .body,
2971
3001
  .footer {
2972
3002
  display: block;
2973
- padding-inline: var(--quantic-component-dialog-padding-inline);
3003
+ padding-inline: var(--quantic-component-dialog-padding-inline, var(--quantic-internal-dialog-padding-inline));
2974
3004
  }
2975
3005
 
2976
3006
  .body {
@@ -2994,10 +3024,10 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
2994
3024
  .trigger {
2995
3025
  display: contents;
2996
3026
  }
2997
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the dialog is visible."})],e.Dialog.prototype,"open",void 0),t([fe({type:"DialogSize",options:Object.values(Cn),default:Cn.Medium,description:"Maximum width of the dialog panel."})],e.Dialog.prototype,"size",void 0),t([fe({type:"boolean",default:"true",description:"Shows a built-in close button in the top-right corner."})],e.Dialog.prototype,"showCloseButton",void 0),t([fe({type:"DialogBackdrop",options:Object.values(bn),default:bn.Opaque,description:"Style of the backdrop overlay."})],e.Dialog.prototype,"backdrop",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the dialog from being closed via Escape or backdrop click."})],e.Dialog.prototype,"persistent",void 0),t([fe({type:"DialogRole",options:Object.values(Mn),default:Mn.Dialog,description:'ARIA role for the dialog element. Use "alertdialog" for confirmation dialogs.'})],e.Dialog.prototype,"role",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label when the dialog has no visible heading."})],e.Dialog.prototype,"ariaLabel",void 0),t([xe("quantic-dialog-backdrop")],e.Dialog.prototype,"backdropElement",void 0),t([xe(".wrapper")],e.Dialog.prototype,"wrapperElement",void 0),t([xe(".main")],e.Dialog.prototype,"mainElement",void 0),t([xe('slot[name="trigger"]')],e.Dialog.prototype,"triggerSlot",void 0),t([xe('slot[name="header"]')],e.Dialog.prototype,"headerSlot",void 0),e.Dialog=t([Ce("open-changed",{description:"Fired when the dialog open state changes.",detail:"{ open: boolean }"}),Ce("before-open",{description:"Fired before the dialog opens."}),Ce("after-open",{description:"Fired after the dialog opens and animations complete."}),Ce("before-close",{description:"Fired before the dialog closes."}),Ce("after-close",{description:"Fired after the dialog closes and animations complete."}),Se("quantic-dialog")],e.Dialog),e.ConfirmDialog=class extends qe{constructor(){super(...arguments),this.open=!1,this.heading="",this.message="",this.confirmText="Confirm",this.cancelText="Cancel",this.destructive=!1,this.loading=!1,this.persistent=!1,this.showCloseButton=!0,this.size=Cn.Small,this.handleConfirmClick=()=>{if(this.loading)return;const e=new Event("confirm",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1)},this.handleCancelClick=()=>{this.loading||(this.dispatchEvent(new Event("cancel",{bubbles:!0,composed:!0})),this.open=!1)},this.handleInnerBeforeClose=()=>{this.dispatchEvent(new Event("cancel",{bubbles:!0,composed:!0}))},this.handleInnerOpenChanged=e=>{const t=e.detail;this.open!==t.open&&(this.open=t.open)}}updated(e){super.updated(e),e.has("open")&&this.innerDialog&&(this.innerDialog.open=this.open)}get buttonSize(){return this.size===Cn.Large||this.size===Cn.XLarge?$e.Medium:$e.Small}render(){return W`
3027
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the dialog is visible."})],e.Dialog.prototype,"open",void 0),t([fe({type:"DialogSize",options:Object.values(bn),default:bn.Medium,description:"Maximum width of the dialog panel."})],e.Dialog.prototype,"size",void 0),t([fe({type:"boolean",default:"true",description:"Shows a built-in close button in the top-right corner."})],e.Dialog.prototype,"showCloseButton",void 0),t([fe({type:"DialogBackdrop",options:Object.values(Mn),default:Mn.Opaque,description:"Style of the backdrop overlay."})],e.Dialog.prototype,"backdrop",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the dialog from being closed via Escape or backdrop click."})],e.Dialog.prototype,"persistent",void 0),t([fe({type:"DialogRole",options:Object.values(qn),default:qn.Dialog,description:'ARIA role for the dialog element. Use "alertdialog" for confirmation dialogs.'})],e.Dialog.prototype,"role",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label when the dialog has no visible heading."})],e.Dialog.prototype,"ariaLabel",void 0),t([xe("quantic-dialog-backdrop")],e.Dialog.prototype,"backdropElement",void 0),t([xe(".wrapper")],e.Dialog.prototype,"wrapperElement",void 0),t([xe(".main")],e.Dialog.prototype,"mainElement",void 0),t([xe('slot[name="trigger"]')],e.Dialog.prototype,"triggerSlot",void 0),t([xe('slot[name="header"]')],e.Dialog.prototype,"headerSlot",void 0),e.Dialog=t([Ce("open-changed",{description:"Fired when the dialog open state changes.",detail:"{ open: boolean }"}),Ce("before-open",{description:"Fired before the dialog opens."}),Ce("after-open",{description:"Fired after the dialog opens and animations complete."}),Ce("before-close",{description:"Fired before the dialog closes."}),Ce("after-close",{description:"Fired after the dialog closes and animations complete."}),Se("quantic-dialog")],e.Dialog),e.ConfirmDialog=class extends qe{constructor(){super(...arguments),this.open=!1,this.heading="",this.message="",this.confirmText="Confirm",this.cancelText="Cancel",this.destructive=!1,this.loading=!1,this.persistent=!1,this.showCloseButton=!0,this.size=bn.Small,this.handleConfirmClick=()=>{if(this.loading)return;const e=new Event("confirm",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1)},this.handleCancelClick=()=>{this.loading||(this.dispatchEvent(new Event("cancel",{bubbles:!0,composed:!0})),this.open=!1)},this.handleInnerBeforeClose=()=>{this.dispatchEvent(new Event("cancel",{bubbles:!0,composed:!0}))},this.handleInnerOpenChanged=e=>{const t=e.detail;this.open!==t.open&&(this.open=t.open)}}updated(e){super.updated(e),e.has("open")&&this.innerDialog&&(this.innerDialog.open=this.open)}get buttonSize(){return this.size===bn.Large||this.size===bn.XLarge?$e.Medium:$e.Small}render(){return W`
2998
3028
  <quantic-dialog
2999
3029
  .size=${this.size}
3000
- .role=${Mn.AlertDialog}
3030
+ .role=${qn.AlertDialog}
3001
3031
  ?persistent=${this.persistent||this.loading}
3002
3032
  ?show-close-button=${this.showCloseButton&&!this.loading}
3003
3033
  @before-close=${this.handleInnerBeforeClose}
@@ -3060,7 +3090,7 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
3060
3090
  [hidden] {
3061
3091
  display: none;
3062
3092
  }
3063
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the dialog is visible."})],e.ConfirmDialog.prototype,"open",void 0),t([fe({type:"string",description:"Heading shown in the dialog header."})],e.ConfirmDialog.prototype,"heading",void 0),t([fe({type:"string",description:"Body message. Ignored if default slot has content. Use the slot for rich content."})],e.ConfirmDialog.prototype,"message",void 0),t([fe({type:"string",attribute:"confirm-text",default:'"Confirm"',description:"Label for the confirm action button."})],e.ConfirmDialog.prototype,"confirmText",void 0),t([fe({type:"string",attribute:"cancel-text",default:'"Cancel"',description:"Label for the cancel action button."})],e.ConfirmDialog.prototype,"cancelText",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Renders the confirm button in error/danger colors. Use for irreversible actions such as delete or remove."})],e.ConfirmDialog.prototype,"destructive",void 0),t([fe({type:"boolean",default:"false",description:"Disables both action buttons. Set while performing an async action after a confirm event."})],e.ConfirmDialog.prototype,"loading",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the dialog from being closed via Escape, backdrop, or the close button."})],e.ConfirmDialog.prototype,"persistent",void 0),t([fe({type:"boolean",attribute:"show-close-button",default:"true",description:"Shows the close (X) button in the top-right corner."})],e.ConfirmDialog.prototype,"showCloseButton",void 0),t([fe({type:"DialogSize",options:Object.values(Cn),default:Cn.Small,description:"Maximum width of the dialog panel."})],e.ConfirmDialog.prototype,"size",void 0),t([xe("quantic-dialog")],e.ConfirmDialog.prototype,"innerDialog",void 0),e.ConfirmDialog=t([Ce("confirm",{description:"Fired when the confirm button is clicked. Cancellable — call preventDefault() to keep the dialog open (e.g. while performing an async action with `loading`)."}),Ce("cancel",{description:"Fired when the dialog is dismissed via the cancel button, close button, Escape, or backdrop click."}),Se("quantic-confirm-dialog")],e.ConfirmDialog);const ho={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl"},po="dropdown-menu.size",go={Top:"top",TopStart:"top-start",TopEnd:"top-end",Bottom:"bottom",BottomStart:"bottom-start",BottomEnd:"bottom-end",Left:"left",LeftStart:"left-start",LeftEnd:"left-end",Right:"right",RightStart:"right-start",RightEnd:"right-end"},vo={Click:"click",Hover:"hover",Focus:"focus",Manual:"manual"};e.PopoverPopup=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.visible=!1}render(){return W`
3093
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the dialog is visible."})],e.ConfirmDialog.prototype,"open",void 0),t([fe({type:"string",description:"Heading shown in the dialog header."})],e.ConfirmDialog.prototype,"heading",void 0),t([fe({type:"string",description:"Body message. Ignored if default slot has content. Use the slot for rich content."})],e.ConfirmDialog.prototype,"message",void 0),t([fe({type:"string",attribute:"confirm-text",default:'"Confirm"',description:"Label for the confirm action button."})],e.ConfirmDialog.prototype,"confirmText",void 0),t([fe({type:"string",attribute:"cancel-text",default:'"Cancel"',description:"Label for the cancel action button."})],e.ConfirmDialog.prototype,"cancelText",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Renders the confirm button in error/danger colors. Use for irreversible actions such as delete or remove."})],e.ConfirmDialog.prototype,"destructive",void 0),t([fe({type:"boolean",default:"false",description:"Disables both action buttons. Set while performing an async action after a confirm event."})],e.ConfirmDialog.prototype,"loading",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the dialog from being closed via Escape, backdrop, or the close button."})],e.ConfirmDialog.prototype,"persistent",void 0),t([fe({type:"boolean",attribute:"show-close-button",default:"true",description:"Shows the close (X) button in the top-right corner."})],e.ConfirmDialog.prototype,"showCloseButton",void 0),t([fe({type:"DialogSize",options:Object.values(bn),default:bn.Small,description:"Maximum width of the dialog panel."})],e.ConfirmDialog.prototype,"size",void 0),t([xe("quantic-dialog")],e.ConfirmDialog.prototype,"innerDialog",void 0),e.ConfirmDialog=t([Ce("confirm",{description:"Fired when the confirm button is clicked. Cancellable — call preventDefault() to keep the dialog open (e.g. while performing an async action with `loading`)."}),Ce("cancel",{description:"Fired when the dialog is dismissed via the cancel button, close button, Escape, or backdrop click."}),Se("quantic-confirm-dialog")],e.ConfirmDialog);const po={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl"},go="dropdown-menu.size",vo={Top:"top",TopStart:"top-start",TopEnd:"top-end",Bottom:"bottom",BottomStart:"bottom-start",BottomEnd:"bottom-end",Left:"left",LeftStart:"left-start",LeftEnd:"left-end",Right:"right",RightStart:"right-start",RightEnd:"right-end"},wo={Click:"click",Hover:"hover",Focus:"focus",Manual:"manual"};e.PopoverPopup=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.visible=!1}render(){return W`
3064
3094
  <div class="main">
3065
3095
  <slot name="header"></slot>
3066
3096
  <slot></slot>
@@ -3158,7 +3188,7 @@ function Xn(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,n=Array(t);i<t;
3158
3188
  * Copyright 2018 Google LLC
3159
3189
  * SPDX-License-Identifier: BSD-3-Clause
3160
3190
  */
3161
- const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e),e.type!==Ee||"style"!==e.name||e.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(e){return Object.keys(e).reduce((t,i)=>{const n=e[i];return null==n?t:t+`${i=i.includes("-")?i:i.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`},"")}update(e,[t]){const{style:i}=e.element;if(void 0===this.ft)return this.ft=new Set(Object.keys(t)),this.render(t);for(const e of this.ft)null==t[e]&&(this.ft.delete(e),e.includes("-")?i.removeProperty(e):i[e]=null);for(const e in t){const n=t[e];if(null!=n){this.ft.add(e);const t="string"==typeof n&&n.endsWith(mo);e.includes("-")||t?i.setProperty(e,t?n.slice(0,-11):n,t?wo:""):i[e]=n}}return K}});e.PopoverPopup.ensureDefined(),e.Button.ensureDefined(),e.LucideIconX.ensureDefined(),e.Popover=class extends qe{constructor(){super(...arguments),this.placement=go.Bottom,this.trigger=vo.Click,this.open=!1,this.offset=8,this.disabled=!1,this.closeable=!1,this.popoverId=rt("popover"),this.handleTriggerClick=e=>{this.disabled||this.trigger!==vo.Click||(e.stopPropagation(),this.toggle())},this.handleTriggerMouseEnter=()=>{this.disabled||this.trigger!==vo.Hover||(this.clearTimeouts(),this.showTimeout=window.setTimeout(()=>this.show(),150))},this.handleTriggerMouseLeave=()=>{this.disabled||this.trigger!==vo.Hover||(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),150))},this.handleTriggerFocus=()=>{this.disabled||this.trigger!==vo.Focus||this.show()},this.handleTriggerBlur=()=>{this.disabled||this.trigger!==vo.Focus||this.hide()},this.handlePopupMouseEnter=()=>{this.trigger===vo.Hover&&this.clearTimeouts()},this.handlePopupMouseLeave=()=>{this.trigger===vo.Hover&&(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),150))},this.handleEscape=e=>{"Escape"===e.key&&this.open&&this.hide()},this.handleClickOutside=e=>{const t=e.composedPath(),i=t.includes(this)||this.popup&&t.includes(this.popup);this.open&&!i&&this.hide()},this.hide=async()=>{if(!this.open)return;const e=new Event("before-close",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1,this.updateTriggerAria(),this.popup&&(this.cleanup?.(),this.popup.visible=!1,this.removeClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!1},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("after-close",{bubbles:!0,composed:!0}))))}}connectedCallback(){super.connectedCallback(),this.addEventListener("popover-close",this.hide)}firstUpdated(){this.open&&this.show()}disconnectedCallback(){super.disconnectedCallback(),this.clearTimeouts(),this.cleanup?.(),this.removeClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),this.removeEventListener("popover-close",this.hide)}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}handleSlotChange(){const e=this.triggerElement;e&&(e.setAttribute("aria-controls",this.popoverId),e.setAttribute("aria-expanded",this.open?"true":"false"))}clearTimeouts(){this.showTimeout&&clearTimeout(this.showTimeout),this.hideTimeout&&clearTimeout(this.hideTimeout),this.showTimeout=void 0,this.hideTimeout=void 0}addClickOutsideListener(){document.addEventListener("click",this.handleClickOutside,!0)}removeClickOutsideListener(){document.removeEventListener("click",this.handleClickOutside,!0)}async toggle(){this.open?await this.hide():await this.show()}async show(){if(this.disabled||this.open)return;const e=new Event("before-open",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!0,this.updateTriggerAria(),this.popup&&this.triggerElement&&(await this.popup.updateComplete,this.popup.visible=!0,this.popup.id=this.popoverId,this.popup.setAttribute("role","dialog"),this.popup.setAttribute("aria-modal","true"),this.updatePosition(),this.removeClickOutsideListener(),this.addClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),document.addEventListener("keydown",this.handleEscape),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!0},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("after-open",{bubbles:!0,composed:!0}))))}updateTriggerAria(){const e=this.triggerElement;e&&e.setAttribute("aria-expanded",this.open?"true":"false")}updatePosition(){if(this.triggerElement&&this.popup){const e=[Ui(this.offset),Zi(),Gi({padding:8})];this.cleanup=Ei(this.triggerElement,this.popup,async()=>{if(!this.triggerElement||!this.popup)return;const{x:t,y:i}=await Wi(this.triggerElement,this.popup,{placement:this.placement,middleware:e,strategy:"fixed"});Object.assign(this.popup.style,{left:`${t}px`,top:`${i}px`})})}}isLeftAligned(){return this.placement===go.Left||this.placement===go.LeftStart||this.placement===go.LeftEnd}isRightAligned(){return this.placement===go.Right||this.placement===go.RightStart||this.placement===go.RightEnd}isTopAligned(){return this.placement===go.Top||this.placement===go.TopStart||this.placement===go.TopEnd}isBottomAligned(){return this.placement===go.Bottom||this.placement===go.BottomStart||this.placement===go.BottomEnd}get originY(){return this.isTopAligned()?1:this.isBottomAligned()?-1:0}get originX(){return this.isLeftAligned()?1:this.isRightAligned()?-1:0}render(){return W`
3191
+ const mo="important",ko=" !"+mo,yo=Ge(class extends Ze{constructor(e){if(super(e),e.type!==Ee||"style"!==e.name||e.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(e){return Object.keys(e).reduce((t,i)=>{const n=e[i];return null==n?t:t+`${i=i.includes("-")?i:i.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`},"")}update(e,[t]){const{style:i}=e.element;if(void 0===this.ft)return this.ft=new Set(Object.keys(t)),this.render(t);for(const e of this.ft)null==t[e]&&(this.ft.delete(e),e.includes("-")?i.removeProperty(e):i[e]=null);for(const e in t){const n=t[e];if(null!=n){this.ft.add(e);const t="string"==typeof n&&n.endsWith(ko);e.includes("-")||t?i.setProperty(e,t?n.slice(0,-11):n,t?mo:""):i[e]=n}}return K}});e.PopoverPopup.ensureDefined(),e.Button.ensureDefined(),e.LucideIconX.ensureDefined(),e.Popover=class extends qe{constructor(){super(...arguments),this.placement=vo.Bottom,this.trigger=wo.Click,this.open=!1,this.offset=8,this.disabled=!1,this.closeable=!1,this.popoverId=rt("popover"),this.handleTriggerClick=e=>{this.disabled||this.trigger!==wo.Click||(e.stopPropagation(),this.toggle())},this.handleTriggerMouseEnter=()=>{this.disabled||this.trigger!==wo.Hover||(this.clearTimeouts(),this.showTimeout=window.setTimeout(()=>this.show(),150))},this.handleTriggerMouseLeave=()=>{this.disabled||this.trigger!==wo.Hover||(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),150))},this.handleTriggerFocus=()=>{this.disabled||this.trigger!==wo.Focus||this.show()},this.handleTriggerBlur=()=>{this.disabled||this.trigger!==wo.Focus||this.hide()},this.handlePopupMouseEnter=()=>{this.trigger===wo.Hover&&this.clearTimeouts()},this.handlePopupMouseLeave=()=>{this.trigger===wo.Hover&&(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),150))},this.handleEscape=e=>{"Escape"===e.key&&this.open&&this.hide()},this.handleClickOutside=e=>{const t=e.composedPath(),i=t.includes(this)||this.popup&&t.includes(this.popup);this.open&&!i&&this.hide()},this.hide=async()=>{if(!this.open)return;const e=new Event("before-close",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!1,this.updateTriggerAria(),this.popup&&(this.cleanup?.(),this.popup.visible=!1,this.removeClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!1},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("after-close",{bubbles:!0,composed:!0}))))}}connectedCallback(){super.connectedCallback(),this.addEventListener("popover-close",this.hide)}firstUpdated(){this.open&&this.show()}disconnectedCallback(){super.disconnectedCallback(),this.clearTimeouts(),this.cleanup?.(),this.removeClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),this.removeEventListener("popover-close",this.hide)}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}handleSlotChange(){const e=this.triggerElement;e&&(e.setAttribute("aria-controls",this.popoverId),e.setAttribute("aria-expanded",this.open?"true":"false"))}clearTimeouts(){this.showTimeout&&clearTimeout(this.showTimeout),this.hideTimeout&&clearTimeout(this.hideTimeout),this.showTimeout=void 0,this.hideTimeout=void 0}addClickOutsideListener(){document.addEventListener("click",this.handleClickOutside,!0)}removeClickOutsideListener(){document.removeEventListener("click",this.handleClickOutside,!0)}async toggle(){this.open?await this.hide():await this.show()}async show(){if(this.disabled||this.open)return;const e=new Event("before-open",{cancelable:!0,bubbles:!0,composed:!0});this.dispatchEvent(e),e.defaultPrevented||(this.open=!0,this.updateTriggerAria(),this.popup&&this.triggerElement&&(await this.popup.updateComplete,this.popup.visible=!0,this.popup.id=this.popoverId,this.popup.setAttribute("role","dialog"),this.popup.setAttribute("aria-modal","true"),this.updatePosition(),this.removeClickOutsideListener(),this.addClickOutsideListener(),document.removeEventListener("keydown",this.handleEscape),document.addEventListener("keydown",this.handleEscape),this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:!0},bubbles:!0,composed:!0})),this.dispatchEvent(new Event("after-open",{bubbles:!0,composed:!0}))))}updateTriggerAria(){const e=this.triggerElement;e&&e.setAttribute("aria-expanded",this.open?"true":"false")}updatePosition(){if(this.triggerElement&&this.popup){const e=[Ui(this.offset),Zi(),Gi({padding:8})];this.cleanup=Ei(this.triggerElement,this.popup,async()=>{if(!this.triggerElement||!this.popup)return;const{x:t,y:i}=await Wi(this.triggerElement,this.popup,{placement:this.placement,middleware:e,strategy:"fixed"});Object.assign(this.popup.style,{left:`${t}px`,top:`${i}px`})})}}isLeftAligned(){return this.placement===vo.Left||this.placement===vo.LeftStart||this.placement===vo.LeftEnd}isRightAligned(){return this.placement===vo.Right||this.placement===vo.RightStart||this.placement===vo.RightEnd}isTopAligned(){return this.placement===vo.Top||this.placement===vo.TopStart||this.placement===vo.TopEnd}isBottomAligned(){return this.placement===vo.Bottom||this.placement===vo.BottomStart||this.placement===vo.BottomEnd}get originY(){return this.isTopAligned()?1:this.isBottomAligned()?-1:0}get originX(){return this.isLeftAligned()?1:this.isRightAligned()?-1:0}render(){return W`
3162
3192
  <div
3163
3193
  class="trigger"
3164
3194
  @click=${this.handleTriggerClick}
@@ -3170,7 +3200,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3170
3200
  <slot name="trigger" @slotchange=${this.handleSlotChange}></slot>
3171
3201
  </div>
3172
3202
  <quantic-popover-popup
3173
- style=${ko({"--origin-y":this.originY,"--origin-x":this.originX})}
3203
+ style=${yo({"--origin-y":this.originY,"--origin-x":this.originX})}
3174
3204
  @slotchange=${this.handleSlotChange}
3175
3205
  @mouseenter=${this.handlePopupMouseEnter}
3176
3206
  @mouseleave=${this.handlePopupMouseLeave}
@@ -3215,7 +3245,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3215
3245
  top: var(--quantic-spacing-2);
3216
3246
  right: var(--quantic-spacing-2);
3217
3247
  }
3218
- `,t([fe({type:"PopoverPlacement",options:Object.values(go),default:go.Bottom,description:"Preferred placement of the popup relative to the trigger."})],e.Popover.prototype,"placement",void 0),t([fe({type:"PopoverTrigger",options:Object.values(vo),default:vo.Click,description:'Interaction that opens the popover: "click", "hover", "focus", or "manual".'})],e.Popover.prototype,"trigger",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the popover is currently open."})],e.Popover.prototype,"open",void 0),t([fe({type:"number",default:"8",description:"Distance in pixels between the trigger and the popup."})],e.Popover.prototype,"offset",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the popover from opening."})],e.Popover.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Shows a close button inside the popup."})],e.Popover.prototype,"closeable",void 0),t([xe('slot[name="trigger"]')],e.Popover.prototype,"triggerSlot",void 0),t([xe("quantic-popover-popup")],e.Popover.prototype,"popup",void 0),e.Popover=t([Ce("open-changed",{description:"Fired when the popover open state changes.",detail:"{ open: boolean }"}),Ce("before-open",{description:"Fired before the popover opens."}),Ce("after-open",{description:"Fired after the popover opens and animations complete."}),Ce("before-close",{description:"Fired before the popover closes."}),Ce("after-close",{description:"Fired after the popover closes and animations complete."}),Se("quantic-popover")],e.Popover),e.Popover.ensureDefined(),e.DropdownMenu=class extends qe{constructor(){super(...arguments),this.size=ho.Medium,this.placement=go.BottomStart,this.open=!1,this.persistent=!1,this.disabled=!1,this.offset=4,this.focusedIndex=0,this.keyHandlers={ArrowDown:()=>this.focusItemAtIndex(this.focusedIndex+1),ArrowUp:()=>this.focusItemAtIndex(this.focusedIndex-1),Home:()=>this.focusItemAtIndex(0),End:()=>{const e=this.getMenuItems();this.focusItemAtIndex(e.length-1)},Escape:()=>this.close(),Tab:()=>this.close()}}connectedCallback(){super.connectedCallback(),this.addEventListener("item-selected",this.handleItemSelected)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("item-selected",this.handleItemSelected)}getMenuItems(){return this.menuItems.filter(e=>"quantic-dropdown-menu-item"===e.tagName.toLowerCase()&&!e.hasAttribute("disabled"))}focusItemAtIndex(e){const t=this.getMenuItems();0!==t.length&&(this.focusedIndex=st(e,0,t.length-1),t[this.focusedIndex].focus())}handleKeyDown(e){if(!this.open)return;if(0===this.getMenuItems().length)return;const t=this.keyHandlers[e.key];t&&(e.preventDefault(),e.stopPropagation(),t())}handleItemSelected(e){e.target!==this&&(e.stopPropagation(),this.dispatchEvent(new CustomEvent("item-selected",{detail:e.detail,bubbles:!0,composed:!0})),this.persistent||this.close())}handleOpenChanged(e){this.open=e.detail.open,this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:this.open},bubbles:!0,composed:!0}))}handleAfterOpen(){this.updateComplete.then(()=>{this.focusedIndex=0,this.focusItemAtIndex(0)})}async toggle(){await(this.popoverElement?.toggle())}async show(){await(this.popoverElement?.show())}async close(){this.focusedIndex=0,await(this.popoverElement?.hide())}render(){return W`
3248
+ `,t([fe({type:"PopoverPlacement",options:Object.values(vo),default:vo.Bottom,description:"Preferred placement of the popup relative to the trigger."})],e.Popover.prototype,"placement",void 0),t([fe({type:"PopoverTrigger",options:Object.values(wo),default:wo.Click,description:'Interaction that opens the popover: "click", "hover", "focus", or "manual".'})],e.Popover.prototype,"trigger",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the popover is currently open."})],e.Popover.prototype,"open",void 0),t([fe({type:"number",default:"8",description:"Distance in pixels between the trigger and the popup."})],e.Popover.prototype,"offset",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the popover from opening."})],e.Popover.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Shows a close button inside the popup."})],e.Popover.prototype,"closeable",void 0),t([xe('slot[name="trigger"]')],e.Popover.prototype,"triggerSlot",void 0),t([xe("quantic-popover-popup")],e.Popover.prototype,"popup",void 0),e.Popover=t([Ce("open-changed",{description:"Fired when the popover open state changes.",detail:"{ open: boolean }"}),Ce("before-open",{description:"Fired before the popover opens."}),Ce("after-open",{description:"Fired after the popover opens and animations complete."}),Ce("before-close",{description:"Fired before the popover closes."}),Ce("after-close",{description:"Fired after the popover closes and animations complete."}),Se("quantic-popover")],e.Popover),e.Popover.ensureDefined(),e.DropdownMenu=class extends qe{constructor(){super(...arguments),this.size=po.Medium,this.placement=vo.BottomStart,this.open=!1,this.persistent=!1,this.disabled=!1,this.offset=4,this.focusedIndex=0,this.keyHandlers={ArrowDown:()=>this.focusItemAtIndex(this.focusedIndex+1),ArrowUp:()=>this.focusItemAtIndex(this.focusedIndex-1),Home:()=>this.focusItemAtIndex(0),End:()=>{const e=this.getMenuItems();this.focusItemAtIndex(e.length-1)},Escape:()=>this.close(),Tab:()=>this.close()}}connectedCallback(){super.connectedCallback(),this.addEventListener("item-selected",this.handleItemSelected)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("item-selected",this.handleItemSelected)}getMenuItems(){return this.menuItems.filter(e=>"quantic-dropdown-menu-item"===e.tagName.toLowerCase()&&!e.hasAttribute("disabled"))}focusItemAtIndex(e){const t=this.getMenuItems();0!==t.length&&(this.focusedIndex=st(e,0,t.length-1),t[this.focusedIndex].focus())}handleKeyDown(e){if(!this.open)return;if(0===this.getMenuItems().length)return;const t=this.keyHandlers[e.key];t&&(e.preventDefault(),e.stopPropagation(),t())}handleItemSelected(e){e.target!==this&&(e.stopPropagation(),this.dispatchEvent(new CustomEvent("item-selected",{detail:e.detail,bubbles:!0,composed:!0})),this.persistent||this.close())}handleOpenChanged(e){this.open=e.detail.open,this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:this.open},bubbles:!0,composed:!0}))}handleAfterOpen(){this.updateComplete.then(()=>{this.focusedIndex=0,this.focusItemAtIndex(0)})}async toggle(){await(this.popoverElement?.toggle())}async show(){await(this.popoverElement?.show())}async close(){this.focusedIndex=0,await(this.popoverElement?.hide())}render(){return W`
3219
3249
  <quantic-popover
3220
3250
  placement=${this.placement}
3221
3251
  trigger="click"
@@ -3278,7 +3308,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3278
3308
  overflow-y: auto;
3279
3309
  padding: var(--quantic-component-dropdown-menu-padding);
3280
3310
  }
3281
- `,t([rn({context:po}),fe({type:"DropdownMenuSize",options:Object.values(ho),default:ho.Medium,description:"Size passed down to all child menu items."})],e.DropdownMenu.prototype,"size",void 0),t([fe({type:"PopoverPlacement",options:Object.values(go),default:go.BottomStart,description:"Preferred placement of the floating menu relative to the trigger."})],e.DropdownMenu.prototype,"placement",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the menu is currently open."})],e.DropdownMenu.prototype,"open",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"When true, the menu stays open after an item is selected."})],e.DropdownMenu.prototype,"persistent",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the trigger from opening the menu."})],e.DropdownMenu.prototype,"disabled",void 0),t([fe({type:"number",default:"4",description:"Distance in pixels between the trigger and the floating menu."})],e.DropdownMenu.prototype,"offset",void 0),t([xe("quantic-popover")],e.DropdownMenu.prototype,"popoverElement",void 0),t([xe(".menu-content")],e.DropdownMenu.prototype,"menuContent",void 0),t([function(e){return(t,i)=>{const{slot:n,selector:o}=e??{},s="slot"+(n?`[name=${n}]`:":not([name])");return ye(t,i,{get(){const t=this.renderRoot?.querySelector(s),i=t?.assignedElements(e)??[];return void 0===o?i:i.filter(e=>e.matches(o))}})}}({flatten:!0})],e.DropdownMenu.prototype,"menuItems",void 0),e.DropdownMenu=t([Ce("open-changed",{description:"Fired when the dropdown menu open state changes.",detail:"{ open: boolean }"}),Ce("item-selected",{description:"Fired when a menu item is selected.",detail:"{ value: string }"}),Se("quantic-dropdown-menu")],e.DropdownMenu),e.DropdownMenuItem=class extends qe{constructor(){super(...arguments),this.as="button",this.disabled=!1,this.selected=!1,this.value="",this.destructive=!1,this.label=""}focus(e){this.mainEl?.focus(e)}handleClick(e){if(this.disabled)return e.preventDefault(),void e.stopPropagation();this.dispatchEvent(new CustomEvent("item-selected",{detail:{value:this.value},bubbles:!0,composed:!0,cancelable:!1}))}render(){const e=Ne({main:!0,[`size--${this.size}`]:!!this.size,"is-selected":this.selected,"is-destructive":this.destructive}),t=this.rel??("_blank"===this.target?"noopener noreferrer":void 0);return"a"===this.as?W`<a
3311
+ `,t([rn({context:go}),fe({type:"DropdownMenuSize",options:Object.values(po),default:po.Medium,description:"Size passed down to all child menu items."})],e.DropdownMenu.prototype,"size",void 0),t([fe({type:"PopoverPlacement",options:Object.values(vo),default:vo.BottomStart,description:"Preferred placement of the floating menu relative to the trigger."})],e.DropdownMenu.prototype,"placement",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the menu is currently open."})],e.DropdownMenu.prototype,"open",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"When true, the menu stays open after an item is selected."})],e.DropdownMenu.prototype,"persistent",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the trigger from opening the menu."})],e.DropdownMenu.prototype,"disabled",void 0),t([fe({type:"number",default:"4",description:"Distance in pixels between the trigger and the floating menu."})],e.DropdownMenu.prototype,"offset",void 0),t([xe("quantic-popover")],e.DropdownMenu.prototype,"popoverElement",void 0),t([xe(".menu-content")],e.DropdownMenu.prototype,"menuContent",void 0),t([function(e){return(t,i)=>{const{slot:n,selector:o}=e??{},s="slot"+(n?`[name=${n}]`:":not([name])");return ye(t,i,{get(){const t=this.renderRoot?.querySelector(s),i=t?.assignedElements(e)??[];return void 0===o?i:i.filter(e=>e.matches(o))}})}}({flatten:!0})],e.DropdownMenu.prototype,"menuItems",void 0),e.DropdownMenu=t([Ce("open-changed",{description:"Fired when the dropdown menu open state changes.",detail:"{ open: boolean }"}),Ce("item-selected",{description:"Fired when a menu item is selected.",detail:"{ value: string }"}),Se("quantic-dropdown-menu")],e.DropdownMenu),e.DropdownMenuItem=class extends qe{constructor(){super(...arguments),this.as="button",this.disabled=!1,this.selected=!1,this.value="",this.destructive=!1,this.label=""}focus(e){this.mainEl?.focus(e)}handleClick(e){if(this.disabled)return e.preventDefault(),void e.stopPropagation();this.dispatchEvent(new CustomEvent("item-selected",{detail:{value:this.value},bubbles:!0,composed:!0,cancelable:!1}))}render(){const e=Ne({main:!0,[`size--${this.size}`]:!!this.size,"is-selected":this.selected,"is-destructive":this.destructive}),t=this.rel??("_blank"===this.target?"noopener noreferrer":void 0);return"a"===this.as?W`<a
3282
3312
  class=${e}
3283
3313
  role="menuitem"
3284
3314
  tabindex="-1"
@@ -3324,20 +3354,20 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3324
3354
  width: 100%;
3325
3355
  padding: var(
3326
3356
  --quantic-component-dropdown-menu-item-padding-block,
3327
- var(--quantic-spacing-2)
3357
+ var(--quantic-internal-dropdown-menu-item-padding-block, var(--quantic-spacing-2))
3328
3358
  )
3329
3359
  var(
3330
3360
  --quantic-component-dropdown-menu-item-padding-inline,
3331
- var(--quantic-spacing-3)
3361
+ var(--quantic-internal-dropdown-menu-item-padding-inline, var(--quantic-spacing-3))
3332
3362
  );
3333
3363
  font-family: var(--quantic-font-family-body);
3334
3364
  font-size: var(
3335
3365
  --quantic-component-dropdown-menu-item-font-size,
3336
- var(--quantic-font-size-body-sm)
3366
+ var(--quantic-internal-dropdown-menu-item-font-size, var(--quantic-font-size-body-sm))
3337
3367
  );
3338
3368
  line-height: var(
3339
3369
  --quantic-component-dropdown-menu-item-line-height,
3340
- var(--quantic-line-height-body-sm)
3370
+ var(--quantic-internal-dropdown-menu-item-line-height, var(--quantic-line-height-body-sm))
3341
3371
  );
3342
3372
  color: var(--quantic-text-primary);
3343
3373
  background: none;
@@ -3381,76 +3411,76 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3381
3411
 
3382
3412
  /* Size variants */
3383
3413
  .size--xs {
3384
- --quantic-component-dropdown-menu-item-padding-block: var(
3414
+ --quantic-internal-dropdown-menu-item-padding-block: var(
3385
3415
  --quantic-spacing-1
3386
3416
  );
3387
- --quantic-component-dropdown-menu-item-padding-inline: var(
3417
+ --quantic-internal-dropdown-menu-item-padding-inline: var(
3388
3418
  --quantic-spacing-1-5
3389
3419
  );
3390
- --quantic-component-dropdown-menu-item-font-size: var(
3420
+ --quantic-internal-dropdown-menu-item-font-size: var(
3391
3421
  --quantic-font-size-body-xs
3392
3422
  );
3393
- --quantic-component-dropdown-menu-item-line-height: var(
3423
+ --quantic-internal-dropdown-menu-item-line-height: var(
3394
3424
  --quantic-line-height-body-xs
3395
3425
  );
3396
3426
  }
3397
3427
 
3398
3428
  .size--sm {
3399
- --quantic-component-dropdown-menu-item-padding-block: var(
3429
+ --quantic-internal-dropdown-menu-item-padding-block: var(
3400
3430
  --quantic-spacing-1-5
3401
3431
  );
3402
- --quantic-component-dropdown-menu-item-padding-inline: var(
3432
+ --quantic-internal-dropdown-menu-item-padding-inline: var(
3403
3433
  --quantic-spacing-2
3404
3434
  );
3405
- --quantic-component-dropdown-menu-item-font-size: var(
3435
+ --quantic-internal-dropdown-menu-item-font-size: var(
3406
3436
  --quantic-font-size-body-sm
3407
3437
  );
3408
- --quantic-component-dropdown-menu-item-line-height: var(
3438
+ --quantic-internal-dropdown-menu-item-line-height: var(
3409
3439
  --quantic-line-height-body-sm
3410
3440
  );
3411
3441
  }
3412
3442
 
3413
3443
  .size--md {
3414
- --quantic-component-dropdown-menu-item-padding-block: var(
3444
+ --quantic-internal-dropdown-menu-item-padding-block: var(
3415
3445
  --quantic-spacing-2
3416
3446
  );
3417
- --quantic-component-dropdown-menu-item-padding-inline: var(
3447
+ --quantic-internal-dropdown-menu-item-padding-inline: var(
3418
3448
  --quantic-spacing-3
3419
3449
  );
3420
- --quantic-component-dropdown-menu-item-font-size: var(
3450
+ --quantic-internal-dropdown-menu-item-font-size: var(
3421
3451
  --quantic-font-size-body-md
3422
3452
  );
3423
- --quantic-component-dropdown-menu-item-line-height: var(
3453
+ --quantic-internal-dropdown-menu-item-line-height: var(
3424
3454
  --quantic-line-height-body-md
3425
3455
  );
3426
3456
  }
3427
3457
 
3428
3458
  .size--lg {
3429
- --quantic-component-dropdown-menu-item-padding-block: var(
3459
+ --quantic-internal-dropdown-menu-item-padding-block: var(
3430
3460
  --quantic-spacing-3
3431
3461
  );
3432
- --quantic-component-dropdown-menu-item-padding-inline: var(
3462
+ --quantic-internal-dropdown-menu-item-padding-inline: var(
3433
3463
  --quantic-spacing-4
3434
3464
  );
3435
- --quantic-component-dropdown-menu-item-font-size: var(
3465
+ --quantic-internal-dropdown-menu-item-font-size: var(
3436
3466
  --quantic-font-size-body-lg
3437
3467
  );
3438
- --quantic-component-dropdown-menu-item-line-height: var(
3468
+ --quantic-internal-dropdown-menu-item-line-height: var(
3439
3469
  --quantic-line-height-body-lg
3440
3470
  );
3441
3471
  }
3442
3472
 
3443
3473
  .size--xl {
3444
- --quantic-component-dropdown-menu-item-padding-block: var(
3474
+ --quantic-internal-dropdown-menu-item-padding-block: var(
3445
3475
  --quantic-spacing-3
3446
3476
  );
3447
- --quantic-component-dropdown-menu-item-padding-inline: var(
3477
+ --quantic-internal-dropdown-menu-item-padding-inline: var(
3448
3478
  --quantic-spacing-5
3449
3479
  );
3450
- --quantic-component-dropdown-menu-item-font-size: var(
3480
+ --quantic-internal-dropdown-menu-item-font-size: var(
3451
3481
  --quantic-font-size-body-xl
3452
3482
  );
3453
- --quantic-component-dropdown-menu-item-line-height: var(
3483
+ --quantic-internal-dropdown-menu-item-line-height: var(
3454
3484
  --quantic-line-height-body-xl
3455
3485
  );
3456
3486
  }
@@ -3468,7 +3498,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3468
3498
  overflow: visible;
3469
3499
  display: flex;
3470
3500
  }
3471
- `,t([an({context:po,subscribe:!0})],e.DropdownMenuItem.prototype,"size",void 0),t([xe(".main")],e.DropdownMenuItem.prototype,"mainEl",void 0),t([fe({type:'"button" | "a"',default:"button",description:'Underlying HTML element. Use "a" for navigation items.'})],e.DropdownMenuItem.prototype,"as",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and reduces opacity."})],e.DropdownMenuItem.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the item as the currently active selection."})],e.DropdownMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"Value emitted in the item-selected event detail."})],e.DropdownMenuItem.prototype,"value",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Renders in error/danger colors for destructive actions."})],e.DropdownMenuItem.prototype,"destructive",void 0),t([fe({type:"string",default:"",description:"Accessible label used as the element title attribute."})],e.DropdownMenuItem.prototype,"label",void 0),t([fe({type:"string",description:'URL for link items (as="a" only).'})],e.DropdownMenuItem.prototype,"href",void 0),t([fe({type:"string",description:'Link target (as="a" only).'})],e.DropdownMenuItem.prototype,"target",void 0),t([fe({type:"string",description:'Download filename (as="a" only).'})],e.DropdownMenuItem.prototype,"download",void 0),t([fe({type:"string",description:'Link rel attribute (as="a" only). Defaults to "noopener noreferrer" when target="_blank".'})],e.DropdownMenuItem.prototype,"rel",void 0),e.DropdownMenuItem=t([Ce("item-selected",{description:"Fired when the item is selected.",detail:"{ value: string }"}),Se("quantic-dropdown-menu-item")],e.DropdownMenuItem),e.DropdownMenuGroup=class extends(ze(qe,["label"])){constructor(){super(...arguments),this.label=""}render(){const e=!!this.label;return W`
3501
+ `,t([an({context:go,subscribe:!0})],e.DropdownMenuItem.prototype,"size",void 0),t([xe(".main")],e.DropdownMenuItem.prototype,"mainEl",void 0),t([fe({type:'"button" | "a"',default:"button",description:'Underlying HTML element. Use "a" for navigation items.'})],e.DropdownMenuItem.prototype,"as",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction and reduces opacity."})],e.DropdownMenuItem.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the item as the currently active selection."})],e.DropdownMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"Value emitted in the item-selected event detail."})],e.DropdownMenuItem.prototype,"value",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Renders in error/danger colors for destructive actions."})],e.DropdownMenuItem.prototype,"destructive",void 0),t([fe({type:"string",default:"",description:"Accessible label used as the element title attribute."})],e.DropdownMenuItem.prototype,"label",void 0),t([fe({type:"string",description:'URL for link items (as="a" only).'})],e.DropdownMenuItem.prototype,"href",void 0),t([fe({type:"string",description:'Link target (as="a" only).'})],e.DropdownMenuItem.prototype,"target",void 0),t([fe({type:"string",description:'Download filename (as="a" only).'})],e.DropdownMenuItem.prototype,"download",void 0),t([fe({type:"string",description:'Link rel attribute (as="a" only). Defaults to "noopener noreferrer" when target="_blank".'})],e.DropdownMenuItem.prototype,"rel",void 0),e.DropdownMenuItem=t([Ce("item-selected",{description:"Fired when the item is selected.",detail:"{ value: string }"}),Se("quantic-dropdown-menu-item")],e.DropdownMenuItem),e.DropdownMenuGroup=class extends(ze(qe,["label"])){constructor(){super(...arguments),this.label=""}render(){const e=!!this.label;return W`
3472
3502
  <div class="label" id="group-label" ?hidden=${!e}>
3473
3503
  <slot name="label">${this.label}</slot>
3474
3504
  </div>
@@ -3517,7 +3547,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3517
3547
  .label {
3518
3548
  display: block;
3519
3549
  }
3520
- `)],t([fe({type:"string",default:"",description:"Section heading displayed above the group items."})],e.DropdownMenuGroup.prototype,"label",void 0),e.DropdownMenuGroup=t([Se("quantic-dropdown-menu-group")],e.DropdownMenuGroup);const yo={Error:"error",Success:"success",Warning:"warning"},xo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Lo={Default:"default",Grid:"grid"},Io={Above:"above",Below:"below"},fo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};function Co(e,i,n){let o=class extends i{constructor(){super(...arguments),this.label="",this.hint="",this.message="",this.required=!1,this.fieldId=rt("field"),this.labelSlotText="",this.hintSlotText="",this.messageSlotText=""}get computedLabel(){return this.labelSlotText||this.label}get computedHint(){return this.hintSlotText||this.hint}get computedMessage(){return this.messageSlotText||this.message}getFieldA11yContext(){const e=(t=[this.computedHint,this.computedMessage],t.filter(e=>null!=e&&""!==e)).join(". ");var t;return{fieldId:this.fieldId,description:e,label:this.computedLabel,isInvalid:this.status===yo.Error,status:this.status}}render(){const e=this.getFieldA11yContext();return W`
3550
+ `)],t([fe({type:"string",default:"",description:"Section heading displayed above the group items."})],e.DropdownMenuGroup.prototype,"label",void 0),e.DropdownMenuGroup=t([Se("quantic-dropdown-menu-group")],e.DropdownMenuGroup);const xo={Error:"error",Success:"success",Warning:"warning"},Lo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Io={Default:"default",Grid:"grid"},fo={Above:"above",Below:"below"},Co={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};function bo(e,i,n){let o=class extends i{constructor(){super(...arguments),this.label="",this.hint="",this.message="",this.required=!1,this.fieldId=rt("field"),this.labelSlotText="",this.hintSlotText="",this.messageSlotText=""}get computedLabel(){return this.labelSlotText||this.label}get computedHint(){return this.hintSlotText||this.hint}get computedMessage(){return this.messageSlotText||this.message}getFieldA11yContext(){const e=(t=[this.computedHint,this.computedMessage],t.filter(e=>null!=e&&""!==e)).join(". ");var t;return{fieldId:this.fieldId,description:e,label:this.computedLabel,isInvalid:this.status===xo.Error,status:this.status}}render(){const e=this.getFieldA11yContext();return W`
3521
3551
  <quantic-field
3522
3552
  fieldId=${this.fieldId}
3523
3553
  ?required=${this.required}
@@ -3529,7 +3559,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3529
3559
  ${n.call(this,e)}
3530
3560
  <slot name="message" slot="message" @slotchange=${Ae(e=>this.messageSlotText=e)}>${this.message}</slot>
3531
3561
  </quantic-field>
3532
- `}};return t([fe({type:"string",default:"''",description:"Field label text. Prefer the label slot for rich content."})],o.prototype,"label",void 0),t([fe({type:"string",default:"''",description:"Helper text. Prefer the hint slot for rich content."})],o.prototype,"hint",void 0),t([fe({type:"string",default:"''",description:"Validation message text. Prefer the message slot for rich content."})],o.prototype,"message",void 0),t([fe({type:"boolean",default:"false",description:"Marks the field as required."})],o.prototype,"required",void 0),t([fe({type:"FieldValidationStatus",options:Object.values(yo),description:"Validation state controlling message color."})],o.prototype,"status",void 0),t([ke()],o.prototype,"labelSlotText",void 0),t([ke()],o.prototype,"hintSlotText",void 0),t([ke()],o.prototype,"messageSlotText",void 0),o=t([Se(`quantic-${e}-field`)],o),o}e.Field=class extends qe{constructor(){super(...arguments),this.fieldId="",this.label="",this.hint="",this.message="",this.required=!1,this.size=fo.Medium,this.hintPosition=Io.Below}render(){const e=!!this.label,t=!!this.hint,i=!!this.message,n=W`
3562
+ `}};return t([fe({type:"string",default:"''",description:"Field label text. Prefer the label slot for rich content."})],o.prototype,"label",void 0),t([fe({type:"string",default:"''",description:"Helper text. Prefer the hint slot for rich content."})],o.prototype,"hint",void 0),t([fe({type:"string",default:"''",description:"Validation message text. Prefer the message slot for rich content."})],o.prototype,"message",void 0),t([fe({type:"boolean",default:"false",description:"Marks the field as required."})],o.prototype,"required",void 0),t([fe({type:"FieldValidationStatus",options:Object.values(xo),description:"Validation state controlling message color."})],o.prototype,"status",void 0),t([ke()],o.prototype,"labelSlotText",void 0),t([ke()],o.prototype,"hintSlotText",void 0),t([ke()],o.prototype,"messageSlotText",void 0),o=t([Se(`quantic-${e}-field`)],o),o}e.Field=class extends qe{constructor(){super(...arguments),this.fieldId="",this.label="",this.hint="",this.message="",this.required=!1,this.size=Co.Medium,this.hintPosition=fo.Below}render(){const e=!!this.label,t=!!this.hint,i=!!this.message,n=W`
3533
3563
  <div
3534
3564
  id="hint-${this.fieldId}"
3535
3565
  class=${Ne({hint:!0,"is-empty":!t})}
@@ -3569,25 +3599,25 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3569
3599
  display: block;
3570
3600
  font-family: var(--quantic-font-family-body);
3571
3601
 
3572
- --quantic-component-field-label-font-size: var(
3602
+ --quantic-internal-field-label-font-size: var(
3573
3603
  --quantic-font-size-body-md
3574
3604
  );
3575
- --quantic-component-field-label-line-height: var(
3605
+ --quantic-internal-field-label-line-height: var(
3576
3606
  --quantic-line-height-body-md
3577
3607
  );
3578
- --quantic-component-field-hint-font-size: var(
3608
+ --quantic-internal-field-hint-font-size: var(
3579
3609
  --quantic-font-size-body-sm
3580
3610
  );
3581
- --quantic-component-field-hint-line-height: var(
3611
+ --quantic-internal-field-hint-line-height: var(
3582
3612
  --quantic-line-height-body-sm
3583
3613
  );
3584
- --quantic-component-field-gap: var(--quantic-spacing-2);
3614
+ --quantic-internal-field-gap: var(--quantic-spacing-2);
3585
3615
  }
3586
3616
 
3587
3617
  .main {
3588
3618
  display: flex;
3589
3619
  flex-direction: column;
3590
- gap: var(--quantic-component-field-gap);
3620
+ gap: var(--quantic-component-field-gap, var(--quantic-internal-field-gap));
3591
3621
  }
3592
3622
 
3593
3623
  .required-indicator {
@@ -3596,16 +3626,16 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3596
3626
  }
3597
3627
 
3598
3628
  .label {
3599
- font-size: var(--quantic-component-field-label-font-size);
3600
- line-height: var(--quantic-component-field-label-line-height);
3629
+ font-size: var(--quantic-component-field-label-font-size, var(--quantic-internal-field-label-font-size));
3630
+ line-height: var(--quantic-component-field-label-line-height, var(--quantic-internal-field-label-line-height));
3601
3631
  font-weight: var(--quantic-font-weight-medium);
3602
3632
  color: var(--quantic-text-primary);
3603
3633
  }
3604
3634
 
3605
3635
  .hint,
3606
3636
  .message {
3607
- font-size: var(--quantic-component-field-hint-font-size);
3608
- line-height: var(--quantic-component-field-hint-line-height);
3637
+ font-size: var(--quantic-component-field-hint-font-size, var(--quantic-internal-field-hint-font-size));
3638
+ line-height: var(--quantic-component-field-hint-line-height, var(--quantic-internal-field-hint-line-height));
3609
3639
  color: var(--quantic-text-secondary);
3610
3640
  }
3611
3641
 
@@ -3615,74 +3645,74 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3615
3645
  }
3616
3646
 
3617
3647
  .size--xs {
3618
- --quantic-component-field-label-font-size: var(
3648
+ --quantic-internal-field-label-font-size: var(
3619
3649
  --quantic-font-size-body-xs
3620
3650
  );
3621
- --quantic-component-field-label-line-height: var(
3651
+ --quantic-internal-field-label-line-height: var(
3622
3652
  --quantic-line-height-body-xs
3623
3653
  );
3624
- --quantic-component-field-hint-font-size: var(
3654
+ --quantic-internal-field-hint-font-size: var(
3625
3655
  --quantic-font-size-body-xs
3626
3656
  );
3627
- --quantic-component-field-hint-line-height: var(
3657
+ --quantic-internal-field-hint-line-height: var(
3628
3658
  --quantic-line-height-body-xs
3629
3659
  );
3630
- --quantic-component-field-gap: var(--quantic-spacing-1-5);
3660
+ --quantic-internal-field-gap: var(--quantic-spacing-1-5);
3631
3661
  }
3632
3662
 
3633
3663
  .size--sm {
3634
- --quantic-component-field-label-font-size: var(
3664
+ --quantic-internal-field-label-font-size: var(
3635
3665
  --quantic-font-size-body-sm
3636
3666
  );
3637
- --quantic-component-field-label-line-height: var(
3667
+ --quantic-internal-field-label-line-height: var(
3638
3668
  --quantic-line-height-body-sm
3639
3669
  );
3640
- --quantic-component-field-hint-font-size: var(
3670
+ --quantic-internal-field-hint-font-size: var(
3641
3671
  --quantic-font-size-body-xs
3642
3672
  );
3643
- --quantic-component-field-hint-line-height: var(
3673
+ --quantic-internal-field-hint-line-height: var(
3644
3674
  --quantic-line-height-body-xs
3645
3675
  );
3646
- --quantic-component-field-gap: var(--quantic-spacing-2);
3676
+ --quantic-internal-field-gap: var(--quantic-spacing-2);
3647
3677
  }
3648
3678
 
3649
3679
  .size--md {
3650
- --quantic-component-field-label-font-size: var(
3680
+ --quantic-internal-field-label-font-size: var(
3651
3681
  --quantic-font-size-body-md
3652
3682
  );
3653
- --quantic-component-field-label-line-height: var(
3683
+ --quantic-internal-field-label-line-height: var(
3654
3684
  --quantic-line-height-body-md
3655
3685
  );
3656
- --quantic-component-field-hint-font-size: var(
3686
+ --quantic-internal-field-hint-font-size: var(
3657
3687
  --quantic-font-size-body-sm
3658
3688
  );
3659
- --quantic-component-field-hint-line-height: var(
3689
+ --quantic-internal-field-hint-line-height: var(
3660
3690
  --quantic-line-height-body-sm
3661
3691
  );
3662
- --quantic-component-field-gap: var(--quantic-spacing-2);
3692
+ --quantic-internal-field-gap: var(--quantic-spacing-2);
3663
3693
  }
3664
3694
 
3665
3695
  .size--lg {
3666
- --quantic-component-field-label-font-size: var(
3696
+ --quantic-internal-field-label-font-size: var(
3667
3697
  --quantic-font-size-body-lg
3668
3698
  );
3669
- --quantic-component-field-label-line-height: var(
3699
+ --quantic-internal-field-label-line-height: var(
3670
3700
  --quantic-line-height-body-lg
3671
3701
  );
3672
- --quantic-component-field-hint-font-size: var(
3702
+ --quantic-internal-field-hint-font-size: var(
3673
3703
  --quantic-font-size-body-md
3674
3704
  );
3675
- --quantic-component-field-hint-line-height: var(
3705
+ --quantic-internal-field-hint-line-height: var(
3676
3706
  --quantic-line-height-body-md
3677
3707
  );
3678
- --quantic-component-field-gap: var(--quantic-spacing-2);
3708
+ --quantic-internal-field-gap: var(--quantic-spacing-2);
3679
3709
  }
3680
3710
 
3681
3711
  .control {
3682
3712
  flex: 1;
3683
3713
  display: flex;
3684
3714
  flex-direction: column;
3685
- gap: var(--quantic-component-field-gap);
3715
+ gap: var(--quantic-component-field-gap, var(--quantic-internal-field-gap));
3686
3716
  }
3687
3717
 
3688
3718
  .message--state-error {
@@ -3708,7 +3738,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3708
3738
  .message.is-empty {
3709
3739
  display: revert;
3710
3740
  }
3711
- `)],t([fe({type:"string",default:"''",description:"ID linking the label and hint/message elements to the control for accessibility."})],e.Field.prototype,"fieldId",void 0),t([fe({type:"string",default:"",description:"Label text. Prefer the label slot for rich content."})],e.Field.prototype,"label",void 0),t([fe({type:"string",default:"",description:"Helper text displayed near the control. Prefer the hint slot for rich content."})],e.Field.prototype,"hint",void 0),t([fe({type:"string",default:"",description:"Validation message text. Prefer the message slot for rich content."})],e.Field.prototype,"message",void 0),t([fe({type:"boolean",default:"false",description:"Appends a required indicator (*) to the label."})],e.Field.prototype,"required",void 0),t([fe({type:"FieldValidationStatus",options:Object.values(yo),description:"Validation state that controls message text color."})],e.Field.prototype,"status",void 0),t([fe({type:"FieldSize",options:Object.values(fo),default:fo.Medium,description:"Controls font size of label and hint text."})],e.Field.prototype,"size",void 0),t([fe({type:"FieldHintPosition",options:Object.values(Io),default:Io.Below,attribute:"hint-position",description:"Position of the hint relative to the control."})],e.Field.prototype,"hintPosition",void 0),e.Field=t([Se("quantic-field")],e.Field),e.FieldGroup=class extends qe{constructor(){super(...arguments),this.size=xo.Medium,this.layout=Lo.Default}get pinnedColumns(){return this.columns&&this.columns>0?this.columns:void 0}render(){const e=this.pinnedColumns,t=Ne({"field-group":!0,[`size--${this.size}`]:!0,[`layout--${this.layout}`]:!0,"fixed-columns":void 0!==e});return W`
3741
+ `)],t([fe({type:"string",default:"''",description:"ID linking the label and hint/message elements to the control for accessibility."})],e.Field.prototype,"fieldId",void 0),t([fe({type:"string",default:"",description:"Label text. Prefer the label slot for rich content."})],e.Field.prototype,"label",void 0),t([fe({type:"string",default:"",description:"Helper text displayed near the control. Prefer the hint slot for rich content."})],e.Field.prototype,"hint",void 0),t([fe({type:"string",default:"",description:"Validation message text. Prefer the message slot for rich content."})],e.Field.prototype,"message",void 0),t([fe({type:"boolean",default:"false",description:"Appends a required indicator (*) to the label."})],e.Field.prototype,"required",void 0),t([fe({type:"FieldValidationStatus",options:Object.values(xo),description:"Validation state that controls message text color."})],e.Field.prototype,"status",void 0),t([fe({type:"FieldSize",options:Object.values(Co),default:Co.Medium,description:"Controls font size of label and hint text."})],e.Field.prototype,"size",void 0),t([fe({type:"FieldHintPosition",options:Object.values(fo),default:fo.Below,attribute:"hint-position",description:"Position of the hint relative to the control."})],e.Field.prototype,"hintPosition",void 0),e.Field=t([Se("quantic-field")],e.Field),e.FieldGroup=class extends qe{constructor(){super(...arguments),this.size=Lo.Medium,this.layout=Io.Default}get pinnedColumns(){return this.columns&&this.columns>0?this.columns:void 0}render(){const e=this.pinnedColumns,t=Ne({"field-group":!0,[`size--${this.size}`]:!0,[`layout--${this.layout}`]:!0,"fixed-columns":void 0!==e});return W`
3712
3742
  <div
3713
3743
  class=${t}
3714
3744
  style=${e?`--quantic-component-field-group-columns: ${e}`:J}
@@ -3720,34 +3750,34 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3720
3750
  display: block;
3721
3751
  font-family: var(--quantic-font-family-body);
3722
3752
 
3723
- --quantic-component-field-group-gap: var(--quantic-spacing-4);
3724
- --quantic-component-field-group-grid-max-size: 300px;
3753
+ --quantic-internal-field-group-gap: var(--quantic-spacing-4);
3754
+ --quantic-internal-field-group-grid-max-size: 300px;
3725
3755
  }
3726
3756
 
3727
3757
  .field-group {
3728
3758
  display: flex;
3729
3759
  flex-direction: column;
3730
- gap: var(--quantic-component-field-group-gap);
3760
+ gap: var(--quantic-component-field-group-gap, var(--quantic-internal-field-group-gap));
3731
3761
  }
3732
3762
 
3733
3763
  .size--xs {
3734
- --quantic-component-field-group-gap: var(--quantic-spacing-1);
3735
- --quantic-component-field-group-grid-max-size: 180px;
3764
+ --quantic-internal-field-group-gap: var(--quantic-spacing-1);
3765
+ --quantic-internal-field-group-grid-max-size: 180px;
3736
3766
  }
3737
3767
 
3738
3768
  .size--sm {
3739
- --quantic-component-field-group-gap: var(--quantic-spacing-2);
3740
- --quantic-component-field-group-grid-max-size: 240px;
3769
+ --quantic-internal-field-group-gap: var(--quantic-spacing-2);
3770
+ --quantic-internal-field-group-grid-max-size: 240px;
3741
3771
  }
3742
3772
 
3743
3773
  .size--md {
3744
- --quantic-component-field-group-gap: var(--quantic-spacing-4);
3745
- --quantic-component-field-group-grid-max-size: 300px;
3774
+ --quantic-internal-field-group-gap: var(--quantic-spacing-4);
3775
+ --quantic-internal-field-group-grid-max-size: 300px;
3746
3776
  }
3747
3777
 
3748
3778
  .size--lg {
3749
- --quantic-component-field-group-gap: var(--quantic-spacing-6);
3750
- --quantic-component-field-group-grid-max-size: 360px;
3779
+ --quantic-internal-field-group-gap: var(--quantic-spacing-6);
3780
+ --quantic-internal-field-group-grid-max-size: 360px;
3751
3781
  }
3752
3782
 
3753
3783
  .layout--grid {
@@ -3755,7 +3785,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3755
3785
  grid-template-columns: repeat(
3756
3786
  var(--quantic-component-field-group-columns, auto-fit),
3757
3787
  minmax(
3758
- min(var(--quantic-component-field-group-grid-max-size), 100%),
3788
+ min(var(--quantic-component-field-group-grid-max-size, var(--quantic-internal-field-group-grid-max-size)), 100%),
3759
3789
  1fr
3760
3790
  )
3761
3791
  );
@@ -3763,7 +3793,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3763
3793
 
3764
3794
  .layout--grid.fixed-columns {
3765
3795
  grid-template-columns: repeat(
3766
- var(--quantic-component-field-group-columns),
3796
+ var(--quantic-component-field-group-columns, 1),
3767
3797
  minmax(0, 1fr)
3768
3798
  );
3769
3799
  }
@@ -3771,7 +3801,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3771
3801
  .layout--grid ::slotted(*) {
3772
3802
  min-width: 0;
3773
3803
  }
3774
- `,t([fe({type:"FieldGroupSize",options:Object.values(xo),default:xo.Medium,description:'Controls spacing between child fields, and the minimum column width when layout="grid".'})],e.FieldGroup.prototype,"size",void 0),t([fe({type:"FieldGroupLayout",options:Object.values(Lo),default:Lo.Default,description:'Layout mode. "grid" arranges fields in responsive columns.'})],e.FieldGroup.prototype,"layout",void 0),t([fe({type:"number",description:'When layout is "grid", pin this many equal columns instead of auto-fit wrapping. Unset keeps the size-based wrap. Also settable via --quantic-component-field-group-columns.'})],e.FieldGroup.prototype,"columns",void 0),e.FieldGroup=t([Se("quantic-field-group")],e.FieldGroup),e.Field.ensureDefined(),e.Checkbox.ensureDefined(),Co("checkbox",e.Checkbox,function(e){return W`
3804
+ `,t([fe({type:"FieldGroupSize",options:Object.values(Lo),default:Lo.Medium,description:'Controls spacing between child fields, and the minimum column width when layout="grid".'})],e.FieldGroup.prototype,"size",void 0),t([fe({type:"FieldGroupLayout",options:Object.values(Io),default:Io.Default,description:'Layout mode. "grid" arranges fields in responsive columns.'})],e.FieldGroup.prototype,"layout",void 0),t([fe({type:"number",description:'When layout is "grid", pin this many equal columns instead of auto-fit wrapping. Unset keeps the size-based wrap. Also settable via --quantic-component-field-group-columns.'})],e.FieldGroup.prototype,"columns",void 0),e.FieldGroup=t([Se("quantic-field-group")],e.FieldGroup),e.Field.ensureDefined(),e.Checkbox.ensureDefined(),bo("checkbox",e.Checkbox,function(e){return W`
3775
3805
  <quantic-checkbox
3776
3806
  .checked=${this.checked}
3777
3807
  .indeterminate=${this.indeterminate}
@@ -3787,7 +3817,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3787
3817
  >
3788
3818
  <slot></slot>
3789
3819
  </quantic-checkbox>
3790
- `}),Co("combobox",e.Combobox,function(e){return W`
3820
+ `}),bo("combobox",e.Combobox,function(e){return W`
3791
3821
  <quantic-combobox
3792
3822
  .value=${this.value}
3793
3823
  .name=${this.name}
@@ -3844,7 +3874,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3844
3874
  <path d="m2 2 20 20" />
3845
3875
  </svg>
3846
3876
 
3847
- `}},e.LucideIconEyeOff.styles=dt.styles,e.LucideIconEyeOff=t([Se("quantic-icon-lucide-eye-off")],e.LucideIconEyeOff);const bo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconCircleAlert.ensureDefined(),e.LucideIconEye.ensureDefined(),e.LucideIconEyeOff.ensureDefined(),e.Button.ensureDefined(),e.TextInput=class extends(Xi(qe)){constructor(){super(),this.value="",this.type="text",this.name="",this.placeholder="",this.size=bo.Medium,this.disabled=!1,this.required=!1,this.readOnly=!1,this.invalid=!1,this.autoComplete="off",this.showPassword=!1,this.internals=this.attachInternals()}togglePassword(){this.showPassword=!this.showPassword}get iconSize(){return{[bo.ExtraSmall]:Xe.ExtraSmall,[bo.Small]:Xe.ExtraSmall,[bo.Medium]:Xe.Small,[bo.Large]:Xe.Medium}[this.size]}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity()),at(this,e,this.value)}forwardNative(e){const t=e.target;this.value=t.value,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleKeyDown(e){this.forwardNative(e),"Enter"===e.key&&this.internals.form?.requestSubmit()}dispatchValueChanged(e){this.value=e.target.value}formResetCallback(){this.value="",this.internals.setFormValue("")}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("input");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
3877
+ `}},e.LucideIconEyeOff.styles=dt.styles,e.LucideIconEyeOff=t([Se("quantic-icon-lucide-eye-off")],e.LucideIconEyeOff);const Mo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconCircleAlert.ensureDefined(),e.LucideIconEye.ensureDefined(),e.LucideIconEyeOff.ensureDefined(),e.Button.ensureDefined(),e.TextInput=class extends(Xi(qe)){constructor(){super(),this.value="",this.type="text",this.name="",this.placeholder="",this.size=Mo.Medium,this.disabled=!1,this.required=!1,this.readOnly=!1,this.invalid=!1,this.autoComplete="off",this.showPassword=!1,this.internals=this.attachInternals()}togglePassword(){this.showPassword=!this.showPassword}get iconSize(){return{[Mo.ExtraSmall]:Xe.ExtraSmall,[Mo.Small]:Xe.ExtraSmall,[Mo.Medium]:Xe.Small,[Mo.Large]:Xe.Medium}[this.size]}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity()),at(this,e,this.value)}forwardNative(e){const t=e.target;this.value=t.value,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleKeyDown(e){this.forwardNative(e),"Enter"===e.key&&this.internals.form?.requestSubmit()}dispatchValueChanged(e){this.value=e.target.value}formResetCallback(){this.value="",this.internals.setFormValue("")}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("input");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
3848
3878
  <div class=${e}>
3849
3879
  <slot
3850
3880
  name="prefix"
@@ -3899,8 +3929,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3899
3929
  display: inline-block;
3900
3930
  width: 100%;
3901
3931
 
3902
- --quantic-component-text-input-padding-inline: var(--quantic-spacing-3);
3903
- --quantic-component-text-input-padding-block: var(--quantic-spacing-md);
3932
+ --quantic-internal-text-input-padding-inline: var(--quantic-spacing-3);
3933
+ --quantic-internal-text-input-padding-block: var(--quantic-spacing-md);
3904
3934
  --quantic-component-text-input-bg: var(--quantic-bg-primary);
3905
3935
  --quantic-component-text-input-color: var(--quantic-text-primary);
3906
3936
  }
@@ -3917,8 +3947,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3917
3947
  border-radius: var(--quantic-component-text-input-border-radius, var(--quantic-radius-sm));
3918
3948
  color: var(--quantic-component-text-input-color);
3919
3949
  background-color: var(--quantic-component-text-input-bg);
3920
- padding: var(--quantic-component-text-input-padding-block)
3921
- var(--quantic-component-text-input-padding-inline);
3950
+ padding: var(--quantic-component-text-input-padding-block, var(--quantic-internal-text-input-padding-block))
3951
+ var(--quantic-component-text-input-padding-inline, var(--quantic-internal-text-input-padding-inline));
3922
3952
  transition:
3923
3953
  border-color 0.2s ease-in-out,
3924
3954
  box-shadow 0.2s ease-in-out;
@@ -3938,14 +3968,14 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3938
3968
 
3939
3969
  .main.size--xs {
3940
3970
  font-size: 13px;
3941
- --quantic-component-text-input-padding-inline: var(--quantic-spacing-2);
3942
- --quantic-component-text-input-padding-block: var(--quantic-spacing-xxs);
3971
+ --quantic-internal-text-input-padding-inline: var(--quantic-spacing-2);
3972
+ --quantic-internal-text-input-padding-block: var(--quantic-spacing-xxs);
3943
3973
  }
3944
3974
 
3945
3975
  .main.size--sm {
3946
3976
  font-size: var(--quantic-font-size-body-sm);
3947
- --quantic-component-text-input-padding-inline: var(--quantic-spacing-2);
3948
- --quantic-component-text-input-padding-block: var(--quantic-spacing-sm);
3977
+ --quantic-internal-text-input-padding-inline: var(--quantic-spacing-2);
3978
+ --quantic-internal-text-input-padding-block: var(--quantic-spacing-sm);
3949
3979
  }
3950
3980
 
3951
3981
  .main.size--md {
@@ -3954,8 +3984,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
3954
3984
 
3955
3985
  .main.size--lg {
3956
3986
  font-size: var(--quantic-font-size-body-lg);
3957
- --quantic-component-text-input-padding-inline: var(--quantic-spacing-4);
3958
- --quantic-component-text-input-padding-block: var(--quantic-spacing-3);
3987
+ --quantic-internal-text-input-padding-inline: var(--quantic-spacing-4);
3988
+ --quantic-internal-text-input-padding-block: var(--quantic-spacing-3);
3959
3989
  }
3960
3990
 
3961
3991
  .input {
@@ -4026,7 +4056,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4026
4056
  .password-toggle {
4027
4057
  margin-inline-start: var(--quantic-spacing-2);
4028
4058
  }
4029
- `,t([fe({type:"string",default:"",description:"Current value of the input."})],e.TextInput.prototype,"value",void 0),t([fe({type:"string",default:"text",description:"Native input type."})],e.TextInput.prototype,"type",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.TextInput.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.TextInput.prototype,"placeholder",void 0),t([fe({type:"TextInputSize",options:Object.values(bo),default:bo.Medium,description:"Controls padding and font size."})],e.TextInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.TextInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.TextInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the field non-editable but still focusable and selectable."})],e.TextInput.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.TextInput.prototype,"invalid",void 0),t([fe({type:"string",default:"off",reflect:!0,description:"Native autocomplete attribute passed to the inner <input>."})],e.TextInput.prototype,"autoComplete",void 0),t([ke()],e.TextInput.prototype,"showPassword",void 0),e.TextInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-text-input")],e.TextInput),e.TextInput.ensureDefined(),Co("text",e.TextInput,function(e){return W`
4059
+ `,t([fe({type:"string",default:"",description:"Current value of the input."})],e.TextInput.prototype,"value",void 0),t([fe({type:"string",default:"text",description:"Native input type."})],e.TextInput.prototype,"type",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.TextInput.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.TextInput.prototype,"placeholder",void 0),t([fe({type:"TextInputSize",options:Object.values(Mo),default:Mo.Medium,description:"Controls padding and font size."})],e.TextInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.TextInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.TextInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the field non-editable but still focusable and selectable."})],e.TextInput.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.TextInput.prototype,"invalid",void 0),t([fe({type:"string",default:"off",reflect:!0,description:"Native autocomplete attribute passed to the inner <input>."})],e.TextInput.prototype,"autoComplete",void 0),t([ke()],e.TextInput.prototype,"showPassword",void 0),e.TextInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-text-input")],e.TextInput),e.TextInput.ensureDefined(),bo("text",e.TextInput,function(e){return W`
4030
4060
  <quantic-text-input
4031
4061
  .value=${this.value}
4032
4062
  .type=${this.type}
@@ -4047,7 +4077,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4047
4077
  <slot name="prefix" slot="prefix"></slot>
4048
4078
  <slot name="suffix" slot="suffix"></slot>
4049
4079
  </quantic-text-input>
4050
- `});const Mo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconCircleAlert.ensureDefined(),e.LucideIconChevronDown.ensureDefined(),e.Select=class extends(Xi(qe)){constructor(){super(...arguments),this.options=[],this.value="",this.name="",this.placeholder="",this.size=Mo.Medium,this.disabled=!1,this.required=!1,this.invalid=!1,this._selectRef=St(),this._slottedOptions=[]}dispatchValueChanged(e){this.value=e.target.value}openDropdown(e){if(!this.disabled){e.stopPropagation();const t=this._selectRef.value;t?.showPicker(),t?.click(),t?.focus()}}updated(e){if(e.has("value")){const e=this._selectRef.value,t=this.options.find(([,e])=>e===this.value);e&&t&&(e.value=t[1])}at(this,e,this.value)}forwardNative(e){this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleSlotChange(e){const t=e.target.assignedElements({flatten:!0});this._slottedOptions=t.filter(e=>"OPTION"===e.tagName),this.requestUpdate()}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
4080
+ `});const qo={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconCircleAlert.ensureDefined(),e.LucideIconChevronDown.ensureDefined(),e.Select=class extends(Xi(qe)){constructor(){super(...arguments),this.options=[],this.value="",this.name="",this.placeholder="",this.size=qo.Medium,this.disabled=!1,this.required=!1,this.invalid=!1,this._selectRef=St(),this._slottedOptions=[]}dispatchValueChanged(e){this.value=e.target.value}openDropdown(e){if(!this.disabled){e.stopPropagation();const t=this._selectRef.value;t?.showPicker(),t?.click(),t?.focus()}}updated(e){if(e.has("value")){const e=this._selectRef.value,t=this.options.find(([,e])=>e===this.value);e&&t&&(e.value=t[1])}at(this,e,this.value)}forwardNative(e){this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleSlotChange(e){const t=e.target.assignedElements({flatten:!0});this._slottedOptions=t.filter(e=>"OPTION"===e.tagName),this.requestUpdate()}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
4051
4081
  <slot @slotchange=${this.handleSlotChange} style="display: none"></slot>
4052
4082
  <div class="${e}">
4053
4083
  <slot name="prefix"></slot>
@@ -4071,11 +4101,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4071
4101
  </option>`):W`<option value="" disabled>No options available</option>`)()}
4072
4102
  </select>
4073
4103
  ${this.invalid?W`<quantic-icon-lucide-circle-alert
4074
- size=${this.size===Mo.ExtraSmall?Xe.ExtraSmall:Xe.Small}
4104
+ size=${this.size===qo.ExtraSmall?Xe.ExtraSmall:Xe.Small}
4075
4105
  class="error-icon"
4076
4106
  ></quantic-icon-lucide-circle-alert>`:W`<slot name="suffix">
4077
4107
  <quantic-icon-lucide-chevron-down
4078
- size=${this.size===Mo.ExtraSmall?Xe.ExtraSmall:Xe.Small}
4108
+ size=${this.size===qo.ExtraSmall?Xe.ExtraSmall:Xe.Small}
4079
4109
  class="suffix-icon"
4080
4110
  @click=${this.openDropdown}
4081
4111
  ></quantic-icon-lucide-chevron-down>
@@ -4099,9 +4129,9 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4099
4129
  border-radius: var(--quantic-component-select-border-radius, var(--quantic-radius-sm));
4100
4130
  padding: var(
4101
4131
  --quantic-component-select-padding-block,
4102
- var(--quantic-spacing-md)
4132
+ var(--quantic-internal-select-padding-block, var(--quantic-spacing-md))
4103
4133
  )
4104
- var(--quantic-component-select-padding-inline, var(--quantic-spacing-3));
4134
+ var(--quantic-component-select-padding-inline, var(--quantic-internal-select-padding-inline, var(--quantic-spacing-3)));
4105
4135
  font-size: var(
4106
4136
  --quantic-component-select-font-size,
4107
4137
  var(--quantic-font-size-body-md)
@@ -4128,14 +4158,14 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4128
4158
 
4129
4159
  .main.size--xs {
4130
4160
  font-size: 13px;
4131
- --quantic-component-select-padding-inline: var(--quantic-spacing-2);
4132
- --quantic-component-select-padding-block: var(--quantic-spacing-xxs);
4161
+ --quantic-internal-select-padding-inline: var(--quantic-spacing-2);
4162
+ --quantic-internal-select-padding-block: var(--quantic-spacing-xxs);
4133
4163
  }
4134
4164
 
4135
4165
  .main.size--sm {
4136
4166
  font-size: var(--quantic-font-size-body-sm);
4137
- --quantic-component-select-padding-inline: var(--quantic-spacing-2);
4138
- --quantic-component-select-padding-block: var(--quantic-spacing-sm);
4167
+ --quantic-internal-select-padding-inline: var(--quantic-spacing-2);
4168
+ --quantic-internal-select-padding-block: var(--quantic-spacing-sm);
4139
4169
  }
4140
4170
 
4141
4171
  .main.size--md {
@@ -4144,8 +4174,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4144
4174
 
4145
4175
  .main.size--lg {
4146
4176
  font-size: var(--quantic-font-size-body-lg);
4147
- --quantic-component-select-padding-inline: var(--quantic-spacing-4);
4148
- --quantic-component-select-padding-block: var(--quantic-spacing-3);
4177
+ --quantic-internal-select-padding-inline: var(--quantic-spacing-4);
4178
+ --quantic-internal-select-padding-block: var(--quantic-spacing-3);
4149
4179
  }
4150
4180
 
4151
4181
  select {
@@ -4210,7 +4240,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4210
4240
  .error-icon {
4211
4241
  color: var(--quantic-border-error);
4212
4242
  }
4213
- `,t([fe({type:"Option<T>[]",default:"[]",description:"Array of [label, value] tuples. Alternatively, slot native <option> elements."})],e.Select.prototype,"options",void 0),t([fe({type:"string",default:"",reflect:!0,description:"Currently selected value."})],e.Select.prototype,"value",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Select.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder option shown when no value is selected."})],e.Select.prototype,"placeholder",void 0),t([fe({type:"SelectSize",options:Object.values(Mo),default:Mo.Medium,description:"Controls padding and font size."})],e.Select.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Prevents interaction."})],e.Select.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Marks the field as required for form validation."})],e.Select.prototype,"required",void 0),t([fe({type:"boolean",default:"false",description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Select.prototype,"invalid",void 0),e.Select=t([Ce("value-changed",{description:"Fired whenever the value changes, from user selection or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Se("quantic-select")],e.Select),Co("select",e.Select,function(e){return W`
4243
+ `,t([fe({type:"Option<T>[]",default:"[]",description:"Array of [label, value] tuples. Alternatively, slot native <option> elements."})],e.Select.prototype,"options",void 0),t([fe({type:"string",default:"",reflect:!0,description:"Currently selected value."})],e.Select.prototype,"value",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Select.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder option shown when no value is selected."})],e.Select.prototype,"placeholder",void 0),t([fe({type:"SelectSize",options:Object.values(qo),default:qo.Medium,description:"Controls padding and font size."})],e.Select.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Prevents interaction."})],e.Select.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",description:"Marks the field as required for form validation."})],e.Select.prototype,"required",void 0),t([fe({type:"boolean",default:"false",description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Select.prototype,"invalid",void 0),e.Select=t([Ce("value-changed",{description:"Fired whenever the value changes, from user selection or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Se("quantic-select")],e.Select),bo("select",e.Select,function(e){return W`
4214
4244
  <quantic-select
4215
4245
  .value=${this.value}
4216
4246
  .name=${this.name}
@@ -4228,7 +4258,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4228
4258
  <slot name="prefix" slot="prefix"></slot>
4229
4259
  <slot></slot>
4230
4260
  </quantic-select>
4231
- `});const qo={XSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},So={Small:"sm",Medium:"md",Large:"lg"},Bo={Default:"default",Inline:"inline",Segmented:"segmented"},Ao="radio-group.variant";e.Radio=class extends qe{constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.label="",this.name="",this.value="",this.size=qo.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){if(super.updated(e),e.has("checked")){this.internals.setFormValue(this.checked?this.value:null);const e=this.renderRoot.querySelector("input");e&&(e.checked=this.checked)}}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked,this.internals.setFormValue(this.defaultChecked?this.value:null),e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){this.checked=e===this.value,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0,[`variant--${this.groupVariant}`]:!!this.groupVariant,checked:this.checked});return W`
4261
+ `});const So={XSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Bo={Small:"sm",Medium:"md",Large:"lg"},Ao={Default:"default",Inline:"inline",Segmented:"segmented"},Po="radio-group.variant";e.Radio=class extends qe{constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.label="",this.name="",this.value="",this.size=So.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){if(super.updated(e),e.has("checked")){this.internals.setFormValue(this.checked?this.value:null);const e=this.renderRoot.querySelector("input");e&&(e.checked=this.checked)}}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked,this.internals.setFormValue(this.defaultChecked?this.value:null),e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){this.checked=e===this.value,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0,[`variant--${this.groupVariant}`]:!!this.groupVariant,checked:this.checked});return W`
4232
4262
  <label class=${e}>
4233
4263
  <input
4234
4264
  type="radio"
@@ -4455,8 +4485,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4455
4485
  input:disabled + .circle .dot {
4456
4486
  background-color: var(--quantic-fg-disabled-subtle);
4457
4487
  }
4458
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether this radio is selected."})],e.Radio.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the radio as required for form validation."})],e.Radio.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Radio.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling."})],e.Radio.prototype,"invalid",void 0),t([fe({type:"string",default:"",description:"Visible label text. If omitted, the default slot is used instead."})],e.Radio.prototype,"label",void 0),t([fe({type:"string",description:"Shared radio group name for form submission."})],e.Radio.prototype,"name",void 0),t([fe({type:"string",description:"Value submitted with the form when this radio is checked."})],e.Radio.prototype,"value",void 0),t([fe({type:"RadioSize",options:Object.values(qo),default:qo.Medium,description:"Controls the size of the radio control and label."})],e.Radio.prototype,"size",void 0),t([an({context:Ao,subscribe:!0})],e.Radio.prototype,"groupVariant",void 0),e.Radio=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-radio")],e.Radio),e.RadioGroup=class extends(Xi(qe)){constructor(){super(),this.name="",this.value="",this.disabled=!1,this.required=!1,this.invalid=!1,this.variant=Bo.Default,this.gap=So.Large,this.internals=this.attachInternals(),this.handleValueChanged=this.handleValueChanged.bind(this)}connectedCallback(){super.connectedCallback(),this.addEventListener("value-changed",this.handleValueChanged)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("value-changed",this.handleValueChanged)}handleValueChanged(e){const t=e,i=t.target;i&&"quantic-radio"===i.tagName.toLowerCase()&&(e.stopImmediatePropagation(),t.detail?.checked&&(this.value=i.value,this.uncheckOthers(i),this.internals.setFormValue(this.value||null),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0}))))}uncheckOthers(e){this.querySelectorAll("quantic-radio").forEach(t=>{t!==e&&t.checked&&(t.checked=!1)})}updated(e){super.updated(e),(e.has("name")||e.has("disabled")||e.has("required"))&&this.syncRadioProperties(),e.has("value")&&(this.syncSelection(),this.internals.setFormValue(this.value||null))}syncRadioProperties(){this.querySelectorAll("quantic-radio").forEach(e=>{e.name=this.name,e.disabled=this.disabled,e.required=this.required})}syncSelection(){this.querySelectorAll("quantic-radio").forEach(e=>{e.checked=e.value===this.value})}firstUpdated(){this.syncRadioProperties(),this.syncSelection()}formResetCallback(){this.value="",this.internals.setFormValue(null),this.syncSelection()}formStateRestoreCallback(e){this.value=e||"",this.internals.setFormValue(e),this.syncSelection()}formDisabledCallback(e){this.disabled=e}render(){const e=this.getA11yAttributes({invalid:this.invalid}),t=this.variant===Bo.Segmented;return W`<div
4459
- class=${Ne({group:!0,"group--inline":this.variant===Bo.Inline,"group--segmented":t,[`gap--${this.gap}`]:!t})}
4488
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether this radio is selected."})],e.Radio.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the radio as required for form validation."})],e.Radio.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Radio.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling."})],e.Radio.prototype,"invalid",void 0),t([fe({type:"string",default:"",description:"Visible label text. If omitted, the default slot is used instead."})],e.Radio.prototype,"label",void 0),t([fe({type:"string",description:"Shared radio group name for form submission."})],e.Radio.prototype,"name",void 0),t([fe({type:"string",description:"Value submitted with the form when this radio is checked."})],e.Radio.prototype,"value",void 0),t([fe({type:"RadioSize",options:Object.values(So),default:So.Medium,description:"Controls the size of the radio control and label."})],e.Radio.prototype,"size",void 0),t([an({context:Po,subscribe:!0})],e.Radio.prototype,"groupVariant",void 0),e.Radio=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-radio")],e.Radio),e.RadioGroup=class extends(Xi(qe)){constructor(){super(),this.name="",this.value="",this.disabled=!1,this.required=!1,this.invalid=!1,this.variant=Ao.Default,this.gap=Bo.Large,this.internals=this.attachInternals(),this.handleValueChanged=this.handleValueChanged.bind(this)}connectedCallback(){super.connectedCallback(),this.addEventListener("value-changed",this.handleValueChanged)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("value-changed",this.handleValueChanged)}handleValueChanged(e){const t=e,i=t.target;i&&"quantic-radio"===i.tagName.toLowerCase()&&(e.stopImmediatePropagation(),t.detail?.checked&&(this.value=i.value,this.uncheckOthers(i),this.internals.setFormValue(this.value||null),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0}))))}uncheckOthers(e){this.querySelectorAll("quantic-radio").forEach(t=>{t!==e&&t.checked&&(t.checked=!1)})}updated(e){super.updated(e),(e.has("name")||e.has("disabled")||e.has("required"))&&this.syncRadioProperties(),e.has("value")&&(this.syncSelection(),this.internals.setFormValue(this.value||null))}syncRadioProperties(){this.querySelectorAll("quantic-radio").forEach(e=>{e.name=this.name,e.disabled=this.disabled,e.required=this.required})}syncSelection(){this.querySelectorAll("quantic-radio").forEach(e=>{e.checked=e.value===this.value})}firstUpdated(){this.syncRadioProperties(),this.syncSelection()}formResetCallback(){this.value="",this.internals.setFormValue(null),this.syncSelection()}formStateRestoreCallback(e){this.value=e||"",this.internals.setFormValue(e),this.syncSelection()}formDisabledCallback(e){this.disabled=e}render(){const e=this.getA11yAttributes({invalid:this.invalid}),t=this.variant===Ao.Segmented;return W`<div
4489
+ class=${Ne({group:!0,"group--inline":this.variant===Ao.Inline,"group--segmented":t,[`gap--${this.gap}`]:!t})}
4460
4490
  role="radiogroup"
4461
4491
  aria-label=${e.label}
4462
4492
  aria-description=${e.description}
@@ -4515,7 +4545,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4515
4545
  border: 1px solid var(--quantic-border-primary);
4516
4546
  background: var(--quantic-bg-primary);
4517
4547
  }
4518
- `,t([fe({type:"string",description:"Name submitted with form data. Propagated to all child quantic-radio elements."})],e.RadioGroup.prototype,"name",void 0),t([fe({type:"string",description:"Currently selected radio value."})],e.RadioGroup.prototype,"value",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction. Propagated to all child radios."})],e.RadioGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the group as required. Propagated to all child radios."})],e.RadioGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.RadioGroup.prototype,"invalid",void 0),t([rn({context:Ao}),fe({type:"RadioGroupVariant",options:Object.values(Bo),reflect:!0,description:"Visual variant propagated to all child radios via context."})],e.RadioGroup.prototype,"variant",void 0),t([fe({type:"RadioGroupGap",options:Object.values(So),default:So.Large,reflect:!0,description:"Spacing between radios. Ignored when variant is segmented."})],e.RadioGroup.prototype,"gap",void 0),e.RadioGroup=t([Ce("value-changed",{description:"Fired whenever the selected radio changes.",detail:"{ value: string }"}),Se("quantic-radio-group")],e.RadioGroup),e.RadioGroup.ensureDefined(),Co("radio-group",e.RadioGroup,function(e){return W`
4548
+ `,t([fe({type:"string",description:"Name submitted with form data. Propagated to all child quantic-radio elements."})],e.RadioGroup.prototype,"name",void 0),t([fe({type:"string",description:"Currently selected radio value."})],e.RadioGroup.prototype,"value",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction. Propagated to all child radios."})],e.RadioGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the group as required. Propagated to all child radios."})],e.RadioGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.RadioGroup.prototype,"invalid",void 0),t([rn({context:Po}),fe({type:"RadioGroupVariant",options:Object.values(Ao),reflect:!0,description:"Visual variant propagated to all child radios via context."})],e.RadioGroup.prototype,"variant",void 0),t([fe({type:"RadioGroupGap",options:Object.values(Bo),default:Bo.Large,reflect:!0,description:"Spacing between radios. Ignored when variant is segmented."})],e.RadioGroup.prototype,"gap",void 0),e.RadioGroup=t([Ce("value-changed",{description:"Fired whenever the selected radio changes.",detail:"{ value: string }"}),Se("quantic-radio-group")],e.RadioGroup),e.RadioGroup.ensureDefined(),bo("radio-group",e.RadioGroup,function(e){return W`
4519
4549
  <quantic-radio-group
4520
4550
  .value=${this.value}
4521
4551
  .name=${this.name}
@@ -4531,7 +4561,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4531
4561
  >
4532
4562
  <slot></slot>
4533
4563
  </quantic-radio-group>
4534
- `});const Po={Small:"sm",Medium:"md",Large:"lg"};e.Toggle=class extends(Xi(qe)){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.label="",this.name="",this.size=Po.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}updated(e){super.updated(e),e.has("checked")&&this.internals.setFormValue(this.checked?"on":null)}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked},bubbles:!0,composed:!0}))}formResetCallback(){this.checked=this.defaultChecked,this.internals.setFormValue(this.defaultChecked?"on":null);const e=this.renderRoot.querySelector("input");e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){this.checked="on"===e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}get computedLabel(){return this.ariaLabel||this.label}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({label:this.computedLabel,invalid:this.invalid}),i=W`
4564
+ `});const jo={Small:"sm",Medium:"md",Large:"lg"};e.Toggle=class extends(Xi(qe)){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.label="",this.name="",this.size=jo.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}updated(e){super.updated(e),e.has("checked")&&this.internals.setFormValue(this.checked?"on":null)}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked},bubbles:!0,composed:!0}))}formResetCallback(){this.checked=this.defaultChecked,this.internals.setFormValue(this.defaultChecked?"on":null);const e=this.renderRoot.querySelector("input");e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){this.checked="on"===e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}get computedLabel(){return this.ariaLabel||this.label}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({label:this.computedLabel,invalid:this.invalid}),i=W`
4535
4565
  <input
4536
4566
  type="checkbox"
4537
4567
  name=${this.name}
@@ -4698,7 +4728,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4698
4728
  input:disabled + .track .thumb {
4699
4729
  background-color: var(--quantic-fg-disabled-subtle);
4700
4730
  }
4701
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the toggle is on."})],e.Toggle.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.Toggle.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Toggle.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Toggle.prototype,"invalid",void 0),t([fe({type:"string",default:"",description:"Visible label text rendered next to the toggle."})],e.Toggle.prototype,"label",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Toggle.prototype,"name",void 0),t([fe({type:"ToggleSize",options:Object.values(Po),default:Po.Medium,description:"Controls the size of the toggle track and thumb."})],e.Toggle.prototype,"size",void 0),e.Toggle=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-toggle")],e.Toggle),e.Toggle.ensureDefined(),Co("toggle",e.Toggle,function(e){return W`
4731
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the toggle is on."})],e.Toggle.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.Toggle.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Toggle.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Toggle.prototype,"invalid",void 0),t([fe({type:"string",default:"",description:"Visible label text rendered next to the toggle."})],e.Toggle.prototype,"label",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Toggle.prototype,"name",void 0),t([fe({type:"ToggleSize",options:Object.values(jo),default:jo.Medium,description:"Controls the size of the toggle track and thumb."})],e.Toggle.prototype,"size",void 0),e.Toggle=t([Ce("value-changed",{description:"Fired whenever the input's value is updated (on input & change).",detail:"{ checked: boolean }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Se("quantic-toggle")],e.Toggle),e.Toggle.ensureDefined(),bo("toggle",e.Toggle,function(e){return W`
4702
4732
  <quantic-toggle
4703
4733
  .checked=${this.checked}
4704
4734
  .name=${this.name}
@@ -4713,7 +4743,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4713
4743
  >
4714
4744
  <slot></slot>
4715
4745
  </quantic-toggle>
4716
- `});const jo={Small:"sm",Medium:"md",Large:"lg"},zo={Default:"default",Bare:"bare"};e.Fieldset=class extends qe{constructor(){super(...arguments),this.legend="",this.description="",this.size=jo.Medium,this.variant=zo.Default}render(){const e=Ne({fieldset:!0,[`size--${this.size}`]:!0,[`variant--${this.variant}`]:!0});return W`
4746
+ `});const zo={Small:"sm",Medium:"md",Large:"lg"},Ho={Default:"default",Bare:"bare"};e.Fieldset=class extends qe{constructor(){super(...arguments),this.legend="",this.description="",this.size=zo.Medium,this.variant=Ho.Default}render(){const e=Ne({fieldset:!0,[`size--${this.size}`]:!0,[`variant--${this.variant}`]:!0});return W`
4717
4747
  <fieldset class=${e}>
4718
4748
  ${this.legend||this.description?W`
4719
4749
  <div class="header">
@@ -4730,78 +4760,78 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4730
4760
  display: block;
4731
4761
  font-family: var(--quantic-font-family-body);
4732
4762
 
4733
- --quantic-component-fieldset-legend-font-size: var(
4763
+ --quantic-internal-fieldset-legend-font-size: var(
4734
4764
  --quantic-font-size-body-lg
4735
4765
  );
4736
- --quantic-component-fieldset-legend-line-height: var(
4766
+ --quantic-internal-fieldset-legend-line-height: var(
4737
4767
  --quantic-line-height-body-md
4738
4768
  );
4739
- --quantic-component-fieldset-padding: var(--quantic-spacing-5);
4740
- --quantic-component-fieldset-border: 1px solid
4769
+ --quantic-internal-fieldset-padding: var(--quantic-spacing-5);
4770
+ --quantic-internal-fieldset-border: 1px solid
4741
4771
  var(--quantic-border-secondary);
4742
- --quantic-component-fieldset-gap: var(--quantic-spacing-4);
4772
+ --quantic-internal-fieldset-gap: var(--quantic-spacing-4);
4743
4773
  --quantic-component-fieldset-border-radius: var(--quantic-radius-md);
4744
4774
  }
4745
4775
 
4746
4776
  .fieldset {
4747
- border: var(--quantic-component-fieldset-border);
4777
+ border: var(--quantic-component-fieldset-border, var(--quantic-internal-fieldset-border));
4748
4778
  border-radius: var(--quantic-component-fieldset-border-radius);
4749
- padding: var(--quantic-component-fieldset-padding);
4779
+ padding: var(--quantic-component-fieldset-padding, var(--quantic-internal-fieldset-padding));
4750
4780
  padding-bottom: calc(
4751
- var(--quantic-component-fieldset-padding) +
4752
- var(--quantic-component-fieldset-gap) / 2
4781
+ var(--quantic-component-fieldset-padding, var(--quantic-internal-fieldset-padding)) +
4782
+ var(--quantic-component-fieldset-gap, var(--quantic-internal-fieldset-gap)) / 2
4753
4783
  );
4754
4784
  margin: 0;
4755
4785
  display: flex;
4756
4786
  flex-direction: column;
4757
- gap: var(--quantic-component-fieldset-gap);
4787
+ gap: var(--quantic-component-fieldset-gap, var(--quantic-internal-fieldset-gap));
4758
4788
  }
4759
4789
 
4760
4790
  .size--sm {
4761
- --quantic-component-fieldset-padding: var(--quantic-spacing-3);
4762
- --quantic-component-fieldset-gap: var(--quantic-spacing-2);
4763
- --quantic-component-fieldset-legend-font-size: var(
4791
+ --quantic-internal-fieldset-padding: var(--quantic-spacing-3);
4792
+ --quantic-internal-fieldset-gap: var(--quantic-spacing-2);
4793
+ --quantic-internal-fieldset-legend-font-size: var(
4764
4794
  --quantic-font-size-body-md
4765
4795
  );
4766
- --quantic-component-fieldset-legend-line-height: var(
4796
+ --quantic-internal-fieldset-legend-line-height: var(
4767
4797
  --quantic-line-height-body-sm
4768
4798
  );
4769
4799
  }
4770
4800
 
4771
4801
  .size--md {
4772
- --quantic-component-fieldset-padding: var(--quantic-spacing-5);
4773
- --quantic-component-fieldset-gap: var(--quantic-spacing-4);
4774
- --quantic-component-fieldset-legend-font-size: var(
4802
+ --quantic-internal-fieldset-padding: var(--quantic-spacing-5);
4803
+ --quantic-internal-fieldset-gap: var(--quantic-spacing-4);
4804
+ --quantic-internal-fieldset-legend-font-size: var(
4775
4805
  --quantic-font-size-body-lg
4776
4806
  );
4777
- --quantic-component-fieldset-legend-line-height: var(
4807
+ --quantic-internal-fieldset-legend-line-height: var(
4778
4808
  --quantic-line-height-body-md
4779
4809
  );
4780
4810
  }
4781
4811
 
4782
4812
  .size--lg {
4783
- --quantic-component-fieldset-padding: var(--quantic-spacing-6);
4784
- --quantic-component-fieldset-gap: var(--quantic-spacing-5);
4785
- --quantic-component-fieldset-legend-font-size: var(
4813
+ --quantic-internal-fieldset-padding: var(--quantic-spacing-6);
4814
+ --quantic-internal-fieldset-gap: var(--quantic-spacing-5);
4815
+ --quantic-internal-fieldset-legend-font-size: var(
4786
4816
  --quantic-font-size-body-lg
4787
4817
  );
4788
- --quantic-component-fieldset-legend-line-height: var(
4818
+ --quantic-internal-fieldset-legend-line-height: var(
4789
4819
  --quantic-line-height-body-lg
4790
4820
  );
4791
4821
  }
4792
4822
 
4793
4823
  .variant--bare {
4794
- --quantic-component-fieldset-padding: 0;
4795
- --quantic-component-fieldset-border: none;
4824
+ --quantic-internal-fieldset-padding: 0;
4825
+ --quantic-internal-fieldset-border: none;
4796
4826
  }
4797
4827
 
4798
4828
  .header {
4799
4829
  display: flex;
4800
4830
  flex-direction: column;
4801
4831
  gap: var(--quantic-spacing-1);
4802
- font-size: var(--quantic-component-fieldset-legend-font-size);
4803
- line-height: var(--quantic-component-fieldset-legend-line-height);
4804
- margin-bottom: var(--quantic-component-fieldset-gap);
4832
+ font-size: var(--quantic-component-fieldset-legend-font-size, var(--quantic-internal-fieldset-legend-font-size));
4833
+ line-height: var(--quantic-component-fieldset-legend-line-height, var(--quantic-internal-fieldset-legend-line-height));
4834
+ margin-bottom: var(--quantic-component-fieldset-gap, var(--quantic-internal-fieldset-gap));
4805
4835
  }
4806
4836
 
4807
4837
  .legend {
@@ -4825,7 +4855,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
4825
4855
  flex-direction: column;
4826
4856
  gap: var(--quantic-spacing-4);
4827
4857
  }
4828
- `,t([fe({type:"string",default:"",description:"Section heading displayed as the fieldset legend."})],e.Fieldset.prototype,"legend",void 0),t([fe({type:"string",default:"",description:"Optional description text shown below the legend."})],e.Fieldset.prototype,"description",void 0),t([fe({type:"FieldsetSize",options:Object.values(jo),default:jo.Medium,description:"Controls padding and spacing between fields."})],e.Fieldset.prototype,"size",void 0),t([fe({type:"FieldsetVariant",options:Object.values(zo),default:zo.Default,description:'Visual style. "bare" removes border and padding for inline use.'})],e.Fieldset.prototype,"variant",void 0),e.Fieldset=t([Se("quantic-fieldset")],e.Fieldset),e.BrandIconApptainerOutline=class extends dt{render(){return X`
4858
+ `,t([fe({type:"string",default:"",description:"Section heading displayed as the fieldset legend."})],e.Fieldset.prototype,"legend",void 0),t([fe({type:"string",default:"",description:"Optional description text shown below the legend."})],e.Fieldset.prototype,"description",void 0),t([fe({type:"FieldsetSize",options:Object.values(zo),default:zo.Medium,description:"Controls padding and spacing between fields."})],e.Fieldset.prototype,"size",void 0),t([fe({type:"FieldsetVariant",options:Object.values(Ho),default:Ho.Default,description:'Visual style. "bare" removes border and padding for inline use.'})],e.Fieldset.prototype,"variant",void 0),e.Fieldset=t([Se("quantic-fieldset")],e.Fieldset),e.BrandIconApptainerOutline=class extends dt{render(){return X`
4829
4859
  <svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">
4830
4860
  <path d="M24.3701 0.620117C37.6001 0.620117 48.3701 11.3901 48.3701 24.6201C48.3701 37.8501 37.6001 48.6201 24.3701 48.6201C11.1402 48.6201 0.370183 37.8501 0.370117 24.6201C0.370117 11.3901 11.1401 0.620117 24.3701 0.620117ZM24.3701 3.37012C12.6501 3.37012 3.12012 12.9001 3.12012 24.6201C3.12018 36.3401 12.6502 45.8701 24.3701 45.8701C36.0901 45.8701 45.6201 36.3401 45.6201 24.6201C45.6201 12.9001 36.0901 3.37012 24.3701 3.37012ZM32.0078 32.9951C32.0754 33.0597 32.1383 33.1318 32.1934 33.2119C32.2903 33.3533 32.3562 33.5068 32.3945 33.6641L35.4707 38.9922L35.5352 39.1172C35.8209 39.7527 35.584 40.514 34.9678 40.8701C34.3513 41.2261 33.5737 41.0505 33.166 40.4854L33.0898 40.3672L30.5186 35.9141C28.6877 36.8711 26.6489 37.3769 24.5703 37.374H24.5684L24.5674 37.375C22.2699 37.3745 20.111 36.7669 18.2393 35.7061L15.6406 40.207C15.2609 40.8646 14.4203 41.0896 13.7627 40.71C13.1052 40.3301 12.88 39.4896 13.2598 38.832L24.3203 19.6797L32.0078 32.9951ZM19.6143 33.3252C21.0818 34.1527 22.7704 34.625 24.5703 34.625H24.5723L24.9531 34.6182C26.4139 34.5649 27.8417 34.191 29.1416 33.5303L24.3193 25.1777L19.6143 33.3252ZM35.8066 21.1729C36.5568 21.0555 37.2604 21.5682 37.3779 22.3184C37.4811 22.9776 37.5254 23.6489 37.5254 24.3174C37.5253 26.7288 36.8738 28.9981 35.7373 30.9395L35.6602 31.0576C35.2491 31.6202 34.4698 31.7912 33.8555 31.4316C33.2003 31.048 32.9798 30.2051 33.3633 29.5498L33.5273 29.2607C34.3219 27.7966 34.7753 26.11 34.7754 24.3174C34.7754 23.7682 34.739 23.2407 34.6611 22.7432C34.544 21.9931 35.0566 21.2903 35.8066 21.1729ZM13.293 21.4336C14.0447 21.54 14.5681 22.2356 14.4619 22.9873C14.402 23.4102 14.375 23.8529 14.375 24.3174V24.3193C14.3724 26.0448 14.8013 27.7409 15.6182 29.251L15.7861 29.5508L15.8516 29.6758C16.1405 30.3097 15.9082 31.0722 15.2939 31.4316C14.6795 31.791 13.9011 31.6194 13.4902 31.0566L13.4131 30.9395L13.1992 30.5596C12.1641 28.646 11.6218 26.4986 11.625 24.3154C11.6251 23.7455 11.6584 23.1724 11.7393 22.6016C11.846 21.8502 12.5415 21.3274 13.293 21.4336ZM26.126 12.6582C26.3031 11.9689 26.9723 11.5357 27.6611 11.6396L27.7998 11.668L28.376 11.8311C31.231 12.7099 33.6556 14.56 35.2959 16.9785C35.7219 17.6069 35.558 18.4625 34.9297 18.8887C34.3013 19.3145 33.4457 19.1506 33.0195 18.5225C31.717 16.602 29.8018 15.1471 27.5664 14.459L27.1152 14.332L26.9814 14.29C26.3273 14.0495 25.9491 13.3477 26.126 12.6582ZM21.3506 11.668C22.086 11.4792 22.8354 11.9229 23.0244 12.6582C23.213 13.3936 22.7695 14.1432 22.0342 14.332C19.6056 14.9558 17.5207 16.4736 16.1426 18.5186L16.0576 18.6309C15.6118 19.1664 14.8237 19.2883 14.2334 18.8906C13.6039 18.4662 13.4382 17.6111 13.8623 16.9814L14.1982 16.5049C15.9343 14.1612 18.4402 12.4154 21.3506 11.668Z" fill="currentColor"/>
4831
4861
  </svg>
@@ -36560,7 +36590,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36560
36590
  <line x1="8" x2="14" y1="11" y2="11" />
36561
36591
  </svg>
36562
36592
 
36563
- `}},e.LucideIconZoomOut.styles=dt.styles,e.LucideIconZoomOut=t([Se("quantic-icon-lucide-zoom-out")],e.LucideIconZoomOut);const Ho={ExtraSmall:"xs",Small:"sm",Medium:"md"};e.IconLabel=class extends qe{constructor(){super(...arguments),this.size=Ho.Medium,this.syncIconSizes=()=>{this.shadowRoot?.querySelector('slot[name="icon"]')?.assignedElements().forEach(e=>e.size=this.size)}}updated(e){e.has("size")&&this.syncIconSizes()}render(){return Re`
36593
+ `}},e.LucideIconZoomOut.styles=dt.styles,e.LucideIconZoomOut=t([Se("quantic-icon-lucide-zoom-out")],e.LucideIconZoomOut);const To={ExtraSmall:"xs",Small:"sm",Medium:"md"};e.IconLabel=class extends qe{constructor(){super(...arguments),this.size=To.Medium,this.syncIconSizes=()=>{this.shadowRoot?.querySelector('slot[name="icon"]')?.assignedElements().forEach(e=>e.size=this.size)}}updated(e){e.has("size")&&this.syncIconSizes()}render(){return Re`
36564
36594
  <div class=${Ne({main:!0,[`size--${this.size}`]:!0})}>
36565
36595
  <slot name="icon" @slotchange=${this.syncIconSizes}></slot>
36566
36596
  <slot></slot>
@@ -36594,7 +36624,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36594
36624
  display: flex;
36595
36625
  align-items: center;
36596
36626
  }
36597
- `,t([fe({type:"IconLabelSize",options:Object.values(Ho),default:Ho.Medium,description:"Controls font size and icon gap."})],e.IconLabel.prototype,"size",void 0),e.IconLabel=t([Se("quantic-icon-label")],e.IconLabel),e.LucideIconPencil.ensureDefined(),e.InlineEdit=class extends qe{constructor(){super(...arguments),this.label="",this.active=!1,this.invalid=!1,this.handleActivateClick=()=>{this.active||this.activate()},this.handleTriggerKey=e=>{this.active||"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),e.stopPropagation(),this.activate())},this.handleKeyDown=e=>{this.active&&"Escape"===e.key&&(this.deactivate(!0),this.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0})))},this.handleFocusOut=e=>{if(!this.active||this.invalid)return;this.contains(e.relatedTarget)||this.shadowRoot?.contains(e.relatedTarget)||this.deactivate()}}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.handleKeyDown),this.addEventListener("focusout",this.handleFocusOut)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.handleKeyDown),this.removeEventListener("focusout",this.handleFocusOut)}activate(){this.active=!0,this.updateComplete.then(()=>{const e=this.renderRoot.querySelector('slot[name="editor"]'),t=e?.assignedElements()[0],i=t?.shadowRoot?.querySelector('input, textarea, select, [tabindex]:not([tabindex="-1"])')??t;i?.focus()})}deactivate(e=!1){this.active=!1,e&&this.updateComplete.then(()=>{this.renderRoot.querySelector(".row")?.focus()})}render(){const e=!!this.label;return W`
36627
+ `,t([fe({type:"IconLabelSize",options:Object.values(To),default:To.Medium,description:"Controls font size and icon gap."})],e.IconLabel.prototype,"size",void 0),e.IconLabel=t([Se("quantic-icon-label")],e.IconLabel),e.LucideIconPencil.ensureDefined(),e.InlineEdit=class extends qe{constructor(){super(...arguments),this.label="",this.active=!1,this.invalid=!1,this.handleActivateClick=()=>{this.active||this.activate()},this.handleTriggerKey=e=>{this.active||"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),e.stopPropagation(),this.activate())},this.handleKeyDown=e=>{this.active&&"Escape"===e.key&&(this.deactivate(!0),this.dispatchEvent(new CustomEvent("cancel",{bubbles:!0,composed:!0})))},this.handleFocusOut=e=>{if(!this.active||this.invalid)return;this.contains(e.relatedTarget)||this.shadowRoot?.contains(e.relatedTarget)||this.deactivate()}}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",this.handleKeyDown),this.addEventListener("focusout",this.handleFocusOut)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("keydown",this.handleKeyDown),this.removeEventListener("focusout",this.handleFocusOut)}activate(){this.active=!0,this.updateComplete.then(()=>{const e=this.renderRoot.querySelector('slot[name="editor"]'),t=e?.assignedElements()[0],i=t?.shadowRoot?.querySelector('input, textarea, select, [tabindex]:not([tabindex="-1"])')??t;i?.focus()})}deactivate(e=!1){this.active=!1,e&&this.updateComplete.then(()=>{this.renderRoot.querySelector(".row")?.focus()})}render(){const e=!!this.label;return W`
36598
36628
  <div
36599
36629
  class="${Ne({row:!0,"is-active":this.active})}"
36600
36630
  role="${this.active?"group":"button"}"
@@ -36736,7 +36766,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36736
36766
  .label.is-empty {
36737
36767
  display: revert;
36738
36768
  }
36739
- `)],t([fe({type:"string",default:"",description:"Fallback label text when no label slot content is provided."})],e.InlineEdit.prototype,"label",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"When true, the editor slot is visible and the display is hidden."})],e.InlineEdit.prototype,"active",void 0),t([fe({type:"boolean",default:"false",description:"When true, focusout does not close the editor. The editor stays open until the value is valid or the user cancels."})],e.InlineEdit.prototype,"invalid",void 0),e.InlineEdit=t([Ce("cancel",{description:"Fired on Escape. Consumer should revert optimistic state."}),Se("quantic-inline-edit")],e.InlineEdit);const To={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconChevronUp.ensureDefined(),e.LucideIconChevronDown.ensureDefined(),e.LucideIconCircleAlert.ensureDefined(),e.NumberInput=class extends(Xi(qe)){get value(){return this._value}set value(e){const t=this._value;this._value=e,this.requestUpdate("value",t),this.internals.setFormValue(null!==e?String(e):"")}constructor(){super(),this.inputRef=St(),this._value=null,this.min=void 0,this.max=void 0,this.step=1,this.name="",this.placeholder="",this.size=To.Medium,this.disabled=!1,this.required=!1,this.invalid=!1,this.internals=this.attachInternals()}updated(e){e.has("value")&&this.updateValidity(),at(this,e,this.value)}stepUp(){this.inputRef.value?.stepUp(),this.syncValue()}stepDown(){this.inputRef.value?.stepDown(),this.syncValue()}syncValue(){const e=this.inputRef.value?.valueAsNumber;this.value=void 0===e||isNaN(e)?null:e}updateValidity(){const e=this.inputRef.value;e&&this.internals.setValidity(e.validity,e.validationMessage,e)}forwardNative(e){e instanceof KeyboardEvent?this.dispatchEvent(new KeyboardEvent(e.type,{bubbles:!0,composed:!0,key:e.key,code:e.code,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,repeat:e.repeat})):e instanceof FocusEvent?this.dispatchEvent(new FocusEvent(e.type,{bubbles:!0,composed:!0,relatedTarget:e.relatedTarget})):this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleKeyDown(e){this.forwardNative(e),"Enter"===e.key&&this.internals.form?.requestSubmit()}formResetCallback(){this.value=null}formStateRestoreCallback(e){const t=parseFloat(e);this.value=isNaN(t)?null:t}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
36769
+ `)],t([fe({type:"string",default:"",description:"Fallback label text when no label slot content is provided."})],e.InlineEdit.prototype,"label",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"When true, the editor slot is visible and the display is hidden."})],e.InlineEdit.prototype,"active",void 0),t([fe({type:"boolean",default:"false",description:"When true, focusout does not close the editor. The editor stays open until the value is valid or the user cancels."})],e.InlineEdit.prototype,"invalid",void 0),e.InlineEdit=t([Ce("cancel",{description:"Fired on Escape. Consumer should revert optimistic state."}),Se("quantic-inline-edit")],e.InlineEdit);const Do={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"};e.LucideIconChevronUp.ensureDefined(),e.LucideIconChevronDown.ensureDefined(),e.LucideIconCircleAlert.ensureDefined(),e.NumberInput=class extends(Xi(qe)){get value(){return this._value}set value(e){const t=this._value;this._value=e,this.requestUpdate("value",t),this.internals.setFormValue(null!==e?String(e):"")}constructor(){super(),this.inputRef=St(),this._value=null,this.min=void 0,this.max=void 0,this.step=1,this.name="",this.placeholder="",this.size=Do.Medium,this.disabled=!1,this.required=!1,this.invalid=!1,this.internals=this.attachInternals()}updated(e){e.has("value")&&this.updateValidity(),at(this,e,this.value)}stepUp(){this.inputRef.value?.stepUp(),this.syncValue()}stepDown(){this.inputRef.value?.stepDown(),this.syncValue()}syncValue(){const e=this.inputRef.value?.valueAsNumber;this.value=void 0===e||isNaN(e)?null:e}updateValidity(){const e=this.inputRef.value;e&&this.internals.setValidity(e.validity,e.validationMessage,e)}forwardNative(e){e instanceof KeyboardEvent?this.dispatchEvent(new KeyboardEvent(e.type,{bubbles:!0,composed:!0,key:e.key,code:e.code,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,repeat:e.repeat})):e instanceof FocusEvent?this.dispatchEvent(new FocusEvent(e.type,{bubbles:!0,composed:!0,relatedTarget:e.relatedTarget})):this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}handleKeyDown(e){this.forwardNative(e),"Enter"===e.key&&this.internals.form?.requestSubmit()}formResetCallback(){this.value=null}formStateRestoreCallback(e){const t=parseFloat(e);this.value=isNaN(t)?null:t}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
36740
36770
  <div class=${e}>
36741
36771
  <slot name="prefix"></slot>
36742
36772
  <input
@@ -36794,8 +36824,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36794
36824
  display: inline-block;
36795
36825
  width: 100%;
36796
36826
 
36797
- --quantic-component-number-input-padding-inline: var(--quantic-spacing-3);
36798
- --quantic-component-number-input-padding-block: var(--quantic-spacing-md);
36827
+ --quantic-internal-number-input-padding-inline: var(--quantic-spacing-3);
36828
+ --quantic-internal-number-input-padding-block: var(--quantic-spacing-md);
36799
36829
  --quantic-component-number-input-bg: var(--quantic-bg-primary);
36800
36830
  --quantic-component-number-input-color: var(--quantic-text-primary);
36801
36831
  }
@@ -36812,12 +36842,13 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36812
36842
  border-radius: var(--quantic-component-number-input-border-radius, var(--quantic-radius-sm));
36813
36843
  color: var(--quantic-component-number-input-color);
36814
36844
  background-color: var(--quantic-component-number-input-bg);
36815
- padding-block: var(--quantic-component-number-input-padding-block);
36845
+ padding-block: var(--quantic-component-number-input-padding-block, var(--quantic-internal-number-input-padding-block));
36816
36846
  padding-inline-start: var(
36817
- --quantic-component-number-input-padding-inline
36818
- );
36847
+ --quantic-component-number-input-padding-inline,
36848
+ var(--quantic-internal-number-input-padding-inline)
36849
+ );
36819
36850
  padding-inline-end: calc(
36820
- var(--quantic-component-number-input-padding-inline) + var(--quantic-spacing-6)
36851
+ var(--quantic-component-number-input-padding-inline, var(--quantic-internal-number-input-padding-inline)) + var(--quantic-spacing-6)
36821
36852
  );
36822
36853
  transition:
36823
36854
  border-color 0.2s ease-in-out,
@@ -36838,30 +36869,30 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36838
36869
 
36839
36870
  .main.size--xs {
36840
36871
  font-size: 13px;
36841
- --quantic-component-number-input-padding-inline: var(--quantic-spacing-2);
36842
- --quantic-component-number-input-padding-block: var(
36872
+ --quantic-internal-number-input-padding-inline: var(--quantic-spacing-2);
36873
+ --quantic-internal-number-input-padding-block: var(
36843
36874
  --quantic-spacing-xxs
36844
36875
  );
36845
- --quantic-component-number-input-icon-size: var(--quantic-spacing-3);
36876
+ --quantic-internal-number-input-icon-size: var(--quantic-spacing-3);
36846
36877
  }
36847
36878
 
36848
36879
  .main.size--sm {
36849
36880
  font-size: var(--quantic-font-size-body-sm);
36850
- --quantic-component-number-input-padding-inline: var(--quantic-spacing-2);
36851
- --quantic-component-number-input-padding-block: var(--quantic-spacing-sm);
36852
- --quantic-component-number-input-icon-size: var(--quantic-spacing-4);
36881
+ --quantic-internal-number-input-padding-inline: var(--quantic-spacing-2);
36882
+ --quantic-internal-number-input-padding-block: var(--quantic-spacing-sm);
36883
+ --quantic-internal-number-input-icon-size: var(--quantic-spacing-4);
36853
36884
  }
36854
36885
 
36855
36886
  .main.size--md {
36856
36887
  font-size: var(--quantic-font-size-body-md);
36857
- --quantic-component-number-input-icon-size: var(--quantic-spacing-4);
36888
+ --quantic-internal-number-input-icon-size: var(--quantic-spacing-4);
36858
36889
  }
36859
36890
 
36860
36891
  .main.size--lg {
36861
36892
  font-size: var(--quantic-font-size-body-lg);
36862
- --quantic-component-number-input-padding-inline: var(--quantic-spacing-4);
36863
- --quantic-component-number-input-padding-block: var(--quantic-spacing-3);
36864
- --quantic-component-number-input-icon-size: var(--quantic-spacing-5);
36893
+ --quantic-internal-number-input-padding-inline: var(--quantic-spacing-4);
36894
+ --quantic-internal-number-input-padding-block: var(--quantic-spacing-3);
36895
+ --quantic-internal-number-input-icon-size: var(--quantic-spacing-5);
36865
36896
  }
36866
36897
 
36867
36898
  .input {
@@ -36917,7 +36948,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36917
36948
 
36918
36949
  quantic-icon-lucide-chevron-up,
36919
36950
  quantic-icon-lucide-chevron-down {
36920
- --icon-size: var(--quantic-component-number-input-icon-size);
36951
+ --icon-size: var(--quantic-component-number-input-icon-size, var(--quantic-internal-number-input-icon-size));
36921
36952
  }
36922
36953
 
36923
36954
  slot[name='prefix'] {
@@ -36987,9 +37018,9 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
36987
37018
  .error-icon {
36988
37019
  color: var(--quantic-border-error);
36989
37020
  }
36990
- `,t([fe({type:"number",default:"null",reflect:!0,description:"Current numeric value. null when the field is empty."})],e.NumberInput.prototype,"value",null),t([fe({type:"number",description:"Minimum allowed value."})],e.NumberInput.prototype,"min",void 0),t([fe({type:"number",description:"Maximum allowed value."})],e.NumberInput.prototype,"max",void 0),t([fe({type:"number",default:"1",description:"Step increment for stepper buttons and keyboard arrow keys."})],e.NumberInput.prototype,"step",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.NumberInput.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.NumberInput.prototype,"placeholder",void 0),t([fe({type:"NumberInputSize",options:Object.values(To),default:To.Medium,description:"Controls padding and font size."})],e.NumberInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.NumberInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.NumberInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.NumberInput.prototype,"invalid",void 0),e.NumberInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input, stepper click, or a programmatic update. Not fired on initial render.",detail:"{ value: number | null }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-number-input")],e.NumberInput);const Do={MAX_LINES:1e4,FOLLOW_SCROLL_THRESHOLD:50},Vo=["log-black","log-danger","log-success","log-warning","log-blue","log-magenta","log-info","log-white","log-gray","log-danger","log-success","log-warning","log-blue","log-magenta","log-info","log-white"],Fo=["#1c1c1c","#8b0000","#006400","#808000","#00008b","#800080","#008b8b","#a9a9a9","#404040","#ff4444","#44ff44","#ffff44","#4444ff","#ff44ff","#44ffff","#ffffff"];function Ro(e){if(e<232){const t=e-16,i=Math.floor(t/36),n=Math.floor(t%36/6),o=t%6,s=e=>0===e?0:55+40*e;return`rgb(${s(i)},${s(n)},${s(o)})`}const t=8+10*(e-232);return`rgb(${t},${t},${t})`}function Oo(){return{fgClass:null,fgRgb:null,bgColor:null,bold:!1,dim:!1,italic:!1,underline:!1}}function $o(e,t){const i=""===t?[0]:t.split(";").map(Number),n={...e};let o=0;for(;o<i.length;){const e=i[o];if(0===e)Object.assign(n,Oo());else if(1===e)n.bold=!0;else if(2===e)n.dim=!0;else if(3===e)n.italic=!0;else if(4===e)n.underline=!0;else if(22===e)n.bold=!1,n.dim=!1;else if(23===e)n.italic=!1;else if(24===e)n.underline=!1;else if(e>=30&&e<=37)n.fgClass=Vo[e-30],n.fgRgb=null;else if(38===e){const e=i[o+1];if(5===e&&o+2<i.length){const e=i[o+2];e<16?(n.fgClass=Vo[e],n.fgRgb=null):(n.fgClass=null,n.fgRgb=Ro(e)),o+=2}else 2===e&&o+4<i.length&&(n.fgClass=null,n.fgRgb=`rgb(${i[o+2]},${i[o+3]},${i[o+4]})`,o+=4)}else if(39===e)n.fgClass=null,n.fgRgb=null;else if(e>=40&&e<=47)n.bgColor=Fo[e-40];else if(48===e){const e=i[o+1];if(5===e&&o+2<i.length){const e=i[o+2];n.bgColor=e<16?Fo[e]:Ro(e),o+=2}else 2===e&&o+4<i.length&&(n.bgColor=`rgb(${i[o+2]},${i[o+3]},${i[o+4]})`,o+=4)}else 49===e?n.bgColor=null:e>=90&&e<=97?(n.fgClass=Vo[e-90+8],n.fgRgb=null):e>=100&&e<=107&&(n.bgColor=Fo[e-100+8]);o++}return n}function _o(e){const t=[];let i={fgClass:null,fgRgb:null,bgColor:null,bold:!1,dim:!1,italic:!1,underline:!1},n=0;for(const o of e.matchAll(/\x1b\[([0-9;]*)m/g)){const s=e.slice(n,o.index);s&&t.push({text:s,state:i}),i=$o(i,o[1]),n=o.index+o[0].length}const o=e.slice(n);return o&&t.push({text:o,state:i}),t}e.Checkbox.ensureDefined(),e.LogOutput=class extends qe{constructor(){super(...arguments),this.follow=!0,this.followLabel="Follow",this.lineNumbers=!1,this.maxLines=Do.MAX_LINES,this.lineBuffer=[],this.resizeObserver=null,this.handleScroll=()=>{const{scrollTop:e,scrollHeight:t,clientHeight:i}=this.outputEl,n=t-e-i;this.follow=!(n>Do.FOLLOW_SCROLL_THRESHOLD)}}get lines(){return this.lineBuffer.map(e=>e.raw)}set lines(e){this.lineBuffer=this.clampToMax(e.map(e=>({raw:e,parsed:_o(e)})))}firstUpdated(){this.outputEl.addEventListener("scroll",this.handleScroll),this.resizeObserver=new ResizeObserver(()=>{this.follow&&this.scrollToBottom()}),this.resizeObserver.observe(this.outputEl)}updated(e){e.has("maxLines")&&(this.lineBuffer=this.clampToMax(this.lineBuffer)),this.follow&&this.scrollToBottom()}disconnectedCallback(){super.disconnectedCallback(),this.outputEl?.removeEventListener("scroll",this.handleScroll),this.resizeObserver?.disconnect(),this.resizeObserver=null}appendLine(e){this.lineBuffer=this.clampToMax([...this.lineBuffer,{raw:e,parsed:_o(e)}])}clampToMax(e){return e.length>this.maxLines?e.slice(-this.maxLines):e}renderSegment({text:e,state:t}){if(function(e){return!(null!==e.fgClass||null!==e.fgRgb||null!==e.bgColor||e.bold||e.dim||e.italic||e.underline)}(t))return e;const i={"log-bold":t.bold,"log-dim":t.dim,"log-italic":t.italic,"log-underline":t.underline};return t.fgClass&&(i[t.fgClass]=!0),W`<span
37021
+ `,t([fe({type:"number",default:"null",reflect:!0,description:"Current numeric value. null when the field is empty."})],e.NumberInput.prototype,"value",null),t([fe({type:"number",description:"Minimum allowed value."})],e.NumberInput.prototype,"min",void 0),t([fe({type:"number",description:"Maximum allowed value."})],e.NumberInput.prototype,"max",void 0),t([fe({type:"number",default:"1",description:"Step increment for stepper buttons and keyboard arrow keys."})],e.NumberInput.prototype,"step",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.NumberInput.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.NumberInput.prototype,"placeholder",void 0),t([fe({type:"NumberInputSize",options:Object.values(Do),default:Do.Medium,description:"Controls padding and font size."})],e.NumberInput.prototype,"size",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.NumberInput.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.NumberInput.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.NumberInput.prototype,"invalid",void 0),e.NumberInput=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input, stepper click, or a programmatic update. Not fired on initial render.",detail:"{ value: number | null }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-number-input")],e.NumberInput);const Vo={MAX_LINES:1e4,FOLLOW_SCROLL_THRESHOLD:50},Fo=["log-black","log-danger","log-success","log-warning","log-blue","log-magenta","log-info","log-white","log-gray","log-danger","log-success","log-warning","log-blue","log-magenta","log-info","log-white"],Ro=["#1c1c1c","#8b0000","#006400","#808000","#00008b","#800080","#008b8b","#a9a9a9","#404040","#ff4444","#44ff44","#ffff44","#4444ff","#ff44ff","#44ffff","#ffffff"];function Oo(e){if(e<232){const t=e-16,i=Math.floor(t/36),n=Math.floor(t%36/6),o=t%6,s=e=>0===e?0:55+40*e;return`rgb(${s(i)},${s(n)},${s(o)})`}const t=8+10*(e-232);return`rgb(${t},${t},${t})`}function $o(){return{fgClass:null,fgRgb:null,bgColor:null,bold:!1,dim:!1,italic:!1,underline:!1}}function _o(e,t){const i=""===t?[0]:t.split(";").map(Number),n={...e};let o=0;for(;o<i.length;){const e=i[o];if(0===e)Object.assign(n,$o());else if(1===e)n.bold=!0;else if(2===e)n.dim=!0;else if(3===e)n.italic=!0;else if(4===e)n.underline=!0;else if(22===e)n.bold=!1,n.dim=!1;else if(23===e)n.italic=!1;else if(24===e)n.underline=!1;else if(e>=30&&e<=37)n.fgClass=Fo[e-30],n.fgRgb=null;else if(38===e){const e=i[o+1];if(5===e&&o+2<i.length){const e=i[o+2];e<16?(n.fgClass=Fo[e],n.fgRgb=null):(n.fgClass=null,n.fgRgb=Oo(e)),o+=2}else 2===e&&o+4<i.length&&(n.fgClass=null,n.fgRgb=`rgb(${i[o+2]},${i[o+3]},${i[o+4]})`,o+=4)}else if(39===e)n.fgClass=null,n.fgRgb=null;else if(e>=40&&e<=47)n.bgColor=Ro[e-40];else if(48===e){const e=i[o+1];if(5===e&&o+2<i.length){const e=i[o+2];n.bgColor=e<16?Ro[e]:Oo(e),o+=2}else 2===e&&o+4<i.length&&(n.bgColor=`rgb(${i[o+2]},${i[o+3]},${i[o+4]})`,o+=4)}else 49===e?n.bgColor=null:e>=90&&e<=97?(n.fgClass=Fo[e-90+8],n.fgRgb=null):e>=100&&e<=107&&(n.bgColor=Ro[e-100+8]);o++}return n}function Eo(e){const t=[];let i={fgClass:null,fgRgb:null,bgColor:null,bold:!1,dim:!1,italic:!1,underline:!1},n=0;for(const o of e.matchAll(/\x1b\[([0-9;]*)m/g)){const s=e.slice(n,o.index);s&&t.push({text:s,state:i}),i=_o(i,o[1]),n=o.index+o[0].length}const o=e.slice(n);return o&&t.push({text:o,state:i}),t}e.Checkbox.ensureDefined(),e.LogOutput=class extends qe{constructor(){super(...arguments),this.follow=!0,this.followLabel="Follow",this.lineNumbers=!1,this.maxLines=Vo.MAX_LINES,this.lineBuffer=[],this.resizeObserver=null,this.handleScroll=()=>{const{scrollTop:e,scrollHeight:t,clientHeight:i}=this.outputEl,n=t-e-i;this.follow=!(n>Vo.FOLLOW_SCROLL_THRESHOLD)}}get lines(){return this.lineBuffer.map(e=>e.raw)}set lines(e){this.lineBuffer=this.clampToMax(e.map(e=>({raw:e,parsed:Eo(e)})))}firstUpdated(){this.outputEl.addEventListener("scroll",this.handleScroll),this.resizeObserver=new ResizeObserver(()=>{this.follow&&this.scrollToBottom()}),this.resizeObserver.observe(this.outputEl)}updated(e){e.has("maxLines")&&(this.lineBuffer=this.clampToMax(this.lineBuffer)),this.follow&&this.scrollToBottom()}disconnectedCallback(){super.disconnectedCallback(),this.outputEl?.removeEventListener("scroll",this.handleScroll),this.resizeObserver?.disconnect(),this.resizeObserver=null}appendLine(e){this.lineBuffer=this.clampToMax([...this.lineBuffer,{raw:e,parsed:Eo(e)}])}clampToMax(e){return e.length>this.maxLines?e.slice(-this.maxLines):e}renderSegment({text:e,state:t}){if(function(e){return!(null!==e.fgClass||null!==e.fgRgb||null!==e.bgColor||e.bold||e.dim||e.italic||e.underline)}(t))return e;const i={"log-bold":t.bold,"log-dim":t.dim,"log-italic":t.italic,"log-underline":t.underline};return t.fgClass&&(i[t.fgClass]=!0),W`<span
36991
37022
  class=${Ne(i)}
36992
- style=${ko({color:t.fgRgb,background:t.bgColor})}
37023
+ style=${yo({color:t.fgRgb,background:t.bgColor})}
36993
37024
  >${e}</span
36994
37025
  >`}scrollToBottom(){this.outputEl.scrollTop=this.outputEl.scrollHeight}handleFollowChange(e){this.follow=e.detail.checked,this.follow&&this.scrollToBottom()}render(){return W`
36995
37026
  <div class="toolbar">
@@ -37020,7 +37051,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37020
37051
  display: flex;
37021
37052
  height: 100%;
37022
37053
  flex-direction: column;
37023
- color: var(--quantic-component-log-output-fg);
37054
+ color: var(--quantic-component-log-output-fg, inherit);
37024
37055
  font-family: var(
37025
37056
  --quantic-component-log-output-font-family,
37026
37057
  var(--quantic-font-family-mono)
@@ -37158,7 +37189,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37158
37189
  .output::-webkit-scrollbar-thumb:hover {
37159
37190
  background: rgba(var(--quantic-fg-white-rgb), 0.2);
37160
37191
  }
37161
- `,t([fe({type:"boolean",default:"true",reflect:!0,description:"When true, the output automatically scrolls to the latest line."})],e.LogOutput.prototype,"follow",void 0),t([fe({type:"string",default:"Follow",attribute:"follow-label",description:"Label text for the follow toggle checkbox."})],e.LogOutput.prototype,"followLabel",void 0),t([fe({type:"boolean",default:"false",reflect:!0,attribute:"line-numbers",description:"When true, prepends line numbers to each row."})],e.LogOutput.prototype,"lineNumbers",void 0),t([fe({type:"number",default:String(Do.MAX_LINES),attribute:"max-lines",description:"Maximum number of lines retained in the buffer. Older lines are dropped when the limit is exceeded."})],e.LogOutput.prototype,"maxLines",void 0),t([ke()],e.LogOutput.prototype,"lineBuffer",void 0),t([xe(".output")],e.LogOutput.prototype,"outputEl",void 0),e.LogOutput=t([Se("quantic-log-output")],e.LogOutput);const Eo={Primary:"primary",Secondary:"secondary"},Uo={Default:"default",Focused:"focused"};e.Navbar=class extends qe{constructor(){super(...arguments),this.ariaLabel="Navbar navigation"}render(){return Re`
37192
+ `,t([fe({type:"boolean",default:"true",reflect:!0,description:"When true, the output automatically scrolls to the latest line."})],e.LogOutput.prototype,"follow",void 0),t([fe({type:"string",default:"Follow",attribute:"follow-label",description:"Label text for the follow toggle checkbox."})],e.LogOutput.prototype,"followLabel",void 0),t([fe({type:"boolean",default:"false",reflect:!0,attribute:"line-numbers",description:"When true, prepends line numbers to each row."})],e.LogOutput.prototype,"lineNumbers",void 0),t([fe({type:"number",default:String(Vo.MAX_LINES),attribute:"max-lines",description:"Maximum number of lines retained in the buffer. Older lines are dropped when the limit is exceeded."})],e.LogOutput.prototype,"maxLines",void 0),t([ke()],e.LogOutput.prototype,"lineBuffer",void 0),t([xe(".output")],e.LogOutput.prototype,"outputEl",void 0),e.LogOutput=t([Se("quantic-log-output")],e.LogOutput);const Uo={Primary:"primary",Secondary:"secondary"},Go={Default:"default",Focused:"focused"};e.Navbar=class extends qe{constructor(){super(...arguments),this.ariaLabel="Navbar navigation"}render(){return Re`
37162
37193
  <nav class="main" role="navigation" aria-label=${this.ariaLabel}>
37163
37194
  <slot></slot>
37164
37195
  </nav>
@@ -37209,6 +37240,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37209
37240
  font-size: var(--quantic-font-size-body-lg);
37210
37241
  color: var(--quantic-component-navbar-menu-item-color);
37211
37242
  background: none;
37243
+ background-color: var(--quantic-component-navbar-menu-item-bg);
37212
37244
  border: none;
37213
37245
  cursor: pointer;
37214
37246
  border-radius: var(--quantic-radius-md);
@@ -37247,7 +37279,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37247
37279
  flex-shrink: 0;
37248
37280
  display: flex;
37249
37281
  }
37250
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Highlights the item as the currently active route."})],e.NavbarMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"URL to navigate to. When set the element renders as an <a> tag."})],e.NavbarMenuItem.prototype,"href",void 0),t([fe({type:"string",default:"",attribute:"aria-label",description:"Accessible label for the nav item (required for icon-only items)."})],e.NavbarMenuItem.prototype,"ariaLabel",void 0),e.NavbarMenuItem=t([Se("quantic-navbar-menu-item")],e.NavbarMenuItem);class Go{constructor(e,t,i=!1){this.host=e,this.query=t,this.ssrDefault=i,this.matchesValue=!1,this.handleChange=e=>{this.matchesValue=e.matches,this.host.requestUpdate()};"undefined"!=typeof window&&!!window.matchMedia&&(this.mediaQuery=window.matchMedia(t),this.matchesValue=this.mediaQuery.matches),this.host.addController(this)}hostConnected(){!this.mediaQuery&&"undefined"!=typeof window&&window.matchMedia&&(this.mediaQuery=window.matchMedia(this.query),this.matchesValue=this.mediaQuery.matches,this.host.requestUpdate()),this.mediaQuery?.addEventListener("change",this.handleChange)}hostDisconnected(){this.mediaQuery?.removeEventListener("change",this.handleChange)}get matches(){return this.mediaQuery?this.matchesValue:this.ssrDefault}}class Zo{static below(e){return`(max-width: ${e-1}px)`}static above(e){return`(min-width: ${e}px)`}static between(e,t){return`(min-width: ${e}px) and (max-width: ${t-1}px)`}}function No(e,t=!1){return function(i,n){const o=Symbol(n);Object.defineProperty(i,n,{get(){return this[o]||(this[o]=new Go(this,e,t)),this[o].matches},enumerable:!0,configurable:!0})}}const Wo="aside.expanded";e.Button.ensureDefined(),e.LucideIconMenu.ensureDefined(),e.Layout=class extends(ze(qe,["logo","titlebar","toolbar","navbar","sidebar"])){constructor(){super(...arguments),this.variant=Uo.Default,this._initializedInBrowser=!1,this._asideStateInitialized=!1,this.ssrHasSidebar=!1,this.hasSidebarSlot=!1,this.hasTitlebarSlot=!1,this._isAsideExpanded=!1,this.handleAsideExpand=e=>{this.isAsideExpanded=e.detail.expanded},this.handleKeydown=e=>{"Escape"===e.key&&this.isAsideExpanded&&(this.isAsideExpanded=!1)}}get isAsideExpanded(){return this._isAsideExpanded}set isAsideExpanded(e){const t=this._isAsideExpanded;this._isAsideExpanded=e,t!==e&&(this.requestUpdate("isAsideExpanded",t),e?this.activateFocusTrap():this.deactivateFocusTrap())}toggleAsideExpanded(){this.isAsideExpanded=!this.isAsideExpanded}async activateFocusTrap(){if(this.isSmallViewport&&this.asideElement){await this.updateComplete;try{this.focusTrap=uo(this.asideElement,{escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0,initialFocus:!1,returnFocusOnDeactivate:!0,setReturnFocus:()=>this.toggleButtonElement||document.body,tabbableOptions:{getShadowRoot:!0}}),this.focusTrap.activate()}catch(e){console.error("Failed to activate focus trap:",e),this.focusTrap=null}}}deactivateFocusTrap(){if(this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}}connectedCallback(){super.connectedCallback(),this.hasAttribute("ssr-has-sidebar")&&(this.hasSidebarSlot=!0,this.removeAttribute("ssr-has-sidebar")),document.addEventListener("keydown",this.handleKeydown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.handleKeydown),this.deactivateFocusTrap()}willUpdate(e){const t=void 0===this.previousIsSmallViewport,i=!this._initializedInBrowser&&"undefined"!=typeof window;t&&(this.previousIsSmallViewport=this.isSmallViewport),i&&(this._initializedInBrowser=!0)}updated(e){super.updated(e),this._initializedInBrowser&&!this._asideStateInitialized?(this._asideStateInitialized=!0,this.isAsideExpanded=!this.isSmallViewport):this._initializedInBrowser&&this.previousIsSmallViewport!==this.isSmallViewport&&(this.isAsideExpanded=!this.isSmallViewport),this.previousIsSmallViewport=this.isSmallViewport}static finalizeStyles(e){return[...super.finalizeStyles(e)??[],l("@layer quantic-header-visibility {\n .header { display: none; }\n @media (max-width: 1023px) { .has-sidebar .header { display: revert-layer; } }\n }"),Pe("navbar",d`
37282
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Highlights the item as the currently active route."})],e.NavbarMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"URL to navigate to. When set the element renders as an <a> tag."})],e.NavbarMenuItem.prototype,"href",void 0),t([fe({type:"string",default:"",attribute:"aria-label",description:"Accessible label for the nav item (required for icon-only items)."})],e.NavbarMenuItem.prototype,"ariaLabel",void 0),e.NavbarMenuItem=t([Se("quantic-navbar-menu-item")],e.NavbarMenuItem);class Zo{constructor(e,t,i=!1){this.host=e,this.query=t,this.ssrDefault=i,this.matchesValue=!1,this.handleChange=e=>{this.matchesValue=e.matches,this.host.requestUpdate()};"undefined"!=typeof window&&!!window.matchMedia&&(this.mediaQuery=window.matchMedia(t),this.matchesValue=this.mediaQuery.matches),this.host.addController(this)}hostConnected(){!this.mediaQuery&&"undefined"!=typeof window&&window.matchMedia&&(this.mediaQuery=window.matchMedia(this.query),this.matchesValue=this.mediaQuery.matches,this.host.requestUpdate()),this.mediaQuery?.addEventListener("change",this.handleChange)}hostDisconnected(){this.mediaQuery?.removeEventListener("change",this.handleChange)}get matches(){return this.mediaQuery?this.matchesValue:this.ssrDefault}}class No{static below(e){return`(max-width: ${e-1}px)`}static above(e){return`(min-width: ${e}px)`}static between(e,t){return`(min-width: ${e}px) and (max-width: ${t-1}px)`}}function Wo(e,t=!1){return function(i,n){const o=Symbol(n);Object.defineProperty(i,n,{get(){return this[o]||(this[o]=new Zo(this,e,t)),this[o].matches},enumerable:!0,configurable:!0})}}const Xo="aside.expanded";e.Button.ensureDefined(),e.LucideIconMenu.ensureDefined(),e.Layout=class extends(ze(qe,["logo","titlebar","toolbar","navbar","sidebar"])){constructor(){super(...arguments),this.variant=Go.Default,this._initializedInBrowser=!1,this._asideStateInitialized=!1,this.ssrHasSidebar=!1,this.hasSidebarSlot=!1,this.hasTitlebarSlot=!1,this._isAsideExpanded=!1,this.handleAsideExpand=e=>{this.isAsideExpanded=e.detail.expanded},this.handleKeydown=e=>{"Escape"===e.key&&this.isAsideExpanded&&(this.isAsideExpanded=!1)}}get isAsideExpanded(){return this._isAsideExpanded}set isAsideExpanded(e){const t=this._isAsideExpanded;this._isAsideExpanded=e,t!==e&&(this.requestUpdate("isAsideExpanded",t),e?this.activateFocusTrap():this.deactivateFocusTrap())}toggleAsideExpanded(){this.isAsideExpanded=!this.isAsideExpanded}async activateFocusTrap(){if(this.isSmallViewport&&this.asideElement){await this.updateComplete;try{this.focusTrap=ho(this.asideElement,{escapeDeactivates:!1,clickOutsideDeactivates:!1,allowOutsideClick:!0,initialFocus:!1,returnFocusOnDeactivate:!0,setReturnFocus:()=>this.toggleButtonElement||document.body,tabbableOptions:{getShadowRoot:!0}}),this.focusTrap.activate()}catch(e){console.error("Failed to activate focus trap:",e),this.focusTrap=null}}}deactivateFocusTrap(){if(this.focusTrap)try{this.focusTrap.deactivate()}catch(e){console.error("Failed to deactivate focus trap:",e)}finally{this.focusTrap=null}}connectedCallback(){super.connectedCallback(),this.hasAttribute("ssr-has-sidebar")&&(this.hasSidebarSlot=!0,this.removeAttribute("ssr-has-sidebar")),document.addEventListener("keydown",this.handleKeydown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("keydown",this.handleKeydown),this.deactivateFocusTrap()}willUpdate(e){const t=void 0===this.previousIsSmallViewport,i=!this._initializedInBrowser&&"undefined"!=typeof window;t&&(this.previousIsSmallViewport=this.isSmallViewport),i&&(this._initializedInBrowser=!0)}updated(e){super.updated(e),this._initializedInBrowser&&!this._asideStateInitialized?(this._asideStateInitialized=!0,this.isAsideExpanded=!this.isSmallViewport):this._initializedInBrowser&&this.previousIsSmallViewport!==this.isSmallViewport&&(this.isAsideExpanded=!this.isSmallViewport),this.previousIsSmallViewport=this.isSmallViewport}static finalizeStyles(e){return[...super.finalizeStyles(e)??[],l("@layer quantic-header-visibility {\n .header { display: none; }\n @media (max-width: 1023px) { .has-sidebar .header { display: revert-layer; } }\n }"),Pe("navbar",d`
37251
37283
  @layer quantic-header-visibility {
37252
37284
  .header {
37253
37285
  display: revert-layer;
@@ -37458,6 +37490,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37458
37490
  );
37459
37491
  padding-inline: var(--quantic-component-layout-aside-padding-inline);
37460
37492
  padding-block: var(--quantic-component-layout-aside-padding-block);
37493
+ background-color: var(--quantic-component-layout-aside-bg);
37461
37494
  border-right: 1px solid var(--quantic-component-layout-aside-border);
37462
37495
  overflow: visible;
37463
37496
  display: none;
@@ -37598,7 +37631,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37598
37631
  min-width: var(--quantic-spacing-80);
37599
37632
  max-width: var(--quantic-spacing-160);
37600
37633
  }
37601
- `,t([fe({type:"LayoutVariant",options:Object.values(Uo),default:Uo.Default,reflect:!0,description:'Layout mode. "default" uses full-bleed content; "focused" centres content with a max-width cap.'})],e.Layout.prototype,"variant",void 0),t([No(Zo.below(1024))],e.Layout.prototype,"isSmallViewport",void 0),t([me({type:Boolean,attribute:"ssr-has-sidebar"})],e.Layout.prototype,"ssrHasSidebar",void 0),t([ke()],e.Layout.prototype,"hasSidebarSlot",void 0),t([ke()],e.Layout.prototype,"hasTitlebarSlot",void 0),t([xe(".aside")],e.Layout.prototype,"asideElement",void 0),t([xe(".toggle-button")],e.Layout.prototype,"toggleButtonElement",void 0),t([rn({context:Wo})],e.Layout.prototype,"_isAsideExpanded",void 0),e.Layout=t([Se("quantic-layout")],e.Layout),e.LayoutLogo=class extends qe{constructor(){super(...arguments),this.expanded=!0}render(){return W`
37634
+ `,t([fe({type:"LayoutVariant",options:Object.values(Go),default:Go.Default,reflect:!0,description:'Layout mode. "default" uses full-bleed content; "focused" centres content with a max-width cap.'})],e.Layout.prototype,"variant",void 0),t([Wo(No.below(1024))],e.Layout.prototype,"isSmallViewport",void 0),t([me({type:Boolean,attribute:"ssr-has-sidebar"})],e.Layout.prototype,"ssrHasSidebar",void 0),t([ke()],e.Layout.prototype,"hasSidebarSlot",void 0),t([ke()],e.Layout.prototype,"hasTitlebarSlot",void 0),t([xe(".aside")],e.Layout.prototype,"asideElement",void 0),t([xe(".toggle-button")],e.Layout.prototype,"toggleButtonElement",void 0),t([rn({context:Xo})],e.Layout.prototype,"_isAsideExpanded",void 0),e.Layout=t([Se("quantic-layout")],e.Layout),e.LayoutLogo=class extends qe{constructor(){super(...arguments),this.expanded=!0}render(){return W`
37602
37635
  <slot name="expanded" ?hidden=${!0!==this.expanded}></slot>
37603
37636
  <slot name="collapsed" ?hidden=${!0===this.expanded}></slot>
37604
37637
  `}},e.LayoutLogo.meta={tag:"quantic-layout-logo",description:"Logo area that lives inside the quantic-layout header or sidebar. Automatically switches between expanded and collapsed slots based on the sidebar state consumed from context.",category:"layout",slots:{expanded:{description:"Logo shown when the sidebar is expanded (full wordmark)."},collapsed:{description:"Logo shown when the sidebar is collapsed (icon only)."}}},e.LayoutLogo.styles=d`
@@ -37608,7 +37641,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37608
37641
  [hidden] {
37609
37642
  display: none;
37610
37643
  }
37611
- `,t([an({context:Wo,subscribe:!0})],e.LayoutLogo.prototype,"expanded",void 0),e.LayoutLogo=t([Se("quantic-layout-logo")],e.LayoutLogo),e.Page=class extends qe{constructor(){super(...arguments),this.fill=!1,this.bleeds=!1,this.contained=!1}render(){return Re`
37644
+ `,t([an({context:Xo,subscribe:!0})],e.LayoutLogo.prototype,"expanded",void 0),e.LayoutLogo=t([Se("quantic-layout-logo")],e.LayoutLogo),e.Page=class extends qe{constructor(){super(...arguments),this.fill=!1,this.bleeds=!1,this.contained=!1}render(){return Re`
37612
37645
  <main class="main">
37613
37646
  <slot></slot>
37614
37647
  </main>
@@ -37653,7 +37686,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37653
37686
  padding-inline: var(--quantic-component-page-contained-padding-inline);
37654
37687
  }
37655
37688
  }
37656
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Constrain the page to the available height and clip overflow, so internal regions own their own scrolling (e.g. splitter panes, full-height grids, maps). Without this, the page grows with its content and the layout body slot scrolls."})],e.Page.prototype,"fill",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Remove the default padding so content extends edge-to-edge. Useful for full-bleed layouts such as maps, images, or custom-padded regions."})],e.Page.prototype,"bleeds",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Constrain the page content to a maximum width and center it horizontally on viewports wider than the md breakpoint. Override the width via --quantic-component-page-max-width and inline padding via --quantic-component-page-contained-padding-inline."})],e.Page.prototype,"contained",void 0),e.Page=t([Se("quantic-page")],e.Page);const Xo={Top:"top",TopStart:"top-start",TopEnd:"top-end",Bottom:"bottom",BottomStart:"bottom-start",BottomEnd:"bottom-end",Left:"left",LeftStart:"left-start",LeftEnd:"left-end",Right:"right",RightStart:"right-start",RightEnd:"right-end"},Ko={Small:"sm",Medium:"md",Large:"lg"};var Jo,Qo,Yo;e.TooltipPopup=class extends qe{constructor(){super(...arguments),this.visible=!1}render(){return W`
37689
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Constrain the page to the available height and clip overflow, so internal regions own their own scrolling (e.g. splitter panes, full-height grids, maps). Without this, the page grows with its content and the layout body slot scrolls."})],e.Page.prototype,"fill",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Remove the default padding so content extends edge-to-edge. Useful for full-bleed layouts such as maps, images, or custom-padded regions."})],e.Page.prototype,"bleeds",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Constrain the page content to a maximum width and center it horizontally on viewports wider than the md breakpoint. Override the width via --quantic-component-page-max-width and inline padding via --quantic-component-page-contained-padding-inline."})],e.Page.prototype,"contained",void 0),e.Page=t([Se("quantic-page")],e.Page);const Ko={Top:"top",TopStart:"top-start",TopEnd:"top-end",Bottom:"bottom",BottomStart:"bottom-start",BottomEnd:"bottom-end",Left:"left",LeftStart:"left-start",LeftEnd:"left-end",Right:"right",RightStart:"right-start",RightEnd:"right-end"},Jo={Small:"sm",Medium:"md",Large:"lg"};var Qo,Yo,es;e.TooltipPopup=class extends qe{constructor(){super(...arguments),this.visible=!1}render(){return W`
37657
37690
  <div class="content"><slot></slot></div>
37658
37691
  <div class="arrow"></div>
37659
37692
  `}},e.TooltipPopup.meta={tag:"quantic-tooltip-popup",description:"Internal floating content container for quantic-tooltip. Positioned absolutely relative to the trigger via @floating-ui/dom. Not intended for direct use — use quantic-tooltip instead.",category:"feedback",slots:{"":{description:"Tooltip content (managed by quantic-tooltip)."}},relatedTo:["quantic-tooltip"]},e.TooltipPopup.styles=d`
@@ -37706,7 +37739,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37706
37739
  background-color: var(--quantic-component-tooltip-background);
37707
37740
  transform: rotate(45deg);
37708
37741
  }
37709
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Controls visibility — toggled by the parent quantic-tooltip."})],e.TooltipPopup.prototype,"visible",void 0),t([xe(".arrow")],e.TooltipPopup.prototype,"arrowElement",void 0),e.TooltipPopup=t([Se("quantic-tooltip-popup")],e.TooltipPopup),e.TooltipPopup.ensureDefined(),e.Tooltip=class extends qe{constructor(){super(...arguments),this.placement=Xo.Top,this.size=Ko.Medium,this.showDelay=250,this.hideDelay=0,this.disabled=!1,this.offset=8,this.open=!1,this.tooltipId=rt("tooltip"),this.contentElements=[],this.handleMouseEnter=()=>{this.disabled||this.open||(this.clearTimeouts(),this.showTimeout=window.setTimeout(()=>this.show(),this.showDelay))},this.handleMouseLeave=()=>{this.disabled||this.open||(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),this.hideDelay))},this.handleFocus=()=>{this.disabled||this.open||(this.clearTimeouts(),this.show())},this.handleBlur=()=>{this.disabled||this.open||(this.clearTimeouts(),this.hide())},this.handleEscape=e=>{"Escape"!==e.key||this.open||this.hide()}}firstUpdated(){this.isConnected&&this.initPopup()}connectedCallback(){super.connectedCallback(),this.hasUpdated&&!this.popup&&this.initPopup()}initPopup(){this.popup=document.createElement("quantic-tooltip-popup"),this.movePopupToContainer(),this.open&&this.show()}disconnectedCallback(){super.disconnectedCallback(),this.clearTimeouts(),this.cleanup?.(),this.restorePopup()}restorePopup(){this.contentElements.forEach(e=>{e.setAttribute("slot","content"),this.appendChild(e)}),this.contentElements=[],this.popup?.remove(),this.popup=void 0}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}handleSlotChange(){const e=this.triggerElement;e&&e.setAttribute("aria-describedby",this.tooltipId)}clearTimeouts(){this.showTimeout&&clearTimeout(this.showTimeout),this.hideTimeout&&clearTimeout(this.hideTimeout),this.showTimeout=void 0,this.hideTimeout=void 0}async show(){this.popup&&this.triggerElement&&(await this.popup.updateComplete,this.popup.visible=!0,this.popup.id=this.tooltipId,this.popup.setAttribute("role","tooltip"),this.popup.setAttribute("aria-hidden","false"),this.updatePosition(),document.addEventListener("keydown",this.handleEscape))}hide(){this.popup&&(this.cleanup?.(),this.popup.visible=!1,this.popup.setAttribute("aria-hidden","true"),document.removeEventListener("keydown",this.handleEscape))}movePopupToContainer(){if(!this.popup)return;this.copyCustomPropertiesToPopup(),this.contentElements=Array.from(this.children).filter(e=>"content"===e.getAttribute("slot")),this.contentElements.forEach(e=>{e.removeAttribute("slot"),this.popup.appendChild(e)});let e=this.container?document.querySelector(this.container):document.body;e||(console.warn(`Tooltip container "${this.container}" not found, using body`),e=document.body),e.appendChild(this.popup)}copyCustomPropertiesToPopup(){if(!this.popup)return;const e=getComputedStyle(this);for(const t of Array.from(e)){if(!t.startsWith("--quantic"))continue;const i=e.getPropertyValue(t).trim();i&&this.popup.style.setProperty(t,i)}}updatePosition(){if(this.triggerElement&&this.popup&&this.popup.arrowElement){const{arrowElement:e}=this.popup,t=[Ui(this.offset),Zi(),Gi({padding:8}),Ni({element:e})];this.cleanup=Ei(this.triggerElement,this.popup,async()=>{if(!this.triggerElement||!this.popup||!e)return;const{x:i,y:n,placement:o,middlewareData:s}=await Wi(this.triggerElement,this.popup,{placement:this.placement,middleware:t,strategy:"fixed"});if(Object.assign(this.popup.style,{left:`${i}px`,top:`${n}px`}),s.arrow){const{x:t,y:i}=s.arrow,n={top:"bottom",right:"left",bottom:"top",left:"right"}[o.split("-")[0]];Object.assign(e.style,{left:null!=t?`${t}px`:"",top:null!=i?`${i}px`:"",right:"",bottom:"",[n]:"calc(var(--quantic-component-tooltip-arrow-size) / -2)"})}})}}render(){return W`
37742
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Controls visibility — toggled by the parent quantic-tooltip."})],e.TooltipPopup.prototype,"visible",void 0),t([xe(".arrow")],e.TooltipPopup.prototype,"arrowElement",void 0),e.TooltipPopup=t([Se("quantic-tooltip-popup")],e.TooltipPopup),e.TooltipPopup.ensureDefined(),e.Tooltip=class extends qe{constructor(){super(...arguments),this.placement=Ko.Top,this.size=Jo.Medium,this.showDelay=250,this.hideDelay=0,this.disabled=!1,this.offset=8,this.open=!1,this.tooltipId=rt("tooltip"),this.contentElements=[],this.handleMouseEnter=()=>{this.disabled||this.open||(this.clearTimeouts(),this.showTimeout=window.setTimeout(()=>this.show(),this.showDelay))},this.handleMouseLeave=()=>{this.disabled||this.open||(this.clearTimeouts(),this.hideTimeout=window.setTimeout(()=>this.hide(),this.hideDelay))},this.handleFocus=()=>{this.disabled||this.open||(this.clearTimeouts(),this.show())},this.handleBlur=()=>{this.disabled||this.open||(this.clearTimeouts(),this.hide())},this.handleEscape=e=>{"Escape"!==e.key||this.open||this.hide()}}firstUpdated(){this.isConnected&&this.initPopup()}connectedCallback(){super.connectedCallback(),this.hasUpdated&&!this.popup&&this.initPopup()}initPopup(){this.popup=document.createElement("quantic-tooltip-popup"),this.movePopupToContainer(),this.open&&this.show()}disconnectedCallback(){super.disconnectedCallback(),this.clearTimeouts(),this.cleanup?.(),this.restorePopup()}restorePopup(){this.contentElements.forEach(e=>{e.setAttribute("slot","content"),this.appendChild(e)}),this.contentElements=[],this.popup?.remove(),this.popup=void 0}get triggerElement(){return this.triggerSlot?.assignedElements({flatten:!0})[0]}handleSlotChange(){const e=this.triggerElement;e&&e.setAttribute("aria-describedby",this.tooltipId)}clearTimeouts(){this.showTimeout&&clearTimeout(this.showTimeout),this.hideTimeout&&clearTimeout(this.hideTimeout),this.showTimeout=void 0,this.hideTimeout=void 0}async show(){this.popup&&this.triggerElement&&(await this.popup.updateComplete,this.popup.visible=!0,this.popup.id=this.tooltipId,this.popup.setAttribute("role","tooltip"),this.popup.setAttribute("aria-hidden","false"),this.updatePosition(),document.addEventListener("keydown",this.handleEscape))}hide(){this.popup&&(this.cleanup?.(),this.popup.visible=!1,this.popup.setAttribute("aria-hidden","true"),document.removeEventListener("keydown",this.handleEscape))}movePopupToContainer(){if(!this.popup)return;this.copyCustomPropertiesToPopup(),this.contentElements=Array.from(this.children).filter(e=>"content"===e.getAttribute("slot")),this.contentElements.forEach(e=>{e.removeAttribute("slot"),this.popup.appendChild(e)});let e=this.container?document.querySelector(this.container):document.body;e||(console.warn(`Tooltip container "${this.container}" not found, using body`),e=document.body),e.appendChild(this.popup)}copyCustomPropertiesToPopup(){if(!this.popup)return;const e=getComputedStyle(this);for(const t of Array.from(e)){if(!t.startsWith("--quantic"))continue;const i=e.getPropertyValue(t).trim();i&&this.popup.style.setProperty(t,i)}}updatePosition(){if(this.triggerElement&&this.popup&&this.popup.arrowElement){const{arrowElement:e}=this.popup,t=[Ui(this.offset),Zi(),Gi({padding:8}),Ni({element:e})];this.cleanup=Ei(this.triggerElement,this.popup,async()=>{if(!this.triggerElement||!this.popup||!e)return;const{x:i,y:n,placement:o,middlewareData:s}=await Wi(this.triggerElement,this.popup,{placement:this.placement,middleware:t,strategy:"fixed"});if(Object.assign(this.popup.style,{left:`${i}px`,top:`${n}px`}),s.arrow){const{x:t,y:i}=s.arrow,n={top:"bottom",right:"left",bottom:"top",left:"right"}[o.split("-")[0]];Object.assign(e.style,{left:null!=t?`${t}px`:"",top:null!=i?`${i}px`:"",right:"",bottom:"",[n]:"calc(var(--quantic-component-tooltip-arrow-size) / -2)"})}})}}render(){return W`
37710
37743
  <div
37711
37744
  class="trigger"
37712
37745
  @mouseenter=${this.handleMouseEnter}
@@ -37727,7 +37760,6 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37727
37760
  --quantic-component-tooltip-font-size: var(--quantic-font-size-body-sm);
37728
37761
  --quantic-component-tooltip-line-height: var(--quantic-line-height-body-sm);
37729
37762
  --quantic-component-tooltip-z-index: 9999;
37730
- --quantic-component-tooltip-offset: 20px;
37731
37763
  --quantic-component-tooltip-arrow-size: var(--quantic-spacing-2);
37732
37764
  }
37733
37765
 
@@ -37750,7 +37782,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37750
37782
  .trigger {
37751
37783
  display: contents;
37752
37784
  }
37753
- `,t([fe({type:"TooltipPlacement",options:Object.values(Xo),default:Xo.Top,description:"Preferred placement of the tooltip relative to the trigger."})],e.Tooltip.prototype,"placement",void 0),t([fe({type:"TooltipSize",options:Object.values(Ko),default:Ko.Medium,reflect:!0,description:"Controls max-width, padding, and font size of the tooltip popup."})],e.Tooltip.prototype,"size",void 0),t([fe({type:"number",attribute:"show-delay",default:"250",description:"Delay in milliseconds before the tooltip appears."})],e.Tooltip.prototype,"showDelay",void 0),t([fe({type:"number",attribute:"hide-delay",default:"0",description:"Delay in milliseconds before the tooltip hides."})],e.Tooltip.prototype,"hideDelay",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the tooltip from showing."})],e.Tooltip.prototype,"disabled",void 0),t([fe({type:"number",default:"8",description:"Distance in pixels between the trigger and the tooltip popup."})],e.Tooltip.prototype,"offset",void 0),t([fe({type:"boolean",default:"false",description:"Controls tooltip visibility programmatically."})],e.Tooltip.prototype,"open",void 0),t([fe({type:"string",description:"CSS selector of the DOM element to teleport the popup into. Defaults to document.body."})],e.Tooltip.prototype,"container",void 0),t([xe("slot:not([name])")],e.Tooltip.prototype,"triggerSlot",void 0),e.Tooltip=t([Se("quantic-tooltip")],e.Tooltip),e.Tooltip.ensureDefined(),e.SidebarMenuItem=class extends qe{constructor(){super(...arguments),this.selected=!1,this.href="",this.label="",this.variant=Eo.Primary}hasIcon(){const e=this.shadowRoot?.querySelector('slot[name="icon"]');return e?.assignedElements().length>0}render(){const e=this.isDesktopViewport&&!1===this.isAsideExpanded,t=Ne({main:!0,"is-selected":this.selected,"is-collapsed":e,[`variant--${this.variant}`]:!0}),i=e?null:W`<span class="label">${this.label||W`<slot></slot>`}</span>
37785
+ `,t([fe({type:"TooltipPlacement",options:Object.values(Ko),default:Ko.Top,description:"Preferred placement of the tooltip relative to the trigger."})],e.Tooltip.prototype,"placement",void 0),t([fe({type:"TooltipSize",options:Object.values(Jo),default:Jo.Medium,reflect:!0,description:"Controls max-width, padding, and font size of the tooltip popup."})],e.Tooltip.prototype,"size",void 0),t([fe({type:"number",attribute:"show-delay",default:"250",description:"Delay in milliseconds before the tooltip appears."})],e.Tooltip.prototype,"showDelay",void 0),t([fe({type:"number",attribute:"hide-delay",default:"0",description:"Delay in milliseconds before the tooltip hides."})],e.Tooltip.prototype,"hideDelay",void 0),t([fe({type:"boolean",default:"false",description:"Prevents the tooltip from showing."})],e.Tooltip.prototype,"disabled",void 0),t([fe({type:"number",default:"8",description:"Distance in pixels between the trigger and the tooltip popup."})],e.Tooltip.prototype,"offset",void 0),t([fe({type:"boolean",default:"false",description:"Controls tooltip visibility programmatically."})],e.Tooltip.prototype,"open",void 0),t([fe({type:"string",description:"CSS selector of the DOM element to teleport the popup into. Defaults to document.body."})],e.Tooltip.prototype,"container",void 0),t([xe("slot:not([name])")],e.Tooltip.prototype,"triggerSlot",void 0),e.Tooltip=t([Se("quantic-tooltip")],e.Tooltip),e.Tooltip.ensureDefined(),e.SidebarMenuItem=class extends qe{constructor(){super(...arguments),this.selected=!1,this.href="",this.label="",this.variant=Uo.Primary}hasIcon(){const e=this.shadowRoot?.querySelector('slot[name="icon"]');return e?.assignedElements().length>0}render(){const e=this.isDesktopViewport&&!1===this.isAsideExpanded,t=Ne({main:!0,"is-selected":this.selected,"is-collapsed":e,[`variant--${this.variant}`]:!0}),i=e?null:W`<span class="label">${this.label||W`<slot></slot>`}</span>
37754
37786
  <slot name="after"></slot>`,n=this.label||this.textContent?.trim()||"",o=n.charAt(0).toUpperCase(),s=e&&!this.hasIcon()&&o?W`<span class="icon-fallback">${o}</span>`:W`<slot name="icon"></slot>`,c=W` ${s} ${i} `,r=e&&n?n:void 0,a=this.href?W`<a class=${t} href=${this.href} aria-label=${We(r)}>${c}</a>`:W`<button class=${t} aria-label=${We(r)}>${c}</button>`;return e&&n?W`<quantic-tooltip placement="right">
37755
37787
  ${a}
37756
37788
  <span slot="content">${n}</span>
@@ -37786,6 +37818,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37786
37818
  font-weight: var(--quantic-font-weight-medium);
37787
37819
  color: var(--quantic-component-sidebar-menu-item-color);
37788
37820
  background: none;
37821
+ background-color: var(--quantic-component-sidebar-menu-item-bg);
37789
37822
  border: none;
37790
37823
  text-align: left;
37791
37824
  cursor: pointer;
@@ -37872,7 +37905,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37872
37905
  quantic-tooltip {
37873
37906
  display: contents;
37874
37907
  }
37875
- `,t([an({context:Wo,subscribe:!0})],e.SidebarMenuItem.prototype,"isAsideExpanded",void 0),t([No(Zo.above(1024),!0)],e.SidebarMenuItem.prototype,"isDesktopViewport",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Highlights the item as the currently active route."})],e.SidebarMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"URL to navigate to. When set the element renders as an <a> tag."})],e.SidebarMenuItem.prototype,"href",void 0),t([fe({type:"string",default:"",description:"Text label shown next to the icon."})],e.SidebarMenuItem.prototype,"label",void 0),t([fe({type:"SidebarMenuItemVariant",options:Object.values(Eo),default:Eo.Primary,description:'Visual style. "primary" is the default; "secondary" uses smaller font and muted colour.'})],e.SidebarMenuItem.prototype,"variant",void 0),e.SidebarMenuItem=t([Se("quantic-sidebar-menu-item")],e.SidebarMenuItem),e.SidebarMenuItem.ensureDefined(),e.LucideIconPanelLeftClose.ensureDefined(),e.LucideIconPanelLeft.ensureDefined(),e.Sidebar=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.ariaLabel="Sidebar navigation",this.collapsible=!1,this.handleToggle=()=>{this.dispatchEvent(new CustomEvent("expanded-changed",{detail:{expanded:!1===this.isAsideExpanded},bubbles:!0,composed:!0}))}}connectedCallback(){super.connectedCallback();for(const e of this.querySelectorAll("[defer-hydration]"))e.removeAttribute("defer-hydration")}render(){const e=!1!==this.isAsideExpanded,t=e?"Collapse":"Expand sidebar",i=e?"Collapse sidebar":"Expand sidebar";return Re`
37908
+ `,t([an({context:Xo,subscribe:!0})],e.SidebarMenuItem.prototype,"isAsideExpanded",void 0),t([Wo(No.above(1024),!0)],e.SidebarMenuItem.prototype,"isDesktopViewport",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Highlights the item as the currently active route."})],e.SidebarMenuItem.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"URL to navigate to. When set the element renders as an <a> tag."})],e.SidebarMenuItem.prototype,"href",void 0),t([fe({type:"string",default:"",description:"Text label shown next to the icon."})],e.SidebarMenuItem.prototype,"label",void 0),t([fe({type:"SidebarMenuItemVariant",options:Object.values(Uo),default:Uo.Primary,description:'Visual style. "primary" is the default; "secondary" uses smaller font and muted colour.'})],e.SidebarMenuItem.prototype,"variant",void 0),e.SidebarMenuItem=t([Se("quantic-sidebar-menu-item")],e.SidebarMenuItem),e.SidebarMenuItem.ensureDefined(),e.LucideIconPanelLeftClose.ensureDefined(),e.LucideIconPanelLeft.ensureDefined(),e.Sidebar=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.ariaLabel="Sidebar navigation",this.collapsible=!1,this.handleToggle=()=>{this.dispatchEvent(new CustomEvent("expanded-changed",{detail:{expanded:!1===this.isAsideExpanded},bubbles:!0,composed:!0}))}}connectedCallback(){super.connectedCallback();for(const e of this.querySelectorAll("[defer-hydration]"))e.removeAttribute("defer-hydration")}render(){const e=!1!==this.isAsideExpanded,t=e?"Collapse":"Expand sidebar",i=e?"Collapse sidebar":"Expand sidebar";return Re`
37876
37909
  <nav
37877
37910
  class=${Ne({main:!0,"is-aside-expanded":e})}
37878
37911
  role="navigation"
@@ -37897,7 +37930,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37897
37930
  @click=${this.handleToggle}
37898
37931
  title=${i}
37899
37932
  label=${t}
37900
- variant=${Eo.Secondary}
37933
+ variant=${Uo.Secondary}
37901
37934
  >
37902
37935
  <quantic-icon-lucide-panel-left-close
37903
37936
  slot="icon"
@@ -37995,7 +38028,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
37995
38028
  [hidden] {
37996
38029
  display: none;
37997
38030
  }
37998
- `,t([an({context:Wo,subscribe:!0})],e.Sidebar.prototype,"isAsideExpanded",void 0),t([fe({type:"string",default:"Sidebar navigation",description:"Accessible label for the nav landmark."})],e.Sidebar.prototype,"ariaLabel",void 0),t([fe({type:"boolean",default:"false",attribute:"collapsible",reflect:!0,description:"When true, shows a toggle button at the bottom of the sidebar on desktop viewports."})],e.Sidebar.prototype,"collapsible",void 0),t([No(Zo.above(1024),!0)],e.Sidebar.prototype,"isDesktopViewport",void 0),e.Sidebar=t([Se("quantic-sidebar")],e.Sidebar),e.SidebarMenuItemGroup=class extends qe{constructor(){super(...arguments),this.label=""}render(){const e=this.label&&!1!==this.expanded;return W`
38031
+ `,t([an({context:Xo,subscribe:!0})],e.Sidebar.prototype,"isAsideExpanded",void 0),t([fe({type:"string",default:"Sidebar navigation",description:"Accessible label for the nav landmark."})],e.Sidebar.prototype,"ariaLabel",void 0),t([fe({type:"boolean",default:"false",attribute:"collapsible",reflect:!0,description:"When true, shows a toggle button at the bottom of the sidebar on desktop viewports."})],e.Sidebar.prototype,"collapsible",void 0),t([Wo(No.above(1024),!0)],e.Sidebar.prototype,"isDesktopViewport",void 0),e.Sidebar=t([Se("quantic-sidebar")],e.Sidebar),e.SidebarMenuItemGroup=class extends qe{constructor(){super(...arguments),this.label=""}render(){const e=this.label&&!1!==this.expanded;return W`
37999
38032
  ${e?W`<div class="label">${this.label}</div>`:""}
38000
38033
  <div class="items">
38001
38034
  <slot></slot>
@@ -38025,7 +38058,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38025
38058
  flex-direction: column;
38026
38059
  gap: var(--quantic-spacing-1);
38027
38060
  }
38028
- `,t([an({context:Wo,subscribe:!0})],e.SidebarMenuItemGroup.prototype,"expanded",void 0),t([fe({type:"string",default:"",description:"Section label displayed above the group items."})],e.SidebarMenuItemGroup.prototype,"label",void 0),e.SidebarMenuItemGroup=t([Se("quantic-sidebar-menu-item-group")],e.SidebarMenuItemGroup),e.OptionCardVariant=void 0,(Jo=e.OptionCardVariant||(e.OptionCardVariant={})).Ghost="ghost",Jo.Solid="solid",e.OptionCardType=void 0,(Qo=e.OptionCardType||(e.OptionCardType={})).Single="single",Qo.Multiple="multiple",e.OptionCardSize=void 0,(Yo=e.OptionCardSize||(e.OptionCardSize={})).Small="sm",Yo.Medium="md",Yo.Large="lg";const es="option-card-group.context";e.OptionCard=class extends(ze(qe,["icon","description"])){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.name="",this.variant=e.OptionCardVariant.Ghost,this.size=e.OptionCardSize.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}get computedDisabled(){return this.disabled||this.groupContext?.disabled||!1}get computedInvalid(){return this.invalid||this.groupContext?.invalid||!1}get inputType(){return this.groupContext?.type===e.OptionCardType.Multiple?"checkbox":"radio"}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){if(super.updated(e),e.has("checked")&&void 0!==this.value){const e="checkbox"===this.inputType?this.checked?"on":null:this.checked?this.value:null;this.internals.setFormValue(e);const t=this.renderRoot.querySelector("input");t&&(t.checked=this.checked)}e.has("value")&&this.dispatchEvent(new CustomEvent("property-updated",{detail:{value:this.value},bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked,value:this.value},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked;const t="checkbox"===this.inputType?this.defaultChecked?"on":null:this.defaultChecked?this.value:null;void 0!==t&&this.internals.setFormValue(t),e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){"checkbox"===this.inputType?this.checked="on"===e:this.checked=e===this.value,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({label:!0,[`size--${this.size}`]:!0,[`variant--${this.variant}`]:!0,checked:this.checked,disabled:this.computedDisabled,invalid:this.computedInvalid}),t="radio"===this.inputType,i="input";return W`
38061
+ `,t([an({context:Xo,subscribe:!0})],e.SidebarMenuItemGroup.prototype,"expanded",void 0),t([fe({type:"string",default:"",description:"Section label displayed above the group items."})],e.SidebarMenuItemGroup.prototype,"label",void 0),e.SidebarMenuItemGroup=t([Se("quantic-sidebar-menu-item-group")],e.SidebarMenuItemGroup),e.OptionCardVariant=void 0,(Qo=e.OptionCardVariant||(e.OptionCardVariant={})).Ghost="ghost",Qo.Solid="solid",e.OptionCardType=void 0,(Yo=e.OptionCardType||(e.OptionCardType={})).Single="single",Yo.Multiple="multiple",e.OptionCardSize=void 0,(es=e.OptionCardSize||(e.OptionCardSize={})).Small="sm",es.Medium="md",es.Large="lg";const ts="option-card-group.context";e.OptionCard=class extends(ze(qe,["icon","description"])){constructor(){super(),this.checked=!1,this.required=!1,this.disabled=!1,this.invalid=!1,this.name="",this.variant=e.OptionCardVariant.Ghost,this.size=e.OptionCardSize.Medium,this.defaultChecked=!1,this.internals=this.attachInternals()}connectedCallback(){super.connectedCallback(),this.defaultChecked=this.hasAttribute("checked")}get computedDisabled(){return this.disabled||this.groupContext?.disabled||!1}get computedInvalid(){return this.invalid||this.groupContext?.invalid||!1}get inputType(){return this.groupContext?.type===e.OptionCardType.Multiple?"checkbox":"radio"}forwardNative(e){const t=e.target;this.checked=t.checked,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}updated(e){if(super.updated(e),e.has("checked")&&void 0!==this.value){const e="checkbox"===this.inputType?this.checked?"on":null:this.checked?this.value:null;this.internals.setFormValue(e);const t=this.renderRoot.querySelector("input");t&&(t.checked=this.checked)}e.has("value")&&this.dispatchEvent(new CustomEvent("property-updated",{detail:{value:this.value},bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.dispatchEvent(new CustomEvent("value-changed",{detail:{checked:this.checked,value:this.value},bubbles:!0,composed:!0}))}formResetCallback(){const e=this.renderRoot.querySelector("input");this.checked=this.defaultChecked;const t="checkbox"===this.inputType?this.defaultChecked?"on":null:this.defaultChecked?this.value:null;void 0!==t&&this.internals.setFormValue(t),e&&(e.checked=this.defaultChecked)}formStateRestoreCallback(e){"checkbox"===this.inputType?this.checked="on"===e:this.checked=e===this.value,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}render(){const e=Ne({label:!0,[`size--${this.size}`]:!0,[`variant--${this.variant}`]:!0,checked:this.checked,disabled:this.computedDisabled,invalid:this.computedInvalid}),t="radio"===this.inputType,i="input";return W`
38029
38062
  <input
38030
38063
  id=${i}
38031
38064
  type=${this.inputType}
@@ -38076,13 +38109,13 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38076
38109
  font-family: var(--quantic-font-family-body);
38077
38110
  color: var(--quantic-text-secondary);
38078
38111
 
38079
- --quantic-component-option-card-padding: var(--quantic-spacing-5);
38080
- --quantic-component-option-card-radius: var(--quantic-radius-md);
38081
- --quantic-component-option-card-spacing: var(--quantic-spacing-3);
38082
- --quantic-component-option-card-font-size: var(
38112
+ --quantic-internal-option-card-padding: var(--quantic-spacing-5);
38113
+ --quantic-internal-option-card-radius: var(--quantic-radius-md);
38114
+ --quantic-internal-option-card-spacing: var(--quantic-spacing-3);
38115
+ --quantic-internal-option-card-font-size: var(
38083
38116
  --quantic-font-size-body-md
38084
38117
  );
38085
- --quantic-component-option-card-line-height: var(
38118
+ --quantic-internal-option-card-line-height: var(
38086
38119
  --quantic-line-height-body-md
38087
38120
  );
38088
38121
  }
@@ -38091,13 +38124,13 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38091
38124
  position: relative;
38092
38125
  display: flex;
38093
38126
  flex-direction: column;
38094
- gap: var(--quantic-component-option-card-spacing);
38095
- padding: var(--quantic-component-option-card-padding);
38096
- border-radius: var(--quantic-component-option-card-radius);
38127
+ gap: var(--quantic-component-option-card-spacing, var(--quantic-internal-option-card-spacing));
38128
+ padding: var(--quantic-component-option-card-padding, var(--quantic-internal-option-card-padding));
38129
+ border-radius: var(--quantic-component-option-card-radius, var(--quantic-internal-option-card-radius));
38097
38130
  border: 2px solid var(--quantic-border-secondary);
38098
38131
  background-color: transparent;
38099
- font-size: var(--quantic-component-option-card-font-size);
38100
- line-height: var(--quantic-component-option-card-line-height);
38132
+ font-size: var(--quantic-component-option-card-font-size, var(--quantic-internal-option-card-font-size));
38133
+ line-height: var(--quantic-component-option-card-line-height, var(--quantic-internal-option-card-line-height));
38101
38134
  cursor: pointer;
38102
38135
  user-select: none;
38103
38136
  transition:
@@ -38115,37 +38148,37 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38115
38148
 
38116
38149
  /* Size variants */
38117
38150
  .size--sm {
38118
- --quantic-component-option-card-padding: var(--quantic-spacing-4);
38119
- --quantic-component-option-card-spacing: var(--quantic-spacing-2);
38120
- --quantic-component-option-card-radius: var(--quantic-radius-sm);
38121
- --quantic-component-option-card-font-size: var(
38151
+ --quantic-internal-option-card-padding: var(--quantic-spacing-4);
38152
+ --quantic-internal-option-card-spacing: var(--quantic-spacing-2);
38153
+ --quantic-internal-option-card-radius: var(--quantic-radius-sm);
38154
+ --quantic-internal-option-card-font-size: var(
38122
38155
  --quantic-font-size-body-sm
38123
38156
  );
38124
- --quantic-component-option-card-line-height: var(
38157
+ --quantic-internal-option-card-line-height: var(
38125
38158
  --quantic-line-height-body-sm
38126
38159
  );
38127
38160
  }
38128
38161
 
38129
38162
  .size--md {
38130
- --quantic-component-option-card-padding: var(--quantic-spacing-5);
38131
- --quantic-component-option-card-spacing: var(--quantic-spacing-3);
38132
- --quantic-component-option-card-radius: var(--quantic-radius-md);
38133
- --quantic-component-option-card-font-size: var(
38163
+ --quantic-internal-option-card-padding: var(--quantic-spacing-5);
38164
+ --quantic-internal-option-card-spacing: var(--quantic-spacing-3);
38165
+ --quantic-internal-option-card-radius: var(--quantic-radius-md);
38166
+ --quantic-internal-option-card-font-size: var(
38134
38167
  --quantic-font-size-body-md
38135
38168
  );
38136
- --quantic-component-option-card-line-height: var(
38169
+ --quantic-internal-option-card-line-height: var(
38137
38170
  --quantic-line-height-body-md
38138
38171
  );
38139
38172
  }
38140
38173
 
38141
38174
  .size--lg {
38142
- --quantic-component-option-card-padding: var(--quantic-spacing-6);
38143
- --quantic-component-option-card-spacing: var(--quantic-spacing-4);
38144
- --quantic-component-option-card-radius: var(--quantic-radius-lg);
38145
- --quantic-component-option-card-font-size: var(
38175
+ --quantic-internal-option-card-padding: var(--quantic-spacing-6);
38176
+ --quantic-internal-option-card-spacing: var(--quantic-spacing-4);
38177
+ --quantic-internal-option-card-radius: var(--quantic-radius-lg);
38178
+ --quantic-internal-option-card-font-size: var(
38146
38179
  --quantic-font-size-body-lg
38147
38180
  );
38148
- --quantic-component-option-card-line-height: var(
38181
+ --quantic-internal-option-card-line-height: var(
38149
38182
  --quantic-line-height-body-lg
38150
38183
  );
38151
38184
  }
@@ -38195,7 +38228,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38195
38228
  position: absolute;
38196
38229
  inset: 0;
38197
38230
  opacity: 0;
38198
- border-radius: calc(var(--quantic-component-option-card-radius) + 4px);
38231
+ border-radius: calc(var(--quantic-component-option-card-radius, var(--quantic-internal-option-card-radius)) + 4px);
38199
38232
  border: 2px solid transparent;
38200
38233
  transition: all 0.2s ease-in-out;
38201
38234
  pointer-events: none;
@@ -38219,7 +38252,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38219
38252
  display: flex;
38220
38253
  align-items: flex-start;
38221
38254
  justify-content: space-between;
38222
- gap: var(--quantic-component-option-card-spacing);
38255
+ gap: var(--quantic-component-option-card-spacing, var(--quantic-internal-option-card-spacing));
38223
38256
  }
38224
38257
 
38225
38258
  .indicator {
@@ -38338,7 +38371,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38338
38371
  [hidden] {
38339
38372
  display: none;
38340
38373
  }
38341
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the card is currently selected."})],e.OptionCard.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the card as required for form validation."})],e.OptionCard.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.OptionCard.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling."})],e.OptionCard.prototype,"invalid",void 0),t([fe({type:"string",reflect:!0,description:"Form value submitted when this card is selected."})],e.OptionCard.prototype,"value",void 0),t([fe({type:"string",description:"Name attribute passed to the underlying input for form association."})],e.OptionCard.prototype,"name",void 0),t([fe({type:"OptionCardVariant",options:Object.values(e.OptionCardVariant),default:e.OptionCardVariant.Ghost,description:"Visual style of the card."})],e.OptionCard.prototype,"variant",void 0),t([fe({type:"OptionCardSize",options:Object.values(e.OptionCardSize),default:e.OptionCardSize.Medium,description:"Controls padding and font size."})],e.OptionCard.prototype,"size",void 0),t([an({context:es,subscribe:!0})],e.OptionCard.prototype,"groupContext",void 0),e.OptionCard=t([Ce("value-changed",{description:"Fired whenever the card's selection state changes.",detail:"{ checked: boolean, value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Se("quantic-option-card")],e.OptionCard),e.Grid.ensureDefined(),e.OptionCardGroup=class extends(Xi(qe)){constructor(){super(),this.name="",this.values=[],this.disabled=!1,this.required=!1,this.invalid=!1,this.type=e.OptionCardType.Single,this.density=e.GridDensity.Comfortable,this.size=e.OptionCardSize.Medium,this.groupContext={type:this.type,disabled:this.disabled,invalid:this.invalid},this.internals=this.attachInternals(),this.handleValueChanged=this.handleValueChanged.bind(this),this.handleCardPropertyUpdated=this.handleCardPropertyUpdated.bind(this)}connectedCallback(){super.connectedCallback(),this.addEventListener("value-changed",this.handleValueChanged),this.addEventListener("property-updated",this.handleCardPropertyUpdated)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("value-changed",this.handleValueChanged),this.removeEventListener("property-updated",this.handleCardPropertyUpdated)}handleValueChanged(t){const i=t,n=i.target;if(n&&"quantic-option-card"===n.tagName.toLowerCase())if(t.stopPropagation(),this.type===e.OptionCardType.Single){if(!i.detail?.checked)return;this.value=n.value,this.uncheckOthers(n),this.internals.setFormValue(this.value||null),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0}))}else{const e=i.detail?.checked,t=n.value;e?void 0===t||this.values.includes(t)||(this.values=[...this.values,t]):this.values=this.values.filter(e=>e!==t);const o=this.values.length>0?this.values.join(","):null;this.internals.setFormValue(o),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.values},bubbles:!0,composed:!0}))}}handleCardPropertyUpdated(t){const i=t.target;i&&"quantic-option-card"===i.tagName.toLowerCase()&&(t.stopPropagation(),this.type===e.OptionCardType.Single?this.syncSingleSelection():this.syncMultipleSelection())}uncheckOthers(e){this.querySelectorAll("quantic-option-card").forEach(t=>{t!==e&&t.checked&&(t.checked=!1)})}updated(t){if(super.updated(t),(t.has("type")||t.has("disabled")||t.has("invalid"))&&(this.groupContext={type:this.type,disabled:this.disabled,invalid:this.invalid}),(t.has("name")||t.has("size")||t.has("disabled")||t.has("required"))&&this.syncCardProperties(),t.has("value")&&this.type===e.OptionCardType.Single&&(this.syncSingleSelection(),this.internals.setFormValue(this.value||null)),t.has("values")&&this.type===e.OptionCardType.Multiple){this.syncMultipleSelection();const e=this.values.length>0?this.values.join(","):null;this.internals.setFormValue(e)}}syncCardProperties(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.name=this.name,e.size=this.size,e.disabled=this.disabled,e.required=this.required})}syncSingleSelection(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.checked=void 0!==e.value&&e.value===this.value})}syncMultipleSelection(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.checked=void 0!==e.value&&this.values.includes(e.value)})}firstUpdated(){this.syncCardProperties(),this.type===e.OptionCardType.Single?this.syncSingleSelection():this.syncMultipleSelection()}formResetCallback(){this.type===e.OptionCardType.Single?(this.value=void 0,this.internals.setFormValue(null),this.syncSingleSelection()):(this.values=[],this.internals.setFormValue(null),this.syncMultipleSelection())}formStateRestoreCallback(t){this.type===e.OptionCardType.Single?(this.value=t??void 0,this.internals.setFormValue(t),this.syncSingleSelection()):(this.values=t?t.split(","):[],this.internals.setFormValue(t),this.syncMultipleSelection())}formDisabledCallback(e){this.disabled=e}render(){const t=this.getA11yAttributes({invalid:this.invalid}),i=this.type===e.OptionCardType.Single?"radiogroup":"group";return W`<div
38374
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the card is currently selected."})],e.OptionCard.prototype,"checked",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the card as required for form validation."})],e.OptionCard.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.OptionCard.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling."})],e.OptionCard.prototype,"invalid",void 0),t([fe({type:"string",reflect:!0,description:"Form value submitted when this card is selected."})],e.OptionCard.prototype,"value",void 0),t([fe({type:"string",description:"Name attribute passed to the underlying input for form association."})],e.OptionCard.prototype,"name",void 0),t([fe({type:"OptionCardVariant",options:Object.values(e.OptionCardVariant),default:e.OptionCardVariant.Ghost,description:"Visual style of the card."})],e.OptionCard.prototype,"variant",void 0),t([fe({type:"OptionCardSize",options:Object.values(e.OptionCardSize),default:e.OptionCardSize.Medium,description:"Controls padding and font size."})],e.OptionCard.prototype,"size",void 0),t([an({context:ts,subscribe:!0})],e.OptionCard.prototype,"groupContext",void 0),e.OptionCard=t([Ce("value-changed",{description:"Fired whenever the card's selection state changes.",detail:"{ checked: boolean, value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Se("quantic-option-card")],e.OptionCard),e.Grid.ensureDefined(),e.OptionCardGroup=class extends(Xi(qe)){constructor(){super(),this.name="",this.values=[],this.disabled=!1,this.required=!1,this.invalid=!1,this.type=e.OptionCardType.Single,this.density=e.GridDensity.Comfortable,this.size=e.OptionCardSize.Medium,this.groupContext={type:this.type,disabled:this.disabled,invalid:this.invalid},this.internals=this.attachInternals(),this.handleValueChanged=this.handleValueChanged.bind(this),this.handleCardPropertyUpdated=this.handleCardPropertyUpdated.bind(this)}connectedCallback(){super.connectedCallback(),this.addEventListener("value-changed",this.handleValueChanged),this.addEventListener("property-updated",this.handleCardPropertyUpdated)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("value-changed",this.handleValueChanged),this.removeEventListener("property-updated",this.handleCardPropertyUpdated)}handleValueChanged(t){const i=t,n=i.target;if(n&&"quantic-option-card"===n.tagName.toLowerCase())if(t.stopPropagation(),this.type===e.OptionCardType.Single){if(!i.detail?.checked)return;this.value=n.value,this.uncheckOthers(n),this.internals.setFormValue(this.value||null),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.value},bubbles:!0,composed:!0}))}else{const e=i.detail?.checked,t=n.value;e?void 0===t||this.values.includes(t)||(this.values=[...this.values,t]):this.values=this.values.filter(e=>e!==t);const o=this.values.length>0?this.values.join(","):null;this.internals.setFormValue(o),this.dispatchEvent(new CustomEvent("value-changed",{detail:{value:this.values},bubbles:!0,composed:!0}))}}handleCardPropertyUpdated(t){const i=t.target;i&&"quantic-option-card"===i.tagName.toLowerCase()&&(t.stopPropagation(),this.type===e.OptionCardType.Single?this.syncSingleSelection():this.syncMultipleSelection())}uncheckOthers(e){this.querySelectorAll("quantic-option-card").forEach(t=>{t!==e&&t.checked&&(t.checked=!1)})}updated(t){if(super.updated(t),(t.has("type")||t.has("disabled")||t.has("invalid"))&&(this.groupContext={type:this.type,disabled:this.disabled,invalid:this.invalid}),(t.has("name")||t.has("size")||t.has("disabled")||t.has("required"))&&this.syncCardProperties(),t.has("value")&&this.type===e.OptionCardType.Single&&(this.syncSingleSelection(),this.internals.setFormValue(this.value||null)),t.has("values")&&this.type===e.OptionCardType.Multiple){this.syncMultipleSelection();const e=this.values.length>0?this.values.join(","):null;this.internals.setFormValue(e)}}syncCardProperties(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.name=this.name,e.size=this.size,e.disabled=this.disabled,e.required=this.required})}syncSingleSelection(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.checked=void 0!==e.value&&e.value===this.value})}syncMultipleSelection(){this.querySelectorAll("quantic-option-card").forEach(e=>{e.checked=void 0!==e.value&&this.values.includes(e.value)})}firstUpdated(){this.syncCardProperties(),this.type===e.OptionCardType.Single?this.syncSingleSelection():this.syncMultipleSelection()}formResetCallback(){this.type===e.OptionCardType.Single?(this.value=void 0,this.internals.setFormValue(null),this.syncSingleSelection()):(this.values=[],this.internals.setFormValue(null),this.syncMultipleSelection())}formStateRestoreCallback(t){this.type===e.OptionCardType.Single?(this.value=t??void 0,this.internals.setFormValue(t),this.syncSingleSelection()):(this.values=t?t.split(","):[],this.internals.setFormValue(t),this.syncMultipleSelection())}formDisabledCallback(e){this.disabled=e}render(){const t=this.getA11yAttributes({invalid:this.invalid}),i=this.type===e.OptionCardType.Single?"radiogroup":"group";return W`<div
38342
38375
  class="option-card-group"
38343
38376
  role=${i}
38344
38377
  aria-label=${t.label}
@@ -38356,7 +38389,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38356
38389
  .option-card-group {
38357
38390
  display: contents;
38358
38391
  }
38359
- `,t([fe({type:"string",description:"Shared name attribute propagated to all child quantic-option-cards."})],e.OptionCardGroup.prototype,"name",void 0),t([fe({type:"string",reflect:!0,description:"Currently selected value (single-select mode)."})],e.OptionCardGroup.prototype,"value",void 0),t([fe({type:"string[]",default:"[]",description:"Selected values in multiple-select mode."})],e.OptionCardGroup.prototype,"values",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction on all cards."})],e.OptionCardGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the group as required for form validation."})],e.OptionCardGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling to all cards."})],e.OptionCardGroup.prototype,"invalid",void 0),t([fe({type:"OptionCardType",options:Object.values(e.OptionCardType),default:e.OptionCardType.Single,description:'Selection mode: "single" for radio behaviour, "multiple" for checkbox behaviour.'})],e.OptionCardGroup.prototype,"type",void 0),t([fe({type:"GridDensity",description:"Column density of the card grid layout."})],e.OptionCardGroup.prototype,"density",void 0),t([fe({type:"OptionCardSize",options:Object.values(e.OptionCardSize),default:e.OptionCardSize.Medium,description:"Size propagated to all child quantic-option-cards."})],e.OptionCardGroup.prototype,"size",void 0),t([rn({context:es})],e.OptionCardGroup.prototype,"groupContext",void 0),e.OptionCardGroup=t([Ce("value-changed",{description:"Fired whenever the selected card(s) change.",detail:"{ value: string | string[] }"}),Se("quantic-option-card-group")],e.OptionCardGroup);const ts={Small:"sm",Medium:"md",Large:"lg"},is=(e,t)=>t>=e?Array.from({length:t-e+1},(t,i)=>e+i):[];var ns,os,ss,cs;e.LucideIconArrowLeft.ensureDefined(),e.LucideIconArrowRight.ensureDefined(),e.ButtonBar.ensureDefined(),e.ButtonBarItem.ensureDefined(),e.Pagination=class extends qe{constructor(){super(...arguments),this.size=ts.Medium,this.currentPage=1,this.totalPages=1,this.maxDisplayedPages=5}_handlePageChange(e){e<1||e>this.totalPages||e===this.currentPage||this.dispatchEvent(new CustomEvent("page-change",{detail:{page:e},bubbles:!0,composed:!0}))}_handlePrevious(){this._handlePageChange(this.currentPage-1)}_handleNext(){this._handlePageChange(this.currentPage+1)}render(){const e=this.currentPage<=1,t=this.currentPage>=this.totalPages,i=((e,t,i)=>{if(t<=i)return is(1,t);const n=i-2,o=Math.max(Math.floor(n/2),0),s=Math.max(e-o,2),c=Math.min(e+o,t-1),r=c-s+1,[a,l]=r>=n?[s,c]:2===s?[s,Math.min(s+n-1,t-1)]:[Math.max(c-n+1,2),c];return[1,...a>2?["ellipsis"]:[],...is(a,l),...l<t-1?["ellipsis"]:[],t]})(this.currentPage,this.totalPages,this.maxDisplayedPages);return W`
38392
+ `,t([fe({type:"string",description:"Shared name attribute propagated to all child quantic-option-cards."})],e.OptionCardGroup.prototype,"name",void 0),t([fe({type:"string",reflect:!0,description:"Currently selected value (single-select mode)."})],e.OptionCardGroup.prototype,"value",void 0),t([fe({type:"string[]",default:"[]",description:"Selected values in multiple-select mode."})],e.OptionCardGroup.prototype,"values",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction on all cards."})],e.OptionCardGroup.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the group as required for form validation."})],e.OptionCardGroup.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling to all cards."})],e.OptionCardGroup.prototype,"invalid",void 0),t([fe({type:"OptionCardType",options:Object.values(e.OptionCardType),default:e.OptionCardType.Single,description:'Selection mode: "single" for radio behaviour, "multiple" for checkbox behaviour.'})],e.OptionCardGroup.prototype,"type",void 0),t([fe({type:"GridDensity",description:"Column density of the card grid layout."})],e.OptionCardGroup.prototype,"density",void 0),t([fe({type:"OptionCardSize",options:Object.values(e.OptionCardSize),default:e.OptionCardSize.Medium,description:"Size propagated to all child quantic-option-cards."})],e.OptionCardGroup.prototype,"size",void 0),t([rn({context:ts})],e.OptionCardGroup.prototype,"groupContext",void 0),e.OptionCardGroup=t([Ce("value-changed",{description:"Fired whenever the selected card(s) change.",detail:"{ value: string | string[] }"}),Se("quantic-option-card-group")],e.OptionCardGroup);const is={Small:"sm",Medium:"md",Large:"lg"},ns=(e,t)=>t>=e?Array.from({length:t-e+1},(t,i)=>e+i):[];var os,ss,cs,rs;e.LucideIconArrowLeft.ensureDefined(),e.LucideIconArrowRight.ensureDefined(),e.ButtonBar.ensureDefined(),e.ButtonBarItem.ensureDefined(),e.Pagination=class extends qe{constructor(){super(...arguments),this.size=is.Medium,this.currentPage=1,this.totalPages=1,this.maxDisplayedPages=5}_handlePageChange(e){e<1||e>this.totalPages||e===this.currentPage||this.dispatchEvent(new CustomEvent("page-change",{detail:{page:e},bubbles:!0,composed:!0}))}_handlePrevious(){this._handlePageChange(this.currentPage-1)}_handleNext(){this._handlePageChange(this.currentPage+1)}render(){const e=this.currentPage<=1,t=this.currentPage>=this.totalPages,i=((e,t,i)=>{if(t<=i)return ns(1,t);const n=i-2,o=Math.max(Math.floor(n/2),0),s=Math.max(e-o,2),c=Math.min(e+o,t-1),r=c-s+1,[a,l]=r>=n?[s,c]:2===s?[s,Math.min(s+n-1,t-1)]:[Math.max(c-n+1,2),c];return[1,...a>2?["ellipsis"]:[],...ns(a,l),...l<t-1?["ellipsis"]:[],t]})(this.currentPage,this.totalPages,this.maxDisplayedPages);return W`
38360
38393
  <nav role="navigation" aria-label="Pagination">
38361
38394
  <quantic-button-bar size=${this.size}>
38362
38395
  <quantic-button-bar-item
@@ -38401,7 +38434,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38401
38434
  .icon {
38402
38435
  color: var(--quantic-text-secondary);
38403
38436
  }
38404
- `,t([rn({context:dn}),fe({type:"PaginationSize",options:Object.values(ts),default:ts.Medium,reflect:!0,description:"Controls the size of the pagination buttons."})],e.Pagination.prototype,"size",void 0),t([fe({type:"number",default:"1",reflect:!0,attribute:"current-page",description:"Currently active page (1-indexed)."})],e.Pagination.prototype,"currentPage",void 0),t([fe({type:"number",default:"1",reflect:!0,attribute:"total-pages",description:"Total number of pages."})],e.Pagination.prototype,"totalPages",void 0),t([fe({type:"number",default:"5",reflect:!0,attribute:"max-displayed-pages",description:"Maximum number of page buttons to display before collapsing with ellipsis."})],e.Pagination.prototype,"maxDisplayedPages",void 0),e.Pagination=t([Ce("page-change",{description:"Emitted when the current page changes.",detail:"{ page: number }"}),Se("quantic-pagination")],e.Pagination),e.PanelVariant=void 0,(ns=e.PanelVariant||(e.PanelVariant={})).Solid="solid",ns.Outline="outline",ns.Ghost="ghost",e.PanelGroupGap=void 0,(os=e.PanelGroupGap||(e.PanelGroupGap={})).None="none",os.ExtraSmall="xs",os.Small="sm",os.Medium="md",os.Large="lg",os.ExtraLarge="xl",e.PanelHeaderSize=void 0,(ss=e.PanelHeaderSize||(e.PanelHeaderSize={})).Small="sm",ss.Medium="md",ss.Large="lg",e.PanelHeaderVariant=void 0,(cs=e.PanelHeaderVariant||(e.PanelHeaderVariant={})).Primary="primary",cs.Secondary="secondary",e.Panel=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.variant=e.PanelVariant.Outline,this.highlighted=!1}render(){const e=Ne({main:!0,[`variant--${this.variant}`]:!0,highlighted:this.highlighted});return Re`
38437
+ `,t([rn({context:dn}),fe({type:"PaginationSize",options:Object.values(is),default:is.Medium,reflect:!0,description:"Controls the size of the pagination buttons."})],e.Pagination.prototype,"size",void 0),t([fe({type:"number",default:"1",reflect:!0,attribute:"current-page",description:"Currently active page (1-indexed)."})],e.Pagination.prototype,"currentPage",void 0),t([fe({type:"number",default:"1",reflect:!0,attribute:"total-pages",description:"Total number of pages."})],e.Pagination.prototype,"totalPages",void 0),t([fe({type:"number",default:"5",reflect:!0,attribute:"max-displayed-pages",description:"Maximum number of page buttons to display before collapsing with ellipsis."})],e.Pagination.prototype,"maxDisplayedPages",void 0),e.Pagination=t([Ce("page-change",{description:"Emitted when the current page changes.",detail:"{ page: number }"}),Se("quantic-pagination")],e.Pagination),e.PanelVariant=void 0,(os=e.PanelVariant||(e.PanelVariant={})).Solid="solid",os.Outline="outline",os.Ghost="ghost",e.PanelGroupGap=void 0,(ss=e.PanelGroupGap||(e.PanelGroupGap={})).None="none",ss.ExtraSmall="xs",ss.Small="sm",ss.Medium="md",ss.Large="lg",ss.ExtraLarge="xl",e.PanelHeaderSize=void 0,(cs=e.PanelHeaderSize||(e.PanelHeaderSize={})).Small="sm",cs.Medium="md",cs.Large="lg",e.PanelHeaderVariant=void 0,(rs=e.PanelHeaderVariant||(e.PanelHeaderVariant={})).Primary="primary",rs.Secondary="secondary",e.Panel=class extends(ze(qe,["header","footer"])){constructor(){super(...arguments),this.variant=e.PanelVariant.Outline,this.highlighted=!1}render(){const e=Ne({main:!0,[`variant--${this.variant}`]:!0,highlighted:this.highlighted});return Re`
38405
38438
  <div class=${e}>
38406
38439
  <slot name="header" class="header"></slot>
38407
38440
  <slot class="body"></slot>
@@ -38416,7 +38449,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38416
38449
  font-family: var(--quantic-font-family-body);
38417
38450
  color: var(--quantic-text-secondary);
38418
38451
 
38419
- --quantic-component-panel-padding: var(--quantic-spacing-6);
38452
+ --quantic-internal-panel-padding: var(--quantic-spacing-6);
38420
38453
  --quantic-component-panel-font-size: var(--quantic-font-size-body-md);
38421
38454
  --quantic-component-panel-line-height: var(--quantic-line-height-body-md);
38422
38455
  --quantic-component-panel-radius: var(--quantic-radius-md);
@@ -38428,7 +38461,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38428
38461
  display: flex;
38429
38462
  flex-direction: column;
38430
38463
  gap: var(--quantic-component-panel-spacing);
38431
- padding: var(--quantic-component-panel-padding);
38464
+ padding: var(--quantic-component-panel-padding, var(--quantic-internal-panel-padding));
38432
38465
  border-radius: var(--quantic-component-panel-radius);
38433
38466
  border: 1px solid var(--quantic-border-primary);
38434
38467
  font-size: var(--quantic-component-panel-font-size);
@@ -38450,7 +38483,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38450
38483
  .variant--ghost {
38451
38484
  background-color: transparent;
38452
38485
  border: none;
38453
- --quantic-component-panel-padding: 0;
38486
+ --quantic-internal-panel-padding: 0;
38454
38487
  }
38455
38488
 
38456
38489
  .highlighted {
@@ -38549,33 +38582,36 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38549
38582
  .group {
38550
38583
  display: flex;
38551
38584
  flex-direction: column;
38552
- gap: var(--quantic-component-panel-group-gap, var(--quantic-spacing-6));
38585
+ gap: var(
38586
+ --quantic-component-panel-group-gap,
38587
+ var(--quantic-internal-panel-group-gap, var(--quantic-spacing-6))
38588
+ );
38553
38589
  }
38554
38590
 
38555
38591
  .gap--none {
38556
- --quantic-component-panel-group-gap: 0;
38592
+ --quantic-internal-panel-group-gap: 0;
38557
38593
  }
38558
38594
 
38559
38595
  .gap--xs {
38560
- --quantic-component-panel-group-gap: var(--quantic-spacing-3);
38596
+ --quantic-internal-panel-group-gap: var(--quantic-spacing-3);
38561
38597
  }
38562
38598
 
38563
38599
  .gap--sm {
38564
- --quantic-component-panel-group-gap: var(--quantic-spacing-4);
38600
+ --quantic-internal-panel-group-gap: var(--quantic-spacing-4);
38565
38601
  }
38566
38602
 
38567
38603
  .gap--md {
38568
- --quantic-component-panel-group-gap: var(--quantic-spacing-6);
38604
+ --quantic-internal-panel-group-gap: var(--quantic-spacing-6);
38569
38605
  }
38570
38606
 
38571
38607
  .gap--lg {
38572
- --quantic-component-panel-group-gap: var(--quantic-spacing-8);
38608
+ --quantic-internal-panel-group-gap: var(--quantic-spacing-8);
38573
38609
  }
38574
38610
 
38575
38611
  .gap--xl {
38576
- --quantic-component-panel-group-gap: var(--quantic-spacing-12);
38612
+ --quantic-internal-panel-group-gap: var(--quantic-spacing-12);
38577
38613
  }
38578
- `,t([fe({type:"PanelGroupGap",options:Object.values(e.PanelGroupGap),default:e.PanelGroupGap.Medium,description:"Spacing between stacked panels."})],e.PanelGroup.prototype,"gap",void 0),e.PanelGroup=t([Se("quantic-panel-group")],e.PanelGroup);const rs={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},as=Je;e.Progress=class extends qe{constructor(){super(...arguments),this.size=rs.Small,this.label=!1,this.color=as.Brand,this.ariaLabel=null,this.description=null}get indeterminate(){return void 0===this.value}get clamped(){if(!this.indeterminate)return st(this.value,0,100)}updated(e){super.updated(e),e.has("value")&&!this.indeterminate&&this.style.setProperty("--quantic-component-progress-value",`${this.clamped}%`)}render(){const{clamped:e,indeterminate:t}=this;return W`
38614
+ `,t([fe({type:"PanelGroupGap",options:Object.values(e.PanelGroupGap),default:e.PanelGroupGap.Medium,description:"Spacing between stacked panels."})],e.PanelGroup.prototype,"gap",void 0),e.PanelGroup=t([Se("quantic-panel-group")],e.PanelGroup);const as={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},ls=Je;e.Progress=class extends qe{constructor(){super(...arguments),this.size=as.Small,this.label=!1,this.color=ls.Brand,this.ariaLabel=null,this.description=null}get indeterminate(){return void 0===this.value}get clamped(){if(!this.indeterminate)return st(this.value,0,100)}updated(e){super.updated(e),e.has("value")&&!this.indeterminate&&this.style.setProperty("--quantic-component-progress-value",`${this.clamped}%`)}render(){const{clamped:e,indeterminate:t}=this;return W`
38579
38615
  <div
38580
38616
  class=${Ne({main:!0,[`size--${this.size}`]:!0})}
38581
38617
  >
@@ -38608,37 +38644,37 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38608
38644
  overflow: hidden;
38609
38645
  border-radius: var(--quantic-radius-full);
38610
38646
  background-color: var(--quantic-color-gray-dark-mode-700);
38611
- height: var(--quantic-component-progress-height, 4px);
38647
+ height: var(--quantic-component-progress-height, var(--quantic-internal-progress-height, 4px));
38612
38648
  }
38613
38649
 
38614
38650
  .size--xs {
38615
- --quantic-component-progress-height: 2px;
38616
- --quantic-component-progress-font-size: var(--quantic-font-size-body-xs);
38617
- --quantic-component-progress-line-height: var(
38651
+ --quantic-internal-progress-height: 2px;
38652
+ --quantic-internal-progress-font-size: var(--quantic-font-size-body-xs);
38653
+ --quantic-internal-progress-line-height: var(
38618
38654
  --quantic-line-height-body-xs
38619
38655
  );
38620
38656
  }
38621
38657
 
38622
38658
  .size--sm {
38623
- --quantic-component-progress-height: 4px;
38624
- --quantic-component-progress-font-size: var(--quantic-font-size-body-sm);
38625
- --quantic-component-progress-line-height: var(
38659
+ --quantic-internal-progress-height: 4px;
38660
+ --quantic-internal-progress-font-size: var(--quantic-font-size-body-sm);
38661
+ --quantic-internal-progress-line-height: var(
38626
38662
  --quantic-line-height-body-sm
38627
38663
  );
38628
38664
  }
38629
38665
 
38630
38666
  .size--md {
38631
- --quantic-component-progress-height: 6px;
38632
- --quantic-component-progress-font-size: var(--quantic-font-size-body-md);
38633
- --quantic-component-progress-line-height: var(
38667
+ --quantic-internal-progress-height: 6px;
38668
+ --quantic-internal-progress-font-size: var(--quantic-font-size-body-md);
38669
+ --quantic-internal-progress-line-height: var(
38634
38670
  --quantic-line-height-body-md
38635
38671
  );
38636
38672
  }
38637
38673
 
38638
38674
  .size--lg {
38639
- --quantic-component-progress-height: 8px;
38640
- --quantic-component-progress-font-size: var(--quantic-font-size-body-lg);
38641
- --quantic-component-progress-line-height: var(
38675
+ --quantic-internal-progress-height: 8px;
38676
+ --quantic-internal-progress-font-size: var(--quantic-font-size-body-lg);
38677
+ --quantic-internal-progress-line-height: var(
38642
38678
  --quantic-line-height-body-lg
38643
38679
  );
38644
38680
  }
@@ -38666,11 +38702,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38666
38702
  flex-shrink: 0;
38667
38703
  font-size: var(
38668
38704
  --quantic-component-progress-font-size,
38669
- var(--quantic-font-size-body-sm)
38705
+ var(--quantic-internal-progress-font-size, var(--quantic-font-size-body-sm))
38670
38706
  );
38671
38707
  line-height: var(
38672
38708
  --quantic-component-progress-line-height,
38673
- var(--quantic-line-height-body-sm)
38709
+ var(--quantic-internal-progress-line-height, var(--quantic-line-height-body-sm))
38674
38710
  );
38675
38711
  font-family: var(--quantic-font-family-body);
38676
38712
  color: var(--quantic-text-secondary);
@@ -38692,7 +38728,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38692
38728
  width: 100%;
38693
38729
  }
38694
38730
  }
38695
- `,t([fe({type:"number",description:"Current progress value (0–100). Omit for indeterminate mode."})],e.Progress.prototype,"value",void 0),t([fe({type:"ProgressSize",options:Object.values(rs),default:rs.Small,description:"Controls the bar height and label font size."})],e.Progress.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Shows a percentage label next to the bar (only in determinate mode)."})],e.Progress.prototype,"label",void 0),t([fe({type:"ProgressColor",options:Object.values(as),default:as.Brand,description:"Fill color of the progress bar."})],e.Progress.prototype,"color",void 0),t([fe({attribute:"aria-label",type:"string",description:"Accessible label for the progressbar role."})],e.Progress.prototype,"ariaLabel",void 0),t([fe({type:"string",description:"Accessible description forwarded to aria-description."})],e.Progress.prototype,"description",void 0),e.Progress=t([Se("quantic-progress")],e.Progress);const ls={Article:"article",Section:"section",Div:"div"};e.Prose=class extends qe{constructor(){super(...arguments),this.as=ls.Article}render(){const e=Ve(this.as);return Re`<${e}><slot></slot></${e}>`}},e.Prose.meta={tag:"quantic-prose",description:"Article context for long-form HTML (markdown, MDX, docs). Typography comes from @ctrliq/quantic-css/prose on the critical path (`@forward` in global.scss) so first paint matches before the custom element upgrades. The host only wraps slotted content in a landmark (`as`) for catalog/Storybook — it does not ship article CSS. Use quantic-text for one-off strings.",category:"display",slots:{"":{description:"Article content (headings, paragraphs, lists, pre, embedded components)."}},relatedTo:["quantic-text","quantic-alert"]},e.Prose.styles=d`
38731
+ `,t([fe({type:"number",description:"Current progress value (0–100). Omit for indeterminate mode."})],e.Progress.prototype,"value",void 0),t([fe({type:"ProgressSize",options:Object.values(as),default:as.Small,description:"Controls the bar height and label font size."})],e.Progress.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Shows a percentage label next to the bar (only in determinate mode)."})],e.Progress.prototype,"label",void 0),t([fe({type:"ProgressColor",options:Object.values(ls),default:ls.Brand,description:"Fill color of the progress bar."})],e.Progress.prototype,"color",void 0),t([fe({attribute:"aria-label",type:"string",description:"Accessible label for the progressbar role."})],e.Progress.prototype,"ariaLabel",void 0),t([fe({type:"string",description:"Accessible description forwarded to aria-description."})],e.Progress.prototype,"description",void 0),e.Progress=t([Se("quantic-progress")],e.Progress);const ds={Article:"article",Section:"section",Div:"div"};e.Prose=class extends qe{constructor(){super(...arguments),this.as=ds.Article}render(){const e=Ve(this.as);return Re`<${e}><slot></slot></${e}>`}},e.Prose.meta={tag:"quantic-prose",description:"Article context for long-form HTML (markdown, MDX, docs). Typography comes from @ctrliq/quantic-css/prose on the critical path (`@forward` in global.scss) so first paint matches before the custom element upgrades. The host only wraps slotted content in a landmark (`as`) for catalog/Storybook — it does not ship article CSS. Use quantic-text for one-off strings.",category:"display",slots:{"":{description:"Article content (headings, paragraphs, lists, pre, embedded components)."}},relatedTo:["quantic-text","quantic-alert"]},e.Prose.styles=d`
38696
38732
  :host {
38697
38733
  display: block;
38698
38734
  }
@@ -38741,11 +38777,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38741
38777
  ::slotted(p + p) {
38742
38778
  margin-block-start: var(--quantic-spacing-1) !important;
38743
38779
  }
38744
- `,t([fe({type:"ProseAs",options:Object.values(ls),default:ls.Article,description:"Landmark element wrapping the slot (article, section, or div)."})],e.Prose.prototype,"as",void 0),e.Prose=t([Se("quantic-prose")],e.Prose),e.Skeleton=class extends qe{render(){return W`
38780
+ `,t([fe({type:"ProseAs",options:Object.values(ds),default:ds.Article,description:"Landmark element wrapping the slot (article, section, or div)."})],e.Prose.prototype,"as",void 0),e.Prose=t([Se("quantic-prose")],e.Prose),e.Skeleton=class extends qe{render(){return W`
38745
38781
  <span
38746
38782
  class="skeleton"
38747
38783
  aria-hidden="true"
38748
- style=${ko({"--cols":null!=this.cols?String(this.cols):void 0,"--rows":null!=this.rows?String(this.rows):void 0,"animation-delay":null!=this.delay?`${this.delay}s`:void 0})}
38784
+ style=${yo({"--cols":null!=this.cols?String(this.cols):void 0,"--rows":null!=this.rows?String(this.rows):void 0,"animation-delay":null!=this.delay?`${this.delay}s`:void 0})}
38749
38785
  ></span>
38750
38786
  `}},e.Skeleton.meta={tag:"quantic-skeleton",description:"Animated placeholder used while content is loading. Renders a shimmering block sized by column span and line-height units.",category:"feedback"},e.Skeleton.styles=d`
38751
38787
  :host {
@@ -38781,7 +38817,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38781
38817
  animation: none;
38782
38818
  }
38783
38819
  }
38784
- `,t([fe({type:"number",description:"Width as a fraction of 12 columns (1–12). Defaults to 12 (full width)."})],e.Skeleton.prototype,"cols",void 0),t([fe({type:"number",description:"Height as a multiple of 1em. Defaults to 1."})],e.Skeleton.prototype,"rows",void 0),t([fe({type:"number",description:"Animation delay in seconds. Useful for staggering multiple skeletons."})],e.Skeleton.prototype,"delay",void 0),e.Skeleton=t([Se("quantic-skeleton")],e.Skeleton);const ds=Je,us={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl"};e.Spinner=class extends qe{constructor(){super(...arguments),this.size=us.Medium,this.label="Loading"}connectedCallback(){super.connectedCallback(),this.setAttribute("role","status")}render(){return W`
38820
+ `,t([fe({type:"number",description:"Width as a fraction of 12 columns (1–12). Defaults to 12 (full width)."})],e.Skeleton.prototype,"cols",void 0),t([fe({type:"number",description:"Height as a multiple of 1em. Defaults to 1."})],e.Skeleton.prototype,"rows",void 0),t([fe({type:"number",description:"Animation delay in seconds. Useful for staggering multiple skeletons."})],e.Skeleton.prototype,"delay",void 0),e.Skeleton=t([Se("quantic-skeleton")],e.Skeleton);const us=Je,hs={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl"};e.Spinner=class extends qe{constructor(){super(...arguments),this.size=hs.Medium,this.label="Loading"}connectedCallback(){super.connectedCallback(),this.setAttribute("role","status")}render(){return W`
38785
38821
  <div
38786
38822
  class=${Ne({sizer:!0,[`size--${this.size}`]:!0,[`color--${this.color}`]:!!this.color})}
38787
38823
  aria-hidden="true"
@@ -38836,7 +38872,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38836
38872
  width: 24px;
38837
38873
  height: 24px;
38838
38874
  border-radius: 50%;
38839
- border: 3px solid var(--quantic-component-spinner-color, currentColor);
38875
+ border: 3px solid
38876
+ var(
38877
+ --quantic-component-spinner-color,
38878
+ var(--quantic-internal-spinner-color, currentColor)
38879
+ );
38840
38880
  border-top-color: transparent;
38841
38881
  }
38842
38882
 
@@ -38868,10 +38908,10 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38868
38908
  border-width: 0;
38869
38909
  }
38870
38910
 
38871
- ${l(ct(e=>`--quantic-component-spinner-color: var(--quantic-utility-${e}-500);`))}
38911
+ ${l(ct(e=>`--quantic-internal-spinner-color: var(--quantic-utility-${e}-500);`))}
38872
38912
 
38873
38913
  .color--brand {
38874
- --quantic-component-spinner-color: var(--quantic-fg-brand-primary);
38914
+ --quantic-internal-spinner-color: var(--quantic-fg-brand-primary);
38875
38915
  }
38876
38916
 
38877
38917
  @keyframes spin {
@@ -38879,14 +38919,14 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38879
38919
  transform: rotate(360deg);
38880
38920
  }
38881
38921
  }
38882
- `,t([fe({type:"SpinnerSize",options:Object.values(us),default:us.Medium,description:"Diameter of the spinner ring."})],e.Spinner.prototype,"size",void 0),t([fe({type:"SpinnerColor",options:Object.values(ds),description:"Overrides the ring color. Defaults to currentColor."})],e.Spinner.prototype,"color",void 0),t([fe({type:"string",default:"Loading",description:"Visually hidden text announced by screen readers."})],e.Spinner.prototype,"label",void 0),e.Spinner=t([Se("quantic-spinner")],e.Spinner);const hs={Line:"line",Gradient:"gradient",Filled:"filled"};const ps=Je;function gs(e){const t=Number.isFinite(e.minSize)?e.minSize:0,i=Number.isFinite(e.maxSize)?e.maxSize:100,n=st(t,0,100),o=st(i,0,100);return{min:Math.min(n,o),max:Math.max(n,o)}}function vs(e,t){return t.reduce((t,i,n)=>i.collapsed?t:t+e[n],0)}function ws(e,t,i){const{a:n,b:o,total:s}=i,c=Math.max(n.min,s-o.max),r=Math.min(n.max,s-o.min),a=st(e+t,Math.min(c,r),Math.max(c,r));return[a,s-a]}function ms(e,t){return e*t/100}function ks(e,t){if(e.length!==t.length)return e;const i=vs(e,t);return 0===i?e.map(()=>0):e.map((e,n)=>t[n]?.collapsed?0:e/i*100)}e.Sparkline=class extends qe{constructor(){super(...arguments),this.values=[],this.variant=hs.Line,this.color=ps.Brand}get points(){return function(e,t,i){if(e.length<2)return"";const n=t??Math.min(...e),o=i??Math.max(...e);return e.map((t,i)=>function(e,t,i,n,o){return`${t/(i-1)*100},${n===o?20:40*(1-(e-n)/(o-n))}`}(t,i,e.length,n,o)).join(" ")}(this.values,this.yMin,this.yMax)}render(){const e=this.values.length>=2?this.points:null;return W`
38922
+ `,t([fe({type:"SpinnerSize",options:Object.values(hs),default:hs.Medium,description:"Diameter of the spinner ring."})],e.Spinner.prototype,"size",void 0),t([fe({type:"SpinnerColor",options:Object.values(us),description:"Overrides the ring color. Defaults to currentColor."})],e.Spinner.prototype,"color",void 0),t([fe({type:"string",default:"Loading",description:"Visually hidden text announced by screen readers."})],e.Spinner.prototype,"label",void 0),e.Spinner=t([Se("quantic-spinner")],e.Spinner);const ps={Line:"line",Gradient:"gradient",Filled:"filled"};const gs=Je;function vs(e){const t=Number.isFinite(e.minSize)?e.minSize:0,i=Number.isFinite(e.maxSize)?e.maxSize:100,n=st(t,0,100),o=st(i,0,100);return{min:Math.min(n,o),max:Math.max(n,o)}}function ws(e,t){return t.reduce((t,i,n)=>i.collapsed?t:t+e[n],0)}function ms(e,t,i){const{a:n,b:o,total:s}=i,c=Math.max(n.min,s-o.max),r=Math.min(n.max,s-o.min),a=st(e+t,Math.min(c,r),Math.max(c,r));return[a,s-a]}function ks(e,t){return e*t/100}function ys(e,t){if(e.length!==t.length)return e;const i=ws(e,t);return 0===i?e.map(()=>0):e.map((e,n)=>t[n]?.collapsed?0:e/i*100)}e.Sparkline=class extends qe{constructor(){super(...arguments),this.values=[],this.variant=ps.Line,this.color=gs.Brand}get points(){return function(e,t,i){if(e.length<2)return"";const n=t??Math.min(...e),o=i??Math.max(...e);return e.map((t,i)=>function(e,t,i,n,o){return`${t/(i-1)*100},${n===o?20:40*(1-(e-n)/(o-n))}`}(t,i,e.length,n,o)).join(" ")}(this.values,this.yMin,this.yMax)}render(){const e=this.values.length>=2?this.points:null;return W`
38883
38923
  <svg
38884
38924
  class=${Ne({[`color--${this.color}`]:!0})}
38885
38925
  viewBox="0 0 100 40"
38886
38926
  preserveAspectRatio="none"
38887
38927
  aria-hidden="true"
38888
38928
  >
38889
- ${e?this.variant===hs.Gradient?X`
38929
+ ${e?this.variant===ps.Gradient?X`
38890
38930
  <defs>
38891
38931
  <linearGradient id="sg" x1="0" y1="0" x2="0" y2="1.5">
38892
38932
  <stop offset="0%"></stop>
@@ -38894,7 +38934,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38894
38934
  </linearGradient>
38895
38935
  </defs>
38896
38936
  <polygon points="${e} 100,40 0,40" fill="url(#sg)"></polygon>
38897
- `:this.variant===hs.Filled?X`<polygon class="fill" points="${e} 100,40 0,40"></polygon>`:J:J}
38937
+ `:this.variant===ps.Filled?X`<polygon class="fill" points="${e} 100,40 0,40"></polygon>`:J:J}
38898
38938
  ${e?X`<polyline points="${e}"></polyline>`:J}
38899
38939
  </svg>
38900
38940
  `}},e.Sparkline.meta={tag:"quantic-sparkline",description:"Compact inline chart (line, filled, or gradient) for showing trends without axes or labels. Purely visual — provide an accessible label via the parent context.",category:"display"},e.Sparkline.styles=d`
@@ -38949,7 +38989,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
38949
38989
  }
38950
38990
 
38951
38991
  ${l(ct(e=>`--quantic-component-sparkline-color: var(--quantic-utility-${e}-500);`))}
38952
- `,t([fe({type:"number[]",default:"[]",description:"Array of numeric data points to chart."})],e.Sparkline.prototype,"values",void 0),t([fe({type:"SparklineVariant",options:Object.values(hs),default:hs.Line,description:"Chart style — line, filled area, or gradient fill."})],e.Sparkline.prototype,"variant",void 0),t([fe({type:"SparklineColor",options:Object.values(ps),default:ps.Brand,description:"Stroke and fill color."})],e.Sparkline.prototype,"color",void 0),t([fe({type:"number",description:"Override the minimum Y value used for scaling. Defaults to the data minimum."})],e.Sparkline.prototype,"yMin",void 0),t([fe({type:"number",description:"Override the maximum Y value used for scaling. Defaults to the data maximum."})],e.Sparkline.prototype,"yMax",void 0),e.Sparkline=t([Se("quantic-sparkline")],e.Sparkline);const ys={percent:0,flex:1};function xs(e,t){if(0===t)return[];const i=e.trim().split(/\s+/).filter(Boolean),n=Array.from({length:t},(e,t)=>t<i.length?(e=>{if(e.endsWith("%")){const t=parseFloat(e);return{percent:isNaN(t)||t<0?0:t,flex:0}}const t="*"===e?1:parseFloat(e);return{percent:0,flex:isNaN(t)||t<=0?1:t}})(i[t]):ys),o=n.reduce((e,{percent:t})=>e+t,0),s=n.reduce((e,{flex:t})=>e+t,0),c=Math.max(0,100-o),r=n.map(({percent:e,flex:t})=>0===t?e:s>0?t/s*c:0),a=r.reduce((e,t)=>e+t,0);return a>0?r.map(e=>e/a*100):Array(t).fill(100/t)}var Ls,Is,fs,Cs;e.SplitterGroup=class extends qe{constructor(){super(...arguments),this.direction="horizontal",this.resizable=!1,this.split="",this.collapseBelow="640px",this.panes=[],this.sizes=[],this.mutationObserver=null,this.collapsedObserver=null,this.resizeObserver=null,this.dragInfo=null,this.handlePointerMove=e=>{if(!this.dragInfo)return;const t="vertical"===this.direction?this.wrapper.clientHeight:this.wrapper.clientWidth;if(0===t)return;const{dividerIndex:i,startX:n,startY:o,startLayoutA:s,startLayoutB:c}=this.dragInfo,r=this.panes[i-1],a=this.panes[i],l=("vertical"===this.direction?e.clientY-o:e.clientX-n)/t*100,[d,u]=ws(s,l,{a:gs(r),b:gs(a),total:s+c}),h=[...this.sizes];h[i-1]=ms(d,this.dragInfo.activeSizesSum),h[i]=ms(u,this.dragInfo.activeSizesSum),this.sizes=h,this.applySizes()},this.handlePointerUp=()=>{this.dragInfo&&(this.renderRoot.querySelectorAll(".divider.dragging").forEach(e=>{e.classList.remove("dragging")}),this.removeEventListener("pointermove",this.handlePointerMove),this.removeEventListener("pointerup",this.handlePointerUp),this.removeEventListener("pointercancel",this.handlePointerUp),this.dragInfo=null,this.dispatchEvent(new CustomEvent("resize",{bubbles:!0,composed:!0,detail:{sizes:this.sizes}})))}}connectedCallback(){super.connectedCallback(),this.discoverPanes(),this.mutationObserver=new MutationObserver(()=>this.discoverPanes()),this.mutationObserver.observe(this,{childList:!0})}disconnectedCallback(){super.disconnectedCallback(),this.mutationObserver?.disconnect(),this.collapsedObserver?.disconnect(),this.resizeObserver?.disconnect(),this.dragInfo&&(this.removeEventListener("pointermove",this.handlePointerMove),this.removeEventListener("pointerup",this.handlePointerUp),this.removeEventListener("pointercancel",this.handlePointerUp),this.dragInfo=null)}firstUpdated(){this.setupResizeObserver()}updated(e){super.updated(e),e.has("split")&&(this.sizes=xs(this.split,this.panes.length),this.applySizes()),e.has("collapseBelow")&&this.checkStacked()}discoverPanes(){const e=Array.from(this.querySelectorAll(":scope > quantic-splitter-pane"));e.forEach((e,t)=>{const i=`pane-${t}`;e.getAttribute("slot")!==i&&e.setAttribute("slot",i)}),this.panes.forEach(t=>{e.includes(t)||(t.removeAttribute("slot"),t.removeAttribute("stacked"))});const t=this.panes.length;this.panes=e,e.length!==t&&(this.sizes=xs(this.split,e.length)),this.setupCollapsedObserver(),this.applySizes()}setupCollapsedObserver(){this.collapsedObserver?.disconnect(),0!==this.panes.length&&(this.collapsedObserver=new MutationObserver(()=>{this.panes=[...this.panes],this.applySizes()}),this.panes.forEach(e=>{this.collapsedObserver.observe(e,{attributes:!0,attributeFilter:["collapsed"]})}))}setupResizeObserver(){this.wrapper&&(this.resizeObserver=new ResizeObserver(e=>{const t=e[0];t&&this.checkStackedForSize(t.contentRect.width)}),this.resizeObserver.observe(this.wrapper))}checkStacked(){this.wrapper&&this.checkStackedForSize(this.wrapper.clientWidth)}checkStackedForSize(e){if("vertical"===this.direction)return;const t=(this.collapseBelow??"").trim();if(!t.endsWith("px"))return;const i=parseFloat(t);if(!Number.isFinite(i))return;const n=e<=i;this.toggleAttribute("stacked",n),this.panes.forEach(e=>e.toggleAttribute("stacked",n))}applySizes(){const e=ks(this.sizes,this.panes);this.panes.forEach((t,i)=>{t.style.setProperty("--quantic-component-splitter-pane-flex-grow",String(e[i]))}),this.renderRoot.querySelectorAll('[part="divider"]').forEach((t,i)=>{t.setAttribute("aria-valuenow",String(Math.round(e[i])))})}dividerEffectiveBounds(e,t){const i=gs(this.panes[e-1]),n=gs(this.panes[e]),o=t[e-1]+t[e];return{min:Math.max(i.min,o-n.max),max:Math.min(i.max,o-n.min)}}isDividerDisabled(e){return!this.resizable||(this.panes[e-1]?.collapsed??!1)||(this.panes[e]?.collapsed??!1)}isDividerHidden(e){return(this.panes[e-1]?.hasAttribute("collapsed")??!1)||(this.panes[e]?.hasAttribute("collapsed")??!1)}handleDividerPointerDown(e,t){e.preventDefault();const i=e.currentTarget;i.setPointerCapture(e.pointerId),i.classList.add("dragging");const n=ks(this.sizes,this.panes),o=vs(this.sizes,this.panes);this.dragInfo={dividerIndex:t,startX:e.clientX,startY:e.clientY,startLayoutA:n[t-1],startLayoutB:n[t],activeSizesSum:o},this.addEventListener("pointermove",this.handlePointerMove),this.addEventListener("pointerup",this.handlePointerUp),this.addEventListener("pointercancel",this.handlePointerUp)}handleDividerKeyDown(e,t){const i=function(e,t){if(t){if("ArrowUp"===e)return-1;if("ArrowDown"===e)return 1}else{if("ArrowLeft"===e)return-1;if("ArrowRight"===e)return 1}return null}(e.key,"vertical"===this.direction);if(null===i)return;e.preventDefault();const n=ks(this.sizes,this.panes),[o,s]=ws(n[t-1],i,{a:gs(this.panes[t-1]),b:gs(this.panes[t]),total:n[t-1]+n[t]}),c=vs(this.sizes,this.panes),r=[...this.sizes];r[t-1]=ms(o,c),r[t]=ms(s,c),this.sizes=r,this.applySizes(),this.dispatchEvent(new CustomEvent("resize",{bubbles:!0,composed:!0,detail:{sizes:this.sizes}}))}render(){const e=ks(this.sizes,this.panes);return W`
38992
+ `,t([fe({type:"number[]",default:"[]",description:"Array of numeric data points to chart."})],e.Sparkline.prototype,"values",void 0),t([fe({type:"SparklineVariant",options:Object.values(ps),default:ps.Line,description:"Chart style — line, filled area, or gradient fill."})],e.Sparkline.prototype,"variant",void 0),t([fe({type:"SparklineColor",options:Object.values(gs),default:gs.Brand,description:"Stroke and fill color."})],e.Sparkline.prototype,"color",void 0),t([fe({type:"number",description:"Override the minimum Y value used for scaling. Defaults to the data minimum."})],e.Sparkline.prototype,"yMin",void 0),t([fe({type:"number",description:"Override the maximum Y value used for scaling. Defaults to the data maximum."})],e.Sparkline.prototype,"yMax",void 0),e.Sparkline=t([Se("quantic-sparkline")],e.Sparkline);const xs={percent:0,flex:1};function Ls(e,t){if(0===t)return[];const i=e.trim().split(/\s+/).filter(Boolean),n=Array.from({length:t},(e,t)=>t<i.length?(e=>{if(e.endsWith("%")){const t=parseFloat(e);return{percent:isNaN(t)||t<0?0:t,flex:0}}const t="*"===e?1:parseFloat(e);return{percent:0,flex:isNaN(t)||t<=0?1:t}})(i[t]):xs),o=n.reduce((e,{percent:t})=>e+t,0),s=n.reduce((e,{flex:t})=>e+t,0),c=Math.max(0,100-o),r=n.map(({percent:e,flex:t})=>0===t?e:s>0?t/s*c:0),a=r.reduce((e,t)=>e+t,0);return a>0?r.map(e=>e/a*100):Array(t).fill(100/t)}var Is,fs,Cs,bs;e.SplitterGroup=class extends qe{constructor(){super(...arguments),this.direction="horizontal",this.resizable=!1,this.split="",this.collapseBelow="640px",this.panes=[],this.sizes=[],this.mutationObserver=null,this.collapsedObserver=null,this.resizeObserver=null,this.dragInfo=null,this.handlePointerMove=e=>{if(!this.dragInfo)return;const t="vertical"===this.direction?this.wrapper.clientHeight:this.wrapper.clientWidth;if(0===t)return;const{dividerIndex:i,startX:n,startY:o,startLayoutA:s,startLayoutB:c}=this.dragInfo,r=this.panes[i-1],a=this.panes[i],l=("vertical"===this.direction?e.clientY-o:e.clientX-n)/t*100,[d,u]=ms(s,l,{a:vs(r),b:vs(a),total:s+c}),h=[...this.sizes];h[i-1]=ks(d,this.dragInfo.activeSizesSum),h[i]=ks(u,this.dragInfo.activeSizesSum),this.sizes=h,this.applySizes()},this.handlePointerUp=()=>{this.dragInfo&&(this.renderRoot.querySelectorAll(".divider.dragging").forEach(e=>{e.classList.remove("dragging")}),this.removeEventListener("pointermove",this.handlePointerMove),this.removeEventListener("pointerup",this.handlePointerUp),this.removeEventListener("pointercancel",this.handlePointerUp),this.dragInfo=null,this.dispatchEvent(new CustomEvent("resize",{bubbles:!0,composed:!0,detail:{sizes:this.sizes}})))}}connectedCallback(){super.connectedCallback(),this.discoverPanes(),this.mutationObserver=new MutationObserver(()=>this.discoverPanes()),this.mutationObserver.observe(this,{childList:!0})}disconnectedCallback(){super.disconnectedCallback(),this.mutationObserver?.disconnect(),this.collapsedObserver?.disconnect(),this.resizeObserver?.disconnect(),this.dragInfo&&(this.removeEventListener("pointermove",this.handlePointerMove),this.removeEventListener("pointerup",this.handlePointerUp),this.removeEventListener("pointercancel",this.handlePointerUp),this.dragInfo=null)}firstUpdated(){this.setupResizeObserver()}updated(e){super.updated(e),e.has("split")&&(this.sizes=Ls(this.split,this.panes.length),this.applySizes()),e.has("collapseBelow")&&this.checkStacked()}discoverPanes(){const e=Array.from(this.querySelectorAll(":scope > quantic-splitter-pane"));e.forEach((e,t)=>{const i=`pane-${t}`;e.getAttribute("slot")!==i&&e.setAttribute("slot",i)}),this.panes.forEach(t=>{e.includes(t)||(t.removeAttribute("slot"),t.removeAttribute("stacked"))});const t=this.panes.length;this.panes=e,e.length!==t&&(this.sizes=Ls(this.split,e.length)),this.setupCollapsedObserver(),this.applySizes()}setupCollapsedObserver(){this.collapsedObserver?.disconnect(),0!==this.panes.length&&(this.collapsedObserver=new MutationObserver(()=>{this.panes=[...this.panes],this.applySizes()}),this.panes.forEach(e=>{this.collapsedObserver.observe(e,{attributes:!0,attributeFilter:["collapsed"]})}))}setupResizeObserver(){this.wrapper&&(this.resizeObserver=new ResizeObserver(e=>{const t=e[0];t&&this.checkStackedForSize(t.contentRect.width)}),this.resizeObserver.observe(this.wrapper))}checkStacked(){this.wrapper&&this.checkStackedForSize(this.wrapper.clientWidth)}checkStackedForSize(e){if("vertical"===this.direction)return;const t=(this.collapseBelow??"").trim();if(!t.endsWith("px"))return;const i=parseFloat(t);if(!Number.isFinite(i))return;const n=e<=i;this.toggleAttribute("stacked",n),this.panes.forEach(e=>e.toggleAttribute("stacked",n))}applySizes(){const e=ys(this.sizes,this.panes);this.panes.forEach((t,i)=>{t.style.setProperty("--quantic-component-splitter-pane-flex-grow",String(e[i]))}),this.renderRoot.querySelectorAll('[part="divider"]').forEach((t,i)=>{t.setAttribute("aria-valuenow",String(Math.round(e[i])))})}dividerEffectiveBounds(e,t){const i=vs(this.panes[e-1]),n=vs(this.panes[e]),o=t[e-1]+t[e];return{min:Math.max(i.min,o-n.max),max:Math.min(i.max,o-n.min)}}isDividerDisabled(e){return!this.resizable||(this.panes[e-1]?.collapsed??!1)||(this.panes[e]?.collapsed??!1)}isDividerHidden(e){return(this.panes[e-1]?.hasAttribute("collapsed")??!1)||(this.panes[e]?.hasAttribute("collapsed")??!1)}handleDividerPointerDown(e,t){e.preventDefault();const i=e.currentTarget;i.setPointerCapture(e.pointerId),i.classList.add("dragging");const n=ys(this.sizes,this.panes),o=ws(this.sizes,this.panes);this.dragInfo={dividerIndex:t,startX:e.clientX,startY:e.clientY,startLayoutA:n[t-1],startLayoutB:n[t],activeSizesSum:o},this.addEventListener("pointermove",this.handlePointerMove),this.addEventListener("pointerup",this.handlePointerUp),this.addEventListener("pointercancel",this.handlePointerUp)}handleDividerKeyDown(e,t){const i=function(e,t){if(t){if("ArrowUp"===e)return-1;if("ArrowDown"===e)return 1}else{if("ArrowLeft"===e)return-1;if("ArrowRight"===e)return 1}return null}(e.key,"vertical"===this.direction);if(null===i)return;e.preventDefault();const n=ys(this.sizes,this.panes),[o,s]=ms(n[t-1],i,{a:vs(this.panes[t-1]),b:vs(this.panes[t]),total:n[t-1]+n[t]}),c=ws(this.sizes,this.panes),r=[...this.sizes];r[t-1]=ks(o,c),r[t]=ks(s,c),this.sizes=r,this.applySizes(),this.dispatchEvent(new CustomEvent("resize",{bubbles:!0,composed:!0,detail:{sizes:this.sizes}}))}render(){const e=ys(this.sizes,this.panes);return W`
38953
38993
  <div
38954
38994
  class=${Ne({wrapper:!0,"direction--horizontal":"horizontal"===this.direction,"direction--vertical":"vertical"===this.direction})}
38955
38995
  >
@@ -39092,7 +39132,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39092
39132
  :host([variant='solid']) {
39093
39133
  background: var(--quantic-bg-secondary);
39094
39134
  }
39095
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Collapses the pane to zero size, hiding its content."})],e.SplitterPane.prototype,"collapsed",void 0),t([fe({type:"number",default:"10",attribute:"min-size",description:"Minimum size as a percentage of the splitter container."})],e.SplitterPane.prototype,"minSize",void 0),t([fe({type:"number",default:"90",attribute:"max-size",description:"Maximum size as a percentage of the splitter container."})],e.SplitterPane.prototype,"maxSize",void 0),t([fe({type:'"default" | "solid"',default:"default",reflect:!0,description:'Visual style — "solid" applies a secondary background color.'})],e.SplitterPane.prototype,"variant",void 0),e.SplitterPane=t([Se("quantic-splitter-pane")],e.SplitterPane),e.TableVariant=void 0,(Ls=e.TableVariant||(e.TableVariant={})).Outline="outline",Ls.Minimal="minimal",Ls.Striped="striped",e.TableSize=void 0,(Is=e.TableSize||(e.TableSize={})).ExtraSmall="xs",Is.Small="sm",Is.Medium="md",Is.Large="lg",e.SortDirection=void 0,(fs=e.SortDirection||(e.SortDirection={})).Ascending="asc",fs.Descending="desc",fs.None="none",e.CellAlign=void 0,(Cs=e.CellAlign||(e.CellAlign={})).Left="left",Cs.Center="center",Cs.Right="right";const bs="table.variant";e.Table=class extends(ze(qe,["toolbar","header","footer","controls"])){constructor(){super(...arguments),this.size=e.TableSize.Medium,this.variant=e.TableVariant.Outline,this.dense=!1,this.ariaLabel=null}render(){return W`
39135
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Collapses the pane to zero size, hiding its content."})],e.SplitterPane.prototype,"collapsed",void 0),t([fe({type:"number",default:"10",attribute:"min-size",description:"Minimum size as a percentage of the splitter container."})],e.SplitterPane.prototype,"minSize",void 0),t([fe({type:"number",default:"90",attribute:"max-size",description:"Maximum size as a percentage of the splitter container."})],e.SplitterPane.prototype,"maxSize",void 0),t([fe({type:'"default" | "solid"',default:"default",reflect:!0,description:'Visual style — "solid" applies a secondary background color.'})],e.SplitterPane.prototype,"variant",void 0),e.SplitterPane=t([Se("quantic-splitter-pane")],e.SplitterPane),e.TableVariant=void 0,(Is=e.TableVariant||(e.TableVariant={})).Outline="outline",Is.Minimal="minimal",Is.Striped="striped",e.TableSize=void 0,(fs=e.TableSize||(e.TableSize={})).ExtraSmall="xs",fs.Small="sm",fs.Medium="md",fs.Large="lg",e.SortDirection=void 0,(Cs=e.SortDirection||(e.SortDirection={})).Ascending="asc",Cs.Descending="desc",Cs.None="none",e.CellAlign=void 0,(bs=e.CellAlign||(e.CellAlign={})).Left="left",bs.Center="center",bs.Right="right";const Ms="table.variant";e.Table=class extends(ze(qe,["toolbar","header","footer","controls"])){constructor(){super(...arguments),this.size=e.TableSize.Medium,this.variant=e.TableVariant.Outline,this.dense=!1,this.ariaLabel=null}render(){return W`
39096
39136
  <slot name="toolbar" class="toolbar"></slot>
39097
39137
  <div
39098
39138
  role="table"
@@ -39110,11 +39150,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39110
39150
  display: block;
39111
39151
  width: fit-content;
39112
39152
  font-family: var(--quantic-font-family-body);
39113
- font-size: var(--quantic-component-table-font-size);
39153
+ font-size: var(--quantic-component-table-font-size, var(--quantic-internal-table-font-size));
39114
39154
  overflow-x: auto;
39115
39155
 
39116
- --quantic-component-table-padding: var(--quantic-spacing-3);
39117
- --quantic-component-table-font-size: var(--quantic-font-size-body-sm);
39156
+ --quantic-internal-table-padding: var(--quantic-spacing-3);
39157
+ --quantic-internal-table-font-size: var(--quantic-font-size-body-sm);
39118
39158
  --quantic-component-table-color: var(--quantic-text-secondary);
39119
39159
  --quantic-component-table-header-color: var(--quantic-text-secondary);
39120
39160
  --quantic-component-table-border-color: var(--quantic-border-secondary);
@@ -39131,46 +39171,46 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39131
39171
 
39132
39172
  /* Size */
39133
39173
  :host([size='xs']) {
39134
- --quantic-component-table-padding: var(--quantic-spacing-3);
39135
- --quantic-component-table-font-size: var(--quantic-font-size-body-xs);
39174
+ --quantic-internal-table-padding: var(--quantic-spacing-3);
39175
+ --quantic-internal-table-font-size: var(--quantic-font-size-body-xs);
39136
39176
  }
39137
39177
 
39138
39178
  :host([size='sm']) {
39139
- --quantic-component-table-padding: var(--quantic-spacing-4);
39140
- --quantic-component-table-font-size: var(--quantic-font-size-body-sm);
39179
+ --quantic-internal-table-padding: var(--quantic-spacing-4);
39180
+ --quantic-internal-table-font-size: var(--quantic-font-size-body-sm);
39141
39181
  }
39142
39182
 
39143
39183
  :host([size='md']) {
39144
- --quantic-component-table-padding: var(--quantic-spacing-5);
39145
- --quantic-component-table-font-size: var(--quantic-font-size-body-md);
39184
+ --quantic-internal-table-padding: var(--quantic-spacing-5);
39185
+ --quantic-internal-table-font-size: var(--quantic-font-size-body-md);
39146
39186
  }
39147
39187
 
39148
39188
  :host([size='lg']) {
39149
- --quantic-component-table-padding: var(--quantic-spacing-6);
39150
- --quantic-component-table-font-size: var(--quantic-font-size-body-md);
39189
+ --quantic-internal-table-padding: var(--quantic-spacing-6);
39190
+ --quantic-internal-table-font-size: var(--quantic-font-size-body-md);
39151
39191
  }
39152
39192
 
39153
39193
  /* Dense variants - relative to size */
39154
39194
  :host([dense][size='xs']) {
39155
- --quantic-component-table-padding: var(--quantic-spacing-1-5);
39195
+ --quantic-internal-table-padding: var(--quantic-spacing-1-5);
39156
39196
  }
39157
39197
 
39158
39198
  :host([dense][size='sm']) {
39159
- --quantic-component-table-padding: var(--quantic-spacing-2);
39199
+ --quantic-internal-table-padding: var(--quantic-spacing-2);
39160
39200
  }
39161
39201
 
39162
39202
  :host([dense][size='md']) {
39163
- --quantic-component-table-padding: var(--quantic-spacing-2);
39203
+ --quantic-internal-table-padding: var(--quantic-spacing-2);
39164
39204
  }
39165
39205
 
39166
39206
  :host([dense][size='lg']) {
39167
- --quantic-component-table-padding: var(--quantic-spacing-3);
39207
+ --quantic-internal-table-padding: var(--quantic-spacing-3);
39168
39208
  }
39169
39209
 
39170
39210
  .toolbar,
39171
39211
  .controls {
39172
39212
  display: block;
39173
- padding: var(--quantic-component-table-padding);
39213
+ padding: var(--quantic-component-table-padding, var(--quantic-internal-table-padding));
39174
39214
  }
39175
39215
 
39176
39216
  .toolbar {
@@ -39184,7 +39224,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39184
39224
  [hidden] {
39185
39225
  display: none;
39186
39226
  }
39187
- `,t([fe({type:"TableSize",options:Object.values(e.TableSize),default:e.TableSize.Medium,reflect:!0,description:"Controls cell padding and font size."})],e.Table.prototype,"size",void 0),t([rn({context:bs}),fe({type:"TableVariant",options:Object.values(e.TableVariant),default:e.TableVariant.Outline,reflect:!0,description:'Visual style. "outline" adds row borders; "striped" alternates row backgrounds; "minimal" removes borders.'})],e.Table.prototype,"variant",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Reduces cell padding for compact display."})],e.Table.prototype,"dense",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the table."})],e.Table.prototype,"ariaLabel",void 0),t([fe({type:"string",attribute:"aria-labelledby",description:"ID of an element that labels the table."})],e.Table.prototype,"ariaLabelledby",void 0),e.Table=t([Se("quantic-table")],e.Table),e.TableControls=class extends qe{constructor(){super(...arguments),this.ariaLabel=null}render(){return W`
39227
+ `,t([fe({type:"TableSize",options:Object.values(e.TableSize),default:e.TableSize.Medium,reflect:!0,description:"Controls cell padding and font size."})],e.Table.prototype,"size",void 0),t([rn({context:Ms}),fe({type:"TableVariant",options:Object.values(e.TableVariant),default:e.TableVariant.Outline,reflect:!0,description:'Visual style. "outline" adds row borders; "striped" alternates row backgrounds; "minimal" removes borders.'})],e.Table.prototype,"variant",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Reduces cell padding for compact display."})],e.Table.prototype,"dense",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label for the table."})],e.Table.prototype,"ariaLabel",void 0),t([fe({type:"string",attribute:"aria-labelledby",description:"ID of an element that labels the table."})],e.Table.prototype,"ariaLabelledby",void 0),e.Table=t([Se("quantic-table")],e.Table),e.TableControls=class extends qe{constructor(){super(...arguments),this.ariaLabel=null}render(){return W`
39188
39228
  <div class="start">
39189
39229
  <slot></slot>
39190
39230
  </div>
@@ -39233,7 +39273,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39233
39273
  `:W`<slot></slot>`}},e.TableHead.meta={tag:"quantic-table-head",description:"Individual column header cell within a quantic-table-header row. Renders as a <th> equivalent and supports optional sort controls. Emits sort-change when clicked while sortable.",category:"display",slots:{"":{description:"Column header label text or content."}},relatedTo:["quantic-table-header","quantic-table"]},e.TableHead.styles=d`
39234
39274
  :host {
39235
39275
  display: table-cell;
39236
- padding: var(--quantic-component-table-padding);
39276
+ padding: var(--quantic-component-table-padding, var(--quantic-internal-table-padding));
39237
39277
  font-weight: var(--quantic-font-weight-semibold);
39238
39278
  color: var(--quantic-component-table-header-color);
39239
39279
  border-bottom: 1px solid var(--quantic-component-table-border-color);
@@ -39320,11 +39360,11 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39320
39360
  :host(:nth-child(odd).variant--striped) {
39321
39361
  background-color: var(--quantic-component-table-row-striped-bg);
39322
39362
  }
39323
- `,t([an({context:bs,subscribe:!0})],e.TableRow.prototype,"variant",void 0),t([fe({type:"string",default:"row",reflect:!0,description:"ARIA role for the table row."})],e.TableRow.prototype,"role",void 0),e.TableRow=t([Se("quantic-table-row")],e.TableRow),e.TableCell=class extends qe{constructor(){super(...arguments),this.variant=e.TableVariant.Outline,this.role="cell",this.align=e.CellAlign.Left}willUpdate(){this.classList&&this.style&&(Object.entries({"variant--minimal":this.variant===e.TableVariant.Minimal,"variant--outline":this.variant===e.TableVariant.Outline,"variant--striped":this.variant===e.TableVariant.Striped}).forEach(([e,t])=>{this.classList.toggle(e,t)}),this.width&&(this.style.width=this.width),this.style.setProperty("--cell-align",this.align))}render(){return W`<slot></slot>`}},e.TableCell.meta={tag:"quantic-table-cell",description:"Individual data cell within a quantic-table-row. Receives variant context from the parent quantic-table.",category:"display",slots:{"":{description:"Cell content — text, elements, or other components."}},relatedTo:["quantic-table-row","quantic-table"]},e.TableCell.styles=d`
39363
+ `,t([an({context:Ms,subscribe:!0})],e.TableRow.prototype,"variant",void 0),t([fe({type:"string",default:"row",reflect:!0,description:"ARIA role for the table row."})],e.TableRow.prototype,"role",void 0),e.TableRow=t([Se("quantic-table-row")],e.TableRow),e.TableCell=class extends qe{constructor(){super(...arguments),this.variant=e.TableVariant.Outline,this.role="cell",this.align=e.CellAlign.Left}willUpdate(){this.classList&&this.style&&(Object.entries({"variant--minimal":this.variant===e.TableVariant.Minimal,"variant--outline":this.variant===e.TableVariant.Outline,"variant--striped":this.variant===e.TableVariant.Striped}).forEach(([e,t])=>{this.classList.toggle(e,t)}),this.width&&(this.style.width=this.width),this.style.setProperty("--cell-align",this.align))}render(){return W`<slot></slot>`}},e.TableCell.meta={tag:"quantic-table-cell",description:"Individual data cell within a quantic-table-row. Receives variant context from the parent quantic-table.",category:"display",slots:{"":{description:"Cell content — text, elements, or other components."}},relatedTo:["quantic-table-row","quantic-table"]},e.TableCell.styles=d`
39324
39364
  :host {
39325
39365
  display: table-cell;
39326
- padding: var(--quantic-component-table-padding);
39327
- font-size: var(--quantic-component-table-font-size);
39366
+ padding: var(--quantic-component-table-padding, var(--quantic-internal-table-padding));
39367
+ font-size: var(--quantic-component-table-font-size, var(--quantic-internal-table-font-size));
39328
39368
  color: var(--quantic-component-table-color);
39329
39369
  vertical-align: middle;
39330
39370
  text-align: var(--cell-align, left);
@@ -39333,17 +39373,17 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39333
39373
  :host(.variant--outline) {
39334
39374
  border-bottom: 1px solid var(--quantic-component-table-border-color);
39335
39375
  }
39336
- `,t([an({context:bs,subscribe:!0})],e.TableCell.prototype,"variant",void 0),t([fe({type:"string",default:"cell",reflect:!0,description:"ARIA role for the table cell."})],e.TableCell.prototype,"role",void 0),t([fe({type:"CellAlign",options:Object.values(e.CellAlign),default:e.CellAlign.Left,reflect:!0,description:"Horizontal text alignment within the cell."})],e.TableCell.prototype,"align",void 0),t([fe({type:"string",description:'Inline width applied to this column (e.g. "200px" or "20%").'})],e.TableCell.prototype,"width",void 0),e.TableCell=t([Se("quantic-table-cell")],e.TableCell),e.TableFooter=class extends qe{constructor(){super(...arguments),this.role="rowgroup"}render(){return W`<slot></slot>`}},e.TableFooter.meta={tag:"quantic-table-footer",description:"The <tfoot> equivalent for quantic-table. Place quantic-table-row elements with summary or footer data as children.",category:"display",slots:{"":{description:"quantic-table-row elements with footer data."}},relatedTo:["quantic-table","quantic-table-row"]},e.TableFooter.styles=d`
39376
+ `,t([an({context:Ms,subscribe:!0})],e.TableCell.prototype,"variant",void 0),t([fe({type:"string",default:"cell",reflect:!0,description:"ARIA role for the table cell."})],e.TableCell.prototype,"role",void 0),t([fe({type:"CellAlign",options:Object.values(e.CellAlign),default:e.CellAlign.Left,reflect:!0,description:"Horizontal text alignment within the cell."})],e.TableCell.prototype,"align",void 0),t([fe({type:"string",description:'Inline width applied to this column (e.g. "200px" or "20%").'})],e.TableCell.prototype,"width",void 0),e.TableCell=t([Se("quantic-table-cell")],e.TableCell),e.TableFooter=class extends qe{constructor(){super(...arguments),this.role="rowgroup"}render(){return W`<slot></slot>`}},e.TableFooter.meta={tag:"quantic-table-footer",description:"The <tfoot> equivalent for quantic-table. Place quantic-table-row elements with summary or footer data as children.",category:"display",slots:{"":{description:"quantic-table-row elements with footer data."}},relatedTo:["quantic-table","quantic-table-row"]},e.TableFooter.styles=d`
39337
39377
  :host {
39338
39378
  display: table-footer-group;
39339
39379
  border-top: 1px solid var(--quantic-component-table-border-color);
39340
39380
  }
39341
- `,t([fe({type:"string",default:"rowgroup",reflect:!0,description:"ARIA role for the footer row group."})],e.TableFooter.prototype,"role",void 0),e.TableFooter=t([Se("quantic-table-footer")],e.TableFooter);const Ms={Horizontal:"horizontal",Vertical:"vertical"},qs={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Ss="buttons",Bs="panels",As="tabs.id",Ps="tabs.size",js="tabs.orientation",zs="tabs.selectedIndex";e.Tabs=class extends qe{constructor(){super(...arguments),this.size=qs.Medium,this.orientation=Ms.Horizontal,this.selectedIndex=0,this.id="",this.collapseBelow="",this.resizeObserver=null,this._assignSlots=()=>{Array.from(this.children).filter(e=>e instanceof HTMLElement).forEach(e=>{const t=e.tagName.toLowerCase();"quantic-tab-button"===t&&(e.slot=Ss),"quantic-tab-panel"===t&&(e.slot=Bs)})}}connectedCallback(){super.connectedCallback(),this.addEventListener("tab-selected",this._onTabSelect),this.id||(this.id=`tabs-${Math.random().toString(36).substring(2,9)}`)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect()}firstUpdated(){this._assignSlots(),this.shadowRoot?.querySelectorAll(`slot[name="${Ss}"], slot[name="${Bs}"]`).forEach(e=>e.addEventListener("slotchange",this._assignSlots)),this.setupResizeObserver()}updated(e){super.updated(e),(e.has("collapseBelow")||e.has("orientation"))&&this.checkStacked()}setupResizeObserver(){this.resizeObserver=new ResizeObserver(e=>{const t=e[0];t&&this.checkStackedForSize(t.contentRect.width)}),this.resizeObserver.observe(this)}checkStacked(){this.checkStackedForSize(this.clientWidth)}checkStackedForSize(e){if(e<=0)return;if(this.orientation!==Ms.Vertical)return void this.toggleAttribute("stacked",!1);const t=(this.collapseBelow??"").trim();if(!t.endsWith("px"))return void this.toggleAttribute("stacked",!1);const i=parseFloat(t);Number.isFinite(i)?this.toggleAttribute("stacked",e<=i):this.toggleAttribute("stacked",!1)}_onTabSelect(e){e.target.closest("quantic-tabs")===this&&(e.stopPropagation(),this.selectedIndex=e.detail.index)}render(){const e=Ne({main:!0,[`orientation--${this.orientation}`]:!0});return W`
39381
+ `,t([fe({type:"string",default:"rowgroup",reflect:!0,description:"ARIA role for the footer row group."})],e.TableFooter.prototype,"role",void 0),e.TableFooter=t([Se("quantic-table-footer")],e.TableFooter);const qs={Horizontal:"horizontal",Vertical:"vertical"},Ss={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Bs="buttons",As="panels",Ps="tabs.id",js="tabs.size",zs="tabs.orientation",Hs="tabs.selectedIndex";e.Tabs=class extends qe{constructor(){super(...arguments),this.size=Ss.Medium,this.orientation=qs.Horizontal,this.selectedIndex=0,this.id="",this.collapseBelow="",this.resizeObserver=null,this._assignSlots=()=>{Array.from(this.children).filter(e=>e instanceof HTMLElement).forEach(e=>{const t=e.tagName.toLowerCase();"quantic-tab-button"===t&&(e.slot=Bs),"quantic-tab-panel"===t&&(e.slot=As)})}}connectedCallback(){super.connectedCallback(),this.addEventListener("tab-selected",this._onTabSelect),this.id||(this.id=`tabs-${Math.random().toString(36).substring(2,9)}`)}disconnectedCallback(){super.disconnectedCallback(),this.resizeObserver?.disconnect()}firstUpdated(){this._assignSlots(),this.shadowRoot?.querySelectorAll(`slot[name="${Bs}"], slot[name="${As}"]`).forEach(e=>e.addEventListener("slotchange",this._assignSlots)),this.setupResizeObserver()}updated(e){super.updated(e),(e.has("collapseBelow")||e.has("orientation"))&&this.checkStacked()}setupResizeObserver(){this.resizeObserver=new ResizeObserver(e=>{const t=e[0];t&&this.checkStackedForSize(t.contentRect.width)}),this.resizeObserver.observe(this)}checkStacked(){this.checkStackedForSize(this.clientWidth)}checkStackedForSize(e){if(e<=0)return;if(this.orientation!==qs.Vertical)return void this.toggleAttribute("stacked",!1);const t=(this.collapseBelow??"").trim();if(!t.endsWith("px"))return void this.toggleAttribute("stacked",!1);const i=parseFloat(t);Number.isFinite(i)?this.toggleAttribute("stacked",e<=i):this.toggleAttribute("stacked",!1)}_onTabSelect(e){e.target.closest("quantic-tabs")===this&&(e.stopPropagation(),this.selectedIndex=e.detail.index)}render(){const e=Ne({main:!0,[`orientation--${this.orientation}`]:!0});return W`
39342
39382
  <div class=${e}>
39343
39383
  <div class="buttons" part="nav" role="tablist">
39344
- <slot name=${Ss}></slot>
39384
+ <slot name=${Bs}></slot>
39345
39385
  </div>
39346
- <div class="panels" part="panels"><slot name=${Bs}></slot></div>
39386
+ <div class="panels" part="panels"><slot name=${As}></slot></div>
39347
39387
  </div>
39348
39388
  `}},e.Tabs.meta={tag:"quantic-tabs",description:"Tab container managing quantic-tab-button triggers and quantic-tab-panel content areas. Place quantic-tab-button and quantic-tab-panel as direct children. Emits tab-selected when the active tab changes.",category:"navigation",slots:{"":{description:"quantic-tab-button and quantic-tab-panel elements as direct children."}},subComponents:["quantic-tab-button","quantic-tab-panel"]},e.Tabs.styles=[d`
39349
39389
  :host {
@@ -39430,19 +39470,19 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39430
39470
  border-right: none;
39431
39471
  border-bottom: 1px solid var(--quantic-border-tertiary);
39432
39472
  }
39433
- `,Pe(Bs,d`
39473
+ `,Pe(As,d`
39434
39474
  .panels {
39435
39475
  display: block;
39436
39476
  }
39437
- `)],t([rn({context:Ps}),fe({type:"TabsSize",options:Object.values(qs),default:"md",reflect:!0,description:"Controls tab button font size and padding, and the gap between the tab buttons and panels."})],e.Tabs.prototype,"size",void 0),t([rn({context:js}),fe({type:"TabsOrientation",options:Object.values(Ms),default:"horizontal",description:'Layout direction: "horizontal" shows tabs along the top, "vertical" shows them on the left.'})],e.Tabs.prototype,"orientation",void 0),t([rn({context:zs}),fe({type:"number",default:"0",description:"Zero-based index of the currently active tab."})],e.Tabs.prototype,"selectedIndex",void 0),t([rn({context:As}),fe({type:"string",description:"Unique identifier shared via context to link buttons and panels. Auto-generated if not set."})],e.Tabs.prototype,"id",void 0),t([fe({attribute:"collapse-below",type:"string",description:'Pixel breakpoint below which vertical tabs stack (list above panels), matching splitter. Unset by default so vertical tabs stay side-by-side at every width. Example: "640px".'})],e.Tabs.prototype,"collapseBelow",void 0),e.Tabs=t([Ce("tab-selected",{description:"Fired when a tab is selected, providing the index of the selected tab.",detail:"{ index: number }"}),Se("quantic-tabs")],e.Tabs);const Hs=(e,t)=>`tabbutton-${e}-${t}`,Ts=(e,t)=>`tabpanel-${e}-${t}`;function Ds(e,t){e.hasAttribute("slot")||e.setAttribute("slot",t)}e.TabButton=class extends qe{constructor(){super(...arguments),this.defaultSize=qs.Medium,this.size=this.defaultSize,this.defaultOrientation=Ms.Horizontal,this.orientation=this.defaultOrientation,this.defaultSelectedIndex=0,this.selectedIndex=this.defaultSelectedIndex,this.tabsId="",this.disabled=!1,this.buttonRef=St()}willUpdate(){Ds(this,Ss),this.toggleAttribute("selected",this.selectedIndex===this.index)}_onClick(){this.disabled||(this.dispatchEvent(new CustomEvent("tab-selected",{detail:{index:this.index},bubbles:!0,composed:!0})),this.buttonRef.value?.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"}))}render(){const e=this.selectedIndex===this.index,t=Ne({main:!0,"is-active":e,"is-disabled":this.disabled,[`orientation--${this.orientation}`]:!0,disabled:this.disabled,[`size--${this.size}`]:!0});return W`
39477
+ `)],t([rn({context:js}),fe({type:"TabsSize",options:Object.values(Ss),default:"md",reflect:!0,description:"Controls tab button font size and padding, and the gap between the tab buttons and panels."})],e.Tabs.prototype,"size",void 0),t([rn({context:zs}),fe({type:"TabsOrientation",options:Object.values(qs),default:"horizontal",description:'Layout direction: "horizontal" shows tabs along the top, "vertical" shows them on the left.'})],e.Tabs.prototype,"orientation",void 0),t([rn({context:Hs}),fe({type:"number",default:"0",description:"Zero-based index of the currently active tab."})],e.Tabs.prototype,"selectedIndex",void 0),t([rn({context:Ps}),fe({type:"string",description:"Unique identifier shared via context to link buttons and panels. Auto-generated if not set."})],e.Tabs.prototype,"id",void 0),t([fe({attribute:"collapse-below",type:"string",description:'Pixel breakpoint below which vertical tabs stack (list above panels), matching splitter. Unset by default so vertical tabs stay side-by-side at every width. Example: "640px".'})],e.Tabs.prototype,"collapseBelow",void 0),e.Tabs=t([Ce("tab-selected",{description:"Fired when a tab is selected, providing the index of the selected tab.",detail:"{ index: number }"}),Se("quantic-tabs")],e.Tabs);const Ts=(e,t)=>`tabbutton-${e}-${t}`,Ds=(e,t)=>`tabpanel-${e}-${t}`;function Vs(e,t){e.hasAttribute("slot")||e.setAttribute("slot",t)}e.TabButton=class extends qe{constructor(){super(...arguments),this.defaultSize=Ss.Medium,this.size=this.defaultSize,this.defaultOrientation=qs.Horizontal,this.orientation=this.defaultOrientation,this.defaultSelectedIndex=0,this.selectedIndex=this.defaultSelectedIndex,this.tabsId="",this.disabled=!1,this.buttonRef=St()}willUpdate(){Vs(this,Bs),this.toggleAttribute("selected",this.selectedIndex===this.index)}_onClick(){this.disabled||(this.dispatchEvent(new CustomEvent("tab-selected",{detail:{index:this.index},bubbles:!0,composed:!0})),this.buttonRef.value?.scrollIntoView({behavior:"smooth",block:"nearest",inline:"nearest"}))}render(){const e=this.selectedIndex===this.index,t=Ne({main:!0,"is-active":e,"is-disabled":this.disabled,[`orientation--${this.orientation}`]:!0,disabled:this.disabled,[`size--${this.size}`]:!0});return W`
39438
39478
  <button
39439
39479
  ${Pt(this.buttonRef)}
39440
39480
  class=${t}
39441
39481
  part="button"
39442
- id=${Hs(this.tabsId,this.index)}
39482
+ id=${Ts(this.tabsId,this.index)}
39443
39483
  role="tab"
39444
39484
  aria-selected=${e}
39445
- aria-controls=${Ts(this.tabsId,this.index)}
39485
+ aria-controls=${Ds(this.tabsId,this.index)}
39446
39486
  aria-disabled=${this.disabled}
39447
39487
  ?disabled=${this.disabled}
39448
39488
  tabindex=${e&&!this.disabled?0:-1}
@@ -39634,10 +39674,10 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39634
39674
  .is-disabled .indicator {
39635
39675
  display: none;
39636
39676
  }
39637
- `,t([fe({type:"TabsSize",reflect:!0,description:"SSR fallback for size before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultSize",void 0),t([an({context:Ps,subscribe:!0})],e.TabButton.prototype,"size",void 0),t([fe({type:"TabsOrientation",reflect:!0,description:"SSR fallback for orientation before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultOrientation",void 0),t([an({context:js,subscribe:!0})],e.TabButton.prototype,"orientation",void 0),t([fe({type:"number",default:"0",reflect:!0,description:"SSR fallback for selected index before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultSelectedIndex",void 0),t([an({context:zs,subscribe:!0})],e.TabButton.prototype,"selectedIndex",void 0),t([an({context:As,subscribe:!0})],e.TabButton.prototype,"tabsId",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents this tab from being selected."})],e.TabButton.prototype,"disabled",void 0),t([fe({type:"number",reflect:!0,description:"Zero-based position of this button; must match the index of the corresponding quantic-tab-panel.",required:!0})],e.TabButton.prototype,"index",void 0),e.TabButton=t([Ce("tab-selected",{description:"Fired when a tab is selected, providing the index of the selected tab.",detail:"{ index: number }"}),Se("quantic-tab-button")],e.TabButton),e.TabPanel=class extends qe{constructor(){super(...arguments),this.defaultSelectedIndex=0,this.selectedIndex=this.defaultSelectedIndex,this.tabsId=""}willUpdate(){Ds(this,Bs)}render(){const e=this.selectedIndex===this.index,t=Ne({main:!0,"is-active":e});return W`<div
39638
- id=${Ts(this.tabsId,this.index)}
39677
+ `,t([fe({type:"TabsSize",reflect:!0,description:"SSR fallback for size before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultSize",void 0),t([an({context:js,subscribe:!0})],e.TabButton.prototype,"size",void 0),t([fe({type:"TabsOrientation",reflect:!0,description:"SSR fallback for orientation before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultOrientation",void 0),t([an({context:zs,subscribe:!0})],e.TabButton.prototype,"orientation",void 0),t([fe({type:"number",default:"0",reflect:!0,description:"SSR fallback for selected index before context propagates from quantic-tabs."})],e.TabButton.prototype,"defaultSelectedIndex",void 0),t([an({context:Hs,subscribe:!0})],e.TabButton.prototype,"selectedIndex",void 0),t([an({context:Ps,subscribe:!0})],e.TabButton.prototype,"tabsId",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents this tab from being selected."})],e.TabButton.prototype,"disabled",void 0),t([fe({type:"number",reflect:!0,description:"Zero-based position of this button; must match the index of the corresponding quantic-tab-panel.",required:!0})],e.TabButton.prototype,"index",void 0),e.TabButton=t([Ce("tab-selected",{description:"Fired when a tab is selected, providing the index of the selected tab.",detail:"{ index: number }"}),Se("quantic-tab-button")],e.TabButton),e.TabPanel=class extends qe{constructor(){super(...arguments),this.defaultSelectedIndex=0,this.selectedIndex=this.defaultSelectedIndex,this.tabsId=""}willUpdate(){Vs(this,As)}render(){const e=this.selectedIndex===this.index,t=Ne({main:!0,"is-active":e});return W`<div
39678
+ id=${Ds(this.tabsId,this.index)}
39639
39679
  class=${t}
39640
- aria-labelledby=${Hs(this.tabsId,this.index)}
39680
+ aria-labelledby=${Ts(this.tabsId,this.index)}
39641
39681
  role="tabpanel"
39642
39682
  tabindex="0"
39643
39683
  >
@@ -39671,7 +39711,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39671
39711
  .is-active {
39672
39712
  display: block;
39673
39713
  }
39674
- `,t([fe({type:"number",default:"0",reflect:!0,description:"SSR fallback for selected index before context propagates from quantic-tabs."})],e.TabPanel.prototype,"defaultSelectedIndex",void 0),t([an({context:zs,subscribe:!0})],e.TabPanel.prototype,"selectedIndex",void 0),t([an({context:As,subscribe:!0})],e.TabPanel.prototype,"tabsId",void 0),t([fe({type:"number",reflect:!0,description:"Zero-based position of this panel; must match the index of the corresponding quantic-tab-button.",required:!0})],e.TabPanel.prototype,"index",void 0),e.TabPanel=t([Se("quantic-tab-panel")],e.TabPanel);const Vs={Small:"sm",Medium:"md",Large:"lg"};e.Checkbox.ensureDefined(),e.LucideIconX.ensureDefined(),e.Tag=class extends qe{constructor(){super(...arguments),this.size=Vs.Medium,this.selectable=!1,this.dismissible=!1,this.selected=!1}handleClick(){this.selectable&&(this.selected=!this.selected,this.dispatchEvent(new CustomEvent("tag-select",{detail:{selected:this.selected},bubbles:!0,composed:!0})))}handleDismiss(e){e.preventDefault(),e.stopPropagation(),this.dispatchEvent(new CustomEvent("tag-dismiss",{bubbles:!0,composed:!0}))}handleKeyDown(e){!this.selectable||"Enter"!==e.key&&" "!==e.key||e.target.closest(".dismiss-button")||(e.preventDefault(),this.handleClick())}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0,selectable:this.selectable});return Re`
39714
+ `,t([fe({type:"number",default:"0",reflect:!0,description:"SSR fallback for selected index before context propagates from quantic-tabs."})],e.TabPanel.prototype,"defaultSelectedIndex",void 0),t([an({context:Hs,subscribe:!0})],e.TabPanel.prototype,"selectedIndex",void 0),t([an({context:Ps,subscribe:!0})],e.TabPanel.prototype,"tabsId",void 0),t([fe({type:"number",reflect:!0,description:"Zero-based position of this panel; must match the index of the corresponding quantic-tab-button.",required:!0})],e.TabPanel.prototype,"index",void 0),e.TabPanel=t([Se("quantic-tab-panel")],e.TabPanel);const Fs={Small:"sm",Medium:"md",Large:"lg"};e.Checkbox.ensureDefined(),e.LucideIconX.ensureDefined(),e.Tag=class extends qe{constructor(){super(...arguments),this.size=Fs.Medium,this.selectable=!1,this.dismissible=!1,this.selected=!1}handleClick(){this.selectable&&(this.selected=!this.selected,this.dispatchEvent(new CustomEvent("tag-select",{detail:{selected:this.selected},bubbles:!0,composed:!0})))}handleDismiss(e){e.preventDefault(),e.stopPropagation(),this.dispatchEvent(new CustomEvent("tag-dismiss",{bubbles:!0,composed:!0}))}handleKeyDown(e){!this.selectable||"Enter"!==e.key&&" "!==e.key||e.target.closest(".dismiss-button")||(e.preventDefault(),this.handleClick())}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0,selectable:this.selectable});return Re`
39675
39715
  <div
39676
39716
  class=${e}
39677
39717
  @click=${this.handleClick}
@@ -39681,7 +39721,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39681
39721
  aria-checked=${this.selectable?String(this.selected):void 0}
39682
39722
  >
39683
39723
  ${this.selectable?Re`<quantic-checkbox
39684
- size=${this.size===Vs.Large?"md":"sm"}
39724
+ size=${this.size===Fs.Large?"md":"sm"}
39685
39725
  ?checked=${this.selected}
39686
39726
  ></quantic-checkbox>`:null}
39687
39727
  <slot name="before"></slot>
@@ -39808,7 +39848,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39808
39848
  display: flex;
39809
39849
  align-items: center;
39810
39850
  }
39811
- `,t([fe({type:"TagSize",options:Object.values(Vs),default:Vs.Medium,description:"Controls padding and font size."})],e.Tag.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.Tag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.Tag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.Tag.prototype,"selected",void 0),e.Tag=t([Ce("tag-select",{description:"Fired when a tag's selection state changes (only when selectable is true).",detail:"{ selected: boolean }"}),Ce("tag-dismiss",{description:"Fired when a tag's dismiss button is clicked (only when dismissible is true)."}),Se("quantic-tag")],e.Tag),e.Tag.ensureDefined();const Fs=Je;e.StatusTag=class extends qe{constructor(){super(...arguments),this.size=Vs.Medium,this.color=Fs.Gray,this.selectable=!1,this.dismissible=!1,this.selected=!1}render(){const e=Ne({"status-dot":!0,[`color--${this.color}`]:!0});return Re`
39851
+ `,t([fe({type:"TagSize",options:Object.values(Fs),default:Fs.Medium,description:"Controls padding and font size."})],e.Tag.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.Tag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.Tag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.Tag.prototype,"selected",void 0),e.Tag=t([Ce("tag-select",{description:"Fired when a tag's selection state changes (only when selectable is true).",detail:"{ selected: boolean }"}),Ce("tag-dismiss",{description:"Fired when a tag's dismiss button is clicked (only when dismissible is true)."}),Se("quantic-tag")],e.Tag),e.Tag.ensureDefined();const Rs=Je;e.StatusTag=class extends qe{constructor(){super(...arguments),this.size=Fs.Medium,this.color=Rs.Gray,this.selectable=!1,this.dismissible=!1,this.selected=!1}render(){const e=Ne({"status-dot":!0,[`color--${this.color}`]:!0});return Re`
39812
39852
  <quantic-tag
39813
39853
  size=${this.size}
39814
39854
  ?selectable=${this.selectable}
@@ -39831,7 +39871,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39831
39871
  }
39832
39872
 
39833
39873
  ${l(ct(e=>`color: var(--quantic-utility-${e}-700);`))}
39834
- `,t([fe({type:"TagSize",options:Object.values(Vs),default:Vs.Medium,description:"Controls padding and font size."})],e.StatusTag.prototype,"size",void 0),t([fe({type:"StatusTagColor",options:Object.values(Fs),default:Fs.Gray,description:"Semantic color applied to the status dot and text."})],e.StatusTag.prototype,"color",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.StatusTag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.StatusTag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.StatusTag.prototype,"selected",void 0),e.StatusTag=t([Se("quantic-status-tag")],e.StatusTag),e.Tag.ensureDefined(),e.CountTag=class extends qe{constructor(){super(...arguments),this.size=Vs.Medium,this.selectable=!1,this.dismissible=!1,this.selected=!1,this.count=""}render(){return Re`
39874
+ `,t([fe({type:"TagSize",options:Object.values(Fs),default:Fs.Medium,description:"Controls padding and font size."})],e.StatusTag.prototype,"size",void 0),t([fe({type:"StatusTagColor",options:Object.values(Rs),default:Rs.Gray,description:"Semantic color applied to the status dot and text."})],e.StatusTag.prototype,"color",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.StatusTag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.StatusTag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.StatusTag.prototype,"selected",void 0),e.StatusTag=t([Se("quantic-status-tag")],e.StatusTag),e.Tag.ensureDefined(),e.CountTag=class extends qe{constructor(){super(...arguments),this.size=Fs.Medium,this.selectable=!1,this.dismissible=!1,this.selected=!1,this.count=""}render(){return Re`
39835
39875
  <quantic-tag
39836
39876
  size=${this.size}
39837
39877
  ?selectable=${this.selectable}
@@ -39854,7 +39894,25 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39854
39894
  padding: 0 var(--quantic-spacing-1-5);
39855
39895
  font-weight: var(--quantic-font-weight-medium);
39856
39896
  }
39857
- `,t([fe({type:"TagSize",options:Object.values(Vs),default:Vs.Medium,description:"Controls padding and font size."})],e.CountTag.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.CountTag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.CountTag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.CountTag.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"Numeric count displayed in the trailing badge."})],e.CountTag.prototype,"count",void 0),e.CountTag=t([Se("quantic-count-tag")],e.CountTag);const Rs={Body:"body",Display:"display"},Os={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl",TwoExtraLarge:"2xl"},$s=[".main {\n color: var(--quantic-text-primary);\n font-weight: inherit;\n }",...Object.values(Rs).map(e=>`\n.variant--${e} {\n font-family: var(--quantic-font-family-${e});\n}`),...Object.values(Os).flatMap(e=>Object.values(Rs).map(t=>((e,t)=>`\n.size--${t}-${e} {\n font-size: var(--quantic-font-size-${t}-${e});\n line-height: var(--quantic-line-height-${t}-${e});\n}`)(e,t)))].join("\n");e.Text=class extends qe{constructor(){super(...arguments),this.as="span",this.variant=Rs.Body}render(){const e={main:!0,[`variant--${this.variant}`]:!0,[`size--${this.variant}-${this.size}`]:!!this.size},t=Ve(this.as);return Re`<${t} class=${Ne(e)}><slot></slot></${t}>`}},e.Text.meta={tag:"quantic-text",description:"Typography component for rendering text with consistent sizing, weight, and color tokens. Renders any HTML element via the `as` prop for semantic correctness.",category:"display",slots:{"":{description:"Text content to render."}},relatedTo:[]},e.Text.styles=l($s),t([fe({type:"string",default:"span",description:'HTML tag to render (e.g. "p", "h1", "span", "label").'})],e.Text.prototype,"as",void 0),t([fe({type:"TextVariant",options:Object.values(Rs),default:Rs.Body,description:"Font family variant — body or display."})],e.Text.prototype,"variant",void 0),t([fe({type:"TextSize",options:Object.values(Os),description:"Font size and line-height token. Omit to inherit from context."})],e.Text.prototype,"size",void 0),e.Text=t([Se("quantic-text")],e.Text);const _s={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Es={None:"none",Vertical:"vertical",Horizontal:"horizontal",Both:"both"};e.LucideIconCircleAlert.ensureDefined(),e.Textarea=class extends(Xi(qe)){constructor(){super(),this.value="",this.name="",this.placeholder="",this.size=_s.Medium,this.rows=4,this.resize=Es.Vertical,this.disabled=!1,this.required=!1,this.readOnly=!1,this.invalid=!1,this.autoComplete="off",this.internals=this.attachInternals()}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity()),at(this,e,this.value)}forwardNative(e){const t=e.target;this.value=t.value,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.value=e.target.value}formResetCallback(){this.value="",this.internals.setFormValue("")}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("textarea");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
39897
+ `,t([fe({type:"TagSize",options:Object.values(Fs),default:Fs.Medium,description:"Controls padding and font size."})],e.CountTag.prototype,"size",void 0),t([fe({type:"boolean",default:"false",description:"Renders a checkbox and makes the tag toggleable."})],e.CountTag.prototype,"selectable",void 0),t([fe({type:"boolean",default:"false",description:"Shows a dismiss (×) button to remove the tag."})],e.CountTag.prototype,"dismissible",void 0),t([fe({type:"boolean",default:"false",description:"Current selected state when selectable is true."})],e.CountTag.prototype,"selected",void 0),t([fe({type:"string",default:"",description:"Numeric count displayed in the trailing badge."})],e.CountTag.prototype,"count",void 0),e.CountTag=t([Se("quantic-count-tag")],e.CountTag),e.TagGroup=class extends qe{constructor(){super(...arguments),this.ariaLabel=null}render(){return W`
39898
+ <div class="group" role="group" aria-label=${this.ariaLabel??"Tags"}>
39899
+ <slot></slot>
39900
+ </div>
39901
+ `}},e.TagGroup.meta={tag:"quantic-tag-group",description:"A run of quantic-tag, quantic-status-tag or quantic-count-tag sharing one accessible name and a consistent gap. Wraps across lines, and each tag keeps its own size. Gap: --quantic-component-tag-group-gap. Use quantic-badge-group for badges.",category:"display",slots:{"":{description:"quantic-tag, quantic-status-tag or quantic-count-tag elements."}},subComponents:["quantic-tag","quantic-status-tag","quantic-count-tag"],relatedTo:["quantic-tag","quantic-badge-group"]},e.TagGroup.styles=d`
39902
+ :host {
39903
+ display: block;
39904
+ }
39905
+
39906
+ .group {
39907
+ display: flex;
39908
+ flex-wrap: wrap;
39909
+ align-items: center;
39910
+ gap: var(
39911
+ --quantic-component-tag-group-gap,
39912
+ var(--quantic-spacing-1)
39913
+ );
39914
+ }
39915
+ `,t([fe({type:"string",attribute:"aria-label",description:"Accessible name for the group."})],e.TagGroup.prototype,"ariaLabel",void 0),e.TagGroup=t([Se("quantic-tag-group")],e.TagGroup);const Os={Body:"body",Display:"display"},$s={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg",ExtraLarge:"xl",TwoExtraLarge:"2xl"},_s=[".main {\n color: var(--quantic-text-primary);\n font-weight: inherit;\n }",...Object.values(Os).map(e=>`\n.variant--${e} {\n font-family: var(--quantic-font-family-${e});\n}`),...Object.values($s).flatMap(e=>Object.values(Os).map(t=>((e,t)=>`\n.size--${t}-${e} {\n font-size: var(--quantic-font-size-${t}-${e});\n line-height: var(--quantic-line-height-${t}-${e});\n}`)(e,t)))].join("\n");e.Text=class extends qe{constructor(){super(...arguments),this.as="span",this.variant=Os.Body}render(){const e={main:!0,[`variant--${this.variant}`]:!0,[`size--${this.variant}-${this.size}`]:!!this.size},t=Ve(this.as);return Re`<${t} class=${Ne(e)}><slot></slot></${t}>`}},e.Text.meta={tag:"quantic-text",description:"Typography component for rendering text with consistent sizing, weight, and color tokens. Renders any HTML element via the `as` prop for semantic correctness.",category:"display",slots:{"":{description:"Text content to render."}},relatedTo:[]},e.Text.styles=l(_s),t([fe({type:"string",default:"span",description:'HTML tag to render (e.g. "p", "h1", "span", "label").'})],e.Text.prototype,"as",void 0),t([fe({type:"TextVariant",options:Object.values(Os),default:Os.Body,description:"Font family variant — body or display."})],e.Text.prototype,"variant",void 0),t([fe({type:"TextSize",options:Object.values($s),description:"Font size and line-height token. Omit to inherit from context."})],e.Text.prototype,"size",void 0),e.Text=t([Se("quantic-text")],e.Text);const Es={ExtraSmall:"xs",Small:"sm",Medium:"md",Large:"lg"},Us={None:"none",Vertical:"vertical",Horizontal:"horizontal",Both:"both"};e.LucideIconCircleAlert.ensureDefined(),e.Textarea=class extends(Xi(qe)){constructor(){super(),this.value="",this.name="",this.placeholder="",this.size=Es.Medium,this.rows=4,this.resize=Us.Vertical,this.disabled=!1,this.required=!1,this.readOnly=!1,this.invalid=!1,this.autoComplete="off",this.internals=this.attachInternals()}updated(e){e.has("value")&&(this.internals.setFormValue(this.value),this.updateValidity()),at(this,e,this.value)}forwardNative(e){const t=e.target;this.value=t.value,this.dispatchEvent(new Event(e.type,{bubbles:!0,composed:!0}))}dispatchValueChanged(e){this.value=e.target.value}formResetCallback(){this.value="",this.internals.setFormValue("")}formStateRestoreCallback(e){this.value=e,this.internals.setFormValue(e)}formDisabledCallback(e){this.disabled=e}updateValidity(){const e=this.shadowRoot?.querySelector("textarea");e&&this.internals.setValidity(e.validity,e.validationMessage,e)}render(){const e=Ne({main:!0,[`size--${this.size}`]:!0}),t=this.getA11yAttributes({invalid:this.invalid});return W`
39858
39916
  <div class=${e}>
39859
39917
  <textarea
39860
39918
  .value=${this.value}
@@ -39864,7 +39922,7 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39864
39922
  name=${this.name}
39865
39923
  .rows=${this.rows}
39866
39924
  part="input"
39867
- style=${ko({resize:this.resize})}
39925
+ style=${yo({resize:this.resize})}
39868
39926
  ?readonly=${this.readOnly}
39869
39927
  ?required=${this.required}
39870
39928
  ?disabled=${this.disabled}
@@ -39890,8 +39948,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39890
39948
  display: inline-block;
39891
39949
  width: 100%;
39892
39950
 
39893
- --quantic-component-textarea-padding-inline: var(--quantic-spacing-3);
39894
- --quantic-component-textarea-padding-block: var(--quantic-spacing-md);
39951
+ --quantic-internal-textarea-padding-inline: var(--quantic-spacing-3);
39952
+ --quantic-internal-textarea-padding-block: var(--quantic-spacing-md);
39895
39953
  --quantic-component-textarea-bg: var(--quantic-bg-primary);
39896
39954
  --quantic-component-textarea-color: var(--quantic-text-primary);
39897
39955
  }
@@ -39906,8 +39964,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39906
39964
  border-radius: var(--quantic-component-textarea-border-radius, var(--quantic-radius-sm));
39907
39965
  color: var(--quantic-component-textarea-color);
39908
39966
  background-color: var(--quantic-component-textarea-bg);
39909
- padding: var(--quantic-component-textarea-padding-block)
39910
- var(--quantic-component-textarea-padding-inline);
39967
+ padding: var(--quantic-component-textarea-padding-block, var(--quantic-internal-textarea-padding-block))
39968
+ var(--quantic-component-textarea-padding-inline, var(--quantic-internal-textarea-padding-inline));
39911
39969
  transition:
39912
39970
  border-color 0.2s ease-in-out,
39913
39971
  box-shadow 0.2s ease-in-out;
@@ -39927,14 +39985,14 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39927
39985
 
39928
39986
  .main.size--xs {
39929
39987
  font-size: 13px;
39930
- --quantic-component-textarea-padding-inline: var(--quantic-spacing-2);
39931
- --quantic-component-textarea-padding-block: var(--quantic-spacing-xxs);
39988
+ --quantic-internal-textarea-padding-inline: var(--quantic-spacing-2);
39989
+ --quantic-internal-textarea-padding-block: var(--quantic-spacing-xxs);
39932
39990
  }
39933
39991
 
39934
39992
  .main.size--sm {
39935
39993
  font-size: var(--quantic-font-size-body-sm);
39936
- --quantic-component-textarea-padding-inline: var(--quantic-spacing-2);
39937
- --quantic-component-textarea-padding-block: var(--quantic-spacing-sm);
39994
+ --quantic-internal-textarea-padding-inline: var(--quantic-spacing-2);
39995
+ --quantic-internal-textarea-padding-block: var(--quantic-spacing-sm);
39938
39996
  }
39939
39997
 
39940
39998
  .main.size--md {
@@ -39943,8 +40001,8 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39943
40001
 
39944
40002
  .main.size--lg {
39945
40003
  font-size: var(--quantic-font-size-body-lg);
39946
- --quantic-component-textarea-padding-inline: var(--quantic-spacing-4);
39947
- --quantic-component-textarea-padding-block: var(--quantic-spacing-3);
40004
+ --quantic-internal-textarea-padding-inline: var(--quantic-spacing-4);
40005
+ --quantic-internal-textarea-padding-block: var(--quantic-spacing-3);
39948
40006
  }
39949
40007
 
39950
40008
  .input {
@@ -39995,15 +40053,15 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
39995
40053
  color: var(--quantic-border-error);
39996
40054
  pointer-events: none;
39997
40055
  }
39998
- `,t([fe({type:"string",default:"",description:"Current value of the textarea."})],e.Textarea.prototype,"value",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Textarea.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.Textarea.prototype,"placeholder",void 0),t([fe({type:"TextareaSize",options:Object.values(_s),default:_s.Medium,description:"Controls padding and font size."})],e.Textarea.prototype,"size",void 0),t([fe({type:"number",default:"4",description:"Number of visible text rows."})],e.Textarea.prototype,"rows",void 0),t([fe({type:"TextareaResize",options:Object.values(Es),default:Es.Vertical,description:"Controls the resize handle direction."})],e.Textarea.prototype,"resize",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Textarea.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.Textarea.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the field non-editable but still focusable and selectable."})],e.Textarea.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Textarea.prototype,"invalid",void 0),t([fe({type:"string",default:"off",reflect:!0,description:"Native autocomplete attribute passed to the inner <textarea>."})],e.Textarea.prototype,"autoComplete",void 0),e.Textarea=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-textarea")],e.Textarea);const Us={Success:"success",Error:"error",Warning:"warning",Info:"info"};e.Button.ensureDefined(),e.LucideIconCircleCheck.ensureDefined(),e.LucideIconCircleX.ensureDefined(),e.LucideIconInfo.ensureDefined(),e.LucideIconTriangleAlert.ensureDefined(),e.LucideIconX.ensureDefined(),e.Toast=class extends(ze(qe,["title","","action"])){constructor(){super(...arguments),this.open=!1,this.type=Us.Info,this.showCloseButton=!0,this.ariaLabel=null,this.handleCloseClick=()=>{this.dispatchEvent(new Event("close",{bubbles:!0,composed:!0}))}}updated(e){super.updated(e),e.has("open")&&void 0!==e.get("open")&&this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:this.open},bubbles:!0,composed:!0}))}renderDefaultIcon(){switch(this.type){case Us.Success:return W`<quantic-icon-lucide-circle-check
40056
+ `,t([fe({type:"string",default:"",description:"Current value of the textarea."})],e.Textarea.prototype,"value",void 0),t([fe({type:"string",description:"Name submitted with form data."})],e.Textarea.prototype,"name",void 0),t([fe({type:"string",description:"Placeholder text shown when the field is empty."})],e.Textarea.prototype,"placeholder",void 0),t([fe({type:"TextareaSize",options:Object.values(Es),default:Es.Medium,description:"Controls padding and font size."})],e.Textarea.prototype,"size",void 0),t([fe({type:"number",default:"4",description:"Number of visible text rows."})],e.Textarea.prototype,"rows",void 0),t([fe({type:"TextareaResize",options:Object.values(Us),default:Us.Vertical,description:"Controls the resize handle direction."})],e.Textarea.prototype,"resize",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Prevents interaction."})],e.Textarea.prototype,"disabled",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Marks the field as required for form validation."})],e.Textarea.prototype,"required",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Makes the field non-editable but still focusable and selectable."})],e.Textarea.prototype,"readOnly",void 0),t([fe({type:"boolean",default:"false",reflect:!0,description:"Applies error styling. Set alongside an error message in the parent quantic-field."})],e.Textarea.prototype,"invalid",void 0),t([fe({type:"string",default:"off",reflect:!0,description:"Native autocomplete attribute passed to the inner <textarea>."})],e.Textarea.prototype,"autoComplete",void 0),e.Textarea=t([Ce("value-changed",{description:"Fired whenever the value changes, from user input or a programmatic update. Not fired on initial render.",detail:"{ value: string }"}),Ce("input",{forwarded:!0}),Ce("change",{forwarded:!0}),Ce("focus",{forwarded:!0}),Ce("blur",{forwarded:!0}),Ce("keydown",{forwarded:!0}),Ce("keyup",{forwarded:!0}),Ce("keypress",{forwarded:!0}),Se("quantic-textarea")],e.Textarea);const Gs={Success:"success",Error:"error",Warning:"warning",Info:"info"};e.Button.ensureDefined(),e.LucideIconCircleCheck.ensureDefined(),e.LucideIconCircleX.ensureDefined(),e.LucideIconInfo.ensureDefined(),e.LucideIconTriangleAlert.ensureDefined(),e.LucideIconX.ensureDefined(),e.Toast=class extends(ze(qe,["title","","action"])){constructor(){super(...arguments),this.open=!1,this.type=Gs.Info,this.showCloseButton=!0,this.ariaLabel=null,this.handleCloseClick=()=>{this.dispatchEvent(new Event("close",{bubbles:!0,composed:!0}))}}updated(e){super.updated(e),e.has("open")&&void 0!==e.get("open")&&this.dispatchEvent(new CustomEvent("open-changed",{detail:{open:this.open},bubbles:!0,composed:!0}))}renderDefaultIcon(){switch(this.type){case Gs.Success:return W`<quantic-icon-lucide-circle-check
39999
40057
  size="md"
40000
- ></quantic-icon-lucide-circle-check>`;case Us.Error:return W`<quantic-icon-lucide-circle-x
40058
+ ></quantic-icon-lucide-circle-check>`;case Gs.Error:return W`<quantic-icon-lucide-circle-x
40001
40059
  size="md"
40002
- ></quantic-icon-lucide-circle-x>`;case Us.Warning:return W`<quantic-icon-lucide-triangle-alert
40060
+ ></quantic-icon-lucide-circle-x>`;case Gs.Warning:return W`<quantic-icon-lucide-triangle-alert
40003
40061
  size="md"
40004
40062
  ></quantic-icon-lucide-triangle-alert>`;default:return W`<quantic-icon-lucide-info
40005
40063
  size="md"
40006
- ></quantic-icon-lucide-info>`}}render(){const e=this.type===Us.Error;return W`
40064
+ ></quantic-icon-lucide-info>`}}render(){const e=this.type===Gs.Error;return W`
40007
40065
  <div
40008
40066
  class="container"
40009
40067
  role=${e?"alert":"status"}
@@ -40144,10 +40202,10 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
40144
40202
  [hidden] {
40145
40203
  display: none;
40146
40204
  }
40147
- `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the toast is visible."})],e.Toast.prototype,"open",void 0),t([fe({type:"ToastType",options:Object.values(Us),default:Us.Info,reflect:!0,description:"Severity. Drives icon and color tokens."})],e.Toast.prototype,"type",void 0),t([fe({type:"boolean",attribute:"show-close-button",default:"true",description:'Shows a built-in close button. Click dispatches a "close" event.'})],e.Toast.prototype,"showCloseButton",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label when no title slot is provided."})],e.Toast.prototype,"ariaLabel",void 0),e.Toast=t([Ce("open-changed",{description:"Fired when the open state changes.",detail:"{ open: boolean }"}),Ce("close",{description:"Fired when the user clicks the close button. The consumer is responsible for setting open=false."}),Se("quantic-toast")],e.Toast),e.Tooltip.ensureDefined(),e.Truncate=class extends qe{constructor(){super(...arguments),this.value="",this.maxLines=1,this.placement=Xo.Top,this.isTruncated=!1}firstUpdated(){this.observer=new ResizeObserver(()=>this.checkTruncation()),this.observer.observe(this),this.checkTruncation()}updated(e){(e.has("maxLines")||e.has("value"))&&this.checkTruncation()}disconnectedCallback(){super.disconnectedCallback(),this.observer?.disconnect()}checkTruncation(){if(!this.textEl)return;const e=this.maxLines>1?this.textEl.scrollHeight>this.textEl.clientHeight:this.textEl.scrollWidth>this.textEl.clientWidth;e!==this.isTruncated&&(this.isTruncated=e)}render(){const e=W`
40205
+ `,t([fe({type:"boolean",default:"false",reflect:!0,description:"Whether the toast is visible."})],e.Toast.prototype,"open",void 0),t([fe({type:"ToastType",options:Object.values(Gs),default:Gs.Info,reflect:!0,description:"Severity. Drives icon and color tokens."})],e.Toast.prototype,"type",void 0),t([fe({type:"boolean",attribute:"show-close-button",default:"true",description:'Shows a built-in close button. Click dispatches a "close" event.'})],e.Toast.prototype,"showCloseButton",void 0),t([fe({type:"string",attribute:"aria-label",description:"Accessible label when no title slot is provided."})],e.Toast.prototype,"ariaLabel",void 0),e.Toast=t([Ce("open-changed",{description:"Fired when the open state changes.",detail:"{ open: boolean }"}),Ce("close",{description:"Fired when the user clicks the close button. The consumer is responsible for setting open=false."}),Se("quantic-toast")],e.Toast),e.Tooltip.ensureDefined(),e.Truncate=class extends qe{constructor(){super(...arguments),this.value="",this.maxLines=1,this.placement=Ko.Top,this.isTruncated=!1}firstUpdated(){this.observer=new ResizeObserver(()=>this.checkTruncation()),this.observer.observe(this),this.checkTruncation()}updated(e){(e.has("maxLines")||e.has("value"))&&this.checkTruncation()}disconnectedCallback(){super.disconnectedCallback(),this.observer?.disconnect()}checkTruncation(){if(!this.textEl)return;const e=this.maxLines>1?this.textEl.scrollHeight>this.textEl.clientHeight:this.textEl.scrollWidth>this.textEl.clientWidth;e!==this.isTruncated&&(this.isTruncated=e)}render(){const e=W`
40148
40206
  <div
40149
40207
  class=${Ne({text:!0,"text--multiline":this.maxLines>1})}
40150
- style=${ko({"--truncate-max-lines":String(this.maxLines)})}
40208
+ style=${yo({"--truncate-max-lines":String(this.maxLines)})}
40151
40209
  tabindex=${this.isTruncated?"0":J}
40152
40210
  >
40153
40211
  ${this.value}
@@ -40182,5 +40240,5 @@ const wo="important",mo=" !"+wo,ko=Ge(class extends Ze{constructor(e){if(super(e
40182
40240
  line-clamp: var(--truncate-max-lines);
40183
40241
  white-space: normal;
40184
40242
  }
40185
- `,t([fe({type:"string",default:"",description:"Text to display and show in the tooltip when truncated."})],e.Truncate.prototype,"value",void 0),t([fe({type:"number",attribute:"max-lines",default:"1",description:"Maximum number of visible lines before truncating. Defaults to 1 (single-line)."})],e.Truncate.prototype,"maxLines",void 0),t([fe({type:"TooltipPlacement",options:Object.values(Xo),default:Xo.Top,description:"Preferred tooltip placement relative to the text."})],e.Truncate.prototype,"placement",void 0),t([xe(".text")],e.Truncate.prototype,"textEl",void 0),t([ke()],e.Truncate.prototype,"isTruncated",void 0),e.Truncate=t([Se("quantic-truncate")],e.Truncate),e.AlertType=He,e.BadgeColor=Ji,e.BadgeSize=Qi,e.ButtonBarSize=ln,e.ButtonGroupSize=un,e.ButtonGrow=_e,e.ButtonSize=$e,e.ButtonVariant=Oe,e.CapacityBarColor=en,e.CapacityBarSize=Yi,e.CardGroupDensity=wn,e.CheckboxGroupGap=yn,e.CheckboxGroupVariant=xn,e.CheckboxSize=kn,e.CodeInputSize=mn,e.ComboboxSize=Ki,e.DialogBackdrop=bn,e.DialogRole=Mn,e.DialogSize=Cn,e.DropdownMenuSize=ho,e.FieldGroupLayout=Lo,e.FieldGroupSize=xo,e.FieldHintPosition=Io,e.FieldSize=fo,e.FieldValidationStatus=yo,e.FieldsetSize=jo,e.FieldsetVariant=zo,e.IconBase=dt,e.IconLabelSize=Ho,e.IconName=Ke,e.IconSize=Xe,e.LOG_OUTPUT_DEFAULTS=Do,e.LayoutVariant=Uo,e.NumberInputSize=To,e.PaginationSize=ts,e.PopoverPlacement=go,e.PopoverTrigger=vo,e.ProgressColor=as,e.ProgressSize=rs,e.ProseAs=ls,e.QuanticElement=qe,e.RadioGroupGap=So,e.RadioGroupVariant=Bo,e.RadioSize=qo,e.SelectSize=Mo,e.SidebarMenuItemVariant=Eo,e.SparklineColor=ps,e.SparklineVariant=hs,e.SpinnerColor=ds,e.SpinnerSize=us,e.StatusTagColor=Fs,e.TabsOrientation=Ms,e.TabsSize=qs,e.TagSize=Vs,e.TextInputSize=bo,e.TextSize=Os,e.TextVariant=Rs,e.TextareaResize=Es,e.TextareaSize=_s,e.ToastType=Us,e.ToggleSize=Po,e.TooltipPlacement=Xo,e.TooltipSize=Ko,e.icons={"apptainer.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0.620117C37.6001 0.620117 48.3701 11.3901 48.3701 24.6201C48.3701 37.8501 37.6001 48.6201 24.3701 48.6201C11.1402 48.6201 0.370183 37.8501 0.370117 24.6201C0.370117 11.3901 11.1401 0.620117 24.3701 0.620117ZM24.3701 3.37012C12.6501 3.37012 3.12012 12.9001 3.12012 24.6201C3.12018 36.3401 12.6502 45.8701 24.3701 45.8701C36.0901 45.8701 45.6201 36.3401 45.6201 24.6201C45.6201 12.9001 36.0901 3.37012 24.3701 3.37012ZM32.0078 32.9951C32.0754 33.0597 32.1383 33.1318 32.1934 33.2119C32.2903 33.3533 32.3562 33.5068 32.3945 33.6641L35.4707 38.9922L35.5352 39.1172C35.8209 39.7527 35.584 40.514 34.9678 40.8701C34.3513 41.2261 33.5737 41.0505 33.166 40.4854L33.0898 40.3672L30.5186 35.9141C28.6877 36.8711 26.6489 37.3769 24.5703 37.374H24.5684L24.5674 37.375C22.2699 37.3745 20.111 36.7669 18.2393 35.7061L15.6406 40.207C15.2609 40.8646 14.4203 41.0896 13.7627 40.71C13.1052 40.3301 12.88 39.4896 13.2598 38.832L24.3203 19.6797L32.0078 32.9951ZM19.6143 33.3252C21.0818 34.1527 22.7704 34.625 24.5703 34.625H24.5723L24.9531 34.6182C26.4139 34.5649 27.8417 34.191 29.1416 33.5303L24.3193 25.1777L19.6143 33.3252ZM35.8066 21.1729C36.5568 21.0555 37.2604 21.5682 37.3779 22.3184C37.4811 22.9776 37.5254 23.6489 37.5254 24.3174C37.5253 26.7288 36.8738 28.9981 35.7373 30.9395L35.6602 31.0576C35.2491 31.6202 34.4698 31.7912 33.8555 31.4316C33.2003 31.048 32.9798 30.2051 33.3633 29.5498L33.5273 29.2607C34.3219 27.7966 34.7753 26.11 34.7754 24.3174C34.7754 23.7682 34.739 23.2407 34.6611 22.7432C34.544 21.9931 35.0566 21.2903 35.8066 21.1729ZM13.293 21.4336C14.0447 21.54 14.5681 22.2356 14.4619 22.9873C14.402 23.4102 14.375 23.8529 14.375 24.3174V24.3193C14.3724 26.0448 14.8013 27.7409 15.6182 29.251L15.7861 29.5508L15.8516 29.6758C16.1405 30.3097 15.9082 31.0722 15.2939 31.4316C14.6795 31.791 13.9011 31.6194 13.4902 31.0566L13.4131 30.9395L13.1992 30.5596C12.1641 28.646 11.6218 26.4986 11.625 24.3154C11.6251 23.7455 11.6584 23.1724 11.7393 22.6016C11.846 21.8502 12.5415 21.3274 13.293 21.4336ZM26.126 12.6582C26.3031 11.9689 26.9723 11.5357 27.6611 11.6396L27.7998 11.668L28.376 11.8311C31.231 12.7099 33.6556 14.56 35.2959 16.9785C35.7219 17.6069 35.558 18.4625 34.9297 18.8887C34.3013 19.3145 33.4457 19.1506 33.0195 18.5225C31.717 16.602 29.8018 15.1471 27.5664 14.459L27.1152 14.332L26.9814 14.29C26.3273 14.0495 25.9491 13.3477 26.126 12.6582ZM21.3506 11.668C22.086 11.4792 22.8354 11.9229 23.0244 12.6582C23.213 13.3936 22.7695 14.1432 22.0342 14.332C19.6056 14.9558 17.5207 16.4736 16.1426 18.5186L16.0576 18.6309C15.6118 19.1664 14.8237 19.2883 14.2334 18.8906C13.6039 18.4662 13.4382 17.6111 13.8623 16.9814L14.1982 16.5049C15.9343 14.1612 18.4402 12.4154 21.3506 11.668Z" fill="currentColor"/>\n</svg>\n',"apptainer.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5 0.620117C37.73 0.620117 48.5 11.3901 48.5 24.6201C48.4999 37.8501 37.73 48.6201 24.5 48.6201C11.27 48.6201 0.500066 37.8501 0.5 24.6201C0.5 11.3901 11.27 0.620117 24.5 0.620117ZM13.6055 38.958C13.2952 39.496 13.4798 40.1845 14.0176 40.4951C14.5554 40.8053 15.2439 40.6205 15.5547 40.083L18.167 35.5586C20.0267 36.6374 22.1871 37.2545 24.4883 37.2549V37.2559L24.4893 37.2549L24.4902 37.2559V37.2549C26.6919 37.258 28.8491 36.6812 30.75 35.5928L33.4355 40.2432L33.498 40.3398C33.8316 40.802 34.4684 40.9462 34.9727 40.6553C35.4769 40.3641 35.6699 39.7407 35.4365 39.2207L35.3848 39.1182L24.4502 20.1807L13.6055 38.958ZM29.625 33.6445C28.1777 34.4718 26.5499 34.9387 24.8799 34.999L24.4922 35.0059H24.4902C22.595 35.0059 20.8203 34.4971 19.292 33.6094L24.4492 24.6797L29.625 33.6445ZM13.249 22.0068C12.6341 21.9192 12.0644 22.347 11.9766 22.9619C11.898 23.5124 11.8653 24.0662 11.8652 24.6191C11.8622 26.7335 12.3917 28.813 13.4023 30.665L13.6113 31.0322L13.6748 31.1289C14.0128 31.5875 14.651 31.7254 15.1523 31.4297C15.6535 31.1337 15.8406 30.5088 15.6025 29.9912L15.5488 29.8887L15.3779 29.5869C14.548 28.0661 14.1127 26.3583 14.1152 24.6221V24.6211C14.1152 24.1553 14.143 23.7086 14.2041 23.2803C14.292 22.6653 13.8639 22.0948 13.249 22.0068ZM36.958 22.5723C36.8126 22.0211 36.2696 21.6583 35.6943 21.749C35.1191 21.8401 34.7154 22.3526 34.7471 22.9219L34.7588 23.0361L34.8105 23.4189C34.8543 23.806 34.875 24.2084 34.875 24.6211C34.8748 26.5444 34.3515 28.3479 33.4414 29.8887C33.1259 30.4236 33.3031 31.1138 33.8379 31.4297C34.3726 31.7452 35.0628 31.5675 35.3789 31.0332C36.4885 29.1546 37.1248 26.957 37.125 24.6211C37.125 24.1344 37.1004 23.6465 37.0459 23.165L36.9814 22.6855L36.958 22.5723ZM14.0498 17.5186C13.7011 18.0323 13.8341 18.7319 14.3477 19.0811C14.8612 19.4298 15.5608 19.2964 15.9102 18.7832L14.0498 17.5186ZM27.5244 12.3574C26.9606 12.2736 26.4132 12.629 26.2695 13.1934C26.1264 13.7576 26.4373 14.3317 26.9727 14.5273L27.083 14.5605L27.543 14.6895C29.8208 15.3846 31.769 16.8528 33.0918 18.7861C33.4427 19.2982 34.1428 19.4295 34.6553 19.0791C35.1678 18.7284 35.2986 18.0283 34.9482 17.5156C33.3462 15.1742 30.9808 13.3858 28.1992 12.5371L27.6377 12.3809L27.5244 12.3574ZM22.7207 13.1934C22.5674 12.5913 21.9546 12.2277 21.3525 12.3809C18.3285 13.1507 15.7495 15.0184 14.0498 17.5186L14.9805 18.1504L15.9102 18.7832C17.3104 16.7235 19.4324 15.1908 21.9082 14.5605C22.5096 14.4071 22.8733 13.795 22.7207 13.1934Z" fill="currentColor"/>\n</svg>\n',"ascender.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.410156C38.1001 0.410156 48.8701 11.1802 48.8701 24.4102C48.87 37.6401 38.1001 48.4102 24.8701 48.4102C11.6402 48.4102 0.870217 37.6401 0.870117 24.4102C0.870117 11.1802 11.6401 0.410156 24.8701 0.410156ZM24.8701 3.16016C13.1501 3.16016 3.62012 12.6902 3.62012 24.4102C3.62022 36.1301 13.1502 45.6602 24.8701 45.6602C36.5901 45.6602 46.12 36.1301 46.1201 24.4102C46.1201 12.6902 36.5901 3.16016 24.8701 3.16016ZM31.6807 37.625H16.3301C15.5707 37.625 14.9551 37.0094 14.9551 36.25C14.9551 35.4906 15.5707 34.875 16.3301 34.875H26.8994L19.9141 22.8711L11.9404 36.6777C11.5606 37.3352 10.72 37.5603 10.0625 37.1807C9.40497 36.8009 9.17994 35.9603 9.55957 35.3027L19.9053 17.3887L31.6807 37.625ZM42.209 30.499L42.2734 30.624C42.561 31.2588 42.3263 32.0211 41.7109 32.3789C41.0955 32.7366 40.3175 32.5629 39.9082 31.999L39.8311 31.8809L35.9326 25.1748H27.9805C27.2211 25.1748 26.6055 24.5592 26.6055 23.7998C26.6056 23.0405 27.2211 22.4248 27.9805 22.4248H34.333L28.7031 12.7412L25.5605 18.1777L25.4844 18.2959C25.0765 18.8613 24.2982 19.037 23.6816 18.6807C23.0242 18.3006 22.7996 17.4592 23.1797 16.8018L28.6963 7.25879L42.209 30.499Z" fill="currentColor"/>\n</svg>\n',"ascender.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.2598 0.410156C37.4898 0.410156 48.2598 11.1802 48.2598 24.4102C48.2597 37.6401 37.4897 48.4102 24.2598 48.4102C11.0299 48.41 0.259865 37.64 0.259766 24.4102C0.259766 11.1802 11.0299 0.410289 24.2598 0.410156ZM9.13184 35.7539C8.825 36.2941 9.0145 36.9812 9.55469 37.2881C10.0949 37.5947 10.7821 37.4054 11.0889 36.8652L19.3115 22.3867L26.7246 35.125H15.7305C15.1091 35.125 14.6055 35.6287 14.6055 36.25C14.6055 36.8713 15.1091 37.375 15.7305 37.375H30.6367L19.2881 17.873L9.13184 35.7539ZM22.5957 17.2676C22.2852 17.8057 22.4698 18.4941 23.0078 18.8047C23.5459 19.115 24.2344 18.9306 24.5449 18.3926L28.0938 12.2432L34.1582 22.6748H26.9902C26.369 22.6749 25.8653 23.1786 25.8652 23.7998C25.8652 24.4211 26.369 24.9247 26.9902 24.9248H35.4658L39.4375 31.7559L39.501 31.8516C39.8359 32.313 40.472 32.4549 40.9756 32.1621C41.479 31.8692 41.671 31.2459 41.4355 30.7266L41.3828 30.625L28.0869 7.75586L22.5957 17.2676Z" fill="currentColor"/>\n</svg>\n',"ciq-bridge.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8198 0C25.2497 0 25.6799 0.0102806 26.1099 0.0302734C39.3197 0.730265 49.5 12.0597 48.8003 25.2695C48.1303 38.0195 37.6099 48 24.8599 48C24.4299 48 23.99 47.98 23.5601 47.96C17.1601 47.6199 11.2797 44.81 6.98975 40.04C2.69984 35.2701 0.529633 29.1197 0.869629 22.7197C1.54975 9.97994 12.07 0.00014739 24.8198 0ZM24.8198 2.75C13.53 2.75015 4.21962 11.5902 3.61963 22.8701C3.46548 25.6581 3.86521 28.4492 4.79541 31.082C5.72568 33.7149 7.169 36.1375 9.04053 38.21C12.8305 42.4298 18.0405 44.9197 23.7104 45.2197C24.0903 45.2397 24.48 45.25 24.8599 45.25C36.1499 45.25 45.4601 36.4099 46.0601 25.1299C46.68 13.43 37.6701 3.40034 25.9702 2.78027C25.5902 2.76027 25.2098 2.75 24.8198 2.75ZM28.9907 10.2197L26.9487 12.0615L26.2144 11.2461V22.625H37.5806L36.7876 21.9102L38.6294 19.8682L43.2231 24.0098L38.6294 28.1514L36.7876 26.1094L37.6021 25.375H26.2144V36.75L26.939 35.9473L28.981 37.7891L24.8394 42.3828L20.6968 37.7891L22.7397 35.9473L23.4644 36.75V25.375H12.0981L12.9019 26.0996L11.0601 28.1416L6.46533 24L11.0601 19.8574L12.9019 21.9004L12.0981 22.625H23.4644V11.2676L22.7495 12.0615L20.7075 10.2197L24.8491 5.62598L28.9907 10.2197ZM18.3345 30.6152H20.2397V33.3652H15.5845V28.7207H18.3345V30.6152ZM34.2046 33.2559H29.5601V30.5059H31.4546V28.6104H34.2046V33.2559ZM20.1294 17.4951H18.2349V19.4004H15.4849V14.7451H20.1294V17.4951ZM34.0952 19.29H31.3452V17.3955H29.4497V14.6455H34.0952V19.29Z" fill="currentColor"/>\n</svg>\n',"ciq-bridge.solid":'<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.02 48H24.0103C24.0119 48 24.0135 47.999 24.0151 47.999C24.0168 47.999 24.0184 48 24.02 48ZM23.98 0C24.41 0 24.84 0.0102734 25.27 0.0302734C38.4798 0.730272 48.6602 12.0597 47.9604 25.2695C47.2805 38.0078 36.7628 47.9964 24.0151 47.999C23.5868 47.9989 23.1585 47.9898 22.7202 47.96C16.3202 47.62 10.4299 44.81 6.1499 40.04C1.85992 35.27 -0.310214 29.1197 0.0297852 22.7197C0.709913 9.97986 11.2301 1.99937e-05 23.98 0ZM20.0337 10.2109L21.8911 11.8848L22.8745 10.793V22.875H10.7827L11.8745 21.8916L10.2007 20.0342L5.80322 24L10.2007 27.9648L11.8745 26.1084L10.7837 25.125H22.8745V37.2148L21.8911 36.124L20.0337 37.7988L23.9995 42.1963L27.9644 37.7988L26.1079 36.124L25.271 37.0527L25.1245 37.2148V25.125H37.2261L36.1245 26.1182L37.7983 27.9756L38.7261 27.1377L42.1958 24.0098L38.7261 20.8818L37.7983 20.0439L36.1245 21.9014L37.2046 22.875H25.1245V10.7939L26.1079 11.8848L27.9644 10.2109L23.9995 5.81348L20.0337 10.2109ZM14.9946 28.7207V33.1152H19.3892V30.8652H17.2446V28.7207H14.9946ZM30.8647 28.6104V30.7559H28.7095V33.0059H33.1147V28.6104H30.8647ZM14.8843 14.9951V19.4004H17.1343V17.2451H19.2896V14.9951H14.8843ZM28.6089 14.8955V17.1455H30.7544V19.29H33.0044V14.8955H28.6089Z" fill="currentColor"/>\n</svg>\n',"fuzzball.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M0.035036 23.1954C0.753066 9.70572 12.3046 -0.654732 25.8026 0.0322852C39.2924 0.750967 49.6825 12.3095 48.9647 25.7989C48.2703 38.8474 37.4317 48.9979 24.5145 48.9981C24.0777 48.9981 23.6396 48.9861 23.1981 48.9629C9.70842 48.2445 -0.682501 36.6851 0.035036 23.1954ZM24.4872 2.60064C12.9421 2.60071 3.2556 11.6715 2.63465 23.334C1.9934 35.3896 11.2808 45.7197 23.3368 46.3624C35.3775 47.0012 45.7234 37.7166 46.3651 25.6602C47.0066 13.605 37.7201 3.27476 25.6639 2.63189C25.2705 2.61063 24.8769 2.60064 24.4872 2.60064ZM19.7411 23.7422C19.7397 23.7446 19.7386 23.7477 19.7372 23.7501C16.9166 28.4585 18.3193 34.5379 22.827 37.5616L23.2733 37.8448L21.9354 40.0782C15.8431 36.4292 13.8556 28.5048 17.5038 22.4122C17.5052 22.4098 17.5072 22.4077 17.5087 22.4053L19.7411 23.7422ZM21.4706 28.2491C24.2239 33.2007 30.4921 34.9858 35.4442 32.2344H35.4452L36.7098 34.5098C30.5036 37.9613 22.6464 35.7204 19.1942 29.5147C19.1929 29.5123 19.1926 29.5092 19.1913 29.5069L21.4657 28.2422C21.4671 28.2446 21.4692 28.2467 21.4706 28.2491ZM39.2743 18.9297C39.1605 26.0303 33.2917 31.7146 26.1913 31.6016C26.1885 31.6016 26.1852 31.6007 26.1825 31.6006L26.2245 28.9981C26.2271 28.9981 26.2297 28.9981 26.2323 28.9981C31.8973 29.0895 36.5785 24.5532 36.6718 18.8887L39.2743 18.9297ZM22.8095 17.3965C22.8121 17.3966 22.8146 17.3975 22.8173 17.3975L22.7753 20.0001C22.7726 20.0001 22.7701 20.0001 22.7675 20.0001C17.2793 19.9115 12.7149 24.166 12.3505 29.5821L12.329 30.1094L9.72547 30.0684C9.83928 22.9677 15.7089 17.2834 22.8095 17.3965ZM27.0643 8.91998C33.1567 12.5689 35.1451 20.4933 31.497 26.586C31.4955 26.5884 31.4935 26.5905 31.4921 26.5928L29.2587 25.2549C29.26 25.2526 29.2612 25.2504 29.2626 25.2481C32.1742 20.3878 30.5862 14.0665 25.7274 11.1534L27.0643 8.91998ZM12.2899 14.4883C18.4962 11.0365 26.3533 13.2776 29.8055 19.4835C29.8069 19.4858 29.8082 19.4879 29.8095 19.4903L27.535 20.7559C27.5337 20.7536 27.5315 20.7514 27.5302 20.7491C24.8629 15.9521 18.8968 14.1267 14.0243 16.5186L13.5555 16.7637L12.2899 14.4883Z" fill="currentColor"/>\n</svg>\n',"fuzzball.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5 0C38.0309 0.000123698 49 10.9691 49 24.5C48.9998 38.0307 38.0307 48.9999 24.5 49C10.9691 49 0.000197927 38.0308 0 24.5C0 10.969 10.969 0 24.5 0ZM17.5039 22.4111C13.8556 28.5038 15.8431 36.4292 21.9355 40.0781L23.2734 37.8447L22.8271 37.5615C18.3193 34.5379 16.9168 28.4585 19.7373 23.75C19.7387 23.7476 19.7398 23.7446 19.7412 23.7422L17.5078 22.4053C17.5065 22.4073 17.5052 22.4091 17.5039 22.4111ZM19.1914 29.5068C19.1927 29.5092 19.193 29.5122 19.1943 29.5146C22.6467 35.7204 30.5037 37.9606 36.71 34.5088L35.4443 32.2344C30.4923 34.9857 24.2241 33.2004 21.4707 28.249C21.4694 28.2467 21.4672 28.2445 21.4658 28.2422L19.1914 29.5068ZM36.6709 18.8887C36.5774 24.553 31.8973 29.0885 26.2324 28.9971C26.2298 28.9971 26.2272 28.9981 26.2246 28.998L26.1826 31.6006C26.1852 31.6006 26.1878 31.6015 26.1904 31.6016C33.291 31.7147 39.1606 26.0304 39.2744 18.9297L36.6709 18.8887ZM22.8096 17.3955C15.7091 17.2823 9.83951 22.9667 9.72559 30.0674L12.3291 30.1094L12.3506 29.5811C12.7154 24.1653 17.2796 19.9114 22.7676 20C22.7702 20 22.7728 19.999 22.7754 19.999L22.8174 17.3965C22.8148 17.3964 22.8122 17.3956 22.8096 17.3955ZM25.7275 11.1533C30.5861 14.0665 32.1743 20.3878 29.2627 25.248C29.2614 25.2503 29.2601 25.2526 29.2588 25.2549L31.4922 26.5918C31.4936 26.5897 31.4957 26.5882 31.4971 26.5859C35.1454 20.4933 33.157 12.5679 27.0645 8.91895L25.7275 11.1533ZM29.8057 19.4824C26.3533 13.2769 18.4962 11.0366 12.29 14.4883L13.5557 16.7637V16.7627C18.5079 14.0112 24.7769 15.7972 27.5303 20.749C27.5316 20.7513 27.5329 20.7536 27.5342 20.7559L29.8096 19.4902C29.8083 19.4878 29.807 19.4848 29.8057 19.4824Z" fill="currentColor"/>\n</svg>\n',"rlc-hardened.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-hardened.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-plus.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0C37.6001 0 48.3701 10.77 48.3701 24C48.3701 37.23 37.6001 48 24.3701 48C11.1401 48 0.370117 37.23 0.370117 24C0.370117 10.77 11.1301 0 24.3701 0ZM24.3701 2.75C12.6501 2.75 3.12012 12.28 3.12012 24C3.12012 35.72 12.6501 45.25 24.3701 45.25C36.0901 45.25 45.6201 35.72 45.6201 24C45.6201 12.28 36.0901 2.75 24.3701 2.75ZM40.752 30.2881C41.2887 30.8248 41.2885 31.6953 40.752 32.2324C40.2152 32.7689 39.3446 32.7698 38.8076 32.2334L29.3691 22.8047L13.9023 38.2725L13.7979 38.3672C13.2578 38.8074 12.4603 38.7758 11.957 38.2725C11.4205 37.7357 11.4207 36.865 11.957 36.3281L29.3691 18.916L40.752 30.2881Z" fill="currentColor"/>\n</svg>\n',"rlc-plus.solid":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0898 0C37.3298 0 48.0898 10.77 48.0898 24C48.0898 37.23 37.3198 48 24.0898 48C10.86 47.9999 0.0898438 37.2299 0.0898438 24C0.0898438 10.7701 10.85 0.000132404 24.0898 0ZM10.8164 37.3662C10.3284 37.8543 10.3285 38.6457 10.8164 39.1338C11.3046 39.6216 12.0959 39.6218 12.584 39.1338L29.0898 22.627L39.6768 33.2051L39.7715 33.29C40.2625 33.6902 40.9869 33.6617 41.4443 33.2041C41.9017 32.7464 41.9297 32.022 41.5293 31.5312L41.4434 31.4365L29.0898 19.0928L10.8164 37.3662Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-ai.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-ai.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-hardened.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-hardened.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-pro.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rocky-linux.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0C37.6001 0 48.3701 10.77 48.3701 24C48.3701 37.23 37.6001 48 24.3701 48C11.1401 48 0.370117 37.23 0.370117 24C0.370117 10.77 11.1301 0 24.3701 0ZM24.3701 2.75C12.6501 2.75 3.12012 12.28 3.12012 24C3.12012 35.72 12.6501 45.25 24.3701 45.25C36.0901 45.25 45.6201 35.72 45.6201 24C45.6201 12.28 36.0901 2.75 24.3701 2.75ZM40.752 30.2881C41.2887 30.8248 41.2885 31.6953 40.752 32.2324C40.2152 32.7689 39.3446 32.7698 38.8076 32.2334L29.3691 22.8047L13.9023 38.2725L13.7979 38.3672C13.2578 38.8074 12.4603 38.7758 11.957 38.2725C11.4205 37.7357 11.4207 36.865 11.957 36.3281L29.3691 18.916L40.752 30.2881Z" fill="currentColor"/>\n</svg>\n',"rocky-linux.solid":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0898 0C37.3298 0 48.0898 10.77 48.0898 24C48.0898 37.23 37.3198 48 24.0898 48C10.86 47.9999 0.0898438 37.2299 0.0898438 24C0.0898438 10.7701 10.85 0.000132404 24.0898 0ZM10.8164 37.3662C10.3284 37.8543 10.3285 38.6457 10.8164 39.1338C11.3046 39.6216 12.0959 39.6218 12.584 39.1338L29.0898 22.627L39.6768 33.2051L39.7715 33.29C40.2625 33.6902 40.9869 33.6617 41.4443 33.2041C41.9017 32.7464 41.9297 32.022 41.5293 31.5312L41.4434 31.4365L29.0898 19.0928L10.8164 37.3662Z" fill="currentColor"/>\n</svg>\n',"support.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5198 0.570312C24.9496 0.570312 25.3897 0.590359 25.8196 0.610352C32.2196 0.950352 38.0999 3.76027 42.3899 8.53027C46.6798 13.3002 48.8499 19.4498 48.51 25.8496C47.83 38.5896 37.3098 48.5703 24.5598 48.5703C24.1299 48.5703 23.6997 48.56 23.2698 48.54C10.0599 47.8399 -0.119673 36.5097 0.580322 23.2998C1.25039 10.55 11.77 0.570457 24.5198 0.570312ZM24.5198 3.30957C13.23 3.30971 3.91969 12.1499 3.31958 23.4297C3.00958 29.0897 4.94048 34.5298 8.74048 38.7598C12.5405 42.9897 17.7505 45.4803 23.4104 45.7803C23.7802 45.8003 24.17 45.8096 24.5598 45.8096C35.8497 45.8096 45.1598 36.9702 45.76 25.6904C46.06 20.0305 44.1299 14.5803 40.3401 10.3604C36.5501 6.14038 31.3401 3.64963 25.6702 3.34961C25.4751 3.33961 25.2824 3.33215 25.0911 3.32715L24.5198 3.30957ZM11.6946 17.2471C15.4991 10.2812 24.1835 7.56768 31.2883 11.2178C38.5012 14.9237 41.3605 23.7707 37.6526 30.9883C34.0188 38.0606 25.4426 40.9471 18.3059 37.5615L11.9387 38.6846C11.5034 38.7611 11.0571 38.6238 10.7405 38.3154C10.4239 38.0071 10.2751 37.565 10.3401 37.1279L11.3157 30.584C10.443 28.7493 9.96211 26.7525 9.90161 24.7217L9.89478 24.2852C9.89481 21.9537 10.4511 19.6556 11.5168 17.582L11.6946 17.2471ZM30.0315 13.6631C24.2607 10.6984 17.2008 12.9007 14.1067 18.5664L13.9631 18.8389C13.0972 20.5235 12.6448 22.391 12.6448 24.2852L12.6497 24.6406C12.7026 26.4126 13.1513 28.1521 13.9631 29.7314L14.0081 29.8291C14.1048 30.0602 14.137 30.3144 14.0999 30.5635L13.3411 35.6445L18.2708 34.7764L18.3821 34.7617C18.642 34.7375 18.9044 34.7873 19.1379 34.9072C24.9999 37.9189 32.1919 35.5985 35.2063 29.7324C38.2181 23.8701 35.8983 16.6772 30.0315 13.6631ZM25.8801 17.7539C26.1707 17.0526 26.9746 16.7195 27.676 17.0098C28.3775 17.3003 28.7116 18.1051 28.4211 18.8066L28.2385 19.2461C28.8731 19.6865 29.4235 20.2369 29.8645 20.8711L30.304 20.6895C31.0056 20.399 31.8104 20.733 32.1008 21.4346C32.3909 22.1359 32.0578 22.9399 31.3567 23.2305L30.9192 23.4111C30.988 23.7902 31.0253 24.1754 31.0256 24.5625C31.0259 24.9512 30.989 25.3381 30.9202 25.7188L31.3567 25.8994L31.4836 25.96C32.0971 26.2903 32.3731 27.0386 32.1008 27.6963C31.8285 28.3539 31.1042 28.6883 30.4368 28.4883L30.304 28.4404L29.8674 28.2598C29.6481 28.5756 29.4023 28.8733 29.1292 29.1465C28.8543 29.4213 28.5546 29.6684 28.2366 29.8887L28.4211 30.334L28.468 30.4668C28.6681 31.1343 28.3337 31.8585 27.676 32.1309C27.0184 32.403 26.27 32.1271 25.9397 31.5137L25.8801 31.3867L25.6985 30.9482C24.9343 31.0864 24.1511 31.0864 23.387 30.9482L23.2102 31.376L23.1497 31.5039C22.8192 32.117 22.0708 32.3933 21.4133 32.1211C20.7122 31.8305 20.3791 31.0256 20.6692 30.3242L20.8469 29.8936C20.21 29.4503 19.6574 28.8963 19.2161 28.2578L18.7766 28.4404C18.0751 28.7309 17.2703 28.3978 16.9797 27.6963C16.6893 26.9947 17.0224 26.19 17.7239 25.8994L18.1682 25.7158C18.0294 24.9427 18.0356 24.1649 18.1731 23.416L17.7239 23.2305L17.5969 23.1699C16.9836 22.8396 16.7077 22.0921 16.9797 21.4346C17.2521 20.7767 17.9762 20.4423 18.6438 20.6426L18.7766 20.6895L19.2288 20.877C19.6627 20.2518 20.2086 19.698 20.8538 19.251L20.6702 18.8066C20.3797 18.105 20.7127 17.3003 21.4143 17.0098C22.1157 16.7194 22.9196 17.0527 23.2102 17.7539L23.3909 18.1924C24.1537 18.0547 24.9347 18.0553 25.6975 18.1934L25.8801 17.7539ZM25.97 21.1211C25.0907 20.7574 24.1072 20.7439 23.22 21.0801L23.1174 21.1299C21.2761 21.8949 20.3701 23.971 21.0315 25.8242L21.0999 26.0029L21.175 26.1729C21.552 26.9677 22.1994 27.603 23.0012 27.9678C23.0396 27.9798 23.0776 27.9941 23.1155 28.0098C23.1543 28.0258 23.1922 28.0434 23.2288 28.0625C24.0776 28.3828 25.0138 28.383 25.8625 28.0625C25.8988 28.0436 25.9363 28.0257 25.9749 28.0098C26.4272 27.8226 26.8386 27.5483 27.1848 27.2021C27.5246 26.8624 27.7938 26.459 27.9807 26.0166C27.9836 26.0092 27.9864 26.0015 27.9895 25.9941C27.9929 25.986 27.9967 25.9778 28.0002 25.9697C28.1816 25.5235 28.276 25.0463 28.2756 24.5645C28.2753 24.136 28.2013 23.711 28.0569 23.3086L27.9905 23.1377C27.6108 22.2246 26.8837 21.4993 25.97 21.1211Z" fill="currentColor"/>\n</svg>\n',"support.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3704 0.570312C24.8003 0.570316 25.2302 0.580357 25.6702 0.610352C32.0701 0.950364 37.9605 3.76029 42.2405 8.53027C46.5302 13.3001 48.7005 19.4499 48.3606 25.8496C47.6806 38.5895 37.1603 48.5702 24.4104 48.5703H24.3997C23.97 48.5703 23.5403 48.56 23.1106 48.54C9.9006 47.84 -0.279834 36.5098 0.420166 23.2998C1.10024 10.5599 11.6204 0.570312 24.3704 0.570312ZM31.0149 11.4385C24.0314 7.85071 15.4942 10.5188 11.7542 17.3662L11.5803 17.6953C10.5326 19.7334 9.98574 21.9925 9.9856 24.2842L9.99243 24.7139C10.0527 26.7345 10.5374 28.7205 11.4153 30.542L10.428 37.1631C10.3746 37.5208 10.4971 37.8833 10.7561 38.1357C11.0152 38.3878 11.3796 38.5001 11.7356 38.4375L18.1819 37.3008C25.211 40.6821 33.6876 37.8493 37.2717 30.873C40.9156 23.7789 38.1052 15.0813 31.0149 11.4385ZM13.7288 18.4453C16.8878 12.6622 24.0949 10.4136 29.9866 13.4404C35.9753 16.5174 38.3443 23.8604 35.2698 29.8457C32.2407 35.7412 25.0781 38.1288 19.1458 35.2686L18.8645 35.1289C18.7008 35.0448 18.5194 35.0028 18.3372 35.0049L18.1555 35.0215L12.884 35.9502L13.6936 30.5254L13.7053 30.3506C13.7043 30.234 13.6852 30.1176 13.6487 30.0068L13.5813 29.8447C12.7525 28.2321 12.2953 26.4558 12.2415 24.6465L12.2356 24.2842C12.2357 22.3503 12.6972 20.4436 13.5813 18.7236L13.7288 18.4453ZM27.3206 16.9609C26.7468 16.7234 26.0888 16.9958 25.8508 17.5693L25.5901 18.1973C24.7295 18.0126 23.8395 18.0122 22.9788 18.1963L22.72 17.5693L22.6702 17.4658C22.4 16.964 21.7882 16.7385 21.2502 16.9609C20.7122 17.1838 20.4381 17.7762 20.6018 18.3223L20.6409 18.4307L20.9036 19.0645C20.1531 19.5493 19.5312 20.1799 19.0627 20.9023L18.4309 20.6406L18.3225 20.6016C17.7764 20.4377 17.1842 20.712 16.9612 21.25C16.7387 21.7881 16.9641 22.3998 17.4661 22.6699L17.5696 22.7197L18.1985 22.9795C18.0145 23.8246 18.005 24.714 18.1926 25.5918L17.5696 25.8506C16.9959 26.0884 16.7238 26.7465 16.9612 27.3203C17.199 27.894 17.8571 28.1672 18.4309 27.9297L19.052 27.6719C19.5658 28.4678 20.2554 29.1365 21.0676 29.627L20.7415 30.4189C20.5038 30.9929 20.7761 31.6508 21.3499 31.8887C21.888 32.1114 22.5006 31.8859 22.7708 31.3838L22.8196 31.2793L23.1741 30.4219C23.9738 30.5663 24.7951 30.5544 25.5911 30.3838L25.8508 31.0107C26.0887 31.5842 26.7468 31.8566 27.3206 31.6191C27.8942 31.3814 28.1673 30.7233 27.9299 30.1494L27.6663 29.5146C28.035 29.2765 28.3807 29.0013 28.6926 28.6895C29.0035 28.3786 29.2782 28.0344 29.5159 27.667L30.1497 27.9297C30.7235 28.1672 31.3816 27.894 31.6194 27.3203C31.8566 26.7465 31.5845 26.0884 31.011 25.8506L30.3762 25.5869C30.4675 25.1593 30.5162 24.7216 30.5159 24.2822C30.5155 23.8444 30.4666 23.4085 30.3752 22.9824L31.011 22.7197C31.5845 22.482 31.8565 21.8237 31.6194 21.25C31.3965 20.7121 30.8041 20.4379 30.2581 20.6016L30.1497 20.6406L29.5139 20.9033C29.0359 20.1654 28.4072 19.5363 27.6692 19.0586L27.9299 18.4307C28.1672 17.8568 27.8943 17.1986 27.3206 16.9609ZM22.8655 20.5684C23.8137 20.2074 24.8658 20.2213 25.8059 20.6104C26.7807 21.0138 27.556 21.7876 27.9612 22.7617L28.0325 22.9443C28.1864 23.3734 28.2655 23.8273 28.2659 24.2842C28.2662 24.8064 28.1637 25.325 27.9641 25.8076C27.7644 26.2901 27.471 26.7294 27.1018 27.0986C26.7324 27.4679 26.2925 27.7603 25.8098 27.96C25.7726 27.9754 25.7361 27.9929 25.7014 28.0117C24.7541 28.3725 23.7033 28.3603 22.7639 27.9717C21.8028 27.574 21.0362 26.8154 20.6272 25.8604C20.6213 25.8439 20.6164 25.8259 20.6096 25.8096C20.6037 25.7954 20.5955 25.7814 20.5891 25.7676C19.7853 23.7551 20.7511 21.4545 22.762 20.6191C22.7977 20.6043 22.8321 20.5864 22.8655 20.5684Z" fill="currentColor"/>\n</svg>\n',"warewulf.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3101 0.820312C24.7401 0.820312 25.1701 0.829609 25.6001 0.849609C38.8101 1.54961 48.9905 12.8799 48.2905 26.0898C47.6105 38.8398 37.0902 48.8202 24.3403 48.8203C23.9105 48.8203 23.4704 48.8003 23.0405 48.7803C16.6407 48.4403 10.7602 45.6302 6.47021 40.8604C2.18024 36.0904 0.0101229 29.94 0.350098 23.54C1.0301 10.8 11.5503 0.820313 24.3003 0.820312H24.3101ZM24.3003 3.57031C13.0103 3.57031 3.7001 12.4104 3.1001 23.6904C2.946 26.4784 3.34567 29.2696 4.27588 31.9023C5.20615 34.5351 6.64856 36.9579 8.52002 39.0303C12.31 43.2501 17.5201 45.74 23.1899 46.04C23.5799 46.06 23.9603 46.0703 24.3403 46.0703C35.6301 46.0702 44.9404 37.23 45.5405 25.9502C45.8505 20.2902 43.9196 14.8501 40.1196 10.6201C36.3196 6.3902 31.1096 3.89961 25.4497 3.59961C25.0799 3.57963 24.6901 3.57032 24.3003 3.57031ZM22.7729 16.2012L29.7417 16.792L32.562 20.4805L43.394 20.5625L38.8022 29.5781L29.8638 31.6094L18.7085 40.5439C18.1159 41.0178 17.2504 40.9223 16.7759 40.3301C16.3016 39.7376 16.3977 38.8722 16.9897 38.3975L28.3901 29.2676L28.6362 29.0693L28.9448 29L36.9351 27.1826L38.9243 23.2773L31.1958 23.2207L30.7876 22.6855L28.2964 19.4287L21.5649 18.8594L18.2944 15.6914L17.979 21.3779L11.1118 24.9561L15.4185 28.4834L13.9839 32.0928L17.3501 32.7188L17.4868 32.751C18.1559 32.9466 18.5816 33.6212 18.4517 34.3213C18.3215 35.0211 17.6822 35.4988 16.9878 35.4414L16.8481 35.4219L10.1938 34.1875L12.1196 29.3359L6.146 24.4443L15.3198 19.6621L15.8833 9.52832L22.7729 16.2012ZM27.2144 20.8711L29.0786 23.6152L25.3989 23.4658L23.5151 20.7002L27.2144 20.8711Z" fill="currentColor"/>\n</svg>\n',"warewulf.solid":'<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0254 48.001H24.0156C24.0173 48.001 24.0189 48 24.0205 48C24.0221 48 24.0238 48.001 24.0254 48.001ZM23.9854 0C24.4153 0 24.8454 0.0102783 25.2754 0.0302734C38.4857 0.730289 48.6657 12.0602 47.9658 25.2705C47.2859 38.0092 36.7686 47.9974 24.0205 48C23.5922 47.9999 23.1639 47.9908 22.7256 47.9609C16.3254 47.6209 10.4354 44.8111 6.15527 40.041C1.86517 35.2709 -0.304834 29.1209 0.0351562 22.7207C0.715171 9.98042 11.2351 9.85227e-05 23.9854 0ZM15.2471 18.998L6.29395 23.6709L12.1152 28.4395L10.2344 33.1777L16.8604 34.4072C17.4709 34.5203 18.0574 34.1164 18.1709 33.5059C18.2839 32.8952 17.8811 32.3087 17.2705 32.1953L13.3359 31.4639L14.8145 27.7412L10.3555 24.0889L17.4229 20.4014L17.7607 14.3115L21.0723 17.5186L21.3604 17.7969L28.1162 18.3691L30.6836 21.7148L31.0186 22.1504L31.5674 22.1553L39.0273 22.2109L36.8027 26.5791L28.6963 28.4238L28.4443 28.4814L16.8418 37.7725C16.3571 38.1609 16.2788 38.8696 16.667 39.3545C17.0311 39.809 17.6765 39.9061 18.1553 39.5967L18.248 39.5293L29.4473 30.5605L38.3291 28.541L42.6846 19.9893L32.1338 19.9092L29.2959 16.2109L22.3486 15.6221L15.7891 9.26855L15.2471 18.998ZM25.2803 22.3086L29.0518 22.6133L27.2998 20.2129L23.5078 19.8887L25.2803 22.3086Z" fill="currentColor"/>\n</svg>\n'},e.quanticElement=Se,e.tableVariantContext=bs});
40243
+ `,t([fe({type:"string",default:"",description:"Text to display and show in the tooltip when truncated."})],e.Truncate.prototype,"value",void 0),t([fe({type:"number",attribute:"max-lines",default:"1",description:"Maximum number of visible lines before truncating. Defaults to 1 (single-line)."})],e.Truncate.prototype,"maxLines",void 0),t([fe({type:"TooltipPlacement",options:Object.values(Ko),default:Ko.Top,description:"Preferred tooltip placement relative to the text."})],e.Truncate.prototype,"placement",void 0),t([xe(".text")],e.Truncate.prototype,"textEl",void 0),t([ke()],e.Truncate.prototype,"isTruncated",void 0),e.Truncate=t([Se("quantic-truncate")],e.Truncate),e.AlertType=He,e.BadgeColor=Ji,e.BadgeSize=Qi,e.ButtonBarSize=ln,e.ButtonGroupSize=hn,e.ButtonGrow=_e,e.ButtonSize=$e,e.ButtonVariant=Oe,e.CapacityBarColor=en,e.CapacityBarSize=Yi,e.CardGroupDensity=mn,e.CheckboxGroupGap=xn,e.CheckboxGroupVariant=Ln,e.CheckboxSize=yn,e.CodeInputSize=kn,e.ComboboxSize=Ki,e.DialogBackdrop=Mn,e.DialogRole=qn,e.DialogSize=bn,e.DropdownMenuSize=po,e.FieldGroupLayout=Io,e.FieldGroupSize=Lo,e.FieldHintPosition=fo,e.FieldSize=Co,e.FieldValidationStatus=xo,e.FieldsetSize=zo,e.FieldsetVariant=Ho,e.IconBase=dt,e.IconLabelSize=To,e.IconName=Ke,e.IconSize=Xe,e.LOG_OUTPUT_DEFAULTS=Vo,e.LayoutVariant=Go,e.NumberInputSize=Do,e.PaginationSize=is,e.PopoverPlacement=vo,e.PopoverTrigger=wo,e.ProgressColor=ls,e.ProgressSize=as,e.ProseAs=ds,e.QuanticElement=qe,e.RadioGroupGap=Bo,e.RadioGroupVariant=Ao,e.RadioSize=So,e.SelectSize=qo,e.SidebarMenuItemVariant=Uo,e.SparklineColor=gs,e.SparklineVariant=ps,e.SpinnerColor=us,e.SpinnerSize=hs,e.StatusTagColor=Rs,e.TabsOrientation=qs,e.TabsSize=Ss,e.TagSize=Fs,e.TextInputSize=Mo,e.TextSize=$s,e.TextVariant=Os,e.TextareaResize=Us,e.TextareaSize=Es,e.ToastType=Gs,e.ToggleSize=jo,e.TooltipPlacement=Ko,e.TooltipSize=Jo,e.icons={"apptainer.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0.620117C37.6001 0.620117 48.3701 11.3901 48.3701 24.6201C48.3701 37.8501 37.6001 48.6201 24.3701 48.6201C11.1402 48.6201 0.370183 37.8501 0.370117 24.6201C0.370117 11.3901 11.1401 0.620117 24.3701 0.620117ZM24.3701 3.37012C12.6501 3.37012 3.12012 12.9001 3.12012 24.6201C3.12018 36.3401 12.6502 45.8701 24.3701 45.8701C36.0901 45.8701 45.6201 36.3401 45.6201 24.6201C45.6201 12.9001 36.0901 3.37012 24.3701 3.37012ZM32.0078 32.9951C32.0754 33.0597 32.1383 33.1318 32.1934 33.2119C32.2903 33.3533 32.3562 33.5068 32.3945 33.6641L35.4707 38.9922L35.5352 39.1172C35.8209 39.7527 35.584 40.514 34.9678 40.8701C34.3513 41.2261 33.5737 41.0505 33.166 40.4854L33.0898 40.3672L30.5186 35.9141C28.6877 36.8711 26.6489 37.3769 24.5703 37.374H24.5684L24.5674 37.375C22.2699 37.3745 20.111 36.7669 18.2393 35.7061L15.6406 40.207C15.2609 40.8646 14.4203 41.0896 13.7627 40.71C13.1052 40.3301 12.88 39.4896 13.2598 38.832L24.3203 19.6797L32.0078 32.9951ZM19.6143 33.3252C21.0818 34.1527 22.7704 34.625 24.5703 34.625H24.5723L24.9531 34.6182C26.4139 34.5649 27.8417 34.191 29.1416 33.5303L24.3193 25.1777L19.6143 33.3252ZM35.8066 21.1729C36.5568 21.0555 37.2604 21.5682 37.3779 22.3184C37.4811 22.9776 37.5254 23.6489 37.5254 24.3174C37.5253 26.7288 36.8738 28.9981 35.7373 30.9395L35.6602 31.0576C35.2491 31.6202 34.4698 31.7912 33.8555 31.4316C33.2003 31.048 32.9798 30.2051 33.3633 29.5498L33.5273 29.2607C34.3219 27.7966 34.7753 26.11 34.7754 24.3174C34.7754 23.7682 34.739 23.2407 34.6611 22.7432C34.544 21.9931 35.0566 21.2903 35.8066 21.1729ZM13.293 21.4336C14.0447 21.54 14.5681 22.2356 14.4619 22.9873C14.402 23.4102 14.375 23.8529 14.375 24.3174V24.3193C14.3724 26.0448 14.8013 27.7409 15.6182 29.251L15.7861 29.5508L15.8516 29.6758C16.1405 30.3097 15.9082 31.0722 15.2939 31.4316C14.6795 31.791 13.9011 31.6194 13.4902 31.0566L13.4131 30.9395L13.1992 30.5596C12.1641 28.646 11.6218 26.4986 11.625 24.3154C11.6251 23.7455 11.6584 23.1724 11.7393 22.6016C11.846 21.8502 12.5415 21.3274 13.293 21.4336ZM26.126 12.6582C26.3031 11.9689 26.9723 11.5357 27.6611 11.6396L27.7998 11.668L28.376 11.8311C31.231 12.7099 33.6556 14.56 35.2959 16.9785C35.7219 17.6069 35.558 18.4625 34.9297 18.8887C34.3013 19.3145 33.4457 19.1506 33.0195 18.5225C31.717 16.602 29.8018 15.1471 27.5664 14.459L27.1152 14.332L26.9814 14.29C26.3273 14.0495 25.9491 13.3477 26.126 12.6582ZM21.3506 11.668C22.086 11.4792 22.8354 11.9229 23.0244 12.6582C23.213 13.3936 22.7695 14.1432 22.0342 14.332C19.6056 14.9558 17.5207 16.4736 16.1426 18.5186L16.0576 18.6309C15.6118 19.1664 14.8237 19.2883 14.2334 18.8906C13.6039 18.4662 13.4382 17.6111 13.8623 16.9814L14.1982 16.5049C15.9343 14.1612 18.4402 12.4154 21.3506 11.668Z" fill="currentColor"/>\n</svg>\n',"apptainer.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5 0.620117C37.73 0.620117 48.5 11.3901 48.5 24.6201C48.4999 37.8501 37.73 48.6201 24.5 48.6201C11.27 48.6201 0.500066 37.8501 0.5 24.6201C0.5 11.3901 11.27 0.620117 24.5 0.620117ZM13.6055 38.958C13.2952 39.496 13.4798 40.1845 14.0176 40.4951C14.5554 40.8053 15.2439 40.6205 15.5547 40.083L18.167 35.5586C20.0267 36.6374 22.1871 37.2545 24.4883 37.2549V37.2559L24.4893 37.2549L24.4902 37.2559V37.2549C26.6919 37.258 28.8491 36.6812 30.75 35.5928L33.4355 40.2432L33.498 40.3398C33.8316 40.802 34.4684 40.9462 34.9727 40.6553C35.4769 40.3641 35.6699 39.7407 35.4365 39.2207L35.3848 39.1182L24.4502 20.1807L13.6055 38.958ZM29.625 33.6445C28.1777 34.4718 26.5499 34.9387 24.8799 34.999L24.4922 35.0059H24.4902C22.595 35.0059 20.8203 34.4971 19.292 33.6094L24.4492 24.6797L29.625 33.6445ZM13.249 22.0068C12.6341 21.9192 12.0644 22.347 11.9766 22.9619C11.898 23.5124 11.8653 24.0662 11.8652 24.6191C11.8622 26.7335 12.3917 28.813 13.4023 30.665L13.6113 31.0322L13.6748 31.1289C14.0128 31.5875 14.651 31.7254 15.1523 31.4297C15.6535 31.1337 15.8406 30.5088 15.6025 29.9912L15.5488 29.8887L15.3779 29.5869C14.548 28.0661 14.1127 26.3583 14.1152 24.6221V24.6211C14.1152 24.1553 14.143 23.7086 14.2041 23.2803C14.292 22.6653 13.8639 22.0948 13.249 22.0068ZM36.958 22.5723C36.8126 22.0211 36.2696 21.6583 35.6943 21.749C35.1191 21.8401 34.7154 22.3526 34.7471 22.9219L34.7588 23.0361L34.8105 23.4189C34.8543 23.806 34.875 24.2084 34.875 24.6211C34.8748 26.5444 34.3515 28.3479 33.4414 29.8887C33.1259 30.4236 33.3031 31.1138 33.8379 31.4297C34.3726 31.7452 35.0628 31.5675 35.3789 31.0332C36.4885 29.1546 37.1248 26.957 37.125 24.6211C37.125 24.1344 37.1004 23.6465 37.0459 23.165L36.9814 22.6855L36.958 22.5723ZM14.0498 17.5186C13.7011 18.0323 13.8341 18.7319 14.3477 19.0811C14.8612 19.4298 15.5608 19.2964 15.9102 18.7832L14.0498 17.5186ZM27.5244 12.3574C26.9606 12.2736 26.4132 12.629 26.2695 13.1934C26.1264 13.7576 26.4373 14.3317 26.9727 14.5273L27.083 14.5605L27.543 14.6895C29.8208 15.3846 31.769 16.8528 33.0918 18.7861C33.4427 19.2982 34.1428 19.4295 34.6553 19.0791C35.1678 18.7284 35.2986 18.0283 34.9482 17.5156C33.3462 15.1742 30.9808 13.3858 28.1992 12.5371L27.6377 12.3809L27.5244 12.3574ZM22.7207 13.1934C22.5674 12.5913 21.9546 12.2277 21.3525 12.3809C18.3285 13.1507 15.7495 15.0184 14.0498 17.5186L14.9805 18.1504L15.9102 18.7832C17.3104 16.7235 19.4324 15.1908 21.9082 14.5605C22.5096 14.4071 22.8733 13.795 22.7207 13.1934Z" fill="currentColor"/>\n</svg>\n',"ascender.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.410156C38.1001 0.410156 48.8701 11.1802 48.8701 24.4102C48.87 37.6401 38.1001 48.4102 24.8701 48.4102C11.6402 48.4102 0.870217 37.6401 0.870117 24.4102C0.870117 11.1802 11.6401 0.410156 24.8701 0.410156ZM24.8701 3.16016C13.1501 3.16016 3.62012 12.6902 3.62012 24.4102C3.62022 36.1301 13.1502 45.6602 24.8701 45.6602C36.5901 45.6602 46.12 36.1301 46.1201 24.4102C46.1201 12.6902 36.5901 3.16016 24.8701 3.16016ZM31.6807 37.625H16.3301C15.5707 37.625 14.9551 37.0094 14.9551 36.25C14.9551 35.4906 15.5707 34.875 16.3301 34.875H26.8994L19.9141 22.8711L11.9404 36.6777C11.5606 37.3352 10.72 37.5603 10.0625 37.1807C9.40497 36.8009 9.17994 35.9603 9.55957 35.3027L19.9053 17.3887L31.6807 37.625ZM42.209 30.499L42.2734 30.624C42.561 31.2588 42.3263 32.0211 41.7109 32.3789C41.0955 32.7366 40.3175 32.5629 39.9082 31.999L39.8311 31.8809L35.9326 25.1748H27.9805C27.2211 25.1748 26.6055 24.5592 26.6055 23.7998C26.6056 23.0405 27.2211 22.4248 27.9805 22.4248H34.333L28.7031 12.7412L25.5605 18.1777L25.4844 18.2959C25.0765 18.8613 24.2982 19.037 23.6816 18.6807C23.0242 18.3006 22.7996 17.4592 23.1797 16.8018L28.6963 7.25879L42.209 30.499Z" fill="currentColor"/>\n</svg>\n',"ascender.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.2598 0.410156C37.4898 0.410156 48.2598 11.1802 48.2598 24.4102C48.2597 37.6401 37.4897 48.4102 24.2598 48.4102C11.0299 48.41 0.259865 37.64 0.259766 24.4102C0.259766 11.1802 11.0299 0.410289 24.2598 0.410156ZM9.13184 35.7539C8.825 36.2941 9.0145 36.9812 9.55469 37.2881C10.0949 37.5947 10.7821 37.4054 11.0889 36.8652L19.3115 22.3867L26.7246 35.125H15.7305C15.1091 35.125 14.6055 35.6287 14.6055 36.25C14.6055 36.8713 15.1091 37.375 15.7305 37.375H30.6367L19.2881 17.873L9.13184 35.7539ZM22.5957 17.2676C22.2852 17.8057 22.4698 18.4941 23.0078 18.8047C23.5459 19.115 24.2344 18.9306 24.5449 18.3926L28.0938 12.2432L34.1582 22.6748H26.9902C26.369 22.6749 25.8653 23.1786 25.8652 23.7998C25.8652 24.4211 26.369 24.9247 26.9902 24.9248H35.4658L39.4375 31.7559L39.501 31.8516C39.8359 32.313 40.472 32.4549 40.9756 32.1621C41.479 31.8692 41.671 31.2459 41.4355 30.7266L41.3828 30.625L28.0869 7.75586L22.5957 17.2676Z" fill="currentColor"/>\n</svg>\n',"ciq-bridge.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8198 0C25.2497 0 25.6799 0.0102806 26.1099 0.0302734C39.3197 0.730265 49.5 12.0597 48.8003 25.2695C48.1303 38.0195 37.6099 48 24.8599 48C24.4299 48 23.99 47.98 23.5601 47.96C17.1601 47.6199 11.2797 44.81 6.98975 40.04C2.69984 35.2701 0.529633 29.1197 0.869629 22.7197C1.54975 9.97994 12.07 0.00014739 24.8198 0ZM24.8198 2.75C13.53 2.75015 4.21962 11.5902 3.61963 22.8701C3.46548 25.6581 3.86521 28.4492 4.79541 31.082C5.72568 33.7149 7.169 36.1375 9.04053 38.21C12.8305 42.4298 18.0405 44.9197 23.7104 45.2197C24.0903 45.2397 24.48 45.25 24.8599 45.25C36.1499 45.25 45.4601 36.4099 46.0601 25.1299C46.68 13.43 37.6701 3.40034 25.9702 2.78027C25.5902 2.76027 25.2098 2.75 24.8198 2.75ZM28.9907 10.2197L26.9487 12.0615L26.2144 11.2461V22.625H37.5806L36.7876 21.9102L38.6294 19.8682L43.2231 24.0098L38.6294 28.1514L36.7876 26.1094L37.6021 25.375H26.2144V36.75L26.939 35.9473L28.981 37.7891L24.8394 42.3828L20.6968 37.7891L22.7397 35.9473L23.4644 36.75V25.375H12.0981L12.9019 26.0996L11.0601 28.1416L6.46533 24L11.0601 19.8574L12.9019 21.9004L12.0981 22.625H23.4644V11.2676L22.7495 12.0615L20.7075 10.2197L24.8491 5.62598L28.9907 10.2197ZM18.3345 30.6152H20.2397V33.3652H15.5845V28.7207H18.3345V30.6152ZM34.2046 33.2559H29.5601V30.5059H31.4546V28.6104H34.2046V33.2559ZM20.1294 17.4951H18.2349V19.4004H15.4849V14.7451H20.1294V17.4951ZM34.0952 19.29H31.3452V17.3955H29.4497V14.6455H34.0952V19.29Z" fill="currentColor"/>\n</svg>\n',"ciq-bridge.solid":'<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.02 48H24.0103C24.0119 48 24.0135 47.999 24.0151 47.999C24.0168 47.999 24.0184 48 24.02 48ZM23.98 0C24.41 0 24.84 0.0102734 25.27 0.0302734C38.4798 0.730272 48.6602 12.0597 47.9604 25.2695C47.2805 38.0078 36.7628 47.9964 24.0151 47.999C23.5868 47.9989 23.1585 47.9898 22.7202 47.96C16.3202 47.62 10.4299 44.81 6.1499 40.04C1.85992 35.27 -0.310214 29.1197 0.0297852 22.7197C0.709913 9.97986 11.2301 1.99937e-05 23.98 0ZM20.0337 10.2109L21.8911 11.8848L22.8745 10.793V22.875H10.7827L11.8745 21.8916L10.2007 20.0342L5.80322 24L10.2007 27.9648L11.8745 26.1084L10.7837 25.125H22.8745V37.2148L21.8911 36.124L20.0337 37.7988L23.9995 42.1963L27.9644 37.7988L26.1079 36.124L25.271 37.0527L25.1245 37.2148V25.125H37.2261L36.1245 26.1182L37.7983 27.9756L38.7261 27.1377L42.1958 24.0098L38.7261 20.8818L37.7983 20.0439L36.1245 21.9014L37.2046 22.875H25.1245V10.7939L26.1079 11.8848L27.9644 10.2109L23.9995 5.81348L20.0337 10.2109ZM14.9946 28.7207V33.1152H19.3892V30.8652H17.2446V28.7207H14.9946ZM30.8647 28.6104V30.7559H28.7095V33.0059H33.1147V28.6104H30.8647ZM14.8843 14.9951V19.4004H17.1343V17.2451H19.2896V14.9951H14.8843ZM28.6089 14.8955V17.1455H30.7544V19.29H33.0044V14.8955H28.6089Z" fill="currentColor"/>\n</svg>\n',"fuzzball.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M0.035036 23.1954C0.753066 9.70572 12.3046 -0.654732 25.8026 0.0322852C39.2924 0.750967 49.6825 12.3095 48.9647 25.7989C48.2703 38.8474 37.4317 48.9979 24.5145 48.9981C24.0777 48.9981 23.6396 48.9861 23.1981 48.9629C9.70842 48.2445 -0.682501 36.6851 0.035036 23.1954ZM24.4872 2.60064C12.9421 2.60071 3.2556 11.6715 2.63465 23.334C1.9934 35.3896 11.2808 45.7197 23.3368 46.3624C35.3775 47.0012 45.7234 37.7166 46.3651 25.6602C47.0066 13.605 37.7201 3.27476 25.6639 2.63189C25.2705 2.61063 24.8769 2.60064 24.4872 2.60064ZM19.7411 23.7422C19.7397 23.7446 19.7386 23.7477 19.7372 23.7501C16.9166 28.4585 18.3193 34.5379 22.827 37.5616L23.2733 37.8448L21.9354 40.0782C15.8431 36.4292 13.8556 28.5048 17.5038 22.4122C17.5052 22.4098 17.5072 22.4077 17.5087 22.4053L19.7411 23.7422ZM21.4706 28.2491C24.2239 33.2007 30.4921 34.9858 35.4442 32.2344H35.4452L36.7098 34.5098C30.5036 37.9613 22.6464 35.7204 19.1942 29.5147C19.1929 29.5123 19.1926 29.5092 19.1913 29.5069L21.4657 28.2422C21.4671 28.2446 21.4692 28.2467 21.4706 28.2491ZM39.2743 18.9297C39.1605 26.0303 33.2917 31.7146 26.1913 31.6016C26.1885 31.6016 26.1852 31.6007 26.1825 31.6006L26.2245 28.9981C26.2271 28.9981 26.2297 28.9981 26.2323 28.9981C31.8973 29.0895 36.5785 24.5532 36.6718 18.8887L39.2743 18.9297ZM22.8095 17.3965C22.8121 17.3966 22.8146 17.3975 22.8173 17.3975L22.7753 20.0001C22.7726 20.0001 22.7701 20.0001 22.7675 20.0001C17.2793 19.9115 12.7149 24.166 12.3505 29.5821L12.329 30.1094L9.72547 30.0684C9.83928 22.9677 15.7089 17.2834 22.8095 17.3965ZM27.0643 8.91998C33.1567 12.5689 35.1451 20.4933 31.497 26.586C31.4955 26.5884 31.4935 26.5905 31.4921 26.5928L29.2587 25.2549C29.26 25.2526 29.2612 25.2504 29.2626 25.2481C32.1742 20.3878 30.5862 14.0665 25.7274 11.1534L27.0643 8.91998ZM12.2899 14.4883C18.4962 11.0365 26.3533 13.2776 29.8055 19.4835C29.8069 19.4858 29.8082 19.4879 29.8095 19.4903L27.535 20.7559C27.5337 20.7536 27.5315 20.7514 27.5302 20.7491C24.8629 15.9521 18.8968 14.1267 14.0243 16.5186L13.5555 16.7637L12.2899 14.4883Z" fill="currentColor"/>\n</svg>\n',"fuzzball.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5 0C38.0309 0.000123698 49 10.9691 49 24.5C48.9998 38.0307 38.0307 48.9999 24.5 49C10.9691 49 0.000197927 38.0308 0 24.5C0 10.969 10.969 0 24.5 0ZM17.5039 22.4111C13.8556 28.5038 15.8431 36.4292 21.9355 40.0781L23.2734 37.8447L22.8271 37.5615C18.3193 34.5379 16.9168 28.4585 19.7373 23.75C19.7387 23.7476 19.7398 23.7446 19.7412 23.7422L17.5078 22.4053C17.5065 22.4073 17.5052 22.4091 17.5039 22.4111ZM19.1914 29.5068C19.1927 29.5092 19.193 29.5122 19.1943 29.5146C22.6467 35.7204 30.5037 37.9606 36.71 34.5088L35.4443 32.2344C30.4923 34.9857 24.2241 33.2004 21.4707 28.249C21.4694 28.2467 21.4672 28.2445 21.4658 28.2422L19.1914 29.5068ZM36.6709 18.8887C36.5774 24.553 31.8973 29.0885 26.2324 28.9971C26.2298 28.9971 26.2272 28.9981 26.2246 28.998L26.1826 31.6006C26.1852 31.6006 26.1878 31.6015 26.1904 31.6016C33.291 31.7147 39.1606 26.0304 39.2744 18.9297L36.6709 18.8887ZM22.8096 17.3955C15.7091 17.2823 9.83951 22.9667 9.72559 30.0674L12.3291 30.1094L12.3506 29.5811C12.7154 24.1653 17.2796 19.9114 22.7676 20C22.7702 20 22.7728 19.999 22.7754 19.999L22.8174 17.3965C22.8148 17.3964 22.8122 17.3956 22.8096 17.3955ZM25.7275 11.1533C30.5861 14.0665 32.1743 20.3878 29.2627 25.248C29.2614 25.2503 29.2601 25.2526 29.2588 25.2549L31.4922 26.5918C31.4936 26.5897 31.4957 26.5882 31.4971 26.5859C35.1454 20.4933 33.157 12.5679 27.0645 8.91895L25.7275 11.1533ZM29.8057 19.4824C26.3533 13.2769 18.4962 11.0366 12.29 14.4883L13.5557 16.7637V16.7627C18.5079 14.0112 24.7769 15.7972 27.5303 20.749C27.5316 20.7513 27.5329 20.7536 27.5342 20.7559L29.8096 19.4902C29.8083 19.4878 29.807 19.4848 29.8057 19.4824Z" fill="currentColor"/>\n</svg>\n',"rlc-hardened.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-hardened.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-plus.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0C37.6001 0 48.3701 10.77 48.3701 24C48.3701 37.23 37.6001 48 24.3701 48C11.1401 48 0.370117 37.23 0.370117 24C0.370117 10.77 11.1301 0 24.3701 0ZM24.3701 2.75C12.6501 2.75 3.12012 12.28 3.12012 24C3.12012 35.72 12.6501 45.25 24.3701 45.25C36.0901 45.25 45.6201 35.72 45.6201 24C45.6201 12.28 36.0901 2.75 24.3701 2.75ZM40.752 30.2881C41.2887 30.8248 41.2885 31.6953 40.752 32.2324C40.2152 32.7689 39.3446 32.7698 38.8076 32.2334L29.3691 22.8047L13.9023 38.2725L13.7979 38.3672C13.2578 38.8074 12.4603 38.7758 11.957 38.2725C11.4205 37.7357 11.4207 36.865 11.957 36.3281L29.3691 18.916L40.752 30.2881Z" fill="currentColor"/>\n</svg>\n',"rlc-plus.solid":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0898 0C37.3298 0 48.0898 10.77 48.0898 24C48.0898 37.23 37.3198 48 24.0898 48C10.86 47.9999 0.0898438 37.2299 0.0898438 24C0.0898438 10.7701 10.85 0.000132404 24.0898 0ZM10.8164 37.3662C10.3284 37.8543 10.3285 38.6457 10.8164 39.1338C11.3046 39.6216 12.0959 39.6218 12.584 39.1338L29.0898 22.627L39.6768 33.2051L39.7715 33.29C40.2625 33.6902 40.9869 33.6617 41.4443 33.2041C41.9017 32.7464 41.9297 32.022 41.5293 31.5312L41.4434 31.4365L29.0898 19.0928L10.8164 37.3662Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-ai.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-ai.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-hardened.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro-hardened.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rlc-pro.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.8701 0.209961C38.1001 0.209961 48.8701 10.98 48.8701 24.21C48.8701 37.44 38.1001 48.21 24.8701 48.21C11.6401 48.21 0.870117 37.44 0.870117 24.21C0.87015 10.98 11.6401 0.209961 24.8701 0.209961ZM24.8701 2.95996C13.1501 2.95996 3.62015 12.49 3.62012 24.21C3.62012 35.93 13.1501 45.46 24.8701 45.46C36.5901 45.46 46.1201 35.93 46.1201 24.21C46.1201 12.49 36.5901 2.95996 24.8701 2.95996ZM42.0918 27.9268L42.1865 28.0312C42.6271 28.5712 42.5951 29.3686 42.0918 29.8721C41.5885 30.3752 40.792 30.4069 40.252 29.9668L40.1475 29.8721L33.5273 23.2539L16.6143 40.1719C16.0773 40.7087 15.2069 40.7087 14.6699 40.1719C14.1333 39.6349 14.1332 38.7644 14.6699 38.2275L33.5273 19.3652L42.0918 27.9268ZM22.7676 26.2285C23.3147 26.755 23.3311 27.6257 22.8047 28.1729C22.2781 28.7201 21.4076 28.7365 20.8604 28.21L15.6904 23.2354L8.6123 30.3213C8.0756 30.8585 7.2052 30.8589 6.66797 30.3223C6.13115 29.7855 6.13045 28.915 6.66699 28.3779L15.6533 19.3828L22.7676 26.2285Z" fill="currentColor"/>\n</svg>\n',"rlc-pro.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5898 0.209961C37.8198 0.209961 48.5898 10.98 48.5898 24.21C48.5898 37.44 37.8198 48.21 24.5898 48.21C11.36 48.2098 0.589844 37.4399 0.589844 24.21C0.589877 10.9801 11.36 0.210093 24.5898 0.209961ZM13.5986 39.1953C13.1105 39.6833 13.1108 40.4747 13.5986 40.9629C14.0866 41.451 14.878 41.4517 15.3662 40.9639L33.2568 23.0771L40.7861 30.6133L40.8809 30.6992C41.3715 31.0997 42.0959 31.0714 42.5537 30.6143C43.0111 30.1569 43.0405 29.4324 42.6406 28.9414L42.5547 28.8457L33.2588 19.542L13.5986 39.1953ZM5.59668 29.3359C5.10866 29.824 5.10866 30.6154 5.59668 31.1035C6.08478 31.5915 6.8761 31.5915 7.36426 31.1035L15.4102 23.0586L20.6787 28.1211L20.7754 28.2051C21.2742 28.5954 21.9979 28.5525 22.4463 28.0859C22.8944 27.6191 22.9084 26.8938 22.498 26.4111L22.4111 26.3184L15.376 19.5596L5.59668 29.3359Z" fill="currentColor"/>\n</svg>\n',"rocky-linux.outline":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3701 0C37.6001 0 48.3701 10.77 48.3701 24C48.3701 37.23 37.6001 48 24.3701 48C11.1401 48 0.370117 37.23 0.370117 24C0.370117 10.77 11.1301 0 24.3701 0ZM24.3701 2.75C12.6501 2.75 3.12012 12.28 3.12012 24C3.12012 35.72 12.6501 45.25 24.3701 45.25C36.0901 45.25 45.6201 35.72 45.6201 24C45.6201 12.28 36.0901 2.75 24.3701 2.75ZM40.752 30.2881C41.2887 30.8248 41.2885 31.6953 40.752 32.2324C40.2152 32.7689 39.3446 32.7698 38.8076 32.2334L29.3691 22.8047L13.9023 38.2725L13.7979 38.3672C13.2578 38.8074 12.4603 38.7758 11.957 38.2725C11.4205 37.7357 11.4207 36.865 11.957 36.3281L29.3691 18.916L40.752 30.2881Z" fill="currentColor"/>\n</svg>\n',"rocky-linux.solid":'<svg width="49" height="48" viewBox="0 0 49 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0898 0C37.3298 0 48.0898 10.77 48.0898 24C48.0898 37.23 37.3198 48 24.0898 48C10.86 47.9999 0.0898438 37.2299 0.0898438 24C0.0898438 10.7701 10.85 0.000132404 24.0898 0ZM10.8164 37.3662C10.3284 37.8543 10.3285 38.6457 10.8164 39.1338C11.3046 39.6216 12.0959 39.6218 12.584 39.1338L29.0898 22.627L39.6768 33.2051L39.7715 33.29C40.2625 33.6902 40.9869 33.6617 41.4443 33.2041C41.9017 32.7464 41.9297 32.022 41.5293 31.5312L41.4434 31.4365L29.0898 19.0928L10.8164 37.3662Z" fill="currentColor"/>\n</svg>\n',"support.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.5198 0.570312C24.9496 0.570312 25.3897 0.590359 25.8196 0.610352C32.2196 0.950352 38.0999 3.76027 42.3899 8.53027C46.6798 13.3002 48.8499 19.4498 48.51 25.8496C47.83 38.5896 37.3098 48.5703 24.5598 48.5703C24.1299 48.5703 23.6997 48.56 23.2698 48.54C10.0599 47.8399 -0.119673 36.5097 0.580322 23.2998C1.25039 10.55 11.77 0.570457 24.5198 0.570312ZM24.5198 3.30957C13.23 3.30971 3.91969 12.1499 3.31958 23.4297C3.00958 29.0897 4.94048 34.5298 8.74048 38.7598C12.5405 42.9897 17.7505 45.4803 23.4104 45.7803C23.7802 45.8003 24.17 45.8096 24.5598 45.8096C35.8497 45.8096 45.1598 36.9702 45.76 25.6904C46.06 20.0305 44.1299 14.5803 40.3401 10.3604C36.5501 6.14038 31.3401 3.64963 25.6702 3.34961C25.4751 3.33961 25.2824 3.33215 25.0911 3.32715L24.5198 3.30957ZM11.6946 17.2471C15.4991 10.2812 24.1835 7.56768 31.2883 11.2178C38.5012 14.9237 41.3605 23.7707 37.6526 30.9883C34.0188 38.0606 25.4426 40.9471 18.3059 37.5615L11.9387 38.6846C11.5034 38.7611 11.0571 38.6238 10.7405 38.3154C10.4239 38.0071 10.2751 37.565 10.3401 37.1279L11.3157 30.584C10.443 28.7493 9.96211 26.7525 9.90161 24.7217L9.89478 24.2852C9.89481 21.9537 10.4511 19.6556 11.5168 17.582L11.6946 17.2471ZM30.0315 13.6631C24.2607 10.6984 17.2008 12.9007 14.1067 18.5664L13.9631 18.8389C13.0972 20.5235 12.6448 22.391 12.6448 24.2852L12.6497 24.6406C12.7026 26.4126 13.1513 28.1521 13.9631 29.7314L14.0081 29.8291C14.1048 30.0602 14.137 30.3144 14.0999 30.5635L13.3411 35.6445L18.2708 34.7764L18.3821 34.7617C18.642 34.7375 18.9044 34.7873 19.1379 34.9072C24.9999 37.9189 32.1919 35.5985 35.2063 29.7324C38.2181 23.8701 35.8983 16.6772 30.0315 13.6631ZM25.8801 17.7539C26.1707 17.0526 26.9746 16.7195 27.676 17.0098C28.3775 17.3003 28.7116 18.1051 28.4211 18.8066L28.2385 19.2461C28.8731 19.6865 29.4235 20.2369 29.8645 20.8711L30.304 20.6895C31.0056 20.399 31.8104 20.733 32.1008 21.4346C32.3909 22.1359 32.0578 22.9399 31.3567 23.2305L30.9192 23.4111C30.988 23.7902 31.0253 24.1754 31.0256 24.5625C31.0259 24.9512 30.989 25.3381 30.9202 25.7188L31.3567 25.8994L31.4836 25.96C32.0971 26.2903 32.3731 27.0386 32.1008 27.6963C31.8285 28.3539 31.1042 28.6883 30.4368 28.4883L30.304 28.4404L29.8674 28.2598C29.6481 28.5756 29.4023 28.8733 29.1292 29.1465C28.8543 29.4213 28.5546 29.6684 28.2366 29.8887L28.4211 30.334L28.468 30.4668C28.6681 31.1343 28.3337 31.8585 27.676 32.1309C27.0184 32.403 26.27 32.1271 25.9397 31.5137L25.8801 31.3867L25.6985 30.9482C24.9343 31.0864 24.1511 31.0864 23.387 30.9482L23.2102 31.376L23.1497 31.5039C22.8192 32.117 22.0708 32.3933 21.4133 32.1211C20.7122 31.8305 20.3791 31.0256 20.6692 30.3242L20.8469 29.8936C20.21 29.4503 19.6574 28.8963 19.2161 28.2578L18.7766 28.4404C18.0751 28.7309 17.2703 28.3978 16.9797 27.6963C16.6893 26.9947 17.0224 26.19 17.7239 25.8994L18.1682 25.7158C18.0294 24.9427 18.0356 24.1649 18.1731 23.416L17.7239 23.2305L17.5969 23.1699C16.9836 22.8396 16.7077 22.0921 16.9797 21.4346C17.2521 20.7767 17.9762 20.4423 18.6438 20.6426L18.7766 20.6895L19.2288 20.877C19.6627 20.2518 20.2086 19.698 20.8538 19.251L20.6702 18.8066C20.3797 18.105 20.7127 17.3003 21.4143 17.0098C22.1157 16.7194 22.9196 17.0527 23.2102 17.7539L23.3909 18.1924C24.1537 18.0547 24.9347 18.0553 25.6975 18.1934L25.8801 17.7539ZM25.97 21.1211C25.0907 20.7574 24.1072 20.7439 23.22 21.0801L23.1174 21.1299C21.2761 21.8949 20.3701 23.971 21.0315 25.8242L21.0999 26.0029L21.175 26.1729C21.552 26.9677 22.1994 27.603 23.0012 27.9678C23.0396 27.9798 23.0776 27.9941 23.1155 28.0098C23.1543 28.0258 23.1922 28.0434 23.2288 28.0625C24.0776 28.3828 25.0138 28.383 25.8625 28.0625C25.8988 28.0436 25.9363 28.0257 25.9749 28.0098C26.4272 27.8226 26.8386 27.5483 27.1848 27.2021C27.5246 26.8624 27.7938 26.459 27.9807 26.0166C27.9836 26.0092 27.9864 26.0015 27.9895 25.9941C27.9929 25.986 27.9967 25.9778 28.0002 25.9697C28.1816 25.5235 28.276 25.0463 28.2756 24.5645C28.2753 24.136 28.2013 23.711 28.0569 23.3086L27.9905 23.1377C27.6108 22.2246 26.8837 21.4993 25.97 21.1211Z" fill="currentColor"/>\n</svg>\n',"support.solid":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3704 0.570312C24.8003 0.570316 25.2302 0.580357 25.6702 0.610352C32.0701 0.950364 37.9605 3.76029 42.2405 8.53027C46.5302 13.3001 48.7005 19.4499 48.3606 25.8496C47.6806 38.5895 37.1603 48.5702 24.4104 48.5703H24.3997C23.97 48.5703 23.5403 48.56 23.1106 48.54C9.9006 47.84 -0.279834 36.5098 0.420166 23.2998C1.10024 10.5599 11.6204 0.570312 24.3704 0.570312ZM31.0149 11.4385C24.0314 7.85071 15.4942 10.5188 11.7542 17.3662L11.5803 17.6953C10.5326 19.7334 9.98574 21.9925 9.9856 24.2842L9.99243 24.7139C10.0527 26.7345 10.5374 28.7205 11.4153 30.542L10.428 37.1631C10.3746 37.5208 10.4971 37.8833 10.7561 38.1357C11.0152 38.3878 11.3796 38.5001 11.7356 38.4375L18.1819 37.3008C25.211 40.6821 33.6876 37.8493 37.2717 30.873C40.9156 23.7789 38.1052 15.0813 31.0149 11.4385ZM13.7288 18.4453C16.8878 12.6622 24.0949 10.4136 29.9866 13.4404C35.9753 16.5174 38.3443 23.8604 35.2698 29.8457C32.2407 35.7412 25.0781 38.1288 19.1458 35.2686L18.8645 35.1289C18.7008 35.0448 18.5194 35.0028 18.3372 35.0049L18.1555 35.0215L12.884 35.9502L13.6936 30.5254L13.7053 30.3506C13.7043 30.234 13.6852 30.1176 13.6487 30.0068L13.5813 29.8447C12.7525 28.2321 12.2953 26.4558 12.2415 24.6465L12.2356 24.2842C12.2357 22.3503 12.6972 20.4436 13.5813 18.7236L13.7288 18.4453ZM27.3206 16.9609C26.7468 16.7234 26.0888 16.9958 25.8508 17.5693L25.5901 18.1973C24.7295 18.0126 23.8395 18.0122 22.9788 18.1963L22.72 17.5693L22.6702 17.4658C22.4 16.964 21.7882 16.7385 21.2502 16.9609C20.7122 17.1838 20.4381 17.7762 20.6018 18.3223L20.6409 18.4307L20.9036 19.0645C20.1531 19.5493 19.5312 20.1799 19.0627 20.9023L18.4309 20.6406L18.3225 20.6016C17.7764 20.4377 17.1842 20.712 16.9612 21.25C16.7387 21.7881 16.9641 22.3998 17.4661 22.6699L17.5696 22.7197L18.1985 22.9795C18.0145 23.8246 18.005 24.714 18.1926 25.5918L17.5696 25.8506C16.9959 26.0884 16.7238 26.7465 16.9612 27.3203C17.199 27.894 17.8571 28.1672 18.4309 27.9297L19.052 27.6719C19.5658 28.4678 20.2554 29.1365 21.0676 29.627L20.7415 30.4189C20.5038 30.9929 20.7761 31.6508 21.3499 31.8887C21.888 32.1114 22.5006 31.8859 22.7708 31.3838L22.8196 31.2793L23.1741 30.4219C23.9738 30.5663 24.7951 30.5544 25.5911 30.3838L25.8508 31.0107C26.0887 31.5842 26.7468 31.8566 27.3206 31.6191C27.8942 31.3814 28.1673 30.7233 27.9299 30.1494L27.6663 29.5146C28.035 29.2765 28.3807 29.0013 28.6926 28.6895C29.0035 28.3786 29.2782 28.0344 29.5159 27.667L30.1497 27.9297C30.7235 28.1672 31.3816 27.894 31.6194 27.3203C31.8566 26.7465 31.5845 26.0884 31.011 25.8506L30.3762 25.5869C30.4675 25.1593 30.5162 24.7216 30.5159 24.2822C30.5155 23.8444 30.4666 23.4085 30.3752 22.9824L31.011 22.7197C31.5845 22.482 31.8565 21.8237 31.6194 21.25C31.3965 20.7121 30.8041 20.4379 30.2581 20.6016L30.1497 20.6406L29.5139 20.9033C29.0359 20.1654 28.4072 19.5363 27.6692 19.0586L27.9299 18.4307C28.1672 17.8568 27.8943 17.1986 27.3206 16.9609ZM22.8655 20.5684C23.8137 20.2074 24.8658 20.2213 25.8059 20.6104C26.7807 21.0138 27.556 21.7876 27.9612 22.7617L28.0325 22.9443C28.1864 23.3734 28.2655 23.8273 28.2659 24.2842C28.2662 24.8064 28.1637 25.325 27.9641 25.8076C27.7644 26.2901 27.471 26.7294 27.1018 27.0986C26.7324 27.4679 26.2925 27.7603 25.8098 27.96C25.7726 27.9754 25.7361 27.9929 25.7014 28.0117C24.7541 28.3725 23.7033 28.3603 22.7639 27.9717C21.8028 27.574 21.0362 26.8154 20.6272 25.8604C20.6213 25.8439 20.6164 25.8259 20.6096 25.8096C20.6037 25.7954 20.5955 25.7814 20.5891 25.7676C19.7853 23.7551 20.7511 21.4545 22.762 20.6191C22.7977 20.6043 22.8321 20.5864 22.8655 20.5684Z" fill="currentColor"/>\n</svg>\n',"warewulf.outline":'<svg width="49" height="49" viewBox="0 0 49 49" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.3101 0.820312C24.7401 0.820312 25.1701 0.829609 25.6001 0.849609C38.8101 1.54961 48.9905 12.8799 48.2905 26.0898C47.6105 38.8398 37.0902 48.8202 24.3403 48.8203C23.9105 48.8203 23.4704 48.8003 23.0405 48.7803C16.6407 48.4403 10.7602 45.6302 6.47021 40.8604C2.18024 36.0904 0.0101229 29.94 0.350098 23.54C1.0301 10.8 11.5503 0.820313 24.3003 0.820312H24.3101ZM24.3003 3.57031C13.0103 3.57031 3.7001 12.4104 3.1001 23.6904C2.946 26.4784 3.34567 29.2696 4.27588 31.9023C5.20615 34.5351 6.64856 36.9579 8.52002 39.0303C12.31 43.2501 17.5201 45.74 23.1899 46.04C23.5799 46.06 23.9603 46.0703 24.3403 46.0703C35.6301 46.0702 44.9404 37.23 45.5405 25.9502C45.8505 20.2902 43.9196 14.8501 40.1196 10.6201C36.3196 6.3902 31.1096 3.89961 25.4497 3.59961C25.0799 3.57963 24.6901 3.57032 24.3003 3.57031ZM22.7729 16.2012L29.7417 16.792L32.562 20.4805L43.394 20.5625L38.8022 29.5781L29.8638 31.6094L18.7085 40.5439C18.1159 41.0178 17.2504 40.9223 16.7759 40.3301C16.3016 39.7376 16.3977 38.8722 16.9897 38.3975L28.3901 29.2676L28.6362 29.0693L28.9448 29L36.9351 27.1826L38.9243 23.2773L31.1958 23.2207L30.7876 22.6855L28.2964 19.4287L21.5649 18.8594L18.2944 15.6914L17.979 21.3779L11.1118 24.9561L15.4185 28.4834L13.9839 32.0928L17.3501 32.7188L17.4868 32.751C18.1559 32.9466 18.5816 33.6212 18.4517 34.3213C18.3215 35.0211 17.6822 35.4988 16.9878 35.4414L16.8481 35.4219L10.1938 34.1875L12.1196 29.3359L6.146 24.4443L15.3198 19.6621L15.8833 9.52832L22.7729 16.2012ZM27.2144 20.8711L29.0786 23.6152L25.3989 23.4658L23.5151 20.7002L27.2144 20.8711Z" fill="currentColor"/>\n</svg>\n',"warewulf.solid":'<svg width="48" height="48" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg">\n<path d="M24.0254 48.001H24.0156C24.0173 48.001 24.0189 48 24.0205 48C24.0221 48 24.0238 48.001 24.0254 48.001ZM23.9854 0C24.4153 0 24.8454 0.0102783 25.2754 0.0302734C38.4857 0.730289 48.6657 12.0602 47.9658 25.2705C47.2859 38.0092 36.7686 47.9974 24.0205 48C23.5922 47.9999 23.1639 47.9908 22.7256 47.9609C16.3254 47.6209 10.4354 44.8111 6.15527 40.041C1.86517 35.2709 -0.304834 29.1209 0.0351562 22.7207C0.715171 9.98042 11.2351 9.85227e-05 23.9854 0ZM15.2471 18.998L6.29395 23.6709L12.1152 28.4395L10.2344 33.1777L16.8604 34.4072C17.4709 34.5203 18.0574 34.1164 18.1709 33.5059C18.2839 32.8952 17.8811 32.3087 17.2705 32.1953L13.3359 31.4639L14.8145 27.7412L10.3555 24.0889L17.4229 20.4014L17.7607 14.3115L21.0723 17.5186L21.3604 17.7969L28.1162 18.3691L30.6836 21.7148L31.0186 22.1504L31.5674 22.1553L39.0273 22.2109L36.8027 26.5791L28.6963 28.4238L28.4443 28.4814L16.8418 37.7725C16.3571 38.1609 16.2788 38.8696 16.667 39.3545C17.0311 39.809 17.6765 39.9061 18.1553 39.5967L18.248 39.5293L29.4473 30.5605L38.3291 28.541L42.6846 19.9893L32.1338 19.9092L29.2959 16.2109L22.3486 15.6221L15.7891 9.26855L15.2471 18.998ZM25.2803 22.3086L29.0518 22.6133L27.2998 20.2129L23.5078 19.8887L25.2803 22.3086Z" fill="currentColor"/>\n</svg>\n'},e.quanticElement=Se,e.tableVariantContext=Ms});
40186
40244
  //# sourceMappingURL=quantic-components.min.js.map