@salla.sa/twilight-components 2.14.592 → 2.14.594

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 (358) hide show
  1. package/dist/cjs/{apple-pay-order-options-B036Wu4O.js → apple-pay-order-options-CA8IYRTb.js} +1 -0
  2. package/dist/cjs/{filepond-YeXzkn77.js → filepond-DtGoIKEP.js} +1 -1
  3. package/dist/cjs/{filepond-plugin-file-poster-BEU99tEc.js → filepond-plugin-file-poster-DMejMF1-.js} +1 -1
  4. package/dist/cjs/{filepond-plugin-file-validate-size-BSsf6VIk.js → filepond-plugin-file-validate-size-J_fE6OBS.js} +1 -1
  5. package/dist/cjs/{filepond-plugin-file-validate-type-BkxQQF1Y.js → filepond-plugin-file-validate-type-BpewyAzF.js} +1 -1
  6. package/dist/cjs/{filepond-plugin-image-edit-h9C4LxoR.js → filepond-plugin-image-edit-DPNUTWCK.js} +1 -1
  7. package/dist/cjs/{filepond-plugin-image-exif-orientation-nDfSwZEM.js → filepond-plugin-image-exif-orientation-CZ6YRu70.js} +1 -1
  8. package/dist/cjs/{filepond-plugin-image-preview-C-FDU_4k.js → filepond-plugin-image-preview-CgV-oWXK.js} +1 -1
  9. package/dist/cjs/{index-DI5yx1uj.js → index-BziKkkwT.js} +21 -7
  10. package/dist/cjs/{intlTelInput-AgidDx18.js → intlTelInput-BLuZALMt.js} +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/salla-accordion-body_2.cjs.entry.js +1 -1
  13. package/dist/cjs/salla-accordion_6.cjs.entry.js +1 -1
  14. package/dist/cjs/salla-add-product-button_5.cjs.entry.js +116 -4
  15. package/dist/cjs/salla-advertisement.cjs.entry.js +1 -1
  16. package/dist/cjs/salla-alert_2.cjs.entry.js +1 -1
  17. package/dist/cjs/salla-app-install-alert.cjs.entry.js +1 -1
  18. package/dist/cjs/salla-applied-filters.cjs.entry.js +1 -1
  19. package/dist/cjs/salla-apps-icons.cjs.entry.js +1 -1
  20. package/dist/cjs/salla-attachment-view_9.cjs.entry.js +10 -10
  21. package/dist/cjs/salla-badge.cjs.entry.js +1 -1
  22. package/dist/cjs/salla-basket-gap.cjs.entry.js +1 -1
  23. package/dist/cjs/salla-bullet-delivery_3.cjs.entry.js +286 -20
  24. package/dist/cjs/salla-cart-coupons.cjs.entry.js +1 -1
  25. package/dist/cjs/salla-cart-item-offers_2.cjs.entry.js +1 -1
  26. package/dist/cjs/salla-cart-summary-card.cjs.entry.js +1 -1
  27. package/dist/cjs/salla-cashback-banner.cjs.entry.js +1 -1
  28. package/dist/cjs/salla-comment-factors.cjs.entry.js +1 -1
  29. package/dist/cjs/salla-comment-form_9.cjs.entry.js +1 -1
  30. package/dist/cjs/salla-conditional-offer.cjs.entry.js +1 -1
  31. package/dist/cjs/salla-contacts.cjs.entry.js +1 -1
  32. package/dist/cjs/salla-cookies-bar.cjs.entry.js +1 -1
  33. package/dist/cjs/salla-count-down.cjs.entry.js +1 -1
  34. package/dist/cjs/salla-custom-fields.cjs.entry.js +1 -1
  35. package/dist/cjs/salla-delivery-promise.cjs.entry.js +1 -1
  36. package/dist/cjs/salla-edit-order-button.cjs.entry.js +1 -1
  37. package/dist/cjs/salla-filters-widget.cjs.entry.js +1 -1
  38. package/dist/cjs/salla-filters.cjs.entry.js +1 -1
  39. package/dist/cjs/salla-fulfillment-methods.cjs.entry.js +1 -1
  40. package/dist/cjs/salla-gift-card-redeem_2.cjs.entry.js +1 -1
  41. package/dist/cjs/salla-gifting.cjs.entry.js +2 -2
  42. package/dist/cjs/salla-hook.cjs.entry.js +1 -1
  43. package/dist/cjs/salla-infinite-scroll.cjs.entry.js +1 -1
  44. package/dist/cjs/salla-installment.cjs.entry.js +1 -1
  45. package/dist/cjs/salla-list-tile.cjs.entry.js +1 -1
  46. package/dist/cjs/salla-localization-modal.cjs.entry.js +1 -1
  47. package/dist/cjs/salla-login-modal.cjs.entry.js +1 -1
  48. package/dist/cjs/salla-loyalty-banner_10.cjs.entry.js +1 -1
  49. package/dist/cjs/salla-loyalty-exchange-product-card.cjs.entry.js +1 -1
  50. package/dist/cjs/salla-loyalty-points-banner.cjs.entry.js +1 -1
  51. package/dist/cjs/salla-loyalty-points-history.cjs.entry.js +1 -1
  52. package/dist/cjs/salla-loyalty-prize-item.cjs.entry.js +1 -1
  53. package/dist/cjs/salla-loyalty.cjs.entry.js +1 -1
  54. package/dist/cjs/salla-maintenance-alert.cjs.entry.js +1 -1
  55. package/dist/cjs/salla-map_3.cjs.entry.js +1 -1
  56. package/dist/cjs/salla-menu.cjs.entry.js +1 -1
  57. package/dist/cjs/salla-metadata.cjs.entry.js +1 -1
  58. package/dist/cjs/salla-multiple-bundle-product-cart_2.cjs.entry.js +1 -1
  59. package/dist/cjs/salla-multiple-bundle-product-options-modal_2.cjs.entry.js +1 -1
  60. package/dist/cjs/salla-multiple-bundle-product.cjs.entry.js +1 -1
  61. package/dist/cjs/salla-next-order-coupon.cjs.entry.js +1 -1
  62. package/dist/cjs/salla-notification-item_2.cjs.entry.js +1 -1
  63. package/dist/cjs/salla-offer-modal.cjs.entry.js +1 -1
  64. package/dist/cjs/salla-offer.cjs.entry.js +1 -1
  65. package/dist/cjs/salla-order-branch.cjs.entry.js +1 -1
  66. package/dist/cjs/salla-order-cancel.cjs.entry.js +1 -1
  67. package/dist/cjs/salla-order-details-multiple-bundle-product.cjs.entry.js +1 -1
  68. package/dist/cjs/salla-order-details-options.cjs.entry.js +1 -1
  69. package/dist/cjs/salla-order-details.cjs.entry.js +1 -1
  70. package/dist/cjs/salla-order-edit-item.cjs.entry.js +1 -1
  71. package/dist/cjs/salla-order-edit-product-card.cjs.entry.js +1 -1
  72. package/dist/cjs/salla-order-edit.cjs.entry.js +1 -1
  73. package/dist/cjs/salla-order-options-modal.cjs.entry.js +1 -1
  74. package/dist/cjs/salla-order-shipments.cjs.entry.js +1 -1
  75. package/dist/cjs/salla-order-summary.cjs.entry.js +1 -1
  76. package/dist/cjs/salla-order-totals-card.cjs.entry.js +1 -1
  77. package/dist/cjs/salla-orders.cjs.entry.js +1 -1
  78. package/dist/cjs/salla-payments.cjs.entry.js +1 -1
  79. package/dist/cjs/salla-placeholder.cjs.entry.js +1 -1
  80. package/dist/cjs/salla-price-range.cjs.entry.js +1 -1
  81. package/dist/cjs/salla-product-card-embed.cjs.entry.js +1 -1
  82. package/dist/cjs/salla-product-card.cjs.entry.js +1 -1
  83. package/dist/cjs/salla-product-size-guide.cjs.entry.js +1 -1
  84. package/dist/cjs/salla-products-list.cjs.entry.js +1 -1
  85. package/dist/cjs/salla-products-slider.cjs.entry.js +1 -1
  86. package/dist/cjs/salla-quick-order.cjs.entry.js +1 -1
  87. package/dist/cjs/salla-rating-modal-v2.cjs.entry.js +1 -1
  88. package/dist/cjs/salla-rating-modal.cjs.entry.js +1 -1
  89. package/dist/cjs/salla-review-factors-tags.cjs.entry.js +1 -1
  90. package/dist/cjs/salla-review-order-item.cjs.entry.js +1 -1
  91. package/dist/cjs/salla-scopes.cjs.entry.js +1 -1
  92. package/dist/cjs/salla-search-product-card.cjs.entry.js +1 -1
  93. package/dist/cjs/salla-search.cjs.entry.js +1 -1
  94. package/dist/cjs/salla-skeleton.cjs.entry.js +1 -1
  95. package/dist/cjs/salla-social-share.cjs.entry.js +1 -1
  96. package/dist/cjs/salla-social.cjs.entry.js +1 -1
  97. package/dist/cjs/salla-tab-content_3.cjs.entry.js +1 -1
  98. package/dist/cjs/salla-tiered-offer.cjs.entry.js +1 -1
  99. package/dist/cjs/salla-trust-badges.cjs.entry.js +1 -1
  100. package/dist/cjs/salla-user-menu.cjs.entry.js +1 -1
  101. package/dist/cjs/salla-user-profile.cjs.entry.js +1 -1
  102. package/dist/cjs/salla-user-settings.cjs.entry.js +1 -1
  103. package/dist/cjs/salla-verify.cjs.entry.js +1 -1
  104. package/dist/cjs/salla-wallet.cjs.entry.js +1 -1
  105. package/dist/cjs/salla-wishlist-actions.cjs.entry.js +1 -1
  106. package/dist/cjs/salla-wishlist-summary.cjs.entry.js +1 -1
  107. package/dist/cjs/twilight.cjs.js +2 -2
  108. package/dist/cjs/{vanilla-picker-DLfPr_3c.js → vanilla-picker-36O-wrIX.js} +1 -1
  109. package/dist/collection/components/salla-add-product-button/salla-add-product-button.css +58 -36
  110. package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +116 -1
  111. package/dist/collection/components/salla-bullet-delivery/location-distance-warning.js +28 -0
  112. package/dist/collection/components/salla-bullet-delivery/location-icon.svg +26 -0
  113. package/dist/collection/components/salla-bullet-delivery/location-permission-notice.js +103 -0
  114. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.css +136 -0
  115. package/dist/collection/components/salla-bullet-delivery/salla-bullet-delivery.js +133 -19
  116. package/dist/collection/components/salla-order-options-modal/apple-pay-order-options.js +1 -1
  117. package/dist/collection/global/app.js +2 -0
  118. package/dist/collection/global/app.spec.ts +33 -0
  119. package/dist/collection/global/app.ts +2 -0
  120. package/dist/collection/global/chunk-errors.js +14 -0
  121. package/dist/collection/global/chunk-errors.spec.ts +47 -0
  122. package/dist/collection/global/chunk-errors.ts +13 -0
  123. package/dist/components/apple-pay-order-options.js +1 -1
  124. package/dist/components/index.js +15 -2
  125. package/dist/components/salla-add-product-button2.js +116 -2
  126. package/dist/components/salla-bullet-delivery.js +288 -20
  127. package/dist/components/salla-gifting.js +1 -1
  128. package/dist/components/salla-quick-buy2.js +1 -1
  129. package/dist/docs.json +29 -13
  130. package/dist/esm/{apple-pay-order-options-s0kn7yr8.js → apple-pay-order-options-BS2iQKah.js} +1 -1
  131. package/dist/esm/{filepond-C3uLKJlo.js → filepond-DZJO0NDO.js} +1 -1
  132. package/dist/esm/{filepond-plugin-file-poster-BNO8nuwN.js → filepond-plugin-file-poster-BGjhc2cd.js} +1 -1
  133. package/dist/esm/{filepond-plugin-file-validate-size-CMMYF-rL.js → filepond-plugin-file-validate-size-s9w1K7Bl.js} +1 -1
  134. package/dist/esm/{filepond-plugin-file-validate-type-DSYhKJ7B.js → filepond-plugin-file-validate-type-OfI6GFgP.js} +1 -1
  135. package/dist/esm/{filepond-plugin-image-edit-lJgRMQAo.js → filepond-plugin-image-edit-Cfselyr4.js} +1 -1
  136. package/dist/esm/{filepond-plugin-image-exif-orientation-B0tYK1GE.js → filepond-plugin-image-exif-orientation-ConUo4eP.js} +1 -1
  137. package/dist/esm/{filepond-plugin-image-preview-kWmnxhXu.js → filepond-plugin-image-preview-BJ4T10Ty.js} +1 -1
  138. package/dist/esm/{index-Bk24FlDL.js → index-Bxge4xib.js} +21 -7
  139. package/dist/esm/{intlTelInput-nODQyuq0.js → intlTelInput-B-IoM3ox.js} +1 -1
  140. package/dist/esm/loader.js +3 -3
  141. package/dist/esm/salla-accordion-body_2.entry.js +1 -1
  142. package/dist/esm/salla-accordion_6.entry.js +1 -1
  143. package/dist/esm/salla-add-product-button_5.entry.js +116 -4
  144. package/dist/esm/salla-advertisement.entry.js +1 -1
  145. package/dist/esm/salla-alert_2.entry.js +1 -1
  146. package/dist/esm/salla-app-install-alert.entry.js +1 -1
  147. package/dist/esm/salla-applied-filters.entry.js +1 -1
  148. package/dist/esm/salla-apps-icons.entry.js +1 -1
  149. package/dist/esm/salla-attachment-view_9.entry.js +10 -10
  150. package/dist/esm/salla-badge.entry.js +1 -1
  151. package/dist/esm/salla-basket-gap.entry.js +1 -1
  152. package/dist/esm/salla-bullet-delivery_3.entry.js +286 -20
  153. package/dist/esm/salla-cart-coupons.entry.js +1 -1
  154. package/dist/esm/salla-cart-item-offers_2.entry.js +1 -1
  155. package/dist/esm/salla-cart-summary-card.entry.js +1 -1
  156. package/dist/esm/salla-cashback-banner.entry.js +1 -1
  157. package/dist/esm/salla-comment-factors.entry.js +1 -1
  158. package/dist/esm/salla-comment-form_9.entry.js +1 -1
  159. package/dist/esm/salla-conditional-offer.entry.js +1 -1
  160. package/dist/esm/salla-contacts.entry.js +1 -1
  161. package/dist/esm/salla-cookies-bar.entry.js +1 -1
  162. package/dist/esm/salla-count-down.entry.js +1 -1
  163. package/dist/esm/salla-custom-fields.entry.js +1 -1
  164. package/dist/esm/salla-delivery-promise.entry.js +1 -1
  165. package/dist/esm/salla-edit-order-button.entry.js +1 -1
  166. package/dist/esm/salla-filters-widget.entry.js +1 -1
  167. package/dist/esm/salla-filters.entry.js +1 -1
  168. package/dist/esm/salla-fulfillment-methods.entry.js +1 -1
  169. package/dist/esm/salla-gift-card-redeem_2.entry.js +1 -1
  170. package/dist/esm/salla-gifting.entry.js +2 -2
  171. package/dist/esm/salla-hook.entry.js +1 -1
  172. package/dist/esm/salla-infinite-scroll.entry.js +1 -1
  173. package/dist/esm/salla-installment.entry.js +1 -1
  174. package/dist/esm/salla-list-tile.entry.js +1 -1
  175. package/dist/esm/salla-localization-modal.entry.js +1 -1
  176. package/dist/esm/salla-login-modal.entry.js +1 -1
  177. package/dist/esm/salla-loyalty-banner_10.entry.js +1 -1
  178. package/dist/esm/salla-loyalty-exchange-product-card.entry.js +1 -1
  179. package/dist/esm/salla-loyalty-points-banner.entry.js +1 -1
  180. package/dist/esm/salla-loyalty-points-history.entry.js +1 -1
  181. package/dist/esm/salla-loyalty-prize-item.entry.js +1 -1
  182. package/dist/esm/salla-loyalty.entry.js +1 -1
  183. package/dist/esm/salla-maintenance-alert.entry.js +1 -1
  184. package/dist/esm/salla-map_3.entry.js +1 -1
  185. package/dist/esm/salla-menu.entry.js +1 -1
  186. package/dist/esm/salla-metadata.entry.js +1 -1
  187. package/dist/esm/salla-multiple-bundle-product-cart_2.entry.js +1 -1
  188. package/dist/esm/salla-multiple-bundle-product-options-modal_2.entry.js +1 -1
  189. package/dist/esm/salla-multiple-bundle-product.entry.js +1 -1
  190. package/dist/esm/salla-next-order-coupon.entry.js +1 -1
  191. package/dist/esm/salla-notification-item_2.entry.js +1 -1
  192. package/dist/esm/salla-offer-modal.entry.js +1 -1
  193. package/dist/esm/salla-offer.entry.js +1 -1
  194. package/dist/esm/salla-order-branch.entry.js +1 -1
  195. package/dist/esm/salla-order-cancel.entry.js +1 -1
  196. package/dist/esm/salla-order-details-multiple-bundle-product.entry.js +1 -1
  197. package/dist/esm/salla-order-details-options.entry.js +1 -1
  198. package/dist/esm/salla-order-details.entry.js +1 -1
  199. package/dist/esm/salla-order-edit-item.entry.js +1 -1
  200. package/dist/esm/salla-order-edit-product-card.entry.js +1 -1
  201. package/dist/esm/salla-order-edit.entry.js +1 -1
  202. package/dist/esm/salla-order-options-modal.entry.js +1 -1
  203. package/dist/esm/salla-order-shipments.entry.js +1 -1
  204. package/dist/esm/salla-order-summary.entry.js +1 -1
  205. package/dist/esm/salla-order-totals-card.entry.js +1 -1
  206. package/dist/esm/salla-orders.entry.js +1 -1
  207. package/dist/esm/salla-payments.entry.js +1 -1
  208. package/dist/esm/salla-placeholder.entry.js +1 -1
  209. package/dist/esm/salla-price-range.entry.js +1 -1
  210. package/dist/esm/salla-product-card-embed.entry.js +1 -1
  211. package/dist/esm/salla-product-card.entry.js +1 -1
  212. package/dist/esm/salla-product-size-guide.entry.js +1 -1
  213. package/dist/esm/salla-products-list.entry.js +1 -1
  214. package/dist/esm/salla-products-slider.entry.js +1 -1
  215. package/dist/esm/salla-quick-order.entry.js +1 -1
  216. package/dist/esm/salla-rating-modal-v2.entry.js +1 -1
  217. package/dist/esm/salla-rating-modal.entry.js +1 -1
  218. package/dist/esm/salla-review-factors-tags.entry.js +1 -1
  219. package/dist/esm/salla-review-order-item.entry.js +1 -1
  220. package/dist/esm/salla-scopes.entry.js +1 -1
  221. package/dist/esm/salla-search-product-card.entry.js +1 -1
  222. package/dist/esm/salla-search.entry.js +1 -1
  223. package/dist/esm/salla-skeleton.entry.js +1 -1
  224. package/dist/esm/salla-social-share.entry.js +1 -1
  225. package/dist/esm/salla-social.entry.js +1 -1
  226. package/dist/esm/salla-tab-content_3.entry.js +1 -1
  227. package/dist/esm/salla-tiered-offer.entry.js +1 -1
  228. package/dist/esm/salla-trust-badges.entry.js +1 -1
  229. package/dist/esm/salla-user-menu.entry.js +1 -1
  230. package/dist/esm/salla-user-profile.entry.js +1 -1
  231. package/dist/esm/salla-user-settings.entry.js +1 -1
  232. package/dist/esm/salla-verify.entry.js +1 -1
  233. package/dist/esm/salla-wallet.entry.js +1 -1
  234. package/dist/esm/salla-wishlist-actions.entry.js +1 -1
  235. package/dist/esm/salla-wishlist-summary.entry.js +1 -1
  236. package/dist/esm/twilight.js +3 -3
  237. package/dist/esm/{vanilla-picker-B1bTUgHP.js → vanilla-picker-D1RSTlum.js} +1 -1
  238. package/dist/twilight/global/app.spec.ts +33 -0
  239. package/dist/twilight/global/app.ts +2 -0
  240. package/dist/twilight/global/chunk-errors.spec.ts +47 -0
  241. package/dist/twilight/global/chunk-errors.ts +13 -0
  242. package/dist/twilight/{p-68411931.entry.js → p-00cb1c25.entry.js} +1 -1
  243. package/dist/twilight/{p-be729ca2.entry.js → p-0835d9ab.entry.js} +1 -1
  244. package/dist/twilight/{p-5435dbcd.entry.js → p-09e56514.entry.js} +1 -1
  245. package/dist/twilight/{p-b6dc3e12.entry.js → p-0bbd0d06.entry.js} +1 -1
  246. package/dist/twilight/{p-2191d792.entry.js → p-0d464350.entry.js} +1 -1
  247. package/dist/twilight/{p-e7127704.entry.js → p-0e1a454b.entry.js} +1 -1
  248. package/dist/twilight/{p-0dc90c55.entry.js → p-106ea7ed.entry.js} +1 -1
  249. package/dist/twilight/{p-b1b096d7.entry.js → p-125482ce.entry.js} +1 -1
  250. package/dist/twilight/{p-9048520b.entry.js → p-15824030.entry.js} +1 -1
  251. package/dist/twilight/{p-612b6d87.entry.js → p-1769ead6.entry.js} +1 -1
  252. package/dist/twilight/{p-7b4a8237.entry.js → p-1b56374e.entry.js} +1 -1
  253. package/dist/twilight/{p-658de43b.entry.js → p-1d551b52.entry.js} +1 -1
  254. package/dist/twilight/{p-f5c9e513.entry.js → p-21d1a687.entry.js} +1 -1
  255. package/dist/twilight/{p-bb152b39.entry.js → p-22f21c95.entry.js} +1 -1
  256. package/dist/twilight/{p-4f76e9e2.entry.js → p-2510973e.entry.js} +1 -1
  257. package/dist/twilight/{p-6760ec19.entry.js → p-2c2f0608.entry.js} +1 -1
  258. package/dist/twilight/{p-7ff0c546.entry.js → p-2c8b8935.entry.js} +1 -1
  259. package/dist/twilight/{p-06643011.entry.js → p-2e5bace8.entry.js} +1 -1
  260. package/dist/twilight/{p-5f6a5a4b.entry.js → p-2ef59b30.entry.js} +1 -1
  261. package/dist/twilight/{p-f4f7ed38.entry.js → p-30b7383a.entry.js} +1 -1
  262. package/dist/twilight/{p-ce6c709b.entry.js → p-30f24d97.entry.js} +1 -1
  263. package/dist/twilight/{p-e2aa0e72.entry.js → p-3162901e.entry.js} +1 -1
  264. package/dist/twilight/{p-45035389.entry.js → p-34454493.entry.js} +1 -1
  265. package/dist/twilight/{p-f8f9c563.entry.js → p-35bc566f.entry.js} +1 -1
  266. package/dist/twilight/{p-b1b345d6.entry.js → p-35c0ca9a.entry.js} +1 -1
  267. package/dist/twilight/{p-c313bd11.entry.js → p-3e02b792.entry.js} +1 -1
  268. package/dist/twilight/{p-c3a2696b.entry.js → p-42162de9.entry.js} +1 -1
  269. package/dist/twilight/{p-c1d18b73.entry.js → p-4362756f.entry.js} +1 -1
  270. package/dist/twilight/{p-2fc68bfd.entry.js → p-4457a289.entry.js} +1 -1
  271. package/dist/twilight/{p-d9ccdd8f.entry.js → p-4543b3b3.entry.js} +1 -1
  272. package/dist/twilight/{p-3bf37615.entry.js → p-4cedf139.entry.js} +1 -1
  273. package/dist/twilight/{p-75f32b91.entry.js → p-51243641.entry.js} +1 -1
  274. package/dist/twilight/{p-f263bba9.entry.js → p-51e8c2b2.entry.js} +1 -1
  275. package/dist/twilight/{p-a0f1b867.entry.js → p-52012794.entry.js} +1 -1
  276. package/dist/twilight/{p-3e6f2bf8.entry.js → p-530b513d.entry.js} +1 -1
  277. package/dist/twilight/{p-e7ca6d06.entry.js → p-57097563.entry.js} +1 -1
  278. package/dist/twilight/{p-b95a6e20.entry.js → p-572a1f84.entry.js} +1 -1
  279. package/dist/twilight/{p-872d6d68.entry.js → p-59256d82.entry.js} +1 -1
  280. package/dist/twilight/{p-9e6f4ec4.entry.js → p-5b3a04cd.entry.js} +1 -1
  281. package/dist/twilight/p-614b7b61.entry.js +4 -0
  282. package/dist/twilight/{p-a057f532.entry.js → p-64c76ad9.entry.js} +1 -1
  283. package/dist/twilight/{p-dfd212d5.entry.js → p-66131771.entry.js} +1 -1
  284. package/dist/twilight/{p-6673a16f.entry.js → p-6b90f160.entry.js} +1 -1
  285. package/dist/twilight/{p-b5e774db.entry.js → p-6bfcdb38.entry.js} +1 -1
  286. package/dist/twilight/{p-c1d815c9.entry.js → p-6d3d5a0b.entry.js} +1 -1
  287. package/dist/twilight/{p-377642ea.entry.js → p-6e42d70f.entry.js} +1 -1
  288. package/dist/twilight/{p-6a76acd8.entry.js → p-6e57ff9f.entry.js} +1 -1
  289. package/dist/twilight/{p-91a1baf1.entry.js → p-751ff32d.entry.js} +1 -1
  290. package/dist/twilight/{p-42e02411.entry.js → p-78963d5d.entry.js} +1 -1
  291. package/dist/twilight/{p-a75680ae.entry.js → p-790ea507.entry.js} +1 -1
  292. package/dist/twilight/{p-eaae379c.entry.js → p-79bb0c41.entry.js} +1 -1
  293. package/dist/twilight/{p-1b1bebf6.entry.js → p-7ed0db2e.entry.js} +1 -1
  294. package/dist/twilight/{p-c9ebe466.entry.js → p-84308a79.entry.js} +1 -1
  295. package/dist/twilight/{p-43ca88d0.entry.js → p-8c229520.entry.js} +1 -1
  296. package/dist/twilight/{p-e58b7ef9.entry.js → p-94970458.entry.js} +1 -1
  297. package/dist/twilight/{p-ad52dcf7.entry.js → p-94e85b3c.entry.js} +1 -1
  298. package/dist/twilight/{p-f7ee4910.entry.js → p-988f6193.entry.js} +1 -1
  299. package/dist/twilight/{p-540029a5.entry.js → p-9f0459ec.entry.js} +1 -1
  300. package/dist/twilight/{p-BnmP7F4y.js → p-B5twlAuI.js} +1 -1
  301. package/dist/twilight/p-BS2iQKah.js +4 -0
  302. package/dist/twilight/{p-Ct18qgaq.js → p-BXAODWDa.js} +1 -1
  303. package/dist/twilight/{p-DvlAEiaH.js → p-BkWctmFE.js} +1 -1
  304. package/dist/twilight/{p-Bk24FlDL.js → p-Bxge4xib.js} +2 -2
  305. package/dist/twilight/{p-BvUmZYa9.js → p-CINox5XU.js} +1 -1
  306. package/dist/twilight/{p-B-LS1xDz.js → p-CWLJmpv-.js} +1 -1
  307. package/dist/twilight/{p-CHqh7vb6.js → p-DKEu8h4M.js} +1 -1
  308. package/dist/twilight/{p-CXo-IH2o.js → p-DnoH14HK.js} +1 -1
  309. package/dist/twilight/{p-CcGfWKIx.js → p-EiLe0Yi_.js} +1 -1
  310. package/dist/twilight/{p-DBjpz_eG.js → p-W-AkIawg.js} +1 -1
  311. package/dist/twilight/{p-b37ae926.entry.js → p-a37bc663.entry.js} +1 -1
  312. package/dist/twilight/{p-ced74b88.entry.js → p-a3a69984.entry.js} +1 -1
  313. package/dist/twilight/{p-42150f97.entry.js → p-a912d6a3.entry.js} +1 -1
  314. package/dist/twilight/{p-ed6ea140.entry.js → p-aa96807e.entry.js} +1 -1
  315. package/dist/twilight/{p-5fc75260.entry.js → p-aafa69d6.entry.js} +1 -1
  316. package/dist/twilight/{p-08256e67.entry.js → p-abfbba72.entry.js} +1 -1
  317. package/dist/twilight/{p-cd432c49.entry.js → p-b1dc78db.entry.js} +1 -1
  318. package/dist/twilight/{p-79676f24.entry.js → p-b2322278.entry.js} +1 -1
  319. package/dist/twilight/{p-21b3877b.entry.js → p-b3213fee.entry.js} +1 -1
  320. package/dist/twilight/{p-dc51993c.entry.js → p-b6918b2b.entry.js} +1 -1
  321. package/dist/twilight/{p-1d05ff72.entry.js → p-b8661b67.entry.js} +1 -1
  322. package/dist/twilight/{p-83ccddd5.entry.js → p-be3f6dbe.entry.js} +1 -1
  323. package/dist/twilight/{p-7038e1af.entry.js → p-bff2400f.entry.js} +1 -1
  324. package/dist/twilight/{p-b2c41e36.entry.js → p-c0274022.entry.js} +1 -1
  325. package/dist/twilight/{p-03dffb99.entry.js → p-c16b9f4a.entry.js} +1 -1
  326. package/dist/twilight/{p-38418821.entry.js → p-c476eaab.entry.js} +1 -1
  327. package/dist/twilight/{p-f9f0a5ee.entry.js → p-c4bf8d24.entry.js} +1 -1
  328. package/dist/twilight/p-c903b6bb.entry.js +4 -0
  329. package/dist/twilight/{p-0e122915.entry.js → p-d1e4e15e.entry.js} +1 -1
  330. package/dist/twilight/{p-523f9816.entry.js → p-d2e929bd.entry.js} +1 -1
  331. package/dist/twilight/{p-43c5ec34.entry.js → p-d38b5aaa.entry.js} +1 -1
  332. package/dist/twilight/{p-22135b7c.entry.js → p-d6d7c6a1.entry.js} +1 -1
  333. package/dist/twilight/{p-7750be26.entry.js → p-d9188e76.entry.js} +1 -1
  334. package/dist/twilight/{p-320d6b04.entry.js → p-db53740d.entry.js} +1 -1
  335. package/dist/twilight/{p-21802082.entry.js → p-df313b00.entry.js} +1 -1
  336. package/dist/twilight/{p-46721e68.entry.js → p-df407f01.entry.js} +1 -1
  337. package/dist/twilight/{p-4fd73440.entry.js → p-e19a980b.entry.js} +1 -1
  338. package/dist/twilight/{p-813a40cc.entry.js → p-e1b0dafc.entry.js} +1 -1
  339. package/dist/twilight/{p-d73307c7.entry.js → p-e7e52491.entry.js} +1 -1
  340. package/dist/twilight/{p-f74ccae4.entry.js → p-ebbb25fc.entry.js} +1 -1
  341. package/dist/twilight/{p-becb6580.entry.js → p-f046edd3.entry.js} +1 -1
  342. package/dist/twilight/{p-250262a9.entry.js → p-f22ec479.entry.js} +1 -1
  343. package/dist/twilight/{p-fbee9e50.entry.js → p-f4c94e30.entry.js} +1 -1
  344. package/dist/twilight/{p-02202feb.entry.js → p-fae38591.entry.js} +1 -1
  345. package/dist/twilight/{p-d601977e.entry.js → p-fb119c27.entry.js} +1 -1
  346. package/dist/twilight/{p-cc74d38b.entry.js → p-fd615606.entry.js} +1 -1
  347. package/dist/twilight/{p-b009d316.entry.js → p-fd6fc043.entry.js} +1 -1
  348. package/dist/twilight/twilight.esm.js +1 -1
  349. package/dist/types/components/salla-add-product-button/salla-add-product-button.d.ts +16 -0
  350. package/dist/types/components/salla-bullet-delivery/location-distance-warning.d.ts +12 -0
  351. package/dist/types/components/salla-bullet-delivery/location-permission-notice.d.ts +39 -0
  352. package/dist/types/components/salla-bullet-delivery/salla-bullet-delivery.d.ts +31 -0
  353. package/dist/types/components/salla-order-options-modal/apple-pay-order-options.d.ts +2 -0
  354. package/dist/types/global/chunk-errors.d.ts +2 -0
  355. package/package.json +5 -5
  356. package/dist/twilight/p-07174244.entry.js +0 -4
  357. package/dist/twilight/p-f3ffe84f.entry.js +0 -4
  358. package/dist/twilight/p-s0kn7yr8.js +0 -4
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
 
