(function () { var CSS = "" + ".im-sticky-buybar{display:none;position:fixed;bottom:0;left:0;right:0;" + "z-index:99999;background:#ffffff;box-shadow:0 -2px 12px rgba(0,0,0,0.18);" + "padding:10px 14px;align-items:center;justify-content:space-between;gap:10px;" + "box-sizing:border-box;}" + ".im-sticky-buybar.im-visible{display:flex;}" + ".im-sticky-price{font-weight:700;font-size:16px;color:#111111;white-space:nowrap;" + "overflow:hidden;text-overflow:ellipsis;max-width:90px;}" + ".im-sticky-actions{display:flex;gap:8px;flex:1;justify-content:flex-end;}" + ".im-sticky-btn{padding:11px 16px;border-radius:6px;font-weight:600;font-size:14px;" + "border:none;cursor:pointer;flex:1;max-width:160px;}" + ".im-sticky-cart{background:#ffffff;border:1.5px solid #111111;color:#111111;}" + ".im-sticky-buy{background:#f5a623;color:#111111;}" + "@media (min-width:768px){.im-sticky-buybar{display:none !important;}}" + ".im-buy-now-btn{margin-left:8px;padding:11px 20px;border-radius:6px;font-weight:600;" + "font-size:14px;border:none;cursor:pointer;background:#f5a623;color:#111111;" + "vertical-align:middle;}" + ".im-buy-now-btn[disabled]{opacity:0.6;cursor:default;}" + "@media (max-width:480px){.im-buy-now-btn{display:block;margin-left:0;margin-top:8px;width:100%;}}"; function injectCss() { if (document.getElementById('im-injected-styles')) return; var styleEl = document.createElement('style'); styleEl.id = 'im-injected-styles'; styleEl.textContent = CSS; document.head.appendChild(styleEl); } var ADD_TO_CART_WORDS = ['add to cart', 'add to bag']; var BUY_NOW_WORDS = ['buy now']; function textMatches(el, wordList) { var t = (el.textContent || '').trim().toLowerCase(); if (!t || t.length > 40) return false; for (var i = 0; i < wordList.length; i++) { if (t.indexOf(wordList[i]) !== -1) return true; } return false; } function findButton(wordList) { var candidates = document.querySelectorAll('button, a'); for (var i = 0; i < candidates.length; i++) { if (textMatches(candidates[i], wordList)) return candidates[i]; } return null; } function findPriceNear(anchorEl) { var scope = anchorEl; for (var level = 0; level < 6 && scope.parentElement; level++) { scope = scope.parentElement; } var all = scope.querySelectorAll('*'); for (var i = 0; i < all.length; i++) { var el = all[i]; if (el.children.length > 0) continue; var txt = el.textContent.trim(); if (/[₹$]\s?[\d,]+(\.\d+)?/.test(txt) && txt.length < 20) { return txt; } } return ''; } // ---------- Sticky bottom bar ---------- var stickyBar = null; var stickyObserver = null; var stickyTimer = null; var stickyAttempts = 0; function cleanupStickyBar() { if (stickyObserver) { stickyObserver.disconnect(); stickyObserver = null; } if (stickyBar) { stickyBar.remove(); stickyBar = null; } if (stickyTimer) { clearTimeout(stickyTimer); stickyTimer = null; } stickyAttempts = 0; } function tryBuildStickyBar() { stickyAttempts++; var addBtn = findButton(ADD_TO_CART_WORDS); var buyBtn = findButton(BUY_NOW_WORDS); // Avoid picking up our own inline Buy Now button as the "real" one if (buyBtn && buyBtn.className && buyBtn.className.indexOf('im-buy-now-btn') !== -1) { buyBtn = null; } if (!addBtn && !buyBtn) { if (stickyAttempts < 40) stickyTimer = setTimeout(tryBuildStickyBar, 250); return; } var priceText = findPriceNear(addBtn || buyBtn); stickyBar = document.createElement('div'); stickyBar.className = 'im-sticky-buybar'; var priceHtml = '
' + (priceText || '') + '
'; var buttonsHtml = '
'; if (addBtn) buttonsHtml += ''; buttonsHtml += ''; buttonsHtml += '
'; stickyBar.innerHTML = priceHtml + buttonsHtml; document.body.appendChild(stickyBar); if (addBtn) { stickyBar.querySelector('.im-sticky-cart').addEventListener('click', function () { addBtn.click(); }); } stickyBar.querySelector('.im-sticky-buy').addEventListener('click', function () { triggerBuyNow(addBtn); }); var originalControls = (buyBtn || addBtn).closest('div') || (buyBtn || addBtn); stickyObserver = new IntersectionObserver(function (entries) { entries.forEach(function (entry) { if (entry.isIntersecting) { stickyBar.classList.remove('im-visible'); } else { stickyBar.classList.add('im-visible'); } }); }, { threshold: 0 }); stickyObserver.observe(originalControls); } // ---------- Inline Buy Now button ---------- var inlineBuyNowBtn = null; var inlineTimer = null; var inlineAttempts = 0; function cleanupInlineBuyNow() { if (inlineTimer) { clearTimeout(inlineTimer); inlineTimer = null; } if (inlineBuyNowBtn) { inlineBuyNowBtn.remove(); inlineBuyNowBtn = null; } inlineAttempts = 0; } function triggerBuyNow(addBtn) { if (!addBtn) return; var handled = false; function onCartChanged() { if (handled) return; handled = true; try { Ecwid.OnCartChanged.remove(onCartChanged); } catch (e) {} Ecwid.Cart.gotoCheckout(); } Ecwid.OnCartChanged.add(onCartChanged); addBtn.click(); setTimeout(function () { if (!handled) { try { Ecwid.OnCartChanged.remove(onCartChanged); } catch (e) {} } }, 4000); } function tryBuildInlineBuyNow() { inlineAttempts++; var addBtn = findButton(ADD_TO_CART_WORDS); var existingBuyNow = findButton(BUY_NOW_WORDS); if (existingBuyNow) return; // already one on the page