snice 4.20.1 → 4.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (362) hide show
  1. package/adapters/react/drawer.d.ts +4 -0
  2. package/adapters/react/drawer.d.ts.map +1 -1
  3. package/adapters/react/drawer.js +1 -1
  4. package/adapters/react/drawer.js.map +1 -1
  5. package/adapters/react/drawer.tsx +5 -1
  6. package/adapters/react/notification-center.d.ts +1 -0
  7. package/adapters/react/notification-center.d.ts.map +1 -1
  8. package/adapters/react/notification-center.js +1 -1
  9. package/adapters/react/notification-center.js.map +1 -1
  10. package/adapters/react/notification-center.tsx +2 -1
  11. package/dist/cdn/accordion/snice-accordion.js +1 -1
  12. package/dist/cdn/accordion/snice-accordion.min.js +1 -1
  13. package/dist/cdn/activity-feed/snice-activity-feed.js +1 -1
  14. package/dist/cdn/activity-feed/snice-activity-feed.min.js +1 -1
  15. package/dist/cdn/alert/snice-alert.js +1 -1
  16. package/dist/cdn/alert/snice-alert.min.js +1 -1
  17. package/dist/cdn/app-tiles/README.md +2 -2
  18. package/dist/cdn/app-tiles/snice-app-tiles.js +2 -2
  19. package/dist/cdn/app-tiles/snice-app-tiles.js.map +1 -1
  20. package/dist/cdn/app-tiles/snice-app-tiles.min.js +3 -3
  21. package/dist/cdn/app-tiles/snice-app-tiles.min.js.map +1 -1
  22. package/dist/cdn/approval-flow/snice-approval-flow.js +1 -1
  23. package/dist/cdn/approval-flow/snice-approval-flow.min.js +1 -1
  24. package/dist/cdn/audio-recorder/snice-audio-recorder.js +1 -1
  25. package/dist/cdn/audio-recorder/snice-audio-recorder.min.js +1 -1
  26. package/dist/cdn/availability/snice-availability.js +1 -1
  27. package/dist/cdn/availability/snice-availability.min.js +1 -1
  28. package/dist/cdn/avatar/snice-avatar.js +1 -1
  29. package/dist/cdn/avatar/snice-avatar.min.js +1 -1
  30. package/dist/cdn/avatar-group/snice-avatar-group.js +1 -1
  31. package/dist/cdn/avatar-group/snice-avatar-group.min.js +1 -1
  32. package/dist/cdn/badge/snice-badge.js +1 -1
  33. package/dist/cdn/badge/snice-badge.min.js +1 -1
  34. package/dist/cdn/banner/snice-banner.js +1 -1
  35. package/dist/cdn/banner/snice-banner.min.js +1 -1
  36. package/dist/cdn/book/snice-book.js +1 -1
  37. package/dist/cdn/book/snice-book.min.js +1 -1
  38. package/dist/cdn/booking/snice-booking.js +1 -1
  39. package/dist/cdn/booking/snice-booking.min.js +1 -1
  40. package/dist/cdn/breadcrumbs/snice-breadcrumbs.js +1 -1
  41. package/dist/cdn/breadcrumbs/snice-breadcrumbs.min.js +1 -1
  42. package/dist/cdn/button/snice-button.js +1 -1
  43. package/dist/cdn/button/snice-button.min.js +1 -1
  44. package/dist/cdn/calendar/snice-calendar.js +1 -1
  45. package/dist/cdn/calendar/snice-calendar.min.js +1 -1
  46. package/dist/cdn/camera/snice-camera.js +1 -1
  47. package/dist/cdn/camera/snice-camera.min.js +1 -1
  48. package/dist/cdn/camera-annotate/snice-camera-annotate.js +1 -1
  49. package/dist/cdn/camera-annotate/snice-camera-annotate.min.js +1 -1
  50. package/dist/cdn/candlestick/snice-candlestick.js +1 -1
  51. package/dist/cdn/candlestick/snice-candlestick.min.js +1 -1
  52. package/dist/cdn/card/snice-card.js +1 -1
  53. package/dist/cdn/card/snice-card.min.js +1 -1
  54. package/dist/cdn/carousel/snice-carousel.js +1 -1
  55. package/dist/cdn/carousel/snice-carousel.min.js +1 -1
  56. package/dist/cdn/cart/README.md +1 -1
  57. package/dist/cdn/cart/snice-cart.js +24 -20
  58. package/dist/cdn/cart/snice-cart.js.map +1 -1
  59. package/dist/cdn/cart/snice-cart.min.js +24 -20
  60. package/dist/cdn/cart/snice-cart.min.js.map +1 -1
  61. package/dist/cdn/chart/snice-chart.js +1 -1
  62. package/dist/cdn/chart/snice-chart.min.js +1 -1
  63. package/dist/cdn/chat/README.md +2 -2
  64. package/dist/cdn/chat/snice-chat.js +177 -10
  65. package/dist/cdn/chat/snice-chat.js.map +1 -1
  66. package/dist/cdn/chat/snice-chat.min.js +49 -17
  67. package/dist/cdn/chat/snice-chat.min.js.map +1 -1
  68. package/dist/cdn/checkbox/snice-checkbox.js +1 -1
  69. package/dist/cdn/checkbox/snice-checkbox.min.js +1 -1
  70. package/dist/cdn/chip/snice-chip.js +1 -1
  71. package/dist/cdn/chip/snice-chip.min.js +1 -1
  72. package/dist/cdn/code-block/README.md +1 -1
  73. package/dist/cdn/code-block/snice-code-block.js +2 -2
  74. package/dist/cdn/code-block/snice-code-block.js.map +1 -1
  75. package/dist/cdn/code-block/snice-code-block.min.js +3 -3
  76. package/dist/cdn/code-block/snice-code-block.min.js.map +1 -1
  77. package/dist/cdn/color-display/snice-color-display.js +1 -1
  78. package/dist/cdn/color-display/snice-color-display.min.js +1 -1
  79. package/dist/cdn/color-picker/snice-color-picker.js +1 -1
  80. package/dist/cdn/color-picker/snice-color-picker.min.js +1 -1
  81. package/dist/cdn/command-palette/snice-command-palette.js +2 -2
  82. package/dist/cdn/command-palette/snice-command-palette.js.map +1 -1
  83. package/dist/cdn/command-palette/snice-command-palette.min.js +2 -2
  84. package/dist/cdn/command-palette/snice-command-palette.min.js.map +1 -1
  85. package/dist/cdn/comments/snice-comments.js +1 -1
  86. package/dist/cdn/comments/snice-comments.min.js +1 -1
  87. package/dist/cdn/countdown/snice-countdown.js +1 -1
  88. package/dist/cdn/countdown/snice-countdown.min.js +1 -1
  89. package/dist/cdn/cropper/snice-cropper.js +1 -1
  90. package/dist/cdn/cropper/snice-cropper.min.js +1 -1
  91. package/dist/cdn/data-card/snice-data-card.js +1 -1
  92. package/dist/cdn/data-card/snice-data-card.min.js +1 -1
  93. package/dist/cdn/date-picker/snice-date-picker.js +1 -1
  94. package/dist/cdn/date-picker/snice-date-picker.min.js +1 -1
  95. package/dist/cdn/date-time-picker/snice-date-time-picker.js +1 -1
  96. package/dist/cdn/date-time-picker/snice-date-time-picker.min.js +1 -1
  97. package/dist/cdn/diff/snice-diff.js +1 -1
  98. package/dist/cdn/diff/snice-diff.min.js +1 -1
  99. package/dist/cdn/divider/snice-divider.js +1 -1
  100. package/dist/cdn/divider/snice-divider.min.js +1 -1
  101. package/dist/cdn/doc/snice-doc.js +1 -1
  102. package/dist/cdn/doc/snice-doc.min.js +1 -1
  103. package/dist/cdn/draw/snice-draw.js +1 -1
  104. package/dist/cdn/draw/snice-draw.min.js +1 -1
  105. package/dist/cdn/drawer/README.md +2 -2
  106. package/dist/cdn/drawer/snice-drawer.js +129 -22
  107. package/dist/cdn/drawer/snice-drawer.js.map +1 -1
  108. package/dist/cdn/drawer/snice-drawer.min.js +22 -18
  109. package/dist/cdn/drawer/snice-drawer.min.js.map +1 -1
  110. package/dist/cdn/empty-state/snice-empty-state.js +1 -1
  111. package/dist/cdn/empty-state/snice-empty-state.min.js +1 -1
  112. package/dist/cdn/estimate/snice-estimate.js +1 -1
  113. package/dist/cdn/estimate/snice-estimate.min.js +1 -1
  114. package/dist/cdn/file-gallery/snice-file-gallery.js +1 -1
  115. package/dist/cdn/file-gallery/snice-file-gallery.min.js +1 -1
  116. package/dist/cdn/file-upload/snice-file-upload.js +1 -1
  117. package/dist/cdn/file-upload/snice-file-upload.min.js +1 -1
  118. package/dist/cdn/flip-card/snice-flip-card.js +1 -1
  119. package/dist/cdn/flip-card/snice-flip-card.min.js +1 -1
  120. package/dist/cdn/flow/snice-flow.js +1 -1
  121. package/dist/cdn/flow/snice-flow.min.js +1 -1
  122. package/dist/cdn/form-layout/snice-form-layout.js +1 -1
  123. package/dist/cdn/form-layout/snice-form-layout.min.js +1 -1
  124. package/dist/cdn/funnel/snice-funnel.js +1 -1
  125. package/dist/cdn/funnel/snice-funnel.min.js +1 -1
  126. package/dist/cdn/gantt/snice-gantt.js +1 -1
  127. package/dist/cdn/gantt/snice-gantt.min.js +1 -1
  128. package/dist/cdn/gauge/snice-gauge.js +1 -1
  129. package/dist/cdn/gauge/snice-gauge.min.js +1 -1
  130. package/dist/cdn/heatmap/README.md +2 -2
  131. package/dist/cdn/heatmap/snice-heatmap.js +2 -2
  132. package/dist/cdn/heatmap/snice-heatmap.js.map +1 -1
  133. package/dist/cdn/heatmap/snice-heatmap.min.js +5 -5
  134. package/dist/cdn/heatmap/snice-heatmap.min.js.map +1 -1
  135. package/dist/cdn/image/snice-image.js +1 -1
  136. package/dist/cdn/image/snice-image.min.js +1 -1
  137. package/dist/cdn/input/snice-input.js +1 -1
  138. package/dist/cdn/input/snice-input.min.js +1 -1
  139. package/dist/cdn/invoice/snice-invoice.js +1 -1
  140. package/dist/cdn/invoice/snice-invoice.min.js +1 -1
  141. package/dist/cdn/kanban/snice-kanban.js +1 -1
  142. package/dist/cdn/kanban/snice-kanban.min.js +1 -1
  143. package/dist/cdn/key-value/snice-key-value.js +1 -1
  144. package/dist/cdn/key-value/snice-key-value.min.js +1 -1
  145. package/dist/cdn/kpi/snice-kpi.js +1 -1
  146. package/dist/cdn/kpi/snice-kpi.min.js +1 -1
  147. package/dist/cdn/layout/snice-layout.js +1 -1
  148. package/dist/cdn/layout/snice-layout.min.js +1 -1
  149. package/dist/cdn/leaderboard/snice-leaderboard.js +1 -1
  150. package/dist/cdn/leaderboard/snice-leaderboard.min.js +1 -1
  151. package/dist/cdn/link/snice-link.js +1 -1
  152. package/dist/cdn/link/snice-link.min.js +1 -1
  153. package/dist/cdn/link-preview/snice-link-preview.js +1 -1
  154. package/dist/cdn/link-preview/snice-link-preview.min.js +1 -1
  155. package/dist/cdn/list/README.md +2 -2
  156. package/dist/cdn/list/snice-list.js +179 -8
  157. package/dist/cdn/list/snice-list.js.map +1 -1
  158. package/dist/cdn/list/snice-list.min.js +45 -9
  159. package/dist/cdn/list/snice-list.min.js.map +1 -1
  160. package/dist/cdn/location/snice-location.js +1 -1
  161. package/dist/cdn/location/snice-location.min.js +1 -1
  162. package/dist/cdn/login/snice-login.js +1 -1
  163. package/dist/cdn/login/snice-login.min.js +1 -1
  164. package/dist/cdn/map/snice-map.js +1 -1
  165. package/dist/cdn/map/snice-map.min.js +1 -1
  166. package/dist/cdn/markdown/snice-markdown.js +1 -1
  167. package/dist/cdn/markdown/snice-markdown.min.js +1 -1
  168. package/dist/cdn/masonry/snice-masonry.js +1 -1
  169. package/dist/cdn/masonry/snice-masonry.min.js +1 -1
  170. package/dist/cdn/menu/snice-menu.js +1 -1
  171. package/dist/cdn/menu/snice-menu.min.js +1 -1
  172. package/dist/cdn/message-strip/snice-message-strip.js +1 -1
  173. package/dist/cdn/message-strip/snice-message-strip.min.js +1 -1
  174. package/dist/cdn/metric-table/snice-metric-table.js +1 -1
  175. package/dist/cdn/metric-table/snice-metric-table.min.js +1 -1
  176. package/dist/cdn/modal/snice-modal.js +1 -1
  177. package/dist/cdn/modal/snice-modal.min.js +1 -1
  178. package/dist/cdn/music-player/snice-music-player.js +1 -1
  179. package/dist/cdn/music-player/snice-music-player.min.js +1 -1
  180. package/dist/cdn/nav/snice-nav.js +1 -1
  181. package/dist/cdn/nav/snice-nav.min.js +1 -1
  182. package/dist/cdn/network-graph/snice-network-graph.js +1 -1
  183. package/dist/cdn/network-graph/snice-network-graph.min.js +1 -1
  184. package/dist/cdn/notification-center/README.md +2 -2
  185. package/dist/cdn/notification-center/snice-notification-center.js +191 -7
  186. package/dist/cdn/notification-center/snice-notification-center.js.map +1 -1
  187. package/dist/cdn/notification-center/snice-notification-center.min.js +57 -14
  188. package/dist/cdn/notification-center/snice-notification-center.min.js.map +1 -1
  189. package/dist/cdn/order-tracker/snice-order-tracker.js +1 -1
  190. package/dist/cdn/order-tracker/snice-order-tracker.min.js +1 -1
  191. package/dist/cdn/org-chart/snice-org-chart.js +1 -1
  192. package/dist/cdn/org-chart/snice-org-chart.min.js +1 -1
  193. package/dist/cdn/pagination/snice-pagination.js +1 -1
  194. package/dist/cdn/pagination/snice-pagination.min.js +1 -1
  195. package/dist/cdn/paint/snice-paint.js +1 -1
  196. package/dist/cdn/paint/snice-paint.min.js +1 -1
  197. package/dist/cdn/pdf-viewer/snice-pdf-viewer.js +1 -1
  198. package/dist/cdn/pdf-viewer/snice-pdf-viewer.min.js +1 -1
  199. package/dist/cdn/permission-matrix/snice-permission-matrix.js +1 -1
  200. package/dist/cdn/permission-matrix/snice-permission-matrix.min.js +1 -1
  201. package/dist/cdn/podcast-player/snice-podcast-player.js +1 -1
  202. package/dist/cdn/podcast-player/snice-podcast-player.min.js +1 -1
  203. package/dist/cdn/pricing-table/snice-pricing-table.js +1 -1
  204. package/dist/cdn/pricing-table/snice-pricing-table.min.js +1 -1
  205. package/dist/cdn/product-card/README.md +1 -1
  206. package/dist/cdn/product-card/snice-product-card.js +2 -2
  207. package/dist/cdn/product-card/snice-product-card.js.map +1 -1
  208. package/dist/cdn/product-card/snice-product-card.min.js +18 -18
  209. package/dist/cdn/product-card/snice-product-card.min.js.map +1 -1
  210. package/dist/cdn/progress/snice-progress.js +1 -1
  211. package/dist/cdn/progress/snice-progress.min.js +1 -1
  212. package/dist/cdn/progress-ring/snice-progress-ring.js +1 -1
  213. package/dist/cdn/progress-ring/snice-progress-ring.min.js +1 -1
  214. package/dist/cdn/qr-code/snice-qr-code.js +1 -1
  215. package/dist/cdn/qr-code/snice-qr-code.min.js +1 -1
  216. package/dist/cdn/qr-reader/snice-qr-reader.js +1 -1
  217. package/dist/cdn/qr-reader/snice-qr-reader.min.js +1 -1
  218. package/dist/cdn/radio/snice-radio.js +1 -1
  219. package/dist/cdn/radio/snice-radio.min.js +1 -1
  220. package/dist/cdn/range-slider/snice-range-slider.js +1 -1
  221. package/dist/cdn/range-slider/snice-range-slider.min.js +1 -1
  222. package/dist/cdn/rating/snice-rating.js +1 -1
  223. package/dist/cdn/rating/snice-rating.min.js +1 -1
  224. package/dist/cdn/receipt/snice-receipt.js +1 -1
  225. package/dist/cdn/receipt/snice-receipt.min.js +1 -1
  226. package/dist/cdn/recipe/snice-recipe.js +1 -1
  227. package/dist/cdn/recipe/snice-recipe.min.js +1 -1
  228. package/dist/cdn/runtime/snice-runtime.esm.js +4 -4
  229. package/dist/cdn/runtime/snice-runtime.esm.js.map +1 -1
  230. package/dist/cdn/runtime/snice-runtime.esm.min.js +4 -4
  231. package/dist/cdn/runtime/snice-runtime.esm.min.js.map +1 -1
  232. package/dist/cdn/runtime/snice-runtime.js +4 -4
  233. package/dist/cdn/runtime/snice-runtime.js.map +1 -1
  234. package/dist/cdn/runtime/snice-runtime.min.js +4 -4
  235. package/dist/cdn/runtime/snice-runtime.min.js.map +1 -1
  236. package/dist/cdn/sankey/snice-sankey.js +1 -1
  237. package/dist/cdn/sankey/snice-sankey.min.js +1 -1
  238. package/dist/cdn/segmented-control/snice-segmented-control.js +1 -1
  239. package/dist/cdn/segmented-control/snice-segmented-control.min.js +1 -1
  240. package/dist/cdn/select/snice-select.js +1 -1
  241. package/dist/cdn/select/snice-select.min.js +1 -1
  242. package/dist/cdn/skeleton/snice-skeleton.js +1 -1
  243. package/dist/cdn/skeleton/snice-skeleton.min.js +1 -1
  244. package/dist/cdn/slider/snice-slider.js +1 -1
  245. package/dist/cdn/slider/snice-slider.min.js +1 -1
  246. package/dist/cdn/sortable/snice-sortable.js +1 -1
  247. package/dist/cdn/sortable/snice-sortable.min.js +1 -1
  248. package/dist/cdn/sparkline/snice-sparkline.js +1 -1
  249. package/dist/cdn/sparkline/snice-sparkline.min.js +1 -1
  250. package/dist/cdn/spinner/snice-spinner.js +1 -1
  251. package/dist/cdn/spinner/snice-spinner.min.js +1 -1
  252. package/dist/cdn/split-button/snice-split-button.js +1 -1
  253. package/dist/cdn/split-button/snice-split-button.min.js +1 -1
  254. package/dist/cdn/split-pane/snice-split-pane.js +1 -1
  255. package/dist/cdn/split-pane/snice-split-pane.min.js +1 -1
  256. package/dist/cdn/spotlight/snice-spotlight.js +1 -1
  257. package/dist/cdn/spotlight/snice-spotlight.min.js +1 -1
  258. package/dist/cdn/spreadsheet/snice-spreadsheet.js +1 -1
  259. package/dist/cdn/spreadsheet/snice-spreadsheet.min.js +1 -1
  260. package/dist/cdn/stat-group/snice-stat-group.js +1 -1
  261. package/dist/cdn/stat-group/snice-stat-group.min.js +1 -1
  262. package/dist/cdn/step-input/snice-step-input.js +1 -1
  263. package/dist/cdn/step-input/snice-step-input.min.js +1 -1
  264. package/dist/cdn/stepper/snice-stepper.js +1 -1
  265. package/dist/cdn/stepper/snice-stepper.min.js +1 -1
  266. package/dist/cdn/switch/snice-switch.js +1 -1
  267. package/dist/cdn/switch/snice-switch.min.js +1 -1
  268. package/dist/cdn/table/snice-table.js +1 -1
  269. package/dist/cdn/table/snice-table.min.js +1 -1
  270. package/dist/cdn/tabs/snice-tabs.js +1 -1
  271. package/dist/cdn/tabs/snice-tabs.min.js +1 -1
  272. package/dist/cdn/tag/snice-tag.js +1 -1
  273. package/dist/cdn/tag/snice-tag.min.js +1 -1
  274. package/dist/cdn/tag-input/snice-tag-input.js +1 -1
  275. package/dist/cdn/tag-input/snice-tag-input.min.js +1 -1
  276. package/dist/cdn/terminal/snice-terminal.js +1 -1
  277. package/dist/cdn/terminal/snice-terminal.min.js +1 -1
  278. package/dist/cdn/testimonial/snice-testimonial.js +1 -1
  279. package/dist/cdn/testimonial/snice-testimonial.min.js +1 -1
  280. package/dist/cdn/textarea/snice-textarea.js +1 -1
  281. package/dist/cdn/textarea/snice-textarea.min.js +1 -1
  282. package/dist/cdn/time-picker/snice-time-picker.js +1 -1
  283. package/dist/cdn/time-picker/snice-time-picker.min.js +1 -1
  284. package/dist/cdn/time-range-picker/snice-time-range-picker.js +1 -1
  285. package/dist/cdn/time-range-picker/snice-time-range-picker.min.js +1 -1
  286. package/dist/cdn/timeline/snice-timeline.js +1 -1
  287. package/dist/cdn/timeline/snice-timeline.min.js +1 -1
  288. package/dist/cdn/timer/snice-timer.js +1 -1
  289. package/dist/cdn/timer/snice-timer.min.js +1 -1
  290. package/dist/cdn/toast/README.md +2 -2
  291. package/dist/cdn/toast/snice-toast.js +9 -9
  292. package/dist/cdn/toast/snice-toast.js.map +1 -1
  293. package/dist/cdn/toast/snice-toast.min.js +12 -12
  294. package/dist/cdn/toast/snice-toast.min.js.map +1 -1
  295. package/dist/cdn/tooltip/snice-tooltip.js +1 -1
  296. package/dist/cdn/tooltip/snice-tooltip.min.js +1 -1
  297. package/dist/cdn/tree/snice-tree.js +1 -1
  298. package/dist/cdn/tree/snice-tree.min.js +1 -1
  299. package/dist/cdn/treemap/snice-treemap.js +1 -1
  300. package/dist/cdn/treemap/snice-treemap.min.js +1 -1
  301. package/dist/cdn/user-card/snice-user-card.js +1 -1
  302. package/dist/cdn/user-card/snice-user-card.min.js +1 -1
  303. package/dist/cdn/video-player/snice-video-player.js +1 -1
  304. package/dist/cdn/video-player/snice-video-player.min.js +1 -1
  305. package/dist/cdn/virtual-scroller/snice-virtual-scroller.js +1 -1
  306. package/dist/cdn/virtual-scroller/snice-virtual-scroller.min.js +1 -1
  307. package/dist/cdn/waterfall/snice-waterfall.js +1 -1
  308. package/dist/cdn/waterfall/snice-waterfall.min.js +1 -1
  309. package/dist/cdn/weather/snice-weather.js +1 -1
  310. package/dist/cdn/weather/snice-weather.min.js +1 -1
  311. package/dist/cdn/work-order/snice-work-order.js +1 -1
  312. package/dist/cdn/work-order/snice-work-order.min.js +1 -1
  313. package/dist/components/app-tiles/snice-app-tiles.d.ts +1 -1
  314. package/dist/components/app-tiles/snice-app-tiles.js +1 -1
  315. package/dist/components/app-tiles/snice-app-tiles.js.map +1 -1
  316. package/dist/components/app-tiles/snice-app-tiles.types.d.ts +1 -1
  317. package/dist/components/cart/snice-cart.js +23 -19
  318. package/dist/components/cart/snice-cart.js.map +1 -1
  319. package/dist/components/chat/snice-chat.d.ts +1 -0
  320. package/dist/components/chat/snice-chat.js +10 -9
  321. package/dist/components/chat/snice-chat.js.map +1 -1
  322. package/dist/components/code-block/snice-code-block.js +1 -1
  323. package/dist/components/code-block/snice-code-block.js.map +1 -1
  324. package/dist/components/command-palette/snice-command-palette.js +1 -1
  325. package/dist/components/command-palette/snice-command-palette.js.map +1 -1
  326. package/dist/components/drawer/snice-drawer.d.ts +13 -0
  327. package/dist/components/drawer/snice-drawer.js +128 -21
  328. package/dist/components/drawer/snice-drawer.js.map +1 -1
  329. package/dist/components/drawer/snice-drawer.types.d.ts +4 -0
  330. package/dist/components/heatmap/snice-heatmap.js +1 -1
  331. package/dist/components/heatmap/snice-heatmap.js.map +1 -1
  332. package/dist/components/list/snice-list.d.ts +1 -0
  333. package/dist/components/list/snice-list.js +10 -5
  334. package/dist/components/list/snice-list.js.map +1 -1
  335. package/dist/components/notification-center/snice-notification-center.d.ts +2 -0
  336. package/dist/components/notification-center/snice-notification-center.js +24 -6
  337. package/dist/components/notification-center/snice-notification-center.js.map +1 -1
  338. package/dist/components/notification-center/snice-notification-center.types.d.ts +1 -0
  339. package/dist/components/product-card/snice-product-card.js +1 -1
  340. package/dist/components/product-card/snice-product-card.js.map +1 -1
  341. package/dist/components/toast/snice-toast.js +8 -8
  342. package/dist/index.cjs +1 -1
  343. package/dist/index.esm.js +1 -1
  344. package/dist/index.iife.js +1 -1
  345. package/dist/symbols.cjs +1 -1
  346. package/dist/symbols.esm.js +1 -1
  347. package/dist/transitions.cjs +1 -1
  348. package/dist/transitions.esm.js +1 -1
  349. package/docs/ai/components/app-tiles.md +12 -1
  350. package/docs/ai/components/drawer.md +45 -1
  351. package/docs/components/app-tiles.md +24 -8
  352. package/docs/components/drawer.md +65 -0
  353. package/package.json +1 -1
  354. package/adapters/react/icon.d.ts +0 -29
  355. package/adapters/react/icon.d.ts.map +0 -1
  356. package/adapters/react/icon.js +0 -24
  357. package/adapters/react/icon.js.map +0 -1
  358. package/adapters/react/icon.tsx +0 -37
  359. package/dist/components/icon/snice-icon.d.ts +0 -18
  360. package/dist/components/icon/snice-icon.types.d.ts +0 -11
  361. package/docs/ai/components/icon.md +0 -63
  362. package/docs/components/icon.md +0 -186