8
8
  const sallaAppInstallAlertCss = "/*!twlt*/:host{display:block}.s-app-install-alert-wrapper{display:none;flex-direction:row;align-items:center;position:fixed;left:0;right:0;width:95%;margin-top:1rem;margin-bottom:1rem;margin-left:auto;margin-right:auto;z-index:999;border-radius:0.375rem;padding:0.75rem;gap:0.5rem;background-color:color-mix(in srgb, var(--color-primary) 15%, white);filter:drop-shadow(0 4px 3px rgba(0, 0, 0, 0.07)) drop-shadow(0 2px 2px rgba(0, 0, 0, 0.06))}.s-app-install-alert-wrapper.open[position=top]{display:flex;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes slideDownFromTop{0%{transform:translateY(-100%);opacity:0}100%{transform:translateY(-0%);opacity:1}}.s-app-install-alert-wrapper.open[position=top]{animation:slideDownFromTop .6s linear;transition-duration:500ms}.s-app-install-alert-wrapper:not(.open){display:none}.s-app-install-alert-content{width:100%}.s-app-install-alert-wrapper[position=top]{top:0px}.s-app-install-alert-wrapper.open[position=bottom]{display:flex}@keyframes slideUpFromBottom{0%{transform:translateY(100%);opacity:0}100%{transform:translateY(0%);opacity:1}}.s-app-install-alert-wrapper.open[position=bottom]{animation:slideUpFromBottom .6s linear}.s-app-install-alert-wrapper[position=bottom]{bottom:0px}@keyframes slideUPFromTop{0%{transform:translateY(-0%);opacity:1}100%{transform:translateY(-100%);opacity:0}}.s-app-install-alert-wrapper[position=top].closing{animation:slideUPFromTop .6s linear}@keyframes slideDownFromBottom{0%{transform:translateY(0%);opacity:1}100%{transform:translateY(100%);opacity:0}}.s-app-install-alert-wrapper[position=bottom].closing{animation:slideDownFromBottom .6s linear}.s-app-install-alert-wrapper.closing{animation-fill-mode:forwards}.s-app-install-alert-title{max-width:95%;font-size:1rem;line-height:1.5rem;font-weight:700;color:var(--color-primary)}.s-app-install-alert-sub-title{max-width:95%;font-size:0.875rem;line-height:1.25rem;font-weight:400}.s-app-install-alert-cta{color:var(--color-primary);text-decoration-line:underline}.s-app-install-alert-cancel-button{position:absolute;top:0.5rem}.s-app-install-alert-cancel-button:where([dir=\"ltr\"],[dir=\"ltr\"] *){right:0.75rem}.s-app-install-alert-cancel-button:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:0.75rem}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
  var Helper = require('./Helper-DgRzYZwR.js');
