{
  "version": 3,
  "sources": ["/cdn/shop/t/199/assets/pab-guided-mode.js?pab_build=20260914_174"],
  "sourcesContent": ["(function () {\n  var STORAGE_KEY = \"pab-guided-mode-v1\";\n  var MOBILE_QUERY = \"(max-width: 767px)\";\n  var DESKTOP_GUIDE_QUERY = \"(min-width: 1400px), (min-width: 1200px) and (orientation: portrait)\";\n  var REDUCE_QUERY = \"(prefers-reduced-motion: reduce)\";\n  var GOLD = \"#c9a56a\";\n\n  var STEPS = [\n    {\n      id: \"design\",\n      title: \"Bill design\",\n      copy: \"Choose a series and denomination. Examples appear below.\",\n      skip: false\n    },\n    {\n      id: \"tier\",\n      title: \"Design level\",\n      copy: \"Set how much of the bill to customize.\",\n      skip: false\n    },\n    {\n      id: \"quantity\",\n      title: \"Quantity\",\n      copy: \"Two-stack minimum.<br>Add more stacks to lower the price per stack.\",\n      skip: false\n    },\n    {\n      id: \"paper\",\n      title: \"Paper & features\",\n      copy: \"Signature paper included. The rest is optional.\",\n      skip: false\n    },\n    {\n      id: \"accessories\",\n      title: \"Accessories\",\n      copy: \"Only if you need them.\",\n      skip: true\n    },\n    {\n      id: \"checkout\",\n      title: \"Name your design\",\n      copy: \"Name it something you'll recognize.\",\n      skip: false\n    },\n    {\n      id: \"cart\",\n      title: \"Add to cart\",\n      copy: \"Add this design to your cart.\",\n      skip: false\n    }\n  ];\n\n  function prefersReducedMotion() {\n    return window.matchMedia(REDUCE_QUERY).matches;\n  }\n\n  function isMobile() {\n    return window.matchMedia(MOBILE_QUERY).matches;\n  }\n\n  function isDesktopGuide() {\n    return window.matchMedia(DESKTOP_GUIDE_QUERY).matches && !isMobile();\n  }\n\n  function isTabletGuide() {\n    return !isMobile() && !isDesktopGuide();\n  }\n\n  function readStore() {\n    try {\n      return JSON.parse(sessionStorage.getItem(STORAGE_KEY) || \"null\") || {};\n    } catch (_e) {\n      return {};\n    }\n  }\n\n  function writeStore(state) {\n    try {\n      sessionStorage.setItem(STORAGE_KEY, JSON.stringify({\n        on: !!state.on,\n        paused: !!state.paused,\n        index: state.index\n      }));\n    } catch (_e) {}\n  }\n\n  function clearStore() {\n    try {\n      sessionStorage.removeItem(STORAGE_KEY);\n    } catch (_e) {}\n  }\n\n  function qtyValue(root) {\n    var field = root.querySelector(\"#qty\");\n    var raw = field && (field.value != null ? field.value : field.textContent);\n    var n = parseInt(String(raw || \"\").replace(/[^0-9]/g, \"\"), 10);\n    return Number.isFinite(n) ? n : 0;\n  }\n\n  function customValid(root) {\n    var selected = root.querySelector(\"#denoms .selected:not([hidden])\");\n    var denom = selected && selected.dataset.denom;\n    if (denom !== \"$custom\" && denom !== \"custom\") return true;\n    var input = root.querySelector(\"#pab-custom-denom-input\");\n    if (window.PABCustomDenomination && typeof window.PABCustomDenomination.isValid === \"function\") {\n      return window.PABCustomDenomination.isValid();\n    }\n    return !!(input && String(input.value || \"\").replace(/[^0-9]/g, \"\"));\n  }\n\n  function seriesReady(root) {\n    return !!root.querySelector(\"#series button.selected:not([hidden])\");\n  }\n\n  function denomReady(root) {\n    return !!(root.querySelector(\"#denoms button.selected:not([hidden])\") && customValid(root));\n  }\n\n  function designReady(root) {\n    return seriesReady(root) && denomReady(root);\n  }\n\n  function tierReady(root) {\n    return !!root.querySelector(\".tier.selected\");\n  }\n\n  function wrapGroup(nodes, id) {\n    var first = nodes[0];\n    if (!first || !first.parentNode) return null;\n    var existing = first.closest(\"[data-pab-guide-region='\" + id + \"']\");\n    if (!existing && first.parentNode.querySelector) {\n      existing = first.parentNode.querySelector(\"[data-pab-guide-region='\" + id + \"']\");\n    }\n    if (existing) {\n      nodes.forEach(function (node) {\n        if (node && node.parentNode !== existing) existing.appendChild(node);\n      });\n      return existing;\n    }\n    var wrap = document.createElement(\"div\");\n    wrap.className = \"pab-guide-region\";\n    wrap.dataset.pabGuideRegion = id;\n    first.parentNode.insertBefore(wrap, first);\n    nodes.forEach(function (node) {\n      if (node) wrap.appendChild(node);\n    });\n    return wrap;\n  }\n\n  function regionFrameRect(region) {\n    var box = region.getBoundingClientRect();\n    var top = box.top;\n    var left = box.left;\n    var right = box.right;\n    var bottom = box.bottom;\n    function include(el) {\n      if (!el || !el.getBoundingClientRect) return;\n      var r = el.getBoundingClientRect();\n      if (r.width < 2 || r.height < 2) return;\n      top = Math.min(top, r.top);\n      left = Math.min(left, r.left);\n      right = Math.max(right, r.right);\n      bottom = Math.max(bottom, r.bottom);\n    }\n    include(region.querySelector(\".section-heading\"));\n    include(region.querySelector(\".eyebrow\"));\n    var order = region.closest(\".order-column\");\n    var id = region.getAttribute(\"data-pab-guide-region\");\n    if (order && id === \"design\") {\n      var designHeading = order.querySelector(\".section-heading:not(.tier-heading)\");\n      include(designHeading);\n      if (designHeading && designHeading.nextElementSibling && designHeading.nextElementSibling.classList.contains(\"section-note\")) {\n        include(designHeading.nextElementSibling);\n      }\n    }\n    if (order && id === \"tier\") {\n      include(region.querySelector(\".tier-heading\"));\n      include(region.querySelector(\".tier-heading .eyebrow\"));\n    }\n    include(region.querySelector(\"#tier-features\"));\n    include(region.querySelector(\".tier-grid\"));\n    if (id !== \"cart\") {\n      var prev = region.previousElementSibling;\n      while (prev && !prev.getAttribute(\"data-pab-guide-region\") && !(prev.classList && prev.classList.contains(\"pab-guide-launch\"))) {\n        include(prev);\n        include(prev.querySelector && prev.querySelector(\".eyebrow\"));\n        include(prev.querySelector && prev.querySelector(\".section-heading\"));\n        prev = prev.previousElementSibling;\n      }\n    }\n    return {\n      top: top,\n      left: left,\n      right: right,\n      bottom: bottom,\n      width: right - left,\n      height: bottom - top\n    };\n  }\n\n  function collectRegions(root) {\n    var order = root.querySelector(\".order-column\");\n    if (!order) return null;\n    var heading = order.querySelector(\".section-heading:not(.tier-heading)\");\n    var note = heading && heading.nextElementSibling && heading.nextElementSibling.classList.contains(\"section-note\")\n      ? heading.nextElementSibling\n      : null;\n    var format = order.querySelector(\".format-card\");\n    var tierHeading = order.querySelector(\".tier-heading\");\n    var tierNote = tierHeading && tierHeading.nextElementSibling && tierHeading.nextElementSibling.classList.contains(\"section-note\")\n      ? tierHeading.nextElementSibling\n      : null;\n    var summary = order.querySelector(\".summary\");\n    var regions = {\n      design: wrapGroup([heading, note, format].filter(Boolean), \"design\"),\n      tier: wrapGroup([\n        tierHeading,\n        tierNote,\n        order.querySelector(\".tier-grid\"),\n        order.querySelector(\"#compare\"),\n        order.querySelector(\"#tier-features\")\n      ].filter(Boolean), \"tier\"),\n      quantity: wrapGroup([order.querySelector(\".config-section\")].filter(Boolean), \"quantity\"),\n      paper: wrapGroup([order.querySelector(\".option-list\")].filter(Boolean), \"paper\"),\n      accessories: wrapGroup([order.querySelector(\".accessories\")].filter(Boolean), \"accessories\"),\n      checkout: wrapGroup([\n        order.querySelector(\".name-field\"),\n        order.querySelector(\".next-steps\")\n      ].filter(Boolean), \"checkout\"),\n      cart: summary\n    };\n    if (summary && !summary.dataset.pabGuideRegion) {\n      summary.classList.add(\"pab-guide-region\");\n      summary.dataset.pabGuideRegion = \"cart\";\n    }\n    if (regions.design && heading && heading.parentNode !== regions.design) {\n      regions.design.insertBefore(heading, regions.design.firstChild);\n    }\n    if (regions.design && note && note.parentNode !== regions.design) {\n      var afterHeading = regions.design.querySelector(\".section-heading\");\n      regions.design.insertBefore(note, afterHeading && afterHeading.nextSibling || regions.design.firstChild);\n    }\n    return regions.design && regions.tier && regions.quantity && regions.paper && regions.accessories && regions.checkout && regions.cart\n      ? regions\n      : null;\n  }\n\n  function roundedRectPath(x, y, w, h, r) {\n    function pt(n) {\n      return Math.round(n * 10) / 10;\n    }\n    r = Math.min(r, w / 2, h / 2);\n    if (r < 0) r = 0;\n    var x2 = x + w;\n    var y2 = y + h;\n    return \"M \" + pt(x + r) + \" \" + pt(y) +\n      \" H \" + pt(x2 - r) +\n      \" A \" + r + \" \" + r + \" 0 0 1 \" + pt(x2) + \" \" + pt(y + r) +\n      \" V \" + pt(y2 - r) +\n      \" A \" + r + \" \" + r + \" 0 0 1 \" + pt(x2 - r) + \" \" + pt(y2) +\n      \" H \" + pt(x + r) +\n      \" A \" + r + \" \" + r + \" 0 0 1 \" + pt(x) + \" \" + pt(y2 - r) +\n      \" V \" + pt(y + r) +\n      \" A \" + r + \" \" + r + \" 0 0 1 \" + pt(x + r) + \" \" + pt(y) +\n      \" Z\";\n  }\n\n  function ensureGuideStyles() {\n    var css =\n      \"#pab-mockup-root.pab-guide-on .order-column,#pab-mockup-root.pab-guide-on .configurator{overflow:visible!important}\" +\n      \"#pab-mockup-root.pab-guide-on .pab-guide-spotlight:not(.summary){position:relative!important;overflow:visible!important}\" +\n      \"#pab-mockup-root.pab-guide-on .summary.pab-guide-spotlight{position:sticky!important;bottom:24px!important;top:auto!important;overflow:visible!important}\" +\n      \"#pab-mockup-root .pab-guide-spotlight > #pab-guide-focus{position:absolute!important;z-index:0}\" +\n      \"#pab-mockup-root .pab-guide-spotlight > #pab-guide-card{position:absolute!important;z-index:4}\" +\n      \"#pab-guide-portal{position:absolute!important;left:0!important;top:0!important;width:0!important;height:0!important;overflow:visible!important;pointer-events:none!important;z-index:2147483000!important}\" +\n      \"#pab-guide-portal[hidden]{display:none!important}\" +\n      \"#pab-guide-card,#pab-guide-dock,.pab-guide-card,.pab-guide-dock{pointer-events:auto!important;box-sizing:border-box!important;color:#1d1d1f!important}\" +\n      \"#pab-guide-card,.pab-guide-card{position:absolute!important;z-index:2;width:min(248px,calc(100vw - 32px));padding:2px 4px 0;border:0;border-radius:20px;box-shadow:none;background:none!important;background-color:transparent!important}\" +\n      \"#pab-guide-card.pab-guide-card--attached{background:none!important;background-color:transparent!important;box-shadow:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}\" +\n      \"#pab-guide-dock,.pab-guide-dock{position:fixed!important;z-index:3;display:flex;align-items:center;flex-wrap:nowrap;gap:4px 6px;width:fit-content;max-width:min(360px,calc(100vw - 32px));height:auto;max-height:56px;padding:4px 6px 4px 14px;border:1px solid rgba(29,29,31,.1);border-radius:999px;box-shadow:0 10px 28px rgba(20,20,22,.12);background:#fff!important}\" +\n      \"#pab-guide-card::before,#pab-guide-card::after,#pab-guide-dock::before,#pab-guide-dock::after{content:none!important;display:none!important;width:0!important;height:0!important;border:0!important;box-shadow:none!important;background:none!important;inset:auto!important}\" +\n      \"#pab-guide-card[hidden],#pab-guide-dock[hidden],.pab-guide-card[hidden],.pab-guide-dock[hidden]{display:none!important}\" +\n      \"#pab-guide-dock span,.pab-guide-dock span{margin:0 6px 0 0;color:#1d1d1f;font:600 12px/1.2 -apple-system,BlinkMacSystemFont,'SF Pro Text',Helvetica,Arial,sans-serif;letter-spacing:-.01em;white-space:nowrap}\" +\n      \"#pab-guide-card button,#pab-guide-dock button,.pab-guide-card button,.pab-guide-dock button{appearance:none;-webkit-appearance:none;margin:0;border-radius:999px;font:600 12px/1 -apple-system,BlinkMacSystemFont,'SF Pro Text',Helvetica,Arial,sans-serif;letter-spacing:-.01em;cursor:pointer;color:#1d1d1f;-webkit-text-fill-color:#1d1d1f}\" +\n      \"#pab-guide-dock button,.pab-guide-dock button{min-height:32px;padding:0 11px;border:0;background:transparent;color:#6e6e73;-webkit-text-fill-color:#6e6e73}\" +\n      \"#pab-guide-dock [data-pab-guide-exit],#pab-guide-dock [data-pab-guide-resume]{color:#1d1d1f;-webkit-text-fill-color:#1d1d1f}\" +\n      \".pab-guide-kicker{margin:0 0 5px;color:#9b8a68;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}\" +\n      \"#pab-guide-card h2,.pab-guide-card h2{margin:0 0 6px;font-size:15px;font-weight:600;letter-spacing:-.022em;line-height:1.2}\" +\n      \".pab-guide-copy{margin:0;color:#6e6e73;font-size:13px;line-height:1.4;max-width:34em}\" +\n      \".pab-guide-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}\" +\n      \"#pab-guide-card [data-pab-guide-back],#pab-guide-card [data-pab-guide-finish],#pab-guide-card [data-pab-guide-card-pause]{min-height:32px;padding:0 12px;border:0;background:transparent;color:#6e6e73;-webkit-text-fill-color:#6e6e73}\" +\n      \"#pab-guide-card [data-pab-guide-skip]{min-height:32px;padding:0 13px;border:1px solid rgba(29,29,31,.14);background:#fff}\" +\n      \"#pab-guide-card [data-pab-guide-continue],#pab-guide-card [data-pab-guide-card-resume]{margin-left:auto;min-height:32px;padding:0 14px;border:1px solid #1d1d1f;background:#1d1d1f;color:#fff;-webkit-text-fill-color:#fff}\" +\n      \"#pab-guide-card [data-pab-guide-continue][disabled]{cursor:not-allowed;border-color:rgba(29,29,31,.18);background:rgba(29,29,31,.28)}\" +\n      \"#pab-guide-card button:focus-visible,#pab-guide-dock button:focus-visible{outline:2px solid rgba(201,168,106,.7);outline-offset:2px}\" +\n      \"#pab-guide-focus{position:absolute;z-index:0;overflow:visible;pointer-events:none;display:block}\" +\n      \"#pab-guide-focus[hidden]{display:none!important}\" +\n      \"#pab-guide-focus path{fill:none!important;stroke:\" + GOLD + \";stroke-width:2;stroke-linejoin:round;stroke-linecap:round}\" +\n      \"#pab-mockup-root.pab-guide-on.pab-guide-step-design #open-examples [data-pab-guide-link-text],#pab-mockup-root.pab-guide-on.pab-guide-step-design #open-details{text-decoration:underline;text-decoration-color:\" + GOLD + \";text-decoration-thickness:1px;text-underline-offset:4px}\" +\n      \"@media (min-width:1400px),(min-width:1200px) and (orientation:portrait){html body #site-main #pab-mockup-root.pab-guide-on.pab-guide-focus-live .pab-guide-spotlight::before{content:none!important;display:none!important;border:0!important;box-shadow:none!important}html body #pab-guide-card,html body .pab-guide-card{position:absolute!important;width:min(248px,calc(100vw - 32px));height:auto!important;max-height:none;border-radius:20px;background:none!important;margin:0!important;transform:none!important}html body #pab-guide-dock,html body .pab-guide-dock{position:fixed!important;top:auto!important;left:auto!important;right:16px!important;bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;flex-wrap:nowrap!important;width:fit-content!important;max-width:min(360px,calc(100vw - 32px))!important;height:auto!important;max-height:56px!important}}\" +\n      \"@media (min-width:768px) and (max-width:1199px) and (min-height:501px),(min-width:768px) and (max-width:1399px) and (orientation:landscape) and (min-height:501px),(min-width:768px) and (max-width:1199px) and (orientation:landscape) and (max-height:500px){#pab-guide-focus,#pab-guide-focus-sat{display:none!important;width:0!important;height:0!important}html body #site-main #pab-mockup-root.pab-guide-on .summary.pab-guide-spotlight{position:relative!important;bottom:auto!important;top:auto!important}html body #pab-guide-card,html body .pab-guide-card{position:relative!important;top:auto!important;right:auto!important;bottom:auto!important;left:auto!important;inset:auto!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;margin:12px 0 8px!important;padding:14px 16px 12px!important;border-radius:16px!important;background:#fff!important;background-color:#fff!important;box-shadow:0 10px 28px rgba(20,20,22,.12)!important;transform:none!important;overflow:visible!important;z-index:4}html body #pab-guide-card.pab-guide-card--attached{background:#fff!important;background-color:#fff!important;box-shadow:0 10px 28px rgba(20,20,22,.12)!important}html body #pab-guide-dock,html body .pab-guide-dock{display:flex!important;flex-wrap:nowrap!important;align-items:center!important;position:fixed!important;top:auto!important;left:auto!important;right:16px!important;bottom:calc(16px + env(safe-area-inset-bottom,0px))!important;inset:auto 16px calc(16px + env(safe-area-inset-bottom,0px)) auto!important;width:fit-content!important;max-width:min(360px,calc(100vw - 32px))!important;height:auto!important;max-height:56px!important;min-height:0!important;overflow:visible!important;transform:none!important;border-radius:999px!important;z-index:40!important}html body #pab-guide-portal{display:block!important;width:0!important;height:0!important;overflow:visible!important;inset:0 auto auto 0!important}}\" +\n      \"@media (max-width:767px){#pab-guide-focus,#pab-guide-focus-sat{display:none!important;width:0!important;height:0!important}html body #pab-guide-card,html body .pab-guide-card{position:fixed!important;width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;height:auto!important;max-height:none!important;border-radius:16px!important;background:#fff!important;transform:none!important}html body #pab-guide-dock,html body .pab-guide-dock{position:fixed!important;top:auto!important;left:auto!important;right:12px!important;width:fit-content!important;max-width:min(360px,calc(100vw - 24px))!important;height:auto!important;max-height:56px!important;flex-wrap:nowrap!important;transform:none!important;border-radius:999px!important}}\" +\n      \"@media (prefers-reduced-motion:reduce){#pab-guide-card,#pab-guide-dock,.pab-guide-card,.pab-guide-dock,#pab-guide-focus{transition:none!important}}\";\n    var style = document.getElementById(\"pab-guided-mode-css\");\n    if (!style) {\n      style = document.createElement(\"style\");\n      style.id = \"pab-guided-mode-css\";\n      document.head.appendChild(style);\n    }\n    style.textContent = css;\n  }\n\n  function wrapExamplesLinkText(root) {\n    var button = root.querySelector(\"#open-examples\");\n    if (!button || button.querySelector(\"[data-pab-guide-link-text]\")) return;\n    var label = document.createElement(\"span\");\n    label.setAttribute(\"data-pab-guide-link-text\", \"\");\n    Array.prototype.slice.call(button.childNodes).forEach(function (node) {\n      if (node.nodeType === 1 && node.tagName === \"SPAN\") return;\n      label.appendChild(node);\n    });\n    if (!label.childNodes.length) return;\n    var arrow = button.querySelector(\"span\");\n    button.insertBefore(label, arrow || null);\n  }\n\n  function initPabGuidedMode() {\n    var root = document.getElementById(\"pab-mockup-root\");\n    if (!root || root.dataset.pabGuidedReady === \"true\") return;\n    var order = root.querySelector(\".order-column\");\n    var regions = collectRegions(root);\n    if (!order || !regions) return;\n    root.dataset.pabGuidedReady = \"true\";\n\n    var saved = readStore();\n    var savedIndex = Number.isInteger(saved.index) ? saved.index : 0;\n    var state = {\n      on: !!saved.on,\n      paused: !!saved.paused,\n      index: Math.max(0, Math.min(STEPS.length - 1, savedIndex))\n    };\n\n    var launch = order.querySelector('[data-pab-guide-launch]');\n    if (!launch) return;\n    var resetButton = launch.querySelector('[data-pab-desktop-reset]');\n    var priceCopy = root.querySelector('[data-pab-price-copy]');\n    resetButton.addEventListener('click', function () {\n      openDesktopReset();\n    });\n\n    var resetDialog;\n    function resetCopy(key, fallback) {\n      return priceCopy && priceCopy.getAttribute('data-' + key) || fallback;\n    }\n    function openDesktopReset() {\n      if (!resetDialog) {\n        resetDialog = document.createElement('dialog');\n        resetDialog.id = 'pab-desktop-reset-confirm';\n        resetDialog.className = 'pab-reset-dialog';\n        resetDialog.setAttribute('aria-labelledby', 'pab-desktop-reset-title');\n        resetDialog.setAttribute('aria-describedby', 'pab-desktop-reset-copy');\n        var title = document.createElement('h2');\n        title.id = 'pab-desktop-reset-title';\n        title.textContent = resetCopy('reset-title', 'Start over?');\n        var description = document.createElement('p');\n        description.id = 'pab-desktop-reset-copy';\n        description.textContent = resetCopy('reset-copy', 'Your selections will be cleared.');\n        var actions = document.createElement('form');\n        actions.method = 'dialog';\n        var keep = document.createElement('button');\n        keep.type = 'submit';\n        keep.value = 'keep';\n        keep.textContent = resetCopy('keep-editing', 'Keep editing');\n        var restart = document.createElement('button');\n        restart.type = 'submit';\n        restart.value = 'reset';\n        restart.className = 'pab-reset-dialog__restart';\n        restart.textContent = resetCopy('start-over', 'Start over');\n        actions.appendChild(keep);\n        actions.appendChild(restart);\n        resetDialog.appendChild(title);\n        resetDialog.appendChild(description);\n        resetDialog.appendChild(actions);\n        document.body.appendChild(resetDialog);\n        resetDialog.addEventListener('close', function () {\n          if (resetDialog.returnValue !== 'reset') return;\n          clearStore();\n          if (window.PAB && window.PAB.clearLastAddedConfiguratorState) window.PAB.clearLastAddedConfiguratorState();\n          try {\n            ['pab-mobile-guide-v1', 'pab-mobile-guide-resume-v1', 'pab-mobile-design-started-v1', 'pab-mobile-guide-open-step-v1', 'pab-mobile-guide-exited-v1'].forEach(function (key) {\n              sessionStorage.removeItem(key);\n              localStorage.removeItem(key);\n            });\n            sessionStorage.setItem('pab-mobile-new-design-v1', 'true');\n          } catch (_error) {}\n          ['pab_mobile_guide_resume', 'pab_mobile_guide_step', 'pab_mobile_design_started', 'pab_mobile_guide_exited'].forEach(function (name) {\n            document.cookie = name + '=; path=/; SameSite=Lax; Secure; max-age=0';\n          });\n          var fresh = new URL(window.location.href);\n          fresh.searchParams.delete('pab_edit');\n          fresh.searchParams.set('pab_reset', '1');\n          fresh.hash = '';\n          try { window.history.scrollRestoration = 'manual'; } catch (_error) {}\n          window.scrollTo({ top: 0, left: 0, behavior: 'instant' });\n          window.location.assign(fresh.toString());\n        });\n      }\n      resetDialog.returnValue = '';\n      resetDialog.showModal();\n      resetDialog.querySelector('button[value=\"keep\"]').focus({ preventScroll: true });\n    }\n    var lowerResetButton = root.querySelector('#reset');\n    if (lowerResetButton) window.addEventListener('click', function (event) {\n      if (isMobile() || !lowerResetButton.contains(event.target)) return;\n      event.preventDefault();\n      event.stopImmediatePropagation();\n      openDesktopReset();\n    }, true);\n\n    ensureGuideStyles();\n    wrapExamplesLinkText(root);\n    Array.prototype.slice.call(document.querySelectorAll(\"body > .pab-guide-card, body > .pab-guide-dock\")).forEach(function (node) {\n      node.parentNode.removeChild(node);\n    });\n\n    var portal = document.getElementById(\"pab-guide-portal\");\n    if (!portal) {\n      portal = document.createElement(\"div\");\n      portal.id = \"pab-guide-portal\";\n      portal.setAttribute(\"data-pab-guide-portal\", \"\");\n      portal.hidden = true;\n    } else {\n      portal.textContent = \"\";\n    }\n\n    var focusSvg = document.createElementNS(\"http://www.w3.org/2000/svg\", \"svg\");\n    focusSvg.id = \"pab-guide-focus\";\n    focusSvg.setAttribute(\"aria-hidden\", \"true\");\n    focusSvg.hidden = true;\n    var focusPath = document.createElementNS(\"http://www.w3.org/2000/svg\", \"path\");\n    focusSvg.appendChild(focusPath);\n\n    var card = document.createElement(\"aside\");\n    card.id = \"pab-guide-card\";\n    card.className = \"pab-guide-card\";\n    card.hidden = true;\n    card.setAttribute(\"role\", \"region\");\n    card.setAttribute(\"aria-labelledby\", \"pab-guide-title\");\n    card.innerHTML =\n      '<p class=\"pab-guide-kicker\" data-pab-guide-kicker></p>' +\n      '<h2 id=\"pab-guide-title\"></h2>' +\n      '<p class=\"pab-guide-copy\" data-pab-guide-copy></p>' +\n      '<div class=\"pab-guide-actions\">' +\n        '<button type=\"button\" data-pab-guide-back>Back</button>' +\n        '<button type=\"button\" data-pab-guide-skip hidden>Skip</button>' +\n        '<button type=\"button\" data-pab-guide-finish hidden>Finish guide</button>' +\n        '<button type=\"button\" data-pab-guide-card-pause>Pause</button>' +\n        '<button type=\"button\" data-pab-guide-card-resume hidden>Resume</button>' +\n        '<button type=\"button\" data-pab-guide-continue>Continue</button>' +\n      \"</div>\";\n\n    var dock = document.createElement(\"div\");\n    dock.id = \"pab-guide-dock\";\n    dock.className = \"pab-guide-dock\";\n    dock.hidden = true;\n    dock.setAttribute(\"role\", \"toolbar\");\n    dock.setAttribute(\"aria-label\", \"Guided mode controls\");\n    dock.innerHTML =\n      '<span data-pab-guide-dock-label>Guide \u00B7 Step 1 of 7</span>' +\n      '<button type=\"button\" data-pab-guide-pause>Pause</button>' +\n      '<button type=\"button\" data-pab-guide-resume hidden>Resume</button>' +\n      '<button type=\"button\" data-pab-guide-exit>Exit</button>';\n\n    portal.appendChild(focusSvg);\n    portal.appendChild(card);\n    portal.appendChild(dock);\n    if (!portal.isConnected) document.body.appendChild(portal);\n\n    var kicker = card.querySelector(\"[data-pab-guide-kicker]\");\n    var title = card.querySelector(\"#pab-guide-title\");\n    var copy = card.querySelector(\"[data-pab-guide-copy]\");\n    var backBtn = card.querySelector(\"[data-pab-guide-back]\");\n    var skipBtn = card.querySelector(\"[data-pab-guide-skip]\");\n    var finishBtn = card.querySelector(\"[data-pab-guide-finish]\");\n    var continueBtn = card.querySelector(\"[data-pab-guide-continue]\");\n    var cardPauseBtn = card.querySelector(\"[data-pab-guide-card-pause]\");\n    var cardResumeBtn = card.querySelector(\"[data-pab-guide-card-resume]\");\n    var dockLabel = dock.querySelector(\"[data-pab-guide-dock-label]\");\n    var pauseBtn = dock.querySelector(\"[data-pab-guide-pause]\");\n    var resumeBtn = dock.querySelector(\"[data-pab-guide-resume]\");\n    var placeQueued = false;\n    var watchedRegion = null;\n    var regionObserver = typeof ResizeObserver === \"function\"\n      ? new ResizeObserver(function () {\n        if (!active() || isMobile()) return;\n        queuePlace();\n      })\n      : null;\n\n    function watchRegion(region) {\n      if (regionObserver && watchedRegion) regionObserver.unobserve(watchedRegion);\n      watchedRegion = region && root.contains(region) ? region : null;\n      if (regionObserver && watchedRegion) regionObserver.observe(watchedRegion);\n    }\n\n    function persist() {\n      writeStore(state);\n    }\n\n    function active() {\n      return state.on && !state.paused && !isMobile();\n    }\n\n    function isLastStep() {\n      return state.index === STEPS.length - 1;\n    }\n\n    function mobileBar() {\n      return root.querySelector(\".mobile-bar\");\n    }\n\n    function regionVisible(el) {\n      if (!el) return false;\n      var rect = el.getBoundingClientRect();\n      if (rect.width < 8 || rect.height < 8) return false;\n      var style = window.getComputedStyle(el);\n      return style.display !== \"none\" && style.visibility !== \"hidden\";\n    }\n\n    function spotlightTarget() {\n      var step = STEPS[state.index];\n      if (!step) return null;\n      if (step.id === \"cart\" && isMobile()) {\n        var bar = mobileBar();\n        if (bar && regionVisible(bar)) return bar;\n      }\n      var region = regions[step.id];\n      if (region && root.contains(region) && regionVisible(region)) return region;\n      return region && root.contains(region) ? region : null;\n    }\n\n    function canContinue() {\n      var step = STEPS[state.index];\n      if (!step) return false;\n      if (step.id === \"design\") return designReady(root);\n      if (step.id === \"tier\") return tierReady(root);\n      if (step.id === \"quantity\") return qtyValue(root) >= 2;\n      return true;\n    }\n\n    function clearSpotlight() {\n      Object.keys(regions).forEach(function (id) {\n        if (regions[id]) regions[id].classList.remove(\"pab-guide-spotlight\");\n      });\n      var bar = mobileBar();\n      if (bar) bar.classList.remove(\"pab-guide-spotlight\");\n      focusSvg.hidden = true;\n      focusPath.setAttribute(\"d\", \"\");\n      card.classList.remove(\"pab-guide-card--attached\");\n      returnToPortal();\n    }\n\n    function headerClearance() {\n      var y = 12;\n      var header = document.querySelector(\"#shopify-section-header, .shopify-section-header, #site-header, header\");\n      if (header) {\n        var rect = header.getBoundingClientRect();\n        if (rect.height > 0 && rect.top < 120 && rect.bottom > 0) {\n          y = Math.max(y, Math.round(rect.bottom) + 8);\n        }\n      }\n      var banner = document.getElementById(\"shopify-pc__banner\");\n      if (banner) {\n        var bannerRect = banner.getBoundingClientRect();\n        if (bannerRect.height > 0 && bannerRect.top >= 0 && bannerRect.top < 80 && bannerRect.bottom < window.innerHeight / 2) {\n          y = Math.max(y, Math.round(bannerRect.bottom) + 8);\n        }\n      }\n      return y;\n    }\n\n    function bottomObstruction() {\n      var extra = 12;\n      if (isMobile()) {\n        var bar = mobileBar();\n        if (bar) {\n          var barRect = bar.getBoundingClientRect();\n          if (barRect.height > 0 && barRect.height < 160 && barRect.bottom > window.innerHeight - 8) {\n            extra += Math.round(barRect.height);\n          }\n        }\n      }\n      var banner = document.getElementById(\"shopify-pc__banner\") || document.querySelector(\".shopify-pc__banner__dialog\");\n      if (banner) {\n        var style = window.getComputedStyle(banner);\n        if (style.display !== \"none\" && style.visibility !== \"hidden\") {\n          var bannerRect = banner.getBoundingClientRect();\n          if (bannerRect.height > 0 && bannerRect.height < 220 && bannerRect.bottom >= window.innerHeight - 24) {\n            extra += Math.round(bannerRect.height);\n          }\n        }\n      }\n      return extra;\n    }\n\n    function dockClearance() {\n      if (!state.on || dock.hidden) return 0;\n      return Math.round(dock.getBoundingClientRect().height || 44) + 8;\n    }\n\n    var xLockToken = 0;\n    function lockHorizontalScroll(ms) {\n      var docEl = document.documentElement;\n      var body = document.body;\n      var token = ++xLockToken;\n      var prevHtml = docEl.style.overflowX;\n      var prevBody = body ? body.style.overflowX : \"\";\n      docEl.style.overflowX = \"clip\";\n      if (body) body.style.overflowX = \"clip\";\n      window.setTimeout(function () {\n        if (token !== xLockToken) return;\n        docEl.style.overflowX = prevHtml;\n        if (body) body.style.overflowX = prevBody;\n      }, ms);\n    }\n\n    /* Measured bottom edge of the sticky bill preview (viewport coords).\n       Returns 0 when the preview is absent or collapsed. */\n    function tabletPreviewClearance() {\n      var preview = root.querySelector(\".preview-card\");\n      if (!preview || !root.contains(preview)) return 0;\n      var rect = preview.getBoundingClientRect();\n      if (rect.height < 8) return 0;\n      return Math.max(0, rect.bottom);\n    }\n\n    /* Tablet step transitions land the guide unit (helper card + active\n       step) just below the sticky preview instead of viewport top/center,\n       which the preview would cover. Single absolute scroll \u2014 no chained\n       adjustments, so no jump-back or cumulative drift. */\n    function scrollToTabletStep(region) {\n      var GAP = 12;\n      var clearance = tabletPreviewClearance() + GAP;\n      var cardH = (!card.hidden && root.contains(card)) ? (card.offsetHeight || 0) : 0;\n      /* The helper card sits directly above its step, so the unit top is\n         the region top minus the card height. Region geometry (unlike the\n         card, which re-hosts during transitions) is stable when this runs. */\n      var regionRect = region.getBoundingClientRect();\n      var unitTop = regionRect.top - cardH;\n      var unitBottom = unitTop + cardH;\n      /* Skip only when the unit is already parked at the target line, so\n         every transition lands consistently just below the preview. A\n         merely-visible unit sitting far below the preview must still be\n         pulled up; otherwise gaps vary step to step. */\n      if (Math.abs(unitTop - clearance) < 4 && unitBottom <= window.innerHeight - 16) return;\n      var top = unitTop + window.scrollY - clearance;\n      if (top < 0) top = 0;\n      window.scrollTo({\n        top: Math.round(top),\n        behavior: prefersReducedMotion() ? \"auto\" : \"smooth\"\n      });\n    }\n\n    function scrollToRegion(region) {\n      if (!region || !root.contains(region)) return;\n      var rect = region.getBoundingClientRect();\n      if (rect.height < 8) return;\n      if (isTabletGuide()) {\n        scrollToTabletStep(region);\n        return;\n      }\n      var inView = rect.top >= 16 && rect.bottom <= window.innerHeight - 16;\n      if (inView) return;\n      var behavior = prefersReducedMotion() ? \"auto\" : \"smooth\";\n      var topPad = 24;\n      if (isMobile()) {\n        topPad = headerClearance() + dockClearance();\n        if (!card.hidden) topPad += (card.offsetHeight || 88) + 12;\n      }\n      region.style.scrollMarginTop = topPad + \"px\";\n      region.style.scrollMarginBottom = (isMobile()\n        ? 16 + bottomObstruction()\n        : isTabletGuide() && !card.hidden\n          ? (card.offsetHeight || 140) + 24\n          : 32) + \"px\";\n      /* Guide navigation scrolls vertically only. Lock horizontal scroll\n         for the duration so scrollIntoView can never shift the centered\n         workspace sideways (e.g. over unrelated page-level overflow). */\n      lockHorizontalScroll(behavior === \"smooth\" ? 650 : 100);\n      region.scrollIntoView({\n        behavior: behavior,\n        block: !isMobile() && isLastStep() ? \"nearest\" : \"center\"\n      });\n    }\n\n    function step1Target() {\n      var region = regions.design;\n      if (region && root.contains(region) && region.querySelector(\"#series, .format-card, #denoms\")) return region;\n      var format = root.querySelector(\".format-card\");\n      if (format && root.contains(format)) return format;\n      var series = root.querySelector(\"#series\");\n      if (series && root.contains(series)) return series;\n      return null;\n    }\n\n    function pinInRegion(el, localTop, localLeft, width) {\n      if (!el) return;\n      el.style.position = \"absolute\";\n      el.style.top = Math.round(localTop) + \"px\";\n      el.style.left = Math.round(localLeft) + \"px\";\n      el.style.right = \"auto\";\n      el.style.bottom = \"auto\";\n      if (width) el.style.width = Math.round(width) + \"px\";\n    }\n\n    function clearPin(el) {\n      if (!el) return;\n      [\"position\", \"top\", \"left\", \"right\", \"bottom\", \"width\", \"height\", \"inset\", \"transform\"].forEach(function (prop) {\n        el.style.removeProperty(prop);\n      });\n    }\n\n    function returnToPortal() {\n      if (focusSvg.parentNode !== portal) portal.appendChild(focusSvg);\n      if (card.parentNode !== portal) portal.appendChild(card);\n    }\n\n    function hostGuide(region) {\n      if (isMobile() || !region || !root.contains(region)) {\n        returnToPortal();\n        return;\n      }\n      if (isTabletGuide()) {\n        if (focusSvg.parentNode !== portal) portal.appendChild(focusSvg);\n        focusSvg.hidden = true;\n        focusPath.setAttribute(\"d\", \"\");\n        focusSvg.style.width = \"0px\";\n        focusSvg.style.height = \"0px\";\n        var parent = region.parentNode;\n        if (parent && (card.parentNode !== parent || card.nextElementSibling !== region)) {\n          parent.insertBefore(card, region);\n        }\n        clearPin(card);\n        card.classList.remove(\"pab-guide-card--attached\");\n        delete card.dataset.pabGuideSide;\n        return;\n      }\n      if (isDesktopGuide() && focusSvg.parentNode !== region) {\n        focusSvg.style.position = \"absolute\";\n        region.appendChild(focusSvg);\n      }\n      /* Wide desktop: the guide is a short bar docked at the top of the\n         highlighted step, in normal flow. Prepend so it reads first. */\n      if (card.parentNode !== region || card.previousElementSibling !== null) {\n        region.insertBefore(card, region.firstChild);\n      }\n    }\n\n    function pinBox(el, viewportTop, viewportLeft, width) {\n      if (!el) return;\n      var origin = portal.getBoundingClientRect();\n      el.style.position = \"absolute\";\n      el.style.top = Math.round(viewportTop - origin.top) + \"px\";\n      el.style.left = Math.round(viewportLeft - origin.left) + \"px\";\n      el.style.right = \"auto\";\n      el.style.bottom = \"auto\";\n      if (width) el.style.width = Math.round(width) + \"px\";\n    }\n\n    function pinFixed(el, viewportTop, viewportLeft, width) {\n      if (!el) return;\n      el.style.setProperty(\"position\", \"fixed\", \"important\");\n      el.style.top = Math.round(viewportTop) + \"px\";\n      el.style.left = Math.round(viewportLeft) + \"px\";\n      el.style.right = \"auto\";\n      el.style.bottom = \"auto\";\n      if (width) el.style.width = Math.round(width) + \"px\";\n    }\n\n    function rectsOverlap(a, b, pad) {\n      pad = pad || 8;\n      return !(a.right + pad < b.left || a.left - pad > b.right || a.bottom + pad < b.top || a.top - pad > b.bottom);\n    }\n\n    function placeDock() {\n      if (!state.on || dock.hidden) return;\n      clearPin(dock);\n      if (isMobile()) {\n        var bar = root.querySelector(\".mobile-bar\");\n        var barH = 0;\n        if (bar && bar.classList.contains(\"is-visible\") && getComputedStyle(bar).display !== \"none\") {\n          barH = bar.offsetHeight || 70;\n        }\n        dock.style.setProperty(\"bottom\", (12 + barH) + \"px\", \"important\");\n      }\n    }\n\n    function placeCard() {\n      placeQueued = false;\n      placeDock();\n      if (card.hidden) {\n        placeFocus();\n        return;\n      }\n      var cardH = card.offsetHeight || 180;\n      if (isMobile()) {\n        var width = Math.max(0, window.innerWidth - 24);\n        var bar = root.querySelector(\".mobile-bar\");\n        var barH = 0;\n        if (bar && bar.classList.contains(\"is-visible\") && getComputedStyle(bar).display !== \"none\") {\n          barH = bar.offsetHeight || 70;\n        }\n        var dockH = dock.hidden ? 0 : (dock.offsetHeight || 40) + 8;\n        var top = Math.max(headerClearance() + 8, window.innerHeight - cardH - 12 - barH - dockH);\n        pinFixed(card, top, 12, width);\n        placeFocus();\n        return;\n      }\n      var region = spotlightTarget();\n      if (!region || !root.contains(region)) {\n        returnToPortal();\n        placeFocus();\n        return;\n      }\n      hostGuide(region);\n      if (isTabletGuide()) {\n        card.classList.remove(\"pab-guide-card--attached\");\n        delete card.dataset.pabGuideSide;\n        clearPin(card);\n        placeFocus();\n        return;\n      }\n      /* Wide desktop: in-flow top bar. No absolute positioning and no\n         column width changes anywhere \u2014 the step keeps its full width. */\n      delete card.dataset.pabGuideSide;\n      clearPin(card);\n      placeFocus();\n    }\n\n    function placeFocus() {\n      if (!active() || card.hidden) {\n        focusSvg.hidden = true;\n        focusPath.setAttribute(\"d\", \"\");\n        card.classList.remove(\"pab-guide-card--attached\");\n        return;\n      }\n      var region = spotlightTarget();\n      if (!region || !regionVisible(region)) {\n        focusSvg.hidden = true;\n        focusPath.setAttribute(\"d\", \"\");\n        return;\n      }\n      if (isMobile() || !isDesktopGuide()) {\n        if (isMobile()) returnToPortal();\n        focusSvg.hidden = true;\n        focusPath.setAttribute(\"d\", \"\");\n        focusSvg.style.width = \"0px\";\n        focusSvg.style.height = \"0px\";\n        card.classList.remove(\"pab-guide-card--attached\");\n        return;\n      }\n      hostGuide(region);\n      var origin = region.getBoundingClientRect();\n      var rr = regionFrameRect(region);\n      var cr = card.getBoundingClientRect();\n      if (cr.width < 8 || cr.height < 8) {\n        focusSvg.hidden = true;\n        return;\n      }\n      card.classList.add(\"pab-guide-card--attached\");\n      var isCart = region.getAttribute(\"data-pab-guide-region\") === \"cart\";\n      var padX = 16;\n      var padY = isCart ? 8 : 10;\n      var minX = Math.min(rr.left, cr.left) - padX - origin.left;\n      var minY = Math.min(rr.top, cr.top) - padY - origin.top;\n      var maxX = Math.max(rr.right, cr.right) + padX - origin.left;\n      var maxY = Math.max(rr.bottom, cr.bottom) + padY - origin.top;\n      if (maxY < minY + 24) maxY = minY + 24;\n      var svgW = Math.max(8, maxX - minX);\n      var svgH = Math.max(8, maxY - minY);\n      var inset = 1.25;\n      focusSvg.hidden = false;\n      focusSvg.setAttribute(\"viewBox\", \"0 0 \" + svgW + \" \" + svgH);\n      focusSvg.setAttribute(\"width\", String(svgW));\n      focusSvg.setAttribute(\"height\", String(svgH));\n      pinInRegion(focusSvg, minY, minX, svgW);\n      focusSvg.style.height = Math.round(svgH) + \"px\";\n      focusPath.setAttribute(\"d\", roundedRectPath(inset, inset, svgW - inset * 2, svgH - inset * 2, 16));\n    }\n\n    function queuePlace() {\n      if (placeQueued) return;\n      placeQueued = true;\n      window.requestAnimationFrame(placeCard);\n    }\n\n    function renderCard() {\n      var step = STEPS[state.index];\n      if (!step) return;\n      var enabled = canContinue();\n      kicker.textContent = (state.index + 1) + \" / \" + STEPS.length;\n      title.textContent = step.title;\n      copy.innerHTML = step.copy;\n      backBtn.hidden = state.index === 0;\n      skipBtn.hidden = !step.skip;\n      finishBtn.hidden = false;\n      finishBtn.textContent = \"Exit\";\n      continueBtn.hidden = isLastStep();\n      continueBtn.disabled = !enabled;\n      continueBtn.setAttribute(\"aria-disabled\", enabled ? \"false\" : \"true\");\n      continueBtn.textContent = \"Continue\";\n    }\n\n    function renderDock() {\n      if (!state.on) return;\n      if (state.paused) {\n        dockLabel.textContent = \"Guided mode paused\";\n        pauseBtn.hidden = true;\n        resumeBtn.hidden = false;\n        cardPauseBtn.hidden = true;\n        cardResumeBtn.hidden = false;\n        return;\n      }\n      dockLabel.textContent = \"Guide \u00B7 \" + (state.index + 1) + \" / \" + STEPS.length;\n      pauseBtn.hidden = false;\n      resumeBtn.hidden = true;\n      cardPauseBtn.hidden = false;\n      cardResumeBtn.hidden = true;\n    }\n\n    function setSpotlight() {\n      clearSpotlight();\n      /* Paused desktop and tablet keep the card (with Resume) in place,\n         so keep the step marked even though the gold frame stays off.\n         Phones hide the card on pause, so they keep the old path. */\n      var pausedAttached = state.on && state.paused && !isMobile();\n      if (!active() && !pausedAttached) {\n        watchRegion(null);\n        return;\n      }\n      var region = spotlightTarget();\n      if (region) region.classList.add(\"pab-guide-spotlight\");\n      watchRegion(region);\n    }\n\n    function syncChrome() {\n      var visible = state.on && !isMobile();\n      root.classList.toggle(\"pab-guide-on\", visible && !state.paused);\n      root.classList.toggle(\"pab-guide-paused\", visible && state.paused);\n      root.classList.toggle(\"pab-guide-focus-live\", visible && !state.paused);\n      root.classList.toggle(\n        \"pab-guide-step-design\",\n        visible && !state.paused && STEPS[state.index] && STEPS[state.index].id === \"design\"\n      );\n      launch.hidden = isMobile() || state.on;\n      portal.hidden = !visible;\n      dock.hidden = !visible;\n      /* No floating dock on desktop or tablet; the card stays visible\n         while paused so Resume/Exit remain one click away. Phones keep\n         the dock and hide the card on pause. */\n      card.hidden = !visible || (state.paused && isMobile());\n      if (!visible) {\n        clearSpotlight();\n        returnToPortal();\n      }\n      renderCard();\n      renderDock();\n      setSpotlight();\n      queuePlace();\n      persist();\n    }\n\n    function afterMove() {\n      queuePlace();\n      window.setTimeout(placeCard, prefersReducedMotion() ? 40 : 380);\n    }\n\n    function go(index) {\n      state.index = Math.max(0, Math.min(STEPS.length - 1, index));\n      syncChrome();\n      if (active()) {\n        window.requestAnimationFrame(function () {\n          var target = state.index === 0 ? step1Target() : spotlightTarget();\n          scrollToRegion(target);\n          if (isLastStep()) revealMobileCart();\n          afterMove();\n        });\n      }\n    }\n\n    root.addEventListener('click', function (event) {\n      var edit = event.target.closest && event.target.closest('[data-pab-charge-target]');\n      if (!edit || edit.closest('.pab-mobile-review-details') || isMobile() || !state.on) return;\n      state.paused = false;\n      go(parseInt(edit.dataset.pabReviewEdit, 10) || 0);\n    });\n\n    function revealMobileCart() {\n      if (!isMobile()) return;\n      var attempts = 0;\n      function step() {\n        var bar = mobileBar();\n        if (!bar || attempts > 12) {\n          queuePlace();\n          return;\n        }\n        if (bar.classList.contains(\"pab-atc-suppressed\") || getComputedStyle(bar).visibility === \"hidden\") {\n          attempts += 1;\n          window.scrollBy(0, -90);\n          window.setTimeout(step, 60);\n          return;\n        }\n        queuePlace();\n      }\n      window.setTimeout(step, 80);\n    }\n\n    function start() {\n      if (isMobile()) return;\n      state.on = true;\n      state.paused = false;\n      state.index = 0;\n      syncChrome();\n      window.requestAnimationFrame(function () {\n        var target = step1Target();\n        if (target) scrollToRegion(target);\n        afterMove();\n        if (target) {\n          var first = target.querySelector(\"button:not([hidden])\");\n          if (first) first.focus({ preventScroll: true });\n        }\n      });\n    }\n\n    function exit() {\n      state.on = false;\n      state.paused = false;\n      state.index = 0;\n      clearSpotlight();\n      clearStore();\n      syncChrome();\n    }\n\n    function pause() {\n      if (!state.on) return;\n      state.paused = true;\n      clearSpotlight();\n      syncChrome();\n    }\n\n    function resume() {\n      if (!state.on) return;\n      state.paused = false;\n      syncChrome();\n      if (active()) scrollToRegion(spotlightTarget());\n    }\n\n    function refreshContinue() {\n      if (!active()) return;\n      renderCard();\n      queuePlace();\n      window.setTimeout(placeCard, 40);\n      window.setTimeout(placeCard, 180);\n    }\n\n    function isAddToCartControl(target) {\n      return !!(target && target.closest && target.closest(\"#add-cart, #mobile-cart, #simple-add, .add-to-cart-btn\"));\n    }\n\n    var ATTENTION_KEY = \"pab-guide-launch-attention-v1\";\n    var ATTENTION_CLASS = \"pab-guide-launch__btn--attention\";\n    var startBtn = launch.querySelector(\"[data-pab-guide-start]\");\n\n    function attentionPlayed() {\n      try {\n        return sessionStorage.getItem(ATTENTION_KEY) === \"1\";\n      } catch (_e) {\n        return false;\n      }\n    }\n\n    function markAttentionPlayed() {\n      try {\n        sessionStorage.setItem(ATTENTION_KEY, \"1\");\n      } catch (_e) {}\n    }\n\n    function stopLaunchAttention() {\n      if (startBtn) startBtn.classList.remove(ATTENTION_CLASS);\n    }\n\n    function blockingSurfaceOpen() {\n      var html = document.documentElement;\n      if (html.classList.contains(\"pab-landscape-notice-open\")) return true;\n      if (html.classList.contains(\"pab-welcome-entry\") && !html.classList.contains(\"pab-welcome-failed\")) return true;\n      if (document.body.classList.contains(\"pab-mobile-guide-active\")) return true;\n      if (root.classList.contains(\"pab-guide-on\")) return true;\n      var details = document.getElementById(\"details-modal\");\n      if (details && details.classList.contains(\"show\") && details.getAttribute(\"aria-hidden\") !== \"true\") return true;\n      var examples = document.getElementById(\"examples\");\n      if (examples && examples.classList.contains(\"show\") && examples.getAttribute(\"aria-hidden\") !== \"true\") return true;\n      var confirm = document.querySelector(\".pab-mobile-guide-confirm\");\n      if (confirm && !confirm.hidden && getComputedStyle(confirm).display !== \"none\" && getComputedStyle(confirm).visibility !== \"hidden\") return true;\n      var uv = document.getElementById(\"pab-mockup-uv-modal\");\n      if (uv && (uv.classList.contains(\"is-open\") || uv.classList.contains(\"show\"))) return true;\n      return false;\n    }\n\n    function launchAttentionEligible() {\n      if (!startBtn || launch.hidden || isMobile() || state.on || prefersReducedMotion()) return false;\n      if (blockingSurfaceOpen()) return false;\n      var cs = getComputedStyle(startBtn);\n      var rect = startBtn.getBoundingClientRect();\n      return cs.display !== \"none\" && cs.visibility !== \"hidden\" && rect.width >= 2 && rect.height >= 2 &&\n        rect.bottom > 0 && rect.top < window.innerHeight;\n    }\n\n    function startLaunchAttention() {\n      if (!startBtn || attentionPlayed() || !launchAttentionEligible()) return;\n      markAttentionPlayed();\n      startBtn.classList.add(ATTENTION_CLASS);\n      window.setTimeout(stopLaunchAttention, 10100);\n    }\n\n    function bindLaunchAttention() {\n      if (!startBtn || startBtn.dataset.pabAttentionBound === \"true\") return;\n      startBtn.dataset.pabAttentionBound = \"true\";\n      startBtn.addEventListener(\"mouseleave\", stopLaunchAttention);\n      startBtn.addEventListener(\"focusout\", stopLaunchAttention);\n      startBtn.addEventListener(\"animationend\", function (event) {\n        if (event.animationName === \"pab-guide-launch-attention\") stopLaunchAttention();\n      });\n      if (attentionPlayed() || prefersReducedMotion()) return;\n      var observer = new IntersectionObserver(function (entries) {\n        if (attentionPlayed()) {\n          observer.disconnect();\n          return;\n        }\n        if (!entries.some(function (entry) { return entry.isIntersecting && entry.intersectionRatio >= 0.35; })) return;\n        startLaunchAttention();\n        if (attentionPlayed()) observer.disconnect();\n      }, { threshold: [0.35, 0.6, 1] });\n      observer.observe(startBtn);\n      var popupWatch = new MutationObserver(function () {\n        if (attentionPlayed()) {\n          popupWatch.disconnect();\n          observer.disconnect();\n          return;\n        }\n        startLaunchAttention();\n        if (attentionPlayed()) {\n          popupWatch.disconnect();\n          observer.disconnect();\n        }\n      });\n      popupWatch.observe(document.documentElement, { attributes: true, attributeFilter: [\"class\"] });\n      popupWatch.observe(document.body, { attributes: true, attributeFilter: [\"class\"] });\n    }\n\n    if (startBtn) {\n      startBtn.addEventListener(\"click\", function () {\n        stopLaunchAttention();\n        start();\n      });\n    }\n    try {\n      bindLaunchAttention();\n    } catch (_attentionError) {}\n    pauseBtn.addEventListener(\"click\", pause);\n    resumeBtn.addEventListener(\"click\", resume);\n    cardPauseBtn.addEventListener(\"click\", pause);\n    cardResumeBtn.addEventListener(\"click\", resume);\n    dock.querySelector(\"[data-pab-guide-exit]\").addEventListener(\"click\", exit);\n    backBtn.addEventListener(\"click\", function () {\n      go(state.index - 1);\n    });\n    skipBtn.addEventListener(\"click\", function () {\n      if (STEPS[state.index] && STEPS[state.index].id === \"accessories\") go(state.index + 1);\n    });\n    finishBtn.addEventListener(\"click\", exit);\n    continueBtn.addEventListener(\"click\", function () {\n      if (continueBtn.disabled) return;\n      if (isLastStep()) {\n        scrollToRegion(spotlightTarget());\n        return;\n      }\n      go(state.index + 1);\n    });\n\n    order.addEventListener(\"click\", refreshContinue);\n    order.addEventListener(\"change\", refreshContinue);\n    order.addEventListener(\"input\", refreshContinue);\n    root.querySelector(\"#pab-custom-denom-input\")?.addEventListener(\"input\", refreshContinue);\n\n    root.addEventListener(\"click\", function (event) {\n      if (!state.on) return;\n      if (isAddToCartControl(event.target)) exit();\n    }, true);\n\n    document.addEventListener(\"keydown\", function (event) {\n      if (!state.on) return;\n      if (event.key === \"Escape\") {\n        event.preventDefault();\n        if (state.paused) resume();\n        else pause();\n      }\n    });\n\n    window.addEventListener(\"resize\", function () {\n      syncChrome();\n      queuePlace();\n    }, { passive: true });\n    window.addEventListener(\"scroll\", function () {\n      placeDock();\n    }, { passive: true });\n    document.addEventListener(\"click\", function (event) {\n      if (event.target.closest(\"#shopify-pc__banner, .shopify-pc__banner__dialog\")) {\n        window.setTimeout(queuePlace, 250);\n      }\n    }, true);\n\n    syncChrome();\n  }\n\n  function isProtectedBillImage(target) {\n    if (!target || !target.closest) return false;\n    return !!target.closest(\"#bill-preview, #bill-image, .bill-image, .bill-stage, .pab-preview-float-card, #PBarNextFrame\");\n  }\n\n  function protectBillImages() {\n    if (document.documentElement.dataset.pabBillGuard === \"true\") return;\n    document.documentElement.dataset.pabBillGuard = \"true\";\n    document.addEventListener(\"contextmenu\", function (event) {\n      if (isProtectedBillImage(event.target)) event.preventDefault();\n    }, true);\n    document.addEventListener(\"dragstart\", function (event) {\n      var target = event.target;\n      if (!target || !target.closest) return;\n      if (target.closest(\"#bill-image, img.bill-image, .pab-preview-float-card img\")) event.preventDefault();\n    }, true);\n  }\n\n  protectBillImages();\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", initPabGuidedMode, { once: true });\n  } else {\n    initPabGuidedMode();\n  }\n  window.setTimeout(initPabGuidedMode, 60);\n  window.setTimeout(initPabGuidedMode, 300);\n})();\n\n"],
  "mappings": "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",
  "names": ["title"]
}