@@ -1,7 +1,7 @@
1
1
  import { __esDecorate, __runInitializers } from 'tslib';
2
2
  import { element, property, ready, watch, dispatch, render, styles, html, css } from 'snice';
3
3
 
4
- var cssContent = ":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style;color:var(--snice-color-text,rgb(23 23 23));--pc-bg:var(--snice-color-background, rgb(255 255 255));--pc-bg-element:var(--snice-color-background-element, rgb(252 251 249));--pc-border:var(--snice-color-border, rgb(226 226 226));--pc-text:var(--snice-color-text, rgb(23 23 23));--pc-text-secondary:var(--snice-color-text-secondary, rgb(82 82 82));--pc-text-tertiary:var(--snice-color-text-tertiary, rgb(115 115 115));--pc-primary:var(--snice-color-primary, rgb(37 99 235));--pc-success:var(--snice-color-success, rgb(22 163 74));--pc-danger:var(--snice-color-danger, rgb(220 38 38));--pc-shadow:var(--snice-shadow-sm, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1));--pc-shadow-hover:var(--snice-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1));--pc-radius:var(--product-card-radius, var(--snice-border-radius-lg, 0.5rem));--pc-image-ratio:var(--product-card-image-ratio, 4 / 3);--pc-title-size:var(--product-card-title-size, var(--snice-font-size-lg, 1.125rem));--pc-price-size:var(--product-card-price-size, var(--snice-font-size-2xl, 1.5rem));--pc-badge-bg:var(--product-card-badge-bg, var(--snice-color-danger, rgb(220 38 38)));--pc-badge-color:var(--product-card-badge-color, rgb(255 255 255));--pc-cta-bg:var(--product-card-cta-bg, var(--snice-color-primary, rgb(37 99 235)));--pc-cta-color:var(--product-card-cta-color, rgb(255 255 255));--pc-cta-radius:var(--product-card-cta-radius, var(--snice-border-radius-md, 0.25rem));--pc-favorite-color:var(--product-card-favorite-color, rgb(239 68 68))}*{box-sizing:border-box}.product-card{background:var(--pc-bg);border:1px solid var(--pc-border);border-radius:var(--pc-radius);overflow:hidden;transition:box-shadow var(--snice-transition-medium, 250ms),transform var(--snice-transition-medium, 250ms);position:relative}.product-card:hover{box-shadow:var(--pc-shadow-hover);transform:translateY(-2px)}.product-card--vertical{display:flex;flex-direction:column}.product-card--vertical .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}.product-card--horizontal{display:flex;flex-direction:row}.product-card--horizontal .product-card__gallery{width:40%;min-width:10rem;flex-shrink:0}.product-card--horizontal .product-card__body{flex:1}.product-card--compact{display:flex;flex-direction:row;align-items:center;gap:var(--snice-spacing-sm,.75rem)}.product-card--compact .product-card__gallery{width:5rem;height:5rem;flex-shrink:0;border-radius:var(--snice-border-radius-md,.25rem);overflow:hidden}.product-card--compact .product-card__body{flex:1;padding:var(--snice-spacing-md,1rem)}.product-card--compact .product-card__badge,.product-card--compact .product-card__favorite-btn,.product-card--compact .product-card__gallery-dots,.product-card--compact .product-card__quick-view,.product-card--compact .product-card__variants{display:none}.product-card--compact .product-card__title{font-size:.875rem}.product-card--compact .product-card__price-current{font-size:var(--snice-font-size-md, 1rem)}.product-card--featured{display:flex;flex-direction:column;border:none;box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1))}.product-card--featured:hover{box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);transform:translateY(-4px)}.product-card--featured .product-card__gallery{width:100%;aspect-ratio:16/9}.product-card--featured .product-card__gallery-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgb(0 0 0 / .6),transparent);pointer-events:none;z-index:1}.product-card--featured .product-card__body{padding:var(--snice-spacing-lg,1.5rem)}.product-card--featured .product-card__title{font-size:var(--snice-font-size-2xl, 1.5rem);font-weight:var(--snice-font-weight-bold,700);letter-spacing:-.02em}.product-card--featured .product-card__price-current{font-size:2rem}.product-card--featured .product-card__badge{font-size:.875rem;padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-md,1rem)}.product-card--minimal{display:flex;flex-direction:column;border:none;box-shadow:none;background:0 0}.product-card--minimal:hover{box-shadow:none;transform:none}.product-card--minimal .product-card__gallery{width:100%;aspect-ratio:3/4;border-radius:var(--pc-radius);overflow:hidden;box-shadow:0 1px 3px 0 rgb(0 0 0 / .05)}.product-card--minimal .product-card__body{padding:var(--snice-spacing-md,1rem) 0;gap:var(--snice-spacing-2xs,.25rem)}.product-card--minimal .product-card__title{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-medium,500);letter-spacing:.01em}.product-card--minimal .product-card__price-current{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600)}.product-card--minimal .product-card__stock{display:none}.product-card--minimal .product-card__cta{background:0 0;color:var(--pc-text);border:1px solid var(--pc-border);font-weight:var(--snice-font-weight-medium,500)}.product-card--minimal .product-card__cta:hover{background:var(--pc-text);color:var(--pc-bg);opacity:1}.product-card--grid{display:flex;flex-direction:column}.product-card--grid .product-card__gallery{width:100%;aspect-ratio:1/1}.product-card--grid .product-card__body{padding:var(--snice-spacing-md,1rem);gap:var(--snice-spacing-xs,.5rem)}.product-card--grid .product-card__title{font-size:.875rem;font-weight:var(--snice-font-weight-medium,500);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card--grid .product-card__price-current{font-size:var(--snice-font-size-lg, 1.125rem)}.product-card--grid .product-card__variants{display:none}.product-card--grid .product-card__cta{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);font-size:.875rem}.product-card__gallery{position:relative;overflow:hidden;background:var(--pc-bg-element);cursor:pointer}.product-card__gallery-image-wrapper{width:100%;height:100%;position:relative}.product-card__gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--snice-transition-medium, 250ms),opacity .4s ease;position:absolute;top:0;left:0;opacity:0}.product-card__gallery-image--active{opacity:1;position:relative}.product-card__gallery:hover .product-card__gallery-image--active{transform:scale(1.05)}.product-card__gallery-gradient{display:none}.product-card__gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:2rem;height:2rem;border-radius:50%;border:none;background:rgb(255 255 255 / .85);color:var(--pc-text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;opacity:0;transition:opacity var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);z-index:3}.product-card__gallery:hover .product-card__gallery-nav{opacity:1}.product-card__gallery-nav:hover{background:rgb(255 255 255)}.product-card__gallery-nav:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px);opacity:1}.product-card__gallery-nav--prev{left:var(--snice-spacing-xs,.5rem)}.product-card__gallery-nav--next{right:var(--snice-spacing-xs,.5rem)}.product-card__gallery-dots{position:absolute;bottom:var(--snice-spacing-xs,.5rem);left:50%;transform:translateX(-50%);display:flex;gap:var(--snice-spacing-2xs,.25rem);z-index:3}.product-card__gallery-dot{width:6px;height:6px;border-radius:50%;background:rgb(255 255 255 / .5);border:none;padding:0;cursor:pointer;transition:background var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms)}.product-card__gallery-dot--active{background:rgb(255 255 255);transform:scale(1.3)}.product-card__badge{position:absolute;top:var(--snice-spacing-sm,.75rem);left:var(--snice-spacing-sm,.75rem);background:var(--pc-badge-bg);color:var(--pc-badge-color);font-size:.6875rem;font-weight:var(--snice-font-weight-bold,700);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);text-transform:uppercase;letter-spacing:.05em;z-index:3;line-height:1.5}.product-card__badge--sale{background:var(--pc-danger)}.product-card__badge--new{background:var(--pc-primary)}.product-card__badge--featured{background:linear-gradient(135deg,rgb(168 85 247),rgb(236 72 153))}.product-card__favorite-btn{position:absolute;top:var(--snice-spacing-sm,.75rem);right:var(--snice-spacing-sm,.75rem);width:2rem;height:2rem;border-radius:50%;border:none;background:rgb(255 255 255 / .85);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:transform var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);padding:0}.product-card__favorite-btn:hover{transform:scale(1.1);background:rgb(255 255 255)}.product-card__favorite-btn:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__favorite-icon{width:1rem;height:1rem;color:var(--pc-text-tertiary);transition:color var(--snice-transition-fast, 150ms),transform .3s cubic-bezier(.175, .885, .32, 1.275)}.product-card__favorite-btn:hover .product-card__favorite-icon,.product-card__favorite-icon--active{color:var(--pc-favorite-color)}.product-card__favorite-icon--active{transform:scale(1.1)}@keyframes pc-heart-pop{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1.1)}}.product-card__favorite-icon--animate{animation:.3s cubic-bezier(.175,.885,.32,1.275) pc-heart-pop}.product-card__quick-view{position:absolute;inset:0;background:rgb(0 0 0 / .35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--snice-transition-medium, 250ms);z-index:2;cursor:pointer;border:none;padding:0}.product-card__gallery:hover .product-card__quick-view{opacity:1}.product-card__quick-view-label{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem);background:rgb(255 255 255 / .92);color:var(--pc-text);padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-md,1rem);border-radius:2rem;font-size:.8125rem;font-weight:var(--snice-font-weight-semibold,600);font-family:inherit;backdrop-filter:blur(4px);transition:transform var(--snice-transition-fast, 150ms)}.product-card__quick-view:hover .product-card__quick-view-label{transform:scale(1.05)}.product-card__quick-view-icon{width:1rem;height:1rem}.product-card__body{padding:var(--snice-spacing-lg,1.25rem);display:flex;flex-direction:column;gap:var(--snice-spacing-sm,.75rem)}.product-card__title{font-size:var(--pc-title-size);font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-text);margin:0;line-height:var(--snice-line-height-normal, 1.5)}.product-card__rating{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stars{display:flex;gap:1px}.product-card__star{width:1rem;height:1rem}.product-card__star--filled,.product-card__star--half{color:rgb(250 204 21)}.product-card__star--empty{color:var(--pc-border)}.product-card__review-count{font-size:.75rem;color:var(--pc-text-tertiary)}.product-card__price{display:flex;align-items:baseline;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap}.product-card__price-current{font-size:var(--pc-price-size);font-weight:var(--snice-font-weight-bold,700);color:var(--pc-text)}.product-card__price-current--sale{color:var(--pc-danger)}.product-card__price-original{font-size:.875rem;color:var(--pc-text-tertiary);text-decoration:line-through}.product-card__price-discount{font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-success);background:rgb(22 163 74 / .1);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-2xs,.25rem);border-radius:var(--snice-border-radius-md,.25rem)}.product-card__stock{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stock--in{color:var(--pc-success)}.product-card__stock--out{color:var(--pc-danger)}.product-card__stock-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.product-card__stock--in .product-card__stock-dot{background:var(--pc-success);animation:2s ease-in-out infinite pc-pulse}.product-card__stock--out .product-card__stock-dot{background:var(--pc-danger)}@keyframes pc-pulse{0%,100%{opacity:1}50%{opacity:.4}}.product-card__stock-urgency{color:rgb(217 119 6);font-weight:var(--snice-font-weight-semibold,600)}.product-card__variants{display:flex;flex-direction:column;gap:var(--snice-spacing-xs,.5rem)}.product-card__variant-group{display:flex;flex-direction:column;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-label{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);color:var(--pc-text-secondary);text-transform:uppercase;letter-spacing:.05em}.product-card__variant-options{display:flex;flex-wrap:wrap;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-option{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);border:1px solid var(--pc-border);border-radius:var(--snice-border-radius-md,.25rem);background:var(--pc-bg);color:var(--pc-text);font-size:.75rem;font-family:inherit;cursor:pointer;transition:border-color var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms);position:relative}.product-card__variant-option:hover{border-color:var(--pc-primary)}.product-card__variant-option--selected{border-color:var(--pc-primary);background:rgb(37 99 235 / .05);color:var(--pc-primary);font-weight:var(--snice-font-weight-medium,500);box-shadow:0 0 0 1px var(--pc-primary)}.product-card__variant-option:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__variant-option--color{width:1.75rem;height:1.75rem;border-radius:50%;padding:0;position:relative;transition:transform var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms)}.product-card__variant-option--color:hover{transform:scale(1.1)}.product-card__variant-option--color.product-card__variant-option--selected{box-shadow:0 0 0 2px var(--pc-bg),0 0 0 4px var(--pc-primary);transform:scale(1.1)}.product-card__cta{width:100%;padding:var(--snice-spacing-sm,.75rem) var(--snice-spacing-md,1rem);border:none;border-radius:var(--pc-cta-radius);background:var(--pc-cta-bg);color:var(--pc-cta-color);font-family:inherit;font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600);cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms);margin-top:auto;display:flex;align-items:center;justify-content:center;gap:var(--snice-spacing-xs,.5rem)}.product-card__cta:hover{opacity:.9;transform:translateY(-1px)}.product-card__cta:active{opacity:.8;transform:translateY(0)}.product-card__cta:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__cta:disabled{opacity:.5;cursor:not-allowed;transform:none}.product-card__cta-icon{width:1.125rem;height:1.125rem;transition:transform var(--snice-transition-fast, 150ms)}.product-card__cta:not(:disabled):hover .product-card__cta-icon{transform:scale(1.1)}.product-card__cta--loading{pointer-events:none;opacity:.7}.product-card__cta-spinner{width:1rem;height:1rem;border:2px solid;border-top-color:rgb(255 255 255);border-radius:50%;animation:.6s linear infinite pc-spin}@keyframes pc-spin{to{transform:rotate(360deg)}}:host([in-stock=false]) .product-card__gallery::after{content:'Out of Stock';position:absolute;top:var(--snice-spacing-xs,.5rem);right:var(--snice-spacing-xs,.5rem);background:rgb(0 0 0 / .7);color:rgb(255 255 255);font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);z-index:3}.product-card--skeleton .product-card__gallery{background:var(--pc-bg-element)}.product-card__skeleton-image{width:100%;height:100%;background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line{border-radius:var(--snice-border-radius-md,.25rem);background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line--title{height:1.25rem;width:75%}.product-card__skeleton-line--rating{height:1rem;width:40%}.product-card__skeleton-line--price{height:1.5rem;width:35%}.product-card__skeleton-line--stock{height:.75rem;width:25%}.product-card__skeleton-line--cta{height:2.75rem;width:100%;border-radius:var(--pc-cta-radius);margin-top:auto}@keyframes pc-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (max-width:480px){.product-card--horizontal{flex-direction:column}.product-card--horizontal .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}}";
4
+ var cssContent = ":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style;color:var(--snice-color-text,rgb(23 23 23));--pc-bg:var(--snice-color-background, rgb(255 255 255));--pc-bg-element:var(--snice-color-background-element, rgb(252 251 249));--pc-border:var(--snice-color-border, rgb(226 226 226));--pc-text:var(--snice-color-text, rgb(23 23 23));--pc-text-secondary:var(--snice-color-text-secondary, rgb(82 82 82));--pc-text-tertiary:var(--snice-color-text-tertiary, rgb(115 115 115));--pc-primary:var(--snice-color-primary, rgb(37 99 235));--pc-success:var(--snice-color-success, rgb(22 163 74));--pc-danger:var(--snice-color-danger, rgb(220 38 38));--pc-shadow:var(--snice-shadow-sm, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1));--pc-shadow-hover:var(--snice-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1));--pc-radius:var(--product-card-radius, var(--snice-border-radius-lg, 0.5rem));--pc-image-ratio:var(--product-card-image-ratio, 4 / 3);--pc-title-size:var(--product-card-title-size, var(--snice-font-size-lg, 1.125rem));--pc-price-size:var(--product-card-price-size, var(--snice-font-size-2xl, 1.5rem));--pc-badge-bg:var(--product-card-badge-bg, var(--snice-color-danger, rgb(220 38 38)));--pc-badge-color:var(--product-card-badge-color, rgb(255 255 255));--pc-cta-bg:var(--product-card-cta-bg, var(--snice-color-primary, rgb(37 99 235)));--pc-cta-color:var(--product-card-cta-color, rgb(255 255 255));--pc-cta-radius:var(--product-card-cta-radius, var(--snice-border-radius-md, 0.25rem));--pc-favorite-color:var(--product-card-favorite-color, rgb(239 68 68))}*{box-sizing:border-box}.product-card{background:var(--pc-bg);border:1px solid var(--pc-border);border-radius:var(--pc-radius);transition:box-shadow var(--snice-transition-medium, 250ms),transform var(--snice-transition-medium, 250ms);position:relative}.product-card:hover{box-shadow:var(--pc-shadow-hover);transform:translateY(-2px)}.product-card--vertical{display:flex;flex-direction:column}.product-card--vertical .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}.product-card--horizontal{display:flex;flex-direction:row}.product-card--horizontal .product-card__gallery{width:40%;min-width:10rem;flex-shrink:0;border-radius:var(--pc-radius) 0 0 var(--pc-radius)}.product-card--horizontal .product-card__body{flex:1}.product-card--compact{display:flex;flex-direction:row;align-items:center;gap:var(--snice-spacing-sm,.75rem);padding:var(--snice-spacing-sm,.75rem)}.product-card--compact .product-card__gallery{width:5rem;height:5rem;flex-shrink:0;border-radius:var(--snice-border-radius-md,.25rem);overflow:hidden}.product-card--compact .product-card__body{flex:1;padding:var(--snice-spacing-2xs,.25rem) 0}.product-card--compact .product-card__badge,.product-card--compact .product-card__favorite-btn,.product-card--compact .product-card__gallery-dots,.product-card--compact .product-card__quick-view,.product-card--compact .product-card__variants{display:none}.product-card--compact .product-card__title{font-size:.875rem}.product-card--compact .product-card__price-current{font-size:var(--snice-font-size-md, 1rem)}.product-card--featured{display:flex;flex-direction:column;border:none;box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1))}.product-card--featured:hover{box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);transform:translateY(-4px)}.product-card--featured .product-card__gallery{width:100%;aspect-ratio:16/9}.product-card--featured .product-card__gallery-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgb(0 0 0 / .6),transparent);pointer-events:none;z-index:1}.product-card--featured .product-card__body{padding:var(--snice-spacing-lg,1.5rem)}.product-card--featured .product-card__title{font-size:var(--snice-font-size-2xl, 1.5rem);font-weight:var(--snice-font-weight-bold,700);letter-spacing:-.02em}.product-card--featured .product-card__price-current{font-size:2rem}.product-card--featured .product-card__badge{font-size:.875rem;padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-md,1rem)}.product-card--minimal{display:flex;flex-direction:column;border:none;box-shadow:none;background:0 0}.product-card--minimal:hover{box-shadow:none;transform:none}.product-card--minimal .product-card__gallery{width:100%;aspect-ratio:3/4;border-radius:var(--pc-radius);overflow:hidden;box-shadow:0 1px 3px 0 rgb(0 0 0 / .05)}.product-card--minimal .product-card__body{padding:var(--snice-spacing-md,1rem) 0;gap:var(--snice-spacing-md,1rem)}.product-card--minimal .product-card__title{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-medium,500);letter-spacing:.01em}.product-card--minimal .product-card__price-current{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600)}.product-card--minimal .product-card__stock{display:none}.product-card--minimal .product-card__cta{background:0 0;color:var(--pc-text);border:1px solid var(--pc-border);font-weight:var(--snice-font-weight-medium,500)}.product-card--minimal .product-card__cta:hover{background:var(--pc-text);color:var(--pc-bg);opacity:1}.product-card--grid{display:flex;flex-direction:column}.product-card--grid .product-card__gallery{width:100%;aspect-ratio:1/1}.product-card--grid .product-card__body{padding:var(--snice-spacing-md,1rem);gap:var(--snice-spacing-sm,.75rem)}.product-card--grid .product-card__title{font-size:.875rem;font-weight:var(--snice-font-weight-medium,500);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card--grid .product-card__price-current{font-size:var(--snice-font-size-lg, 1.125rem)}.product-card--grid .product-card__variants{display:none}.product-card--grid .product-card__cta{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);font-size:.875rem}.product-card__gallery{position:relative;overflow:hidden;background:var(--pc-bg-element);cursor:pointer;border-radius:var(--pc-radius) var(--pc-radius) 0 0}.product-card__gallery-image-wrapper{width:100%;height:100%;position:relative}.product-card__gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--snice-transition-medium, 250ms),opacity .4s ease;position:absolute;top:0;left:0;opacity:0}.product-card__gallery-image--active{opacity:1;position:relative}.product-card__gallery:hover .product-card__gallery-image--active{transform:scale(1.05)}.product-card__gallery-gradient{display:none}.product-card__gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:2rem;height:2rem;border-radius:50%;border:none;background:var(--pc-bg);opacity:0;color:var(--pc-text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;backdrop-filter:blur(4px);transition:opacity var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);z-index:3}.product-card__gallery:hover .product-card__gallery-nav{opacity:.9}.product-card__gallery-nav:hover{opacity:1;background:var(--pc-bg)}.product-card__gallery-nav:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px);opacity:1}.product-card__gallery-nav--prev{left:var(--snice-spacing-xs,.5rem)}.product-card__gallery-nav--next{right:var(--snice-spacing-xs,.5rem)}.product-card__gallery-dots{position:absolute;bottom:var(--snice-spacing-xs,.5rem);left:50%;transform:translateX(-50%);display:flex;gap:var(--snice-spacing-2xs,.25rem);z-index:3}.product-card__gallery-dot{width:6px;height:6px;border-radius:50%;background:var(--pc-bg);opacity:.5;border:none;padding:0;cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms)}.product-card__gallery-dot--active{opacity:1;transform:scale(1.3)}.product-card__badge{position:absolute;top:var(--snice-spacing-sm,.75rem);left:var(--snice-spacing-sm,.75rem);background:var(--pc-badge-bg);color:var(--pc-badge-color);font-size:.6875rem;font-weight:var(--snice-font-weight-bold,700);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);text-transform:uppercase;letter-spacing:.05em;z-index:3;line-height:1.5}.product-card__badge--sale{background:var(--pc-danger)}.product-card__badge--new{background:var(--pc-primary)}.product-card__badge--featured{background:linear-gradient(135deg,rgb(168 85 247),rgb(236 72 153))}.product-card__favorite-btn{position:absolute;top:var(--snice-spacing-sm,.75rem);right:var(--snice-spacing-sm,.75rem);width:2rem;height:2rem;border-radius:50%;border:none;background:var(--pc-bg);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;opacity:.9;transition:transform var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),opacity var(--snice-transition-fast, 150ms);padding:0}.product-card__favorite-btn:hover{transform:scale(1.1);opacity:1;background:var(--pc-bg)}.product-card__favorite-btn:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__favorite-icon{width:1rem;height:1rem;color:var(--pc-text-tertiary);transition:color var(--snice-transition-fast, 150ms),transform .3s cubic-bezier(.175, .885, .32, 1.275)}.product-card__favorite-btn:hover .product-card__favorite-icon,.product-card__favorite-icon--active{color:var(--pc-favorite-color)}.product-card__favorite-icon--active{transform:scale(1.1)}@keyframes pc-heart-pop{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1.1)}}.product-card__favorite-icon--animate{animation:.3s cubic-bezier(.175,.885,.32,1.275) pc-heart-pop}.product-card__quick-view{position:absolute;inset:0;background:rgb(0 0 0 / .35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--snice-transition-medium, 250ms);z-index:2;cursor:pointer;border:none;padding:0}.product-card__gallery:hover .product-card__quick-view{opacity:1}.product-card__quick-view-label{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem);background:var(--pc-bg);color:var(--pc-text);padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-md,1rem);border-radius:2rem;font-size:.8125rem;font-weight:var(--snice-font-weight-semibold,600);font-family:inherit;backdrop-filter:blur(4px);transition:transform var(--snice-transition-fast, 150ms)}.product-card__quick-view:hover .product-card__quick-view-label{transform:scale(1.05)}.product-card__quick-view-icon{width:1rem;height:1rem}.product-card__body{padding:var(--snice-spacing-lg,1.5rem);display:flex;flex-direction:column;gap:var(--snice-spacing-md,1rem)}.product-card__title{font-size:var(--pc-title-size);font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-text);margin:0;line-height:var(--snice-line-height-normal, 1.5)}.product-card__rating{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stars{display:flex;gap:1px}.product-card__star{width:1rem;height:1rem}.product-card__star--filled,.product-card__star--half{color:rgb(250 204 21)}.product-card__star--empty{color:var(--pc-border)}.product-card__review-count{font-size:.75rem;color:var(--pc-text-tertiary)}.product-card__price{display:flex;align-items:baseline;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap}.product-card__price-current{font-size:var(--pc-price-size);font-weight:var(--snice-font-weight-bold,700);color:var(--pc-text)}.product-card__price-current--sale{color:var(--pc-danger)}.product-card__price-original{font-size:.875rem;color:var(--pc-text-tertiary);text-decoration:line-through}.product-card__price-discount{font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-success);background:rgb(22 163 74 / .1);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-2xs,.25rem);border-radius:var(--snice-border-radius-md,.25rem)}.product-card__stock{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stock--in{color:var(--pc-success)}.product-card__stock--out{color:var(--pc-danger)}.product-card__stock-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.product-card__stock--in .product-card__stock-dot{background:var(--pc-success);animation:2s ease-in-out infinite pc-pulse}.product-card__stock--out .product-card__stock-dot{background:var(--pc-danger)}@keyframes pc-pulse{0%,100%{opacity:1}50%{opacity:.4}}.product-card__stock-urgency{color:rgb(217 119 6);font-weight:var(--snice-font-weight-semibold,600)}.product-card__variants{display:flex;flex-direction:column;gap:var(--snice-spacing-sm,.75rem);padding:var(--snice-spacing-xs,.5rem) 0}.product-card__variant-group{display:flex;flex-direction:column;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-label{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);color:var(--pc-text-secondary);text-transform:uppercase;letter-spacing:.05em}.product-card__variant-options{display:flex;flex-wrap:wrap;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-option{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);border:1px solid var(--pc-border);border-radius:var(--snice-border-radius-md,.25rem);background:var(--pc-bg);color:var(--pc-text);font-size:.75rem;font-family:inherit;cursor:pointer;transition:border-color var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms);position:relative}.product-card__variant-option:hover{border-color:var(--pc-primary)}.product-card__variant-option--selected{border-color:var(--pc-primary);background:rgb(37 99 235 / .05);color:var(--pc-primary);font-weight:var(--snice-font-weight-medium,500);box-shadow:0 0 0 1px var(--pc-primary)}.product-card__variant-option:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__variant-option--color{width:1.75rem;height:1.75rem;border-radius:50%;padding:0;position:relative;transition:transform var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms)}.product-card__variant-option--color:hover{transform:scale(1.1)}.product-card__variant-option--color.product-card__variant-option--selected{box-shadow:0 0 0 2px var(--pc-bg),0 0 0 4px var(--pc-primary);transform:scale(1.1)}.product-card__cta{width:100%;padding:var(--snice-spacing-sm,.75rem) var(--snice-spacing-md,1rem);border:none;border-radius:var(--pc-cta-radius);background:var(--pc-cta-bg);color:var(--pc-cta-color);font-family:inherit;font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600);cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms);margin-top:auto;display:flex;align-items:center;justify-content:center;gap:var(--snice-spacing-xs,.5rem)}.product-card__cta:hover{opacity:.9;transform:translateY(-1px)}.product-card__cta:active{opacity:.8;transform:translateY(0)}.product-card__cta:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__cta:disabled{opacity:.5;cursor:not-allowed;transform:none}.product-card__cta-icon{width:1.125rem;height:1.125rem;transition:transform var(--snice-transition-fast, 150ms)}.product-card__cta:not(:disabled):hover .product-card__cta-icon{transform:scale(1.1)}.product-card__cta--loading{pointer-events:none;opacity:.7}.product-card__cta-spinner{width:1rem;height:1rem;border:2px solid;border-top-color:rgb(255 255 255);border-radius:50%;animation:.6s linear infinite pc-spin}@keyframes pc-spin{to{transform:rotate(360deg)}}:host([in-stock=false]) .product-card__gallery::after{content:'Out of Stock';position:absolute;top:var(--snice-spacing-xs,.5rem);right:var(--snice-spacing-xs,.5rem);background:rgb(0 0 0 / .7);color:rgb(255 255 255);font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);z-index:3}.product-card--skeleton .product-card__gallery{background:var(--pc-bg-element)}.product-card__skeleton-image{width:100%;height:100%;background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line{border-radius:var(--snice-border-radius-md,.25rem);background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line--title{height:1.25rem;width:75%}.product-card__skeleton-line--rating{height:1rem;width:40%}.product-card__skeleton-line--price{height:1.5rem;width:35%}.product-card__skeleton-line--stock{height:.75rem;width:25%}.product-card__skeleton-line--cta{height:2.75rem;width:100%;border-radius:var(--pc-cta-radius);margin-top:auto}@keyframes pc-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (max-width:480px){.product-card--horizontal{flex-direction:column}.product-card--horizontal .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}}";
5
5
 