8
8
  require('./anime.es-BqW8JHZi.js');
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
 
8
8
  const sallaAppsIconsCss = "/*!twlt*/:host{display:block}.s-apps-icons-list{display:flex;gap:1rem}.s-apps-icons-list.vertical{flex-direction:column}.s-apps-icons-item{line-height:1}.s-apps-icons-item:hover{color:var(--color-primary)}";
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
  var uploadLimits = require('./upload-limits-C3RarAPN.js');
8
8
  var calendar = require('./calendar-D-PUoCDH.js');
9
9
  var keyboard_arrow_down = require('./keyboard_arrow_down-DHJ3FFZq.js');
@@ -707,7 +707,7 @@ const SallaColorPicker = class {
707
707
  }
708
708
  }
709
709
  initColorPicker() {
710
- this.pickerReady = Promise.resolve().then(function () { return require('./vanilla-picker-DLfPr_3c.js'); }).then(function (n) { return n.vanillaPicker; }).then(mod => {
710
+ this.pickerReady = Promise.resolve().then(function () { return require('./vanilla-picker-36O-wrIX.js'); }).then(function (n) { return n.vanillaPicker; }).then(mod => {
711
711
  const Picker = mod.default;
712
712
  const picker = new Picker({
713
713
  parent: this.host,
@@ -1168,13 +1168,13 @@ const SallaFileUpload = class {
1168
1168
  return;
1169
1169
  try {
1170
1170
  const [FilePondModule, FilePondPluginFileValidateSize, FilePondPluginImageExifOrientation, FilePondPluginImagePreview, FilePondPluginImageEdit, FilePondPluginFileValidateType, FilePondPluginFilePoster] = await Promise.all([
1171
- Promise.resolve().then(function () { return require('./filepond-YeXzkn77.js'); }).then(function (n) { return n.filepond; }),
1172
- Promise.resolve().then(function () { return require('./filepond-plugin-file-validate-size-BSsf6VIk.js'); }).then(function (n) { return n.filepondPluginFileValidateSize; }),
1173
- Promise.resolve().then(function () { return require('./filepond-plugin-image-exif-orientation-nDfSwZEM.js'); }).then(function (n) { return n.filepondPluginImageExifOrientation; }),
1174
- Promise.resolve().then(function () { return require('./filepond-plugin-image-preview-C-FDU_4k.js'); }).then(function (n) { return n.filepondPluginImagePreview; }),
1175
- Promise.resolve().then(function () { return require('./filepond-plugin-image-edit-h9C4LxoR.js'); }).then(function (n) { return n.filepondPluginImageEdit; }),
1176
- Promise.resolve().then(function () { return require('./filepond-plugin-file-validate-type-BkxQQF1Y.js'); }).then(function (n) { return n.filepondPluginFileValidateType; }),
1177
- Promise.resolve().then(function () { return require('./filepond-plugin-file-poster-BEU99tEc.js'); }).then(function (n) { return n.filepondPluginFilePoster; })
1171
+ Promise.resolve().then(function () { return require('./filepond-DtGoIKEP.js'); }).then(function (n) { return n.filepond; }),
1172
+ Promise.resolve().then(function () { return require('./filepond-plugin-file-validate-size-J_fE6OBS.js'); }).then(function (n) { return n.filepondPluginFileValidateSize; }),
1173
+ Promise.resolve().then(function () { return require('./filepond-plugin-image-exif-orientation-CZ6YRu70.js'); }).then(function (n) { return n.filepondPluginImageExifOrientation; }),
1174
+ Promise.resolve().then(function () { return require('./filepond-plugin-image-preview-CgV-oWXK.js'); }).then(function (n) { return n.filepondPluginImagePreview; }),
1175
+ Promise.resolve().then(function () { return require('./filepond-plugin-image-edit-DPNUTWCK.js'); }).then(function (n) { return n.filepondPluginImageEdit; }),
1176
+ Promise.resolve().then(function () { return require('./filepond-plugin-file-validate-type-BpewyAzF.js'); }).then(function (n) { return n.filepondPluginFileValidateType; }),
1177
+ Promise.resolve().then(function () { return require('./filepond-plugin-file-poster-DMejMF1-.js'); }).then(function (n) { return n.filepondPluginFilePoster; })
1178
1178
  ]);
1179
1179
  this.FilePond = FilePondModule;
1180
1180
  // Register plugins
@@ -2406,7 +2406,7 @@ const SallaTelInput = class {
2406
2406
  if (this.TelInput)
2407
2407
  return;
2408
2408
  try {
2409
- const telInputModule = await Promise.resolve().then(function () { return require('./intlTelInput-AgidDx18.js'); }).then(function (n) { return n.intlTelInput; });
2409
+ const telInputModule = await Promise.resolve().then(function () { return require('./intlTelInput-BLuZALMt.js'); }).then(function (n) { return n.intlTelInput; });
2410
2410
  this.TelInput = telInputModule.default;
2411
2411
  }
2412
2412
  catch (error) {
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
 
8
8
  function r(e){var t,f,n="";if("string"==typeof e||"number"==typeof e)n+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=" "),n+=f);else for(t in e)e[t]&&(n&&(n+=" "),n+=t);return n}function clsx(){for(var e,t,f=0,n="";f<arguments.length;)(e=arguments[f++])&&(t=r(e))&&(n&&(n+=" "),n+=t);return n}
9
9
 
@@ -3,7 +3,7 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
  var catalogRecommendations = require('./catalog-recommendations-Bxs1t6wk.js');
8
8
 
9
9
  const sallaBasketGapCss = "/*!twlt*/:host{display:block}.block{display:block}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.s-basket-gap-entry{margin-top:1.25rem;margin-bottom:1.25rem;display:block;border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.25rem}.s-basket-gap-title{margin-bottom:1rem;font-size:1.125rem;line-height:1.75rem;font-weight:700}.s-basket-gap-list{display:flex;flex-direction:column}.s-basket-gap-list>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse));--tw-divide-opacity:1;border-color:rgb(243 244 246 / var(--tw-divide-opacity, 1))}.s-basket-gap-card{display:flex;flex-wrap:wrap;align-items:center;column-gap:0.75rem;row-gap:0.625rem;padding-top:1rem;padding-bottom:1rem}.s-basket-gap-card-image{height:4rem;width:4rem;flex-shrink:0;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-basket-gap-card-image img{height:100%;width:100%;object-fit:cover}.s-basket-gap-card-info{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;gap:0.25rem}.s-basket-gap-card-actions{display:flex;width:100%;align-items:center;justify-content:flex-end;gap:0.5rem}@media (min-width: 640px){.s-basket-gap-card-actions{width:auto}}.s-basket-gap-card-name{font-size:0.875rem;line-height:1.25rem;font-weight:600;line-height:1.25;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-basket-gap-card-name a:hover{color:var(--color-primary)}.s-basket-gap-card-price{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-basket-gap-card-sale-price{display:flex;align-items:center;gap:0.5rem}.s-basket-gap-card-sale-price span{font-size:0.875rem;line-height:1.25rem;font-weight:700;--tw-text-opacity:1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.s-basket-gap-card-sale-price del{font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1));text-decoration-line:line-through}.s-basket-gap-card-weight{font-size:0.75rem;line-height:1rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-basket-gap-card-offer{display:flex;flex-shrink:0;align-items:center;gap:0.25rem;border-radius:0.375rem;--tw-bg-opacity:1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1));padding-left:9px;padding-right:9px;padding-top:3px;padding-bottom:3px;font-size:11px;font-weight:500;--tw-text-opacity:1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.s-basket-gap-card-offer i{font-size:0.75rem;line-height:1rem}.s-basket-gap-card-offer span{font-weight:700;--tw-text-opacity:1 !important;color:rgb(31 41 55 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-offer salla-count-down{flex-shrink:0}.s-basket-gap-card-offer salla-count-down:where([dir=\"ltr\"],[dir=\"ltr\"] *){margin-inline-start:0.25rem}.s-basket-gap-card-offer salla-count-down:where([dir=\"rtl\"],[dir=\"rtl\"] *){margin-inline-end:0.25rem}.s-basket-gap-card-offer .s-count-down-list{margin-left:-0px !important;margin-right:-0px !important;margin-bottom:0px !important;margin-top:0px !important;display:inline-flex;flex-wrap:nowrap;align-items:center;justify-content:flex-start !important;column-gap:0px;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"ltr\"],[dir=\"ltr\"] *){flex-direction:row-reverse !important}.s-basket-gap-card-offer .s-count-down-list:where([dir=\"rtl\"],[dir=\"rtl\"] *){flex-direction:row !important}.s-basket-gap-card-offer .s-count-down-item{position:relative !important;margin-left:0px !important;margin-right:0px !important;display:inline-flex !important;width:auto !important;flex:none !important;flex-grow:0 !important;flex-direction:row !important;align-items:center !important;justify-content:center !important;padding-top:0px !important;padding-bottom:0px !important;padding-left:0px !important;padding-right:0px !important;font-size:12px !important;font-weight:700 !important;line-height:1 !important;--tw-text-opacity:1 !important;color:rgb(21 128 61 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-offer .s-count-down-item-value{display:inline-block !important;width:2ch !important;min-width:2ch !important;text-align:center;--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction);line-height:1}.s-basket-gap-card-offer .s-count-down-item-label{display:none}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::before{content:none !important}.s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item::after{content:none !important;position:static;left:auto;right:auto;transform:none}[dir='rtl'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:last-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}[dir='ltr'] .s-basket-gap-entry .s-basket-gap-card-offer.s-basket-gap-card-offer .s-count-down-item:not(:first-child)::after{content:':' !important;position:static;left:auto;right:auto;transform:none;margin-left:0.15rem;margin-right:0.15rem;color:#15803d;font-size:12px;font-weight:700;line-height:1}.s-basket-gap-card-btn{flex-shrink:0}.s-basket-gap-card-btn salla-button .s-button-btn{border-radius:var(--s-radius, 0.25rem);border-width:1px !important;border-color:var(--color-primary) !important;background-color:transparent !important;color:var(--color-primary) !important}.s-basket-gap-card-btn salla-button .s-button-btn:hover{background-color:var(--color-primary) !important;--tw-text-opacity:1 !important;color:rgb(255 255 255 / var(--tw-text-opacity, 1)) !important}.s-basket-gap-card-btn salla-button .s-button-loader:before{border-top-color:var(--color-primary) !important;border-left-color:var(--color-primary) !important;border-bottom-color:rgb(243 244 246 / var(--tw-border-opacity, 1)) !important;--tw-border-opacity:1 !important;border-right-color:rgb(243 244 246 / var(--tw-border-opacity, 1)) !important}.s-basket-gap-skeleton{display:flex;flex-direction:column;gap:0.75rem}.s-basket-gap-skeleton-card{display:flex;align-items:center;gap:0.75rem;padding-top:0.75rem;padding-bottom:0.75rem}.s-basket-gap-skeleton-info{display:flex;flex:1 1 0%;flex-direction:column;gap:0.5rem}";
@@ -3,11 +3,168 @@
3
3
  */
4
4
  'use strict';
5
5
 
6
- var index = require('./index-DI5yx1uj.js');
6
+ var index = require('./index-BziKkkwT.js');
7
7
  var helpers = require('./helpers-DSseNQ1K.js');
8
8
  var location = require('./location-DIyESLuI.js');
9
9
  var search = require('./search-c7Aa7lM9.js');
10
10
 
11
+ var LocationIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 172 172" width="172" height="172">
12
+ <!-- White rounded background -->
13
+ <rect width="172" height="172" rx="64" fill="#FFFFFF"/>
14
+
15
+ <!-- Location / navigation icon -->
16
+ <path
17
+ d="M113.5 52.5
18
+ C108.5 52.5 101.5 54.5 93.5 57
19
+ L57.5 68.5
20
+ C53.5 69.8 51.8 72.2 53 75
21
+ C53.8 77 55.5 78.2 58 79
22
+ L79.5 86.5
23
+ C81.8 87.3 83.2 88.8 84 91.2
24
+ L90.5 113
25
+ C91.7 117 94 119.2 97 119.2
26
+ C100.8 119.2 103 116.5 104.2 112.8
27
+ L119 70.5
28
+ C121 64.5 121.8 58.5 119.2 55.2
29
+ C117.8 53.3 116 52.5 113.5 52.5 Z"
30
+ fill="#FFFFFF"
31
+ stroke="#000000"
32
+ stroke-width="5.5"
33
+ stroke-linecap="round"
34
+ stroke-linejoin="round"
35
+ />
36
+ </svg>
37
+ `;
38
+
39
+ const GEOLOCATION_TIMEOUT$1 = 10000;
40
+ /** GeolocationPositionError.PERMISSION_DENIED — inlined; the class is absent in some test envs. */
41
+ const PERMISSION_DENIED = 1;
42
+ /** Action the Salla app listens for to open its own location-permission settings screen. */
43
+ const NATIVE_LOCATION_SETTINGS_ACTION = 'location.settings.open';
44
+ const NOTICE_KEY = 'pages.checkout.allow_location_permission';
45
+ const NOTICE_FALLBACK = 'اسمح بمشاركة موقعك لتحديد عنوانك تلقائيًا وبشكل أدق.';
46
+ /** Whether the notice should be rendered — only for a state we know is missing the permission. */
47
+ const isLocationPermissionMissing = (state) => state === 'prompt' || state === 'denied';
48
+ /** `PermissionStatus` for geolocation, or null when the browser can't report it. */
49
+ async function queryLocationPermission() {
50
+ try {
51
+ if (!navigator?.permissions?.query || !navigator.geolocation)
52
+ return null;
53
+ return await navigator.permissions.query({ name: 'geolocation' });
54
+ }
55
+ catch {
56
+ // Browsers that don't know the 'geolocation' descriptor throw instead of resolving.
57
+ return null;
58
+ }
59
+ }
60
+ async function getLocationPermissionState() {
61
+ const status = await queryLocationPermission();
62
+ return status?.state ?? 'unknown';
63
+ }
64
+ /**
65
+ * Reads the permission state and keeps reporting it while it changes, so the notice disappears the
66
+ * moment the customer grants access elsewhere (browser bar, OS settings) without a manual refresh.
67
+ *
68
+ * @returns an unsubscribe function — call it on disconnect.
69
+ */
70
+ function watchLocationPermission(onChange) {
71
+ let stopped = false;
72
+ let status = null;
73
+ const handleChange = () => {
74
+ if (!stopped && status)
75
+ onChange(status.state);
76
+ };
77
+ queryLocationPermission().then(result => {
78
+ if (stopped)
79
+ return;
80
+ status = result;
81
+ if (!status) {
82
+ onChange('unknown');
83
+ return;
84
+ }
85
+ onChange(status.state);
86
+ status.addEventListener?.('change', handleChange);
87
+ });
88
+ return () => {
89
+ stopped = true;
90
+ status?.removeEventListener?.('change', handleChange);
91
+ status = null;
92
+ };
93
+ }
94
+ /** Hands the request to the Salla app inside a native webview; it opens its permission settings. */
95
+ function openNativeLocationSettings() {
96
+ const mobile = typeof Salla !== 'undefined' ? Salla.mobile : null;
97
+ if (!mobile?.isSpaWebview?.())
98
+ return false;
99
+ mobile.action?.(NATIVE_LOCATION_SETTINGS_ACTION);
100
+ return true;
101
+ }
102
+ /**
103
+ * Acts on a tap of the notice: native apps deep-link into their settings, the web always calls
104
+ * `getCurrentPosition` so the browser can re-show its permission dialog when the state is still
105
+ * `prompt`. If the site is permanently blocked, browsers stay silent and fail with
106
+ * `PERMISSION_DENIED`.
107
+ */
108
+ async function requestLocationPermission() {
109
+ const current = await getLocationPermissionState();
110
+ if (openNativeLocationSettings()) {
111
+ return { state: current, handledByApp: true };
112
+ }
113
+ if (!navigator?.geolocation) {
114
+ return { state: 'denied', handledByApp: false };
115
+ }
116
+ try {
117
+ const { coords } = await new Promise((resolve, reject) => navigator.geolocation.getCurrentPosition(resolve, reject, {
118
+ enableHighAccuracy: true,
119
+ timeout: GEOLOCATION_TIMEOUT$1,
120
+ maximumAge: 0,
121
+ }));
122
+ return {
123
+ state: 'granted',
124
+ handledByApp: false,
125
+ position: { lat: coords.latitude, lng: coords.longitude },
126
+ };
127
+ }
128
+ catch (error) {
129
+ // PERMISSION_DENIED means the browser will not (or did not) grant access — including the
130
+ // permanently-blocked case where no dialog appears. Timeouts / unavailable positions are not
131
+ // a refusal, so the previous state is kept.
132
+ const denied = error?.code === PERMISSION_DENIED;
133
+ return { state: denied ? 'denied' : current, handledByApp: false };
134
+ }
135
+ }
136
+ const LocationPermissionNotice = ({ isRTL = false, onActivate, }) => (index.h("div", { class: "s-bullet-delivery-location-permission" },
137
+ index.h("button", { type: "button", class: "s-bullet-delivery-location-permission-btn", onClick: onActivate },
138
+ index.h("span", { class: "s-bullet-delivery-location-permission-icon", innerHTML: LocationIcon, "aria-hidden": "true" }),
139
+ index.h("span", { class: "s-bullet-delivery-location-permission-text", style: { textAlign: isRTL ? 'right' : 'left' }, "data-testid": "salla-bullet-delivery-location-permission-text" }, Salla.lang.getWithDefault(NOTICE_KEY, NOTICE_FALLBACK)),
140
+ index.h("i", { class: `s-bullet-delivery-location-permission-arrow ${isRTL ? 'sicon-keyboard_arrow_left' : 'sicon-keyboard_arrow_right'}`, "aria-hidden": "true" }))));
141
+
142
+ const EARTH_RADIUS_KM = 6371;
143
+ const WARNING_KEY = 'pages.checkout.location_distance_warning';
144
+ const WARNING_FALLBACK = 'تبعد عن موقعك {distance} كم، وقد تكون اخترت عنوان توصيل غير صحيح.';
145
+ const toRadians = (degrees) => degrees * (Math.PI / 180);
146
+ /** Haversine distance between two coordinates in kilometres. */
147
+ function calculateLocationDistanceKm(from, to) {
148
+ const latitudeDelta = toRadians(to.lat - from.lat);
149
+ const longitudeDelta = toRadians(to.lng - from.lng);
150
+ const fromLatitude = toRadians(from.lat);
151
+ const toLatitude = toRadians(to.lat);
152
+ const haversine = Math.sin(latitudeDelta / 2) ** 2 +
153
+ Math.cos(fromLatitude) *
154
+ Math.cos(toLatitude) *
155
+ Math.sin(longitudeDelta / 2) ** 2;
156
+ return EARTH_RADIUS_KM * 2 * Math.atan2(Math.sqrt(haversine), Math.sqrt(1 - haversine));
157
+ }
158
+ const LocationDistanceWarning = ({ distanceKm, isRTL = false, }) => {
159
+ const distance = distanceKm.toFixed(1);
160
+ const message = Salla.lang
161
+ .getWithDefault(WARNING_KEY, WARNING_FALLBACK)
162
+ ?.replace('{distance}', distance);
163
+ return (index.h("div", { class: "s-bullet-delivery-location-distance-warning", role: "alert" },
164
+ index.h("span", { class: "s-bullet-delivery-location-distance-warning-icon", innerHTML: LocationIcon, "aria-hidden": "true" }),
165
+ index.h("span", { class: "s-bullet-delivery-location-distance-warning-text", style: { textAlign: isRTL ? 'right' : 'left' }, "data-testid": "salla-bullet-delivery-location-distance-warning-text" }, message)));
166
+ };
167
+
11
168
  var GetDirections = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
12
169
  <path
13
170
  d="M7.94798 3.19336C11.1309 2.1083 12.7223 1.56578 13.5783 2.42174C14.4342 3.27771 13.8917 4.86914 12.8066 8.05201L12.0678 10.2195C11.2344 12.6639 10.8178 13.8861 10.131 13.9872C9.94631 14.0144 9.75517 13.9981 9.57248 13.9394C8.89297 13.7212 8.53377 12.4326 7.81538 9.8553C7.65604 9.28364 7.57637 8.99781 7.39494 8.7795C7.34228 8.71614 7.28386 8.65772 7.2205 8.60506C7.00219 8.42363 6.71636 8.34396 6.1447 8.18462C3.56741 7.46623 2.27876 7.10703 2.0606 6.42752C2.00195 6.24483 1.98558 6.05369 2.01277 5.86903C2.11392 5.18221 3.33613 4.76556 5.78054 3.93225L7.94798 3.19336Z"
@@ -55,7 +212,7 @@ var Store = `<svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="
55
212
  </svg>
56
213
  `;
57
214
 
58
- const sallaBulletDeliveryCss = "/*!twlt*/@charset \"UTF-8\";@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body,.s-bullet-delivery-inner{interpolate-size:allow-keywords}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{overflow:clip;transition:block-size 500ms ease}.s-bullet-delivery-inner{overflow:clip;transition:block-size 500ms ease;block-size:calc-size(auto, size)}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-form-actions.s-bullet-delivery-form-actions--single{padding-bottom:0;flex-direction:column;gap:0}.s-bullet-delivery-addresses-list.s-scrollbar::-webkit-scrollbar-track,.s-bullet-delivery-branches-list.s-scrollbar::-webkit-scrollbar-track{background-color:transparent}.s-bullet-delivery-back-to-list-link{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;margin-top:12px;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:0}.s-bullet-delivery-back-to-list-link i{font-size:12px}.first-letter-cap::first-letter{text-transform:uppercase}.s-bullet-delivery-map-container{width:100%;height:320px;border-radius:8px;overflow:hidden;margin-bottom:12px}.s-bullet-delivery-map-container gmap-map{display:block;width:100%;height:100%}.s-bullet-delivery-address-confirm{display:flex;flex-direction:column;gap:20px;animation:s-bullet-delivery-fade-in 200ms ease}.s-bullet-delivery-address-confirm-card{display:flex;align-items:center;gap:12px;border:1px solid #eee;border-radius:6px;padding:12px}.s-bullet-delivery-address-map-icon{overflow:hidden;border-radius:9px}.s-bullet-delivery-address-confirm-details{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.s-bullet-delivery-address-confirm-label{font-size:12px;line-height:16px;color:#666}.s-bullet-delivery-address-confirm-text{font-size:14px;font-weight:700;color:#333;margin:0;word-break:break-word}.s-bullet-delivery-address-confirm-description{display:flex;flex-direction:column;gap:8px}.s-bullet-delivery-address-confirm-description-label{font-size:14px;font-weight:500;color:#444}.s-bullet-delivery-address-confirm-description-optional{font-weight:400;color:#999;margin-inline-start:4px}.s-bullet-delivery-address-confirm-description-input{width:100%;border:1px solid #eee;border-radius:8px;padding:10px 12px;font-size:14px;margin-bottom:16px}.s-bullet-delivery-login-prompt{display:block;width:100%;text-align:center;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:12px 0}@keyframes s-bullet-delivery-fade-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.branch-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;max-height:20px;border-radius:20px;font-size:9px;font-weight:500;border:1px solid transparent;white-space:nowrap}.branch-status-badge.green{color:#43a047;background:#e8f5e9;border-color:#43a047}.branch-status-badge.blue{color:#1e88e5;background:#e3f2fd;border-color:#1e88e5}.branch-status-badge.red{color:#e53935;background:#fdf2f2;border-color:#e53935}.branch-status-badge.yellow{color:#f9a825;background:#fff8e1;border-color:#f9a825}.branch-status-badge.gray{color:#757575;background:#f5f5f5;border-color:#757575}.branch-status-badge.brown{color:#6d4c41;background:#efebe9;border-color:#6d4c41}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.visible{visibility:visible}.static{position:static}.mb-1{margin-bottom:0.25rem}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-1{gap:0.25rem}.text-start{text-align:start}.\\!text-blue-600{--tw-text-opacity:1 !important;color:rgb(37 99 235 / var(--tw-text-opacity, 1)) !important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-hidden{display:none}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.spinner-loader.reverse{border-right-color:#9f7171 !important;background-color:#f98181}.s-hidden{display:none}.s-scrollbar::-webkit-scrollbar{width:5px}.s-scrollbar::-webkit-scrollbar-track{background-color:#eee}.s-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-primary);border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{padding:0px}@media (min-width: 768px){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{max-height:70dvh;overflow-y:auto}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-inner{min-block-size:0}.s-bullet-delivery-header{margin-bottom:1.5rem;text-align:start}.s-bullet-delivery-title{display:block;font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--color-primary-dark)}.s-bullet-delivery-subtitle{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary-dark)}.s-bullet-delivery-tabs{margin-bottom:1.5rem;display:flex;gap:0.5rem}.s-bullet-delivery-tab{display:flex;flex:1 1 0%;cursor:pointer;align-items:center;gap:1rem;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-top:0.5rem;padding-bottom:0.5rem;padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;color:var(--color-primary-dark);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-bullet-delivery-tab:hover{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-tab--active{border-color:var(--color-primary-dark)}.s-bullet-delivery-tab svg{height:0.875rem;width:0.875rem;color:var(--color-primary-dark)}.s-bullet-delivery-tab-icon{display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage{margin-bottom:1rem;display:flex;width:100%;align-items:center;gap:0.5rem;--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;text-align:end;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-left-width:4px;border-left-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-right-width:4px;border-right-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage-text{font-size:0.875rem;line-height:1.25rem;line-height:1.4}.s-bullet-delivery-allocation-out-of-coverage-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-content{margin-bottom:1.5rem;display:grid;gap:1rem}.s-bullet-delivery-content--active{animation:s-bullet-delivery-fade-in 220ms ease-out}.s-bullet-delivery-label{margin-bottom:0.5rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-bullet-delivery-error{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-bullet-delivery-footer{display:grid;gap:0.75rem;text-align:center}.s-bullet-delivery-placeholder{margin-top:1rem;margin-bottom:1rem}.s-bullet-delivery-placeholder.s-placeholder-wrapper{margin-top:1rem !important;margin-bottom:1rem !important}.s-bullet-delivery-label-content{display:inline-flex;align-items:center;gap:0.5rem}.s-bullet-delivery-select-loader{display:inline-flex;align-items:center;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-search-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0.5rem;padding-left:1px;padding-right:1px}.s-bullet-delivery-search-row .s-bullet-delivery-search{min-width:0px;flex:1 1 0%}.s-bullet-delivery-search-row .s-bullet-delivery-location-btn{width:auto;flex-shrink:0}.s-bullet-delivery-field-row{margin-bottom:1rem;display:flex;gap:1rem}.s-bullet-delivery-field-row .s-bullet-delivery-field{margin-bottom:0px;flex:1 1 0%}.s-bullet-delivery-saved-addresses-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.s-bullet-delivery-saved-addresses-empty-icon{margin-bottom:0.75rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-icon svg{height:2rem;width:2rem}.s-bullet-delivery-saved-addresses-empty-title{margin-bottom:0.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-desc{margin-bottom:1.5rem;max-width:24rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-addresses-list{display:flex;max-height:260px;flex-direction:column;overflow-y:auto;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-addresses-list{max-height:220px}}.s-bullet-delivery-address-item{display:flex;cursor:pointer;flex-direction:row;align-items:center;gap:0.75rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.875rem;padding-bottom:0.875rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-address-item:not(.s-bullet-delivery-address-item--disabled):hover{background-color:rgb(249 250 251 / 0.5)}.s-bullet-delivery-address-item--selected{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-address-item--disabled{cursor:not-allowed;opacity:0.6}.s-bullet-delivery-address-item--skeleton{display:flex;cursor:default;align-items:center;gap:0.75rem;border-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem}.s-bullet-delivery-address-item--skeleton .s-bullet-delivery-address-lines{gap:0.5rem}.s-bullet-delivery-address-content{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;justify-content:center;text-align:start}.s-bullet-delivery-address-lines{display:flex;flex-direction:column;gap:0.125rem}.s-bullet-delivery-address-line1{display:block;font-size:1rem;line-height:1.5rem;font-weight:400;line-height:1.375;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-line2{display:block;font-size:0.875rem;line-height:1.25rem;line-height:1.375;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-map-icon{display:grid;height:2.5rem;width:2.5rem;place-content:center}.s-bullet-delivery-address-map-icon svg{height:100%;width:100%}.s-bullet-delivery-skel-radio{flex-shrink:0;border-radius:9999px}.s-bullet-delivery-skel-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-search{position:relative;flex:1 1 0%}.s-bullet-delivery-search-icon{pointer-events:none;position:absolute;top:0px;bottom:0px;left:0px;display:flex;align-items:center;padding-left:0.75rem}.s-bullet-delivery-search-icon:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:auto;right:0px;padding-left:0px;padding-right:0.75rem}.s-bullet-delivery-search-icon svg{height:0.875rem;width:0.875rem;stroke:var(--color-primary)}.s-bullet-delivery-branch-search-wrap{display:flex;min-height:40px;min-width:0px;flex:1 1 0%;flex-direction:row;align-items:stretch;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-bullet-delivery-branch-search-wrap:focus-within{border-color:var(--color-primary-dark);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark)}.s-bullet-delivery-branch-search-icon{pointer-events:none;position:static;display:flex;flex-shrink:0;align-items:center;justify-content:center;padding-inline-start:0.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-branch-search-input{min-height:40px;min-width:0px;flex:1 1 0%;border-radius:0px;border-style:none;background-color:transparent;padding-top:0.5rem;padding-bottom:0.5rem;padding-inline-end:0.75rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-branch-search-input::placeholder{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-input:focus{outline:2px solid transparent;outline-offset:2px;border:none;box-shadow:none;--tw-ring-shadow:none}.s-bullet-delivery-location-btn{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.5rem;border-width:1px;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-location-btn:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-btn:disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-location-btn--full{min-height:40px}.s-bullet-delivery-location-btn--loading{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-icon{height:0.875rem;width:0.875rem;flex-shrink:0}.s-bullet-delivery-location-icon svg{height:100%;width:100%}.s-bullet-delivery-branches-wrap{overflow:hidden}.s-bullet-delivery-branches-list{max-height:min(260px, 32svh);overflow-y:auto;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-branches-list{max-height:220px}}.s-bullet-delivery-branches-loading{overflow:hidden;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-info{display:flex;max-width:6.25rem;flex-direction:column;gap:0.125rem}.s-bullet-delivery-branch-name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:break-word;font-size:0.875rem;line-height:1.25rem;font-weight:500;line-height:1.375;--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-prep{text-align:start;font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time{font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time:where([dir=\"ltr\"],[dir=\"ltr\"] *){text-align:end}.s-bullet-delivery-branch-time:where([dir=\"rtl\"],[dir=\"rtl\"] *){text-align:start}.s-bullet-delivery-branch-map-link{display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:0.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));text-decoration-line:none;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-branch-map-link:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item>.s-bullet-delivery-branch-map-link{position:relative;z-index:10;pointer-events:auto}.s-bullet-delivery-branch-map-link-icon{display:flex;height:0.875rem;width:0.875rem;align-items:center;justify-content:center}.s-bullet-delivery-branch-map-link-icon svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton-title{max-width:100%}.s-bullet-delivery-branch-skeleton-time{justify-self:end}.s-bullet-delivery-branch-item{display:grid;min-width:0px;cursor:pointer;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;text-align:end;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-item:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-item:hover:not(.s-bullet-delivery-branch-item--disabled){--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item--selected{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-branch-item--disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-branch-icon{display:grid;place-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));stroke:var(--color-primary-dark);padding:0.625rem;color:var(--color-primary-dark)}.s-bullet-delivery-branch-icon span{display:block;height:0.875rem;width:0.875rem}.s-bullet-delivery-branch-icon span svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton{display:grid;min-width:0px;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-skeleton:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-skeleton-radio{flex-shrink:0}.s-bullet-delivery-branch-skeleton-icon{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-icon salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-map salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-content{display:flex;min-width:0px;flex-direction:column;gap:0.5rem;overflow:hidden}.s-bullet-delivery-branch-skeleton-content salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-radio{margin-top:2px;height:1rem;width:1rem;flex-shrink:0;cursor:pointer;appearance:none;border-radius:9999px;border-width:2px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-radio:checked{border-color:var(--color-primary-dark);background:radial-gradient(circle,#fff 0,#fff 22%,var(--color-primary) 22%)}.s-bullet-delivery-radio:focus{outline:2px solid transparent;outline-offset:2px}.s-bullet-delivery-radio:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark);--tw-ring-offset-width:2px}.s-bullet-delivery-skeleton{box-sizing:border-box;min-width:0px;max-width:100%;overflow:hidden;padding:1.25rem}.s-bullet-delivery-skeleton salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-skeleton-header{margin-bottom:1.5rem;display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.75rem}.s-bullet-delivery-skeleton-title{display:block;max-width:100%}.s-bullet-delivery-skeleton-subtitle{display:block;max-width:100%}.s-bullet-delivery-skeleton-tabs{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem}.s-bullet-delivery-skeleton-tabs--single{grid-template-columns:repeat(1, minmax(0, 1fr))}.s-bullet-delivery-skeleton-tab{display:flex;align-items:center;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-bullet-delivery-skeleton-tab-icon{display:block;max-width:100%}.s-bullet-delivery-skeleton-tab-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-control{display:block;max-width:100%}.s-bullet-delivery-skeleton-content{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;gap:1rem}.s-bullet-delivery-skeleton-field{display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.5rem}.s-bullet-delivery-skeleton-footer{min-width:0px;max-width:100%}.s-bullet-delivery-add-address-header{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.s-bullet-delivery-add-address-title{display:flex;width:100%;flex:1 1 0%;cursor:pointer;align-items:center;border-style:none;background-color:transparent;padding:0px;text-align:start;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--color-primary)}.s-bullet-delivery-add-address svg{height:2.5rem;width:2.5rem;fill:currentColor}.s-bullet-delivery-allocation-out-of-coverage-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-add-address-form{display:grid;gap:1rem}.s-bullet-delivery-add-address-submit{width:100%}.s-bullet-delivery-form-actions{display:flex;gap:0.75rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding-top:1rem}.s-bullet-delivery-form-actions salla-button{flex:1 1 0%}.s-bullet-delivery-form-actions--single{border-top-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1.25rem}.s-bullet-delivery-form-actions--single salla-button{width:100%;flex:1 1 0%}.s-bullet-delivery-market-warning-overlay{position:fixed;inset:0px;z-index:60;display:flex;align-items:center;justify-content:center;background-color:rgb(0 0 0 / 0.5)}.s-bullet-delivery-market-warning{margin-left:1rem;margin-right:1rem;width:100%;max-width:24rem;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-market-warning-title{margin-bottom:0.75rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-message{margin-bottom:1.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-actions{display:flex;gap:0.75rem}.s-bullet-delivery-market-warning-actions salla-button{flex:1 1 0%}.s-bullet-delivery-cart-view{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem}.s-bullet-delivery-cart-view-info{display:flex;min-width:0px;flex:1 1 0%;align-items:center;gap:0.75rem}.s-bullet-delivery-cart-view-text{display:flex;flex-direction:column;text-align:start}.s-bullet-delivery-cart-view-title{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-cart-view-subtitle{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));margin-block-start:0.125rem}.s-bullet-delivery-cart-view-icon{display:flex;height:3.5rem;width:3.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:1rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));color:var(--color-primary-dark)}.s-bullet-delivery-cart-view-icon svg{height:1.25rem;width:1.25rem;stroke:currentColor}.s-bullet-delivery-cart-view-button{flex-shrink:0;align-self:center}";
215
+ const sallaBulletDeliveryCss = "/*!twlt*/@charset \"UTF-8\";@supports (interpolate-size: allow-keywords) and (block-size: calc-size(auto, size)){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body,.s-bullet-delivery-inner{interpolate-size:allow-keywords}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{overflow:clip;transition:block-size 500ms ease}.s-bullet-delivery-inner{overflow:clip;transition:block-size 500ms ease;block-size:calc-size(auto, size)}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-form-actions.s-bullet-delivery-form-actions--single{padding-bottom:0;flex-direction:column;gap:0}.s-bullet-delivery-addresses-list.s-scrollbar::-webkit-scrollbar-track,.s-bullet-delivery-branches-list.s-scrollbar::-webkit-scrollbar-track{background-color:transparent}.s-bullet-delivery-back-to-list-link{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:100%;margin-top:12px;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:0}.s-bullet-delivery-back-to-list-link i{font-size:12px}.first-letter-cap::first-letter{text-transform:uppercase}.s-bullet-delivery-location-permission-btn{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border:none;border-radius:8px;background:#fdf2f2;cursor:pointer;text-align:start}.s-bullet-delivery-location-permission-icon{display:inline-flex;flex-shrink:0;width:34px;height:34px}.s-bullet-delivery-location-permission-icon svg{width:100%;height:100%}.s-bullet-delivery-location-permission-text{flex:1;min-width:0;font-size:12px;line-height:18px;color:#444}.s-bullet-delivery-location-permission-arrow{flex-shrink:0;font-size:16px;color:#666}.s-bullet-delivery-location-distance-warning{display:flex;align-items:center;gap:10px;width:100%;padding:12px;border-radius:8px;background:#fff8e1;animation:s-bullet-delivery-fade-in 200ms ease}.s-bullet-delivery-location-distance-warning-icon{display:inline-flex;flex-shrink:0;width:34px;height:34px}.s-bullet-delivery-location-distance-warning-icon svg{width:100%;height:100%}.s-bullet-delivery-location-distance-warning-text{flex:1;min-width:0;font-size:12px;line-height:18px;color:#444}.s-bullet-delivery-map-container{width:100%;height:320px;border-radius:8px;overflow:hidden;margin-bottom:12px}.s-bullet-delivery-map-container gmap-map{display:block;width:100%;height:100%}.s-bullet-delivery-address-confirm{display:flex;flex-direction:column;gap:20px;animation:s-bullet-delivery-fade-in 200ms ease}.s-bullet-delivery-address-confirm-card{display:flex;align-items:center;gap:12px;border:1px solid #eee;border-radius:6px;padding:12px}.s-bullet-delivery-address-map-icon{overflow:hidden;border-radius:9px}.s-bullet-delivery-address-confirm-details{display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0}.s-bullet-delivery-address-confirm-label{font-size:12px;line-height:16px;color:#666}.s-bullet-delivery-address-confirm-text{font-size:14px;font-weight:700;color:#333;margin:0;word-break:break-word}.s-bullet-delivery-address-confirm-description{display:flex;flex-direction:column;gap:8px}.s-bullet-delivery-address-confirm-description-label{font-size:14px;font-weight:500;color:#444}.s-bullet-delivery-address-confirm-description-optional{font-weight:400;color:#999;margin-inline-start:4px}.s-bullet-delivery-address-confirm-description-input{width:100%;border:1px solid #eee;border-radius:8px;padding:10px 12px;font-size:14px;margin-bottom:16px}.s-bullet-delivery-login-prompt{display:block;width:100%;text-align:center;background:none;border:none;color:var(--color-primary, #004956);font-size:14px;font-weight:500;cursor:pointer;padding:12px 0}@keyframes s-bullet-delivery-fade-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.branch-status-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;max-height:20px;border-radius:20px;font-size:9px;font-weight:500;border:1px solid transparent;white-space:nowrap}.branch-status-badge.green{color:#43a047;background:#e8f5e9;border-color:#43a047}.branch-status-badge.blue{color:#1e88e5;background:#e3f2fd;border-color:#1e88e5}.branch-status-badge.red{color:#e53935;background:#fdf2f2;border-color:#e53935}.branch-status-badge.yellow{color:#f9a825;background:#fff8e1;border-color:#f9a825}.branch-status-badge.gray{color:#757575;background:#f5f5f5;border-color:#757575}.branch-status-badge.brown{color:#6d4c41;background:#efebe9;border-color:#6d4c41}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0}.visible{visibility:visible}.static{position:static}.mb-1{margin-bottom:0.25rem}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.gap-1{gap:0.25rem}.text-start{text-align:start}.\\!text-blue-600{--tw-text-opacity:1 !important;color:rgb(37 99 235 / var(--tw-text-opacity, 1)) !important}.text-red-500{--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-hidden{display:none}.form-input{height:2.5rem;width:100%;border-radius:0.375rem;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.form-input:focus{border-color:var(--color-primary);--tw-ring-color:transparent}.form-input:is(.dark *){--tw-border-opacity:1;border-color:rgb(75 85 99 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(75 85 99 / var(--tw-bg-opacity, 1))}.form-input:focus:is(.dark *){border-color:var(--color-primary)}@media (min-width: 640px){.form-input{font-size:0.875rem;line-height:1.25rem}}.\\!btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.\\!btn:hover{opacity:0.8}.btn{display:inline-flex;flex:1 1 0%;align-items:center;justify-content:center;white-space:nowrap;border-radius:0.375rem;padding-left:1.5rem;padding-right:1.5rem;padding-bottom:0.625rem;padding-top:0.5rem;font-size:0.875rem;line-height:1.25rem;font-weight:700;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.btn:hover{opacity:0.8}.spinner-loader.reverse{border-right-color:#9f7171 !important;background-color:#f98181}.s-hidden{display:none}.s-scrollbar::-webkit-scrollbar{width:5px}.s-scrollbar::-webkit-scrollbar-track{background-color:#eee}.s-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-primary);border-radius:10px;-webkit-border-radius:10px;-moz-border-radius:10px;-ms-border-radius:10px;-o-border-radius:10px}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{padding:0px}@media (min-width: 768px){.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body{max-height:70dvh;overflow-y:auto}}.s-bullet-delivery .s-bullet-delivery-modal .s-modal-body:has(.s-searchable-dropdown--open){overflow:visible !important}.s-bullet-delivery-inner{min-block-size:0}.s-bullet-delivery-header{margin-bottom:1.5rem;text-align:start}.s-bullet-delivery-title{display:block;font-size:1.25rem;line-height:1.75rem;font-weight:700;color:var(--color-primary-dark)}.s-bullet-delivery-subtitle{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;color:var(--color-primary-dark)}.s-bullet-delivery-tabs{margin-bottom:1.5rem;display:flex;gap:0.5rem}.s-bullet-delivery-tab{display:flex;flex:1 1 0%;cursor:pointer;align-items:center;gap:1rem;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-top:0.5rem;padding-bottom:0.5rem;padding-left:0.75rem;padding-right:0.75rem;font-size:0.875rem;line-height:1.25rem;font-weight:500;color:var(--color-primary-dark);transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:200ms}.s-bullet-delivery-tab:hover{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-tab--active{border-color:var(--color-primary-dark)}.s-bullet-delivery-tab svg{height:0.875rem;width:0.875rem;color:var(--color-primary-dark)}.s-bullet-delivery-tab-icon{display:flex;height:2rem;width:2rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage{margin-bottom:1rem;display:flex;width:100%;align-items:center;gap:0.5rem;--tw-bg-opacity:1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1));padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;text-align:end;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"ltr\"],[dir=\"ltr\"] *){border-left-width:4px;border-left-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage:where([dir=\"rtl\"],[dir=\"rtl\"] *){border-right-width:4px;border-right-color:rgb(239 68 68 / 0.5)}.s-bullet-delivery-allocation-out-of-coverage-text{font-size:0.875rem;line-height:1.25rem;line-height:1.4}.s-bullet-delivery-allocation-out-of-coverage-icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;--tw-text-opacity:1;color:rgb(127 29 29 / var(--tw-text-opacity, 1))}.s-bullet-delivery-content{margin-bottom:1.5rem;display:grid;gap:1rem}.s-bullet-delivery-content--active{animation:s-bullet-delivery-fade-in 220ms ease-out}.s-bullet-delivery-label{margin-bottom:0.5rem;display:block;font-size:0.875rem;line-height:1.25rem;font-weight:500;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.s-bullet-delivery-error{margin-top:0.25rem;display:block;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.s-bullet-delivery-footer{display:grid;gap:0.75rem;text-align:center}.s-bullet-delivery-placeholder{margin-top:1rem;margin-bottom:1rem}.s-bullet-delivery-placeholder.s-placeholder-wrapper{margin-top:1rem !important;margin-bottom:1rem !important}.s-bullet-delivery-label-content{display:inline-flex;align-items:center;gap:0.5rem}.s-bullet-delivery-select-loader{display:inline-flex;align-items:center;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-search-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:0.5rem;padding-left:1px;padding-right:1px}.s-bullet-delivery-search-row .s-bullet-delivery-search{min-width:0px;flex:1 1 0%}.s-bullet-delivery-search-row .s-bullet-delivery-location-btn{width:auto;flex-shrink:0}.s-bullet-delivery-field-row{margin-bottom:1rem;display:flex;gap:1rem}.s-bullet-delivery-field-row .s-bullet-delivery-field{margin-bottom:0px;flex:1 1 0%}.s-bullet-delivery-saved-addresses-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.s-bullet-delivery-saved-addresses-empty-icon{margin-bottom:0.75rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-icon svg{height:2rem;width:2rem}.s-bullet-delivery-saved-addresses-empty-title{margin-bottom:0.5rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.s-bullet-delivery-saved-addresses-empty-desc{margin-bottom:1.5rem;max-width:24rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-addresses-list{display:flex;max-height:260px;flex-direction:column;overflow-y:auto;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-addresses-list{max-height:220px}}.s-bullet-delivery-address-item{display:flex;cursor:pointer;flex-direction:row;align-items:center;gap:0.75rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.875rem;padding-bottom:0.875rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-address-item:not(.s-bullet-delivery-address-item--disabled):hover{background-color:rgb(249 250 251 / 0.5)}.s-bullet-delivery-address-item--selected{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-address-item--disabled{cursor:not-allowed;opacity:0.6}.s-bullet-delivery-address-item--skeleton{display:flex;cursor:default;align-items:center;gap:0.75rem;border-radius:0.75rem;border-width:1px;border-bottom-width:0px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:1rem}.s-bullet-delivery-address-item--skeleton .s-bullet-delivery-address-lines{gap:0.5rem}.s-bullet-delivery-address-content{display:flex;min-width:0px;flex:1 1 0%;flex-direction:column;justify-content:center;text-align:start}.s-bullet-delivery-address-lines{display:flex;flex-direction:column;gap:0.125rem}.s-bullet-delivery-address-line1{display:block;font-size:1rem;line-height:1.5rem;font-weight:400;line-height:1.375;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-line2{display:block;font-size:0.875rem;line-height:1.25rem;line-height:1.375;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-address-map-icon{display:grid;height:2.5rem;width:2.5rem;place-content:center}.s-bullet-delivery-address-map-icon svg{height:100%;width:100%}.s-bullet-delivery-skel-radio{flex-shrink:0;border-radius:9999px}.s-bullet-delivery-skel-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-search{position:relative;flex:1 1 0%}.s-bullet-delivery-search-icon{pointer-events:none;position:absolute;top:0px;bottom:0px;left:0px;display:flex;align-items:center;padding-left:0.75rem}.s-bullet-delivery-search-icon:where([dir=\"rtl\"],[dir=\"rtl\"] *){left:auto;right:0px;padding-left:0px;padding-right:0.75rem}.s-bullet-delivery-search-icon svg{height:0.875rem;width:0.875rem;stroke:var(--color-primary)}.s-bullet-delivery-branch-search-wrap{display:flex;min-height:40px;min-width:0px;flex:1 1 0%;flex-direction:row;align-items:stretch;overflow:hidden;border-radius:0.375rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.s-bullet-delivery-branch-search-wrap:focus-within{border-color:var(--color-primary-dark);--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark)}.s-bullet-delivery-branch-search-icon{pointer-events:none;position:static;display:flex;flex-shrink:0;align-items:center;justify-content:center;padding-inline-start:0.5rem;--tw-text-opacity:1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-branch-search-input{min-height:40px;min-width:0px;flex:1 1 0%;border-radius:0px;border-style:none;background-color:transparent;padding-top:0.5rem;padding-bottom:0.5rem;padding-inline-end:0.75rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1));--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-branch-search-input::placeholder{--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-search-input:focus{outline:2px solid transparent;outline-offset:2px;border:none;box-shadow:none;--tw-ring-shadow:none}.s-bullet-delivery-location-btn{display:flex;flex-shrink:0;cursor:pointer;align-items:center;justify-content:center;gap:0.5rem;border-radius:0.5rem;border-width:1px;padding-left:1rem;padding-right:1rem;padding-top:0.5rem;padding-bottom:0.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(55 65 81 / var(--tw-text-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-location-btn:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-btn:disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-location-btn--full{min-height:40px}.s-bullet-delivery-location-btn--loading{--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-location-icon{height:0.875rem;width:0.875rem;flex-shrink:0}.s-bullet-delivery-location-icon svg{height:100%;width:100%}.s-bullet-delivery-branches-wrap{overflow:hidden}.s-bullet-delivery-branches-list{max-height:min(260px, 32svh);overflow-y:auto;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}@media (min-width: 768px){.s-bullet-delivery-branches-list{max-height:220px}}.s-bullet-delivery-branches-loading{overflow:hidden;border-radius:0.5rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-info{display:flex;max-width:6.25rem;flex-direction:column;gap:0.125rem}.s-bullet-delivery-branch-name{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:break-word;font-size:0.875rem;line-height:1.25rem;font-weight:500;line-height:1.375;--tw-text-opacity:1;color:rgb(24 24 27 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-prep{text-align:start;font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time{font-size:0.875rem;line-height:1.25rem;font-weight:400;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.s-bullet-delivery-branch-time:where([dir=\"ltr\"],[dir=\"ltr\"] *){text-align:end}.s-bullet-delivery-branch-time:where([dir=\"rtl\"],[dir=\"rtl\"] *){text-align:start}.s-bullet-delivery-branch-map-link{display:flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:0.5rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding:0.5rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1));text-decoration-line:none;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-branch-map-link:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item>.s-bullet-delivery-branch-map-link{position:relative;z-index:10;pointer-events:auto}.s-bullet-delivery-branch-map-link-icon{display:flex;height:0.875rem;width:0.875rem;align-items:center;justify-content:center}.s-bullet-delivery-branch-map-link-icon svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton-title{max-width:100%}.s-bullet-delivery-branch-skeleton-time{justify-self:end}.s-bullet-delivery-branch-item{display:grid;min-width:0px;cursor:pointer;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;text-align:end;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-item:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-item:hover:not(.s-bullet-delivery-branch-item--disabled){--tw-bg-opacity:1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.s-bullet-delivery-branch-item--selected{background-color:color-mix(in srgb,var(--color-primary) 5%,transparent)}.s-bullet-delivery-branch-item--disabled{cursor:not-allowed;opacity:0.5}.s-bullet-delivery-branch-icon{display:grid;place-content:center;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));stroke:var(--color-primary-dark);padding:0.625rem;color:var(--color-primary-dark)}.s-bullet-delivery-branch-icon span{display:block;height:0.875rem;width:0.875rem}.s-bullet-delivery-branch-icon span svg{height:100%;width:100%}.s-bullet-delivery-branch-skeleton{display:grid;min-width:0px;align-items:center;gap:0.5rem;border-bottom-width:1px;--tw-border-opacity:1;border-bottom-color:rgb(229 231 235 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;grid-template-columns:auto auto auto 1fr auto}.s-bullet-delivery-branch-skeleton:last-child{border-bottom-width:0px}.s-bullet-delivery-branch-skeleton-radio{flex-shrink:0}.s-bullet-delivery-branch-skeleton-icon{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-icon salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-map{flex-shrink:0;border-radius:0.75rem}.s-bullet-delivery-branch-skeleton-map salla-skeleton{display:block}.s-bullet-delivery-branch-skeleton-content{display:flex;min-width:0px;flex-direction:column;gap:0.5rem;overflow:hidden}.s-bullet-delivery-branch-skeleton-content salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-radio{margin-top:2px;height:1rem;width:1rem;flex-shrink:0;cursor:pointer;appearance:none;border-radius:9999px;border-width:2px;--tw-border-opacity:1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1));--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:150ms}.s-bullet-delivery-radio:checked{border-color:var(--color-primary-dark);background:radial-gradient(circle,#fff 0,#fff 22%,var(--color-primary) 22%)}.s-bullet-delivery-radio:focus{outline:2px solid transparent;outline-offset:2px}.s-bullet-delivery-radio:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow, 0 0 #0000);--tw-ring-color:var(--color-primary-dark);--tw-ring-offset-width:2px}.s-bullet-delivery-skeleton{box-sizing:border-box;min-width:0px;max-width:100%;overflow:hidden;padding:1.25rem}.s-bullet-delivery-skeleton salla-skeleton{min-width:0px;max-width:100%}.s-bullet-delivery-skeleton-header{margin-bottom:1.5rem;display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.75rem}.s-bullet-delivery-skeleton-title{display:block;max-width:100%}.s-bullet-delivery-skeleton-subtitle{display:block;max-width:100%}.s-bullet-delivery-skeleton-tabs{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;grid-template-columns:repeat(2, minmax(0, 1fr));gap:0.5rem}.s-bullet-delivery-skeleton-tabs--single{grid-template-columns:repeat(1, minmax(0, 1fr))}.s-bullet-delivery-skeleton-tab{display:flex;align-items:center;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-left:1rem;padding-right:1rem;padding-top:0.75rem;padding-bottom:0.75rem;transition-property:color, background-color, border-color, text-decoration-color, fill, stroke;transition-timing-function:cubic-bezier(0.4, 0, 0.2, 1);transition-duration:300ms}.s-bullet-delivery-skeleton-tab-icon{display:block;max-width:100%}.s-bullet-delivery-skeleton-tab-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-label{display:block;max-width:100%}.s-bullet-delivery-skeleton-field-control{display:block;max-width:100%}.s-bullet-delivery-skeleton-content{margin-bottom:1.5rem;display:grid;min-width:0px;max-width:100%;gap:1rem}.s-bullet-delivery-skeleton-field{display:flex;min-width:0px;max-width:100%;flex-direction:column;align-items:flex-start;gap:0.5rem}.s-bullet-delivery-skeleton-footer{min-width:0px;max-width:100%}.s-bullet-delivery-add-address-header{margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem}.s-bullet-delivery-add-address-title{display:flex;width:100%;flex:1 1 0%;cursor:pointer;align-items:center;border-style:none;background-color:transparent;padding:0px;text-align:start;font-size:1.125rem;line-height:1.75rem;font-weight:700;color:var(--color-primary)}.s-bullet-delivery-add-address svg{height:2.5rem;width:2.5rem;fill:currentColor}.s-bullet-delivery-allocation-out-of-coverage-icon svg{height:1.25rem;width:1.25rem}.s-bullet-delivery-add-address-form{display:grid;gap:1rem}.s-bullet-delivery-add-address-submit{width:100%}.s-bullet-delivery-form-actions{display:flex;gap:0.75rem;border-top-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246 / var(--tw-border-opacity, 1));padding-top:1rem}.s-bullet-delivery-form-actions salla-button{flex:1 1 0%}.s-bullet-delivery-form-actions--single{border-top-width:1px;--tw-border-opacity:1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1));padding-top:1.25rem}.s-bullet-delivery-form-actions--single salla-button{width:100%;flex:1 1 0%}.s-bullet-delivery-market-warning-overlay{position:fixed;inset:0px;z-index:60;display:flex;align-items:center;justify-content:center;background-color:rgb(0 0 0 / 0.5)}.s-bullet-delivery-market-warning{margin-left:1rem;margin-right:1rem;width:100%;max-width:24rem;border-radius:0.75rem;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1.5rem;--tw-shadow:0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)}.s-bullet-delivery-market-warning-title{margin-bottom:0.75rem;font-size:1.125rem;line-height:1.75rem;font-weight:700;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-message{margin-bottom:1.5rem;font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.s-bullet-delivery-market-warning-actions{display:flex;gap:0.75rem}.s-bullet-delivery-market-warning-actions salla-button{flex:1 1 0%}.s-bullet-delivery-cart-view{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:0.75rem;border-width:1px;--tw-bg-opacity:1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));padding:1rem}.s-bullet-delivery-cart-view-info{display:flex;min-width:0px;flex:1 1 0%;align-items:center;gap:0.75rem}.s-bullet-delivery-cart-view-text{display:flex;flex-direction:column;text-align:start}.s-bullet-delivery-cart-view-title{font-size:1rem;line-height:1.5rem;font-weight:600;--tw-text-opacity:1;color:rgb(17 24 39 / var(--tw-text-opacity, 1))}.s-bullet-delivery-cart-view-subtitle{font-size:0.875rem;line-height:1.25rem;--tw-text-opacity:1;color:rgb(107 114 128 / var(--tw-text-opacity, 1));margin-block-start:0.125rem}.s-bullet-delivery-cart-view-icon{display:flex;height:3.5rem;width:3.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:1rem;--tw-bg-opacity:1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1));color:var(--color-primary-dark)}.s-bullet-delivery-cart-view-icon svg{height:1.25rem;width:1.25rem;stroke:currentColor}.s-bullet-delivery-cart-view-button{flex-shrink:0;align-self:center}.s-bullet-delivery-location-permission-btn{display:flex;width:100%;cursor:pointer;align-items:center;gap:0.625rem;border-radius:0.5rem;border-width:0px;padding:0.75rem;text-align:start;background:#fdf2f2}.s-bullet-delivery-location-permission-icon{display:inline-flex;height:34px;width:34px;flex-shrink:0}.s-bullet-delivery-location-permission-icon svg{height:100%;width:100%}.s-bullet-delivery-location-permission-text{min-width:0px;flex:1 1 0%;font-size:0.75rem;line-height:1rem;line-height:18px;--tw-text-opacity:1;color:rgb(68 68 68 / var(--tw-text-opacity, 1))}.s-bullet-delivery-location-permission-arrow{flex-shrink:0;font-size:1rem;line-height:1.5rem;--tw-text-opacity:1;color:rgb(102 102 102 / var(--tw-text-opacity, 1))}.s-bullet-delivery-location-distance-warning{display:flex;width:100%;animation:s-bullet-delivery-fade-in 200ms ease;align-items:center;gap:0.625rem;border-radius:0.5rem;padding:0.75rem;background:#fff8e1}.s-bullet-delivery-location-distance-warning-icon{display:inline-flex;height:34px;width:34px;flex-shrink:0}.s-bullet-delivery-location-distance-warning-icon svg{height:100%;width:100%}.s-bullet-delivery-location-distance-warning-text{min-width:0px;flex:1 1 0%;font-size:0.75rem;line-height:1rem;line-height:18px;--tw-text-opacity:1;color:rgb(68 68 68 / var(--tw-text-opacity, 1))}";
59
216
 
60
217
  const BRANCH_SEARCH_DEBOUNCE_MS = 1000;
61
218
  const GEOLOCATION_TIMEOUT = 10000;
@@ -176,6 +333,14 @@ const SallaBulletDelivery = class {
176
333
  /** True while reverse-geocoding a map-click/geolocation pick (no place from the map component itself). */
177
334
  this.reverseGeocoding = false;
178
335
  this.confirming = false;
336
+ /** Location-sharing permission, watched so the map-view notice follows it live (SHPD-10429). */
337
+ this.locationPermission = 'unknown';
338
+ this.stopWatchingLocationPermission = null;
339
+ /** False until the Permissions API watch reports at least once — gates auto-locate so we don't
340
+ * consume the browser prompt before we know whether the notice should own it. */
341
+ this.locationPermissionResolved = false;
342
+ /** Customer's live position, kept separate from the selected delivery pin. */
343
+ this.liveLocation = null;
179
344
  this.newAddressForm = {
180
345
  ...SallaBulletDelivery.INITIAL_ADDRESS_FORM,
181
346
  };
@@ -285,23 +450,46 @@ const SallaBulletDelivery = class {
285
450
  this.gmapRef.resize();
286
451
  }
287
452
  this.updateLocationBias();
288
- // Auto-locate the customer so the map never opens "empty" — matches checkout map-page
289
- // (getCurrentLocation(true) pans to the resolved position). Skip if a location is already set
290
- // (e.g. returning from the confirm step). Falls back silently to mapInitialCenter if denied.
291
- if (!this.autoGeolocationTriggered && !this.hasMapLocation() && this.gmapRef) {
292
- const getCurrentLocation = this.gmapRef.getCurrentLocation;
293
- if (typeof getCurrentLocation === 'function') {
294
- this.autoGeolocationTriggered = true;
295
- try {
296
- const result = getCurrentLocation.call(this.gmapRef, true);
297
- if (result && typeof result.catch === 'function') {
298
- result.catch((err) => log('Auto geolocation failed', err));
299
- }
300
- }
301
- catch (err) {
302
- log('Auto geolocation threw', err);
303
- }
304
- }
453
+ this.locateOnMap();
454
+ if (this.locationPermission === 'granted' && !this.liveLocation) {
455
+ void this.handleLocationPermissionChanged('granted');
456
+ }
457
+ };
458
+ /** Tap on the location-permission notice: prompt (or deep-link into the app's settings). */
459
+ this.handleLocationPermissionRequest = async () => {
460
+ const outcome = await requestLocationPermission();
461
+ if (outcome.handledByApp)
462
+ return; // native app owns the screen from here
463
+ await this.handleLocationPermissionChanged(outcome.state, outcome.position);
464
+ if (outcome.state === 'granted')
465
+ this.locateOnMap(true);
466
+ };
467
+ this.handleLocationPermissionChanged = async (state, knownPosition) => {
468
+ this.locationPermission = state;
469
+ if (state !== 'granted') {
470
+ this.liveLocation = null;
471
+ return;
472
+ }
473
+ if (knownPosition) {
474
+ this.liveLocation = knownPosition;
475
+ return;
476
+ }
477
+ // Only the map view reads liveLocation — skip the GPS fix until it opens (handleMapReady catches up).
478
+ if (!navigator.geolocation || !this.mapReady)
479
+ return;
480
+ try {
481
+ const position = await new Promise((resolve, reject) => navigator.geolocation.getCurrentPosition(resolve, reject, {
482
+ enableHighAccuracy: true,
483
+ timeout: GEOLOCATION_TIMEOUT,
484
+ maximumAge: 0,
485
+ }));
486
+ this.liveLocation = {
487
+ lat: position.coords.latitude,
488
+ lng: position.coords.longitude,
489
+ };
490
+ }
491
+ catch (error) {
492
+ log('Live location capture failed', error);
305
493
  }
306
494
  };
307
495
  // ─── End Map methods ───
@@ -1403,6 +1591,45 @@ const SallaBulletDelivery = class {
1403
1591
  : this.mapInitialCenter;
1404
1592
  this.gmapRef.autocompleteLocationBias = { center, radius: 500000 };
1405
1593
  }
1594
+ /**
1595
+ * Auto-locate the customer so the map never opens "empty" — matches checkout map-page
1596
+ * (getCurrentLocation(true) pans to the resolved position). Skipped when a location is already
1597
+ * set (e.g. returning from the confirm step). Falls back silently to mapInitialCenter if denied.
1598
+ *
1599
+ * When location permission is still missing (`prompt` / `denied`), we deliberately do NOT call
1600
+ * into geolocation here — that would consume the browser's one-shot permission dialog before the
1601
+ * notice tap can re-trigger it (SHPD-10429). Auto-locate runs once permission is granted
1602
+ * (via the watch or a successful notice tap), or when the Permissions API is unavailable
1603
+ * (`unknown`) because that surface never shows the notice.
1604
+ *
1605
+ * @param force re-locates even after the one-per-flow auto attempt — used once the customer
1606
+ * grants the permission from the notice, so the map catches up without a manual refresh.
1607
+ */
1608
+ locateOnMap(force = false) {
1609
+ if (!this.gmapRef)
1610
+ return;
1611
+ if (!force) {
1612
+ if (this.autoGeolocationTriggered || this.hasMapLocation())
1613
+ return;
1614
+ // Wait until we know the permission state, then leave prompt/denied for the notice tap.
1615
+ if (!this.locationPermissionResolved || isLocationPermissionMissing(this.locationPermission)) {
1616
+ return;
1617
+ }
1618
+ }
1619
+ const getCurrentLocation = this.gmapRef.getCurrentLocation;
1620
+ if (typeof getCurrentLocation !== 'function')
1621
+ return;
1622
+ this.autoGeolocationTriggered = true;
1623
+ try {
1624
+ const result = getCurrentLocation.call(this.gmapRef, true);
1625
+ if (result && typeof result.catch === 'function') {
1626
+ result.catch((err) => log('Auto geolocation failed', err));
1627
+ }
1628
+ }
1629
+ catch (err) {
1630
+ log('Auto geolocation threw', err);
1631
+ }
1632
+ }
1406
1633
  hasMapLocation() {
1407
1634
  return this.mapLocationData?.lat != null && this.mapLocationData?.lng != null;
1408
1635
  }
@@ -2387,10 +2614,34 @@ const SallaBulletDelivery = class {
2387
2614
  const address = this.mapLocationData?.formattedAddress ?? '';
2388
2615
  return (index.h("div", { class: "s-bullet-delivery-address-confirm" }, index.h("div", { class: "s-bullet-delivery-address-confirm-card" }, index.h("span", { class: "s-bullet-delivery-address-map-icon", innerHTML: MiniMap, "aria-hidden": "true" }), index.h("div", { class: "s-bullet-delivery-address-confirm-details" }, index.h("span", { class: "s-bullet-delivery-address-confirm-label" }, Salla.lang.get('pages.checkout.selected_address')), index.h("p", { class: "s-bullet-delivery-address-confirm-text" }, address))), index.h("div", { class: "s-bullet-delivery-address-confirm-description" }, index.h("label", { class: "s-bullet-delivery-address-confirm-description-label" }, Salla.lang.get('pages.checkout.address_description'), index.h("span", { class: "s-bullet-delivery-address-confirm-description-optional" }, Salla.lang.get('common.elements.optional'))), index.h("input", { type: "text", class: "s-bullet-delivery-address-confirm-description-input form-input", placeholder: Salla.lang.get('pages.checkout.address_description_placeholder'), value: this.addressDescription, onInput: (e) => { this.addressDescription = e.target.value; } }))));
2389
2616
  }
2617
+ /** Notice prompting the customer to allow location sharing; only while it isn't granted. */
2618
+ renderLocationPermissionNotice() {
2619
+ if (!isLocationPermissionMissing(this.locationPermission))
2620
+ return null;
2621
+ return (index.h(LocationPermissionNotice, { isRTL: this.isRTL, onActivate: this.handleLocationPermissionRequest }));
2622
+ }
2623
+ renderLocationDistanceWarning() {
2624
+ const selectedLocation = this.mapLocationData;
2625
+ if (this.locationPermission !== 'granted' ||
2626
+ !this.liveLocation ||
2627
+ selectedLocation?.lat == null ||
2628
+ selectedLocation?.lng == null) {
2629
+ return null;
2630
+ }
2631
+ const distanceKm = calculateLocationDistanceKm(this.liveLocation, {
2632
+ lat: selectedLocation.lat,
2633
+ lng: selectedLocation.lng,
2634
+ });
2635
+ if (distanceKm <= 0.5)
2636
+ return null;
2637
+ return index.h(LocationDistanceWarning, { distanceKm: distanceKm, isRTL: this.isRTL });
2638
+ }
2390
2639
  renderGuestDeliveryForm() {
2391
2640
  if (this.isMapModeAvailable) {
2392
2641
  return [
2393
2642
  this.renderMapSection(),
2643
+ this.renderLocationPermissionNotice(),
2644
+ this.renderLocationDistanceWarning(),
2394
2645
  this.hasMapLocation() ? this.renderAddressConfirmation() : null,
2395
2646
  ];
2396
2647
  }
@@ -2651,6 +2902,17 @@ const SallaBulletDelivery = class {
2651
2902
  this.closeHandler = this.close.bind(this);
2652
2903
  Salla.event.on("salla::bullet-delivery.modal.close.requested", this.closeHandler);
2653
2904
  this.isRTL = Salla.config.get("theme.is_rtl");
2905
+ // Reading the permission never prompts, so it's safe to watch from here — the map view then
2906
+ // renders the notice (or not) on its first paint instead of a frame later.
2907
+ this.stopWatchingLocationPermission = watchLocationPermission(state => {
2908
+ this.locationPermissionResolved = true;
2909
+ void this.handleLocationPermissionChanged(state).then(() => {
2910
+ // Permission often resolves after the map is ready — catch up for granted / unknown
2911
+ // so we still auto-pan without having consumed the prompt for prompt/denied.
2912
+ if (this.mapReady && !isLocationPermissionMissing(state))
2913
+ this.locateOnMap();
2914
+ });
2915
+ });
2654
2916
  this.authLoggedInHandler = async () => {
2655
2917
  if (this.cartSubmitConfirmationPending) {
2656
2918
  await this.handlePendingSubmitAfterLogin();
@@ -2695,7 +2957,7 @@ const SallaBulletDelivery = class {
2695
2957
  return null; // no-op when disabled
2696
2958
  return (index.h(index.Host, { class: "s-bullet-delivery" }, index.h("salla-modal", { ref: modal => {
2697
2959
  this.modal = modal;
2698
- }, isClosable: !this.isRequired && !this.shouldForceNonClosable(), class: "s-bullet-delivery-modal", width: "sm" }, index.h("div", { class: "s-bullet-delivery-inner" }, index.h("div", { class: "s-bullet-delivery-header" }, index.h("h2", { class: "s-bullet-delivery-title" }, this.activeTab === 'address'
2960
+ }, isClosable: !this.isRequired && !this.shouldForceNonClosable(), class: "s-bullet-delivery-modal", width: "sm", "data-testid": "salla-bullet-delivery-modal" }, index.h("div", { class: "s-bullet-delivery-inner" }, index.h("div", { class: "s-bullet-delivery-header" }, index.h("h2", { class: "s-bullet-delivery-title" }, this.activeTab === 'address'
2699
2961
  ? Salla.lang.get('blocks.home.add_address_for_order_delivery')
2700
2962
  : Salla.lang.get('blocks.home.choose_branch_for_order_pickup')), index.h("p", { class: "s-bullet-delivery-subtitle" }, this.activeTab === 'address'
2701
2963
  ? Salla.lang.get('blocks.home.products_available_for_delivery_shown_while_shopping')
@@ -2770,6 +3032,10 @@ const SallaBulletDelivery = class {
2770
3032
  }
2771
3033
  disconnectedCallback() {
2772
3034
  this.componentReady = false;
3035
+ if (this.stopWatchingLocationPermission) {
3036
+ this.stopWatchingLocationPermission();
3037
+ this.stopWatchingLocationPermission = null;
3038
+ }
2773
3039
  Salla.event.off("salla::bullet-delivery.modal.open.requested", this.bulletDeliveryOpenHandler);
2774
3040
  if (this.closeHandler) {
2775
3041
  Salla.event.off("salla::bullet-delivery.modal.close.requested", this.closeHandler);