6
6
  let SniceProductCard = (() => {
7
7
  let _classDecorators = [element('snice-product-card')];
@@ -1 +1 @@
1
- {"version":3,"file":"snice-product-card.js","sources":["../../../components/product-card/snice-product-card.css?inline","../../../../components/product-card/snice-product-card.ts"],"sourcesContent":["export default \":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style;color:var(--snice-color-text,rgb(23 23 23));--pc-bg:var(--snice-color-background, rgb(255 255 255));--pc-bg-element:var(--snice-color-background-element, rgb(252 251 249));--pc-border:var(--snice-color-border, rgb(226 226 226));--pc-text:var(--snice-color-text, rgb(23 23 23));--pc-text-secondary:var(--snice-color-text-secondary, rgb(82 82 82));--pc-text-tertiary:var(--snice-color-text-tertiary, rgb(115 115 115));--pc-primary:var(--snice-color-primary, rgb(37 99 235));--pc-success:var(--snice-color-success, rgb(22 163 74));--pc-danger:var(--snice-color-danger, rgb(220 38 38));--pc-shadow:var(--snice-shadow-sm, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1));--pc-shadow-hover:var(--snice-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1));--pc-radius:var(--product-card-radius, var(--snice-border-radius-lg, 0.5rem));--pc-image-ratio:var(--product-card-image-ratio, 4 / 3);--pc-title-size:var(--product-card-title-size, var(--snice-font-size-lg, 1.125rem));--pc-price-size:var(--product-card-price-size, var(--snice-font-size-2xl, 1.5rem));--pc-badge-bg:var(--product-card-badge-bg, var(--snice-color-danger, rgb(220 38 38)));--pc-badge-color:var(--product-card-badge-color, rgb(255 255 255));--pc-cta-bg:var(--product-card-cta-bg, var(--snice-color-primary, rgb(37 99 235)));--pc-cta-color:var(--product-card-cta-color, rgb(255 255 255));--pc-cta-radius:var(--product-card-cta-radius, var(--snice-border-radius-md, 0.25rem));--pc-favorite-color:var(--product-card-favorite-color, rgb(239 68 68))}*{box-sizing:border-box}.product-card{background:var(--pc-bg);border:1px solid var(--pc-border);border-radius:var(--pc-radius);overflow:hidden;transition:box-shadow var(--snice-transition-medium, 250ms),transform var(--snice-transition-medium, 250ms);position:relative}.product-card:hover{box-shadow:var(--pc-shadow-hover);transform:translateY(-2px)}.product-card--vertical{display:flex;flex-direction:column}.product-card--vertical .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}.product-card--horizontal{display:flex;flex-direction:row}.product-card--horizontal .product-card__gallery{width:40%;min-width:10rem;flex-shrink:0}.product-card--horizontal .product-card__body{flex:1}.product-card--compact{display:flex;flex-direction:row;align-items:center;gap:var(--snice-spacing-sm,.75rem)}.product-card--compact .product-card__gallery{width:5rem;height:5rem;flex-shrink:0;border-radius:var(--snice-border-radius-md,.25rem);overflow:hidden}.product-card--compact .product-card__body{flex:1;padding:var(--snice-spacing-md,1rem)}.product-card--compact .product-card__badge,.product-card--compact .product-card__favorite-btn,.product-card--compact .product-card__gallery-dots,.product-card--compact .product-card__quick-view,.product-card--compact .product-card__variants{display:none}.product-card--compact .product-card__title{font-size:.875rem}.product-card--compact .product-card__price-current{font-size:var(--snice-font-size-md, 1rem)}.product-card--featured{display:flex;flex-direction:column;border:none;box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1))}.product-card--featured:hover{box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);transform:translateY(-4px)}.product-card--featured .product-card__gallery{width:100%;aspect-ratio:16/9}.product-card--featured .product-card__gallery-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgb(0 0 0 / .6),transparent);pointer-events:none;z-index:1}.product-card--featured .product-card__body{padding:var(--snice-spacing-lg,1.5rem)}.product-card--featured .product-card__title{font-size:var(--snice-font-size-2xl, 1.5rem);font-weight:var(--snice-font-weight-bold,700);letter-spacing:-.02em}.product-card--featured .product-card__price-current{font-size:2rem}.product-card--featured .product-card__badge{font-size:.875rem;padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-md,1rem)}.product-card--minimal{display:flex;flex-direction:column;border:none;box-shadow:none;background:0 0}.product-card--minimal:hover{box-shadow:none;transform:none}.product-card--minimal .product-card__gallery{width:100%;aspect-ratio:3/4;border-radius:var(--pc-radius);overflow:hidden;box-shadow:0 1px 3px 0 rgb(0 0 0 / .05)}.product-card--minimal .product-card__body{padding:var(--snice-spacing-md,1rem) 0;gap:var(--snice-spacing-2xs,.25rem)}.product-card--minimal .product-card__title{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-medium,500);letter-spacing:.01em}.product-card--minimal .product-card__price-current{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600)}.product-card--minimal .product-card__stock{display:none}.product-card--minimal .product-card__cta{background:0 0;color:var(--pc-text);border:1px solid var(--pc-border);font-weight:var(--snice-font-weight-medium,500)}.product-card--minimal .product-card__cta:hover{background:var(--pc-text);color:var(--pc-bg);opacity:1}.product-card--grid{display:flex;flex-direction:column}.product-card--grid .product-card__gallery{width:100%;aspect-ratio:1/1}.product-card--grid .product-card__body{padding:var(--snice-spacing-md,1rem);gap:var(--snice-spacing-xs,.5rem)}.product-card--grid .product-card__title{font-size:.875rem;font-weight:var(--snice-font-weight-medium,500);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card--grid .product-card__price-current{font-size:var(--snice-font-size-lg, 1.125rem)}.product-card--grid .product-card__variants{display:none}.product-card--grid .product-card__cta{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);font-size:.875rem}.product-card__gallery{position:relative;overflow:hidden;background:var(--pc-bg-element);cursor:pointer}.product-card__gallery-image-wrapper{width:100%;height:100%;position:relative}.product-card__gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--snice-transition-medium, 250ms),opacity .4s ease;position:absolute;top:0;left:0;opacity:0}.product-card__gallery-image--active{opacity:1;position:relative}.product-card__gallery:hover .product-card__gallery-image--active{transform:scale(1.05)}.product-card__gallery-gradient{display:none}.product-card__gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:2rem;height:2rem;border-radius:50%;border:none;background:rgb(255 255 255 / .85);color:var(--pc-text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;opacity:0;transition:opacity var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);z-index:3}.product-card__gallery:hover .product-card__gallery-nav{opacity:1}.product-card__gallery-nav:hover{background:rgb(255 255 255)}.product-card__gallery-nav:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px);opacity:1}.product-card__gallery-nav--prev{left:var(--snice-spacing-xs,.5rem)}.product-card__gallery-nav--next{right:var(--snice-spacing-xs,.5rem)}.product-card__gallery-dots{position:absolute;bottom:var(--snice-spacing-xs,.5rem);left:50%;transform:translateX(-50%);display:flex;gap:var(--snice-spacing-2xs,.25rem);z-index:3}.product-card__gallery-dot{width:6px;height:6px;border-radius:50%;background:rgb(255 255 255 / .5);border:none;padding:0;cursor:pointer;transition:background var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms)}.product-card__gallery-dot--active{background:rgb(255 255 255);transform:scale(1.3)}.product-card__badge{position:absolute;top:var(--snice-spacing-sm,.75rem);left:var(--snice-spacing-sm,.75rem);background:var(--pc-badge-bg);color:var(--pc-badge-color);font-size:.6875rem;font-weight:var(--snice-font-weight-bold,700);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);text-transform:uppercase;letter-spacing:.05em;z-index:3;line-height:1.5}.product-card__badge--sale{background:var(--pc-danger)}.product-card__badge--new{background:var(--pc-primary)}.product-card__badge--featured{background:linear-gradient(135deg,rgb(168 85 247),rgb(236 72 153))}.product-card__favorite-btn{position:absolute;top:var(--snice-spacing-sm,.75rem);right:var(--snice-spacing-sm,.75rem);width:2rem;height:2rem;border-radius:50%;border:none;background:rgb(255 255 255 / .85);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;transition:transform var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);padding:0}.product-card__favorite-btn:hover{transform:scale(1.1);background:rgb(255 255 255)}.product-card__favorite-btn:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__favorite-icon{width:1rem;height:1rem;color:var(--pc-text-tertiary);transition:color var(--snice-transition-fast, 150ms),transform .3s cubic-bezier(.175, .885, .32, 1.275)}.product-card__favorite-btn:hover .product-card__favorite-icon,.product-card__favorite-icon--active{color:var(--pc-favorite-color)}.product-card__favorite-icon--active{transform:scale(1.1)}@keyframes pc-heart-pop{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1.1)}}.product-card__favorite-icon--animate{animation:.3s cubic-bezier(.175,.885,.32,1.275) pc-heart-pop}.product-card__quick-view{position:absolute;inset:0;background:rgb(0 0 0 / .35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--snice-transition-medium, 250ms);z-index:2;cursor:pointer;border:none;padding:0}.product-card__gallery:hover .product-card__quick-view{opacity:1}.product-card__quick-view-label{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem);background:rgb(255 255 255 / .92);color:var(--pc-text);padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-md,1rem);border-radius:2rem;font-size:.8125rem;font-weight:var(--snice-font-weight-semibold,600);font-family:inherit;backdrop-filter:blur(4px);transition:transform var(--snice-transition-fast, 150ms)}.product-card__quick-view:hover .product-card__quick-view-label{transform:scale(1.05)}.product-card__quick-view-icon{width:1rem;height:1rem}.product-card__body{padding:var(--snice-spacing-lg,1.25rem);display:flex;flex-direction:column;gap:var(--snice-spacing-sm,.75rem)}.product-card__title{font-size:var(--pc-title-size);font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-text);margin:0;line-height:var(--snice-line-height-normal, 1.5)}.product-card__rating{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stars{display:flex;gap:1px}.product-card__star{width:1rem;height:1rem}.product-card__star--filled,.product-card__star--half{color:rgb(250 204 21)}.product-card__star--empty{color:var(--pc-border)}.product-card__review-count{font-size:.75rem;color:var(--pc-text-tertiary)}.product-card__price{display:flex;align-items:baseline;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap}.product-card__price-current{font-size:var(--pc-price-size);font-weight:var(--snice-font-weight-bold,700);color:var(--pc-text)}.product-card__price-current--sale{color:var(--pc-danger)}.product-card__price-original{font-size:.875rem;color:var(--pc-text-tertiary);text-decoration:line-through}.product-card__price-discount{font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-success);background:rgb(22 163 74 / .1);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-2xs,.25rem);border-radius:var(--snice-border-radius-md,.25rem)}.product-card__stock{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stock--in{color:var(--pc-success)}.product-card__stock--out{color:var(--pc-danger)}.product-card__stock-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.product-card__stock--in .product-card__stock-dot{background:var(--pc-success);animation:2s ease-in-out infinite pc-pulse}.product-card__stock--out .product-card__stock-dot{background:var(--pc-danger)}@keyframes pc-pulse{0%,100%{opacity:1}50%{opacity:.4}}.product-card__stock-urgency{color:rgb(217 119 6);font-weight:var(--snice-font-weight-semibold,600)}.product-card__variants{display:flex;flex-direction:column;gap:var(--snice-spacing-xs,.5rem)}.product-card__variant-group{display:flex;flex-direction:column;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-label{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);color:var(--pc-text-secondary);text-transform:uppercase;letter-spacing:.05em}.product-card__variant-options{display:flex;flex-wrap:wrap;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-option{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);border:1px solid var(--pc-border);border-radius:var(--snice-border-radius-md,.25rem);background:var(--pc-bg);color:var(--pc-text);font-size:.75rem;font-family:inherit;cursor:pointer;transition:border-color var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms);position:relative}.product-card__variant-option:hover{border-color:var(--pc-primary)}.product-card__variant-option--selected{border-color:var(--pc-primary);background:rgb(37 99 235 / .05);color:var(--pc-primary);font-weight:var(--snice-font-weight-medium,500);box-shadow:0 0 0 1px var(--pc-primary)}.product-card__variant-option:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__variant-option--color{width:1.75rem;height:1.75rem;border-radius:50%;padding:0;position:relative;transition:transform var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms)}.product-card__variant-option--color:hover{transform:scale(1.1)}.product-card__variant-option--color.product-card__variant-option--selected{box-shadow:0 0 0 2px var(--pc-bg),0 0 0 4px var(--pc-primary);transform:scale(1.1)}.product-card__cta{width:100%;padding:var(--snice-spacing-sm,.75rem) var(--snice-spacing-md,1rem);border:none;border-radius:var(--pc-cta-radius);background:var(--pc-cta-bg);color:var(--pc-cta-color);font-family:inherit;font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600);cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms);margin-top:auto;display:flex;align-items:center;justify-content:center;gap:var(--snice-spacing-xs,.5rem)}.product-card__cta:hover{opacity:.9;transform:translateY(-1px)}.product-card__cta:active{opacity:.8;transform:translateY(0)}.product-card__cta:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__cta:disabled{opacity:.5;cursor:not-allowed;transform:none}.product-card__cta-icon{width:1.125rem;height:1.125rem;transition:transform var(--snice-transition-fast, 150ms)}.product-card__cta:not(:disabled):hover .product-card__cta-icon{transform:scale(1.1)}.product-card__cta--loading{pointer-events:none;opacity:.7}.product-card__cta-spinner{width:1rem;height:1rem;border:2px solid;border-top-color:rgb(255 255 255);border-radius:50%;animation:.6s linear infinite pc-spin}@keyframes pc-spin{to{transform:rotate(360deg)}}:host([in-stock=false]) .product-card__gallery::after{content:'Out of Stock';position:absolute;top:var(--snice-spacing-xs,.5rem);right:var(--snice-spacing-xs,.5rem);background:rgb(0 0 0 / .7);color:rgb(255 255 255);font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);z-index:3}.product-card--skeleton .product-card__gallery{background:var(--pc-bg-element)}.product-card__skeleton-image{width:100%;height:100%;background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line{border-radius:var(--snice-border-radius-md,.25rem);background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line--title{height:1.25rem;width:75%}.product-card__skeleton-line--rating{height:1rem;width:40%}.product-card__skeleton-line--price{height:1.5rem;width:35%}.product-card__skeleton-line--stock{height:.75rem;width:25%}.product-card__skeleton-line--cta{height:2.75rem;width:100%;border-radius:var(--pc-cta-radius);margin-top:auto}@keyframes pc-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (max-width:480px){.product-card--horizontal{flex-direction:column}.product-card--horizontal .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}}\";",null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"snice-product-card.js","sources":["../../../components/product-card/snice-product-card.css?inline","../../../../components/product-card/snice-product-card.ts"],"sourcesContent":["export default \":host{display:block;font-family:var(--snice-font-family, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif);contain:layout style;color:var(--snice-color-text,rgb(23 23 23));--pc-bg:var(--snice-color-background, rgb(255 255 255));--pc-bg-element:var(--snice-color-background-element, rgb(252 251 249));--pc-border:var(--snice-color-border, rgb(226 226 226));--pc-text:var(--snice-color-text, rgb(23 23 23));--pc-text-secondary:var(--snice-color-text-secondary, rgb(82 82 82));--pc-text-tertiary:var(--snice-color-text-tertiary, rgb(115 115 115));--pc-primary:var(--snice-color-primary, rgb(37 99 235));--pc-success:var(--snice-color-success, rgb(22 163 74));--pc-danger:var(--snice-color-danger, rgb(220 38 38));--pc-shadow:var(--snice-shadow-sm, 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1));--pc-shadow-hover:var(--snice-shadow-md, 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1));--pc-radius:var(--product-card-radius, var(--snice-border-radius-lg, 0.5rem));--pc-image-ratio:var(--product-card-image-ratio, 4 / 3);--pc-title-size:var(--product-card-title-size, var(--snice-font-size-lg, 1.125rem));--pc-price-size:var(--product-card-price-size, var(--snice-font-size-2xl, 1.5rem));--pc-badge-bg:var(--product-card-badge-bg, var(--snice-color-danger, rgb(220 38 38)));--pc-badge-color:var(--product-card-badge-color, rgb(255 255 255));--pc-cta-bg:var(--product-card-cta-bg, var(--snice-color-primary, rgb(37 99 235)));--pc-cta-color:var(--product-card-cta-color, rgb(255 255 255));--pc-cta-radius:var(--product-card-cta-radius, var(--snice-border-radius-md, 0.25rem));--pc-favorite-color:var(--product-card-favorite-color, rgb(239 68 68))}*{box-sizing:border-box}.product-card{background:var(--pc-bg);border:1px solid var(--pc-border);border-radius:var(--pc-radius);transition:box-shadow var(--snice-transition-medium, 250ms),transform var(--snice-transition-medium, 250ms);position:relative}.product-card:hover{box-shadow:var(--pc-shadow-hover);transform:translateY(-2px)}.product-card--vertical{display:flex;flex-direction:column}.product-card--vertical .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}.product-card--horizontal{display:flex;flex-direction:row}.product-card--horizontal .product-card__gallery{width:40%;min-width:10rem;flex-shrink:0;border-radius:var(--pc-radius) 0 0 var(--pc-radius)}.product-card--horizontal .product-card__body{flex:1}.product-card--compact{display:flex;flex-direction:row;align-items:center;gap:var(--snice-spacing-sm,.75rem);padding:var(--snice-spacing-sm,.75rem)}.product-card--compact .product-card__gallery{width:5rem;height:5rem;flex-shrink:0;border-radius:var(--snice-border-radius-md,.25rem);overflow:hidden}.product-card--compact .product-card__body{flex:1;padding:var(--snice-spacing-2xs,.25rem) 0}.product-card--compact .product-card__badge,.product-card--compact .product-card__favorite-btn,.product-card--compact .product-card__gallery-dots,.product-card--compact .product-card__quick-view,.product-card--compact .product-card__variants{display:none}.product-card--compact .product-card__title{font-size:.875rem}.product-card--compact .product-card__price-current{font-size:var(--snice-font-size-md, 1rem)}.product-card--featured{display:flex;flex-direction:column;border:none;box-shadow:var(--snice-shadow-lg,0 10px 15px -3px rgb(0 0 0 / .1),0 4px 6px -4px rgb(0 0 0 / .1))}.product-card--featured:hover{box-shadow:0 20px 25px -5px rgb(0 0 0 / .1),0 8px 10px -6px rgb(0 0 0 / .1);transform:translateY(-4px)}.product-card--featured .product-card__gallery{width:100%;aspect-ratio:16/9}.product-card--featured .product-card__gallery-gradient{position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(to top,rgb(0 0 0 / .6),transparent);pointer-events:none;z-index:1}.product-card--featured .product-card__body{padding:var(--snice-spacing-lg,1.5rem)}.product-card--featured .product-card__title{font-size:var(--snice-font-size-2xl, 1.5rem);font-weight:var(--snice-font-weight-bold,700);letter-spacing:-.02em}.product-card--featured .product-card__price-current{font-size:2rem}.product-card--featured .product-card__badge{font-size:.875rem;padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-md,1rem)}.product-card--minimal{display:flex;flex-direction:column;border:none;box-shadow:none;background:0 0}.product-card--minimal:hover{box-shadow:none;transform:none}.product-card--minimal .product-card__gallery{width:100%;aspect-ratio:3/4;border-radius:var(--pc-radius);overflow:hidden;box-shadow:0 1px 3px 0 rgb(0 0 0 / .05)}.product-card--minimal .product-card__body{padding:var(--snice-spacing-md,1rem) 0;gap:var(--snice-spacing-md,1rem)}.product-card--minimal .product-card__title{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-medium,500);letter-spacing:.01em}.product-card--minimal .product-card__price-current{font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600)}.product-card--minimal .product-card__stock{display:none}.product-card--minimal .product-card__cta{background:0 0;color:var(--pc-text);border:1px solid var(--pc-border);font-weight:var(--snice-font-weight-medium,500)}.product-card--minimal .product-card__cta:hover{background:var(--pc-text);color:var(--pc-bg);opacity:1}.product-card--grid{display:flex;flex-direction:column}.product-card--grid .product-card__gallery{width:100%;aspect-ratio:1/1}.product-card--grid .product-card__body{padding:var(--snice-spacing-md,1rem);gap:var(--snice-spacing-sm,.75rem)}.product-card--grid .product-card__title{font-size:.875rem;font-weight:var(--snice-font-weight-medium,500);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card--grid .product-card__price-current{font-size:var(--snice-font-size-lg, 1.125rem)}.product-card--grid .product-card__variants{display:none}.product-card--grid .product-card__cta{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);font-size:.875rem}.product-card__gallery{position:relative;overflow:hidden;background:var(--pc-bg-element);cursor:pointer;border-radius:var(--pc-radius) var(--pc-radius) 0 0}.product-card__gallery-image-wrapper{width:100%;height:100%;position:relative}.product-card__gallery-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform var(--snice-transition-medium, 250ms),opacity .4s ease;position:absolute;top:0;left:0;opacity:0}.product-card__gallery-image--active{opacity:1;position:relative}.product-card__gallery:hover .product-card__gallery-image--active{transform:scale(1.05)}.product-card__gallery-gradient{display:none}.product-card__gallery-nav{position:absolute;top:50%;transform:translateY(-50%);width:2rem;height:2rem;border-radius:50%;border:none;background:var(--pc-bg);opacity:0;color:var(--pc-text);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;backdrop-filter:blur(4px);transition:opacity var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms);z-index:3}.product-card__gallery:hover .product-card__gallery-nav{opacity:.9}.product-card__gallery-nav:hover{opacity:1;background:var(--pc-bg)}.product-card__gallery-nav:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px);opacity:1}.product-card__gallery-nav--prev{left:var(--snice-spacing-xs,.5rem)}.product-card__gallery-nav--next{right:var(--snice-spacing-xs,.5rem)}.product-card__gallery-dots{position:absolute;bottom:var(--snice-spacing-xs,.5rem);left:50%;transform:translateX(-50%);display:flex;gap:var(--snice-spacing-2xs,.25rem);z-index:3}.product-card__gallery-dot{width:6px;height:6px;border-radius:50%;background:var(--pc-bg);opacity:.5;border:none;padding:0;cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms)}.product-card__gallery-dot--active{opacity:1;transform:scale(1.3)}.product-card__badge{position:absolute;top:var(--snice-spacing-sm,.75rem);left:var(--snice-spacing-sm,.75rem);background:var(--pc-badge-bg);color:var(--pc-badge-color);font-size:.6875rem;font-weight:var(--snice-font-weight-bold,700);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);text-transform:uppercase;letter-spacing:.05em;z-index:3;line-height:1.5}.product-card__badge--sale{background:var(--pc-danger)}.product-card__badge--new{background:var(--pc-primary)}.product-card__badge--featured{background:linear-gradient(135deg,rgb(168 85 247),rgb(236 72 153))}.product-card__favorite-btn{position:absolute;top:var(--snice-spacing-sm,.75rem);right:var(--snice-spacing-sm,.75rem);width:2rem;height:2rem;border-radius:50%;border:none;background:var(--pc-bg);backdrop-filter:blur(4px);cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:3;opacity:.9;transition:transform var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),opacity var(--snice-transition-fast, 150ms);padding:0}.product-card__favorite-btn:hover{transform:scale(1.1);opacity:1;background:var(--pc-bg)}.product-card__favorite-btn:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__favorite-icon{width:1rem;height:1rem;color:var(--pc-text-tertiary);transition:color var(--snice-transition-fast, 150ms),transform .3s cubic-bezier(.175, .885, .32, 1.275)}.product-card__favorite-btn:hover .product-card__favorite-icon,.product-card__favorite-icon--active{color:var(--pc-favorite-color)}.product-card__favorite-icon--active{transform:scale(1.1)}@keyframes pc-heart-pop{0%{transform:scale(1)}50%{transform:scale(1.35)}100%{transform:scale(1.1)}}.product-card__favorite-icon--animate{animation:.3s cubic-bezier(.175,.885,.32,1.275) pc-heart-pop}.product-card__quick-view{position:absolute;inset:0;background:rgb(0 0 0 / .35);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--snice-transition-medium, 250ms);z-index:2;cursor:pointer;border:none;padding:0}.product-card__gallery:hover .product-card__quick-view{opacity:1}.product-card__quick-view-label{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem);background:var(--pc-bg);color:var(--pc-text);padding:var(--snice-spacing-xs,.5rem) var(--snice-spacing-md,1rem);border-radius:2rem;font-size:.8125rem;font-weight:var(--snice-font-weight-semibold,600);font-family:inherit;backdrop-filter:blur(4px);transition:transform var(--snice-transition-fast, 150ms)}.product-card__quick-view:hover .product-card__quick-view-label{transform:scale(1.05)}.product-card__quick-view-icon{width:1rem;height:1rem}.product-card__body{padding:var(--snice-spacing-lg,1.5rem);display:flex;flex-direction:column;gap:var(--snice-spacing-md,1rem)}.product-card__title{font-size:var(--pc-title-size);font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-text);margin:0;line-height:var(--snice-line-height-normal, 1.5)}.product-card__rating{display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stars{display:flex;gap:1px}.product-card__star{width:1rem;height:1rem}.product-card__star--filled,.product-card__star--half{color:rgb(250 204 21)}.product-card__star--empty{color:var(--pc-border)}.product-card__review-count{font-size:.75rem;color:var(--pc-text-tertiary)}.product-card__price{display:flex;align-items:baseline;gap:var(--snice-spacing-xs,.5rem);flex-wrap:wrap}.product-card__price-current{font-size:var(--pc-price-size);font-weight:var(--snice-font-weight-bold,700);color:var(--pc-text)}.product-card__price-current--sale{color:var(--pc-danger)}.product-card__price-original{font-size:.875rem;color:var(--pc-text-tertiary);text-decoration:line-through}.product-card__price-discount{font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);color:var(--pc-success);background:rgb(22 163 74 / .1);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-2xs,.25rem);border-radius:var(--snice-border-radius-md,.25rem)}.product-card__stock{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);display:flex;align-items:center;gap:var(--snice-spacing-2xs,.25rem)}.product-card__stock--in{color:var(--pc-success)}.product-card__stock--out{color:var(--pc-danger)}.product-card__stock-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.product-card__stock--in .product-card__stock-dot{background:var(--pc-success);animation:2s ease-in-out infinite pc-pulse}.product-card__stock--out .product-card__stock-dot{background:var(--pc-danger)}@keyframes pc-pulse{0%,100%{opacity:1}50%{opacity:.4}}.product-card__stock-urgency{color:rgb(217 119 6);font-weight:var(--snice-font-weight-semibold,600)}.product-card__variants{display:flex;flex-direction:column;gap:var(--snice-spacing-sm,.75rem);padding:var(--snice-spacing-xs,.5rem) 0}.product-card__variant-group{display:flex;flex-direction:column;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-label{font-size:.75rem;font-weight:var(--snice-font-weight-medium,500);color:var(--pc-text-secondary);text-transform:uppercase;letter-spacing:.05em}.product-card__variant-options{display:flex;flex-wrap:wrap;gap:var(--snice-spacing-2xs,.25rem)}.product-card__variant-option{padding:var(--snice-spacing-2xs,.25rem) var(--snice-spacing-sm,.75rem);border:1px solid var(--pc-border);border-radius:var(--snice-border-radius-md,.25rem);background:var(--pc-bg);color:var(--pc-text);font-size:.75rem;font-family:inherit;cursor:pointer;transition:border-color var(--snice-transition-fast, 150ms),background var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms);position:relative}.product-card__variant-option:hover{border-color:var(--pc-primary)}.product-card__variant-option--selected{border-color:var(--pc-primary);background:rgb(37 99 235 / .05);color:var(--pc-primary);font-weight:var(--snice-font-weight-medium,500);box-shadow:0 0 0 1px var(--pc-primary)}.product-card__variant-option:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__variant-option--color{width:1.75rem;height:1.75rem;border-radius:50%;padding:0;position:relative;transition:transform var(--snice-transition-fast, 150ms),box-shadow var(--snice-transition-fast, 150ms)}.product-card__variant-option--color:hover{transform:scale(1.1)}.product-card__variant-option--color.product-card__variant-option--selected{box-shadow:0 0 0 2px var(--pc-bg),0 0 0 4px var(--pc-primary);transform:scale(1.1)}.product-card__cta{width:100%;padding:var(--snice-spacing-sm,.75rem) var(--snice-spacing-md,1rem);border:none;border-radius:var(--pc-cta-radius);background:var(--pc-cta-bg);color:var(--pc-cta-color);font-family:inherit;font-size:var(--snice-font-size-md, 1rem);font-weight:var(--snice-font-weight-semibold,600);cursor:pointer;transition:opacity var(--snice-transition-fast, 150ms),transform var(--snice-transition-fast, 150ms);margin-top:auto;display:flex;align-items:center;justify-content:center;gap:var(--snice-spacing-xs,.5rem)}.product-card__cta:hover{opacity:.9;transform:translateY(-1px)}.product-card__cta:active{opacity:.8;transform:translateY(0)}.product-card__cta:focus-visible{outline:var(--snice-focus-ring-width,2px) solid var(--snice-focus-ring-color,rgb(59 130 246 / .5));outline-offset:var(--snice-focus-ring-offset,2px)}.product-card__cta:disabled{opacity:.5;cursor:not-allowed;transform:none}.product-card__cta-icon{width:1.125rem;height:1.125rem;transition:transform var(--snice-transition-fast, 150ms)}.product-card__cta:not(:disabled):hover .product-card__cta-icon{transform:scale(1.1)}.product-card__cta--loading{pointer-events:none;opacity:.7}.product-card__cta-spinner{width:1rem;height:1rem;border:2px solid;border-top-color:rgb(255 255 255);border-radius:50%;animation:.6s linear infinite pc-spin}@keyframes pc-spin{to{transform:rotate(360deg)}}:host([in-stock=false]) .product-card__gallery::after{content:'Out of Stock';position:absolute;top:var(--snice-spacing-xs,.5rem);right:var(--snice-spacing-xs,.5rem);background:rgb(0 0 0 / .7);color:rgb(255 255 255);font-size:.75rem;font-weight:var(--snice-font-weight-semibold,600);padding:var(--snice-spacing-3xs,.125rem) var(--snice-spacing-xs,.5rem);border-radius:var(--snice-border-radius-md,.25rem);z-index:3}.product-card--skeleton .product-card__gallery{background:var(--pc-bg-element)}.product-card__skeleton-image{width:100%;height:100%;background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line{border-radius:var(--snice-border-radius-md,.25rem);background:linear-gradient(90deg,var(--pc-bg-element) 25%,rgb(226 226 226 / .4) 50%,var(--pc-bg-element) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite pc-shimmer}.product-card__skeleton-line--title{height:1.25rem;width:75%}.product-card__skeleton-line--rating{height:1rem;width:40%}.product-card__skeleton-line--price{height:1.5rem;width:35%}.product-card__skeleton-line--stock{height:.75rem;width:25%}.product-card__skeleton-line--cta{height:2.75rem;width:100%;border-radius:var(--pc-cta-radius);margin-top:auto}@keyframes pc-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}@media (max-width:480px){.product-card--horizontal{flex-direction:column}.product-card--horizontal .product-card__gallery{width:100%;aspect-ratio:var(--pc-image-ratio)}}\";",null],"names":[],"mappings":";;;AAAA,iBAAe,u1iBAAu1iB;;ICcz1iB,gBAAgB,GAAA,CAAA,MAAA;4BAD5B,OAAO,CAAC,oBAAoB,CAAC,CAAA;;;;sBACQ,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAnB,KAAA,cAAQ,WAAW,CAAA;;;;AAC9C,YAAA,gBAAA,GAAA,CAAA,QAAQ,EAAE,CAAA;AAGV,YAAA,iBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;qCAG1B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC,CAAA;AAGnD,YAAA,oBAAA,GAAA,CAAA,QAAQ,EAAE,CAAA;kCAGV,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;AAG3C,YAAA,kBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;uCAG1B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC,CAAA;oCAGrD,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;mCAG3C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;AAGlD,YAAA,mBAAA,GAAA,CAAA,QAAQ,EAAE,CAAA;AAGV,YAAA,iBAAA,GAAA,CAAA,QAAQ,EAAE,CAAA;AAGV,YAAA,wBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAA;AAGxC,YAAA,mBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;AAG3B,YAAA,oBAAA,GAAA,CAAA,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAA;sCAG3B,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAA;6CAGpD,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;4CAG5C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;0CAG5C,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA;AAG7C,YAAA,gBAAA,GAAA,CAAA,KAAK,EAAE,CAAA;gDAKP,KAAK,CAAC,UAAU,CAAC,CAAA;AAqEjB,YAAA,yBAAA,GAAA,CAAA,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AAK1D,YAAA,6BAAA,GAAA,CAAA,QAAQ,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AAK7D,YAAA,0BAAA,GAAA,CAAA,QAAQ,CAAC,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AAK1D,YAAA,wBAAA,GAAA,CAAA,QAAQ,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AAKvD,YAAA,yBAAA,GAAA,CAAA,QAAQ,CAAC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;AAySzD,YAAA,yBAAA,GAAA,CAAA,MAAM,EAAE,CAAA;AAuBR,YAAA,2BAAA,GAAA,CAAA,MAAM,EAAE,CAAA;AA7ZT,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,MAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,IAAI,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAKJ,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,gCAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,sBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,oBAAoB,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAqEpB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,eAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,aAAa,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAKrB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,6BAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,mBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,iBAAiB,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAKzB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,0BAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,gBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,cAAc,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAKtB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,YAAY,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAKpB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,eAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,aAAa,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAySrB,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,yBAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,eAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,aAAa,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;AAuBb,YAAA,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,2BAAA,EAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,iBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,eAAe,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,0BAAA,CAAA;YApdf,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,MAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,IAAI,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAJ,IAAI,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,kBAAA,EAAA,uBAAA,CAAA;YAGJ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,OAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,KAAK,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAL,KAAK,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,mBAAA,EAAA,wBAAA,CAAA;YAGL,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,qBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,WAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,WAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,SAAS,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAT,SAAS,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,uBAAA,EAAA,4BAAA,CAAA;YAGT,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YAGR,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,QAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,QAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,MAAM,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAN,MAAM,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,yBAAA,CAAA;YAGN,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,QAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,QAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,MAAM,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAN,MAAM,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,oBAAA,EAAA,yBAAA,CAAA;YAGN,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,uBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,aAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,aAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,WAAW,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAX,WAAW,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,8BAAA,CAAA;YAGX,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YAGR,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,SAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,OAAO,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAP,OAAO,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,CAAA;YAGP,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,SAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,OAAO,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAP,OAAO,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,CAAA;YAGP,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,OAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,OAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,KAAK,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAL,KAAK,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,mBAAA,EAAA,wBAAA,CAAA;YAGL,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,wBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,cAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,cAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,YAAY,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAZ,YAAY,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,0BAAA,EAAA,+BAAA,CAAA;YAGZ,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,SAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,SAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,OAAO,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAP,OAAO,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,qBAAA,EAAA,0BAAA,CAAA;YAGP,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,UAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,QAAQ,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAR,QAAQ,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,sBAAA,EAAA,2BAAA,CAAA;YAGR,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,YAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,YAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAA,UAAU,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAV,UAAU,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,wBAAA,EAAA,6BAAA,CAAA;YAGV,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,6BAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,mBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,iBAAiB,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAjB,iBAAiB,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,+BAAA,EAAA,oCAAA,CAAA;YAGzB,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,4BAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,kBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,gBAAgB,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAhB,gBAAgB,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,8BAAA,EAAA,mCAAA,CAAA;YAGxB,YAAA,CAAA,IAAA,EAAA,IAAA,EAAA,0BAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,KAAA,EAAA,MAAA,EAAA,EAAA,GAAA,EAAA,GAAA,IAAA,gBAAA,IAAA,GAAA,EAAA,GAAA,EAAA,GAAA,IAAA,GAAA,CAAQ,cAAc,EAAA,GAAA,EAAA,CAAA,GAAA,EAAA,KAAA,KAAA,EAAA,GAAA,CAAd,cAAc,GAAA,KAAA,CAAA,CAAA,CAAA,EAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,4BAAA,EAAA,iCAAA,CAAA;YArDxB,YAAA,CAAA,IAAA,EAAA,gBAAA,GAAA,EAAA,KAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,IAAA,EAAA,OAAA,EAAA,IAAA,EAAA,UAAA,CAAA,IAAA,EAAA,QAAA,EAAA,SAAA,EAAA,EAAA,IAAA,EAAA,uBAAA,CAAA;;;YAAa,iBAAA,CAAA,UAAA,EAAA,uBAAA,CAAA;;QAwDX,IAAI,GAAA;YACF,IAAI,CAAC,2BAA2B,EAAE;QACpC;QAGA,oBAAoB,GAAA;YAClB,IAAI,CAAC,2BAA2B,EAAE;QACpC;QAEQ,2BAA2B,GAAA;YACjC,MAAM,UAAU,GAA2B,EAAE;AAC7C,YAAA,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACxB,oBAAA,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBACnC;YACF;AACA,YAAA,IAAI,CAAC,gBAAgB,GAAG,UAAU;QACpC;QAEQ,eAAe,GAAA;AACrB,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC;gBAAE;AAC7B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,KAAK;AAClD,kBAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG;AACvB,kBAAE,IAAI,CAAC,iBAAiB,GAAG,CAAC;QAChC;QAEQ,eAAe,GAAA;AACrB,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC;gBAAE;AAC7B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG;AACvE,kBAAE;AACF,kBAAE,IAAI,CAAC,iBAAiB,GAAG,CAAC;QAChC;AAEQ,QAAA,cAAc,CAAC,KAAa,EAAA;AAClC,YAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK;QAChC;QAEQ,gBAAgB,GAAA;AACtB,YAAA,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE;YAC9B,IAAI,CAAC,cAAc,CAAC;gBAClB,KAAK,EAAE,IAAI,CAAC,iBAAiB;gBAC7B,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB;AACxC,aAAA,CAAC;QACJ;QAEQ,mBAAmB,CAAC,IAAY,EAAE,KAAa,EAAA;AACrD,YAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,GAAG,KAAK,EAAE;YACnE,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACzC;QAEQ,eAAe,GAAA;AACrB,YAAA,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;gBAAE;YACnC,IAAI,CAAC,aAAa,CAAC;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,gBAAA,KAAK,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK;gBACnC,SAAS,EAAE,IAAI,CAAC,SAAS;AACzB,gBAAA,gBAAgB,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB;AAC7C,aAAA,CAAC;QACJ;AAEQ,QAAA,mBAAmB,CAAC,CAAQ,EAAA;YAClC,CAAC,CAAC,eAAe,EAAE;AACnB,YAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ;AAC9B,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,YAAA,UAAU,CAAC,MAAK,EAAG,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjD;AAEQ,QAAA,eAAe,CAAC,CAAQ,EAAA;YAC9B,CAAC,CAAC,eAAe,EAAE;YACnB,IAAI,CAAC,aAAa,EAAE;QACtB;AAGQ,QAAA,aAAa,CAAC,MAAwB,EAAA;AAC5C,YAAA,OAAO,MAAO;QAChB;AAGQ,QAAA,iBAAiB,CAAC,MAA4B,EAAA;AACpD,YAAA,OAAO,MAAO;QAChB;AAGQ,QAAA,cAAc,CAAC,MAAyB,EAAA;AAC9C,YAAA,OAAO,MAAO;QAChB;AAGQ,QAAA,YAAY,CAAC,MAAuB,EAAA;AAC1C,YAAA,OAAO,MAAO;QAChB;QAGQ,aAAa,GAAA;YACnB;QACF;AAEQ,QAAA,WAAW,CAAC,KAAa,EAAA;AAC/B,YAAA,OAAO,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,EAAE,qBAAqB,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,CAAC;QAChG;QAEQ,kBAAkB,GAAA;YACxB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK;AAAE,gBAAA,OAAO,CAAC;YAC7D,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC;QACvE;AAEQ,QAAA,cAAc,CAAC,IAAiC,EAAA;AACtD,YAAA,IAAI,IAAI,KAAK,QAAQ,EAAE;gBACrB,OAAO,IAAI,UAAQ;;;;OAIlB;YACH;AACA,YAAA,IAAI,IAAI,KAAK,MAAM,EAAE;gBACnB,OAAO,IAAI,UAAQ;;;;;;;;;;OAUlB;YACH;YACA,OAAO,IAAI,UAAQ;;;;KAIlB;QACH;QAEQ,eAAe,GAAA;AACrB,YAAA,MAAM,WAAW,GAAG;gBAClB,6BAA6B;gBAC7B,IAAI,CAAC,QAAQ,GAAG,qCAAqC,GAAG,EAAE;gBAC1D,IAAI,CAAC,cAAc,GAAG,sCAAsC,GAAG;aAChE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAE3B,YAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO,IAAI,UAAQ;sBACH,WAAW,CAAA;;;OAG1B;YACH;YACA,OAAO,IAAI,UAAQ;oBACH,WAAW,CAAA;;;KAG1B;QACH;QAEQ,YAAY,GAAA;AAClB,YAAA,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAA,CAAA,CAAE;YACnC,MAAM,KAAK,GAAc,EAAE;AAC3B,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC3B,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBAChC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC3C;qBAAO,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE;oBACjC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACzC;qBAAO;oBACL,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBAC1C;YACF;YAEA,OAAO,IAAI,UAAQ;;4EAEqD,IAAI,CAAC,MAAM,CAAA,WAAA,EAAc,KAAK,CAAA;cAC5F,IAAI,CAAC,WAAW,GAAG,CAAC,CAAA;AACoB,oDAAA,EAAA,IAAI,CAAC,WAAW,CAAA;;;KAGjE;QACH;QAEQ,WAAW,GAAA;YACjB,IAAI,CAAC,IAAI,CAAC,KAAK;gBAAE,OAAO,IAAI,CAAA,CAAA,CAAE;YAC9B,OAAO,IAAI,UAAQ;AACuC,4DAAA,EAAA,IAAI,CAAC,YAAY,CAAA;AACrE,QAAA,EAAA,IAAI,CAAC,KAAK;;KAEf;QACH;QAEQ,oBAAoB,GAAA;YAC1B,OAAO,IAAI,UAAQ;;;4BAGK,IAAI,CAAC,QAAQ,GAAG,uBAAuB,GAAG,kBAAkB,CAAA;uBACjE,CAAC,CAAQ,KAAK,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAA;UACtD,IAAI,CAAC,eAAe,EAAE;;KAE3B;QACH;QAEQ,eAAe,GAAA;YACrB,OAAO,IAAI,UAAQ;;uBAEA,CAAC,CAAQ,KAAK,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;;;;;;;;;;KAUvD;QACH;QAEQ,aAAa,GAAA;AACnB,YAAA,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,KAAK,UAAU;YAE9C,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5B,OAAO,IAAI,UAAQ;;;;;YAKb,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,oBAAoB,EAAE;;OAEhC;YACH;YAEA,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YAE1C,OAAO,IAAI,UAAQ;;AAE2C,gEAAA,EAAA,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;AACnF,UAAA,EAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,CAAS,KAAK,IAAI,UAAQ;sDACd,CAAC,KAAK,IAAI,CAAC,iBAAiB,GAAG,qCAAqC,GAAG,EAAE,CAAA;wBACvG,GAAG,CAAA;AACH,sBAAA,EAAA,IAAI,CAAC,IAAI,CAAA;;;WAGtB,CAAC;;cAEE,UAAU,CAAA;;;UAGd,IAAI,CAAC,WAAW,EAAE;UAClB,IAAI,CAAC,oBAAoB,EAAE;UAC3B,IAAI,CAAC,eAAe,EAAE;cAClB,WAAW,CAAA;;AAEE,yBAAA,EAAA,CAAC,CAAQ,KAAI,EAAG,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;;;AAG9D,yBAAA,EAAA,CAAC,CAAQ,KAAI,EAAG,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;;;AAG3E,YAAA,EAAA,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,CAAS,KAAK,IAAI,UAAQ;yDACX,CAAC,KAAK,IAAI,CAAC,iBAAiB,GAAG,mCAAmC,GAAG,EAAE,CAAA;AACjG,6BAAA,EAAA,CAAC,CAAQ,OAAO,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,6CAAA,EAAA,CAAC,GAAG,CAAC,CAAA;aACvC,CAAC;;;;KAIT;QACH;QAEQ,WAAW,GAAA;AACjB,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK;AACtE,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,EAAE;YAE1C,OAAO,IAAI,UAAQ;;AAE4B,iDAAA,EAAA,OAAO,GAAG,mCAAmC,GAAG,EAAE,CAAA;YACzF,IAAI,CAAC,QAAQ,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,SAAU,GAAG,IAAI,CAAC,KAAK,CAAC;;cAEtE,OAAO,CAAA;6EACwD,IAAI,CAAC,QAAQ,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wEACjD,QAAQ,CAAA;;;KAG3E;QACH;QAEQ,cAAc,GAAA;AACpB,YAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA,CAAA,CAAE;YAE7C,OAAO,IAAI,UAAQ;;UAEb,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAiB,KAAI;gBACxC,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,OAAO;gBAChD,OAAO,IAAI,UAAQ;;AAE6B,wDAAA,EAAA,CAAC,CAAC,IAAI,CAAA;AACyB,uFAAA,EAAA,CAAC,CAAC,IAAI,CAAA;kBAC7E,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAW,KAAI;AAC9B,oBAAA,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG;AACxD,oBAAA,MAAM,OAAO,GAAG;wBACd,8BAA8B;AAC9B,wBAAA,OAAO,GAAG,qCAAqC,GAAG,EAAE;AACpD,wBAAA,UAAU,GAAG,wCAAwC,GAAG;qBACzD,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAC3B,oBAAA,MAAM,UAAU,GAAG,OAAO,GAAG,CAAA,kBAAA,EAAqB,GAAG,CAAA,CAAE,GAAG,EAAE;oBAC5D,OAAO,IAAI,UAAQ;qCACA,OAAO,CAAA;;qCAEP,UAAU,CAAA;;4CAEH,UAAU,CAAA;AACZ,wCAAA,EAAA,OAAO,GAAG,GAAG,GAAG,EAAE,CAAA;qCACvB,MAAM,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;4BACpD,CAAC,OAAO,IAAI,GAAG,CAAA;;mBAExB;AACH,gBAAA,CAAC,CAAC;;;WAGP;AACH,YAAA,CAAC,CAAC;;KAEL;QACH;QAEQ,WAAW,GAAA;AACjB,YAAA,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC;YAE9D,OAAO,IAAI,UAAQ;wCACiB,IAAI,CAAC,OAAO,GAAG,yBAAyB,GAAG,0BAA0B,CAAA;;cAE/F,WAAW,CAAA;AACkC,yDAAA,EAAA,IAAI,CAAC,UAAU,CAAA;;AAE5D,YAAA,EAAA,CAAC,WAAW,CAAA;YACd,IAAI,CAAC,OAAO,GAAG,UAAU,GAAG,cAAc;;;KAGjD;QACH;QAEQ,SAAS,GAAA;AACf,YAAA,MAAM,UAAU,GAAG;gBACjB,mBAAmB;gBACnB,IAAI,CAAC,OAAO,GAAG,4BAA4B,GAAG;aAC/C,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AAE3B,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,OAAO,IAAI,UAAQ;yBACA,UAAU,CAAA;;;;OAI5B;YACH;YAEA,OAAO,IAAI,UAAQ;uBACA,UAAU,CAAA;;0BAEP,CAAC,IAAI,CAAC,OAAO;AAChB,qBAAA,EAAA,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;AACrC,YAAA,EAAA,IAAI,CAAC,OAAO,CAAA;;;;;;cAMZ,CAAC,IAAI,CAAC,OAAO,CAAA;;KAEtB;QACH;QAEQ,cAAc,GAAA;AACpB,YAAA,MAAM,WAAW,GAAG,CAAA,2BAAA,EAA8B,IAAI,CAAC,OAAO,yBAAyB;YAEvF,OAAO,IAAI,UAAQ;oBACH,WAAW,CAAA;;;;;;;;;;;;KAY1B;QACH;QAGA,aAAa,GAAA;AACX,YAAA,IAAI,IAAI,CAAC,OAAO,EAAE;AAChB,gBAAA,OAAO,IAAI,CAAC,cAAc,EAAE;YAC9B;AAEA,YAAA,MAAM,WAAW,GAAG,CAAA,2BAAA,EAA8B,IAAI,CAAC,OAAO,EAAE;YAEhE,OAAO,IAAI,UAAQ;oBACH,WAAW,CAAA;UACrB,IAAI,CAAC,aAAa,EAAE;;AAE2B,uDAAA,EAAA,IAAI,CAAC,IAAI,CAAA;YACtD,IAAI,CAAC,YAAY,EAAE;YACnB,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,cAAc,EAAE;YACrB,IAAI,CAAC,SAAS,EAAE;;;KAGvB;QACH;QAGA,eAAe,GAAA;AACb,YAAA,OAAO,GAAG,SAAO,CAAA,EAAG,UAAU,EAAE;QAClC;;;AAtdA,YAAA,IAAA,CAAA,IAAI,IAFO,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAgB,EAAA,iBAAA,CAAA,IAAA,EAAA,kBAAA,EAEpB,EAAE,CAAA,CAAA;YAGT,IAAA,CAAA,KAAK,IAAA,iBAAA,CAAA,IAAA,EAAA,uBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,mBAAA,EAAG,CAAC,CAAA,CAAA;YAGT,IAAA,CAAA,SAAS,IAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,uBAAA,EAAkB,IAAI,CAAA,CAAA;YAG/B,IAAA,CAAA,QAAQ,IAAA,iBAAA,CAAA,IAAA,EAAA,4BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAG,GAAG,CAAA,CAAA;YAGd,IAAA,CAAA,MAAM,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,oBAAA,EAAa,EAAE,CAAA,CAAA;YAGrB,IAAA,CAAA,MAAM,IAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,oBAAA,EAAG,CAAC,CAAA,CAAA;YAGV,IAAA,CAAA,WAAW,IAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,yBAAA,EAAG,CAAC,CAAA,CAAA;YAGf,IAAA,CAAA,QAAQ,IAAA,iBAAA,CAAA,IAAA,EAAA,8BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAqB,EAAE,CAAA,CAAA;YAG/B,IAAA,CAAA,OAAO,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,qBAAA,EAAG,IAAI,CAAA,CAAA;YAGd,IAAA,CAAA,OAAO,IAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,qBAAA,EAAuB,UAAU,CAAA,CAAA;YAGxC,IAAA,CAAA,KAAK,IAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,mBAAA,EAAG,EAAE,CAAA,CAAA;YAGV,IAAA,CAAA,YAAY,IAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,EAAiB,MAAM,CAAA,CAAA;YAGnC,IAAA,CAAA,OAAO,IAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,qBAAA,EAAG,KAAK,CAAA,CAAA;YAGf,IAAA,CAAA,QAAQ,IAAA,iBAAA,CAAA,IAAA,EAAA,0BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,sBAAA,EAAG,KAAK,CAAA,CAAA;YAGhB,IAAA,CAAA,UAAU,IAAA,iBAAA,CAAA,IAAA,EAAA,2BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,wBAAA,EAAG,EAAE,CAAA,CAAA;YAGP,IAAA,CAAA,iBAAiB,IAAA,iBAAA,CAAA,IAAA,EAAA,6BAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,+BAAA,EAAG,CAAC,CAAA,CAAA;YAGrB,IAAA,CAAA,gBAAgB,IAAA,iBAAA,CAAA,IAAA,EAAA,oCAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,8BAAA,EAA2B,EAAE,CAAA,CAAA;YAG7C,IAAA,CAAA,cAAc,IAAA,iBAAA,CAAA,IAAA,EAAA,mCAAA,CAAA,EAAA,iBAAA,CAAA,IAAA,EAAA,4BAAA,EAAG,KAAK,CAAA,CAAA;;;;;;;;;"}
@@ -110,23 +110,23 @@ let SniceToast = (() => {
110
110
  }
111
111
 
112
112
  .toast--success {
113
- background-color: #10b981;
114
- color: white;
113
+ background-color: var(--snice-color-success, rgb(22 163 74));
114
+ color: var(--snice-color-text-inverse, rgb(250 250 250));
115
115
  }
116
116
 
117
117
  .toast--error {
118
- background-color: #ef4444;
119
- color: white;
118
+ background-color: var(--snice-color-danger, rgb(220 38 38));
119
+ color: var(--snice-color-text-inverse, rgb(250 250 250));
120
120
  }
121
121
 
122
122
  .toast--warning {
123
- background-color: #f59e0b;
124
- color: white;
123
+ background-color: var(--snice-color-warning, rgb(234 179 8));
124
+ color: var(--snice-color-text, rgb(23 23 23));
125
125
  }
126
126
 
127
127
  .toast--info {
128
- background-color: #3b82f6;
129
- color: white;
128
+ background-color: var(--snice-color-primary, rgb(37 99 235));
129
+ color: var(--snice-color-text-inverse, rgb(250 250 250));
130
130
  }
131
131
 
132
132
  .toast-icon {
package/dist/index.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
package/dist/index.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
package/dist/symbols.cjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * snice v4.20.0
2
+ * snice v4.21.0
3
3
  * Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.
4
4
  * (c) 2024
5
5
  * Released under the MIT License.
@@ -8,7 +8,7 @@ App launcher grid like Google's app drawer or a phone home screen.
8
8
  // snice-app-tiles
9
9
  tiles: AppTile[] = []; // Programmatic tile data
10
10
  columns: number = 4; // Grid columns
11
- size: 'sm' | 'md' | 'lg' = 'md'; // Tile size
11
+ size: 'sm' | 'md' | 'lg' | 'xl' | '2xl' = 'md'; // Tile size
12
12
  variant: 'grid' | 'list' | 'compact' = 'grid'; // Layout variant
13
13
 
14
14
  // AppTile interface
@@ -43,6 +43,12 @@ interface AppTile {
43
43
  3. Emoji (no ASCII letters) -> emoji display
44
44
  4. ASCII text -> Material Symbols ligature
45
45
 
46
+ ## CSS Custom Properties
47
+
48
+ | Variable | Description |
49
+ |----------|-------------|
50
+ | `--snice-app-tile-icon-size` | Override icon container size (e.g. `7rem`) |
51
+
46
52
  ## Usage
47
53
 
48
54
  ```html
@@ -69,6 +75,11 @@ interface AppTile {
69
75
  <snice-app-tile name="GitHub" color="rgb(82 82 82)"></snice-app-tile>
70
76
  </snice-app-tiles>
71
77
 
78
+ <!-- Custom icon size via CSS variable -->
79
+ <snice-app-tiles columns="3" style="--snice-app-tile-icon-size: 7rem">
80
+ <snice-app-tile name="Gallery" icon="collections" color="rgb(37 99 235)"></snice-app-tile>
81
+ </snice-app-tiles>
82
+
72
83
  <!-- List variant -->
73
84
  <snice-app-tiles columns="1" variant="list">
74
85
  <snice-app-tile name="Dashboard" icon="dashboard"></snice-app-tile>
@@ -1,6 +1,6 @@
1
1
  # snice-drawer
2
2
 
3
- Slide-out panel from any viewport side with focus trap and dismissal options.
3
+ Slide-out panel from any viewport side with focus trap and dismissal options. Supports inline mode for persistent sidebars and responsive breakpoint switching.
4
4
 
5
5
  ## Properties
6
6
 
@@ -8,6 +8,10 @@ Slide-out panel from any viewport side with focus trap and dismissal options.
8
8
  open: boolean = false; // Visibility state
9
9
  position: 'left'|'right'|'top'|'bottom' = 'left';
10
10
  size: 'small'|'medium'|'large'|'xl'|'xxl'|'xxxl'|'full' = 'medium';
11
+ inline: boolean = false; // Sit in document flow (no overlay/backdrop/focus-trap)
12
+ breakpoint: number = 0; // Viewport px width: above → inline, below → overlay
13
+ noHeader: boolean = false; // attribute: no-header — hide header entirely
14
+ noFooter: boolean = false; // attribute: no-footer — hide footer entirely
11
15
  noBackdrop: boolean = false; // attribute: no-backdrop
12
16
  noBackdropDismiss: boolean = false; // attribute: no-backdrop-dismiss
13
17
  noEscapeDismiss: boolean = false; // attribute: no-escape-dismiss
@@ -61,6 +65,42 @@ drawer.hide();
61
65
  drawer.toggle();
62
66
  ```
63
67
 
68
+ ## Inline Mode
69
+
70
+ Renders in document flow — no overlay, backdrop, focus trap, or escape handler. Drawer panel is always visible.
71
+
72
+ ```html
73
+ <!-- Always-visible sidebar -->
74
+ <div style="display:flex; height:100vh">
75
+ <snice-drawer inline position="left" size="small">
76
+ <span slot="title">Sidebar</span>
77
+ <nav>...</nav>
78
+ </snice-drawer>
79
+ <main>...</main>
80
+ </div>
81
+ ```
82
+
83
+ - CSS uses border separator instead of box-shadow
84
+ - `open` property is ignored (always visible)
85
+ - Border direction matches `position` (left→border-right, right→border-left, etc.)
86
+
87
+ ## Breakpoint Mode
88
+
89
+ Responsive switching: inline above the breakpoint, overlay below. Uses `window.matchMedia`.
90
+
91
+ ```html
92
+ <!-- Inline on desktop (≥768px), overlay on mobile (<768px) -->
93
+ <snice-drawer breakpoint="768" position="left" size="small">
94
+ <span slot="title">Navigation</span>
95
+ ...
96
+ </snice-drawer>
97
+ ```
98
+
99
+ - Sets/removes the `inline` attribute dynamically via matchMedia listener
100
+ - Crossing the breakpoint while open: overlay behaviors torn down/set up automatically
101
+ - Listener cleaned up on `@dispose()`
102
+ - `@watch('breakpoint')` tears down old listener and sets up new one when value changes
103
+
64
104
  ## Features
65
105
 
66
106
  - Slides from any edge (left, right, top, bottom)
@@ -71,6 +111,8 @@ drawer.toggle();
71
111
  - Escape key to close
72
112
  - Push content mode
73
113
  - Persistent mode (no close button)
114
+ - Inline mode (persistent sidebar in document flow)
115
+ - Breakpoint mode (responsive inline ↔ overlay switching)
74
116
  - ARIA attributes (role, aria-modal, aria-hidden)
75
117
 
76
118
  ## Notes
@@ -78,3 +120,5 @@ drawer.toggle();
78
120
  - Push content targets first `<main>` or `<body>`
79
121
  - Contained mode positions relative to parent
80
122
  - Default dismissal: close button, backdrop click, Escape key
123
+ - Inline CSS must come after all position/size rules in stylesheet (specificity tie → source order wins)
124
+ - Breakpoint and inline can coexist; breakpoint toggles the `inline` attribute at runtime
@@ -95,17 +95,27 @@ Use `variant="list"` with `columns="1"` for a vertical list layout.
95
95
 
96
96
  ### Sizes
97
97
 
98
- Use the `size` attribute to change tile size.
98
+ Use the `size` attribute to change tile size. Available sizes: `sm`, `md` (default), `lg`, `xl`, `2xl`.
99
99
 
100
100
  ```html
101
- <snice-app-tiles columns="2" size="sm">
102
- <snice-app-tile name="Home" icon="home"></snice-app-tile>
103
- <snice-app-tile name="Search" icon="search"></snice-app-tile>
101
+ <snice-app-tiles columns="2" size="xl">
102
+ <snice-app-tile name="Photos" icon="photo_library" color="rgb(22 163 74)"></snice-app-tile>
103
+ <snice-app-tile name="Maps" icon="map" color="rgb(14 165 233)"></snice-app-tile>
104
104
  </snice-app-tiles>
105
105
 
106
- <snice-app-tiles columns="2" size="lg">
107
- <snice-app-tile name="Music" icon="music_note" color="rgb(220 38 38)"></snice-app-tile>
108
- <snice-app-tile name="Games" icon="sports_esports" color="rgb(22 163 74)"></snice-app-tile>
106
+ <snice-app-tiles columns="2" size="2xl">
107
+ <snice-app-tile name="Camera" icon="photo_camera" color="rgb(147 51 234)"></snice-app-tile>
108
+ <snice-app-tile name="Weather" icon="wb_sunny" color="rgb(234 88 12)"></snice-app-tile>
109
+ </snice-app-tiles>
110
+ ```
111
+
112
+ ### Custom Icon Size
113
+
114
+ Use the `--snice-app-tile-icon-size` CSS variable to set a fully custom icon size.
115
+
116
+ ```html
117
+ <snice-app-tiles columns="3" style="--snice-app-tile-icon-size: 7rem">
118
+ <snice-app-tile name="Gallery" icon="collections" color="rgb(37 99 235)"></snice-app-tile>
109
119
  </snice-app-tiles>
110
120
  ```
111
121
 
@@ -124,7 +134,7 @@ Use the `badge` attribute to display a notification badge on a tile.
124
134
  |----------|------|---------|-------------|
125
135
  | `tiles` | `AppTile[]` | `[]` | Array of tile data objects (programmatic mode) |
126
136
  | `columns` | `number` | `4` | Number of grid columns |
127
- | `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | Tile size |
137
+ | `size` | `'sm' \| 'md' \| 'lg' \| 'xl' \| '2xl'` | `'md'` | Tile size |
128
138
  | `variant` | `'grid' \| 'list' \| 'compact'` | `'grid'` | Layout variant |
129
139
 
130
140
  ### AppTile Interface
@@ -154,6 +164,12 @@ Use the `badge` attribute to display a notification badge on a tile.
154
164
  |-------|--------|-------------|
155
165
  | `tile-click` | `{ tile: AppTile, index: number }` | Fired when a tile is clicked |
156
166
 
167
+ ## CSS Custom Properties
168
+
169
+ | Variable | Description |
170
+ |----------|-------------|
171
+ | `--snice-app-tile-icon-size` | Override icon container width/height. Takes precedence over the `size` attribute. |
172
+
157
173
  ## Icon Resolution Order
158
174
 
159
175
  1. No icon provided: displays first letter of name on a colored circle
@@ -48,6 +48,8 @@ openBtn.addEventListener('click', () => drawer.show());
48
48
  | `open` | `boolean` | `false` | Whether the drawer is visible |
49
49
  | `position` | `'left' \| 'right' \| 'top' \| 'bottom'` | `'left'` | Side from which the drawer slides in |
50
50
  | `size` | `'small' \| 'medium' \| 'large' \| 'xl' \| 'xxl' \| 'xxxl' \| 'full'` | `'medium'` | Width/height of the drawer |
51
+ | `noHeader` | `boolean` | `false` | Hide the header (title + close button) entirely |
52
+ | `noFooter` | `boolean` | `false` | Hide the footer slot entirely |
51
53
  | `noBackdrop` | `boolean` | `false` | Hide the backdrop overlay |
52
54
  | `noBackdropDismiss` | `boolean` | `false` | Prevent closing when clicking backdrop |
53
55
  | `noEscapeDismiss` | `boolean` | `false` | Prevent closing with Escape key |
@@ -55,6 +57,8 @@ openBtn.addEventListener('click', () => drawer.show());
55
57
  | `persistent` | `boolean` | `false` | Hide close button and prevent all dismissal |
56
58
  | `pushContent` | `boolean` | `false` | Push main content instead of overlaying |
57
59
  | `contained` | `boolean` | `false` | Position relative to parent instead of viewport |
60
+ | `inline` | `boolean` | `false` | Render in document flow as a persistent sidebar |
61
+ | `breakpoint` | `number` | `0` | Viewport width (px) above which drawer switches to inline mode |
58
62
 
59
63
  ## Methods
60
64
 
@@ -257,6 +261,67 @@ Content for the drawer footer. Typically used for action buttons.
257
261
  </snice-drawer>
258
262
  ```
259
263
 
264
+ ### Inline Mode
265
+
266
+ The `inline` attribute renders the drawer directly in the document flow as a persistent sidebar. No overlay, backdrop, focus trap, or escape handler is used. The drawer is always visible and participates in the parent's layout.
267
+
268
+ ```html
269
+ <div style="display: flex; height: 100vh;">
270
+ <snice-drawer inline position="left" size="small">
271
+ <span slot="title">Sidebar</span>
272
+ <nav>
273
+ <a href="/">Home</a>
274
+ <a href="/explore">Explore</a>
275
+ <a href="/settings">Settings</a>
276
+ </nav>
277
+ </snice-drawer>
278
+
279
+ <main style="flex: 1; padding: 1rem;">
280
+ <h1>Main Content</h1>
281
+ <p>The sidebar sits alongside this content.</p>
282
+ </main>
283
+ </div>
284
+ ```
285
+
286
+ A border separator is automatically applied based on the `position`:
287
+ - `left` → right border
288
+ - `right` → left border
289
+ - `top` → bottom border
290
+ - `bottom` → top border
291
+
292
+ ### Responsive Breakpoint
293
+
294
+ The `breakpoint` attribute enables responsive behavior: the drawer renders inline when the viewport is at or above the specified width (in pixels), and switches to a standard overlay drawer below it.
295
+
296
+ ```html
297
+ <!-- Inline sidebar on desktop (≥768px), overlay drawer on mobile (<768px) -->
298
+ <snice-drawer breakpoint="768" position="left" size="small">
299
+ <span slot="title">Navigation</span>
300
+ <nav>
301
+ <a href="/">Home</a>
302
+ <a href="/products">Products</a>
303
+ <a href="/settings">Settings</a>
304
+ </nav>
305
+ </snice-drawer>
306
+ ```
307
+
308
+ The breakpoint uses `window.matchMedia` internally. When the viewport crosses the breakpoint:
309
+ - **Above breakpoint**: The `inline` attribute is set automatically. Overlay behaviors (backdrop, focus trap, escape handler) are torn down.
310
+ - **Below breakpoint**: The `inline` attribute is removed. The drawer reverts to standard overlay mode.
311
+
312
+ You can combine `breakpoint` with `open` to control the overlay state on mobile:
313
+
314
+ ```html
315
+ <snice-drawer id="nav" breakpoint="1024" position="left" size="small">
316
+ <span slot="title">Menu</span>
317
+ <nav>...</nav>
318
+ </snice-drawer>
319
+
320
+ <button onclick="document.getElementById('nav').toggle()">
321
+ Toggle Menu
322
+ </button>
323
+ ```
324
+
260
325
  ### Filters Panel
261
326
 
262
327
  ```html
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "snice",
3
- "version": "4.20.1",
3
+ "version": "4.22.0",
4
4
  "type": "module",
5
5
  "description": "Imperative TypeScript framework for building vanilla web components with decorators, differential rendering, routing, and controllers. No virtual DOM, no build complexity.",
6
6
  "main": "dist/index.cjs",